Start application
This commit is contained in:
323
.gitignore
vendored
Normal file
323
.gitignore
vendored
Normal file
@@ -0,0 +1,323 @@
|
|||||||
|
# Created by https://www.toptal.com/developers/gitignore/api/angular,node,webstorm+all,visualstudiocode,windows,linux
|
||||||
|
# Edit at https://www.toptal.com/developers/gitignore?templates=angular,node,webstorm+all,visualstudiocode,windows,linux
|
||||||
|
|
||||||
|
### Angular ###
|
||||||
|
## Angular ##
|
||||||
|
# compiled output
|
||||||
|
dist/
|
||||||
|
tmp/
|
||||||
|
app/**/*.js
|
||||||
|
app/**/*.js.map
|
||||||
|
|
||||||
|
# dependencies
|
||||||
|
node_modules/
|
||||||
|
bower_components/
|
||||||
|
|
||||||
|
# IDEs and editors
|
||||||
|
.idea/
|
||||||
|
|
||||||
|
# misc
|
||||||
|
.sass-cache/
|
||||||
|
connect.lock/
|
||||||
|
coverage/
|
||||||
|
libpeerconnection.log/
|
||||||
|
npm-debug.log
|
||||||
|
testem.log
|
||||||
|
typings/
|
||||||
|
.angular/
|
||||||
|
|
||||||
|
# e2e
|
||||||
|
e2e/*.js
|
||||||
|
e2e/*.map
|
||||||
|
|
||||||
|
# System Files
|
||||||
|
.DS_Store/
|
||||||
|
|
||||||
|
### Linux ###
|
||||||
|
*~
|
||||||
|
|
||||||
|
# temporary files which can be created if a process still has a handle open of a deleted file
|
||||||
|
.fuse_hidden*
|
||||||
|
|
||||||
|
# KDE directory preferences
|
||||||
|
.directory
|
||||||
|
|
||||||
|
# Linux trash folder which might appear on any partition or disk
|
||||||
|
.Trash-*
|
||||||
|
|
||||||
|
# .nfs files are created when an open file is removed but is still being accessed
|
||||||
|
.nfs*
|
||||||
|
|
||||||
|
### Node ###
|
||||||
|
# Logs
|
||||||
|
logs
|
||||||
|
*.log
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
lerna-debug.log*
|
||||||
|
.pnpm-debug.log*
|
||||||
|
|
||||||
|
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||||
|
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||||
|
|
||||||
|
# Runtime data
|
||||||
|
pids
|
||||||
|
*.pid
|
||||||
|
*.seed
|
||||||
|
*.pid.lock
|
||||||
|
|
||||||
|
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||||
|
lib-cov
|
||||||
|
|
||||||
|
# Coverage directory used by tools like istanbul
|
||||||
|
coverage
|
||||||
|
*.lcov
|
||||||
|
|
||||||
|
# nyc test coverage
|
||||||
|
.nyc_output
|
||||||
|
|
||||||
|
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||||
|
.grunt
|
||||||
|
|
||||||
|
# Bower dependency directory (https://bower.io/)
|
||||||
|
bower_components
|
||||||
|
|
||||||
|
# node-waf configuration
|
||||||
|
.lock-wscript
|
||||||
|
|
||||||
|
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||||
|
build/Release
|
||||||
|
|
||||||
|
# Dependency directories
|
||||||
|
jspm_packages/
|
||||||
|
|
||||||
|
# Snowpack dependency directory (https://snowpack.dev/)
|
||||||
|
web_modules/
|
||||||
|
|
||||||
|
# TypeScript cache
|
||||||
|
*.tsbuildinfo
|
||||||
|
|
||||||
|
# Optional npm cache directory
|
||||||
|
.npm
|
||||||
|
|
||||||
|
# Optional eslint cache
|
||||||
|
.eslintcache
|
||||||
|
|
||||||
|
# Optional stylelint cache
|
||||||
|
.stylelintcache
|
||||||
|
|
||||||
|
# Microbundle cache
|
||||||
|
.rpt2_cache/
|
||||||
|
.rts2_cache_cjs/
|
||||||
|
.rts2_cache_es/
|
||||||
|
.rts2_cache_umd/
|
||||||
|
|
||||||
|
# Optional REPL history
|
||||||
|
.node_repl_history
|
||||||
|
|
||||||
|
# Output of 'npm pack'
|
||||||
|
*.tgz
|
||||||
|
|
||||||
|
# Yarn Integrity file
|
||||||
|
.yarn-integrity
|
||||||
|
|
||||||
|
# dotenv environment variable files
|
||||||
|
.env
|
||||||
|
.env.development.local
|
||||||
|
.env.test.local
|
||||||
|
.env.production.local
|
||||||
|
.env.local
|
||||||
|
|
||||||
|
# parcel-bundler cache (https://parceljs.org/)
|
||||||
|
.cache
|
||||||
|
.parcel-cache
|
||||||
|
|
||||||
|
# Next.js build output
|
||||||
|
.next
|
||||||
|
out
|
||||||
|
|
||||||
|
# Nuxt.js build / generate output
|
||||||
|
.nuxt
|
||||||
|
dist
|
||||||
|
|
||||||
|
# Gatsby files
|
||||||
|
.cache/
|
||||||
|
# Comment in the public line in if your project uses Gatsby and not Next.js
|
||||||
|
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||||
|
# public
|
||||||
|
|
||||||
|
# vuepress build output
|
||||||
|
.vuepress/dist
|
||||||
|
|
||||||
|
# vuepress v2.x temp and cache directory
|
||||||
|
.temp
|
||||||
|
|
||||||
|
# Docusaurus cache and generated files
|
||||||
|
.docusaurus
|
||||||
|
|
||||||
|
# Serverless directories
|
||||||
|
.serverless/
|
||||||
|
|
||||||
|
# FuseBox cache
|
||||||
|
.fusebox/
|
||||||
|
|
||||||
|
# DynamoDB Local files
|
||||||
|
.dynamodb/
|
||||||
|
|
||||||
|
# TernJS port file
|
||||||
|
.tern-port
|
||||||
|
|
||||||
|
# Stores VSCode versions used for testing VSCode extensions
|
||||||
|
.vscode-test
|
||||||
|
|
||||||
|
# yarn v2
|
||||||
|
.yarn/cache
|
||||||
|
.yarn/unplugged
|
||||||
|
.yarn/build-state.yml
|
||||||
|
.yarn/install-state.gz
|
||||||
|
.pnp.*
|
||||||
|
|
||||||
|
### Node Patch ###
|
||||||
|
# Serverless Webpack directories
|
||||||
|
.webpack/
|
||||||
|
|
||||||
|
# Optional stylelint cache
|
||||||
|
|
||||||
|
# SvelteKit build / generate output
|
||||||
|
.svelte-kit
|
||||||
|
|
||||||
|
### VisualStudioCode ###
|
||||||
|
.vscode/*
|
||||||
|
!.vscode/settings.json
|
||||||
|
!.vscode/tasks.json
|
||||||
|
!.vscode/launch.json
|
||||||
|
!.vscode/extensions.json
|
||||||
|
!.vscode/*.code-snippets
|
||||||
|
|
||||||
|
# Local History for Visual Studio Code
|
||||||
|
.history/
|
||||||
|
|
||||||
|
# Built Visual Studio Code Extensions
|
||||||
|
*.vsix
|
||||||
|
|
||||||
|
### VisualStudioCode Patch ###
|
||||||
|
# Ignore all local history of files
|
||||||
|
.history
|
||||||
|
.ionide
|
||||||
|
|
||||||
|
### WebStorm+all ###
|
||||||
|
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
|
||||||
|
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
|
||||||
|
|
||||||
|
# User-specific stuff
|
||||||
|
.idea/**/workspace.xml
|
||||||
|
.idea/**/tasks.xml
|
||||||
|
.idea/**/usage.statistics.xml
|
||||||
|
.idea/**/dictionaries
|
||||||
|
.idea/**/shelf
|
||||||
|
|
||||||
|
# AWS User-specific
|
||||||
|
.idea/**/aws.xml
|
||||||
|
|
||||||
|
# Generated files
|
||||||
|
.idea/**/contentModel.xml
|
||||||
|
|
||||||
|
# Sensitive or high-churn files
|
||||||
|
.idea/**/dataSources/
|
||||||
|
.idea/**/dataSources.ids
|
||||||
|
.idea/**/dataSources.local.xml
|
||||||
|
.idea/**/sqlDataSources.xml
|
||||||
|
.idea/**/dynamic.xml
|
||||||
|
.idea/**/uiDesigner.xml
|
||||||
|
.idea/**/dbnavigator.xml
|
||||||
|
|
||||||
|
# Gradle
|
||||||
|
.idea/**/gradle.xml
|
||||||
|
.idea/**/libraries
|
||||||
|
|
||||||
|
# Gradle and Maven with auto-import
|
||||||
|
# When using Gradle or Maven with auto-import, you should exclude module files,
|
||||||
|
# since they will be recreated, and may cause churn. Uncomment if using
|
||||||
|
# auto-import.
|
||||||
|
# .idea/artifacts
|
||||||
|
# .idea/compiler.xml
|
||||||
|
# .idea/jarRepositories.xml
|
||||||
|
# .idea/modules.xml
|
||||||
|
# .idea/*.iml
|
||||||
|
# .idea/modules
|
||||||
|
# *.iml
|
||||||
|
# *.ipr
|
||||||
|
|
||||||
|
# CMake
|
||||||
|
cmake-build-*/
|
||||||
|
|
||||||
|
# Mongo Explorer plugin
|
||||||
|
.idea/**/mongoSettings.xml
|
||||||
|
|
||||||
|
# File-based project format
|
||||||
|
*.iws
|
||||||
|
|
||||||
|
# IntelliJ
|
||||||
|
out/
|
||||||
|
|
||||||
|
# mpeltonen/sbt-idea plugin
|
||||||
|
.idea_modules/
|
||||||
|
|
||||||
|
# JIRA plugin
|
||||||
|
atlassian-ide-plugin.xml
|
||||||
|
|
||||||
|
# Cursive Clojure plugin
|
||||||
|
.idea/replstate.xml
|
||||||
|
|
||||||
|
# SonarLint plugin
|
||||||
|
.idea/sonarlint/
|
||||||
|
|
||||||
|
# Crashlytics plugin (for Android Studio and IntelliJ)
|
||||||
|
com_crashlytics_export_strings.xml
|
||||||
|
crashlytics.properties
|
||||||
|
crashlytics-build.properties
|
||||||
|
fabric.properties
|
||||||
|
|
||||||
|
# Editor-based Rest Client
|
||||||
|
.idea/httpRequests
|
||||||
|
|
||||||
|
# Android studio 3.1+ serialized cache file
|
||||||
|
.idea/caches/build_file_checksums.ser
|
||||||
|
|
||||||
|
### WebStorm+all Patch ###
|
||||||
|
# Ignore everything but code style settings and run configurations
|
||||||
|
# that are supposed to be shared within teams.
|
||||||
|
|
||||||
|
.idea/*
|
||||||
|
|
||||||
|
!.idea/codeStyles
|
||||||
|
!.idea/runConfigurations
|
||||||
|
|
||||||
|
### Windows ###
|
||||||
|
# Windows thumbnail cache files
|
||||||
|
Thumbs.db
|
||||||
|
Thumbs.db:encryptable
|
||||||
|
ehthumbs.db
|
||||||
|
ehthumbs_vista.db
|
||||||
|
|
||||||
|
# Dump file
|
||||||
|
*.stackdump
|
||||||
|
|
||||||
|
# Folder config file
|
||||||
|
[Dd]esktop.ini
|
||||||
|
|
||||||
|
# Recycle Bin used on file shares
|
||||||
|
$RECYCLE.BIN/
|
||||||
|
|
||||||
|
# Windows Installer files
|
||||||
|
*.cab
|
||||||
|
*.msi
|
||||||
|
*.msix
|
||||||
|
*.msm
|
||||||
|
*.msp
|
||||||
|
|
||||||
|
# Windows shortcuts
|
||||||
|
*.lnk
|
||||||
|
|
||||||
|
# End of https://www.toptal.com/developers/gitignore/api/angular,node,webstorm+all,visualstudiocode,windows,linux
|
||||||
4
.vscode/extensions.json
vendored
Normal file
4
.vscode/extensions.json
vendored
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=827846
|
||||||
|
"recommendations": ["angular.ng-template"]
|
||||||
|
}
|
||||||
13
.vscode/launch.json
vendored
Normal file
13
.vscode/launch.json
vendored
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
{
|
||||||
|
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||||
|
"version": "0.2.0",
|
||||||
|
"configurations": [
|
||||||
|
{
|
||||||
|
"name": "ng serve",
|
||||||
|
"type": "chrome",
|
||||||
|
"request": "launch",
|
||||||
|
"preLaunchTask": "npm: start",
|
||||||
|
"url": "http://localhost:4200/"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
24
.vscode/tasks.json
vendored
Normal file
24
.vscode/tasks.json
vendored
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
// For more information, visit: https://go.microsoft.com/fwlink/?LinkId=733558
|
||||||
|
"version": "2.0.0",
|
||||||
|
"tasks": [
|
||||||
|
{
|
||||||
|
"type": "npm",
|
||||||
|
"script": "start",
|
||||||
|
"isBackground": true,
|
||||||
|
"problemMatcher": {
|
||||||
|
"owner": "typescript",
|
||||||
|
"pattern": "$tsc",
|
||||||
|
"background": {
|
||||||
|
"activeOnStart": true,
|
||||||
|
"beginsPattern": {
|
||||||
|
"regexp": "(.*?)"
|
||||||
|
},
|
||||||
|
"endsPattern": {
|
||||||
|
"regexp": "bundle generation complete"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
59
README.md
Normal file
59
README.md
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
# ApiLibraryFrontend
|
||||||
|
|
||||||
|
This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.9.
|
||||||
|
|
||||||
|
## Development server
|
||||||
|
|
||||||
|
To start a local development server, run:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ng serve
|
||||||
|
```
|
||||||
|
|
||||||
|
Once the server is running, open your browser and navigate to `http://localhost:4200/`. The application will automatically reload whenever you modify any of the source files.
|
||||||
|
|
||||||
|
## Code scaffolding
|
||||||
|
|
||||||
|
Angular CLI includes powerful code scaffolding tools. To generate a new component, run:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ng generate component component-name
|
||||||
|
```
|
||||||
|
|
||||||
|
For a complete list of available schematics (such as `components`, `directives`, or `pipes`), run:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ng generate --help
|
||||||
|
```
|
||||||
|
|
||||||
|
## Building
|
||||||
|
|
||||||
|
To build the project run:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ng build
|
||||||
|
```
|
||||||
|
|
||||||
|
This will compile your project and store the build artifacts in the `dist/` directory. By default, the production build optimizes your application for performance and speed.
|
||||||
|
|
||||||
|
## Running unit tests
|
||||||
|
|
||||||
|
To execute unit tests with the [Karma](https://karma-runner.github.io) test runner, use the following command:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ng test
|
||||||
|
```
|
||||||
|
|
||||||
|
## Running end-to-end tests
|
||||||
|
|
||||||
|
For end-to-end (e2e) testing, run:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ng e2e
|
||||||
|
```
|
||||||
|
|
||||||
|
Angular CLI does not come with an end-to-end testing framework by default. You can choose one that suits your needs.
|
||||||
|
|
||||||
|
## Additional Resources
|
||||||
|
|
||||||
|
For more information on using the Angular CLI, including detailed command references, visit the [Angular CLI Overview and Command Reference](https://angular.dev/tools/cli) page.
|
||||||
107
angular.json
Normal file
107
angular.json
Normal file
@@ -0,0 +1,107 @@
|
|||||||
|
{
|
||||||
|
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
|
||||||
|
"version": 1,
|
||||||
|
"newProjectRoot": "projects",
|
||||||
|
"projects": {
|
||||||
|
"api-library-frontend": {
|
||||||
|
"projectType": "application",
|
||||||
|
"schematics": {
|
||||||
|
"@schematics/angular:component": {
|
||||||
|
"skipTests": true
|
||||||
|
},
|
||||||
|
"@schematics/angular:class": {
|
||||||
|
"skipTests": true
|
||||||
|
},
|
||||||
|
"@schematics/angular:directive": {
|
||||||
|
"skipTests": true
|
||||||
|
},
|
||||||
|
"@schematics/angular:guard": {
|
||||||
|
"skipTests": true
|
||||||
|
},
|
||||||
|
"@schematics/angular:interceptor": {
|
||||||
|
"skipTests": true
|
||||||
|
},
|
||||||
|
"@schematics/angular:pipe": {
|
||||||
|
"skipTests": true
|
||||||
|
},
|
||||||
|
"@schematics/angular:resolver": {
|
||||||
|
"skipTests": true
|
||||||
|
},
|
||||||
|
"@schematics/angular:service": {
|
||||||
|
"skipTests": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "",
|
||||||
|
"sourceRoot": "src",
|
||||||
|
"prefix": "app",
|
||||||
|
"architect": {
|
||||||
|
"build": {
|
||||||
|
"builder": "@angular/build:application",
|
||||||
|
"options": {
|
||||||
|
"browser": "src/main.ts",
|
||||||
|
"polyfills": [
|
||||||
|
"zone.js"
|
||||||
|
],
|
||||||
|
"tsConfig": "tsconfig.app.json",
|
||||||
|
"assets": [
|
||||||
|
{
|
||||||
|
"glob": "**/*",
|
||||||
|
"input": "public"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"glob": "**/*",
|
||||||
|
"input": "./node_modules/@ant-design/icons-angular/src/inline-svg/",
|
||||||
|
"output": "/assets/"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"styles": [
|
||||||
|
"src/theme.less",
|
||||||
|
"src/styles.css"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"configurations": {
|
||||||
|
"production": {
|
||||||
|
"budgets": [
|
||||||
|
{
|
||||||
|
"type": "initial",
|
||||||
|
"maximumWarning": "2MB",
|
||||||
|
"maximumError": "5MB"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "anyComponentStyle",
|
||||||
|
"maximumWarning": "6kB",
|
||||||
|
"maximumError": "10kB"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"outputHashing": "all"
|
||||||
|
},
|
||||||
|
"development": {
|
||||||
|
"optimization": false,
|
||||||
|
"extractLicenses": false,
|
||||||
|
"sourceMap": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"defaultConfiguration": "production"
|
||||||
|
},
|
||||||
|
"serve": {
|
||||||
|
"builder": "@angular/build:dev-server",
|
||||||
|
"configurations": {
|
||||||
|
"production": {
|
||||||
|
"buildTarget": "api-library-frontend:build:production"
|
||||||
|
},
|
||||||
|
"development": {
|
||||||
|
"buildTarget": "api-library-frontend:build:development"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"defaultConfiguration": "development"
|
||||||
|
},
|
||||||
|
"extract-i18n": {
|
||||||
|
"builder": "@angular/build:extract-i18n"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"cli": {
|
||||||
|
"analytics": false
|
||||||
|
}
|
||||||
|
}
|
||||||
86
logo.svg
Normal file
86
logo.svg
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||||
|
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
|
viewBox="0 0 473.931 473.931" xml:space="preserve">
|
||||||
|
<circle style="fill:#357180;" cx="236.966" cy="236.966" r="236.966"/>
|
||||||
|
<path style="fill:#036A7B;" d="M139.942,330.659c0,17.65-14.301,31.947-31.947,31.947l0,0c-17.642,0-17.586-14.297-17.586-31.947
|
||||||
|
v-0.673c0-17.642-0.056-31.943,17.586-31.943l0,0c17.646,0,31.947,14.301,31.947,31.943L139.942,330.659L139.942,330.659z"/>
|
||||||
|
<rect x="114.457" y="306.637" style="fill:#CDCDCE;" width="251.11" height="46.308"/>
|
||||||
|
<g>
|
||||||
|
<rect x="114.457" y="306.226" style="fill:#D7D7D7;" width="251.11" height="6.26"/>
|
||||||
|
<rect x="114.457" y="319.958" style="fill:#D7D7D7;" width="251.11" height="6.256"/>
|
||||||
|
<rect x="114.457" y="333.129" style="fill:#D7D7D7;" width="251.11" height="6.26"/>
|
||||||
|
<rect x="114.457" y="346.412" style="fill:#D7D7D7;" width="251.11" height="6.26"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path style="fill:#028CA3;" d="M378.835,303.06c0,2.724-1.609,4.932-3.585,4.932H110.513c-1.983,0-3.592-2.211-3.592-4.932l0,0
|
||||||
|
c0-2.728,1.609-4.932,3.592-4.932H375.25C377.226,298.128,378.835,300.336,378.835,303.06L378.835,303.06z"/>
|
||||||
|
<path style="fill:#028CA3;" d="M378.835,357.626c0,2.728-1.609,4.932-3.585,4.932H110.513c-1.983,0-3.592-2.208-3.592-4.932l0,0
|
||||||
|
c0-2.724,1.609-4.932,3.592-4.932H375.25C377.226,352.691,378.835,354.902,378.835,357.626L378.835,357.626z"/>
|
||||||
|
<rect x="106.921" y="302.693" style="fill:#028CA3;" width="10.769" height="55.277"/>
|
||||||
|
</g>
|
||||||
|
<path style="fill:#1D8D45;" d="M323.067,268.486c0,16.303,13.216,29.508,29.511,29.508l0,0c16.295,0,16.247-13.201,16.247-29.508
|
||||||
|
v-0.625c0-16.292,0.052-29.508-16.247-29.508l0,0c-16.292,0-29.511,13.212-29.511,29.508V268.486z"/>
|
||||||
|
<rect x="117.764" y="246.301" style="fill:#CDCDCE;" width="228.846" height="42.772"/>
|
||||||
|
<g>
|
||||||
|
<rect x="117.764" y="245.912" style="fill:#D7D7D7;" width="228.846" height="5.781"/>
|
||||||
|
<rect x="117.764" y="258.593" style="fill:#D7D7D7;" width="228.846" height="5.781"/>
|
||||||
|
<rect x="117.764" y="270.791" style="fill:#D7D7D7;" width="228.846" height="5.781"/>
|
||||||
|
<rect x="117.764" y="283.064" style="fill:#D7D7D7;" width="228.846" height="5.781"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path style="fill:#21AC4B;" d="M105.495,242.99c0,2.518,1.482,4.557,3.315,4.557h241.445c1.826,0,3.315-2.039,3.315-4.557l0,0
|
||||||
|
c0-2.511-1.485-4.55-3.315-4.55H108.81C106.981,238.44,105.495,240.479,105.495,242.99L105.495,242.99z"/>
|
||||||
|
<path style="fill:#21AC4B;" d="M105.495,293.391c0,2.518,1.482,4.557,3.315,4.557h241.445c1.826,0,3.315-2.039,3.315-4.557l0,0
|
||||||
|
c0-2.514-1.485-4.557-3.315-4.557H108.81C106.981,288.838,105.495,290.881,105.495,293.391L105.495,293.391z"/>
|
||||||
|
<rect x="343.643" y="242.649" style="fill:#21AC4B;" width="9.942" height="51.06"/>
|
||||||
|
</g>
|
||||||
|
<path style="fill:#8C402B;" d="M310.48,213.561c0,13.732,11.117,24.845,24.845,24.845l0,0c13.721,0,13.68-11.113,13.68-24.845
|
||||||
|
v-0.528c0-13.721,0.041-24.853-13.68-24.853l0,0c-13.729,0-24.845,11.132-24.845,24.853V213.561z"/>
|
||||||
|
<rect x="133.701" y="194.871" style="fill:#CDCDCE;" width="196.592" height="36.018"/>
|
||||||
|
<g>
|
||||||
|
<rect x="133.701" y="194.534" style="fill:#D7D7D7;" width="196.592" height="4.864"/>
|
||||||
|
<rect x="133.701" y="205.224" style="fill:#D7D7D7;" width="196.592" height="4.868"/>
|
||||||
|
<rect x="133.701" y="215.488" style="fill:#D7D7D7;" width="196.592" height="4.864"/>
|
||||||
|
<rect x="133.701" y="225.815" style="fill:#D7D7D7;" width="196.592" height="4.864"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path style="fill:#BB5538;" d="M123.373,192.087c0,2.118,1.253,3.839,2.788,3.839h207.211c1.542,0,2.788-1.721,2.788-3.839l0,0
|
||||||
|
c0-2.114-1.246-3.828-2.788-3.828H126.161C124.623,188.259,123.373,189.973,123.373,192.087L123.373,192.087z"/>
|
||||||
|
<path style="fill:#BB5538;" d="M123.373,234.534c0,2.114,1.253,3.828,2.788,3.828h207.211c1.542,0,2.788-1.714,2.788-3.828l0,0
|
||||||
|
c0-2.118-1.246-3.839-2.788-3.839H126.161C124.623,230.695,123.373,232.416,123.373,234.534L123.373,234.534z"/>
|
||||||
|
<rect x="327.778" y="191.803" style="fill:#BB5538;" width="8.37" height="42.989"/>
|
||||||
|
</g>
|
||||||
|
<path style="fill:#036A7B;" d="M148.638,163.212c0,13.732-11.117,24.845-24.845,24.845l0,0c-13.721,0-13.676-11.113-13.676-24.845
|
||||||
|
v-0.528c0-13.721-0.045-24.849,13.676-24.849l0,0c13.729,0,24.845,11.128,24.845,24.849V163.212z"/>
|
||||||
|
<rect x="128.825" y="144.533" style="fill:#CDCDCE;" width="221.063" height="36.018"/>
|
||||||
|
<g>
|
||||||
|
<rect x="128.825" y="144.204" style="fill:#D7D7D7;" width="221.063" height="4.868"/>
|
||||||
|
<rect x="128.825" y="154.871" style="fill:#D7D7D7;" width="221.063" height="4.864"/>
|
||||||
|
<rect x="128.825" y="165.161" style="fill:#D7D7D7;" width="221.063" height="4.872"/>
|
||||||
|
<rect x="128.825" y="175.474" style="fill:#D7D7D7;" width="221.063" height="4.868"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path style="fill:#028CA3;" d="M360.212,141.742c0,2.122-1.253,3.839-2.788,3.839H125.749c-1.542,0-2.788-1.717-2.788-3.839l0,0
|
||||||
|
c0-2.114,1.246-3.832,2.788-3.832h231.675C358.958,137.91,360.212,139.628,360.212,141.742L360.212,141.742z"/>
|
||||||
|
<path style="fill:#028CA3;" d="M360.212,184.188c0,2.114-1.253,3.832-2.788,3.832H125.749c-1.542,0-2.788-1.717-2.788-3.832l0,0
|
||||||
|
c0-2.118,1.246-3.839,2.788-3.839h231.675C358.958,180.349,360.212,182.07,360.212,184.188L360.212,184.188z"/>
|
||||||
|
<rect x="122.962" y="141.461" style="fill:#028CA3;" width="8.37" height="42.989"/>
|
||||||
|
</g>
|
||||||
|
<path style="fill:#8C402B;" d="M172.798,118.644c0,10.589-8.572,19.162-19.162,19.162l0,0c-10.582,0-10.556-8.572-10.556-19.162
|
||||||
|
v-0.408c0-10.585-0.026-19.165,10.556-19.165l0,0c10.589,0,19.162,8.58,19.162,19.165V118.644z"/>
|
||||||
|
<rect x="157.528" y="104.234" style="fill:#CDCDCE;" width="154.759" height="27.779"/>
|
||||||
|
<g>
|
||||||
|
<rect x="157.528" y="103.976" style="fill:#D7D7D7;" width="154.759" height="3.742"/>
|
||||||
|
<rect x="157.528" y="112.215" style="fill:#D7D7D7;" width="154.759" height="3.742"/>
|
||||||
|
<rect x="157.528" y="120.148" style="fill:#D7D7D7;" width="154.759" height="3.742"/>
|
||||||
|
<rect x="157.528" y="128.08" style="fill:#D7D7D7;" width="154.759" height="3.742"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path style="fill:#BB5538;" d="M320.239,102.086c0,1.635-0.969,2.96-2.151,2.96H155.145c-1.19,0-2.152-1.325-2.152-2.96l0,0
|
||||||
|
c0-1.635,0.962-2.96,2.152-2.96h162.942C319.269,99.127,320.239,100.451,320.239,102.086L320.239,102.086z"/>
|
||||||
|
<path style="fill:#BB5538;" d="M320.239,134.823c0,1.631-0.969,2.952-2.151,2.952H155.145c-1.19,0-2.152-1.325-2.152-2.952l0,0
|
||||||
|
c0-1.639,0.962-2.963,2.152-2.963h162.942C319.269,131.86,320.239,133.184,320.239,134.823L320.239,134.823z"/>
|
||||||
|
<rect x="152.993" y="101.851" style="fill:#BB5538;" width="6.458" height="33.159"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 6.3 KiB |
8926
package-lock.json
generated
Normal file
8926
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
45
package.json
Normal file
45
package.json
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
{
|
||||||
|
"name": "api-library-frontend",
|
||||||
|
"version": "0.0.0",
|
||||||
|
"scripts": {
|
||||||
|
"ng": "ng",
|
||||||
|
"start": "ng serve",
|
||||||
|
"build": "ng build",
|
||||||
|
"watch": "ng build --watch --configuration development"
|
||||||
|
},
|
||||||
|
"prettier": {
|
||||||
|
"printWidth": 100,
|
||||||
|
"singleQuote": true,
|
||||||
|
"overrides": [
|
||||||
|
{
|
||||||
|
"files": "*.html",
|
||||||
|
"options": {
|
||||||
|
"parser": "angular"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"private": true,
|
||||||
|
"dependencies": {
|
||||||
|
"@angular/common": "^20.3.0",
|
||||||
|
"@angular/compiler": "^20.3.0",
|
||||||
|
"@angular/core": "^20.3.0",
|
||||||
|
"@angular/forms": "^20.3.0",
|
||||||
|
"@angular/platform-browser": "^20.3.0",
|
||||||
|
"@angular/router": "^20.3.0",
|
||||||
|
"@tailwindcss/postcss": "^4.1.17",
|
||||||
|
"ng-zorro-antd": "^20.4.0",
|
||||||
|
"postcss": "^8.5.6",
|
||||||
|
"rxjs": "~7.8.0",
|
||||||
|
"tailwindcss": "^4.1.17",
|
||||||
|
"tslib": "^2.3.0",
|
||||||
|
"zone.js": "~0.15.0"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@angular/build": "^20.3.9",
|
||||||
|
"@angular/cli": "^20.3.9",
|
||||||
|
"@angular/compiler-cli": "^20.3.0",
|
||||||
|
"less": "^4.2.0",
|
||||||
|
"typescript": "~5.9.2"
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
public/favicon.ico
Normal file
BIN
public/favicon.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
86
public/logo.svg
Normal file
86
public/logo.svg
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||||
|
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
|
viewBox="0 0 473.931 473.931" xml:space="preserve">
|
||||||
|
<circle style="fill:#357180;" cx="236.966" cy="236.966" r="236.966"/>
|
||||||
|
<path style="fill:#036A7B;" d="M139.942,330.659c0,17.65-14.301,31.947-31.947,31.947l0,0c-17.642,0-17.586-14.297-17.586-31.947
|
||||||
|
v-0.673c0-17.642-0.056-31.943,17.586-31.943l0,0c17.646,0,31.947,14.301,31.947,31.943L139.942,330.659L139.942,330.659z"/>
|
||||||
|
<rect x="114.457" y="306.637" style="fill:#CDCDCE;" width="251.11" height="46.308"/>
|
||||||
|
<g>
|
||||||
|
<rect x="114.457" y="306.226" style="fill:#D7D7D7;" width="251.11" height="6.26"/>
|
||||||
|
<rect x="114.457" y="319.958" style="fill:#D7D7D7;" width="251.11" height="6.256"/>
|
||||||
|
<rect x="114.457" y="333.129" style="fill:#D7D7D7;" width="251.11" height="6.26"/>
|
||||||
|
<rect x="114.457" y="346.412" style="fill:#D7D7D7;" width="251.11" height="6.26"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path style="fill:#028CA3;" d="M378.835,303.06c0,2.724-1.609,4.932-3.585,4.932H110.513c-1.983,0-3.592-2.211-3.592-4.932l0,0
|
||||||
|
c0-2.728,1.609-4.932,3.592-4.932H375.25C377.226,298.128,378.835,300.336,378.835,303.06L378.835,303.06z"/>
|
||||||
|
<path style="fill:#028CA3;" d="M378.835,357.626c0,2.728-1.609,4.932-3.585,4.932H110.513c-1.983,0-3.592-2.208-3.592-4.932l0,0
|
||||||
|
c0-2.724,1.609-4.932,3.592-4.932H375.25C377.226,352.691,378.835,354.902,378.835,357.626L378.835,357.626z"/>
|
||||||
|
<rect x="106.921" y="302.693" style="fill:#028CA3;" width="10.769" height="55.277"/>
|
||||||
|
</g>
|
||||||
|
<path style="fill:#1D8D45;" d="M323.067,268.486c0,16.303,13.216,29.508,29.511,29.508l0,0c16.295,0,16.247-13.201,16.247-29.508
|
||||||
|
v-0.625c0-16.292,0.052-29.508-16.247-29.508l0,0c-16.292,0-29.511,13.212-29.511,29.508V268.486z"/>
|
||||||
|
<rect x="117.764" y="246.301" style="fill:#CDCDCE;" width="228.846" height="42.772"/>
|
||||||
|
<g>
|
||||||
|
<rect x="117.764" y="245.912" style="fill:#D7D7D7;" width="228.846" height="5.781"/>
|
||||||
|
<rect x="117.764" y="258.593" style="fill:#D7D7D7;" width="228.846" height="5.781"/>
|
||||||
|
<rect x="117.764" y="270.791" style="fill:#D7D7D7;" width="228.846" height="5.781"/>
|
||||||
|
<rect x="117.764" y="283.064" style="fill:#D7D7D7;" width="228.846" height="5.781"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path style="fill:#21AC4B;" d="M105.495,242.99c0,2.518,1.482,4.557,3.315,4.557h241.445c1.826,0,3.315-2.039,3.315-4.557l0,0
|
||||||
|
c0-2.511-1.485-4.55-3.315-4.55H108.81C106.981,238.44,105.495,240.479,105.495,242.99L105.495,242.99z"/>
|
||||||
|
<path style="fill:#21AC4B;" d="M105.495,293.391c0,2.518,1.482,4.557,3.315,4.557h241.445c1.826,0,3.315-2.039,3.315-4.557l0,0
|
||||||
|
c0-2.514-1.485-4.557-3.315-4.557H108.81C106.981,288.838,105.495,290.881,105.495,293.391L105.495,293.391z"/>
|
||||||
|
<rect x="343.643" y="242.649" style="fill:#21AC4B;" width="9.942" height="51.06"/>
|
||||||
|
</g>
|
||||||
|
<path style="fill:#8C402B;" d="M310.48,213.561c0,13.732,11.117,24.845,24.845,24.845l0,0c13.721,0,13.68-11.113,13.68-24.845
|
||||||
|
v-0.528c0-13.721,0.041-24.853-13.68-24.853l0,0c-13.729,0-24.845,11.132-24.845,24.853V213.561z"/>
|
||||||
|
<rect x="133.701" y="194.871" style="fill:#CDCDCE;" width="196.592" height="36.018"/>
|
||||||
|
<g>
|
||||||
|
<rect x="133.701" y="194.534" style="fill:#D7D7D7;" width="196.592" height="4.864"/>
|
||||||
|
<rect x="133.701" y="205.224" style="fill:#D7D7D7;" width="196.592" height="4.868"/>
|
||||||
|
<rect x="133.701" y="215.488" style="fill:#D7D7D7;" width="196.592" height="4.864"/>
|
||||||
|
<rect x="133.701" y="225.815" style="fill:#D7D7D7;" width="196.592" height="4.864"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path style="fill:#BB5538;" d="M123.373,192.087c0,2.118,1.253,3.839,2.788,3.839h207.211c1.542,0,2.788-1.721,2.788-3.839l0,0
|
||||||
|
c0-2.114-1.246-3.828-2.788-3.828H126.161C124.623,188.259,123.373,189.973,123.373,192.087L123.373,192.087z"/>
|
||||||
|
<path style="fill:#BB5538;" d="M123.373,234.534c0,2.114,1.253,3.828,2.788,3.828h207.211c1.542,0,2.788-1.714,2.788-3.828l0,0
|
||||||
|
c0-2.118-1.246-3.839-2.788-3.839H126.161C124.623,230.695,123.373,232.416,123.373,234.534L123.373,234.534z"/>
|
||||||
|
<rect x="327.778" y="191.803" style="fill:#BB5538;" width="8.37" height="42.989"/>
|
||||||
|
</g>
|
||||||
|
<path style="fill:#036A7B;" d="M148.638,163.212c0,13.732-11.117,24.845-24.845,24.845l0,0c-13.721,0-13.676-11.113-13.676-24.845
|
||||||
|
v-0.528c0-13.721-0.045-24.849,13.676-24.849l0,0c13.729,0,24.845,11.128,24.845,24.849V163.212z"/>
|
||||||
|
<rect x="128.825" y="144.533" style="fill:#CDCDCE;" width="221.063" height="36.018"/>
|
||||||
|
<g>
|
||||||
|
<rect x="128.825" y="144.204" style="fill:#D7D7D7;" width="221.063" height="4.868"/>
|
||||||
|
<rect x="128.825" y="154.871" style="fill:#D7D7D7;" width="221.063" height="4.864"/>
|
||||||
|
<rect x="128.825" y="165.161" style="fill:#D7D7D7;" width="221.063" height="4.872"/>
|
||||||
|
<rect x="128.825" y="175.474" style="fill:#D7D7D7;" width="221.063" height="4.868"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path style="fill:#028CA3;" d="M360.212,141.742c0,2.122-1.253,3.839-2.788,3.839H125.749c-1.542,0-2.788-1.717-2.788-3.839l0,0
|
||||||
|
c0-2.114,1.246-3.832,2.788-3.832h231.675C358.958,137.91,360.212,139.628,360.212,141.742L360.212,141.742z"/>
|
||||||
|
<path style="fill:#028CA3;" d="M360.212,184.188c0,2.114-1.253,3.832-2.788,3.832H125.749c-1.542,0-2.788-1.717-2.788-3.832l0,0
|
||||||
|
c0-2.118,1.246-3.839,2.788-3.839h231.675C358.958,180.349,360.212,182.07,360.212,184.188L360.212,184.188z"/>
|
||||||
|
<rect x="122.962" y="141.461" style="fill:#028CA3;" width="8.37" height="42.989"/>
|
||||||
|
</g>
|
||||||
|
<path style="fill:#8C402B;" d="M172.798,118.644c0,10.589-8.572,19.162-19.162,19.162l0,0c-10.582,0-10.556-8.572-10.556-19.162
|
||||||
|
v-0.408c0-10.585-0.026-19.165,10.556-19.165l0,0c10.589,0,19.162,8.58,19.162,19.165V118.644z"/>
|
||||||
|
<rect x="157.528" y="104.234" style="fill:#CDCDCE;" width="154.759" height="27.779"/>
|
||||||
|
<g>
|
||||||
|
<rect x="157.528" y="103.976" style="fill:#D7D7D7;" width="154.759" height="3.742"/>
|
||||||
|
<rect x="157.528" y="112.215" style="fill:#D7D7D7;" width="154.759" height="3.742"/>
|
||||||
|
<rect x="157.528" y="120.148" style="fill:#D7D7D7;" width="154.759" height="3.742"/>
|
||||||
|
<rect x="157.528" y="128.08" style="fill:#D7D7D7;" width="154.759" height="3.742"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path style="fill:#BB5538;" d="M320.239,102.086c0,1.635-0.969,2.96-2.151,2.96H155.145c-1.19,0-2.152-1.325-2.152-2.96l0,0
|
||||||
|
c0-1.635,0.962-2.96,2.152-2.96h162.942C319.269,99.127,320.239,100.451,320.239,102.086L320.239,102.086z"/>
|
||||||
|
<path style="fill:#BB5538;" d="M320.239,134.823c0,1.631-0.969,2.952-2.151,2.952H155.145c-1.19,0-2.152-1.325-2.152-2.952l0,0
|
||||||
|
c0-1.639,0.962-2.963,2.152-2.963h162.942C319.269,131.86,320.239,133.184,320.239,134.823L320.239,134.823z"/>
|
||||||
|
<rect x="152.993" y="101.851" style="fill:#BB5538;" width="6.458" height="33.159"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 6.3 KiB |
19
src/app/app.config.ts
Normal file
19
src/app/app.config.ts
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
import { ApplicationConfig, provideBrowserGlobalErrorListeners, provideZoneChangeDetection } from '@angular/core';
|
||||||
|
import { provideRouter } from '@angular/router';
|
||||||
|
|
||||||
|
import { routes } from './app.routes';
|
||||||
|
import { fr_FR, provideNzI18n } from 'ng-zorro-antd/i18n';
|
||||||
|
import { registerLocaleData } from '@angular/common';
|
||||||
|
import fr from '@angular/common/locales/fr';
|
||||||
|
import { provideAnimationsAsync } from '@angular/platform-browser/animations/async';
|
||||||
|
import { provideHttpClient } from '@angular/common/http';
|
||||||
|
|
||||||
|
registerLocaleData(fr);
|
||||||
|
|
||||||
|
export const appConfig: ApplicationConfig = {
|
||||||
|
providers: [
|
||||||
|
provideBrowserGlobalErrorListeners(),
|
||||||
|
provideZoneChangeDetection({ eventCoalescing: true }),
|
||||||
|
provideRouter(routes), provideNzI18n(fr_FR), provideAnimationsAsync(), provideHttpClient()
|
||||||
|
]
|
||||||
|
};
|
||||||
46
src/app/app.css
Normal file
46
src/app/app.css
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
:host {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
.app-layout {
|
||||||
|
height: 100vh;
|
||||||
|
}
|
||||||
|
|
||||||
|
.top-nav {
|
||||||
|
line-height: 64px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.logo {
|
||||||
|
float: left;
|
||||||
|
height: 64px;
|
||||||
|
padding-right: 24px;
|
||||||
|
line-height: 64px;
|
||||||
|
background: #001529;
|
||||||
|
}
|
||||||
|
|
||||||
|
.logo img {
|
||||||
|
display: inline-block;
|
||||||
|
height: 32px;
|
||||||
|
width: 32px;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
.logo h1 {
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0 0 0 15px;
|
||||||
|
color: #fff;
|
||||||
|
font-weight: 600;
|
||||||
|
font-size: 20px;
|
||||||
|
font-family: Avenir,Helvetica Neue,Arial,Helvetica,sans-serif;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
nz-content {
|
||||||
|
padding: 24px 50px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.inner-content {
|
||||||
|
padding: 24px;
|
||||||
|
background: #fff;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
21
src/app/app.html
Normal file
21
src/app/app.html
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
<nz-layout class="app-layout">
|
||||||
|
<nz-header>
|
||||||
|
<div class="logo">
|
||||||
|
<a>
|
||||||
|
<img src="../logo.svg" alt="logo">
|
||||||
|
<h1>Pyrofêtes P4</h1>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<ul nz-menu class="top-nav" nzTheme="dark" nzMode="horizontal">
|
||||||
|
<li nz-menu-item routerLinkActive="ant-menu-item-selected" routerLink="/customers">Clients</li>
|
||||||
|
<li nz-menu-item routerLinkActive="ant-menu-item-selected" routerLink="/providers">Prestataires</li>
|
||||||
|
<li nz-menu-item routerLinkActive="ant-menu-item-selected" routerLink="/staff">Artificiers</li>
|
||||||
|
<li nz-menu-item routerLinkActive="ant-menu-item-selected" routerLink="/opportunities">Opportunités</li>
|
||||||
|
</ul>
|
||||||
|
</nz-header>
|
||||||
|
<nz-content>
|
||||||
|
<div class="inner-content">
|
||||||
|
<router-outlet></router-outlet>
|
||||||
|
</div>
|
||||||
|
</nz-content>
|
||||||
|
</nz-layout>
|
||||||
29
src/app/app.routes.ts
Normal file
29
src/app/app.routes.ts
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
import { Routes } from '@angular/router';
|
||||||
|
|
||||||
|
export const routes: Routes = [
|
||||||
|
{
|
||||||
|
path: '',
|
||||||
|
pathMatch: 'full',
|
||||||
|
redirectTo: '/customers'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path:'customers',
|
||||||
|
loadComponent: () => import('./pages/customers/customers').then(x => x.Customers)
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
path:'staff',
|
||||||
|
loadComponent: () => import('./pages/staff/staff').then(x => x.Staff)
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
path:'opportunities',
|
||||||
|
loadComponent: () => import('./pages/opportunities/opportunities').then(x => x.Opportunities)
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
path:'providers',
|
||||||
|
loadComponent: () => import('./pages/providers/providers').then(x => x.Providers)
|
||||||
|
}
|
||||||
|
|
||||||
|
];
|
||||||
12
src/app/app.ts
Normal file
12
src/app/app.ts
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import {RouterLink, RouterLinkActive, RouterOutlet} from '@angular/router';
|
||||||
|
import { NzLayoutModule } from 'ng-zorro-antd/layout';
|
||||||
|
import { NzMenuModule } from 'ng-zorro-antd/menu';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-root',
|
||||||
|
imports: [RouterOutlet, NzLayoutModule, NzMenuModule, RouterLinkActive, RouterLink],
|
||||||
|
templateUrl: './app.html',
|
||||||
|
styleUrl: './app.css'
|
||||||
|
})
|
||||||
|
export class App {}
|
||||||
0
src/app/pages/customers/customers.css
Normal file
0
src/app/pages/customers/customers.css
Normal file
1
src/app/pages/customers/customers.html
Normal file
1
src/app/pages/customers/customers.html
Normal file
@@ -0,0 +1 @@
|
|||||||
|
<p>customers works!</p>
|
||||||
11
src/app/pages/customers/customers.ts
Normal file
11
src/app/pages/customers/customers.ts
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-customers',
|
||||||
|
imports: [],
|
||||||
|
templateUrl: './customers.html',
|
||||||
|
styleUrl: './customers.css',
|
||||||
|
})
|
||||||
|
export class Customers {
|
||||||
|
|
||||||
|
}
|
||||||
0
src/app/pages/opportunities/opportunities.css
Normal file
0
src/app/pages/opportunities/opportunities.css
Normal file
1
src/app/pages/opportunities/opportunities.html
Normal file
1
src/app/pages/opportunities/opportunities.html
Normal file
@@ -0,0 +1 @@
|
|||||||
|
<p>opportunities works!</p>
|
||||||
11
src/app/pages/opportunities/opportunities.ts
Normal file
11
src/app/pages/opportunities/opportunities.ts
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-opportunities',
|
||||||
|
imports: [],
|
||||||
|
templateUrl: './opportunities.html',
|
||||||
|
styleUrl: './opportunities.css',
|
||||||
|
})
|
||||||
|
export class Opportunities {
|
||||||
|
|
||||||
|
}
|
||||||
0
src/app/pages/providers/providers.css
Normal file
0
src/app/pages/providers/providers.css
Normal file
1
src/app/pages/providers/providers.html
Normal file
1
src/app/pages/providers/providers.html
Normal file
@@ -0,0 +1 @@
|
|||||||
|
<p>providers works!</p>
|
||||||
11
src/app/pages/providers/providers.ts
Normal file
11
src/app/pages/providers/providers.ts
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-providers',
|
||||||
|
imports: [],
|
||||||
|
templateUrl: './providers.html',
|
||||||
|
styleUrl: './providers.css',
|
||||||
|
})
|
||||||
|
export class Providers {
|
||||||
|
|
||||||
|
}
|
||||||
0
src/app/pages/staff/staff.css
Normal file
0
src/app/pages/staff/staff.css
Normal file
1
src/app/pages/staff/staff.html
Normal file
1
src/app/pages/staff/staff.html
Normal file
@@ -0,0 +1 @@
|
|||||||
|
<p>staff works!</p>
|
||||||
11
src/app/pages/staff/staff.ts
Normal file
11
src/app/pages/staff/staff.ts
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-staff',
|
||||||
|
imports: [],
|
||||||
|
templateUrl: './staff.html',
|
||||||
|
styleUrl: './staff.css',
|
||||||
|
})
|
||||||
|
export class Staff {
|
||||||
|
|
||||||
|
}
|
||||||
0
src/app/pages/welcome/welcome.css
Normal file
0
src/app/pages/welcome/welcome.css
Normal file
1
src/app/pages/welcome/welcome.html
Normal file
1
src/app/pages/welcome/welcome.html
Normal file
@@ -0,0 +1 @@
|
|||||||
|
<router-outlet/>
|
||||||
6
src/app/pages/welcome/welcome.routes.ts
Normal file
6
src/app/pages/welcome/welcome.routes.ts
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
import { Routes } from '@angular/router';
|
||||||
|
import { Welcome } from './welcome';
|
||||||
|
|
||||||
|
export const WELCOME_ROUTES: Routes = [
|
||||||
|
{ path: '', component: Welcome },
|
||||||
|
];
|
||||||
14
src/app/pages/welcome/welcome.ts
Normal file
14
src/app/pages/welcome/welcome.ts
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import {RouterOutlet} from "@angular/router";
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-welcome',
|
||||||
|
imports: [
|
||||||
|
RouterOutlet
|
||||||
|
],
|
||||||
|
templateUrl: './welcome.html',
|
||||||
|
styleUrl: './welcome.css'
|
||||||
|
})
|
||||||
|
export class Welcome {
|
||||||
|
|
||||||
|
}
|
||||||
13
src/index.html
Normal file
13
src/index.html
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>Pyrofètes Frontend</title>
|
||||||
|
<base href="/">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<link rel="icon" type="image/x-icon" href="favicon.ico">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<app-root></app-root>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
6
src/main.ts
Normal file
6
src/main.ts
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
import { bootstrapApplication } from '@angular/platform-browser';
|
||||||
|
import { appConfig } from './app/app.config';
|
||||||
|
import { App } from './app/app';
|
||||||
|
|
||||||
|
bootstrapApplication(App, appConfig)
|
||||||
|
.catch((err) => console.error(err));
|
||||||
4
src/styles.css
Normal file
4
src/styles.css
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
/* You can add global styles to this file, and also import other style files */
|
||||||
|
@layer theme, base, components, utilities;
|
||||||
|
@import "tailwindcss/theme.css" layer(theme);
|
||||||
|
@import "tailwindcss/utilities.css" layer(utilities) important;
|
||||||
9
src/theme.less
Normal file
9
src/theme.less
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
|
||||||
|
// Custom Theming for NG-ZORRO
|
||||||
|
// For more information: https://ng.ant.design/docs/customize-theme/en
|
||||||
|
@import "../node_modules/ng-zorro-antd/ng-zorro-antd.less";
|
||||||
|
|
||||||
|
// Override less variables to here
|
||||||
|
// View all variables: https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/components/style/themes/default.less
|
||||||
|
|
||||||
|
// @primary-color: #1890ff;
|
||||||
15
tsconfig.app.json
Normal file
15
tsconfig.app.json
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */
|
||||||
|
/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */
|
||||||
|
{
|
||||||
|
"extends": "./tsconfig.json",
|
||||||
|
"compilerOptions": {
|
||||||
|
"outDir": "./out-tsc/app",
|
||||||
|
"types": []
|
||||||
|
},
|
||||||
|
"include": [
|
||||||
|
"src/**/*.ts"
|
||||||
|
],
|
||||||
|
"exclude": [
|
||||||
|
"src/**/*.spec.ts"
|
||||||
|
]
|
||||||
|
}
|
||||||
22
tsconfig.json
Normal file
22
tsconfig.json
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */
|
||||||
|
/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */
|
||||||
|
{
|
||||||
|
"compileOnSave": false,
|
||||||
|
"compilerOptions": {
|
||||||
|
"skipLibCheck": true,
|
||||||
|
"isolatedModules": true,
|
||||||
|
"experimentalDecorators": true,
|
||||||
|
"importHelpers": true,
|
||||||
|
"target": "ES2022",
|
||||||
|
"module": "preserve"
|
||||||
|
},
|
||||||
|
"angularCompilerOptions": {
|
||||||
|
"enableI18nLegacyMessageIdFormat": false
|
||||||
|
},
|
||||||
|
"files": [],
|
||||||
|
"references": [
|
||||||
|
{
|
||||||
|
"path": "./tsconfig.app.json"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user