feature/setup-infrastructure #1
68
.idea/.idea.DotNetAngular/.idea/workspace.xml
generated
68
.idea/.idea.DotNetAngular/.idea/workspace.xml
generated
@@ -11,7 +11,12 @@
|
|||||||
</component>
|
</component>
|
||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="1ac72a4a-52ad-4e70-9b15-c330b1ed3e7a" name="Changes" comment="">
|
<list default="true" id="1ac72a4a-52ad-4e70-9b15-c330b1ed3e7a" name="Changes" comment="">
|
||||||
|
<change afterPath="$PROJECT_DIR$/DotNetAngular.sln.DotSettings.user" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/.idea/.idea.DotNetAngular/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.DotNetAngular/.idea/workspace.xml" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/.idea/.idea.DotNetAngular/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.DotNetAngular/.idea/workspace.xml" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/README.md" beforeDir="false" afterPath="$PROJECT_DIR$/README.md" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/ClientApp/package-lock.json" beforeDir="false" afterPath="$PROJECT_DIR$/src/ClientApp/package-lock.json" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/ClientApp/package.json" beforeDir="false" afterPath="$PROJECT_DIR$/src/ClientApp/package.json" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/ClientApp/tsconfig.json" beforeDir="false" afterPath="$PROJECT_DIR$/src/ClientApp/tsconfig.json" afterDir="false" />
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||||
@@ -22,7 +27,7 @@
|
|||||||
<option name="firstShow" value="false" />
|
<option name="firstShow" value="false" />
|
||||||
</component>
|
</component>
|
||||||
<component name="EmbeddingIndexingInfo">
|
<component name="EmbeddingIndexingInfo">
|
||||||
<option name="cachedIndexableFilesCount" value="18" />
|
<option name="cachedIndexableFilesCount" value="3" />
|
||||||
<option name="fileBasedEmbeddingIndicesEnabled" value="true" />
|
<option name="fileBasedEmbeddingIndicesEnabled" value="true" />
|
||||||
</component>
|
</component>
|
||||||
<component name="Git.Settings">
|
<component name="Git.Settings">
|
||||||
@@ -35,6 +40,7 @@
|
|||||||
</component>
|
</component>
|
||||||
<component name="HighlightingSettingsPerFile">
|
<component name="HighlightingSettingsPerFile">
|
||||||
<setting file="file://$PROJECT_DIR$/src/ClientApp/package-lock.json" root0="SKIP_HIGHLIGHTING" />
|
<setting file="file://$PROJECT_DIR$/src/ClientApp/package-lock.json" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="file://$PROJECT_DIR$/src/ClientApp/package.json" root0="FORCE_HIGHLIGHTING" />
|
||||||
</component>
|
</component>
|
||||||
<component name="McpProjectServerCommands">
|
<component name="McpProjectServerCommands">
|
||||||
<commands />
|
<commands />
|
||||||
@@ -49,27 +55,30 @@
|
|||||||
<option name="hideEmptyMiddlePackages" value="true" />
|
<option name="hideEmptyMiddlePackages" value="true" />
|
||||||
<option name="showLibraryContents" value="true" />
|
<option name="showLibraryContents" value="true" />
|
||||||
</component>
|
</component>
|
||||||
<component name="PropertiesComponent">{
|
<component name="PropertiesComponent"><![CDATA[{
|
||||||
"keyToString": {
|
"keyToString": {
|
||||||
".NET Launch Settings Profile.API: Angular_dev.executor": "Run",
|
".NET Launch Settings Profile.API: Angular_dev.executor": "Run",
|
||||||
"RunOnceActivity.MCP Project settings loaded": "true",
|
"RunOnceActivity.MCP Project settings loaded": "true",
|
||||||
"RunOnceActivity.ShowReadmeOnStart": "true",
|
"RunOnceActivity.ShowReadmeOnStart": "true",
|
||||||
"RunOnceActivity.TerminalTabsStorage.copyFrom.TerminalArrangementManager.252": "true",
|
"RunOnceActivity.TerminalTabsStorage.copyFrom.TerminalArrangementManager.252": "true",
|
||||||
"RunOnceActivity.git.unshallow": "true",
|
"RunOnceActivity.git.unshallow": "true",
|
||||||
"RunOnceActivity.typescript.service.memoryLimit.init": "true",
|
"RunOnceActivity.typescript.service.memoryLimit.init": "true",
|
||||||
"com.intellij.ml.llm.matterhorn.ej.ui.settings.DefaultModelSelectionForGA.v1": "true",
|
"com.intellij.ml.llm.matterhorn.ej.ui.settings.DefaultModelSelectionForGA.v1": "true",
|
||||||
"git-widget-placeholder": "feature/setup-infrastructure",
|
"git-widget-placeholder": "feature/setup-infrastructure",
|
||||||
"junie.onboarding.icon.badge.shown": "true",
|
"junie.onboarding.icon.badge.shown": "true",
|
||||||
"node.js.detected.package.eslint": "true",
|
"node.js.detected.package.eslint": "true",
|
||||||
"node.js.detected.package.tslint": "true",
|
"node.js.detected.package.tslint": "true",
|
||||||
"node.js.selected.package.eslint": "(autodetect)",
|
"node.js.selected.package.eslint": "(autodetect)",
|
||||||
"node.js.selected.package.tslint": "(autodetect)",
|
"node.js.selected.package.tslint": "(autodetect)",
|
||||||
"nodejs_package_manager_path": "npm",
|
"nodejs_package_manager_path": "npm",
|
||||||
"settings.editor.selected.configurable": "AndroidSettingsPageId",
|
"settings.editor.selected.configurable": "vcs.Git",
|
||||||
"to.speed.mode.migration.done": "true",
|
"to.speed.mode.migration.done": "true",
|
||||||
"vue.rearranger.settings.migration": "true"
|
"vue.rearranger.settings.migration": "true"
|
||||||
}
|
}
|
||||||
}</component>
|
}]]></component>
|
||||||
|
<component name="RecapUselessUpdatesCounter">
|
||||||
|
<option name="suspendCountdown" value="9" />
|
||||||
|
</component>
|
||||||
<component name="RunManager" selected=".NET Launch Settings Profile.API: Angular_dev">
|
<component name="RunManager" selected=".NET Launch Settings Profile.API: Angular_dev">
|
||||||
<configuration name="API: Angular_dev" type="LaunchSettings" factoryName=".NET Launch Settings Profile">
|
<configuration name="API: Angular_dev" type="LaunchSettings" factoryName=".NET Launch Settings Profile">
|
||||||
<option name="LAUNCH_PROFILE_PROJECT_FILE_PATH" value="$PROJECT_DIR$/src/API/API.csproj" />
|
<option name="LAUNCH_PROFILE_PROJECT_FILE_PATH" value="$PROJECT_DIR$/src/API/API.csproj" />
|
||||||
@@ -145,6 +154,10 @@
|
|||||||
<updated>1770053658274</updated>
|
<updated>1770053658274</updated>
|
||||||
<workItem from="1770053661221" duration="454000" />
|
<workItem from="1770053661221" duration="454000" />
|
||||||
<workItem from="1770054571766" duration="757000" />
|
<workItem from="1770054571766" duration="757000" />
|
||||||
|
<workItem from="1770057423308" duration="546000" />
|
||||||
|
<workItem from="1770057982196" duration="640000" />
|
||||||
|
<workItem from="1770062612983" duration="466000" />
|
||||||
|
<workItem from="1770204235235" duration="1487000" />
|
||||||
</task>
|
</task>
|
||||||
<task id="LOCAL-00001" summary="updating template">
|
<task id="LOCAL-00001" summary="updating template">
|
||||||
<option name="closed" value="true" />
|
<option name="closed" value="true" />
|
||||||
@@ -154,7 +167,15 @@
|
|||||||
<option name="project" value="LOCAL" />
|
<option name="project" value="LOCAL" />
|
||||||
<updated>1770055164655</updated>
|
<updated>1770055164655</updated>
|
||||||
</task>
|
</task>
|
||||||
<option name="localTasksCounter" value="2" />
|
<task id="LOCAL-00002" summary="update to angular 20">
|
||||||
|
<option name="closed" value="true" />
|
||||||
|
<created>1770057870215</created>
|
||||||
|
<option name="number" value="00002" />
|
||||||
|
<option name="presentableId" value="LOCAL-00002" />
|
||||||
|
<option name="project" value="LOCAL" />
|
||||||
|
<updated>1770057870215</updated>
|
||||||
|
</task>
|
||||||
|
<option name="localTasksCounter" value="3" />
|
||||||
<servers />
|
<servers />
|
||||||
</component>
|
</component>
|
||||||
<component name="TypeScriptGeneratedFilesManager">
|
<component name="TypeScriptGeneratedFilesManager">
|
||||||
@@ -176,7 +197,8 @@
|
|||||||
<component name="VcsManagerConfiguration">
|
<component name="VcsManagerConfiguration">
|
||||||
<option name="CLEAR_INITIAL_COMMIT_MESSAGE" value="true" />
|
<option name="CLEAR_INITIAL_COMMIT_MESSAGE" value="true" />
|
||||||
<MESSAGE value="updating template" />
|
<MESSAGE value="updating template" />
|
||||||
<option name="LAST_COMMIT_MESSAGE" value="updating template" />
|
<MESSAGE value="update to angular 20" />
|
||||||
|
<option name="LAST_COMMIT_MESSAGE" value="update to angular 20" />
|
||||||
</component>
|
</component>
|
||||||
<component name="XDebuggerManager">
|
<component name="XDebuggerManager">
|
||||||
<breakpoint-manager>
|
<breakpoint-manager>
|
||||||
|
|||||||
2
DotNetAngular.sln.DotSettings.user
Normal file
2
DotNetAngular.sln.DotSettings.user
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
|
||||||
|
<s:Boolean x:Key="/Default/UserDictionary/Words/=hostingstartupassemblies/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>
|
||||||
17
README.md
17
README.md
@@ -79,20 +79,3 @@ Die Angular-Frontend-Tests sind mit Karma + Jasmine eingerichtet. Alle Testdatei
|
|||||||
npm run test:ci
|
npm run test:ci
|
||||||
```
|
```
|
||||||
Hinweis: Für Headless-Tests muss eine Chrome/Chromium-Laufzeit auf der Maschine vorhanden sein.
|
Hinweis: Für Headless-Tests muss eine Chrome/Chromium-Laufzeit auf der Maschine vorhanden sein.
|
||||||
|
|
||||||
### Wo schreibe ich Tests?
|
|
||||||
|
|
||||||
- Komponenten: `src/app/components/<name>/<name>.component.spec.ts`
|
|
||||||
- Services: `src/app/services/<name>.service.spec.ts`
|
|
||||||
- App-Komponenten: `src/app/app.component.spec.ts`
|
|
||||||
|
|
||||||
Beispiele sind bereits im Projekt vorhanden (z. B. `gitea.service.spec.ts`, `about-me.component.spec.ts`).
|
|
||||||
|
|
||||||
### Nützliche Tipps
|
|
||||||
|
|
||||||
- Testbefehle (npm Scripts) befinden sich in `src/ClientApp/package.json`:
|
|
||||||
- `npm test` – Watch-Modus mit Browser
|
|
||||||
- `npm run test:coverage` – Headless, einmalig, mit Coverage
|
|
||||||
- `npm run test:ci` – Headless, ohne Watch, mit Coverage (für CI)
|
|
||||||
- Die Angular-CLI liest die Testkonfiguration aus `angular.json` (Target `test`) und `tsconfig.spec.json`.
|
|
||||||
- Falls Sie auf Servern ohne GUI testen: Verwenden Sie die Headless-Skripte (`test:ci`/`test:coverage`).
|
|
||||||
1717
src/ClientApp/package-lock.json
generated
1717
src/ClientApp/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -6,26 +6,28 @@
|
|||||||
"start": "ng serve --port 44492",
|
"start": "ng serve --port 44492",
|
||||||
"build": "ng build",
|
"build": "ng build",
|
||||||
"watch": "ng build --watch --configuration development",
|
"watch": "ng build --watch --configuration development",
|
||||||
"test": "ng test"
|
"test": "ng test",
|
||||||
|
"test:ci": "ng test --no-watch --no-progress --browsers=ChromeHeadless",
|
||||||
|
"test:coverage": "ng test --no-watch --browsers=ChromeHeadlessNoSandbox --code-coverage"
|
||||||
},
|
},
|
||||||
"private": true,
|
"private": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@angular/animations": "^20.3.16",
|
"@angular/animations": "^21.1.2",
|
||||||
"@angular/common": "^20.3.16",
|
"@angular/common": "^21.1.2",
|
||||||
"@angular/compiler": "^20.3.16",
|
"@angular/compiler": "^21.1.2",
|
||||||
"@angular/core": "^20.3.16",
|
"@angular/core": "^21.1.2",
|
||||||
"@angular/forms": "^20.3.16",
|
"@angular/forms": "^21.1.2",
|
||||||
"@angular/platform-browser": "^20.3.16",
|
"@angular/platform-browser": "^21.1.2",
|
||||||
"@angular/platform-browser-dynamic": "^20.3.16",
|
"@angular/platform-browser-dynamic": "^21.1.2",
|
||||||
"@angular/router": "^20.3.16",
|
"@angular/router": "^21.1.2",
|
||||||
"rxjs": "~7.8.0",
|
"rxjs": "~7.8.0",
|
||||||
"tslib": "^2.3.0",
|
"tslib": "^2.3.0",
|
||||||
"zone.js": "~0.15.0"
|
"zone.js": "~0.15.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@angular/build": "^20.3.15",
|
"@angular/build": "^21.1.2",
|
||||||
"@angular/cli": "^20.3.15",
|
"@angular/cli": "^21.1.2",
|
||||||
"@angular/compiler-cli": "^20.3.16",
|
"@angular/compiler-cli": "^21.1.2",
|
||||||
"@types/jasmine": "~5.1.0",
|
"@types/jasmine": "~5.1.0",
|
||||||
"jasmine-core": "~5.2.0",
|
"jasmine-core": "~5.2.0",
|
||||||
"karma": "~6.4.0",
|
"karma": "~6.4.0",
|
||||||
|
|||||||
@@ -18,11 +18,7 @@
|
|||||||
"moduleResolution": "bundler",
|
"moduleResolution": "bundler",
|
||||||
"importHelpers": true,
|
"importHelpers": true,
|
||||||
"target": "ES2022",
|
"target": "ES2022",
|
||||||
"module": "ES2022",
|
"module": "ES2022"
|
||||||
"lib": [
|
|
||||||
"ES2022",
|
|
||||||
"dom"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"angularCompilerOptions": {
|
"angularCompilerOptions": {
|
||||||
"enableI18nLegacyMessageIdFormat": false,
|
"enableI18nLegacyMessageIdFormat": false,
|
||||||
|
|||||||
Reference in New Issue
Block a user