Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
portal-apps-manage
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Registry
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
angular
portal-apps-manage
Commits
29b62b53
Commit
29b62b53
authored
Aug 29, 2025
by
Natthaphat
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
swal alert
parent
fb0cdc2c
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
454 additions
and
247 deletions
+454
-247
package-lock.json
package-lock.json
+141
-0
excel-list.component.ts
...rtal/set-excel-reports/excel-list/excel-list.component.ts
+2
-2
excel-list.component.html
...al/set-excel-reports/excel-list/excel-list.component.html
+28
-22
excel-list.component.ts
...rtal/set-excel-reports/excel-list/excel-list.component.ts
+206
-151
excel-report-toggle.component.html
...ts/excel-report-toggle/excel-report-toggle.component.html
+2
-2
excel-report-toggle.component.ts
...orts/excel-report-toggle/excel-report-toggle.component.ts
+74
-68
excel-report.service.ts
src/app/DPU/services/excel-report.service.ts
+1
-1
datagrid-syncfution.component.ts
src/app/datagrid-syncfution/datagrid-syncfution.component.ts
+0
-1
No files found.
package-lock.json
View file @
29b62b53
...
...
@@ -5088,6 +5088,7 @@
"version"
:
"2.2.2"
,
"resolved"
:
"https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz"
,
"integrity"
:
"sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"agent-base"
:
"^7.1.0"
,
...
...
@@ -5104,12 +5105,14 @@
"version"
:
"10.4.3"
,
"resolved"
:
"https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz"
,
"integrity"
:
"sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
},
"node_modules/@npmcli/fs"
:
{
"version"
:
"3.1.1"
,
"resolved"
:
"https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz"
,
"integrity"
:
"sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"semver"
:
"^7.3.5"
...
...
@@ -5122,6 +5125,7 @@
"version"
:
"5.0.8"
,
"resolved"
:
"https://registry.npmjs.org/@npmcli/git/-/git-5.0.8.tgz"
,
"integrity"
:
"sha512-liASfw5cqhjNW9UFd+ruwwdEf/lbOAQjLL2XY2dFW/bkJheXDYZgOyul/4gVvEV4BWkTXjYGmDqMw9uegdbJNQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"@npmcli/promise-spawn"
:
"^7.0.0"
,
...
...
@@ -5142,6 +5146,7 @@
"version"
:
"4.1.3"
,
"resolved"
:
"https://registry.npmjs.org/ini/-/ini-4.1.3.tgz"
,
"integrity"
:
"sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
...
...
@@ -5151,6 +5156,7 @@
"version"
:
"3.1.1"
,
"resolved"
:
"https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz"
,
"integrity"
:
"sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
">=16"
...
...
@@ -5160,12 +5166,14 @@
"version"
:
"10.4.3"
,
"resolved"
:
"https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz"
,
"integrity"
:
"sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
},
"node_modules/@npmcli/git/node_modules/proc-log"
:
{
"version"
:
"4.2.0"
,
"resolved"
:
"https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz"
,
"integrity"
:
"sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
...
...
@@ -5175,6 +5183,7 @@
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/which/-/which-4.0.0.tgz"
,
"integrity"
:
"sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"isexe"
:
"^3.1.1"
...
...
@@ -5190,6 +5199,7 @@
"version"
:
"2.1.0"
,
"resolved"
:
"https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz"
,
"integrity"
:
"sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"npm-bundled"
:
"^3.0.0"
,
...
...
@@ -5206,6 +5216,7 @@
"version"
:
"3.0.0"
,
"resolved"
:
"https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz"
,
"integrity"
:
"sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
...
...
@@ -5215,6 +5226,7 @@
"version"
:
"5.2.1"
,
"resolved"
:
"https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.2.1.tgz"
,
"integrity"
:
"sha512-f7zYC6kQautXHvNbLEWgD/uGu1+xCn9izgqBfgItWSx22U0ZDekxN08A1vM8cTxj/cRVe0Q94Ode+tdoYmIOOQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"@npmcli/git"
:
"^5.0.0"
,
...
...
@@ -5233,6 +5245,7 @@
"version"
:
"2.0.2"
,
"resolved"
:
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz"
,
"integrity"
:
"sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"balanced-match"
:
"^1.0.0"
...
...
@@ -5242,6 +5255,7 @@
"version"
:
"10.4.5"
,
"resolved"
:
"https://registry.npmjs.org/glob/-/glob-10.4.5.tgz"
,
"integrity"
:
"sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"foreground-child"
:
"^3.1.0"
,
...
...
@@ -5262,6 +5276,7 @@
"version"
:
"9.0.5"
,
"resolved"
:
"https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz"
,
"integrity"
:
"sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"brace-expansion"
:
"^2.0.1"
...
...
@@ -5277,6 +5292,7 @@
"version"
:
"4.2.0"
,
"resolved"
:
"https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz"
,
"integrity"
:
"sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
...
...
@@ -5286,6 +5302,7 @@
"version"
:
"7.0.2"
,
"resolved"
:
"https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.2.tgz"
,
"integrity"
:
"sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"which"
:
"^4.0.0"
...
...
@@ -5298,6 +5315,7 @@
"version"
:
"3.1.1"
,
"resolved"
:
"https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz"
,
"integrity"
:
"sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
">=16"
...
...
@@ -5307,6 +5325,7 @@
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/which/-/which-4.0.0.tgz"
,
"integrity"
:
"sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"isexe"
:
"^3.1.1"
...
...
@@ -5322,6 +5341,7 @@
"version"
:
"1.1.0"
,
"resolved"
:
"https://registry.npmjs.org/@npmcli/redact/-/redact-1.1.0.tgz"
,
"integrity"
:
"sha512-PfnWuOkQgu7gCbnSsAisaX7hKOdZ4wSAhAzH3/ph5dSGau52kCRrMMGbiSQLwyTZpgldkZ49b0brkOr1AzGBHQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
"^16.14.0 || >=18.0.0"
...
...
@@ -5331,6 +5351,7 @@
"version"
:
"7.0.4"
,
"resolved"
:
"https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.4.tgz"
,
"integrity"
:
"sha512-9ApYM/3+rBt9V80aYg6tZfzj3UWdiYyCt7gJUD1VJKvWF5nwKDSICXbYIQbspFTq6TOpbsEtIC0LArB8d9PFmg=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"@npmcli/node-gyp"
:
"^3.0.0"
,
...
...
@@ -5347,6 +5368,7 @@
"version"
:
"3.1.1"
,
"resolved"
:
"https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz"
,
"integrity"
:
"sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
">=16"
...
...
@@ -5356,6 +5378,7 @@
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/which/-/which-4.0.0.tgz"
,
"integrity"
:
"sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"isexe"
:
"^3.1.1"
...
...
@@ -6061,6 +6084,7 @@
"version"
:
"2.3.2"
,
"resolved"
:
"https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.3.2.tgz"
,
"integrity"
:
"sha512-wueKWDk70QixNLB363yHc2D2ItTgYiMTdPwK8D9dKQMR3ZQ0c35IxP5xnwQ8cNLoCgCRcHf14kE+CLIvNX1zmA=="
,
"dev"
:
true
,
"license"
:
"Apache-2.0"
,
"dependencies"
:
{
"@sigstore/protobuf-specs"
:
"^0.3.2"
...
...
@@ -6073,6 +6097,7 @@
"version"
:
"1.1.0"
,
"resolved"
:
"https://registry.npmjs.org/@sigstore/core/-/core-1.1.0.tgz"
,
"integrity"
:
"sha512-JzBqdVIyqm2FRQCulY6nbQzMpJJpSiJ8XXWMhtOX9eKgaXXpfNOF53lzQEjIydlStnd/eFtuC1dW4VYdD93oRg=="
,
"dev"
:
true
,
"license"
:
"Apache-2.0"
,
"engines"
:
{
"node"
:
"^16.14.0 || >=18.0.0"
...
...
@@ -6082,6 +6107,7 @@
"version"
:
"0.3.3"
,
"resolved"
:
"https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.3.tgz"
,
"integrity"
:
"sha512-RpacQhBlwpBWd7KEJsRKcBQalbV28fvkxwTOJIqhIuDysMMaJW47V4OqW30iJB9uRpqOSxxEAQFdr8tTattReQ=="
,
"dev"
:
true
,
"license"
:
"Apache-2.0"
,
"engines"
:
{
"node"
:
"^18.17.0 || >=20.5.0"
...
...
@@ -6091,6 +6117,7 @@
"version"
:
"2.3.2"
,
"resolved"
:
"https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.2.tgz"
,
"integrity"
:
"sha512-5Vz5dPVuunIIvC5vBb0APwo7qKA4G9yM48kPWJT+OEERs40md5GoUR1yedwpekWZ4m0Hhw44m6zU+ObsON+iDA=="
,
"dev"
:
true
,
"license"
:
"Apache-2.0"
,
"dependencies"
:
{
"@sigstore/bundle"
:
"^2.3.2"
,
...
...
@@ -6108,6 +6135,7 @@
"version"
:
"4.2.0"
,
"resolved"
:
"https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz"
,
"integrity"
:
"sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
...
...
@@ -6117,6 +6145,7 @@
"version"
:
"2.3.4"
,
"resolved"
:
"https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.4.tgz"
,
"integrity"
:
"sha512-44vtsveTPUpqhm9NCrbU8CWLe3Vck2HO1PNLw7RIajbB7xhtn5RBPm1VNSCMwqGYHhDsBJG8gDF0q4lgydsJvw=="
,
"dev"
:
true
,
"license"
:
"Apache-2.0"
,
"dependencies"
:
{
"@sigstore/protobuf-specs"
:
"^0.3.2"
,
...
...
@@ -6130,6 +6159,7 @@
"version"
:
"1.2.1"
,
"resolved"
:
"https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.1.tgz"
,
"integrity"
:
"sha512-8iKx79/F73DKbGfRf7+t4dqrc0bRr0thdPrxAtCKWRm/F0tG71i6O1rvlnScncJLLBZHn3h8M3c1BSUAb9yu8g=="
,
"dev"
:
true
,
"license"
:
"Apache-2.0"
,
"dependencies"
:
{
"@sigstore/bundle"
:
"^2.3.2"
,
...
...
@@ -6587,6 +6617,7 @@
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz"
,
"integrity"
:
"sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
"^16.14.0 || >=18.0.0"
...
...
@@ -6596,6 +6627,7 @@
"version"
:
"2.0.1"
,
"resolved"
:
"https://registry.npmjs.org/@tufjs/models/-/models-2.0.1.tgz"
,
"integrity"
:
"sha512-92F7/SFyufn4DXsha9+QfKnN03JGqtMFMXgSHbZOo8JG59WkTni7UzAouNQDf7AuP9OAMxVOPQcqG3sB7w+kkg=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"@tufjs/canonical-json"
:
"2.0.0"
,
...
...
@@ -6609,6 +6641,7 @@
"version"
:
"2.0.2"
,
"resolved"
:
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz"
,
"integrity"
:
"sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"balanced-match"
:
"^1.0.0"
...
...
@@ -6618,6 +6651,7 @@
"version"
:
"9.0.5"
,
"resolved"
:
"https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz"
,
"integrity"
:
"sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"brace-expansion"
:
"^2.0.1"
...
...
@@ -7204,6 +7238,7 @@
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz"
,
"integrity"
:
"sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
...
...
@@ -7289,6 +7324,7 @@
"version"
:
"7.1.4"
,
"resolved"
:
"https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz"
,
"integrity"
:
"sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">= 14"
...
...
@@ -7298,6 +7334,7 @@
"version"
:
"3.1.0"
,
"resolved"
:
"https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz"
,
"integrity"
:
"sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"clean-stack"
:
"^2.0.0"
,
...
...
@@ -7807,6 +7844,7 @@
"version"
:
"1.1.12"
,
"resolved"
:
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz"
,
"integrity"
:
"sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"balanced-match"
:
"^1.0.0"
,
...
...
@@ -7902,6 +7940,7 @@
"version"
:
"18.0.4"
,
"resolved"
:
"https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz"
,
"integrity"
:
"sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"@npmcli/fs"
:
"^3.1.0"
,
...
...
@@ -7925,6 +7964,7 @@
"version"
:
"2.0.2"
,
"resolved"
:
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz"
,
"integrity"
:
"sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"balanced-match"
:
"^1.0.0"
...
...
@@ -7934,6 +7974,7 @@
"version"
:
"10.4.5"
,
"resolved"
:
"https://registry.npmjs.org/glob/-/glob-10.4.5.tgz"
,
"integrity"
:
"sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"foreground-child"
:
"^3.1.0"
,
...
...
@@ -7954,12 +7995,14 @@
"version"
:
"10.4.3"
,
"resolved"
:
"https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz"
,
"integrity"
:
"sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
},
"node_modules/cacache/node_modules/minimatch"
:
{
"version"
:
"9.0.5"
,
"resolved"
:
"https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz"
,
"integrity"
:
"sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"brace-expansion"
:
"^2.0.1"
...
...
@@ -8137,6 +8180,7 @@
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz"
,
"integrity"
:
"sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
">=10"
...
...
@@ -8156,6 +8200,7 @@
"version"
:
"2.2.0"
,
"resolved"
:
"https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz"
,
"integrity"
:
"sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">=6"
...
...
@@ -8389,6 +8434,7 @@
"version"
:
"0.0.1"
,
"resolved"
:
"https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
,
"integrity"
:
"sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
,
"dev"
:
true
,
"license"
:
"MIT"
},
"node_modules/connect"
:
{
...
...
@@ -9297,6 +9343,7 @@
"version"
:
"2.2.1"
,
"resolved"
:
"https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz"
,
"integrity"
:
"sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">=6"
...
...
@@ -9306,6 +9353,7 @@
"version"
:
"2.0.3"
,
"resolved"
:
"https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz"
,
"integrity"
:
"sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA=="
,
"dev"
:
true
,
"license"
:
"MIT"
},
"node_modules/errno"
:
{
...
...
@@ -9579,6 +9627,7 @@
"version"
:
"3.1.2"
,
"resolved"
:
"https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.2.tgz"
,
"integrity"
:
"sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA=="
,
"dev"
:
true
,
"license"
:
"Apache-2.0"
},
"node_modules/express"
:
{
...
...
@@ -10125,6 +10174,7 @@
"version"
:
"3.0.3"
,
"resolved"
:
"https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz"
,
"integrity"
:
"sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"minipass"
:
"^7.0.3"
...
...
@@ -10144,6 +10194,7 @@
"version"
:
"1.0.0"
,
"resolved"
:
"https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"
,
"integrity"
:
"sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
,
"dev"
:
true
,
"license"
:
"ISC"
},
"node_modules/fsevents"
:
{
...
...
@@ -10269,6 +10320,7 @@
"resolved"
:
"https://registry.npmjs.org/glob/-/glob-7.2.3.tgz"
,
"integrity"
:
"sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q=="
,
"deprecated"
:
"Glob versions prior to v9 are no longer supported"
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"fs.realpath"
:
"^1.0.0"
,
...
...
@@ -10413,6 +10465,7 @@
"version"
:
"7.0.2"
,
"resolved"
:
"https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz"
,
"integrity"
:
"sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"lru-cache"
:
"^10.0.1"
...
...
@@ -10425,6 +10478,7 @@
"version"
:
"10.4.3"
,
"resolved"
:
"https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz"
,
"integrity"
:
"sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
},
"node_modules/hpack.js"
:
{
...
...
@@ -10521,6 +10575,7 @@
"version"
:
"4.2.0"
,
"resolved"
:
"https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz"
,
"integrity"
:
"sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ=="
,
"dev"
:
true
,
"license"
:
"BSD-2-Clause"
},
"node_modules/http-deceiver"
:
{
...
...
@@ -10582,6 +10637,7 @@
"version"
:
"7.0.2"
,
"resolved"
:
"https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz"
,
"integrity"
:
"sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"agent-base"
:
"^7.1.0"
,
...
...
@@ -10620,6 +10676,7 @@
"version"
:
"7.0.4"
,
"resolved"
:
"https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz"
,
"integrity"
:
"sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"agent-base"
:
"^7.0.2"
,
...
...
@@ -10713,6 +10770,7 @@
"version"
:
"6.0.5"
,
"resolved"
:
"https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.5.tgz"
,
"integrity"
:
"sha512-VuuG0wCnjhnylG1ABXT3dAuIpTNDs/G8jlpmwXY03fXoXy/8ZK8/T+hMzt8L4WnrLCJgdybqgPagnF/f97cg3A=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"minimatch"
:
"^9.0.0"
...
...
@@ -10725,6 +10783,7 @@
"version"
:
"2.0.2"
,
"resolved"
:
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz"
,
"integrity"
:
"sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"balanced-match"
:
"^1.0.0"
...
...
@@ -10734,6 +10793,7 @@
"version"
:
"9.0.5"
,
"resolved"
:
"https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz"
,
"integrity"
:
"sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"brace-expansion"
:
"^2.0.1"
...
...
@@ -10796,6 +10856,7 @@
"version"
:
"0.1.4"
,
"resolved"
:
"https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz"
,
"integrity"
:
"sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">=0.8.19"
...
...
@@ -10805,6 +10866,7 @@
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz"
,
"integrity"
:
"sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">=8"
...
...
@@ -10815,6 +10877,7 @@
"resolved"
:
"https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz"
,
"integrity"
:
"sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA=="
,
"deprecated"
:
"This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful."
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"once"
:
"^1.3.0"
,
...
...
@@ -10831,6 +10894,7 @@
"version"
:
"4.1.2"
,
"resolved"
:
"https://registry.npmjs.org/ini/-/ini-4.1.2.tgz"
,
"integrity"
:
"sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
...
...
@@ -10880,6 +10944,7 @@
"version"
:
"10.0.1"
,
"resolved"
:
"https://registry.npmjs.org/ip-address/-/ip-address-10.0.1.tgz"
,
"integrity"
:
"sha512-NWv9YLW4PoW2B7xtzaS3NCot75m6nK7Icdv0o3lfMceJVRfSoQwqD4wEH5rLwoKJwUiZ/rfpiVBhnaF0FK4HoA=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">= 12"
...
...
@@ -11019,6 +11084,7 @@
"version"
:
"1.0.1"
,
"resolved"
:
"https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz"
,
"integrity"
:
"sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ=="
,
"dev"
:
true
,
"license"
:
"MIT"
},
"node_modules/is-number"
:
{
...
...
@@ -11348,6 +11414,7 @@
"version"
:
"3.0.2"
,
"resolved"
:
"https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz"
,
"integrity"
:
"sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
...
...
@@ -11390,6 +11457,7 @@
"version"
:
"1.3.1"
,
"resolved"
:
"https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz"
,
"integrity"
:
"sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg=="
,
"dev"
:
true
,
"engines"
:
[
"node >= 0.2.0"
],
...
...
@@ -11966,6 +12034,7 @@
"version"
:
"13.0.1"
,
"resolved"
:
"https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz"
,
"integrity"
:
"sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"@npmcli/agent"
:
"^2.0.0"
,
...
...
@@ -11989,6 +12058,7 @@
"version"
:
"4.2.0"
,
"resolved"
:
"https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz"
,
"integrity"
:
"sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
...
...
@@ -12173,6 +12243,7 @@
"version"
:
"3.1.2"
,
"resolved"
:
"https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz"
,
"integrity"
:
"sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"brace-expansion"
:
"^1.1.7"
...
...
@@ -12204,6 +12275,7 @@
"version"
:
"2.0.1"
,
"resolved"
:
"https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz"
,
"integrity"
:
"sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"minipass"
:
"^7.0.3"
...
...
@@ -12216,6 +12288,7 @@
"version"
:
"3.0.5"
,
"resolved"
:
"https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz"
,
"integrity"
:
"sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"minipass"
:
"^7.0.3"
,
...
...
@@ -12233,6 +12306,7 @@
"version"
:
"1.0.5"
,
"resolved"
:
"https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz"
,
"integrity"
:
"sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"minipass"
:
"^3.0.0"
...
...
@@ -12245,6 +12319,7 @@
"version"
:
"3.3.6"
,
"resolved"
:
"https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz"
,
"integrity"
:
"sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"yallist"
:
"^4.0.0"
...
...
@@ -12257,12 +12332,14 @@
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz"
,
"integrity"
:
"sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
,
"dev"
:
true
,
"license"
:
"ISC"
},
"node_modules/minipass-json-stream"
:
{
"version"
:
"1.0.2"
,
"resolved"
:
"https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.2.tgz"
,
"integrity"
:
"sha512-myxeeTm57lYs8pH2nxPzmEEg8DGIgW+9mv6D4JZD2pa81I/OBjeU7PtICXV6c9eRGTA5JMDsuIPUZRCyBMYNhg=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"jsonparse"
:
"^1.3.1"
,
...
...
@@ -12273,6 +12350,7 @@
"version"
:
"3.3.6"
,
"resolved"
:
"https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz"
,
"integrity"
:
"sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"yallist"
:
"^4.0.0"
...
...
@@ -12285,12 +12363,14 @@
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz"
,
"integrity"
:
"sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
,
"dev"
:
true
,
"license"
:
"ISC"
},
"node_modules/minipass-pipeline"
:
{
"version"
:
"1.2.4"
,
"resolved"
:
"https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz"
,
"integrity"
:
"sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"minipass"
:
"^3.0.0"
...
...
@@ -12303,6 +12383,7 @@
"version"
:
"3.3.6"
,
"resolved"
:
"https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz"
,
"integrity"
:
"sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"yallist"
:
"^4.0.0"
...
...
@@ -12315,12 +12396,14 @@
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz"
,
"integrity"
:
"sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
,
"dev"
:
true
,
"license"
:
"ISC"
},
"node_modules/minipass-sized"
:
{
"version"
:
"1.0.3"
,
"resolved"
:
"https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz"
,
"integrity"
:
"sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"minipass"
:
"^3.0.0"
...
...
@@ -12333,6 +12416,7 @@
"version"
:
"3.3.6"
,
"resolved"
:
"https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz"
,
"integrity"
:
"sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"yallist"
:
"^4.0.0"
...
...
@@ -12345,12 +12429,14 @@
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz"
,
"integrity"
:
"sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
,
"dev"
:
true
,
"license"
:
"ISC"
},
"node_modules/minizlib"
:
{
"version"
:
"2.1.2"
,
"resolved"
:
"https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz"
,
"integrity"
:
"sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"minipass"
:
"^3.0.0"
,
...
...
@@ -12364,6 +12450,7 @@
"version"
:
"3.3.6"
,
"resolved"
:
"https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz"
,
"integrity"
:
"sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"yallist"
:
"^4.0.0"
...
...
@@ -12376,6 +12463,7 @@
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz"
,
"integrity"
:
"sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
,
"dev"
:
true
,
"license"
:
"ISC"
},
"node_modules/mkdirp"
:
{
...
...
@@ -12505,6 +12593,7 @@
"version"
:
"0.6.4"
,
"resolved"
:
"https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz"
,
"integrity"
:
"sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">= 0.6"
...
...
@@ -12876,6 +12965,7 @@
"version"
:
"10.3.1"
,
"resolved"
:
"https://registry.npmjs.org/node-gyp/-/node-gyp-10.3.1.tgz"
,
"integrity"
:
"sha512-Pp3nFHBThHzVtNY7U6JfPjvT/DTE8+o/4xKsLQtBoU+j2HLsGlhcfzflAoUreaJbNmYnX+LlLi0qjV8kpyO6xQ=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"env-paths"
:
"^2.2.0"
,
...
...
@@ -12913,6 +13003,7 @@
"version"
:
"2.0.2"
,
"resolved"
:
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz"
,
"integrity"
:
"sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"balanced-match"
:
"^1.0.0"
...
...
@@ -12922,6 +13013,7 @@
"version"
:
"10.4.5"
,
"resolved"
:
"https://registry.npmjs.org/glob/-/glob-10.4.5.tgz"
,
"integrity"
:
"sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"foreground-child"
:
"^3.1.0"
,
...
...
@@ -12942,6 +13034,7 @@
"version"
:
"3.1.1"
,
"resolved"
:
"https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz"
,
"integrity"
:
"sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
">=16"
...
...
@@ -12951,6 +13044,7 @@
"version"
:
"9.0.5"
,
"resolved"
:
"https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz"
,
"integrity"
:
"sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"brace-expansion"
:
"^2.0.1"
...
...
@@ -12966,6 +13060,7 @@
"version"
:
"4.2.0"
,
"resolved"
:
"https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz"
,
"integrity"
:
"sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
...
...
@@ -12975,6 +13070,7 @@
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/which/-/which-4.0.0.tgz"
,
"integrity"
:
"sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"isexe"
:
"^3.1.1"
...
...
@@ -12996,6 +13092,7 @@
"version"
:
"7.2.1"
,
"resolved"
:
"https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz"
,
"integrity"
:
"sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"abbrev"
:
"^2.0.0"
...
...
@@ -13011,6 +13108,7 @@
"version"
:
"6.0.2"
,
"resolved"
:
"https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz"
,
"integrity"
:
"sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g=="
,
"dev"
:
true
,
"license"
:
"BSD-2-Clause"
,
"dependencies"
:
{
"hosted-git-info"
:
"^7.0.0"
,
...
...
@@ -13210,6 +13308,7 @@
"version"
:
"3.0.1"
,
"resolved"
:
"https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.1.tgz"
,
"integrity"
:
"sha512-+AvaheE/ww1JEwRHOrn4WHNzOxGtVp+adrg2AeZS/7KuxGUYFuBta98wYpfHBbJp6Tg6j1NKSEVHNcfZzJHQwQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"npm-normalize-package-bin"
:
"^3.0.0"
...
...
@@ -13222,6 +13321,7 @@
"version"
:
"6.3.0"
,
"resolved"
:
"https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz"
,
"integrity"
:
"sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw=="
,
"dev"
:
true
,
"license"
:
"BSD-2-Clause"
,
"dependencies"
:
{
"semver"
:
"^7.1.1"
...
...
@@ -13234,6 +13334,7 @@
"version"
:
"3.0.1"
,
"resolved"
:
"https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz"
,
"integrity"
:
"sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
...
...
@@ -13243,6 +13344,7 @@
"version"
:
"11.0.1"
,
"resolved"
:
"https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.1.tgz"
,
"integrity"
:
"sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"hosted-git-info"
:
"^7.0.0"
,
...
...
@@ -13258,6 +13360,7 @@
"version"
:
"8.0.2"
,
"resolved"
:
"https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz"
,
"integrity"
:
"sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"ignore-walk"
:
"^6.0.4"
...
...
@@ -13270,6 +13373,7 @@
"version"
:
"9.0.0"
,
"resolved"
:
"https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.0.tgz"
,
"integrity"
:
"sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"npm-install-checks"
:
"^6.0.0"
,
...
...
@@ -13285,6 +13389,7 @@
"version"
:
"16.2.1"
,
"resolved"
:
"https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.2.1.tgz"
,
"integrity"
:
"sha512-8l+7jxhim55S85fjiDGJ1rZXBWGtRLi1OSb4Z3BPLObPuIaeKRlPRiYMSHU4/81ck3t71Z+UwDDl47gcpmfQQA=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"@npmcli/redact"
:
"^1.1.0"
,
...
...
@@ -13304,6 +13409,7 @@
"version"
:
"4.2.0"
,
"resolved"
:
"https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz"
,
"integrity"
:
"sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
...
...
@@ -15739,6 +15845,7 @@
"version"
:
"1.4.0"
,
"resolved"
:
"https://registry.npmjs.org/once/-/once-1.4.0.tgz"
,
"integrity"
:
"sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"wrappy"
:
"1"
...
...
@@ -15857,6 +15964,7 @@
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz"
,
"integrity"
:
"sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"aggregate-error"
:
"^3.0.0"
...
...
@@ -15912,6 +16020,7 @@
"version"
:
"17.0.6"
,
"resolved"
:
"https://registry.npmjs.org/pacote/-/pacote-17.0.6.tgz"
,
"integrity"
:
"sha512-cJKrW21VRE8vVTRskJo78c/RCvwJCn1f4qgfxL4w77SOWrTCRcmfkYHlHtS0gqpgjv3zhXflRtgsrUCX5xwNnQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"@npmcli/git"
:
"^5.0.0"
,
...
...
@@ -16073,6 +16182,7 @@
"version"
:
"1.0.1"
,
"resolved"
:
"https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz"
,
"integrity"
:
"sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">=0.10.0"
...
...
@@ -16661,6 +16771,7 @@
"version"
:
"3.0.0"
,
"resolved"
:
"https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz"
,
"integrity"
:
"sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
...
...
@@ -16677,6 +16788,7 @@
"version"
:
"1.0.1"
,
"resolved"
:
"https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz"
,
"integrity"
:
"sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g=="
,
"dev"
:
true
,
"license"
:
"ISC"
},
"node_modules/promise-polyfill"
:
{
...
...
@@ -16689,6 +16801,7 @@
"version"
:
"2.0.1"
,
"resolved"
:
"https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz"
,
"integrity"
:
"sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"err-code"
:
"^2.0.2"
,
...
...
@@ -17006,6 +17119,7 @@
"resolved"
:
"https://registry.npmjs.org/read-package-json/-/read-package-json-7.0.1.tgz"
,
"integrity"
:
"sha512-8PcDiZ8DXUjLf687Ol4BR8Bpm2umR7vhoZOzNRt+uxD9GpBh/K+CAAALVIiYFknmvlmyg7hM7BSNUXPaCCqd0Q=="
,
"deprecated"
:
"This package is no longer supported. Please use @npmcli/package-json instead."
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"glob"
:
"^10.2.2"
,
...
...
@@ -17021,6 +17135,7 @@
"version"
:
"3.0.2"
,
"resolved"
:
"https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz"
,
"integrity"
:
"sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"json-parse-even-better-errors"
:
"^3.0.0"
,
...
...
@@ -17034,6 +17149,7 @@
"version"
:
"2.0.2"
,
"resolved"
:
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz"
,
"integrity"
:
"sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"balanced-match"
:
"^1.0.0"
...
...
@@ -17043,6 +17159,7 @@
"version"
:
"10.4.5"
,
"resolved"
:
"https://registry.npmjs.org/glob/-/glob-10.4.5.tgz"
,
"integrity"
:
"sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"foreground-child"
:
"^3.1.0"
,
...
...
@@ -17063,6 +17180,7 @@
"version"
:
"9.0.5"
,
"resolved"
:
"https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz"
,
"integrity"
:
"sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"brace-expansion"
:
"^2.0.1"
...
...
@@ -17334,6 +17452,7 @@
"version"
:
"0.12.0"
,
"resolved"
:
"https://registry.npmjs.org/retry/-/retry-0.12.0.tgz"
,
"integrity"
:
"sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">= 4"
...
...
@@ -18056,6 +18175,7 @@
"version"
:
"2.3.1"
,
"resolved"
:
"https://registry.npmjs.org/sigstore/-/sigstore-2.3.1.tgz"
,
"integrity"
:
"sha512-8G+/XDU8wNsJOQS5ysDVO0Etg9/2uA5gR9l4ZwijjlwxBcrU6RPfwi2+jJmbP+Ap1Hlp/nVAaEO4Fj22/SL2gQ=="
,
"dev"
:
true
,
"license"
:
"Apache-2.0"
,
"dependencies"
:
{
"@sigstore/bundle"
:
"^2.3.2"
,
...
...
@@ -18125,6 +18245,7 @@
"version"
:
"4.2.0"
,
"resolved"
:
"https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz"
,
"integrity"
:
"sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">= 6.0.0"
,
...
...
@@ -18245,6 +18366,7 @@
"version"
:
"2.8.7"
,
"resolved"
:
"https://registry.npmjs.org/socks/-/socks-2.8.7.tgz"
,
"integrity"
:
"sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"ip-address"
:
"^10.0.1"
,
...
...
@@ -18259,6 +18381,7 @@
"version"
:
"8.0.5"
,
"resolved"
:
"https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz"
,
"integrity"
:
"sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"agent-base"
:
"^7.1.2"
,
...
...
@@ -18346,6 +18469,7 @@
"version"
:
"3.2.0"
,
"resolved"
:
"https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz"
,
"integrity"
:
"sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA=="
,
"dev"
:
true
,
"license"
:
"Apache-2.0"
,
"dependencies"
:
{
"spdx-expression-parse"
:
"^3.0.0"
,
...
...
@@ -18356,12 +18480,14 @@
"version"
:
"2.5.0"
,
"resolved"
:
"https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz"
,
"integrity"
:
"sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w=="
,
"dev"
:
true
,
"license"
:
"CC-BY-3.0"
},
"node_modules/spdx-expression-parse"
:
{
"version"
:
"3.0.1"
,
"resolved"
:
"https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz"
,
"integrity"
:
"sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"spdx-exceptions"
:
"^2.1.0"
,
...
...
@@ -18372,6 +18498,7 @@
"version"
:
"3.0.22"
,
"resolved"
:
"https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.22.tgz"
,
"integrity"
:
"sha512-4PRT4nh1EImPbt2jASOKHX7PB7I+e4IWNLvkKFDxNhJlfjbYlleYQh285Z/3mPTHSAK/AvdMmw5BNNuYH8ShgQ=="
,
"dev"
:
true
,
"license"
:
"CC0-1.0"
},
"node_modules/spdy"
:
{
...
...
@@ -18423,6 +18550,7 @@
"version"
:
"10.0.6"
,
"resolved"
:
"https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz"
,
"integrity"
:
"sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"minipass"
:
"^7.0.3"
...
...
@@ -18821,6 +18949,7 @@
"version"
:
"6.2.1"
,
"resolved"
:
"https://registry.npmjs.org/tar/-/tar-6.2.1.tgz"
,
"integrity"
:
"sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"chownr"
:
"^2.0.0"
,
...
...
@@ -18838,6 +18967,7 @@
"version"
:
"2.1.0"
,
"resolved"
:
"https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz"
,
"integrity"
:
"sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"minipass"
:
"^3.0.0"
...
...
@@ -18850,6 +18980,7 @@
"version"
:
"3.3.6"
,
"resolved"
:
"https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz"
,
"integrity"
:
"sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"yallist"
:
"^4.0.0"
...
...
@@ -18862,6 +18993,7 @@
"version"
:
"5.0.0"
,
"resolved"
:
"https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz"
,
"integrity"
:
"sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
">=8"
...
...
@@ -18871,6 +19003,7 @@
"version"
:
"1.0.4"
,
"resolved"
:
"https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz"
,
"integrity"
:
"sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"bin"
:
{
"mkdirp"
:
"bin/cmd.js"
...
...
@@ -18883,6 +19016,7 @@
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz"
,
"integrity"
:
"sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
,
"dev"
:
true
,
"license"
:
"ISC"
},
"node_modules/terser"
:
{
...
...
@@ -19137,6 +19271,7 @@
"version"
:
"2.2.1"
,
"resolved"
:
"https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz"
,
"integrity"
:
"sha512-GwIJau9XaA8nLVbUXsN3IlFi7WmQ48gBUrl3FTkkL/XLu/POhBzfmX9hd33FNMX1qAsfl6ozO1iMmW9NC8YniA=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"@tufjs/models"
:
"2.0.1"
,
...
...
@@ -19283,6 +19418,7 @@
"version"
:
"3.0.0"
,
"resolved"
:
"https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz"
,
"integrity"
:
"sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"unique-slug"
:
"^4.0.0"
...
...
@@ -19295,6 +19431,7 @@
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz"
,
"integrity"
:
"sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"imurmurhash"
:
"^0.1.4"
...
...
@@ -19400,6 +19537,7 @@
"version"
:
"3.0.4"
,
"resolved"
:
"https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz"
,
"integrity"
:
"sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew=="
,
"dev"
:
true
,
"license"
:
"Apache-2.0"
,
"dependencies"
:
{
"spdx-correct"
:
"^3.0.0"
,
...
...
@@ -19410,6 +19548,7 @@
"version"
:
"5.0.1"
,
"resolved"
:
"https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz"
,
"integrity"
:
"sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
"^14.17.0 || ^16.13.0 || >=18.0.0"
...
...
@@ -20288,6 +20427,7 @@
"version"
:
"1.3.1"
,
"resolved"
:
"https://registry.npmjs.org/which/-/which-1.3.1.tgz"
,
"integrity"
:
"sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"dependencies"
:
{
"isexe"
:
"^2.0.0"
...
...
@@ -20384,6 +20524,7 @@
"version"
:
"1.0.2"
,
"resolved"
:
"https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz"
,
"integrity"
:
"sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
},
"node_modules/ws"
:
{
...
...
src/app/DPU/common/myportal/set-excel-reports/excel-list/excel-list.component.ts
View file @
29b62b53
...
...
@@ -9,8 +9,6 @@ import { ModuleModel, MyModuleModel } from '../../../../models/module.model';
import
{
ExcelPortalGroupModel
,
ExcelPortalModel
,
ExcelPortalTagsModel
,
MyExcelPortalGroupModel
,
MyExcelPortalModel
,
MyExcelPortalTagsModel
}
from
'../../../../models/excel-portal.model'
;
import
{
ExcelReportService
}
from
'../../../../services/excel-report.service'
;
import
{
CustomCubeService
}
from
'../../../../services/custom-cube.service'
;
import
{
AlertModalComponent
}
from
'../../../../../alert-modal/alert-modal.component'
;
import
{
ConfirmModalComponent
}
from
'../../../../../confirm-modal/confirm-modal.component'
;
import
{
CommonModule
}
from
'@angular/common'
;
import
{
TranslateModule
}
from
'@ngx-translate/core'
;
import
{
NgSelectModule
}
from
'@ng-select/ng-select'
;
...
...
@@ -27,6 +25,8 @@ import Swal from 'sweetalert2';
import
{
DatasourceTableModel
,
MyDatasourceTableModel
}
from
'../../../../models/datasource-table.model'
;
import
{
DatasourseTableService
}
from
'../../../../services/datasourse-table.service'
;
import
swal
from
'sweetalert'
;
import
{
ConfirmModalComponent
}
from
'../../confirm-modal/confirm-modal.component'
;
import
{
AlertModalComponent
}
from
'../../alert-modal/alert-modal.component'
;
export
interface
ModalDetail
{
text
:
{
cardHead
:
string
,
search
:
string
[],
tableHead
:
string
[]
}
}
...
...
src/app/DPU/myskill-x/myportal/set-excel-reports/excel-list/excel-list.component.html
View file @
29b62b53
...
...
@@ -110,7 +110,7 @@
(
click
)="
openTemplate
.
set
(
items
.
templateId
,
true
)"
(
mouseenter
)="
buttonHover
.
set
(
items
.
templateId
,
true
)"
(
mouseleave
)="
buttonHover
.
set
(
items
.
templateId
,
false
)"
class=
"ti-btn ti-btn-wave !gap-0 !m-0 bg-info/10 text-info hover:bg-info hover:text-white hover:border-info"
><i
class=
"ti-btn ti-btn-wave !gap-0 !m-0 bg-info/10 text-info hover:bg-info hover:text-white hover:border-info
cursor-pointer
"
><i
class=
"ri-arrow-right-line"
></i></a>
</ng-container>
...
...
@@ -119,7 +119,7 @@
openTemplate
.
set
(
items
.
templateId
,
false
)"
(
mouseenter
)="
buttonHover
.
set
(
items
.
templateId
+'
close
',!
buttonHover
.
get
(
items
.
templateId
))"
(
mouseleave
)="
buttonHover
.
clear
()"
class=
"ti-btn ti-btn-wave !gap-0 !m-0 bg-info/10 text-info hover:bg-info hover:text-white hover:border-info"
><i
class=
"ti-btn ti-btn-wave !gap-0 !m-0 bg-info/10 text-info hover:bg-info hover:text-white hover:border-info
cursor-pointer
"
><i
class=
"ri-arrow-down-line"
></i></a>
</ng-container>
...
...
@@ -128,13 +128,13 @@
(
click
)="
openAddChildModal
(
items
,'
add
')"
(
mouseenter
)="
buttonHover
.
set
(
items
.
templateId
+'
add
',!
buttonHover
.
get
(
items
.
templateId
))"
(
mouseleave
)="
buttonHover
.
clear
()"
class=
"ti-btn ti-btn-wave product-btn !gap-0 !m-0 bg-success/10 text-success hover:bg-success hover:text-white hover:border-success"
><i
class=
"ti-btn ti-btn-wave product-btn !gap-0 !m-0 bg-success/10 text-success hover:bg-success hover:text-white hover:border-success
cursor-pointer
"
><i
class=
"ri-save-2-line"
></i></a>
<a
aria-label=
"anchor"
title=
"ลบ"
(
click
)="
deleteTemplate
(
items
)"
(
mouseenter
)="
buttonHover
.
set
(
items
.
templateId
+'
delete
',!
buttonHover
.
get
(
items
.
templateId
))"
(
mouseleave
)="
buttonHover
.
clear
()"
class=
"ti-btn ti-btn-wave product-btn !gap-0 !m-0 bg-danger/10 text-danger hover:bg-danger hover:text-white hover:border-danger"
><i
class=
"ti-btn ti-btn-wave product-btn !gap-0 !m-0 bg-danger/10 text-danger hover:bg-danger hover:text-white hover:border-danger
cursor-pointer
"
><i
class=
"ri-delete-bin-line"
></i></a>
</td>
</tr>
...
...
@@ -188,21 +188,21 @@
(
mouseenter
)="
buttonHover
.
set
(
item
.
fileName
+'
copy
',!
buttonHover
.
get
(
item
.
fileName
))"
(
mouseleave
)="
buttonHover
.
clear
()"
(
click
)="
downloadTemplateFile
(
item
)"
class=
"ti-btn ti-btn-wave !gap-0 !m-0 bg-info/10 text-info hover:bg-info hover:text-white hover:border-info"
><i
class=
"ti-btn ti-btn-wave !gap-0 !m-0 bg-info/10 text-info hover:bg-info hover:text-white hover:border-info
cursor-pointer
"
><i
class=
"ri-file-download-line"
></i></a>
<a
aria-label=
"anchor"
title=
"Print"
(
mouseenter
)="
buttonHover
.
set
(
item
.
fileName
+'
print
',!
buttonHover
.
get
(
item
.
fileName
))"
(
mouseleave
)="
buttonHover
.
clear
()"
(
click
)="
openPrintModal
(
item
);"
class=
"ti-btn ti-btn-wave product-btn !gap-0 !m-0 bg-warning/10 text-warning hover:bg-warning hover:text-white hover:border-warning"
><i
class=
"ti-btn ti-btn-wave product-btn !gap-0 !m-0 bg-warning/10 text-warning hover:bg-warning hover:text-white hover:border-warning
cursor-pointer
"
><i
class=
"ri-printer-line"
></i></a>
<a
aria-label=
"anchor"
title=
"ลบ"
(
mouseenter
)="
buttonHover
.
set
(
item
.
fileName
+'
delete
',!
buttonHover
.
get
(
item
.
fileName
))"
(
mouseleave
)="
buttonHover
.
clear
()"
(
click
)="
deleteTemplateFile
(
item
)"
class=
"ti-btn ti-btn-wave product-btn !gap-0 !m-0 bg-danger/10 text-danger hover:bg-danger hover:text-white hover:border-danger"
><i
class=
"ti-btn ti-btn-wave product-btn !gap-0 !m-0 bg-danger/10 text-danger hover:bg-danger hover:text-white hover:border-danger
cursor-pointer
"
><i
class=
"ri-delete-bin-line"
></i></a>
</td>
</ng-container>
...
...
@@ -346,7 +346,8 @@
[(
ngModel
)]="
bodyTemplate
.
data
.
companyId
"
>
<option
style=
"color: red"
[
class
.
d-none
]="
bodyTemplate
.
data
.
companyId=
=''"
[
value
]="''"
>
{{bodyTemplate.data.companyId!=''?'ยกเลิก':''}}
</option>
<option
*
ngFor=
"let item of itemsList"
[
ngValue
]="
item
.
companyId
"
>
{{item.companyName}}
</option>
<option
*
ngFor=
"let item of itemsList"
[
ngValue
]="
item
.
companyId
"
>
{{item.companyName}}
</option>
</select>
</div>
...
...
@@ -426,15 +427,17 @@
</label>
</div>
<div
*
ngIf=
"templateFileType=='upload'"
class=
"flex items-center gap-2 truncate"
>
<input
#
fileInput
type=
"file"
accept=
".xlsx
"
(
change
)="
onFileSelected
($
event
)"
<div
*
ngIf=
"templateFileType=='upload'"
class=
"flex items-center gap-2
col-span-2
truncate"
>
<input
#
fileInput
type=
"file"
accept=
".xlsx
,.xls,.xlsm"
(
change
)="
onFileSelected
($
event
)"
style=
"display: none;"
/>
<button
(
click
)="
fileInput
.
click
()"
class=
"px-2 py-1 border border-black rounded bg-white hover:bg-gray-100 shadow-sm font-bold whitespace-nowrap"
>
เลือกไฟล์
</button>
<span
*
ngIf=
"!templateFileName"
style=
"color: red"
>
รองรับเฉพาะไฟล์ Excel (.xls, .xlsx, .xlsm) เท่านั้น
</span>
<span
*
ngIf=
"templateFileName"
class=
"truncate block max-w-[200px] overflow-hidden whitespace-nowrap text-ellipsis"
>
{{ templateFileName }}
...
...
@@ -629,35 +632,35 @@
(
click
)="
openVideoModal
(
item
.
link1
)"
><i
class=
"ri-search-line font-semibold align-middle"
></i></button>
</td>
<td
class=
"cursor-pointer"
(
click
)="
modal
.
close
(
item
)"
<td
class=
"cursor-pointer"
(
click
)="
closeModalexcel_portal
(
item
)"
style=
"white-space: normal !important;word-break: break-word;"
>
{{item.thName}}
</td>
<td
class=
"cursor-pointer"
(
click
)="
modal
.
close
(
item
)"
<td
class=
"cursor-pointer"
(
click
)="
closeModalexcel_portal
(
item
)"
style=
"white-space: normal !important;word-break: break-word;"
>
{{item.thDesc}}
</td>
<td
class=
"cursor-pointer"
(
click
)="
modal
.
close
(
item
)"
<td
class=
"cursor-pointer"
(
click
)="
closeModalexcel_portal
(
item
)"
style=
"white-space: normal !important;word-break: break-word;"
>
{{item.dbSupport}}
</td>
<td
class=
"cursor-pointer"
(
click
)="
modal
.
close
(
item
)"
<td
class=
"cursor-pointer"
(
click
)="
closeModalexcel_portal
(
item
)"
style=
"white-space: normal !important;word-break: break-word;"
>
{{item.isPivot}}
</td>
<td
class=
"cursor-pointer"
(
click
)="
modal
.
close
(
item
)"
<td
class=
"cursor-pointer"
(
click
)="
closeModalexcel_portal
(
item
)"
style=
"white-space: normal !important;word-break: break-word;"
>
{{item.isDataGrid}}
</td>
<td
class=
"cursor-pointer"
(
click
)="
modal
.
close
(
item
)"
<td
class=
"cursor-pointer"
(
click
)="
closeModalexcel_portal
(
item
)"
style=
"white-space: normal !important;word-break: break-word;"
>
{{item.dwTime}}
</td>
<td
class=
"cursor-pointer"
(
click
)="
modal
.
close
(
item
)"
<td
class=
"cursor-pointer"
(
click
)="
closeModalexcel_portal
(
item
)"
style=
"white-space: normal !important;word-break: break-word;"
>
{{item.downloadDate}} {{item.downloadTime}}
</td>
<td
class=
"cursor-pointer"
(
click
)="
modal
.
close
(
item
)"
<td
class=
"cursor-pointer"
(
click
)="
closeModalexcel_portal
(
item
)"
style=
"white-space: normal !important;word-break: break-word;"
>
{{item.uploadDate}} {{item.uploadTime}}
</td>
...
...
@@ -752,13 +755,14 @@
<i
class=
"ri-close-line"
></i>
</button>
</div>
<div
class=
"ti-modal-body px-4 mt-3"
>
<div
class=
"ti-modal-body px-4 mt-3"
style=
"min-height: 9.5rem;"
>
<div
class=
"row"
>
<div
class=
"d-flex col-12 justify-content-center"
*
ngIf=
"loading||loadingExcel"
>
<div
*
ngFor=
"let item of [1,2,3]"
class=
"spinner-grow text-info mx-1"
role=
"status"
>
<span
class=
"sr-only"
>
Loading...
</span>
</div>
</div>
<ng-container
*
ngIf=
"!loading&&!loadingExcel"
>
<ng-container
*
ngFor=
"let item of variableSheet; let i=index"
>
<div
class=
"flex items-center mb-4"
>
...
...
@@ -880,6 +884,7 @@
</div>
</ng-container>
</div>
</div>
<div
class=
"border-t mt-3"
>
...
...
@@ -1038,8 +1043,9 @@
</button>
</div>
<div
class=
"ti-modal-body px-4 mt-3"
>
<app-datagrid-syncfution
#
pivotComponent
[
searchSettings
]="
searchSettings
"
[
dataSource
]="
dataList
"
[
columns
]="
columns
"
[
gridLayout
]="
setPerspective
"
[
sendLayout
]="
gridLayout
.
stimulate
"
(
layout
)="
gridLayout
.
data=
$event"
>
<app-datagrid-syncfution
#
pivotComponent
[
searchSettings
]="
searchSettings
"
[
dataSource
]="
dataList
"
[
columns
]="
columns
"
[
gridLayout
]="
setPerspective
"
[
sendLayout
]="
gridLayout
.
stimulate
"
(
layout
)="
gridLayout
.
data=
$event"
>
</app-datagrid-syncfution>
</div>
...
...
src/app/DPU/myskill-x/myportal/set-excel-reports/excel-list/excel-list.component.ts
View file @
29b62b53
...
...
@@ -9,8 +9,6 @@ import { ModuleModel, MyModuleModel } from '../../../../models/module.model';
import
{
ExcelPortalGroupModel
,
ExcelPortalModel
,
ExcelPortalTagsModel
,
MyExcelPortalGroupModel
,
MyExcelPortalModel
,
MyExcelPortalTagsModel
}
from
'../../../../models/excel-portal.model'
;
import
{
ExcelReportService
}
from
'../../../../services/excel-report.service'
;
import
{
CustomCubeService
}
from
'../../../../services/custom-cube.service'
;
import
{
AlertModalComponent
}
from
'../../../../../alert-modal/alert-modal.component'
;
import
{
ConfirmModalComponent
}
from
'../../../../../confirm-modal/confirm-modal.component'
;
import
{
CommonModule
}
from
'@angular/common'
;
import
{
TranslateModule
}
from
'@ngx-translate/core'
;
import
{
NgSelectModule
}
from
'@ng-select/ng-select'
;
...
...
@@ -23,10 +21,9 @@ import { FormsModule, NgModel } from '@angular/forms';
import
{
DatagridSyncfutionComponent
}
from
'../../../../../datagrid-syncfution/datagrid-syncfution.component'
;
import
{
PivotSyncfutionComponent
}
from
"../../../../../pivot-syncfution/pivot-syncfution.component"
;
import
{
SafeUrlPipe
}
from
'../../../../../../pipe/safe-url.pipe'
;
import
Swal
from
'sweetalert2
'
;
import
swal
from
'sweetalert
'
;
import
{
DatasourceTableModel
,
MyDatasourceTableModel
}
from
'../../../../models/datasource-table.model'
;
import
{
DatasourseTableService
}
from
'../../../../services/datasourse-table.service'
;
import
swal
from
'sweetalert'
;
export
interface
ModalDetail
{
text
:
{
cardHead
:
string
,
search
:
string
[],
tableHead
:
string
[]
}
}
...
...
@@ -160,6 +157,10 @@ export class ExcelListComponent implements OnInit {
modalRefpivotModal
:
MatDialogRef
<
any
>
;
searchText
:
string
=
''
;
itemsList
:
DatasourceTableModel
[]
=
[];
dialogRef
:
any
;
addGroupModalRef
:
any
allowedExtensions
=
[
'xls'
,
'xlsx'
,
'xlsm'
];
@
ViewChild
(
'addGroupModal'
)
addGroupModal
!
:
TemplateRef
<
any
>
;
@
ViewChild
(
'addChildModal'
)
addChildModal
!
:
TemplateRef
<
any
>
;
...
...
@@ -174,7 +175,7 @@ export class ExcelListComponent implements OnInit {
private
customCubeService
:
CustomCubeService
,
private
cdr
:
ChangeDetectorRef
,
private
modal
:
MatDialog
,
private
datasourceTable
:
DatasourseTableService
)
{
private
datasourceTable
:
DatasourseTableService
)
{
}
ngOnInit
():
void
{
...
...
@@ -283,19 +284,43 @@ export class ExcelListComponent implements OnInit {
})
}
postTemplate
()
{
console
.
log
(
"wait for function"
)
this
.
modalRef
?.
close
()
swal
({
title
:
"คุณแน่ใจหรือไม่?"
,
text
:
"คุณต้องการบันทึกหรือไม่"
,
icon
:
"warning"
,
dangerMode
:
false
,
buttons
:
[
"ยกเลิก"
,
"ยืนยัน"
],
}).
then
((
willSave
:
boolean
)
=>
{
if
(
willSave
)
{
let
body
=
{
status
:
this
.
bodyTemplate
.
data
.
templateId
?
'edit'
:
'add'
,
templateId
:
this
.
bodyTemplate
.
data
.
templateId
,
tname
:
this
.
bodyTemplate
.
data
.
tname
,
ename
:
this
.
bodyTemplate
.
data
.
ename
,
tdesc
:
this
.
bodyTemplate
.
data
.
tdesc
,
edesc
:
this
.
bodyTemplate
.
data
.
edesc
,
module
:
this
.
bodyTemplate
.
data
.
module
}
this
.
excelReportService
.
postTemplate
(
body
).
subscribe
(
response
=>
{
if
(
response
.
success
)
{
this
.
showAlert
(
response
.
message
,
'success'
)
this
.
getExcelList
()
this
.
addGroupModalRef
?.
close
();
this
.
closeDialog
();
}
else
{
this
.
showAlert
(
response
.
message
,
'error'
)
}
},
error
=>
{
this
.
showAlert
(
error
.
message
,
'error'
)
});
}
});
}
openAlertModal
(
message
?:
string
)
{
const
modalRef
=
this
.
modalService
.
open
(
AlertModalComponent
,
{
centered
:
true
,
backdrop
:
'static'
})
modalRef
.
componentInstance
.
message
=
message
?
message
:
""
modalRef
.
result
.
then
(
result
=>
{
},
reason
=>
{
})
showAlert
(
text
:
string
,
type
:
'success'
|
'error'
)
{
swal
(
"แจ้งเตือน"
,
text
,
type
);
}
openAddGroupModal
(
data
?:
TemplateModel
)
{
if
(
data
)
{
this
.
bodyTemplate
.
status
=
'edit'
;
...
...
@@ -325,23 +350,26 @@ export class ExcelListComponent implements OnInit {
}
deleteTemplate
(
template
:
TemplateModel
)
{
const
modalConfirmRef
=
this
.
modalService
.
open
(
ConfirmModalComponent
,
{
centered
:
true
,
backdrop
:
'static'
,
})
modalConfirmRef
.
componentInstance
.
message
=
'คุณต้องการลบข้อมูลหรือไม่'
modalConfirmRef
.
result
.
then
(
result
=>
{
this
.
excelReportService
.
deleteTemplate
(
template
).
subscribe
(
response
=>
{
if
(
response
.
success
)
{
this
.
openAlertModal
(
response
.
message
)
this
.
getExcelList
()
}
else
{
this
.
openAlertModal
(
response
.
message
)
}
},
error
=>
{
this
.
openAlertModal
(
error
.
message
)
})
},
reject
=>
{
})
swal
({
title
:
"คุณแน่ใจหรือไม่?"
,
text
:
"คุณต้องการลบข้อมูลนี้หรือไม่"
,
icon
:
"warning"
,
dangerMode
:
true
,
buttons
:
[
"ยกเลิก"
,
"ยืนยัน"
],
}).
then
((
willDelete
:
boolean
)
=>
{
if
(
willDelete
)
{
this
.
excelReportService
.
deleteTemplate
(
template
).
subscribe
(
response
=>
{
if
(
response
.
success
)
{
this
.
showAlert
(
response
.
message
,
'success'
)
this
.
getExcelList
()
}
else
{
this
.
showAlert
(
response
.
message
,
'error'
)
}
},
error
=>
{
this
.
showAlert
(
error
.
message
,
'error'
)
})
}
});
}
openAddChildModal
(
data
:
TemplateModel
|
TemplateFileModel
,
status
:
'add'
|
'edit'
)
{
if
(
status
==
'add'
)
{
...
...
@@ -453,11 +481,11 @@ export class ExcelListComponent implements OnInit {
return
;
}
const
allowedExtensions
=
[
'xls'
,
'xlsx'
];
const
fileExtension
=
file
.
name
.
split
(
'.'
).
pop
()?.
toLowerCase
();
if
(
!
allowedExtensions
.
includes
(
fileExtension
||
''
))
{
alert
(
'รองรับเฉพาะไฟล์ Excel (.xls, .xlsx) เท่านั้น'
);
if
(
!
this
.
allowedExtensions
.
includes
(
fileExtension
||
''
))
{
alert
(
'รองรับเฉพาะไฟล์ Excel (.xls, .xlsx
, .xlsm
) เท่านั้น'
);
return
;
}
...
...
@@ -483,45 +511,51 @@ export class ExcelListComponent implements OnInit {
reader
.
readAsDataURL
(
file
);
// อ่านแบบ Base64
}
postTemplateFile
()
{
const
modalConfirmRef
=
this
.
modalService
.
open
(
ConfirmModalComponent
,
{
centered
:
true
,
backdrop
:
'static'
,
swal
({
title
:
"คุณแน่ใจหรือไม่?"
,
text
:
"คุณต้องการบันทึกหรือไม่"
,
icon
:
"warning"
,
dangerMode
:
false
,
buttons
:
[
"ยกเลิก"
,
"ยืนยัน"
],
}).
then
((
willSave
:
boolean
)
=>
{
if
(
willSave
)
{
this
.
templateFile
.
createDate
=
new
Date
().
toISOString
();
this
.
excelReportService
.
postTemplateFile
(
this
.
templateFile
).
subscribe
(
response
=>
{
if
(
response
.
success
)
{
this
.
showAlert
(
response
.
message
,
'success'
)
this
.
getExcelList
()
this
.
modalRefaddChild
?.
close
()
}
else
{
this
.
showAlert
(
response
.
message
,
'error'
)
}
},
error
=>
{
this
.
showAlert
(
error
.
message
,
'error'
)
})
}
})
modalConfirmRef
.
componentInstance
.
message
=
'คุณต้องการบันทึกข้อมูลหรือไม่'
modalConfirmRef
.
result
.
then
(
result
=>
{
this
.
addChildModalRef
?.
close
()
this
.
templateFile
.
createDate
=
new
Date
().
toISOString
();
this
.
excelReportService
.
postTemplateFile
(
this
.
templateFile
).
subscribe
(
response
=>
{
if
(
response
.
success
)
{
this
.
openAlertModal
(
response
.
message
)
this
.
getExcelList
()
}
else
{
this
.
openAlertModal
(
response
.
message
)
}
},
error
=>
{
this
.
openAlertModal
(
error
.
message
)
})
},
reject
=>
{
})
}
menuActiveTemplateFile
(
templateFile
:
TemplateFileModel
)
{
const
modalConfirmRef
=
this
.
modalService
.
open
(
ConfirmModalComponent
,
{
centered
:
true
,
backdrop
:
'static'
,
})
modalConfirmRef
.
componentInstance
.
message
=
'คุณต้องการ'
+
(
templateFile
.
menuActive
==
'1'
?
'ปิด'
:
'เปิด'
)
+
'การใช้งานหรือไม่'
modalConfirmRef
.
result
.
then
(
result
=>
{
templateFile
.
menuActive
=
templateFile
.
menuActive
==
'1'
?
'0'
:
'1'
this
.
excelReportService
.
postTemplateFile
(
templateFile
).
subscribe
(
response
=>
{
if
(
response
.
success
)
{
this
.
openAlertModal
(
response
.
message
)
this
.
getExcelList
()
}
else
{
this
.
openAlertModal
(
response
.
message
)
}
},
error
=>
{
this
.
openAlertModal
(
error
.
message
)
})
},
reject
=>
{
})
swal
({
title
:
"คุณแน่ใจหรือไม่?"
,
text
:
"คุณต้องการ"
+
(
templateFile
.
menuActive
==
'1'
?
'ปิด'
:
'เปิด'
)
+
"การใช้งานหรือไม่"
,
icon
:
"warning"
,
buttons
:
[
"ยกเลิก"
,
"ยืนยัน"
],
dangerMode
:
true
,
}).
then
((
willChange
)
=>
{
if
(
willChange
)
{
templateFile
.
menuActive
=
templateFile
.
menuActive
==
'1'
?
'0'
:
'1'
;
this
.
excelReportService
.
postTemplateFile
(
templateFile
).
subscribe
(
response
=>
{
if
(
response
.
success
)
{
swal
(
"สำเร็จ"
,
response
.
message
,
"success"
);
this
.
getExcelList
();
}
else
{
swal
(
"ผิดพลาด"
,
response
.
message
,
"error"
);
}
},
error
=>
{
swal
(
"ผิดพลาด"
,
error
.
message
,
"error"
);
});
}
});
}
formatISOToLocal
(
isoString
:
string
)
{
...
...
@@ -537,23 +571,26 @@ export class ExcelListComponent implements OnInit {
}
deleteTemplateFile
(
templateFile
:
TemplateFileModel
)
{
const
modalConfirmRef
=
this
.
modalService
.
open
(
ConfirmModalComponent
,
{
centered
:
true
,
backdrop
:
'static'
,
swal
({
title
:
"คุณแน่ใจหรือไม่?"
,
text
:
"คุณต้องการลบข้อมูลนี้หรือไม่"
,
icon
:
"warning"
,
dangerMode
:
true
,
buttons
:
[
"ยกเลิก"
,
"ยืนยัน"
],
}).
then
((
willDelete
:
boolean
)
=>
{
if
(
willDelete
)
{
this
.
excelReportService
.
deleteTemplateFile
(
templateFile
).
subscribe
(
response
=>
{
if
(
response
.
success
)
{
this
.
showAlert
(
response
.
message
,
'success'
)
this
.
getExcelList
()
}
else
{
this
.
showAlert
(
response
.
message
,
'error'
)
}
},
error
=>
{
this
.
showAlert
(
error
.
message
,
'error'
)
})
}
})
modalConfirmRef
.
componentInstance
.
message
=
'คุณต้องการลบข้อมูลหรือไม่'
modalConfirmRef
.
result
.
then
(
result
=>
{
this
.
excelReportService
.
deleteTemplateFile
(
templateFile
).
subscribe
(
response
=>
{
if
(
response
.
success
)
{
this
.
openAlertModal
(
response
.
message
)
this
.
getExcelList
()
}
else
{
this
.
openAlertModal
(
response
.
message
)
}
},
error
=>
{
this
.
openAlertModal
(
error
.
message
)
})
},
reject
=>
{
})
}
downloadTemplateFile
(
templateFile
:
TemplateFileModel
)
{
...
...
@@ -564,7 +601,7 @@ export class ExcelListComponent implements OnInit {
this
.
downloadTemplateFileLoading
.
clear
()
},
error
=>
{
this
.
downloadTemplateFileLoading
.
clear
()
this
.
openAlertModal
(
error
.
message
)
this
.
showAlert
(
error
.
message
,
'error'
)
})
}
openPrintModal
(
templateFile
:
TemplateFileModel
)
{
...
...
@@ -579,7 +616,7 @@ export class ExcelListComponent implements OnInit {
this
.
getTemplateFileSubscription
=
this
.
excelReportService
.
getTemplateFile
(
templateFile
.
templateId
,
templateFile
.
fileName
).
subscribe
(
response
=>
{
this
.
excelReport
=
response
this
.
getExcelColumn
()
if
(
this
.
excelReport
.
param
)
{
if
(
this
.
excelReport
?
.
param
)
{
Object
.
entries
(
this
.
excelReport
.
param
.
variableSheet
).
forEach
(([
key
,
value
])
=>
{
const
data
=
value
as
any
if
(
data
.
type
==
'text'
)
{
...
...
@@ -663,7 +700,7 @@ export class ExcelListComponent implements OnInit {
validateDate
(
control
:
NgModel
)
{
if
(
!
control
.
value
)
{
// ว่าง หรือวันที่ไม่ถูกต้อง
this
.
openAlertModal
(
'กรุณาเลือกวันที่ให้ถูกต้อง'
);
this
.
showAlert
(
'กรุณาเลือกวันที่ให้ถูกต้อง'
,
'error'
)
}
}
...
...
@@ -692,7 +729,7 @@ export class ExcelListComponent implements OnInit {
this
.
cdr
.
detectChanges
()
},
(
err
)
=>
{
this
.
loadingExcel
=
false
this
.
openAlertModal
(
err
.
message
)
this
.
showAlert
(
err
.
message
,
'error'
)
this
.
cdr
.
detectChanges
()
})
}
...
...
@@ -724,18 +761,15 @@ export class ExcelListComponent implements OnInit {
templateFileTypeChange
()
{
if
(
this
.
templateFileName
||
this
.
templateFile
?.
portalId
)
{
Swal
.
fire
({
title
:
'ยืนยันการดำเนินการ'
,
text
:
'คุณต้องการยกเลิกไฟล์ที่เลือกหรือไม่'
,
icon
:
'warning'
,
showCancelButton
:
true
,
confirmButtonText
:
'ใช่, ยกเลิกไฟล์'
,
cancelButtonText
:
'ไม่'
,
confirmButtonColor
:
'#d33'
,
// สีปุ่มยืนยัน (แดง)
cancelButtonColor
:
'#3085d6'
,
// สีปุ่มยกเลิก (น้ำเงิน)
reverseButtons
:
true
}).
then
((
result
)
=>
{
if
(
result
.
isConfirmed
)
{
swal
({
title
:
"ยืนยันการดำเนินการ?"
,
text
:
"คุณต้องการยกเลิกไฟล์ที่เลือกหรือไม่"
,
icon
:
"warning"
,
dangerMode
:
false
,
buttons
:
[
"ไม่"
,
"ใช่, ยกเลิกไฟล์"
],
}
).
then
((
result
:
boolean
)
=>
{
if
(
result
)
{
this
.
onToggleTemplateFile
();
}
});
...
...
@@ -759,39 +793,41 @@ export class ExcelListComponent implements OnInit {
getExcelColumn
()
{
const
body
=
{
templateId
:
this
.
excelReport
.
templateId
,
fileName
:
this
.
excelReport
.
fileName
}
this
.
searchSettings
=
{
fields
:
[],
operator
:
'contains'
,
ignoreCase
:
false
};
this
.
columns
=
[]
this
.
pivotColumns
=
[]
this
.
customCubeService
.
getExcelColumn
(
body
).
subscribe
((
response
:
any
)
=>
{
if
(
this
.
excelReport
)
{
const
body
=
{
templateId
:
this
.
excelReport
.
templateId
,
fileName
:
this
.
excelReport
.
fileName
}
this
.
searchSettings
=
{
fields
:
response
.
map
((
e
:
any
)
=>
e
.
split
(
':'
)[
0
])
,
fields
:
[]
,
operator
:
'contains'
,
ignoreCase
:
false
};
response
.
forEach
((
e
:
any
,
i
:
number
)
=>
{
const
[
field
,
headerText
]
=
e
.
split
(
':'
)
this
.
columns
.
push
({
field
:
field
,
headerText
:
headerText
,
type
:
"string"
,
isPrimaryKey
:
i
==
0
,
})
this
.
pivotColumns
.
push
({
name
:
field
,
caption
:
headerText
})
});
},
error
=>
{
this
.
columns
=
[]
this
.
pivotColumns
=
[]
this
.
customCubeService
.
getExcelColumn
(
body
).
subscribe
((
response
:
any
)
=>
{
this
.
searchSettings
=
{
fields
:
response
.
map
((
e
:
any
)
=>
e
.
split
(
':'
)[
0
]),
operator
:
'contains'
,
ignoreCase
:
false
};
response
.
forEach
((
e
:
any
,
i
:
number
)
=>
{
const
[
field
,
headerText
]
=
e
.
split
(
':'
)
this
.
columns
.
push
({
field
:
field
,
headerText
:
headerText
,
type
:
"string"
,
isPrimaryKey
:
i
==
0
,
})
this
.
pivotColumns
.
push
({
name
:
field
,
caption
:
headerText
})
});
},
error
=>
{
})
})
}
}
getExcelData
(
type
:
'grid'
|
'pivot'
)
{
this
.
loadingExcel
=
true
...
...
@@ -860,11 +896,15 @@ export class ExcelListComponent implements OnInit {
pivotStr
:
""
,
}
this
.
customCubeService
.
saveExcelPerspective
(
body
).
subscribe
(
response
=>
{
this
.
loadingExcel
=
false
this
.
openAlertModal
(
response
.
message
)
if
(
response
.
success
)
{
this
.
loadingExcel
=
false
this
.
showAlert
(
response
.
message
,
'success'
)
}
else
{
this
.
showAlert
(
response
.
message
,
'error'
)
}
},
error
=>
{
this
.
loadingExcel
=
false
this
.
openAlertModal
(
error
.
message
)
this
.
showAlert
(
error
.
message
,
'error'
)
})
this
.
cdr
.
detectChanges
();
},
500
);
...
...
@@ -878,11 +918,15 @@ export class ExcelListComponent implements OnInit {
pivotStr
:
this
.
pivotLayout
.
data
,
}
this
.
customCubeService
.
saveExcelPerspective
(
body
).
subscribe
(
response
=>
{
this
.
loadingExcel
=
false
this
.
openAlertModal
(
response
.
message
)
if
(
response
.
success
)
{
this
.
loadingExcel
=
false
this
.
showAlert
(
response
.
message
,
'success'
)
}
else
{
this
.
showAlert
(
response
.
message
,
'error'
)
}
},
error
=>
{
this
.
loadingExcel
=
false
this
.
openAlertModal
(
error
.
message
)
this
.
showAlert
(
error
.
message
,
'error'
)
})
this
.
cdr
.
detectChanges
();
},
500
);
...
...
@@ -890,14 +934,15 @@ export class ExcelListComponent implements OnInit {
}
openModalAddGroup
()
{
this
.
m
odalRef
=
this
.
modal
.
open
(
this
.
addGroupModal
,
{
this
.
addGroupM
odalRef
=
this
.
modal
.
open
(
this
.
addGroupModal
,
{
width
:
'1000px'
,
height
:
'500px'
})
}
closeModalAddGroup
()
{
this
.
m
odalRef
?.
close
()
this
.
addGroupM
odalRef
?.
close
()
}
openModaladdChild
()
{
...
...
@@ -918,7 +963,10 @@ export class ExcelListComponent implements OnInit {
})
}
closeModalexcel_portal
()
{
closeModalexcel_portal
(
result
?:
ExcelPortalModel
)
{
if
(
result
){
this
.
templateFile
.
portalId
=
result
.
excelId
}
this
.
modalRefexcel_portal
?.
close
()
}
...
...
@@ -963,17 +1011,23 @@ export class ExcelListComponent implements OnInit {
this
.
modalRefpivotModal
?.
close
()
}
closeDialog
()
{
if
(
this
.
dialogRef
)
{
this
.
dialogRef
.
close
();
}
}
getData
()
{
this
.
datasourceTable
.
getList
().
subscribe
({
next
:
(
response
:
DatasourceTableModel
[])
=>
{
this
.
itemsList
=
response
.
map
((
x
:
any
)
=>
new
MyDatasourceTableModel
(
x
));
console
.
log
(
'ข้อมูล (itemsList)'
,
this
.
itemsList
);
this
.
updatePagedItems
();
},
error
:
(
error
)
=>
{
console
.
error
(
'error cant get position'
,
error
);
swal
(
"ข้อผิดพลาด"
,
"ไม่สามารถดึงข้อมูลได้"
,
"error"
);
}
next
:
(
response
:
DatasourceTableModel
[])
=>
{
this
.
itemsList
=
response
.
map
((
x
:
any
)
=>
new
MyDatasourceTableModel
(
x
));
console
.
log
(
'ข้อมูล (itemsList)'
,
this
.
itemsList
);
this
.
updatePagedItems
();
},
error
:
(
error
)
=>
{
console
.
error
(
'error cant get position'
,
error
);
swal
(
"ข้อผิดพลาด"
,
"ไม่สามารถดึงข้อมูลได้"
,
"error"
);
}
});
}
}
}
\ No newline at end of file
src/app/DPU/myskill-x/myportal/set-excel-reports/excel-report-toggle/excel-report-toggle.component.html
View file @
29b62b53
...
...
@@ -160,7 +160,7 @@
<a
aria-label=
"anchor"
title=
"Print"
(
mouseenter
)="
buttonHover
.
set
(
item
.
fileName
+'
print
',!
buttonHover
.
get
(
item
.
fileName
))"
(
mouseleave
)="
buttonHover
.
clear
()"
class=
"ti-btn ti-btn-wave product-btn !gap-0 !m-0 bg-warning/10 text-warning hover:bg-warning hover:text-white hover:border-warning"
class=
"ti-btn ti-btn-wave product-btn !gap-0 !m-0 bg-warning/10 text-warning hover:bg-warning hover:text-white hover:border-warning
cursor-pointer
"
(
click
)="
openPrintModal
(
item
);"
>
<i
class=
"ri-printer-line"
></i></a>
</td>
...
...
@@ -244,7 +244,7 @@
<i
class=
"ri-close-line"
></i>
</button>
</div>
<div
class=
"ti-modal-body px-4 mt-3"
>
<div
class=
"ti-modal-body px-4 mt-3"
style=
"min-height: 9.5rem;"
>
<div
class=
"row"
>
<div
class=
"d-flex col-12 justify-content-center"
*
ngIf=
"loading||loadingExcel"
>
<div
*
ngFor=
"let item of [1,2,3]"
class=
"spinner-grow text-info mx-1"
role=
"status"
>
...
...
src/app/DPU/myskill-x/myportal/set-excel-reports/excel-report-toggle/excel-report-toggle.component.ts
View file @
29b62b53
...
...
@@ -9,8 +9,6 @@ import { MyTemplateFileModel, MyTemplateModel, TemplateFileModel, TemplateModel
import
{
ModuleModel
}
from
'../../../../models/module.model'
;
import
{
ExcelReportService
}
from
'../../../../services/excel-report.service'
;
import
{
CustomCubeService
}
from
'../../../../services/custom-cube.service'
;
import
{
ConfirmModalComponent
}
from
'../../../../../confirm-modal/confirm-modal.component'
;
import
{
AlertModalComponent
}
from
'../../../../../alert-modal/alert-modal.component'
;
import
{
CommonModule
}
from
'@angular/common'
;
import
{
SharedModule
}
from
'../../../../../shared/shared.module'
;
import
{
TranslateModule
}
from
'@ngx-translate/core'
;
...
...
@@ -22,6 +20,7 @@ import { MatDialog, MatDialogModule, MatDialogRef } from '@angular/material/dial
import
{
DatagridSyncfutionComponent
}
from
'../../../../../datagrid-syncfution/datagrid-syncfution.component'
;
import
{
PivotSyncfutionComponent
}
from
'../../../../../pivot-syncfution/pivot-syncfution.component'
;
import
{
SafeUrlPipe
}
from
'../../../../../../pipe/safe-url.pipe'
;
import
swal
from
'sweetalert'
;
export
interface
ModalDetail
{
text
:
{
cardHead
:
string
,
search
:
string
[],
tableHead
:
string
[]
}
}
...
...
@@ -230,26 +229,30 @@ export class ExcelReportToggleComponent implements OnInit {
}
menuActiveTemplateFile
(
templateFile
:
TemplateFileModel
)
{
const
modalConfirmRef
=
this
.
modalService
.
open
(
ConfirmModalComponent
,
{
centered
:
true
,
backdrop
:
'static'
,
})
modalConfirmRef
.
componentInstance
.
message
=
'คุณต้องการ'
+
(
templateFile
.
menuActive
==
'1'
?
'ปิด'
:
'เปิด'
)
+
'การใช้งานหรือไม่'
modalConfirmRef
.
result
.
then
(
result
=>
{
templateFile
.
menuActive
=
templateFile
.
menuActive
==
'1'
?
'0'
:
'1'
this
.
excelReportService
.
postTemplateFile
(
templateFile
).
subscribe
(
response
=>
{
if
(
response
.
success
)
{
this
.
openAlertModal
(
response
.
message
)
this
.
getExcelList
()
}
else
{
this
.
openAlertModal
(
response
.
message
)
}
},
error
=>
{
this
.
openAlertModal
(
error
.
message
)
})
},
reject
=>
{
})
swal
({
title
:
"คุณแน่ใจหรือไม่?"
,
text
:
"คุณต้องการ"
+
(
templateFile
.
menuActive
==
'1'
?
'ปิด'
:
'เปิด'
)
+
"การใช้งานหรือไม่"
,
icon
:
"warning"
,
buttons
:
[
"ยกเลิก"
,
"ยืนยัน"
],
dangerMode
:
true
,
}).
then
((
willChange
:
any
)
=>
{
if
(
willChange
)
{
templateFile
.
menuActive
=
templateFile
.
menuActive
==
'1'
?
'0'
:
'1'
;
this
.
excelReportService
.
postTemplateFile
(
templateFile
).
subscribe
(
response
=>
{
if
(
response
.
success
)
{
this
.
showAlert
(
response
.
message
,
"success"
);
this
.
getExcelList
();
}
else
{
this
.
showAlert
(
response
.
message
,
"error"
);
}
},
error
=>
{
this
.
showAlert
(
error
.
message
,
"error"
);
});
}
});
}
formatISOToLocal
(
isoString
:
string
)
{
const
date
=
new
Date
(
isoString
);
const
day
=
String
(
date
.
getDate
()).
padStart
(
2
,
'0'
);
...
...
@@ -261,16 +264,8 @@ export class ExcelReportToggleComponent implements OnInit {
return
{
date
:
`
${
day
}
-
${
month
}
-
${
year
}
`
,
time
:
`
${
hours
}
:
${
minutes
}
`
};
}
openAlertModal
(
message
?:
string
)
{
const
modalRef
=
this
.
modalService
.
open
(
AlertModalComponent
,
{
centered
:
true
,
backdrop
:
'static'
})
modalRef
.
componentInstance
.
message
=
message
?
message
:
""
modalRef
.
result
.
then
(
result
=>
{
},
reason
=>
{
})
showAlert
(
text
:
string
,
type
:
'success'
|
'error'
)
{
swal
(
"แจ้งเตือน"
,
text
,
type
);
}
openPrintModal
(
templateFile
:
TemplateFileModel
)
{
...
...
@@ -285,7 +280,7 @@ export class ExcelReportToggleComponent implements OnInit {
this
.
getTemplateFileSubscription
=
this
.
excelReportService
.
getTemplateFile
(
templateFile
.
templateId
,
templateFile
.
fileName
).
subscribe
(
response
=>
{
this
.
excelReport
=
response
this
.
getExcelColumn
()
if
(
this
.
excelReport
.
param
)
{
if
(
this
.
excelReport
?
.
param
)
{
Object
.
entries
(
this
.
excelReport
.
param
.
variableSheet
).
forEach
(([
key
,
value
])
=>
{
const
data
=
value
as
any
if
(
data
.
type
==
'text'
)
{
...
...
@@ -367,7 +362,7 @@ export class ExcelReportToggleComponent implements OnInit {
validateDate
(
control
:
NgModel
)
{
if
(
!
control
.
value
)
{
// ว่าง หรือวันที่ไม่ถูกต้อง
this
.
openAlertModal
(
'กรุณาเลือกวันที่ให้ถูกต้อง'
);
this
.
showAlert
(
'กรุณาเลือกวันที่ให้ถูกต้อง'
,
'error'
)
}
}
...
...
@@ -395,7 +390,7 @@ export class ExcelReportToggleComponent implements OnInit {
this
.
cdr
.
detectChanges
()
},
(
err
)
=>
{
this
.
loadingExcel
=
false
this
.
openAlertModal
(
err
.
message
)
this
.
showAlert
(
err
.
message
,
'error'
)
this
.
cdr
.
detectChanges
()
})
}
...
...
@@ -426,39 +421,42 @@ export class ExcelReportToggleComponent implements OnInit {
}
getExcelColumn
()
{
const
body
=
{
templateId
:
this
.
excelReport
.
templateId
,
fileName
:
this
.
excelReport
.
fileName
}
this
.
searchSettings
=
{
fields
:
[],
operator
:
'contains'
,
ignoreCase
:
false
};
this
.
columns
=
[]
this
.
pivotColumns
=
[]
this
.
customCubeService
.
getExcelColumn
(
body
).
subscribe
((
response
:
any
)
=>
{
if
(
this
.
excelReport
){
const
body
=
{
templateId
:
this
.
excelReport
.
templateId
,
fileName
:
this
.
excelReport
.
fileName
}
this
.
searchSettings
=
{
fields
:
response
.
map
((
e
:
any
)
=>
e
.
split
(
':'
)[
0
])
,
fields
:
[]
,
operator
:
'contains'
,
ignoreCase
:
false
};
response
.
forEach
((
e
:
any
,
i
:
number
)
=>
{
const
[
field
,
headerText
]
=
e
.
split
(
':'
)
this
.
columns
.
push
({
field
:
field
,
headerText
:
headerText
,
type
:
"string"
,
isPrimaryKey
:
i
==
0
,
})
this
.
pivotColumns
.
push
({
name
:
field
,
caption
:
headerText
})
});
},
error
=>
{
})
this
.
columns
=
[]
this
.
pivotColumns
=
[]
this
.
customCubeService
.
getExcelColumn
(
body
).
subscribe
((
response
:
any
)
=>
{
this
.
searchSettings
=
{
fields
:
response
.
map
((
e
:
any
)
=>
e
.
split
(
':'
)[
0
]),
operator
:
'contains'
,
ignoreCase
:
false
};
response
.
forEach
((
e
:
any
,
i
:
number
)
=>
{
const
[
field
,
headerText
]
=
e
.
split
(
':'
)
this
.
columns
.
push
({
field
:
field
,
headerText
:
headerText
,
type
:
"string"
,
isPrimaryKey
:
i
==
0
,
})
this
.
pivotColumns
.
push
({
name
:
field
,
caption
:
headerText
})
});
},
error
=>
{
})
}
}
getExcelData
(
type
:
'grid'
|
'pivot'
)
{
this
.
loadingExcel
=
true
...
...
@@ -522,11 +520,15 @@ export class ExcelReportToggleComponent implements OnInit {
pivotStr
:
""
,
}
this
.
customCubeService
.
saveExcelPerspective
(
body
).
subscribe
(
response
=>
{
this
.
loadingExcel
=
false
this
.
openAlertModal
(
response
.
message
)
if
(
response
.
success
)
{
this
.
loadingExcel
=
false
this
.
showAlert
(
response
.
message
,
'success'
)
}
else
{
this
.
showAlert
(
response
.
message
,
'error'
)
}
},
error
=>
{
this
.
loadingExcel
=
false
this
.
openAlertModal
(
error
.
message
)
this
.
showAlert
(
error
.
message
,
'error'
)
})
this
.
cdr
.
detectChanges
();
},
500
);
...
...
@@ -540,11 +542,15 @@ export class ExcelReportToggleComponent implements OnInit {
pivotStr
:
this
.
pivotLayout
.
data
,
}
this
.
customCubeService
.
saveExcelPerspective
(
body
).
subscribe
(
response
=>
{
this
.
loadingExcel
=
false
this
.
openAlertModal
(
response
.
message
)
if
(
response
.
success
)
{
this
.
loadingExcel
=
false
this
.
showAlert
(
response
.
message
,
'success'
)
}
else
{
this
.
showAlert
(
response
.
message
,
'error'
)
}
},
error
=>
{
this
.
loadingExcel
=
false
this
.
openAlertModal
(
error
.
message
)
this
.
showAlert
(
error
.
message
,
'error'
)
})
this
.
cdr
.
detectChanges
();
},
500
);
...
...
src/app/DPU/services/excel-report.service.ts
View file @
29b62b53
...
...
@@ -41,7 +41,7 @@ export class ExcelReportService {
edesc
:
string
,
module
:
string
})
{
return
this
.
http
.
post
(
environment
.
url
+
"template?companyid=eb2f4f30-edaf-11ee-a69a-c7680edc0e47"
,
body
)
return
this
.
http
.
post
<
AlertModel
>
(
environment
.
url
+
"template?companyid=eb2f4f30-edaf-11ee-a69a-c7680edc0e47"
,
body
)
}
deleteTemplate
(
body
:
TemplateModel
):
Observable
<
AlertModel
>
{
let
option
=
{
...
...
src/app/datagrid-syncfution/datagrid-syncfution.component.ts
View file @
29b62b53
...
...
@@ -38,7 +38,6 @@ import {
import
{
Query
}
from
'@syncfusion/ej2-data'
;
import
{
L10n
,
setCulture
}
from
'@syncfusion/ej2-base'
;
import
{
NgbModal
,
NgbPaginationModule
}
from
'@ng-bootstrap/ng-bootstrap'
;
import
{
AlertModalComponent
}
from
'../alert-modal/alert-modal.component'
;
import
{
ColumnModel
,
FilterSettingsModel
,
GroupSettingsModel
}
from
'@syncfusion/ej2-angular-grids'
;
import
{
CommonModule
}
from
'@angular/common'
;
import
{
SharedModule
}
from
'../shared/shared.module'
;
...
...
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