fix: fix resetting config and other minor issues (#2819)

This commit is contained in:
Alex Inkin
2025-01-24 22:12:57 +04:00
committed by GitHub
parent e6f02bf8f7
commit bb8109f67d
10 changed files with 194 additions and 156 deletions

230
web/package-lock.json generated
View File

@@ -25,18 +25,19 @@
"@noble/hashes": "^1.4.0",
"@start9labs/argon2": "^0.2.2",
"@start9labs/start-sdk": "file:../sdk/baseDist",
"@taiga-ui/addon-charts": "4.16.0",
"@taiga-ui/addon-commerce": "4.16.0",
"@taiga-ui/addon-mobile": "4.16.0",
"@taiga-ui/cdk": "4.16.0",
"@taiga-ui/core": "4.16.0",
"@taiga-ui/addon-charts": "4.21.0",
"@taiga-ui/addon-commerce": "4.21.0",
"@taiga-ui/addon-mobile": "4.21.0",
"@taiga-ui/addon-table": "4.21.0",
"@taiga-ui/cdk": "4.21.0",
"@taiga-ui/core": "4.21.0",
"@taiga-ui/event-plugins": "4.3.1",
"@taiga-ui/icons": "4.16.0",
"@taiga-ui/kit": "4.16.0",
"@taiga-ui/layout": "4.16.0",
"@taiga-ui/legacy": "4.16.0",
"@taiga-ui/polymorpheus": "4.7.4",
"@taiga-ui/styles": "4.16.0",
"@taiga-ui/icons": "4.21.0",
"@taiga-ui/kit": "4.21.0",
"@taiga-ui/layout": "4.21.0",
"@taiga-ui/legacy": "4.21.0",
"@taiga-ui/polymorpheus": "4.8.0",
"@taiga-ui/styles": "4.21.0",
"@tinkoff/ng-dompurify": "4.0.0",
"ansi-to-html": "^0.7.2",
"base64-js": "^1.5.1",
@@ -3394,53 +3395,46 @@
}
},
"node_modules/@maskito/angular": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/@maskito/angular/-/angular-3.2.0.tgz",
"integrity": "sha512-3E3sqZMWauHeHr6uGj/LnpatV+DlQZIPKWLv5pZ2SIJUX0pXUN4ZskP6gO+wiqWbw70zDCMee09KqbSxFkbcEg==",
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@maskito/angular/-/angular-3.2.1.tgz",
"integrity": "sha512-Qb9qY6AeG23KWuROF2gcHzUxXiaaMIFuoA/ekqI4TAtBDEO2D7ImQ0oTkdsFfbDLZoI3phmy70H4f+gidEnfag==",
"license": "Apache-2.0",
"peer": true,
"dependencies": {
"tslib": "2.8.0"
"tslib": "2.8.1"
},
"peerDependencies": {
"@angular/core": ">=16.0.0",
"@angular/forms": ">=16.0.0",
"@maskito/core": "^3.2.0"
"@maskito/core": "^3.2.1"
}
},
"node_modules/@maskito/angular/node_modules/tslib": {
"version": "2.8.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz",
"integrity": "sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==",
"license": "0BSD",
"peer": true
},
"node_modules/@maskito/core": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/@maskito/core/-/core-3.2.0.tgz",
"integrity": "sha512-c8GNwuz4PQmZqf5CSXIncwIkZSwBeU2FZtpBJtD21DaIe4uBQ541C0BncHMqEbLP2+n+HyFKEnT90m03BBlGrw==",
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@maskito/core/-/core-3.2.1.tgz",
"integrity": "sha512-gpoJbFFsq2CFz9smqEvZfTPVMt/gkRoiL14idL1sLXEDbWZyeKce0SgusHzHXaOkEegly4BIJGazCNG2hsPNYg==",
"license": "Apache-2.0",
"peer": true
},
"node_modules/@maskito/kit": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/@maskito/kit/-/kit-3.2.0.tgz",
"integrity": "sha512-fIUBu+RzWQtmDyBCV9cksFqLqCq4ag1Gv1pwn9PgB7m0pkjhJoBMfQAVkded6MKrUk+QLIZUjzbUwgJm0D98Aw==",
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@maskito/kit/-/kit-3.2.1.tgz",
"integrity": "sha512-p9Tmr4BMZs7geNWMYMQaP4Dc+Sre8OeE6Vynz1RGsJJdjxmocY2mihXKldecS8c9aXfHvLU658F9YtorL3Akjg==",
"license": "Apache-2.0",
"peer": true,
"peerDependencies": {
"@maskito/core": "^3.2.0"
"@maskito/core": "^3.2.1"
}
},
"node_modules/@maskito/phone": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/@maskito/phone/-/phone-3.2.0.tgz",
"integrity": "sha512-g6Tdx53AOk8E7nfp/PVGR3ZzcBW9KFIF2AS8ce0ak/XWm91qIaShg0X5Zh3/zpNCJBO62vTSJzdPQCUT+Td/LA==",
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@maskito/phone/-/phone-3.2.1.tgz",
"integrity": "sha512-F1hrnpP1UyMhVO0nZAMoA0kkS8rVTc4kVUZ8mcxz98weIAKYo3wiuLOMXb1cg7/ejcpEnqDTRe1rzBxwtRAKeQ==",
"license": "Apache-2.0",
"peer": true,
"peerDependencies": {
"@maskito/core": "^3.2.0",
"@maskito/kit": "^3.2.0",
"@maskito/core": "^3.2.1",
"@maskito/kit": "^3.2.1",
"libphonenumber-js": ">=1.0.0"
}
},
@@ -4408,9 +4402,9 @@
"link": true
},
"node_modules/@taiga-ui/addon-charts": {
"version": "4.16.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/addon-charts/-/addon-charts-4.16.0.tgz",
"integrity": "sha512-cPgoilabfyCFiV/MwzMYFP7PAI3nOG2pRdTIsE75Ad/jZ7OY/e0JsgAaytXWqHuXwca2fyg0J0e3vE+a2H+Uxg==",
"version": "4.21.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/addon-charts/-/addon-charts-4.21.0.tgz",
"integrity": "sha512-ai213WTf+VG3hYLrusWJiSj7fY+Z5HjeZLmEJIMvFswzV8+Ekiiqb95+BnBUQaie6bwu3yAhcadwgun7u2Rq3w==",
"license": "Apache-2.0",
"dependencies": {
"tslib": ">=2.8.1"
@@ -4419,15 +4413,15 @@
"@angular/common": ">=16.0.0",
"@angular/core": ">=16.0.0",
"@ng-web-apis/common": "^4.11.1",
"@taiga-ui/cdk": "^4.16.0",
"@taiga-ui/core": "^4.16.0",
"@taiga-ui/polymorpheus": "^4.7.4"
"@taiga-ui/cdk": "^4.21.0",
"@taiga-ui/core": "^4.21.0",
"@taiga-ui/polymorpheus": "^4.8.0"
}
},
"node_modules/@taiga-ui/addon-commerce": {
"version": "4.16.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/addon-commerce/-/addon-commerce-4.16.0.tgz",
"integrity": "sha512-1VAseXNNJqmbtXJVAFVsuiA58ZmHgnENozGTGC8w1K0kT1LXJ7HaAjIrnuaJXn5Kabh71gcUbaYc1szWXtmD9Q==",
"version": "4.21.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/addon-commerce/-/addon-commerce-4.21.0.tgz",
"integrity": "sha512-CmibFfEsSW2h9k6/NcAiverxiMZDk1e15j10Uupfodn7vpZk3u4j4/c8aS4klV4Hk3lC5UCCvpYVLpx/c9u+/A==",
"license": "Apache-2.0",
"dependencies": {
"tslib": ">=2.8.1"
@@ -4436,22 +4430,22 @@
"@angular/common": ">=16.0.0",
"@angular/core": ">=16.0.0",
"@angular/forms": ">=16.0.0",
"@maskito/angular": "^3.2.0",
"@maskito/core": "^3.2.0",
"@maskito/kit": "^3.2.0",
"@maskito/angular": "^3.2.1",
"@maskito/core": "^3.2.1",
"@maskito/kit": "^3.2.1",
"@ng-web-apis/common": "^4.11.1",
"@taiga-ui/cdk": "^4.16.0",
"@taiga-ui/core": "^4.16.0",
"@taiga-ui/i18n": "^4.16.0",
"@taiga-ui/kit": "^4.16.0",
"@taiga-ui/polymorpheus": "^4.7.4",
"@taiga-ui/cdk": "^4.21.0",
"@taiga-ui/core": "^4.21.0",
"@taiga-ui/i18n": "^4.21.0",
"@taiga-ui/kit": "^4.21.0",
"@taiga-ui/polymorpheus": "^4.8.0",
"rxjs": ">=7.0.0"
}
},
"node_modules/@taiga-ui/addon-mobile": {
"version": "4.16.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/addon-mobile/-/addon-mobile-4.16.0.tgz",
"integrity": "sha512-Wcm3NDo8zqQLGhmBbJ/IhOi2hW9oma73dc0QT32VcPf6TGiGBaLFs+bJKKC0SsXJyLOaGIv4dvx3IlAQqJ9nJA==",
"version": "4.21.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/addon-mobile/-/addon-mobile-4.21.0.tgz",
"integrity": "sha512-AIklfOfgiTuCFHvGb9Ok1nNtkelrEZmoeOQsLEH0wIA0+Ou/6XeAG03BkwrIJq4yQ1AI+ZCFeVNtl17bg+EzkA==",
"license": "Apache-2.0",
"dependencies": {
"tslib": ">=2.8.1"
@@ -4461,17 +4455,37 @@
"@angular/common": ">=16.0.0",
"@angular/core": ">=16.0.0",
"@ng-web-apis/common": "^4.11.1",
"@taiga-ui/cdk": "^4.16.0",
"@taiga-ui/core": "^4.16.0",
"@taiga-ui/kit": "^4.16.0",
"@taiga-ui/polymorpheus": "^4.7.4",
"@taiga-ui/cdk": "^4.21.0",
"@taiga-ui/core": "^4.21.0",
"@taiga-ui/kit": "^4.21.0",
"@taiga-ui/polymorpheus": "^4.8.0",
"rxjs": ">=7.0.0"
}
},
"node_modules/@taiga-ui/addon-table": {
"version": "4.21.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/addon-table/-/addon-table-4.21.0.tgz",
"integrity": "sha512-A3j4mfsM/S+IRQOEfZwVTFhy0zTSeeM7/ZHgQwuau7Xn8UN6S8X0HvZ2LCg6ZMJaXU1W79XMm2j1uLa/BDFcog==",
"license": "Apache-2.0",
"dependencies": {
"tslib": ">=2.8.1"
},
"peerDependencies": {
"@angular/common": ">=16.0.0",
"@angular/core": ">=16.0.0",
"@ng-web-apis/intersection-observer": "^4.11.1",
"@taiga-ui/cdk": "^4.21.0",
"@taiga-ui/core": "^4.21.0",
"@taiga-ui/i18n": "^4.21.0",
"@taiga-ui/kit": "^4.21.0",
"@taiga-ui/polymorpheus": "^4.8.0",
"rxjs": ">=7.0.0"
}
},
"node_modules/@taiga-ui/cdk": {
"version": "4.16.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/cdk/-/cdk-4.16.0.tgz",
"integrity": "sha512-aKxCqqmE+ZGXpundhjiMrp+IYZSDDUsRJ0pJ3OKeR2AXUfJDfqLHiUUJyUtMytGcsbtggKQu+QU7WmDJaX176w==",
"version": "4.21.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/cdk/-/cdk-4.21.0.tgz",
"integrity": "sha512-PfHMELF2OHO7GNjdyfz1LpyjrsQMEa7oqZoyqz5s4W7W/KWpds3Cm6RP2inFQsZofXrJQNDGtThb1UgNYH5AsQ==",
"license": "Apache-2.0",
"dependencies": {
"tslib": "2.8.1"
@@ -4495,14 +4509,14 @@
"@ng-web-apis/resize-observer": "^4.11.1",
"@ng-web-apis/screen-orientation": "^4.11.1",
"@taiga-ui/event-plugins": "^4.3.1",
"@taiga-ui/polymorpheus": "^4.7.4",
"@taiga-ui/polymorpheus": "^4.8.0",
"rxjs": ">=7.0.0"
}
},
"node_modules/@taiga-ui/core": {
"version": "4.16.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/core/-/core-4.16.0.tgz",
"integrity": "sha512-2g8K4usXzU+ayXHijqvBrno3ooKufUUBqZxPLgcbmxdrx4zrsV6W7Dkw6P8XfvgvBY0P3Exgea+SfbeP/X2nCA==",
"version": "4.21.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/core/-/core-4.21.0.tgz",
"integrity": "sha512-O91kueQldSGCxR+IshcgwAOJukwkV2gEu/MBhw7t5fDEvW6aNbKjFl/RZcDSMguVIzOdRAyTrWm+UyVLYeOphA==",
"license": "Apache-2.0",
"dependencies": {
"tslib": ">=2.8.1"
@@ -4516,10 +4530,10 @@
"@angular/router": ">=16.0.0",
"@ng-web-apis/common": "^4.11.1",
"@ng-web-apis/mutation-observer": "^4.11.1",
"@taiga-ui/cdk": "^4.16.0",
"@taiga-ui/cdk": "^4.21.0",
"@taiga-ui/event-plugins": "^4.3.1",
"@taiga-ui/i18n": "^4.16.0",
"@taiga-ui/polymorpheus": "^4.7.4",
"@taiga-ui/i18n": "^4.21.0",
"@taiga-ui/polymorpheus": "^4.8.0",
"rxjs": ">=7.0.0"
}
},
@@ -4538,9 +4552,9 @@
}
},
"node_modules/@taiga-ui/i18n": {
"version": "4.17.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/i18n/-/i18n-4.17.0.tgz",
"integrity": "sha512-5uV0u6bVKq5Il2xuEQzMtx15LSNRzxVIXhUQOY+Q3dPe3V2IaE9lSEjAaR+vEp1U7uFgo0lPc+S3A1BdkEMMsA==",
"version": "4.21.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/i18n/-/i18n-4.21.0.tgz",
"integrity": "sha512-T6BQ+qSXh34JpXpNJ9gEzJOjpPM8AchjSuwlZnbZHGo4H7eTRGgt6DdnEBVUIcvGyebVIdBZLSDhpH3lu3c8Yw==",
"license": "Apache-2.0",
"peer": true,
"dependencies": {
@@ -4553,18 +4567,18 @@
}
},
"node_modules/@taiga-ui/icons": {
"version": "4.16.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/icons/-/icons-4.16.0.tgz",
"integrity": "sha512-Delz1ROmSkexszCg9K8Rfg4S85hWpTXUFzIbTZ+an88kyfq8W7ABQFPbKi/bhd1s2lpQV3tG5DjYEPrhEZHKGQ==",
"version": "4.21.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/icons/-/icons-4.21.0.tgz",
"integrity": "sha512-lzUYj/LOIFVJqdhzl0mgFUMASicQb2b+0MG5YELZik69hU+QAAKjCBzqDAaOqIMA/MVnERXiOxl62yWLjBR9+Q==",
"license": "Apache-2.0",
"dependencies": {
"tslib": "^2.3.0"
}
},
"node_modules/@taiga-ui/kit": {
"version": "4.16.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/kit/-/kit-4.16.0.tgz",
"integrity": "sha512-GFn5MhT5cbmTwL0r+Tlb/SyqpuFAk5qs5PZ60zFZMug3S6ECJZdyDVzZXPpIIyeHbmGRIytoVYo95NO41Cpakg==",
"version": "4.21.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/kit/-/kit-4.21.0.tgz",
"integrity": "sha512-7/V6laRXsu+CQA+LnVVQJhb0m6hH1/FbElqictaiIyIKguIELpq64XMcspEPpnkVkEMatn47YA4xPH6PCF5Mng==",
"license": "Apache-2.0",
"dependencies": {
"tslib": ">=2.8.1"
@@ -4574,25 +4588,25 @@
"@angular/core": ">=16.0.0",
"@angular/forms": ">=16.0.0",
"@angular/router": ">=16.0.0",
"@maskito/angular": "^3.2.0",
"@maskito/core": "^3.2.0",
"@maskito/kit": "^3.2.0",
"@maskito/phone": "^3.2.0",
"@maskito/angular": "^3.2.1",
"@maskito/core": "^3.2.1",
"@maskito/kit": "^3.2.1",
"@maskito/phone": "^3.2.1",
"@ng-web-apis/common": "^4.11.1",
"@ng-web-apis/intersection-observer": "^4.11.1",
"@ng-web-apis/mutation-observer": "^4.11.1",
"@ng-web-apis/resize-observer": "^4.11.1",
"@taiga-ui/cdk": "^4.16.0",
"@taiga-ui/core": "^4.16.0",
"@taiga-ui/i18n": "^4.16.0",
"@taiga-ui/polymorpheus": "^4.7.4",
"@taiga-ui/cdk": "^4.21.0",
"@taiga-ui/core": "^4.21.0",
"@taiga-ui/i18n": "^4.21.0",
"@taiga-ui/polymorpheus": "^4.8.0",
"rxjs": ">=7.0.0"
}
},
"node_modules/@taiga-ui/layout": {
"version": "4.16.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/layout/-/layout-4.16.0.tgz",
"integrity": "sha512-DBmCkVnekD+C70KC/lkUP2nvFxnohwsHHetc2nqBPOs4aJKkPXc7ztcjnfa34W86ogIRHelbCelVv3q72TB0ew==",
"version": "4.21.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/layout/-/layout-4.21.0.tgz",
"integrity": "sha512-st8CEVPZSNCC9a/6pEbzMYO0vdHSWvua/nHoNbE4100AkW593DBQD2442LMF7ENRjFrPS+Ffuv8s5GFGasE/nw==",
"license": "Apache-2.0",
"dependencies": {
"tslib": ">=2.8.1"
@@ -4600,17 +4614,17 @@
"peerDependencies": {
"@angular/common": ">=16.0.0",
"@angular/core": ">=16.0.0",
"@taiga-ui/cdk": "^4.16.0",
"@taiga-ui/core": "^4.16.0",
"@taiga-ui/kit": "^4.16.0",
"@taiga-ui/polymorpheus": "^4.7.4",
"@taiga-ui/cdk": "^4.21.0",
"@taiga-ui/core": "^4.21.0",
"@taiga-ui/kit": "^4.21.0",
"@taiga-ui/polymorpheus": "^4.8.0",
"rxjs": ">=7.0.0"
}
},
"node_modules/@taiga-ui/legacy": {
"version": "4.16.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/legacy/-/legacy-4.16.0.tgz",
"integrity": "sha512-Lrom7+K5UN0zhPhJopnazZIfAVifwKG+A4DunVQ4POdXOAq4PFJjG928SZqVPxhrO7NAS2sxQs9o70XecTr9ew==",
"version": "4.21.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/legacy/-/legacy-4.21.0.tgz",
"integrity": "sha512-B6QeYOyJ5F8WtrL/H3Wa1tiWogH8ruS1aGysASrDSo7wZfS66AzjAdNUuHX3L3HJcqp0xAAVDKL/LNW2S/fckg==",
"license": "Apache-2.0",
"dependencies": {
"tslib": ">=2.8.1"
@@ -4620,12 +4634,12 @@
}
},
"node_modules/@taiga-ui/polymorpheus": {
"version": "4.7.4",
"resolved": "https://registry.npmjs.org/@taiga-ui/polymorpheus/-/polymorpheus-4.7.4.tgz",
"integrity": "sha512-2D5xgTe9QC6WVZdpJsN9SntygzfWKGqREhQZMjb6Kvx+RRudqYr8/b0OgquRvXCVN+PztX3NhMO7bCYH0L/jAg==",
"version": "4.8.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/polymorpheus/-/polymorpheus-4.8.0.tgz",
"integrity": "sha512-gNXk8SVxXf/5wtmm6XeFMQ9RzY0xbM9E4vFxSGwnNegVZtv3T08YX2uoxPgUbgck2/GS9N5B5KvjjbVa0T0L9A==",
"license": "Apache-2.0",
"dependencies": {
"tslib": "^2.7.0"
"tslib": "^2.8.1"
},
"peerDependencies": {
"@angular/core": ">=16.0.0",
@@ -4633,12 +4647,12 @@
}
},
"node_modules/@taiga-ui/styles": {
"version": "4.16.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/styles/-/styles-4.16.0.tgz",
"integrity": "sha512-0Gjnw1HiicQz9cx9WgbC7fAJxTpeXje7ARqgUMryK7SIGfTt5VQisnBcTD/aImKLkvQvne6KOJEjEbKp20gvhw==",
"version": "4.21.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/styles/-/styles-4.21.0.tgz",
"integrity": "sha512-ZFbE1nIz0V3R/4ufXGJxxA+cX17dM7efFT38QKmZpsfSyGJBeASg1FQ5ENqIE3lR8kq+GmNNtro4oo+uCjH/7w==",
"peerDependencies": {
"@taiga-ui/cdk": "^4.16.0",
"@taiga-ui/core": "^4.16.0",
"@taiga-ui/cdk": "^4.21.0",
"@taiga-ui/core": "^4.21.0",
"tslib": ">=2.8.1"
}
},
@@ -9432,9 +9446,9 @@
}
},
"node_modules/libphonenumber-js": {
"version": "1.11.16",
"resolved": "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.11.16.tgz",
"integrity": "sha512-Noyazmt0yOvnG0OeRY45Cd1ur8G7Z0HWVkuCuKe+yysGNxPQwBAODBQQ40j0AIagi9ZWurfmmZWNlpg4h4W+XQ==",
"version": "1.11.18",
"resolved": "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.11.18.tgz",
"integrity": "sha512-okMm/MCoFrm1vByeVFLBdkFIXLSHy/AIK2AEGgY3eoicfWZeOZqv3GfhtQgICkzs/tqorAMm3a4GBg5qNCrqzg==",
"license": "MIT",
"peer": true
},

View File

@@ -47,18 +47,19 @@
"@noble/hashes": "^1.4.0",
"@start9labs/argon2": "^0.2.2",
"@start9labs/start-sdk": "file:../sdk/baseDist",
"@taiga-ui/addon-charts": "4.16.0",
"@taiga-ui/addon-commerce": "4.16.0",
"@taiga-ui/addon-mobile": "4.16.0",
"@taiga-ui/cdk": "4.16.0",
"@taiga-ui/core": "4.16.0",
"@taiga-ui/addon-charts": "4.21.0",
"@taiga-ui/addon-commerce": "4.21.0",
"@taiga-ui/addon-mobile": "4.21.0",
"@taiga-ui/addon-table": "4.21.0",
"@taiga-ui/cdk": "4.21.0",
"@taiga-ui/core": "4.21.0",
"@taiga-ui/event-plugins": "4.3.1",
"@taiga-ui/icons": "4.16.0",
"@taiga-ui/kit": "4.16.0",
"@taiga-ui/layout": "4.16.0",
"@taiga-ui/legacy": "4.16.0",
"@taiga-ui/polymorpheus": "4.7.4",
"@taiga-ui/styles": "4.16.0",
"@taiga-ui/icons": "4.21.0",
"@taiga-ui/kit": "4.21.0",
"@taiga-ui/layout": "4.21.0",
"@taiga-ui/legacy": "4.21.0",
"@taiga-ui/polymorpheus": "4.8.0",
"@taiga-ui/styles": "4.21.0",
"@tinkoff/ng-dompurify": "4.0.0",
"ansi-to-html": "^0.7.2",
"base64-js": "^1.5.1",

View File

@@ -20,7 +20,7 @@ import {
} from '@taiga-ui/kit'
import { tuiTextfieldOptionsProvider } from '@taiga-ui/legacy'
import { PatchDB } from 'patch-db-client'
import { filter, pairwise } from 'rxjs'
import { filter, of, pairwise } from 'rxjs'
import {
PATCH_CACHE,
PatchDbSource,
@@ -52,10 +52,10 @@ export const APP_PROVIDERS: Provider[] = [
tuiDropdownOptionsProvider({ appearance: 'start-os' }),
{
provide: TUI_DATE_FORMAT,
useValue: {
useValue: of({
mode: 'MDY',
separator: '/',
},
}),
},
{
provide: TUI_DATE_VALUE_TRANSFORMER,

View File

@@ -121,10 +121,7 @@ export class FormComponent<T extends Record<string, any>> implements OnInit {
}
onReset() {
const { value } = this.form
this.form = this.formService.createForm(this.spec)
this.process(compare(this.form.value, value))
tuiMarkControlAsTouchedAndValidate(this.form)
this.markAsDirty()
}

View File

@@ -49,11 +49,24 @@ import { getMenu } from 'src/app/utils/system-utilities'
@import '@taiga-ui/core/styles/taiga-ui-local';
:host {
position: relative;
display: flex;
backdrop-filter: blur(1rem);
border-radius: inherit;
margin-inline-end: 0.875rem;
isolation: isolate;
&::before {
content: '';
position: absolute;
top: 0;
left: -1rem;
right: -0.5rem;
bottom: 0;
transform: skewX(30deg);
border-radius: var(--bumper);
z-index: -1;
backdrop-filter: blur(1rem);
}
}
.link {

View File

@@ -1,26 +1,36 @@
import { ChangeDetectionStrategy, Component, inject } from '@angular/core'
import { toSignal } from '@angular/core/rxjs-interop'
import { TuiIcon } from '@taiga-ui/core'
import { TuiComparator, TuiTable } from '@taiga-ui/addon-table'
import { ToManifestPipe } from 'src/app/routes/portal/pipes/to-manifest'
import { DepErrorService } from 'src/app/services/dep-error.service'
import { PackageDataEntry } from 'src/app/services/patch-db/data-model'
import { getInstalledPrimaryStatus } from 'src/app/services/pkg-status-rendering.service'
import { getManifest } from 'src/app/utils/get-package-data'
import { ServiceComponent } from './service.component'
import { ServicesService } from './services.service'
@Component({
standalone: true,
template: `
<table>
<table tuiTable [(sorter)]="sorter">
<thead>
<tr>
<th [style.width.rem]="3"></th>
<th>Name</th>
<th>Version</th>
<th [style.width.rem]="13">Status</th>
<th tuiTh [requiredSort]="true" [sorter]="name">Name</th>
<th tuiTh>Version</th>
<th
tuiTh
[requiredSort]="true"
[sorter]="status"
[style.width.rem]="13"
>
Status
</th>
<th [style.width.rem]="8" [style.text-indent.rem]="1.5">Controls</th>
</tr>
</thead>
<tbody>
@for (pkg of services(); track $index) {
@for (pkg of services() | tuiTableSort; track $index) {
<tr
appService
[pkg]="pkg"
@@ -39,15 +49,12 @@ import { ServicesService } from './services.service'
styles: `
:host {
position: relative;
max-width: 64rem;
margin: 0 auto;
font-size: 1rem;
overflow: hidden;
}
table {
width: calc(100% - 4rem);
margin: 2rem;
width: 100%;
}
tr:not(:last-child) {
@@ -57,6 +64,8 @@ import { ServicesService } from './services.service'
th {
text-transform: uppercase;
color: var(--tui-text-secondary);
background: none;
border: none;
font: var(--tui-font-text-s);
font-weight: bold;
text-align: left;
@@ -69,22 +78,25 @@ import { ServicesService } from './services.service'
}
:host-context(tui-root._mobile) {
height: calc(100vh - 7.375rem);
table {
width: 100%;
margin: 0;
}
thead {
display: none;
}
}
`,
imports: [TuiIcon, ServiceComponent, ToManifestPipe],
imports: [ServiceComponent, ToManifestPipe, TuiTable],
changeDetection: ChangeDetectionStrategy.OnPush,
})
export class DashboardComponent {
readonly services = toSignal(inject(ServicesService))
readonly errors = toSignal(inject(DepErrorService).depErrors$)
readonly name: TuiComparator<PackageDataEntry> = (a, b) =>
getManifest(b).title.toLowerCase() > getManifest(a).title.toLowerCase()
? -1
: 1
readonly status: TuiComparator<PackageDataEntry> = (a, b) =>
getInstalledPrimaryStatus(b) > getInstalledPrimaryStatus(a) ? -1 : 1
sorter = this.name
}

View File

@@ -172,7 +172,8 @@ export class ActionInputModal {
async execute(input: object) {
if (await this.checkConflicts(input)) {
return this.actionService.execute(this.pkgInfo.id, this.actionId, input)
await this.actionService.execute(this.pkgInfo.id, this.actionId, input)
this.context.$implicit.complete()
}
}

View File

@@ -81,6 +81,7 @@ import { MarketplaceControlsComponent } from './controls.component'
.preview-wrapper {
overflow-y: auto;
height: 100%;
max-width: 100%;
@media (min-width: 768px) {

View File

@@ -27,16 +27,15 @@ export function renderPkgStatus(
return { primary, dependency, health }
}
function getInstalledPrimaryStatus(pkg: T.PackageDataEntry): PrimaryStatus {
if (
Object.values(pkg.requestedActions).some(
r => r.active && r.request.severity === 'critical',
)
) {
return 'actionRequired'
} else {
return pkg.status.main
}
export function getInstalledPrimaryStatus({
requestedActions,
status,
}: T.PackageDataEntry): PrimaryStatus {
return Object.values(requestedActions).some(
r => r.active && r.request.severity === 'critical',
)
? 'actionRequired'
: status.main
}
function getDependencyStatus(depErrors: PkgDependencyErrors): DependencyStatus {

View File

@@ -8,7 +8,7 @@ export function getDepDetails(
allPkgs: AllPackageData,
depId: string,
) {
const { title, icon, versionRange } = pkg.currentDependencies[depId]
const { title, icon, versionRange } = pkg.currentDependencies[depId] || {}
if (
allPkgs[depId] &&