Refactor login component, update app routing, and add color theme styles
This commit is contained in:
parent
723c5f55b8
commit
d0fd155ea3
@ -17,7 +17,9 @@
|
|||||||
"@angular/forms": "^19.1.0",
|
"@angular/forms": "^19.1.0",
|
||||||
"@angular/platform-browser": "^19.1.0",
|
"@angular/platform-browser": "^19.1.0",
|
||||||
"@angular/platform-browser-dynamic": "^19.1.0",
|
"@angular/platform-browser-dynamic": "^19.1.0",
|
||||||
|
"@angular/platform-server": "^19.1.0",
|
||||||
"@angular/router": "^19.1.0",
|
"@angular/router": "^19.1.0",
|
||||||
|
"@angular/ssr": "^19.2.14",
|
||||||
"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"
|
||||||
@ -27,6 +29,7 @@
|
|||||||
"@angular/cli": "^19.1.7",
|
"@angular/cli": "^19.1.7",
|
||||||
"@angular/compiler-cli": "^19.1.0",
|
"@angular/compiler-cli": "^19.1.0",
|
||||||
"@types/jasmine": "~5.1.0",
|
"@types/jasmine": "~5.1.0",
|
||||||
|
"@types/node": "^18.18.0",
|
||||||
"jasmine-core": "~5.5.0",
|
"jasmine-core": "~5.5.0",
|
||||||
"karma": "~6.4.0",
|
"karma": "~6.4.0",
|
||||||
"karma-chrome-launcher": "~3.2.0",
|
"karma-chrome-launcher": "~3.2.0",
|
||||||
@ -35,4 +38,4 @@
|
|||||||
"karma-jasmine-html-reporter": "~2.1.0",
|
"karma-jasmine-html-reporter": "~2.1.0",
|
||||||
"typescript": "~5.7.2"
|
"typescript": "~5.7.2"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
261
src/angular/frontend/pnpm-lock.yaml
generated
261
src/angular/frontend/pnpm-lock.yaml
generated
@ -29,9 +29,15 @@ importers:
|
|||||||
'@angular/platform-browser-dynamic':
|
'@angular/platform-browser-dynamic':
|
||||||
specifier: ^19.1.0
|
specifier: ^19.1.0
|
||||||
version: 19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@19.2.14)(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))
|
version: 19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@19.2.14)(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))
|
||||||
|
'@angular/platform-server':
|
||||||
|
specifier: ^19.1.0
|
||||||
|
version: 19.2.15(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@19.2.14)(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2)
|
||||||
'@angular/router':
|
'@angular/router':
|
||||||
specifier: ^19.1.0
|
specifier: ^19.1.0
|
||||||
version: 19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2)
|
version: 19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2)
|
||||||
|
'@angular/ssr':
|
||||||
|
specifier: ^19.2.14
|
||||||
|
version: 19.2.18(fa7767f49f86fa85c067e27d35b0c201)
|
||||||
rxjs:
|
rxjs:
|
||||||
specifier: ~7.8.0
|
specifier: ~7.8.0
|
||||||
version: 7.8.2
|
version: 7.8.2
|
||||||
@ -44,16 +50,19 @@ importers:
|
|||||||
devDependencies:
|
devDependencies:
|
||||||
'@angular-devkit/build-angular':
|
'@angular-devkit/build-angular':
|
||||||
specifier: ^19.1.7
|
specifier: ^19.1.7
|
||||||
version: 19.2.14(@angular/compiler-cli@19.2.14(@angular/compiler@19.2.14)(typescript@5.7.3))(@angular/compiler@19.2.14)(@types/node@22.15.30)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(typescript@5.7.3)(vite@6.2.7(@types/node@22.15.30)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0))
|
version: 19.2.14(@angular/compiler-cli@19.2.14(@angular/compiler@19.2.14)(typescript@5.7.3))(@angular/compiler@19.2.14)(@angular/platform-server@19.2.15(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@19.2.14)(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2))(@angular/ssr@19.2.18(fa7767f49f86fa85c067e27d35b0c201))(@types/node@18.19.130)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(typescript@5.7.3)(vite@6.2.7(@types/node@18.19.130)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0))
|
||||||
'@angular/cli':
|
'@angular/cli':
|
||||||
specifier: ^19.1.7
|
specifier: ^19.1.7
|
||||||
version: 19.2.14(@types/node@22.15.30)(chokidar@4.0.3)
|
version: 19.2.14(@types/node@18.19.130)(chokidar@4.0.3)
|
||||||
'@angular/compiler-cli':
|
'@angular/compiler-cli':
|
||||||
specifier: ^19.1.0
|
specifier: ^19.1.0
|
||||||
version: 19.2.14(@angular/compiler@19.2.14)(typescript@5.7.3)
|
version: 19.2.14(@angular/compiler@19.2.14)(typescript@5.7.3)
|
||||||
'@types/jasmine':
|
'@types/jasmine':
|
||||||
specifier: ~5.1.0
|
specifier: ~5.1.0
|
||||||
version: 5.1.8
|
version: 5.1.8
|
||||||
|
'@types/node':
|
||||||
|
specifier: ^18.18.0
|
||||||
|
version: 18.19.130
|
||||||
jasmine-core:
|
jasmine-core:
|
||||||
specifier: ~5.5.0
|
specifier: ~5.5.0
|
||||||
version: 5.5.0
|
version: 5.5.0
|
||||||
@ -253,6 +262,16 @@ packages:
|
|||||||
'@angular/animations':
|
'@angular/animations':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
|
'@angular/platform-server@19.2.15':
|
||||||
|
resolution: {integrity: sha512-VKuEmzFylYLnFjjFTctnbckgYdXEyt3wU0AwT3uuLrSU/3EgfHlqd33ONuYaIxSRES81GaLcV9cc9uiZYT2QMg==}
|
||||||
|
engines: {node: ^18.19.1 || ^20.11.1 || >=22.0.0}
|
||||||
|
peerDependencies:
|
||||||
|
'@angular/common': 19.2.15
|
||||||
|
'@angular/compiler': 19.2.15
|
||||||
|
'@angular/core': 19.2.15
|
||||||
|
'@angular/platform-browser': 19.2.15
|
||||||
|
rxjs: ^6.5.3 || ^7.4.0
|
||||||
|
|
||||||
'@angular/router@19.2.14':
|
'@angular/router@19.2.14':
|
||||||
resolution: {integrity: sha512-cBTWY9Jx7YhbmDYDb7Hqz4Q7UNIMlKTkdKToJd2pbhIXyoS+kHVQrySmyca+jgvYMjWnIjsAEa3dpje12D4mFw==}
|
resolution: {integrity: sha512-cBTWY9Jx7YhbmDYDb7Hqz4Q7UNIMlKTkdKToJd2pbhIXyoS+kHVQrySmyca+jgvYMjWnIjsAEa3dpje12D4mFw==}
|
||||||
engines: {node: ^18.19.1 || ^20.11.1 || >=22.0.0}
|
engines: {node: ^18.19.1 || ^20.11.1 || >=22.0.0}
|
||||||
@ -262,6 +281,17 @@ packages:
|
|||||||
'@angular/platform-browser': 19.2.14
|
'@angular/platform-browser': 19.2.14
|
||||||
rxjs: ^6.5.3 || ^7.4.0
|
rxjs: ^6.5.3 || ^7.4.0
|
||||||
|
|
||||||
|
'@angular/ssr@19.2.18':
|
||||||
|
resolution: {integrity: sha512-3mcTMFpksELKSAAsOZ0XLvrSsbvZMRJ0+mkgOdw6VsKCvnmWn2jkjQGBJwuUmeIYSfmM0PwEyhrXiZA7cdGPjQ==}
|
||||||
|
peerDependencies:
|
||||||
|
'@angular/common': ^19.0.0 || ^19.2.0-next.0
|
||||||
|
'@angular/core': ^19.0.0 || ^19.2.0-next.0
|
||||||
|
'@angular/platform-server': ^19.0.0 || ^19.2.0-next.0
|
||||||
|
'@angular/router': ^19.0.0 || ^19.2.0-next.0
|
||||||
|
peerDependenciesMeta:
|
||||||
|
'@angular/platform-server':
|
||||||
|
optional: true
|
||||||
|
|
||||||
'@babel/code-frame@7.27.1':
|
'@babel/code-frame@7.27.1':
|
||||||
resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==}
|
resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==}
|
||||||
engines: {node: '>=6.9.0'}
|
engines: {node: '>=6.9.0'}
|
||||||
@ -1626,8 +1656,8 @@ packages:
|
|||||||
'@types/node-forge@1.3.11':
|
'@types/node-forge@1.3.11':
|
||||||
resolution: {integrity: sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==}
|
resolution: {integrity: sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==}
|
||||||
|
|
||||||
'@types/node@22.15.30':
|
'@types/node@18.19.130':
|
||||||
resolution: {integrity: sha512-6Q7lr06bEHdlfplU6YRbgG1SFBdlsfNC4/lX+SkhiTs0cpJkOElmWls8PxDFv4yY/xKb8Y6SO0OmSX4wgqTZbA==}
|
resolution: {integrity: sha512-GRaXQx6jGfL8sKfaIDD6OupbIHBr9jv7Jnaml9tB7l4v068PAOXqfcujMMo5PhbIs6ggR1XODELqahT2R8v0fg==}
|
||||||
|
|
||||||
'@types/qs@6.14.0':
|
'@types/qs@6.14.0':
|
||||||
resolution: {integrity: sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ==}
|
resolution: {integrity: sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ==}
|
||||||
@ -3938,8 +3968,8 @@ packages:
|
|||||||
resolution: {integrity: sha512-us1E3K+3jJppDBa3Tl0L3MOJiGhe1C6P0+nIvQAFYbxlMAx0h81eOwLmU57xgqToduDDPx3y5QsdjPfDu+FgOQ==}
|
resolution: {integrity: sha512-us1E3K+3jJppDBa3Tl0L3MOJiGhe1C6P0+nIvQAFYbxlMAx0h81eOwLmU57xgqToduDDPx3y5QsdjPfDu+FgOQ==}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
|
|
||||||
undici-types@6.21.0:
|
undici-types@5.26.5:
|
||||||
resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==}
|
resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
|
||||||
|
|
||||||
unicode-canonical-property-names-ecmascript@2.0.1:
|
unicode-canonical-property-names-ecmascript@2.0.1:
|
||||||
resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==}
|
resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==}
|
||||||
@ -4184,6 +4214,10 @@ packages:
|
|||||||
utf-8-validate:
|
utf-8-validate:
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
|
xhr2@0.2.1:
|
||||||
|
resolution: {integrity: sha512-sID0rrVCqkVNUn8t6xuv9+6FViXjUVXq8H5rWOH2rz9fDNQEd4g0EA2XlcEdJXRz5BMEn4O1pJFdT+z4YHhoWw==}
|
||||||
|
engines: {node: '>= 6'}
|
||||||
|
|
||||||
y18n@5.0.8:
|
y18n@5.0.8:
|
||||||
resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
|
resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
@ -4239,13 +4273,13 @@ snapshots:
|
|||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- chokidar
|
- chokidar
|
||||||
|
|
||||||
'@angular-devkit/build-angular@19.2.14(@angular/compiler-cli@19.2.14(@angular/compiler@19.2.14)(typescript@5.7.3))(@angular/compiler@19.2.14)(@types/node@22.15.30)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(typescript@5.7.3)(vite@6.2.7(@types/node@22.15.30)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0))':
|
'@angular-devkit/build-angular@19.2.14(@angular/compiler-cli@19.2.14(@angular/compiler@19.2.14)(typescript@5.7.3))(@angular/compiler@19.2.14)(@angular/platform-server@19.2.15(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@19.2.14)(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2))(@angular/ssr@19.2.18(fa7767f49f86fa85c067e27d35b0c201))(@types/node@18.19.130)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(typescript@5.7.3)(vite@6.2.7(@types/node@18.19.130)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@ampproject/remapping': 2.3.0
|
'@ampproject/remapping': 2.3.0
|
||||||
'@angular-devkit/architect': 0.1902.14(chokidar@4.0.3)
|
'@angular-devkit/architect': 0.1902.14(chokidar@4.0.3)
|
||||||
'@angular-devkit/build-webpack': 0.1902.14(chokidar@4.0.3)(webpack-dev-server@5.2.0(webpack@5.98.0))(webpack@5.98.0(esbuild@0.25.4))
|
'@angular-devkit/build-webpack': 0.1902.14(chokidar@4.0.3)(webpack-dev-server@5.2.0(webpack@5.98.0))(webpack@5.98.0(esbuild@0.25.4))
|
||||||
'@angular-devkit/core': 19.2.14(chokidar@4.0.3)
|
'@angular-devkit/core': 19.2.14(chokidar@4.0.3)
|
||||||
'@angular/build': 19.2.14(@angular/compiler-cli@19.2.14(@angular/compiler@19.2.14)(typescript@5.7.3))(@angular/compiler@19.2.14)(@types/node@22.15.30)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(less@4.2.2)(postcss@8.5.2)(terser@5.39.0)(typescript@5.7.3)
|
'@angular/build': 19.2.14(@angular/compiler-cli@19.2.14(@angular/compiler@19.2.14)(typescript@5.7.3))(@angular/compiler@19.2.14)(@angular/platform-server@19.2.15(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@19.2.14)(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2))(@angular/ssr@19.2.18(fa7767f49f86fa85c067e27d35b0c201))(@types/node@18.19.130)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(less@4.2.2)(postcss@8.5.2)(terser@5.39.0)(typescript@5.7.3)
|
||||||
'@angular/compiler-cli': 19.2.14(@angular/compiler@19.2.14)(typescript@5.7.3)
|
'@angular/compiler-cli': 19.2.14(@angular/compiler@19.2.14)(typescript@5.7.3)
|
||||||
'@babel/core': 7.26.10
|
'@babel/core': 7.26.10
|
||||||
'@babel/generator': 7.26.10
|
'@babel/generator': 7.26.10
|
||||||
@ -4258,7 +4292,7 @@ snapshots:
|
|||||||
'@babel/runtime': 7.26.10
|
'@babel/runtime': 7.26.10
|
||||||
'@discoveryjs/json-ext': 0.6.3
|
'@discoveryjs/json-ext': 0.6.3
|
||||||
'@ngtools/webpack': 19.2.14(@angular/compiler-cli@19.2.14(@angular/compiler@19.2.14)(typescript@5.7.3))(typescript@5.7.3)(webpack@5.98.0(esbuild@0.25.4))
|
'@ngtools/webpack': 19.2.14(@angular/compiler-cli@19.2.14(@angular/compiler@19.2.14)(typescript@5.7.3))(typescript@5.7.3)(webpack@5.98.0(esbuild@0.25.4))
|
||||||
'@vitejs/plugin-basic-ssl': 1.2.0(vite@6.2.7(@types/node@22.15.30)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0))
|
'@vitejs/plugin-basic-ssl': 1.2.0(vite@6.2.7(@types/node@18.19.130)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0))
|
||||||
ansi-colors: 4.1.3
|
ansi-colors: 4.1.3
|
||||||
autoprefixer: 10.4.20(postcss@8.5.2)
|
autoprefixer: 10.4.20(postcss@8.5.2)
|
||||||
babel-loader: 9.2.1(@babel/core@7.26.10)(webpack@5.98.0(esbuild@0.25.4))
|
babel-loader: 9.2.1(@babel/core@7.26.10)(webpack@5.98.0(esbuild@0.25.4))
|
||||||
@ -4299,6 +4333,8 @@ snapshots:
|
|||||||
webpack-merge: 6.0.1
|
webpack-merge: 6.0.1
|
||||||
webpack-subresource-integrity: 5.1.0(webpack@5.98.0(esbuild@0.25.4))
|
webpack-subresource-integrity: 5.1.0(webpack@5.98.0(esbuild@0.25.4))
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
|
'@angular/platform-server': 19.2.15(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@19.2.14)(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2)
|
||||||
|
'@angular/ssr': 19.2.18(fa7767f49f86fa85c067e27d35b0c201)
|
||||||
esbuild: 0.25.4
|
esbuild: 0.25.4
|
||||||
karma: 6.4.4
|
karma: 6.4.4
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
@ -4360,7 +4396,7 @@ snapshots:
|
|||||||
'@angular/core': 19.2.14(rxjs@7.8.2)(zone.js@0.15.1)
|
'@angular/core': 19.2.14(rxjs@7.8.2)(zone.js@0.15.1)
|
||||||
tslib: 2.8.1
|
tslib: 2.8.1
|
||||||
|
|
||||||
'@angular/build@19.2.14(@angular/compiler-cli@19.2.14(@angular/compiler@19.2.14)(typescript@5.7.3))(@angular/compiler@19.2.14)(@types/node@22.15.30)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(less@4.2.2)(postcss@8.5.2)(terser@5.39.0)(typescript@5.7.3)':
|
'@angular/build@19.2.14(@angular/compiler-cli@19.2.14(@angular/compiler@19.2.14)(typescript@5.7.3))(@angular/compiler@19.2.14)(@angular/platform-server@19.2.15(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@19.2.14)(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2))(@angular/ssr@19.2.18(fa7767f49f86fa85c067e27d35b0c201))(@types/node@18.19.130)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(less@4.2.2)(postcss@8.5.2)(terser@5.39.0)(typescript@5.7.3)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@ampproject/remapping': 2.3.0
|
'@ampproject/remapping': 2.3.0
|
||||||
'@angular-devkit/architect': 0.1902.14(chokidar@4.0.3)
|
'@angular-devkit/architect': 0.1902.14(chokidar@4.0.3)
|
||||||
@ -4370,8 +4406,8 @@ snapshots:
|
|||||||
'@babel/helper-annotate-as-pure': 7.25.9
|
'@babel/helper-annotate-as-pure': 7.25.9
|
||||||
'@babel/helper-split-export-declaration': 7.24.7
|
'@babel/helper-split-export-declaration': 7.24.7
|
||||||
'@babel/plugin-syntax-import-attributes': 7.26.0(@babel/core@7.26.10)
|
'@babel/plugin-syntax-import-attributes': 7.26.0(@babel/core@7.26.10)
|
||||||
'@inquirer/confirm': 5.1.6(@types/node@22.15.30)
|
'@inquirer/confirm': 5.1.6(@types/node@18.19.130)
|
||||||
'@vitejs/plugin-basic-ssl': 1.2.0(vite@6.2.7(@types/node@22.15.30)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0))
|
'@vitejs/plugin-basic-ssl': 1.2.0(vite@6.2.7(@types/node@18.19.130)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0))
|
||||||
beasties: 0.3.2
|
beasties: 0.3.2
|
||||||
browserslist: 4.25.0
|
browserslist: 4.25.0
|
||||||
esbuild: 0.25.4
|
esbuild: 0.25.4
|
||||||
@ -4389,9 +4425,11 @@ snapshots:
|
|||||||
semver: 7.7.1
|
semver: 7.7.1
|
||||||
source-map-support: 0.5.21
|
source-map-support: 0.5.21
|
||||||
typescript: 5.7.3
|
typescript: 5.7.3
|
||||||
vite: 6.2.7(@types/node@22.15.30)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0)
|
vite: 6.2.7(@types/node@18.19.130)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0)
|
||||||
watchpack: 2.4.2
|
watchpack: 2.4.2
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
|
'@angular/platform-server': 19.2.15(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@19.2.14)(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2)
|
||||||
|
'@angular/ssr': 19.2.18(fa7767f49f86fa85c067e27d35b0c201)
|
||||||
karma: 6.4.4
|
karma: 6.4.4
|
||||||
less: 4.2.2
|
less: 4.2.2
|
||||||
lmdb: 3.2.6
|
lmdb: 3.2.6
|
||||||
@ -4409,13 +4447,13 @@ snapshots:
|
|||||||
- tsx
|
- tsx
|
||||||
- yaml
|
- yaml
|
||||||
|
|
||||||
'@angular/cli@19.2.14(@types/node@22.15.30)(chokidar@4.0.3)':
|
'@angular/cli@19.2.14(@types/node@18.19.130)(chokidar@4.0.3)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@angular-devkit/architect': 0.1902.14(chokidar@4.0.3)
|
'@angular-devkit/architect': 0.1902.14(chokidar@4.0.3)
|
||||||
'@angular-devkit/core': 19.2.14(chokidar@4.0.3)
|
'@angular-devkit/core': 19.2.14(chokidar@4.0.3)
|
||||||
'@angular-devkit/schematics': 19.2.14(chokidar@4.0.3)
|
'@angular-devkit/schematics': 19.2.14(chokidar@4.0.3)
|
||||||
'@inquirer/prompts': 7.3.2(@types/node@22.15.30)
|
'@inquirer/prompts': 7.3.2(@types/node@18.19.130)
|
||||||
'@listr2/prompt-adapter-inquirer': 2.0.18(@inquirer/prompts@7.3.2(@types/node@22.15.30))
|
'@listr2/prompt-adapter-inquirer': 2.0.18(@inquirer/prompts@7.3.2(@types/node@18.19.130))
|
||||||
'@schematics/angular': 19.2.14(chokidar@4.0.3)
|
'@schematics/angular': 19.2.14(chokidar@4.0.3)
|
||||||
'@yarnpkg/lockfile': 1.1.0
|
'@yarnpkg/lockfile': 1.1.0
|
||||||
ini: 5.0.0
|
ini: 5.0.0
|
||||||
@ -4488,6 +4526,16 @@ snapshots:
|
|||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@angular/animations': 19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))
|
'@angular/animations': 19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))
|
||||||
|
|
||||||
|
'@angular/platform-server@19.2.15(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@19.2.14)(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2)':
|
||||||
|
dependencies:
|
||||||
|
'@angular/common': 19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2)
|
||||||
|
'@angular/compiler': 19.2.14
|
||||||
|
'@angular/core': 19.2.14(rxjs@7.8.2)(zone.js@0.15.1)
|
||||||
|
'@angular/platform-browser': 19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))
|
||||||
|
rxjs: 7.8.2
|
||||||
|
tslib: 2.8.1
|
||||||
|
xhr2: 0.2.1
|
||||||
|
|
||||||
'@angular/router@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2)':
|
'@angular/router@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@angular/common': 19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2)
|
'@angular/common': 19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2)
|
||||||
@ -4496,6 +4544,15 @@ snapshots:
|
|||||||
rxjs: 7.8.2
|
rxjs: 7.8.2
|
||||||
tslib: 2.8.1
|
tslib: 2.8.1
|
||||||
|
|
||||||
|
'@angular/ssr@19.2.18(fa7767f49f86fa85c067e27d35b0c201)':
|
||||||
|
dependencies:
|
||||||
|
'@angular/common': 19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2)
|
||||||
|
'@angular/core': 19.2.14(rxjs@7.8.2)(zone.js@0.15.1)
|
||||||
|
'@angular/router': 19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2)
|
||||||
|
tslib: 2.8.1
|
||||||
|
optionalDependencies:
|
||||||
|
'@angular/platform-server': 19.2.15(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@19.2.14)(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@19.2.14(@angular/animations@19.2.14(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@19.2.14(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@19.2.14(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2)
|
||||||
|
|
||||||
'@babel/code-frame@7.27.1':
|
'@babel/code-frame@7.27.1':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/helper-validator-identifier': 7.27.1
|
'@babel/helper-validator-identifier': 7.27.1
|
||||||
@ -5305,34 +5362,34 @@ snapshots:
|
|||||||
'@esbuild/win32-x64@0.25.4':
|
'@esbuild/win32-x64@0.25.4':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@inquirer/checkbox@4.1.8(@types/node@22.15.30)':
|
'@inquirer/checkbox@4.1.8(@types/node@18.19.130)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@inquirer/core': 10.1.13(@types/node@22.15.30)
|
'@inquirer/core': 10.1.13(@types/node@18.19.130)
|
||||||
'@inquirer/figures': 1.0.12
|
'@inquirer/figures': 1.0.12
|
||||||
'@inquirer/type': 3.0.7(@types/node@22.15.30)
|
'@inquirer/type': 3.0.7(@types/node@18.19.130)
|
||||||
ansi-escapes: 4.3.2
|
ansi-escapes: 4.3.2
|
||||||
yoctocolors-cjs: 2.1.2
|
yoctocolors-cjs: 2.1.2
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@inquirer/confirm@5.1.12(@types/node@22.15.30)':
|
'@inquirer/confirm@5.1.12(@types/node@18.19.130)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@inquirer/core': 10.1.13(@types/node@22.15.30)
|
'@inquirer/core': 10.1.13(@types/node@18.19.130)
|
||||||
'@inquirer/type': 3.0.7(@types/node@22.15.30)
|
'@inquirer/type': 3.0.7(@types/node@18.19.130)
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@inquirer/confirm@5.1.6(@types/node@22.15.30)':
|
'@inquirer/confirm@5.1.6(@types/node@18.19.130)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@inquirer/core': 10.1.13(@types/node@22.15.30)
|
'@inquirer/core': 10.1.13(@types/node@18.19.130)
|
||||||
'@inquirer/type': 3.0.7(@types/node@22.15.30)
|
'@inquirer/type': 3.0.7(@types/node@18.19.130)
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@inquirer/core@10.1.13(@types/node@22.15.30)':
|
'@inquirer/core@10.1.13(@types/node@18.19.130)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@inquirer/figures': 1.0.12
|
'@inquirer/figures': 1.0.12
|
||||||
'@inquirer/type': 3.0.7(@types/node@22.15.30)
|
'@inquirer/type': 3.0.7(@types/node@18.19.130)
|
||||||
ansi-escapes: 4.3.2
|
ansi-escapes: 4.3.2
|
||||||
cli-width: 4.1.0
|
cli-width: 4.1.0
|
||||||
mute-stream: 2.0.0
|
mute-stream: 2.0.0
|
||||||
@ -5340,97 +5397,97 @@ snapshots:
|
|||||||
wrap-ansi: 6.2.0
|
wrap-ansi: 6.2.0
|
||||||
yoctocolors-cjs: 2.1.2
|
yoctocolors-cjs: 2.1.2
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@inquirer/editor@4.2.13(@types/node@22.15.30)':
|
'@inquirer/editor@4.2.13(@types/node@18.19.130)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@inquirer/core': 10.1.13(@types/node@22.15.30)
|
'@inquirer/core': 10.1.13(@types/node@18.19.130)
|
||||||
'@inquirer/type': 3.0.7(@types/node@22.15.30)
|
'@inquirer/type': 3.0.7(@types/node@18.19.130)
|
||||||
external-editor: 3.1.0
|
external-editor: 3.1.0
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@inquirer/expand@4.0.15(@types/node@22.15.30)':
|
'@inquirer/expand@4.0.15(@types/node@18.19.130)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@inquirer/core': 10.1.13(@types/node@22.15.30)
|
'@inquirer/core': 10.1.13(@types/node@18.19.130)
|
||||||
'@inquirer/type': 3.0.7(@types/node@22.15.30)
|
'@inquirer/type': 3.0.7(@types/node@18.19.130)
|
||||||
yoctocolors-cjs: 2.1.2
|
yoctocolors-cjs: 2.1.2
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@inquirer/figures@1.0.12': {}
|
'@inquirer/figures@1.0.12': {}
|
||||||
|
|
||||||
'@inquirer/input@4.1.12(@types/node@22.15.30)':
|
'@inquirer/input@4.1.12(@types/node@18.19.130)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@inquirer/core': 10.1.13(@types/node@22.15.30)
|
'@inquirer/core': 10.1.13(@types/node@18.19.130)
|
||||||
'@inquirer/type': 3.0.7(@types/node@22.15.30)
|
'@inquirer/type': 3.0.7(@types/node@18.19.130)
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@inquirer/number@3.0.15(@types/node@22.15.30)':
|
'@inquirer/number@3.0.15(@types/node@18.19.130)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@inquirer/core': 10.1.13(@types/node@22.15.30)
|
'@inquirer/core': 10.1.13(@types/node@18.19.130)
|
||||||
'@inquirer/type': 3.0.7(@types/node@22.15.30)
|
'@inquirer/type': 3.0.7(@types/node@18.19.130)
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@inquirer/password@4.0.15(@types/node@22.15.30)':
|
'@inquirer/password@4.0.15(@types/node@18.19.130)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@inquirer/core': 10.1.13(@types/node@22.15.30)
|
'@inquirer/core': 10.1.13(@types/node@18.19.130)
|
||||||
'@inquirer/type': 3.0.7(@types/node@22.15.30)
|
'@inquirer/type': 3.0.7(@types/node@18.19.130)
|
||||||
ansi-escapes: 4.3.2
|
ansi-escapes: 4.3.2
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@inquirer/prompts@7.3.2(@types/node@22.15.30)':
|
'@inquirer/prompts@7.3.2(@types/node@18.19.130)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@inquirer/checkbox': 4.1.8(@types/node@22.15.30)
|
'@inquirer/checkbox': 4.1.8(@types/node@18.19.130)
|
||||||
'@inquirer/confirm': 5.1.12(@types/node@22.15.30)
|
'@inquirer/confirm': 5.1.12(@types/node@18.19.130)
|
||||||
'@inquirer/editor': 4.2.13(@types/node@22.15.30)
|
'@inquirer/editor': 4.2.13(@types/node@18.19.130)
|
||||||
'@inquirer/expand': 4.0.15(@types/node@22.15.30)
|
'@inquirer/expand': 4.0.15(@types/node@18.19.130)
|
||||||
'@inquirer/input': 4.1.12(@types/node@22.15.30)
|
'@inquirer/input': 4.1.12(@types/node@18.19.130)
|
||||||
'@inquirer/number': 3.0.15(@types/node@22.15.30)
|
'@inquirer/number': 3.0.15(@types/node@18.19.130)
|
||||||
'@inquirer/password': 4.0.15(@types/node@22.15.30)
|
'@inquirer/password': 4.0.15(@types/node@18.19.130)
|
||||||
'@inquirer/rawlist': 4.1.3(@types/node@22.15.30)
|
'@inquirer/rawlist': 4.1.3(@types/node@18.19.130)
|
||||||
'@inquirer/search': 3.0.15(@types/node@22.15.30)
|
'@inquirer/search': 3.0.15(@types/node@18.19.130)
|
||||||
'@inquirer/select': 4.2.3(@types/node@22.15.30)
|
'@inquirer/select': 4.2.3(@types/node@18.19.130)
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@inquirer/rawlist@4.1.3(@types/node@22.15.30)':
|
'@inquirer/rawlist@4.1.3(@types/node@18.19.130)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@inquirer/core': 10.1.13(@types/node@22.15.30)
|
'@inquirer/core': 10.1.13(@types/node@18.19.130)
|
||||||
'@inquirer/type': 3.0.7(@types/node@22.15.30)
|
'@inquirer/type': 3.0.7(@types/node@18.19.130)
|
||||||
yoctocolors-cjs: 2.1.2
|
yoctocolors-cjs: 2.1.2
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@inquirer/search@3.0.15(@types/node@22.15.30)':
|
'@inquirer/search@3.0.15(@types/node@18.19.130)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@inquirer/core': 10.1.13(@types/node@22.15.30)
|
'@inquirer/core': 10.1.13(@types/node@18.19.130)
|
||||||
'@inquirer/figures': 1.0.12
|
'@inquirer/figures': 1.0.12
|
||||||
'@inquirer/type': 3.0.7(@types/node@22.15.30)
|
'@inquirer/type': 3.0.7(@types/node@18.19.130)
|
||||||
yoctocolors-cjs: 2.1.2
|
yoctocolors-cjs: 2.1.2
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@inquirer/select@4.2.3(@types/node@22.15.30)':
|
'@inquirer/select@4.2.3(@types/node@18.19.130)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@inquirer/core': 10.1.13(@types/node@22.15.30)
|
'@inquirer/core': 10.1.13(@types/node@18.19.130)
|
||||||
'@inquirer/figures': 1.0.12
|
'@inquirer/figures': 1.0.12
|
||||||
'@inquirer/type': 3.0.7(@types/node@22.15.30)
|
'@inquirer/type': 3.0.7(@types/node@18.19.130)
|
||||||
ansi-escapes: 4.3.2
|
ansi-escapes: 4.3.2
|
||||||
yoctocolors-cjs: 2.1.2
|
yoctocolors-cjs: 2.1.2
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@inquirer/type@1.5.5':
|
'@inquirer/type@1.5.5':
|
||||||
dependencies:
|
dependencies:
|
||||||
mute-stream: 1.0.0
|
mute-stream: 1.0.0
|
||||||
|
|
||||||
'@inquirer/type@3.0.7(@types/node@22.15.30)':
|
'@inquirer/type@3.0.7(@types/node@18.19.130)':
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@isaacs/cliui@8.0.2':
|
'@isaacs/cliui@8.0.2':
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -5487,9 +5544,9 @@ snapshots:
|
|||||||
|
|
||||||
'@leichtgewicht/ip-codec@2.0.5': {}
|
'@leichtgewicht/ip-codec@2.0.5': {}
|
||||||
|
|
||||||
'@listr2/prompt-adapter-inquirer@2.0.18(@inquirer/prompts@7.3.2(@types/node@22.15.30))':
|
'@listr2/prompt-adapter-inquirer@2.0.18(@inquirer/prompts@7.3.2(@types/node@18.19.130))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@inquirer/prompts': 7.3.2(@types/node@22.15.30)
|
'@inquirer/prompts': 7.3.2(@types/node@18.19.130)
|
||||||
'@inquirer/type': 1.5.5
|
'@inquirer/type': 1.5.5
|
||||||
|
|
||||||
'@lmdb/lmdb-darwin-arm64@3.2.6':
|
'@lmdb/lmdb-darwin-arm64@3.2.6':
|
||||||
@ -5848,24 +5905,24 @@ snapshots:
|
|||||||
'@types/body-parser@1.19.6':
|
'@types/body-parser@1.19.6':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/connect': 3.4.38
|
'@types/connect': 3.4.38
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@types/bonjour@3.5.13':
|
'@types/bonjour@3.5.13':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@types/connect-history-api-fallback@1.5.4':
|
'@types/connect-history-api-fallback@1.5.4':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/express-serve-static-core': 5.0.6
|
'@types/express-serve-static-core': 5.0.6
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@types/connect@3.4.38':
|
'@types/connect@3.4.38':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@types/cors@2.8.19':
|
'@types/cors@2.8.19':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@types/eslint-scope@3.7.7':
|
'@types/eslint-scope@3.7.7':
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -5883,14 +5940,14 @@ snapshots:
|
|||||||
|
|
||||||
'@types/express-serve-static-core@4.19.6':
|
'@types/express-serve-static-core@4.19.6':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
'@types/qs': 6.14.0
|
'@types/qs': 6.14.0
|
||||||
'@types/range-parser': 1.2.7
|
'@types/range-parser': 1.2.7
|
||||||
'@types/send': 0.17.5
|
'@types/send': 0.17.5
|
||||||
|
|
||||||
'@types/express-serve-static-core@5.0.6':
|
'@types/express-serve-static-core@5.0.6':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
'@types/qs': 6.14.0
|
'@types/qs': 6.14.0
|
||||||
'@types/range-parser': 1.2.7
|
'@types/range-parser': 1.2.7
|
||||||
'@types/send': 0.17.5
|
'@types/send': 0.17.5
|
||||||
@ -5906,7 +5963,7 @@ snapshots:
|
|||||||
|
|
||||||
'@types/http-proxy@1.17.16':
|
'@types/http-proxy@1.17.16':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@types/jasmine@5.1.8': {}
|
'@types/jasmine@5.1.8': {}
|
||||||
|
|
||||||
@ -5916,11 +5973,11 @@ snapshots:
|
|||||||
|
|
||||||
'@types/node-forge@1.3.11':
|
'@types/node-forge@1.3.11':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@types/node@22.15.30':
|
'@types/node@18.19.130':
|
||||||
dependencies:
|
dependencies:
|
||||||
undici-types: 6.21.0
|
undici-types: 5.26.5
|
||||||
|
|
||||||
'@types/qs@6.14.0': {}
|
'@types/qs@6.14.0': {}
|
||||||
|
|
||||||
@ -5931,7 +5988,7 @@ snapshots:
|
|||||||
'@types/send@0.17.5':
|
'@types/send@0.17.5':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/mime': 1.3.5
|
'@types/mime': 1.3.5
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@types/serve-index@1.9.4':
|
'@types/serve-index@1.9.4':
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -5940,20 +5997,20 @@ snapshots:
|
|||||||
'@types/serve-static@1.15.8':
|
'@types/serve-static@1.15.8':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/http-errors': 2.0.5
|
'@types/http-errors': 2.0.5
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
'@types/send': 0.17.5
|
'@types/send': 0.17.5
|
||||||
|
|
||||||
'@types/sockjs@0.3.36':
|
'@types/sockjs@0.3.36':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@types/ws@8.18.1':
|
'@types/ws@8.18.1':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
|
|
||||||
'@vitejs/plugin-basic-ssl@1.2.0(vite@6.2.7(@types/node@22.15.30)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0))':
|
'@vitejs/plugin-basic-ssl@1.2.0(vite@6.2.7(@types/node@18.19.130)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0))':
|
||||||
dependencies:
|
dependencies:
|
||||||
vite: 6.2.7(@types/node@22.15.30)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0)
|
vite: 6.2.7(@types/node@18.19.130)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0)
|
||||||
|
|
||||||
'@webassemblyjs/ast@1.14.1':
|
'@webassemblyjs/ast@1.14.1':
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -6556,7 +6613,7 @@ snapshots:
|
|||||||
engine.io@6.6.4:
|
engine.io@6.6.4:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/cors': 2.8.19
|
'@types/cors': 2.8.19
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
accepts: 1.3.8
|
accepts: 1.3.8
|
||||||
base64id: 2.0.0
|
base64id: 2.0.0
|
||||||
cookie: 0.7.2
|
cookie: 0.7.2
|
||||||
@ -7158,7 +7215,7 @@ snapshots:
|
|||||||
|
|
||||||
jest-worker@27.5.1:
|
jest-worker@27.5.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
merge-stream: 2.0.0
|
merge-stream: 2.0.0
|
||||||
supports-color: 8.1.1
|
supports-color: 8.1.1
|
||||||
|
|
||||||
@ -8433,7 +8490,7 @@ snapshots:
|
|||||||
|
|
||||||
ua-parser-js@0.7.40: {}
|
ua-parser-js@0.7.40: {}
|
||||||
|
|
||||||
undici-types@6.21.0: {}
|
undici-types@5.26.5: {}
|
||||||
|
|
||||||
unicode-canonical-property-names-ecmascript@2.0.1: {}
|
unicode-canonical-property-names-ecmascript@2.0.1: {}
|
||||||
|
|
||||||
@ -8481,13 +8538,13 @@ snapshots:
|
|||||||
|
|
||||||
vary@1.1.2: {}
|
vary@1.1.2: {}
|
||||||
|
|
||||||
vite@6.2.7(@types/node@22.15.30)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0):
|
vite@6.2.7(@types/node@18.19.130)(jiti@1.21.7)(less@4.2.2)(sass@1.85.0)(terser@5.39.0):
|
||||||
dependencies:
|
dependencies:
|
||||||
esbuild: 0.25.4
|
esbuild: 0.25.4
|
||||||
postcss: 8.5.4
|
postcss: 8.5.4
|
||||||
rollup: 4.34.8
|
rollup: 4.34.8
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 22.15.30
|
'@types/node': 18.19.130
|
||||||
fsevents: 2.3.3
|
fsevents: 2.3.3
|
||||||
jiti: 1.21.7
|
jiti: 1.21.7
|
||||||
less: 4.2.2
|
less: 4.2.2
|
||||||
@ -8660,6 +8717,8 @@ snapshots:
|
|||||||
|
|
||||||
ws@8.18.2: {}
|
ws@8.18.2: {}
|
||||||
|
|
||||||
|
xhr2@0.2.1: {}
|
||||||
|
|
||||||
y18n@5.0.8: {}
|
y18n@5.0.8: {}
|
||||||
|
|
||||||
yallist@3.1.1: {}
|
yallist@3.1.1: {}
|
||||||
|
|||||||
@ -1,2 +1 @@
|
|||||||
<img src="/full_logo.svg" alt="logo">
|
|
||||||
<router-outlet/>
|
<router-outlet/>
|
||||||
|
|||||||
@ -4,6 +4,7 @@ import { provideRouter } from '@angular/router';
|
|||||||
import { routes } from './app.routes';
|
import { routes } from './app.routes';
|
||||||
import {GandalfClientBaseAPI} from './clients/gandalf/gandalf-client';
|
import {GandalfClientBaseAPI} from './clients/gandalf/gandalf-client';
|
||||||
import {provideHttpClient} from '@angular/common/http';
|
import {provideHttpClient} from '@angular/common/http';
|
||||||
|
import { provideClientHydration, withEventReplay } from '@angular/platform-browser';
|
||||||
|
|
||||||
export const appConfig: ApplicationConfig = {
|
export const appConfig: ApplicationConfig = {
|
||||||
providers: [
|
providers: [
|
||||||
@ -13,6 +14,6 @@ export const appConfig: ApplicationConfig = {
|
|||||||
{
|
{
|
||||||
provide: GandalfClientBaseAPI,
|
provide: GandalfClientBaseAPI,
|
||||||
useValue: 'http://localhost:5055'
|
useValue: 'http://localhost:5055'
|
||||||
}
|
}, provideClientHydration(withEventReplay())
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
|
|||||||
@ -2,6 +2,7 @@ import {Routes} from '@angular/router';
|
|||||||
import {LoginComponent} from './components/login/login.component';
|
import {LoginComponent} from './components/login/login.component';
|
||||||
import {HomeComponent} from './components/home/home.component';
|
import {HomeComponent} from './components/home/home.component';
|
||||||
import {authGuard} from './guards/auth.guard';
|
import {authGuard} from './guards/auth.guard';
|
||||||
|
import {ShellComponent} from './components/shell/shell.component';
|
||||||
|
|
||||||
export const routes: Routes = [
|
export const routes: Routes = [
|
||||||
{
|
{
|
||||||
@ -11,6 +12,7 @@ export const routes: Routes = [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '',
|
path: '',
|
||||||
|
component: ShellComponent,
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
title: 'Home',
|
title: 'Home',
|
||||||
|
|||||||
@ -0,0 +1 @@
|
|||||||
|
<p>home works!</p>
|
||||||
@ -0,0 +1,12 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-home',
|
||||||
|
imports: [],
|
||||||
|
templateUrl: './home.component.html',
|
||||||
|
styleUrl: './home.component.scss',
|
||||||
|
standalone: true,
|
||||||
|
})
|
||||||
|
export class HomeComponent {
|
||||||
|
|
||||||
|
}
|
||||||
@ -19,7 +19,7 @@ export class LoginComponent {
|
|||||||
private router = inject(Router);
|
private router = inject(Router);
|
||||||
|
|
||||||
protected loginFormGroup = new FormGroup({
|
protected loginFormGroup = new FormGroup({
|
||||||
usernameOrEmail: new FormControl('housemasterr'),
|
usernameOrEmail: new FormControl('housemaster'),
|
||||||
password: new FormControl('kR0pNCspBKx8lOzAIch5'),
|
password: new FormControl('kR0pNCspBKx8lOzAIch5'),
|
||||||
keep: new FormControl(false),
|
keep: new FormControl(false),
|
||||||
});
|
});
|
||||||
|
|||||||
@ -0,0 +1 @@
|
|||||||
|
<ng-content></ng-content>
|
||||||
@ -0,0 +1,15 @@
|
|||||||
|
:host {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
gap: 1rem;
|
||||||
|
padding: 1rem;
|
||||||
|
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
background-color: var(--bg-color);
|
||||||
|
color: var(--text-color);
|
||||||
|
|
||||||
|
border-radius: 0.5rem;
|
||||||
|
|
||||||
|
margin: 1rem;
|
||||||
|
}
|
||||||
@ -0,0 +1,23 @@
|
|||||||
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
|
|
||||||
|
import { PanelComponent } from './panel.component';
|
||||||
|
|
||||||
|
describe('PanelComponent', () => {
|
||||||
|
let component: PanelComponent;
|
||||||
|
let fixture: ComponentFixture<PanelComponent>;
|
||||||
|
|
||||||
|
beforeEach(async () => {
|
||||||
|
await TestBed.configureTestingModule({
|
||||||
|
imports: [PanelComponent]
|
||||||
|
})
|
||||||
|
.compileComponents();
|
||||||
|
|
||||||
|
fixture = TestBed.createComponent(PanelComponent);
|
||||||
|
component = fixture.componentInstance;
|
||||||
|
fixture.detectChanges();
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should create', () => {
|
||||||
|
expect(component).toBeTruthy();
|
||||||
|
});
|
||||||
|
});
|
||||||
@ -0,0 +1,11 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-panel',
|
||||||
|
imports: [],
|
||||||
|
templateUrl: './panel.component.html',
|
||||||
|
styleUrl: './panel.component.scss'
|
||||||
|
})
|
||||||
|
export class PanelComponent {
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1 @@
|
|||||||
|
<p>nav-profile works!</p>
|
||||||
@ -0,0 +1,23 @@
|
|||||||
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
|
|
||||||
|
import { NavProfileComponent } from './nav-profile.component';
|
||||||
|
|
||||||
|
describe('NavProfileComponent', () => {
|
||||||
|
let component: NavProfileComponent;
|
||||||
|
let fixture: ComponentFixture<NavProfileComponent>;
|
||||||
|
|
||||||
|
beforeEach(async () => {
|
||||||
|
await TestBed.configureTestingModule({
|
||||||
|
imports: [NavProfileComponent]
|
||||||
|
})
|
||||||
|
.compileComponents();
|
||||||
|
|
||||||
|
fixture = TestBed.createComponent(NavProfileComponent);
|
||||||
|
component = fixture.componentInstance;
|
||||||
|
fixture.detectChanges();
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should create', () => {
|
||||||
|
expect(component).toBeTruthy();
|
||||||
|
});
|
||||||
|
});
|
||||||
@ -0,0 +1,12 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-nav-profile',
|
||||||
|
imports: [],
|
||||||
|
templateUrl: './nav-profile.component.html',
|
||||||
|
styleUrl: './nav-profile.component.scss',
|
||||||
|
standalone: true,
|
||||||
|
})
|
||||||
|
export class NavProfileComponent {
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,4 @@
|
|||||||
|
<app-panel class="shell-nav-bar primary-50">
|
||||||
|
<img class="logo" src="/full_logo.svg" alt="logo">
|
||||||
|
<app-nav-profile></app-nav-profile>
|
||||||
|
</app-panel>
|
||||||
@ -0,0 +1,9 @@
|
|||||||
|
.shell-nav-bar {
|
||||||
|
.logo {
|
||||||
|
height: 3rem;
|
||||||
|
}
|
||||||
|
app-nav-profile {
|
||||||
|
margin-left: auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@ -0,0 +1,23 @@
|
|||||||
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
|
|
||||||
|
import { ShellComponent } from './shell.component';
|
||||||
|
|
||||||
|
describe('ShellComponent', () => {
|
||||||
|
let component: ShellComponent;
|
||||||
|
let fixture: ComponentFixture<ShellComponent>;
|
||||||
|
|
||||||
|
beforeEach(async () => {
|
||||||
|
await TestBed.configureTestingModule({
|
||||||
|
imports: [ShellComponent]
|
||||||
|
})
|
||||||
|
.compileComponents();
|
||||||
|
|
||||||
|
fixture = TestBed.createComponent(ShellComponent);
|
||||||
|
component = fixture.componentInstance;
|
||||||
|
fixture.detectChanges();
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should create', () => {
|
||||||
|
expect(component).toBeTruthy();
|
||||||
|
});
|
||||||
|
});
|
||||||
@ -0,0 +1,19 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import {NavProfileComponent} from './nav-profile/nav-profile.component';
|
||||||
|
import {RouterOutlet} from '@angular/router';
|
||||||
|
import {PanelComponent} from '../panel/panel.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-shell',
|
||||||
|
imports: [
|
||||||
|
NavProfileComponent,
|
||||||
|
RouterOutlet,
|
||||||
|
PanelComponent
|
||||||
|
],
|
||||||
|
templateUrl: './shell.component.html',
|
||||||
|
styleUrl: './shell.component.scss',
|
||||||
|
standalone: true,
|
||||||
|
})
|
||||||
|
export class ShellComponent {
|
||||||
|
|
||||||
|
}
|
||||||
17
src/angular/frontend/src/app/guards/auth.guard.spec.ts
Normal file
17
src/angular/frontend/src/app/guards/auth.guard.spec.ts
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
import { TestBed } from '@angular/core/testing';
|
||||||
|
import { CanActivateFn } from '@angular/router';
|
||||||
|
|
||||||
|
import { authGuard } from './auth.guard';
|
||||||
|
|
||||||
|
describe('authGuard', () => {
|
||||||
|
const executeGuard: CanActivateFn = (...guardParameters) =>
|
||||||
|
TestBed.runInInjectionContext(() => authGuard(...guardParameters));
|
||||||
|
|
||||||
|
beforeEach(() => {
|
||||||
|
TestBed.configureTestingModule({});
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should be created', () => {
|
||||||
|
expect(executeGuard).toBeTruthy();
|
||||||
|
});
|
||||||
|
});
|
||||||
15
src/angular/frontend/src/app/guards/auth.guard.ts
Normal file
15
src/angular/frontend/src/app/guards/auth.guard.ts
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
import {CanActivateFn, MaybeAsync, Router, UrlTree} from '@angular/router';
|
||||||
|
import {inject} from '@angular/core';
|
||||||
|
import {AuthService} from '../clients/gandalf/mithrandir/auth.service';
|
||||||
|
import { map } from 'rxjs';
|
||||||
|
|
||||||
|
export const authGuard: CanActivateFn = (route, state): MaybeAsync<boolean | UrlTree> => {
|
||||||
|
const authService = inject(AuthService);
|
||||||
|
const router = inject(Router);
|
||||||
|
return authService.check$().pipe(map(can => {
|
||||||
|
if (!can) {
|
||||||
|
return router.parseUrl('/login');
|
||||||
|
}
|
||||||
|
return can;
|
||||||
|
}))
|
||||||
|
};
|
||||||
69
src/angular/frontend/src/color-theme.scss
Normal file
69
src/angular/frontend/src/color-theme.scss
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
@use 'sass:color';
|
||||||
|
|
||||||
|
$primary-color: hsl(160, 100%, 50%);
|
||||||
|
$secondary-color: hsl(270, 100%, 50%);
|
||||||
|
|
||||||
|
$info-color: hsl(180, 60%, 50%);
|
||||||
|
$success-color: hsl(110, 60%, 50%);
|
||||||
|
$warn-color: hsl(50, 70%, 50%);
|
||||||
|
$danger-color: hsl(10, 80%, 50%);
|
||||||
|
|
||||||
|
@mixin set-color-shades($name, $color, $step: 10) {
|
||||||
|
@for $i from 1 through (100/$step)-1 {
|
||||||
|
--#{$name}-#{$i * $step}: hsl(#{color.hue($color)}, #{color.saturation($color)}, #{$i * $step}%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin set-neutral-colors($step: 10) {
|
||||||
|
@for $i from 0 through 100/$step {
|
||||||
|
--neutral-#{$i * $step}: hsl(0, 0%, #{$i * $step}%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin set-common-colors() {
|
||||||
|
--primary-color: #{$primary-color};
|
||||||
|
--secondary-color: #{$secondary-color};
|
||||||
|
--info-color: #{$info-color};
|
||||||
|
--success-color: #{$success-color};
|
||||||
|
--warn-color: #{$warn-color};
|
||||||
|
--danger-color: #{$danger-color};
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin set-color-classes($name, $color, $step: 10, $padded: false) {
|
||||||
|
$from: if($padded, 0, 1);
|
||||||
|
$to: if($padded, 100/$step, (100/$step)-1);
|
||||||
|
|
||||||
|
|
||||||
|
@for $i from $from through $to {
|
||||||
|
.#{$name}-#{$i * $step} {
|
||||||
|
--bg-color: hsl(#{color.hue($color)}, #{color.saturation($color)}, #{$i * $step}%);
|
||||||
|
--text-color: var(--neutral-10);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
:root {
|
||||||
|
@include set-neutral-colors();
|
||||||
|
@include set-common-colors();
|
||||||
|
@include set-color-shades("primary", $primary-color, 10);
|
||||||
|
@include set-color-shades("secondary", $secondary-color, 10);
|
||||||
|
|
||||||
|
--bg-color: var(--neutral-90);
|
||||||
|
--text-color: var(--neutral-10);
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--bg-color: var(--neutral-10);
|
||||||
|
--text-color: var(--neutral-90);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@include set-color-classes("primary", $primary-color, 10, true);
|
||||||
|
@include set-color-classes("secondary", $secondary-color, 10);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -1,4 +1,5 @@
|
|||||||
/* You can add global styles to this file, and also import other style files */
|
/* You can add global styles to this file, and also import other style files */
|
||||||
|
@use "color-theme";
|
||||||
|
|
||||||
html, input {
|
html, input {
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
@ -11,6 +12,8 @@ html, input {
|
|||||||
|
|
||||||
body {
|
body {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
|
background-color: var(--bg-color);
|
||||||
|
color: var(--text-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
#path1 { fill: black; }
|
#path1 { fill: black; }
|
||||||
|
|||||||
6
src/dotnet/.idea/.idea.Suspectus.Gandalf/.idea/copilot.data.migration.agent.xml
generated
Normal file
6
src/dotnet/.idea/.idea.Suspectus.Gandalf/.idea/copilot.data.migration.agent.xml
generated
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="AgentMigrationStateService">
|
||||||
|
<option name="migrationStatus" value="COMPLETED" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
6
src/dotnet/.idea/.idea.Suspectus.Gandalf/.idea/copilot.data.migration.ask.xml
generated
Normal file
6
src/dotnet/.idea/.idea.Suspectus.Gandalf/.idea/copilot.data.migration.ask.xml
generated
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="AskMigrationStateService">
|
||||||
|
<option name="migrationStatus" value="COMPLETED" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
6
src/dotnet/.idea/.idea.Suspectus.Gandalf/.idea/copilot.data.migration.ask2agent.xml
generated
Normal file
6
src/dotnet/.idea/.idea.Suspectus.Gandalf/.idea/copilot.data.migration.ask2agent.xml
generated
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="Ask2AgentMigrationStateService">
|
||||||
|
<option name="migrationStatus" value="COMPLETED" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
6
src/dotnet/.idea/.idea.Suspectus.Gandalf/.idea/copilot.data.migration.edit.xml
generated
Normal file
6
src/dotnet/.idea/.idea.Suspectus.Gandalf/.idea/copilot.data.migration.edit.xml
generated
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="EditMigrationStateService">
|
||||||
|
<option name="migrationStatus" value="COMPLETED" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
Loading…
x
Reference in New Issue
Block a user