Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
beasy-front-angular
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zadi francice
beasy-front-angular
Commits
1481f24e
Commit
1481f24e
authored
Jun 13, 2024
by
zadi francice
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
sauvegarde
parent
35a549ff
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
1108 additions
and
68 deletions
+1108
-68
package-lock.json
package-lock.json
+502
-55
package.json
package.json
+5
-5
server.ts
server.ts
+70
-0
app.component.ts
src/app/app.component.ts
+22
-8
app.config.server.ts
src/app/app.config.server.ts
+11
-0
paiement.component.html
...reversements/reversement/paiement/paiement.component.html
+195
-0
paiement.component.scss
...reversements/reversement/paiement/paiement.component.scss
+21
-0
paiement.component.spec.ts
...ersements/reversement/paiement/paiement.component.spec.ts
+23
-0
paiement.component.ts
...p/reversements/reversement/paiement/paiement.component.ts
+238
-0
main.server.ts
src/main.server.ts
+7
-0
tsconfig.server.json
tsconfig.server.json
+14
-0
No files found.
package-lock.json
View file @
1481f24e
...
@@ -17,9 +17,9 @@
...
@@ -17,9 +17,9 @@
"@angular/material"
:
"^17.1.2"
,
"@angular/material"
:
"^17.1.2"
,
"@angular/platform-browser"
:
"^17.1.3"
,
"@angular/platform-browser"
:
"^17.1.3"
,
"@angular/platform-browser-dynamic"
:
"^17.1.3"
,
"@angular/platform-browser-dynamic"
:
"^17.1.3"
,
"@angular/platform-server"
:
"^17.
1.3
"
,
"@angular/platform-server"
:
"^17.
3.11
"
,
"@angular/router"
:
"^17.1.3"
,
"@angular/router"
:
"^17.1.3"
,
"@angular/ssr"
:
"^17.
1.3
"
,
"@angular/ssr"
:
"^17.
3.8
"
,
"@fortawesome/angular-fontawesome"
:
"^0.14.1"
,
"@fortawesome/angular-fontawesome"
:
"^0.14.1"
,
"@fortawesome/fontawesome-free"
:
"^6.5.2"
,
"@fortawesome/fontawesome-free"
:
"^6.5.2"
,
"@fortawesome/fontawesome-svg-core"
:
"^6.4.2"
,
"@fortawesome/fontawesome-svg-core"
:
"^6.4.2"
,
...
@@ -34,7 +34,7 @@
...
@@ -34,7 +34,7 @@
"apexcharts"
:
"^3.45.2"
,
"apexcharts"
:
"^3.45.2"
,
"bootstrap"
:
"^5.3.2"
,
"bootstrap"
:
"^5.3.2"
,
"chart.js"
:
"^4.4.3"
,
"chart.js"
:
"^4.4.3"
,
"express"
:
"^4.1
8
.2"
,
"express"
:
"^4.1
9
.2"
,
"internal-ip"
:
"^8.0.0"
,
"internal-ip"
:
"^8.0.0"
,
"jwt-decode"
:
"^4.0.0"
,
"jwt-decode"
:
"^4.0.0"
,
"lodash"
:
"^4.17.21"
,
"lodash"
:
"^4.17.21"
,
...
@@ -66,9 +66,11 @@
...
@@ -66,9 +66,11 @@
"@angular/cli"
:
"~17.1.3"
,
"@angular/cli"
:
"~17.1.3"
,
"@angular/compiler-cli"
:
"^17.1.3"
,
"@angular/compiler-cli"
:
"^17.1.3"
,
"@biomejs/biome"
:
"^1.6.4"
,
"@biomejs/biome"
:
"^1.6.4"
,
"@types/express"
:
"^4.17.
17
"
,
"@types/express"
:
"^4.17.
21
"
,
"@types/jasmine"
:
"~4.3.5"
,
"@types/jasmine"
:
"~4.3.5"
,
"@types/node"
:
"^18.18.0"
,
"@types/jest"
:
"^29.5.12"
,
"@types/mocha"
:
"^10.0.6"
,
"@types/node"
:
"^18.19.34"
,
"@typescript-eslint/eslint-plugin"
:
"6.15.0"
,
"@typescript-eslint/eslint-plugin"
:
"6.15.0"
,
"@typescript-eslint/parser"
:
"6.15.0"
,
"@typescript-eslint/parser"
:
"6.15.0"
,
"browser-sync"
:
"^3.0.0"
,
"browser-sync"
:
"^3.0.0"
,
...
@@ -3492,6 +3494,18 @@
...
@@ -3492,6 +3494,18 @@
"node"
:
">=8"
"node"
:
">=8"
}
}
},
},
"node_modules/@jest/expect-utils"
:
{
"version"
:
"29.7.0"
,
"resolved"
:
"https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz"
,
"integrity"
:
"sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA=="
,
"dev"
:
true
,
"dependencies"
:
{
"jest-get-type"
:
"^29.6.3"
},
"engines"
:
{
"node"
:
"^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
"node_modules/@jest/schemas"
:
{
"node_modules/@jest/schemas"
:
{
"version"
:
"29.6.3"
,
"version"
:
"29.6.3"
,
"resolved"
:
"https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz"
,
...
@@ -3504,6 +3518,93 @@
...
@@ -3504,6 +3518,93 @@
"node"
:
"^14.15.0 || ^16.10.0 || >=18.0.0"
"node"
:
"^14.15.0 || ^16.10.0 || >=18.0.0"
}
}
},
},
"node_modules/@jest/types"
:
{
"version"
:
"29.6.3"
,
"resolved"
:
"https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz"
,
"integrity"
:
"sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw=="
,
"dev"
:
true
,
"dependencies"
:
{
"@jest/schemas"
:
"^29.6.3"
,
"@types/istanbul-lib-coverage"
:
"^2.0.0"
,
"@types/istanbul-reports"
:
"^3.0.0"
,
"@types/node"
:
"*"
,
"@types/yargs"
:
"^17.0.8"
,
"chalk"
:
"^4.0.0"
},
"engines"
:
{
"node"
:
"^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
"node_modules/@jest/types/node_modules/ansi-styles"
:
{
"version"
:
"4.3.0"
,
"resolved"
:
"https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
,
"integrity"
:
"sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="
,
"dev"
:
true
,
"dependencies"
:
{
"color-convert"
:
"^2.0.1"
},
"engines"
:
{
"node"
:
">=8"
},
"funding"
:
{
"url"
:
"https://github.com/chalk/ansi-styles?sponsor=1"
}
},
"node_modules/@jest/types/node_modules/chalk"
:
{
"version"
:
"4.1.2"
,
"resolved"
:
"https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
,
"integrity"
:
"sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="
,
"dev"
:
true
,
"dependencies"
:
{
"ansi-styles"
:
"^4.1.0"
,
"supports-color"
:
"^7.1.0"
},
"engines"
:
{
"node"
:
">=10"
},
"funding"
:
{
"url"
:
"https://github.com/chalk/chalk?sponsor=1"
}
},
"node_modules/@jest/types/node_modules/color-convert"
:
{
"version"
:
"2.0.1"
,
"resolved"
:
"https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz"
,
"integrity"
:
"sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="
,
"dev"
:
true
,
"dependencies"
:
{
"color-name"
:
"~1.1.4"
},
"engines"
:
{
"node"
:
">=7.0.0"
}
},
"node_modules/@jest/types/node_modules/color-name"
:
{
"version"
:
"1.1.4"
,
"resolved"
:
"https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
,
"integrity"
:
"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
,
"dev"
:
true
},
"node_modules/@jest/types/node_modules/has-flag"
:
{
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
,
"integrity"
:
"sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
,
"dev"
:
true
,
"engines"
:
{
"node"
:
">=8"
}
},
"node_modules/@jest/types/node_modules/supports-color"
:
{
"version"
:
"7.2.0"
,
"resolved"
:
"https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz"
,
"integrity"
:
"sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw=="
,
"dev"
:
true
,
"dependencies"
:
{
"has-flag"
:
"^4.0.0"
},
"engines"
:
{
"node"
:
">=8"
}
},
"node_modules/@jridgewell/gen-mapping"
:
{
"node_modules/@jridgewell/gen-mapping"
:
{
"version"
:
"0.3.3"
,
"version"
:
"0.3.3"
,
"resolved"
:
"https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz"
,
...
@@ -5378,12 +5479,46 @@
...
@@ -5378,12 +5479,46 @@
"@types/node"
:
"*"
"@types/node"
:
"*"
}
}
},
},
"node_modules/@types/istanbul-lib-coverage"
:
{
"version"
:
"2.0.6"
,
"resolved"
:
"https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz"
,
"integrity"
:
"sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w=="
,
"dev"
:
true
},
"node_modules/@types/istanbul-lib-report"
:
{
"version"
:
"3.0.3"
,
"resolved"
:
"https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz"
,
"integrity"
:
"sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA=="
,
"dev"
:
true
,
"dependencies"
:
{
"@types/istanbul-lib-coverage"
:
"*"
}
},
"node_modules/@types/istanbul-reports"
:
{
"version"
:
"3.0.4"
,
"resolved"
:
"https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz"
,
"integrity"
:
"sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ=="
,
"dev"
:
true
,
"dependencies"
:
{
"@types/istanbul-lib-report"
:
"*"
}
},
"node_modules/@types/jasmine"
:
{
"node_modules/@types/jasmine"
:
{
"version"
:
"4.3.6"
,
"version"
:
"4.3.6"
,
"resolved"
:
"https://registry.npmjs.org/@types/jasmine/-/jasmine-4.3.6.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@types/jasmine/-/jasmine-4.3.6.tgz"
,
"integrity"
:
"sha512-3N0FpQTeiWjm+Oo1WUYWguUS7E6JLceiGTriFrG8k5PU7zRLJCzLcWURU3wjMbZGS//a2/LgjsnO3QxIlwxt9g=="
,
"integrity"
:
"sha512-3N0FpQTeiWjm+Oo1WUYWguUS7E6JLceiGTriFrG8k5PU7zRLJCzLcWURU3wjMbZGS//a2/LgjsnO3QxIlwxt9g=="
,
"dev"
:
true
"dev"
:
true
},
},
"node_modules/@types/jest"
:
{
"version"
:
"29.5.12"
,
"resolved"
:
"https://registry.npmjs.org/@types/jest/-/jest-29.5.12.tgz"
,
"integrity"
:
"sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw=="
,
"dev"
:
true
,
"dependencies"
:
{
"expect"
:
"^29.0.0"
,
"pretty-format"
:
"^29.0.0"
}
},
"node_modules/@types/json-schema"
:
{
"node_modules/@types/json-schema"
:
{
"version"
:
"7.0.15"
,
"version"
:
"7.0.15"
,
"resolved"
:
"https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz"
,
...
@@ -5409,6 +5544,12 @@
...
@@ -5409,6 +5544,12 @@
"integrity"
:
"sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w=="
,
"integrity"
:
"sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w=="
,
"dev"
:
true
"dev"
:
true
},
},
"node_modules/@types/mocha"
:
{
"version"
:
"10.0.6"
,
"resolved"
:
"https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz"
,
"integrity"
:
"sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg=="
,
"dev"
:
true
},
"node_modules/@types/node"
:
{
"node_modules/@types/node"
:
{
"version"
:
"18.19.34"
,
"version"
:
"18.19.34"
,
"resolved"
:
"https://registry.npmjs.org/@types/node/-/node-18.19.34.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@types/node/-/node-18.19.34.tgz"
,
...
@@ -5490,6 +5631,12 @@
...
@@ -5490,6 +5631,12 @@
"@types/node"
:
"*"
"@types/node"
:
"*"
}
}
},
},
"node_modules/@types/stack-utils"
:
{
"version"
:
"2.0.3"
,
"resolved"
:
"https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz"
,
"integrity"
:
"sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw=="
,
"dev"
:
true
},
"node_modules/@types/w3c-web-usb"
:
{
"node_modules/@types/w3c-web-usb"
:
{
"version"
:
"1.0.10"
,
"version"
:
"1.0.10"
,
"resolved"
:
"https://registry.npmjs.org/@types/w3c-web-usb/-/w3c-web-usb-1.0.10.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@types/w3c-web-usb/-/w3c-web-usb-1.0.10.tgz"
,
...
@@ -5504,6 +5651,21 @@
...
@@ -5504,6 +5651,21 @@
"@types/node"
:
"*"
"@types/node"
:
"*"
}
}
},
},
"node_modules/@types/yargs"
:
{
"version"
:
"17.0.32"
,
"resolved"
:
"https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz"
,
"integrity"
:
"sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog=="
,
"dev"
:
true
,
"dependencies"
:
{
"@types/yargs-parser"
:
"*"
}
},
"node_modules/@types/yargs-parser"
:
{
"version"
:
"21.0.3"
,
"resolved"
:
"https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz"
,
"integrity"
:
"sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ=="
,
"dev"
:
true
},
"node_modules/@typescript-eslint/eslint-plugin"
:
{
"node_modules/@typescript-eslint/eslint-plugin"
:
{
"version"
:
"6.15.0"
,
"version"
:
"6.15.0"
,
"resolved"
:
"https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.15.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.15.0.tgz"
,
...
@@ -6677,7 +6839,6 @@
...
@@ -6677,7 +6839,6 @@
"version"
:
"1.20.2"
,
"version"
:
"1.20.2"
,
"resolved"
:
"https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz"
,
"resolved"
:
"https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz"
,
"integrity"
:
"sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA=="
,
"integrity"
:
"sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA=="
,
"dev"
:
true
,
"dependencies"
:
{
"dependencies"
:
{
"bytes"
:
"3.1.2"
,
"bytes"
:
"3.1.2"
,
"content-type"
:
"~1.0.5"
,
"content-type"
:
"~1.0.5"
,
...
@@ -6701,7 +6862,6 @@
...
@@ -6701,7 +6862,6 @@
"version"
:
"2.6.9"
,
"version"
:
"2.6.9"
,
"resolved"
:
"https://registry.npmjs.org/debug/-/debug-2.6.9.tgz"
,
"resolved"
:
"https://registry.npmjs.org/debug/-/debug-2.6.9.tgz"
,
"integrity"
:
"sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA=="
,
"integrity"
:
"sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA=="
,
"dev"
:
true
,
"dependencies"
:
{
"dependencies"
:
{
"ms"
:
"2.0.0"
"ms"
:
"2.0.0"
}
}
...
@@ -6709,8 +6869,7 @@
...
@@ -6709,8 +6869,7 @@
"node_modules/body-parser/node_modules/ms"
:
{
"node_modules/body-parser/node_modules/ms"
:
{
"version"
:
"2.0.0"
,
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmjs.org/ms/-/ms-2.0.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/ms/-/ms-2.0.0.tgz"
,
"integrity"
:
"sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
,
"integrity"
:
"sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
"dev"
:
true
},
},
"node_modules/bonjour-service"
:
{
"node_modules/bonjour-service"
:
{
"version"
:
"1.2.1"
,
"version"
:
"1.2.1"
,
...
@@ -7550,6 +7709,21 @@
...
@@ -7550,6 +7709,21 @@
"node"
:
">=6.0"
"node"
:
">=6.0"
}
}
},
},
"node_modules/ci-info"
:
{
"version"
:
"3.9.0"
,
"resolved"
:
"https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz"
,
"integrity"
:
"sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ=="
,
"dev"
:
true
,
"funding"
:
[
{
"type"
:
"github"
,
"url"
:
"https://github.com/sponsors/sibiraj-s"
}
],
"engines"
:
{
"node"
:
">=8"
}
},
"node_modules/cidr-regex"
:
{
"node_modules/cidr-regex"
:
{
"version"
:
"4.0.3"
,
"version"
:
"4.0.3"
,
"resolved"
:
"https://registry.npmjs.org/cidr-regex/-/cidr-regex-4.0.3.tgz"
,
"resolved"
:
"https://registry.npmjs.org/cidr-regex/-/cidr-regex-4.0.3.tgz"
,
...
@@ -9408,6 +9582,22 @@
...
@@ -9408,6 +9582,22 @@
"url"
:
"https://github.com/sindresorhus/execa?sponsor=1"
"url"
:
"https://github.com/sindresorhus/execa?sponsor=1"
}
}
},
},
"node_modules/expect"
:
{
"version"
:
"29.7.0"
,
"resolved"
:
"https://registry.npmjs.org/expect/-/expect-29.7.0.tgz"
,
"integrity"
:
"sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw=="
,
"dev"
:
true
,
"dependencies"
:
{
"@jest/expect-utils"
:
"^29.7.0"
,
"jest-get-type"
:
"^29.6.3"
,
"jest-matcher-utils"
:
"^29.7.0"
,
"jest-message-util"
:
"^29.7.0"
,
"jest-util"
:
"^29.7.0"
},
"engines"
:
{
"node"
:
"^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
"node_modules/exponential-backoff"
:
{
"node_modules/exponential-backoff"
:
{
"version"
:
"3.1.1"
,
"version"
:
"3.1.1"
,
"resolved"
:
"https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz"
,
...
@@ -9415,16 +9605,16 @@
...
@@ -9415,16 +9605,16 @@
"dev"
:
true
"dev"
:
true
},
},
"node_modules/express"
:
{
"node_modules/express"
:
{
"version"
:
"4.1
8
.2"
,
"version"
:
"4.1
9
.2"
,
"resolved"
:
"https://registry.npmjs.org/express/-/express-4.1
8
.2.tgz"
,
"resolved"
:
"https://registry.npmjs.org/express/-/express-4.1
9
.2.tgz"
,
"integrity"
:
"sha512-5
/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMq
Q=="
,
"integrity"
:
"sha512-5
T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9
Q=="
,
"dependencies"
:
{
"dependencies"
:
{
"accepts"
:
"~1.3.8"
,
"accepts"
:
"~1.3.8"
,
"array-flatten"
:
"1.1.1"
,
"array-flatten"
:
"1.1.1"
,
"body-parser"
:
"1.20.
1
"
,
"body-parser"
:
"1.20.
2
"
,
"content-disposition"
:
"0.5.4"
,
"content-disposition"
:
"0.5.4"
,
"content-type"
:
"~1.0.4"
,
"content-type"
:
"~1.0.4"
,
"cookie"
:
"0.
5
.0"
,
"cookie"
:
"0.
6
.0"
,
"cookie-signature"
:
"1.0.6"
,
"cookie-signature"
:
"1.0.6"
,
"debug"
:
"2.6.9"
,
"debug"
:
"2.6.9"
,
"depd"
:
"2.0.0"
,
"depd"
:
"2.0.0"
,
...
@@ -9455,33 +9645,10 @@
...
@@ -9455,33 +9645,10 @@
"node"
:
">= 0.10.0"
"node"
:
">= 0.10.0"
}
}
},
},
"node_modules/express/node_modules/body-parser"
:
{
"version"
:
"1.20.1"
,
"resolved"
:
"https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz"
,
"integrity"
:
"sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw=="
,
"dependencies"
:
{
"bytes"
:
"3.1.2"
,
"content-type"
:
"~1.0.4"
,
"debug"
:
"2.6.9"
,
"depd"
:
"2.0.0"
,
"destroy"
:
"1.2.0"
,
"http-errors"
:
"2.0.0"
,
"iconv-lite"
:
"0.4.24"
,
"on-finished"
:
"2.4.1"
,
"qs"
:
"6.11.0"
,
"raw-body"
:
"2.5.1"
,
"type-is"
:
"~1.6.18"
,
"unpipe"
:
"1.0.0"
},
"engines"
:
{
"node"
:
">= 0.8"
,
"npm"
:
"1.2.8000 || >= 1.4.16"
}
},
"node_modules/express/node_modules/cookie"
:
{
"node_modules/express/node_modules/cookie"
:
{
"version"
:
"0.
5
.0"
,
"version"
:
"0.
6
.0"
,
"resolved"
:
"https://registry.npmjs.org/cookie/-/cookie-0.
5
.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/cookie/-/cookie-0.
6
.0.tgz"
,
"integrity"
:
"sha512-
YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmr
w=="
,
"integrity"
:
"sha512-
U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svd
w=="
,
"engines"
:
{
"engines"
:
{
"node"
:
">= 0.6"
"node"
:
">= 0.6"
}
}
...
@@ -9516,20 +9683,6 @@
...
@@ -9516,20 +9683,6 @@
"resolved"
:
"https://registry.npmjs.org/ms/-/ms-2.0.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/ms/-/ms-2.0.0.tgz"
,
"integrity"
:
"sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
"integrity"
:
"sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
},
},
"node_modules/express/node_modules/raw-body"
:
{
"version"
:
"2.5.1"
,
"resolved"
:
"https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz"
,
"integrity"
:
"sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig=="
,
"dependencies"
:
{
"bytes"
:
"3.1.2"
,
"http-errors"
:
"2.0.0"
,
"iconv-lite"
:
"0.4.24"
,
"unpipe"
:
"1.0.0"
},
"engines"
:
{
"node"
:
">= 0.8"
}
},
"node_modules/express/node_modules/statuses"
:
{
"node_modules/express/node_modules/statuses"
:
{
"version"
:
"2.0.1"
,
"version"
:
"2.0.1"
,
"resolved"
:
"https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz"
,
...
@@ -11261,6 +11414,280 @@
...
@@ -11261,6 +11414,280 @@
"node"
:
"^14.15.0 || ^16.10.0 || >=18.0.0"
"node"
:
"^14.15.0 || ^16.10.0 || >=18.0.0"
}
}
},
},
"node_modules/jest-matcher-utils"
:
{
"version"
:
"29.7.0"
,
"resolved"
:
"https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz"
,
"integrity"
:
"sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g=="
,
"dev"
:
true
,
"dependencies"
:
{
"chalk"
:
"^4.0.0"
,
"jest-diff"
:
"^29.7.0"
,
"jest-get-type"
:
"^29.6.3"
,
"pretty-format"
:
"^29.7.0"
},
"engines"
:
{
"node"
:
"^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
"node_modules/jest-matcher-utils/node_modules/ansi-styles"
:
{
"version"
:
"4.3.0"
,
"resolved"
:
"https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
,
"integrity"
:
"sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="
,
"dev"
:
true
,
"dependencies"
:
{
"color-convert"
:
"^2.0.1"
},
"engines"
:
{
"node"
:
">=8"
},
"funding"
:
{
"url"
:
"https://github.com/chalk/ansi-styles?sponsor=1"
}
},
"node_modules/jest-matcher-utils/node_modules/chalk"
:
{
"version"
:
"4.1.2"
,
"resolved"
:
"https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
,
"integrity"
:
"sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="
,
"dev"
:
true
,
"dependencies"
:
{
"ansi-styles"
:
"^4.1.0"
,
"supports-color"
:
"^7.1.0"
},
"engines"
:
{
"node"
:
">=10"
},
"funding"
:
{
"url"
:
"https://github.com/chalk/chalk?sponsor=1"
}
},
"node_modules/jest-matcher-utils/node_modules/color-convert"
:
{
"version"
:
"2.0.1"
,
"resolved"
:
"https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz"
,
"integrity"
:
"sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="
,
"dev"
:
true
,
"dependencies"
:
{
"color-name"
:
"~1.1.4"
},
"engines"
:
{
"node"
:
">=7.0.0"
}
},
"node_modules/jest-matcher-utils/node_modules/color-name"
:
{
"version"
:
"1.1.4"
,
"resolved"
:
"https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
,
"integrity"
:
"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
,
"dev"
:
true
},
"node_modules/jest-matcher-utils/node_modules/has-flag"
:
{
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
,
"integrity"
:
"sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
,
"dev"
:
true
,
"engines"
:
{
"node"
:
">=8"
}
},
"node_modules/jest-matcher-utils/node_modules/supports-color"
:
{
"version"
:
"7.2.0"
,
"resolved"
:
"https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz"
,
"integrity"
:
"sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw=="
,
"dev"
:
true
,
"dependencies"
:
{
"has-flag"
:
"^4.0.0"
},
"engines"
:
{
"node"
:
">=8"
}
},
"node_modules/jest-message-util"
:
{
"version"
:
"29.7.0"
,
"resolved"
:
"https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz"
,
"integrity"
:
"sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w=="
,
"dev"
:
true
,
"dependencies"
:
{
"@babel/code-frame"
:
"^7.12.13"
,
"@jest/types"
:
"^29.6.3"
,
"@types/stack-utils"
:
"^2.0.0"
,
"chalk"
:
"^4.0.0"
,
"graceful-fs"
:
"^4.2.9"
,
"micromatch"
:
"^4.0.4"
,
"pretty-format"
:
"^29.7.0"
,
"slash"
:
"^3.0.0"
,
"stack-utils"
:
"^2.0.3"
},
"engines"
:
{
"node"
:
"^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
"node_modules/jest-message-util/node_modules/ansi-styles"
:
{
"version"
:
"4.3.0"
,
"resolved"
:
"https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
,
"integrity"
:
"sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="
,
"dev"
:
true
,
"dependencies"
:
{
"color-convert"
:
"^2.0.1"
},
"engines"
:
{
"node"
:
">=8"
},
"funding"
:
{
"url"
:
"https://github.com/chalk/ansi-styles?sponsor=1"
}
},
"node_modules/jest-message-util/node_modules/chalk"
:
{
"version"
:
"4.1.2"
,
"resolved"
:
"https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
,
"integrity"
:
"sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="
,
"dev"
:
true
,
"dependencies"
:
{
"ansi-styles"
:
"^4.1.0"
,
"supports-color"
:
"^7.1.0"
},
"engines"
:
{
"node"
:
">=10"
},
"funding"
:
{
"url"
:
"https://github.com/chalk/chalk?sponsor=1"
}
},
"node_modules/jest-message-util/node_modules/color-convert"
:
{
"version"
:
"2.0.1"
,
"resolved"
:
"https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz"
,
"integrity"
:
"sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="
,
"dev"
:
true
,
"dependencies"
:
{
"color-name"
:
"~1.1.4"
},
"engines"
:
{
"node"
:
">=7.0.0"
}
},
"node_modules/jest-message-util/node_modules/color-name"
:
{
"version"
:
"1.1.4"
,
"resolved"
:
"https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
,
"integrity"
:
"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
,
"dev"
:
true
},
"node_modules/jest-message-util/node_modules/has-flag"
:
{
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
,
"integrity"
:
"sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
,
"dev"
:
true
,
"engines"
:
{
"node"
:
">=8"
}
},
"node_modules/jest-message-util/node_modules/supports-color"
:
{
"version"
:
"7.2.0"
,
"resolved"
:
"https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz"
,
"integrity"
:
"sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw=="
,
"dev"
:
true
,
"dependencies"
:
{
"has-flag"
:
"^4.0.0"
},
"engines"
:
{
"node"
:
">=8"
}
},
"node_modules/jest-util"
:
{
"version"
:
"29.7.0"
,
"resolved"
:
"https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz"
,
"integrity"
:
"sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA=="
,
"dev"
:
true
,
"dependencies"
:
{
"@jest/types"
:
"^29.6.3"
,
"@types/node"
:
"*"
,
"chalk"
:
"^4.0.0"
,
"ci-info"
:
"^3.2.0"
,
"graceful-fs"
:
"^4.2.9"
,
"picomatch"
:
"^2.2.3"
},
"engines"
:
{
"node"
:
"^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
"node_modules/jest-util/node_modules/ansi-styles"
:
{
"version"
:
"4.3.0"
,
"resolved"
:
"https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
,
"integrity"
:
"sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="
,
"dev"
:
true
,
"dependencies"
:
{
"color-convert"
:
"^2.0.1"
},
"engines"
:
{
"node"
:
">=8"
},
"funding"
:
{
"url"
:
"https://github.com/chalk/ansi-styles?sponsor=1"
}
},
"node_modules/jest-util/node_modules/chalk"
:
{
"version"
:
"4.1.2"
,
"resolved"
:
"https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
,
"integrity"
:
"sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="
,
"dev"
:
true
,
"dependencies"
:
{
"ansi-styles"
:
"^4.1.0"
,
"supports-color"
:
"^7.1.0"
},
"engines"
:
{
"node"
:
">=10"
},
"funding"
:
{
"url"
:
"https://github.com/chalk/chalk?sponsor=1"
}
},
"node_modules/jest-util/node_modules/color-convert"
:
{
"version"
:
"2.0.1"
,
"resolved"
:
"https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz"
,
"integrity"
:
"sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="
,
"dev"
:
true
,
"dependencies"
:
{
"color-name"
:
"~1.1.4"
},
"engines"
:
{
"node"
:
">=7.0.0"
}
},
"node_modules/jest-util/node_modules/color-name"
:
{
"version"
:
"1.1.4"
,
"resolved"
:
"https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
,
"integrity"
:
"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
,
"dev"
:
true
},
"node_modules/jest-util/node_modules/has-flag"
:
{
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
,
"integrity"
:
"sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
,
"dev"
:
true
,
"engines"
:
{
"node"
:
">=8"
}
},
"node_modules/jest-util/node_modules/picomatch"
:
{
"version"
:
"2.3.1"
,
"resolved"
:
"https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz"
,
"integrity"
:
"sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA=="
,
"dev"
:
true
,
"engines"
:
{
"node"
:
">=8.6"
},
"funding"
:
{
"url"
:
"https://github.com/sponsors/jonschlinkert"
}
},
"node_modules/jest-util/node_modules/supports-color"
:
{
"version"
:
"7.2.0"
,
"resolved"
:
"https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz"
,
"integrity"
:
"sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw=="
,
"dev"
:
true
,
"dependencies"
:
{
"has-flag"
:
"^4.0.0"
},
"engines"
:
{
"node"
:
">=8"
}
},
"node_modules/jest-worker"
:
{
"node_modules/jest-worker"
:
{
"version"
:
"27.5.1"
,
"version"
:
"27.5.1"
,
"resolved"
:
"https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz"
,
...
@@ -14350,7 +14777,6 @@
...
@@ -14350,7 +14777,6 @@
"version"
:
"2.5.2"
,
"version"
:
"2.5.2"
,
"resolved"
:
"https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz"
,
"resolved"
:
"https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz"
,
"integrity"
:
"sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA=="
,
"integrity"
:
"sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA=="
,
"dev"
:
true
,
"dependencies"
:
{
"dependencies"
:
{
"bytes"
:
"3.1.2"
,
"bytes"
:
"3.1.2"
,
"http-errors"
:
"2.0.0"
,
"http-errors"
:
"2.0.0"
,
...
@@ -15559,6 +15985,27 @@
...
@@ -15559,6 +15985,27 @@
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
}
}
},
},
"node_modules/stack-utils"
:
{
"version"
:
"2.0.6"
,
"resolved"
:
"https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz"
,
"integrity"
:
"sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ=="
,
"dev"
:
true
,
"dependencies"
:
{
"escape-string-regexp"
:
"^2.0.0"
},
"engines"
:
{
"node"
:
">=10"
}
},
"node_modules/stack-utils/node_modules/escape-string-regexp"
:
{
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz"
,
"integrity"
:
"sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w=="
,
"dev"
:
true
,
"engines"
:
{
"node"
:
">=8"
}
},
"node_modules/statuses"
:
{
"node_modules/statuses"
:
{
"version"
:
"1.5.0"
,
"version"
:
"1.5.0"
,
"resolved"
:
"https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz"
,
...
...
package.json
View file @
1481f24e
...
@@ -27,9 +27,9 @@
...
@@ -27,9 +27,9 @@
"
@angular/material
"
:
"^17.1.2"
,
"
@angular/material
"
:
"^17.1.2"
,
"
@angular/platform-browser
"
:
"^17.1.3"
,
"
@angular/platform-browser
"
:
"^17.1.3"
,
"
@angular/platform-browser-dynamic
"
:
"^17.1.3"
,
"
@angular/platform-browser-dynamic
"
:
"^17.1.3"
,
"
@angular/platform-server
"
:
"^17.
1.3
"
,
"
@angular/platform-server
"
:
"^17.
3.11
"
,
"
@angular/router
"
:
"^17.1.3"
,
"
@angular/router
"
:
"^17.1.3"
,
"
@angular/ssr
"
:
"^17.
1.3
"
,
"
@angular/ssr
"
:
"^17.
3.8
"
,
"
@fortawesome/angular-fontawesome
"
:
"^0.14.1"
,
"
@fortawesome/angular-fontawesome
"
:
"^0.14.1"
,
"
@fortawesome/fontawesome-free
"
:
"^6.5.2"
,
"
@fortawesome/fontawesome-free
"
:
"^6.5.2"
,
"
@fortawesome/fontawesome-svg-core
"
:
"^6.4.2"
,
"
@fortawesome/fontawesome-svg-core
"
:
"^6.4.2"
,
...
@@ -44,7 +44,7 @@
...
@@ -44,7 +44,7 @@
"
apexcharts
"
:
"^3.45.2"
,
"
apexcharts
"
:
"^3.45.2"
,
"
bootstrap
"
:
"^5.3.2"
,
"
bootstrap
"
:
"^5.3.2"
,
"
chart.js
"
:
"^4.4.3"
,
"
chart.js
"
:
"^4.4.3"
,
"
express
"
:
"^4.1
8
.2"
,
"
express
"
:
"^4.1
9
.2"
,
"
internal-ip
"
:
"^8.0.0"
,
"
internal-ip
"
:
"^8.0.0"
,
"
jwt-decode
"
:
"^4.0.0"
,
"
jwt-decode
"
:
"^4.0.0"
,
"
lodash
"
:
"^4.17.21"
,
"
lodash
"
:
"^4.17.21"
,
...
@@ -76,9 +76,9 @@
...
@@ -76,9 +76,9 @@
"
@angular/cli
"
:
"~17.1.3"
,
"
@angular/cli
"
:
"~17.1.3"
,
"
@angular/compiler-cli
"
:
"^17.1.3"
,
"
@angular/compiler-cli
"
:
"^17.1.3"
,
"
@biomejs/biome
"
:
"^1.6.4"
,
"
@biomejs/biome
"
:
"^1.6.4"
,
"
@types/express
"
:
"^4.17.
17
"
,
"
@types/express
"
:
"^4.17.
21
"
,
"
@types/jasmine
"
:
"~4.3.5"
,
"
@types/jasmine
"
:
"~4.3.5"
,
"
@types/node
"
:
"^18.1
8.0
"
,
"
@types/node
"
:
"^18.1
9.34
"
,
"
@typescript-eslint/eslint-plugin
"
:
"6.15.0"
,
"
@typescript-eslint/eslint-plugin
"
:
"6.15.0"
,
"
@typescript-eslint/parser
"
:
"6.15.0"
,
"
@typescript-eslint/parser
"
:
"6.15.0"
,
"
browser-sync
"
:
"^3.0.0"
,
"
browser-sync
"
:
"^3.0.0"
,
...
...
server.ts
0 → 100644
View file @
1481f24e
/* eslint-disable prettier/prettier */
import
'zone.js/node'
;
import
{
APP_BASE_HREF
}
from
'@angular/common'
;
import
{
CommonEngine
}
from
'@angular/ssr'
;
import
*
as
express
from
'express'
;
import
{
existsSync
}
from
'node:fs'
;
import
{
join
}
from
'node:path'
;
import
bootstrap
from
'./src/main.server'
;
// The Express app is exported so that it can be used by serverless Functions.
export
function
app
():
express
.
Express
{
const
server
=
express
();
const
distFolder
=
join
(
process
.
cwd
(),
'dist/angular-beasy/browser'
);
const
indexHtml
=
existsSync
(
join
(
distFolder
,
'index.original.html'
))
?
join
(
distFolder
,
'index.original.html'
)
:
join
(
distFolder
,
'index.html'
);
const
commonEngine
=
new
CommonEngine
();
server
.
set
(
'view engine'
,
'html'
);
server
.
set
(
'views'
,
distFolder
);
// Example Express Rest API endpoints
// server.get('/api/**', (req, res) => { });
// Serve static files from /browser
server
.
get
(
'*.*'
,
express
.
static
(
distFolder
,
{
maxAge
:
'1y'
}));
// All regular routes use the Angular engine
server
.
get
(
'*'
,
(
req
,
res
,
next
)
=>
{
const
{
protocol
,
originalUrl
,
baseUrl
,
headers
}
=
req
;
commonEngine
.
render
({
bootstrap
,
documentFilePath
:
indexHtml
,
url
:
`
${
protocol
}
://
${
headers
.
host
}${
originalUrl
}
`
,
publicPath
:
distFolder
,
providers
:
[{
provide
:
APP_BASE_HREF
,
useValue
:
baseUrl
}],
})
.
then
((
html
)
=>
res
.
send
(
html
))
.
catch
((
err
)
=>
next
(
err
));
});
return
server
;
}
function
run
():
void
{
const
port
=
process
.
env
[
'PORT'
]
||
4000
;
// Start up the Node server
const
server
=
app
();
server
.
listen
(
port
,
()
=>
{
console
.
log
(
`Node Express server listening on http://localhost:
${
port
}
`
);
});
}
// Webpack will replace 'require' with '__webpack_require__'
// '__non_webpack_require__' is a proxy to Node 'require'
// The below code is to ensure that the server is run only when not requiring the bundle.
declare
const
__non_webpack_require__
:
NodeRequire
;
const
mainModule
=
__non_webpack_require__
.
main
;
const
moduleFilename
=
mainModule
&&
mainModule
.
filename
||
''
;
if
(
moduleFilename
===
__filename
||
moduleFilename
.
includes
(
'iisnode'
))
{
run
();
}
export
default
bootstrap
;
src/app/app.component.ts
View file @
1481f24e
import
{
Component
}
from
'@angular/core'
;
import
{
Component
,
Inject
,
PLATFORM_ID
}
from
'@angular/core'
;
import
{
RouterOutlet
}
from
'@angular/router'
;
import
{
RouterLink
,
RouterOutlet
}
from
'@angular/router'
;
import
{
FooterComponent
}
from
"./core/layout/footer/footer.component"
;
import
{
FooterComponent
}
from
'./core/layout/footer/footer.component'
;
import
{
CommonModule
,
isPlatformBrowser
}
from
'@angular/common'
;
@
Component
({
@
Component
({
selector
:
'bgui-root'
,
selector
:
'bgui-root'
,
standalone
:
true
,
standalone
:
true
,
templateUrl
:
'./app.component.html'
,
templateUrl
:
'./app.component.html'
,
styleUrls
:
[
'./app.component.scss'
],
styleUrls
:
[
'./app.component.scss'
],
imports
:
[
RouterOutlet
,
FooterComponent
]
imports
:
[
CommonModule
,
RouterOutlet
,
RouterLink
,
FooterComponent
],
})
})
export
class
AppComponent
{
export
class
AppComponent
{
title
=
"Beas'y"
;
title
=
"Beas'y"
;
constructor
(@
Inject
(
PLATFORM_ID
)
private
platformId
:
object
)
{}
ngOnInit
():
void
{
if
(
isPlatformBrowser
(
this
.
platformId
))
{
const
navMain
=
document
.
getElementById
(
'navbarCollapse'
);
if
(
navMain
)
{
navMain
.
onclick
=
function
onClick
()
{
navMain
.
classList
.
remove
(
'show'
);
};
}
}
}
}
}
src/app/app.config.server.ts
0 → 100644
View file @
1481f24e
import
{
mergeApplicationConfig
,
ApplicationConfig
}
from
'@angular/core'
;
import
{
provideServerRendering
}
from
'@angular/platform-server'
;
import
{
appConfig
}
from
'./app.config'
;
// Define server-specific configuration
const
serverConfig
:
ApplicationConfig
=
{
providers
:
[
provideServerRendering
()],
// Add server rendering providers
};
// Merge the main application config with the server-specific config
export
const
config
=
mergeApplicationConfig
(
appConfig
,
serverConfig
);
src/app/reversements/reversement/paiement/paiement.component.html
0 → 100644
View file @
1481f24e
<!-- eslint-disable @angular-eslint/template/label-has-associated-control -->
<nav
aria-label=
"breadcrumb"
>
<ol
class=
"breadcrumb"
>
<li
class=
"breadcrumb-item"
>
<a
href=
"#"
[
routerLink
]="['/
transactions
/
suivi-paiement
']"
>
Transactions
</a
>
</li>
<a
class=
"breadcrumb-item active"
aria-current=
"page"
[
routerLink
]="['/
transactions
/
suivi-transaction
']"
>
Suivi paiement
</a
>
</ol>
</nav>
<div
class=
"page-title"
style=
"margin: 10px 10px"
>
<h4>
Paiements
</h4>
</div>
<div
class=
"content sm-gutter"
>
<div
class=
"row"
>
<div
class=
"col-md-12 col-vlg-12 m-b-10"
>
<div
class=
"row-fluid"
>
<div
class=
"span12"
>
<div
class=
"grid simple"
>
<div
class=
"card"
>
<div
class=
"card-title"
>
<div
class=
"card-body m-3"
>
<div
class=
"row"
style=
"margin: auto"
>
<div
class=
"col-md-2"
>
<label
for=
"operateurs"
>
Opérateurs
</label>
<select
class=
"form-control filtre"
id=
"operateurs"
style=
"width: 100%"
[(
ngModel
)]="
selectedOperateur
"
>
<option
*
ngFor=
"let operateur of operateurs"
[
value
]="
operateur
.
code
"
>
{{ operateur.code }}
</option>
</select>
</div>
<div
class=
"col-md-2"
>
<label
for=
"services"
>
Services
</label>
<select
class=
"form-control filtre"
style=
"width: 100%"
>
<option
value=
""
>
Tout
</option>
</select>
</div>
<div
class=
"col-md-3"
>
<label
for=
"debut"
>
De
</label>
<input
type=
"date"
value=
"2024-04-16"
required=
""
name=
"debut"
class=
"form-control form-control-sm"
/>
</div>
<div
class=
"col-md-3"
>
<label
for=
"fin"
>
A
</label>
<input
type=
"date"
value=
"2024-04-16"
required=
""
name=
"fin"
class=
"form-control form-control-sm"
/>
</div>
<div
class=
"col-md-2"
>
<label
style=
"visibility: hidden"
>
Recherche
</label>
<div
class=
"card-title"
>
<button
class=
"btn btn-primary btn-sm"
style=
"border-radius: 15px; box-sizing: border-box"
>
Recherche
<i
class=
"fa fa-search m-1"
></i>
</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div
class=
"example-container mat-elevation-z8"
style=
"margin-top: 40px"
>
<mat-form-field>
<mat-label>
Filter
</mat-label>
<input
matInput
(
keyup
)="
applyFilter
($
event
)"
placeholder=
"Ex. ium"
#
input
/>
</mat-form-field>
<mat-table
#
table
[
dataSource
]="
dataSource
"
>
<ng-container
matColumnDef=
"nom"
>
<mat-header-cell
*
matHeaderCellDef
class=
"bold-text"
>
Nom
</mat-header-cell>
<mat-cell
*
matCellDef=
"let element"
>
{{ element.nom }}
</mat-cell>
</ng-container>
<!-- Weight Column -->
<ng-container
matColumnDef=
"prenom"
>
<mat-header-cell
*
matHeaderCellDef
class=
"bold-text"
>
Prenoms
</mat-header-cell>
<mat-cell
*
matCellDef=
"let element"
>
{{ element.prenom }}
</mat-cell>
</ng-container>
<!-- Symbol Column -->
<ng-container
matColumnDef=
"contact"
>
<mat-header-cell
*
matHeaderCellDef
class=
"bold-text"
>
Contact
</mat-header-cell>
<mat-cell
*
matCellDef=
"let element"
>
{{ element.contact }}
</mat-cell>
</ng-container>
<!-- Symbol Column -->
<ng-container
matColumnDef=
"service"
>
<mat-header-cell
*
matHeaderCellDef
class=
"bold-text"
>
Service
</mat-header-cell>
<mat-cell
*
matCellDef=
"let element"
>
{{ element.service }}
</mat-cell>
</ng-container>
<!-- Symbol Column -->
<ng-container
matColumnDef=
"email"
>
<mat-header-cell
*
matHeaderCellDef
class=
"bold-text"
>
E-mail
</mat-header-cell>
<mat-cell
*
matCellDef=
"let element"
>
{{ element.email }}
</mat-cell>
</ng-container>
<!-- Symbol Column -->
<ng-container
matColumnDef=
"montant"
>
<mat-header-cell
*
matHeaderCellDef
class=
"bold-text"
>
Montant
</mat-header-cell>
<mat-cell
*
matCellDef=
"let element"
>
{{ element.montant | currency: ' FCFA' : 'symbol' : '1.0-0' }}
</mat-cell>
</ng-container>
<!-- Symbol Column -->
<ng-container
matColumnDef=
"modePaiement"
>
<mat-header-cell
*
matHeaderCellDef
class=
"bold-text"
>
Opérateur
</mat-header-cell>
<mat-cell
*
matCellDef=
"let element"
>
{{ element.modePaiement }}
</mat-cell>
</ng-container>
<!-- Symbol Column -->
<ng-container
matColumnDef=
"status"
>
<mat-header-cell
*
matHeaderCellDef
class=
"bold-text"
>
Status
</mat-header-cell>
<mat-cell
*
matCellDef=
"let element"
>
<span
[
ngClass
]="
getStatusClass
(
element
.
status
)"
>
{{ element.status }}
</span>
</mat-cell>
</ng-container>
<!-- Symbol Column -->
<ng-container
matColumnDef=
"dateTransaction"
>
<mat-header-cell
*
matHeaderCellDef
class=
"bold-text"
>
Date Transaction
</mat-header-cell>
<mat-cell
*
matCellDef=
"let element"
>
{{ element.dateTransaction | date: 'dd/MM/yyy h:mm:ss' }}
</mat-cell>
</ng-container>
<mat-header-row
*
matHeaderRowDef=
"displayedColumns"
></mat-header-row>
<mat-row
*
matRowDef=
"let row; columns: displayedColumns"
></mat-row>
</mat-table>
<mat-paginator
#
paginator
[
pageSize
]="
5
"
[
pageSizeOptions
]="[
5
,
10
,
20
,
30
,
40
,
50
,
60
,
70
,
80
,
90
,
100
]"
[
showFirstLastButtons
]="
true
"
>
</mat-paginator>
</div>
src/app/reversements/reversement/paiement/paiement.component.scss
0 → 100644
View file @
1481f24e
.card
{
border-radius
:
0
!
important
;
background-color
:
#ffffff
61
;
}
.text
{
color
:black
;
font-weight
:
bold
;
font-size
:
16px
;
/* Ajustez la taille de la police selon vos besoins */
}
.bold-text
{
color
:rgb
(
0
,
0
,
0
)
;
font-weight
:
bold
;
font-size
:
16px
;
/* Ajustez la taille de la police selon vos besoins */
}
\ No newline at end of file
src/app/reversements/reversement/paiement/paiement.component.spec.ts
0 → 100644
View file @
1481f24e
import
{
ComponentFixture
,
TestBed
}
from
'@angular/core/testing'
;
import
{
PaiementComponent
}
from
'./paiement.component'
;
describe
(
'PaiementComponent'
,
()
=>
{
let
component
:
PaiementComponent
;
let
fixture
:
ComponentFixture
<
PaiementComponent
>
;
beforeEach
(
async
()
=>
{
await
TestBed
.
configureTestingModule
({
imports
:
[
PaiementComponent
]
})
.
compileComponents
();
fixture
=
TestBed
.
createComponent
(
PaiementComponent
);
component
=
fixture
.
componentInstance
;
fixture
.
detectChanges
();
});
it
(
'should create'
,
()
=>
{
expect
(
component
).
toBeTruthy
();
});
});
src/app/reversements/reversement/paiement/paiement.component.ts
0 → 100644
View file @
1481f24e
/* eslint-disable @typescript-eslint/ban-types */
import
{
Component
,
ViewChild
}
from
'@angular/core'
;
import
{
MatTableDataSource
,
MatTableModule
}
from
'@angular/material/table'
;
import
{
MatInputModule
}
from
'@angular/material/input'
;
import
{
MatFormFieldModule
}
from
'@angular/material/form-field'
;
import
{
CommonModule
}
from
'@angular/common'
;
import
{
FormsModule
}
from
'@angular/forms'
;
import
{
MatPaginator
,
MatPaginatorModule
}
from
'@angular/material/paginator'
;
import
{
RouterLink
,
RouterLinkActive
,
RouterOutlet
}
from
'@angular/router'
;
import
{
HttpClient
,
HttpClientModule
}
from
'@angular/common/http'
;
import
{
IOperateur
}
from
'src/app/_interfaces/trafics/operateur/operateur'
;
import
{
OperateurService
}
from
'src/app/_services/trafics/operateur/operateur.service'
;
import
{
TransactionService
}
from
'src/app/_services/trafics/transaction/transaction.service'
;
export
interface
PElement
{
nfacture
:
number
;
nom
:
string
;
prenom
:
string
;
contact
:
string
;
service
:
string
;
email
:
string
;
montant
:
number
;
modePaiement
:
string
;
status
:
string
;
dateTransaction
:
string
;
}
const
ELEMENT_DATA
:
PElement
[]
=
[
{
nfacture
:
1
,
nom
:
'zaho'
,
prenom
:
'zadi'
,
contact
:
'0101010101'
,
service
:
'mtn'
,
email
:
'mrtest@mail.com'
,
montant
:
25000
,
modePaiement
:
'wave'
,
status
:
'valide'
,
dateTransaction
:
'10-04-2024'
,
},
{
nfacture
:
2
,
nom
:
'kablan'
,
prenom
:
'fatou'
,
contact
:
'0101010101'
,
service
:
'mtn'
,
email
:
'mrtet@mail.com'
,
montant
:
25000
,
modePaiement
:
'wave'
,
status
:
'valide'
,
dateTransaction
:
'16-03-2024'
,
},
{
nfacture
:
3
,
nom
:
'toure'
,
prenom
:
'koffi'
,
contact
:
'0101010101'
,
service
:
'mtn'
,
email
:
'mrtest@mail.com'
,
montant
:
25000
,
modePaiement
:
'wave'
,
status
:
'invalide'
,
dateTransaction
:
'04-04-2024'
,
},
{
nfacture
:
4
,
nom
:
'belem'
,
prenom
:
'asaph'
,
contact
:
'0101010101'
,
service
:
'mtn'
,
email
:
'test@mail.com'
,
montant
:
27000
,
modePaiement
:
'wave'
,
status
:
'valide'
,
dateTransaction
:
'16-02-2024'
,
},
{
nfacture
:
5
,
nom
:
'tanoh'
,
prenom
:
'delmas'
,
contact
:
'0101010101'
,
service
:
'mtn'
,
email
:
'rtest@mail.com'
,
montant
:
50000
,
modePaiement
:
'wave'
,
status
:
'invalide'
,
dateTransaction
:
'16-04-2024'
,
},
{
nfacture
:
6
,
nom
:
'gaba'
,
prenom
:
'akemane'
,
contact
:
'0101010101'
,
service
:
'mtn'
,
email
:
'mtst@mail.com'
,
montant
:
25000
,
modePaiement
:
'wave'
,
status
:
'valide'
,
dateTransaction
:
'16-01-2024'
,
},
{
nfacture
:
7
,
nom
:
'kra'
,
prenom
:
'zoulou'
,
contact
:
'0101010101'
,
service
:
'mtn'
,
email
:
'mest@mail.com'
,
montant
:
25000
,
modePaiement
:
'wave'
,
status
:
'valide'
,
dateTransaction
:
'26-03-2024'
,
},
{
nfacture
:
8
,
nom
:
'kakou'
,
prenom
:
'kasa'
,
contact
:
'0101010101'
,
service
:
'mtn'
,
email
:
'mrtst@mail.com'
,
montant
:
80000
,
modePaiement
:
'wave'
,
status
:
'invalide'
,
dateTransaction
:
'10-04-2024'
,
},
{
nfacture
:
9
,
nom
:
'nguessan'
,
prenom
:
'daouda'
,
contact
:
'0101010101'
,
service
:
'mtn'
,
email
:
'mrte@mail.com'
,
montant
:
25000
,
modePaiement
:
'wave'
,
status
:
'valide'
,
dateTransaction
:
'16-04-2024'
,
},
{
nfacture
:
10
,
nom
:
'Neon'
,
prenom
:
'kanon'
,
contact
:
'0101010101'
,
service
:
'mtn'
,
email
:
'mrtest@mail.com'
,
montant
:
27000
,
modePaiement
:
'wave'
,
status
:
'valide'
,
dateTransaction
:
'16-04-2024'
,
},
];
@
Component
({
selector
:
'bgui-suivi-paiement'
,
standalone
:
true
,
imports
:
[
MatFormFieldModule
,
MatInputModule
,
MatTableModule
,
MatPaginatorModule
,
CommonModule
,
HttpClientModule
,
RouterLink
,
FormsModule
,
RouterOutlet
,
RouterLinkActive
,
],
templateUrl
:
'./paiement.component.html'
,
styleUrl
:
'./paiement.component.scss'
,
})
export
class
PaiementComponent
{
private
url
=
'http://192.168.1.223:8001/operateur/'
;
breadCrumbItems
:
Array
<
{}
>
=
[
{
label
:
'Suivi transactions'
,
url
:
'/transactions/suivi-transaction'
},
{
label
:
'Suivi paiement'
,
url
:
'/transactions/suivi-paiement'
},
];
operateurs
:
IOperateur
[]
=
[];
selectedOperateur
:
string
=
''
;
displayedColumns
:
string
[]
=
[
// 'nfacture',
'dateTransaction'
,
'montant'
,
'modePaiement'
,
'nom'
,
'prenom'
,
'service'
,
'contact'
,
'email'
,
'status'
,
];
dataSource
=
new
MatTableDataSource
(
ELEMENT_DATA
);
@
ViewChild
(
MatPaginator
)
paginator
!
:
MatPaginator
|
undefined
;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
constructor
(
private
httpClient
:
HttpClient
)
{}
ngOnInit
():
void
{
this
.
fetchOperateurs
();
}
fetchOperateurs
():
void
{
this
.
httpClient
.
get
<
IOperateur
>
(
this
.
url
).
subscribe
(
(
data
:
IOperateur
)
=>
{
this
.
operateurs
.
push
(
data
);
console
.
log
(
'operateur==>'
,
this
.
operateurs
);
},
error
=>
{
console
.
error
(
"Une erreur s'est produite lors de la récupération des opérateurs :"
,
error
);
}
);
}
onOperateurChange
(
event
:
Event
):
void
{
const
selectElement
=
event
.
target
as
HTMLSelectElement
;
this
.
selectedOperateur
=
selectElement
.
value
;
console
.
log
(
'Selected opérateur ===>'
,
this
.
selectedOperateur
);
}
ngAfterViewInit
()
{
if
(
this
.
paginator
)
{
this
.
dataSource
.
paginator
=
this
.
paginator
;
}
}
applyFilter
(
event
:
Event
)
{
const
filterValue
=
(
event
.
target
as
HTMLInputElement
).
value
;
this
.
dataSource
.
filter
=
filterValue
.
trim
().
toLowerCase
();
}
getStatusClass
(
status
:
string
):
string
{
return
status
===
'valide'
?
'valid-status'
:
'invalid-status'
;
}
}
src/main.server.ts
0 → 100644
View file @
1481f24e
import
{
bootstrapApplication
}
from
'@angular/platform-browser'
;
import
{
AppComponent
}
from
'./app/app.component'
;
import
{
config
}
from
'./app/app.config.server'
;
const
bootstrap
=
()
=>
bootstrapApplication
(
AppComponent
,
config
);
export
default
bootstrap
;
tsconfig.server.json
0 → 100644
View file @
1481f24e
/*
To
learn
more
about
this
file
see
:
https
:
//angular.io/config/tsconfig.
*/
{
"extends"
:
"./tsconfig.app.json"
,
"compilerOptions"
:
{
"outDir"
:
"./out-tsc/server"
,
"types"
:
[
"node"
]
},
"files"
:
[
"src/main.server.ts"
,
"server.ts"
]
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment