fix ts errors

This commit is contained in:
Matt Hill
2023-11-13 16:58:55 -07:00
parent e92bd61545
commit 8403ccd3da
5 changed files with 287 additions and 277 deletions

327
web/package-lock.json generated
View File

@@ -25,11 +25,11 @@
"@start9labs/argon2": "^0.2.2", "@start9labs/argon2": "^0.2.2",
"@start9labs/emver": "^0.1.5", "@start9labs/emver": "^0.1.5",
"@start9labs/start-sdk": "0.4.0-rev0.lib0.rc5", "@start9labs/start-sdk": "0.4.0-rev0.lib0.rc5",
"@taiga-ui/addon-charts": "3.28.0", "@taiga-ui/addon-charts": "3.53.0",
"@taiga-ui/cdk": "3.28.0", "@taiga-ui/cdk": "3.53.0",
"@taiga-ui/core": "3.28.0", "@taiga-ui/core": "3.53.0",
"@taiga-ui/icons": "3.28.0", "@taiga-ui/icons": "3.53.0",
"@taiga-ui/kit": "3.28.0", "@taiga-ui/kit": "3.53.0",
"angular-svg-round-progressbar": "^9.0.0", "angular-svg-round-progressbar": "^9.0.0",
"ansi-to-html": "^0.7.2", "ansi-to-html": "^0.7.2",
"base64-js": "^1.5.1", "base64-js": "^1.5.1",
@@ -3746,7 +3746,6 @@
"version": "3.0.6", "version": "3.0.6",
"resolved": "https://registry.npmjs.org/@ng-web-apis/common/-/common-3.0.6.tgz", "resolved": "https://registry.npmjs.org/@ng-web-apis/common/-/common-3.0.6.tgz",
"integrity": "sha512-ral+lzGpFS3aOCFB5DcHOI4lZhhp8GH4BnjSbngH2Xk8J0FKYdxRzvcPQVy7hS+TPUu0tW9uFVp6cC7odu3iyQ==", "integrity": "sha512-ral+lzGpFS3aOCFB5DcHOI4lZhhp8GH4BnjSbngH2Xk8J0FKYdxRzvcPQVy7hS+TPUu0tW9uFVp6cC7odu3iyQ==",
"peer": true,
"dependencies": { "dependencies": {
"tslib": "^2.2.0" "tslib": "^2.2.0"
}, },
@@ -3757,9 +3756,9 @@
} }
}, },
"node_modules/@ng-web-apis/intersection-observer": { "node_modules/@ng-web-apis/intersection-observer": {
"version": "3.0.0", "version": "3.1.6",
"resolved": "https://registry.npmjs.org/@ng-web-apis/intersection-observer/-/intersection-observer-3.0.0.tgz", "resolved": "https://registry.npmjs.org/@ng-web-apis/intersection-observer/-/intersection-observer-3.1.6.tgz",
"integrity": "sha512-Y3ts9WgXG/A6atyMlFOoP8ZNczUNxUGHSV4ii4xCepwcKW2gN/kkimsP4oPtb7UsTWzN1tF1n0bgD2civraZiA==", "integrity": "sha512-Pzk0ycnYpq+EUf60kz+/A7nvCmhYzThc4ArwONwZzJqRF5xOS97CVWObs8hesorXxQdqlsrDNiu+JWuGxEvpzQ==",
"dependencies": { "dependencies": {
"tslib": "^2.2.0" "tslib": "^2.2.0"
}, },
@@ -3772,7 +3771,6 @@
"version": "3.0.6", "version": "3.0.6",
"resolved": "https://registry.npmjs.org/@ng-web-apis/mutation-observer/-/mutation-observer-3.0.6.tgz", "resolved": "https://registry.npmjs.org/@ng-web-apis/mutation-observer/-/mutation-observer-3.0.6.tgz",
"integrity": "sha512-UW1qoUi2whH0uWkVz5qpdYCLs1u2T0E0QoCMQKZfLEkBpsWRTkT0PTCa9WWX/BhehaSPg23nZZm8BEixd6PI9w==", "integrity": "sha512-UW1qoUi2whH0uWkVz5qpdYCLs1u2T0E0QoCMQKZfLEkBpsWRTkT0PTCa9WWX/BhehaSPg23nZZm8BEixd6PI9w==",
"peer": true,
"dependencies": { "dependencies": {
"tslib": "^2.2.0" "tslib": "^2.2.0"
}, },
@@ -3785,7 +3783,6 @@
"version": "3.0.6", "version": "3.0.6",
"resolved": "https://registry.npmjs.org/@ng-web-apis/resize-observer/-/resize-observer-3.0.6.tgz", "resolved": "https://registry.npmjs.org/@ng-web-apis/resize-observer/-/resize-observer-3.0.6.tgz",
"integrity": "sha512-QdGYdEdC0AzFonLfNOnyYyeCwnvK9jlskoeefvJN3Yyvds3ivBrrTjpeDOdiLsQpCPBp9/673imgq7355vkQow==", "integrity": "sha512-QdGYdEdC0AzFonLfNOnyYyeCwnvK9jlskoeefvJN3Yyvds3ivBrrTjpeDOdiLsQpCPBp9/673imgq7355vkQow==",
"peer": true,
"dependencies": { "dependencies": {
"tslib": "^2.2.0" "tslib": "^2.2.0"
}, },
@@ -4063,35 +4060,35 @@
} }
}, },
"node_modules/@taiga-ui/addon-charts": { "node_modules/@taiga-ui/addon-charts": {
"version": "3.28.0", "version": "3.53.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/addon-charts/-/addon-charts-3.28.0.tgz", "resolved": "https://registry.npmjs.org/@taiga-ui/addon-charts/-/addon-charts-3.53.0.tgz",
"integrity": "sha512-ZLsOKrEfni8T+ppteJLULooRqtmvP8aZ0cf7WUEEjEeNR05out6eh8a3uHsnx241HI/or8b4OVKHbTmiFm9Mzg==", "integrity": "sha512-hmZVovX7Pg9lwz33lzITVRCWDB1SzA68KFxxrVAgkRIw05il9pv7XUuCE9hv/Yb7F7w7LEZoz0+TohB09FW/EQ==",
"dependencies": { "dependencies": {
"tslib": ">=2.0.0" "tslib": ">=2.0.0"
}, },
"peerDependencies": { "peerDependencies": {
"@angular/common": ">=12.0.0", "@angular/common": ">=12.0.0",
"@angular/core": ">=12.0.0", "@angular/core": ">=12.0.0",
"@ng-web-apis/common": ">=2.0.0", "@ng-web-apis/common": ">=3.0.0",
"@taiga-ui/cdk": ">=3.28.0", "@taiga-ui/cdk": ">=3.53.0",
"@taiga-ui/core": ">=3.28.0", "@taiga-ui/core": ">=3.53.0",
"@tinkoff/ng-polymorpheus": ">=4.0.0" "@tinkoff/ng-polymorpheus": ">=4.0.0"
} }
}, },
"node_modules/@taiga-ui/cdk": { "node_modules/@taiga-ui/cdk": {
"version": "3.28.0", "version": "3.53.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/cdk/-/cdk-3.28.0.tgz", "resolved": "https://registry.npmjs.org/@taiga-ui/cdk/-/cdk-3.53.0.tgz",
"integrity": "sha512-U9LTaiaHABanwxssPyutqiK1I8aUKX8ZpJ3CpMvhxszHC3zMYp4/N3RvxYfI8Mb2sqeLR8D+x85EElbWQIxRkA==", "integrity": "sha512-/+knIWNVxywdxxq3MwYGMSGBcc+bJ0PLc9Qnn2KyhxhQylWx9OD1O3gO64BE+pdmcCaLH0bye5j52wy+4bpowg==",
"dependencies": { "dependencies": {
"@ng-web-apis/common": "2.1.0", "@ng-web-apis/common": "3.0.6",
"@ng-web-apis/mutation-observer": "2.0.0", "@ng-web-apis/mutation-observer": "3.0.6",
"@ng-web-apis/resize-observer": "2.0.0", "@ng-web-apis/resize-observer": "3.0.6",
"@tinkoff/ng-event-plugins": "3.1.0", "@tinkoff/ng-event-plugins": "3.1.0",
"@tinkoff/ng-polymorpheus": "4.1.0", "@tinkoff/ng-polymorpheus": "4.2.0",
"tslib": "2.5.2" "tslib": "2.6.2"
}, },
"optionalDependencies": { "optionalDependencies": {
"ng-morph": "2.2.4", "ng-morph": "4.0.0",
"parse5": "6.0.1" "parse5": "6.0.1"
}, },
"peerDependencies": { "peerDependencies": {
@@ -4102,66 +4099,12 @@
"rxjs": ">=6.0.0" "rxjs": ">=6.0.0"
} }
}, },
"node_modules/@taiga-ui/cdk/node_modules/@ng-web-apis/common": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/@ng-web-apis/common/-/common-2.1.0.tgz",
"integrity": "sha512-6DLtrsk59z9YwfR8Pm1DiExXpxvMk/RVry/mfsAKkyRmgCGICgDdyQ+eWMVhrOIyUAtt9V+DRvHUeC6iYaHKNQ==",
"dependencies": {
"tslib": "^2.2.0"
},
"peerDependencies": {
"@angular/common": ">=12.0.0",
"@angular/core": ">=12.0.0",
"rxjs": ">=6.4.0"
}
},
"node_modules/@taiga-ui/cdk/node_modules/@ng-web-apis/mutation-observer": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/@ng-web-apis/mutation-observer/-/mutation-observer-2.0.0.tgz",
"integrity": "sha512-f51Cu2DloNze1HaTWdUbtYFnt9VXhzpEnHDd9KFdiKOUNfEDx7wrSXIEQqv810hrq7F2jcIAERCdiqV6ItH7Pg==",
"dependencies": {
"tslib": "^2.2.0"
},
"peerDependencies": {
"@angular/core": ">=12.0.0",
"@ng-web-apis/common": ">=2.0.0"
}
},
"node_modules/@taiga-ui/cdk/node_modules/@ng-web-apis/resize-observer": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/@ng-web-apis/resize-observer/-/resize-observer-2.0.0.tgz",
"integrity": "sha512-umuXJepTYBCI3ZcW9873fozO0qt1PeHLBNM+wXA+7Wphy35+RQcPNmkwfgkKqWceIjlYAvyuPTNWa5TM1OEeqg==",
"dependencies": {
"tslib": "^2.2.0"
},
"peerDependencies": {
"@angular/core": ">=12.0.0",
"@ng-web-apis/common": ">=2.0.0"
}
},
"node_modules/@taiga-ui/cdk/node_modules/@tinkoff/ng-polymorpheus": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/@tinkoff/ng-polymorpheus/-/ng-polymorpheus-4.1.0.tgz",
"integrity": "sha512-rhe7Fe+rTK5cqfbeySy9fmwBilgMUGkSVX4rrkpmPRSTDhSh/djrRUW0q5ukbN56Rx/AKSYZ5B/nEqY+HL1jZg==",
"dependencies": {
"tslib": "^2.0.0"
},
"peerDependencies": {
"@angular/core": ">=12.0.0",
"@angular/platform-browser": ">=12.0.0"
}
},
"node_modules/@taiga-ui/cdk/node_modules/tslib": {
"version": "2.5.2",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.2.tgz",
"integrity": "sha512-5svOrSA2w3iGFDs1HibEVBGbDrAY82bFQ3HZ3ixB+88nsbsWQoKqDRb5UBYAUPEzbBn6dAp5gRNXglySbx1MlA=="
},
"node_modules/@taiga-ui/core": { "node_modules/@taiga-ui/core": {
"version": "3.28.0", "version": "3.53.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/core/-/core-3.28.0.tgz", "resolved": "https://registry.npmjs.org/@taiga-ui/core/-/core-3.53.0.tgz",
"integrity": "sha512-7P62xmja4kpEwVe43zgMfSg1UmYzkdMjNr4DF1S1zU8u0gKQGYHcUFQL1hqTJk6W50xSXVyi4tlWKKCXMvEd5Q==", "integrity": "sha512-3YgkJbnXeZ4FzDdoRl9XOD0r+1RpMwjXSku/fbAt78X8+uRCWMJl9dVJzhTwhcD5HmwmNOjANAr2DtqAikfcOg==",
"dependencies": { "dependencies": {
"@taiga-ui/i18n": "^3.28.0", "@taiga-ui/i18n": "^3.53.0",
"tslib": ">=2.0.0" "tslib": ">=2.0.0"
}, },
"peerDependencies": { "peerDependencies": {
@@ -4171,10 +4114,10 @@
"@angular/forms": ">=12.0.0", "@angular/forms": ">=12.0.0",
"@angular/platform-browser": ">=12.0.0", "@angular/platform-browser": ">=12.0.0",
"@angular/router": ">=12.0.0", "@angular/router": ">=12.0.0",
"@ng-web-apis/common": ">=2.0.0", "@ng-web-apis/common": ">=3.0.0",
"@ng-web-apis/mutation-observer": ">=2.0.0", "@ng-web-apis/mutation-observer": ">=3.0.0",
"@taiga-ui/cdk": ">=3.28.0", "@taiga-ui/cdk": ">=3.53.0",
"@taiga-ui/i18n": ">=3.28.0", "@taiga-ui/i18n": ">=3.53.0",
"@tinkoff/ng-event-plugins": ">=3.1.0", "@tinkoff/ng-event-plugins": ">=3.1.0",
"@tinkoff/ng-polymorpheus": ">=4.0.0", "@tinkoff/ng-polymorpheus": ">=4.0.0",
"rxjs": ">=6.0.0" "rxjs": ">=6.0.0"
@@ -4194,22 +4137,25 @@
} }
}, },
"node_modules/@taiga-ui/icons": { "node_modules/@taiga-ui/icons": {
"version": "3.28.0", "version": "3.53.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/icons/-/icons-3.28.0.tgz", "resolved": "https://registry.npmjs.org/@taiga-ui/icons/-/icons-3.53.0.tgz",
"integrity": "sha512-TzQEKgRLP5f+wGsDLMqnBUYPhCN/jgRzQbOWZPIrl+CzaYQTbsFRo1YlKEfMO3Wk55R8QBKv0qpj35+i2Q8Mmg==", "integrity": "sha512-rQhLE4Z27r/OUmZHp3R9KXnz3TDQbzPTqoLuwNKAjrJuZ0NqnCJ74hm50RaiWAs5cO5tLZPjt0QSEi+NnM9qNg==",
"dependencies": { "dependencies": {
"tslib": "^2.2.0" "tslib": ">=2.0.0"
},
"peerDependencies": {
"@taiga-ui/cdk": ">=3.53.0"
} }
}, },
"node_modules/@taiga-ui/kit": { "node_modules/@taiga-ui/kit": {
"version": "3.28.0", "version": "3.53.0",
"resolved": "https://registry.npmjs.org/@taiga-ui/kit/-/kit-3.28.0.tgz", "resolved": "https://registry.npmjs.org/@taiga-ui/kit/-/kit-3.53.0.tgz",
"integrity": "sha512-jLi/mmIS7kqG1FEY7LT+1uH76pEAiWZsZEQH+3rOwvEGaQBjLE73OPf83f/swaYtFm/DgJemMNnfEMYu661DYA==", "integrity": "sha512-ZKWRc5aBDPZ+9L+tlWVi9kNV1PEraCmjn4QSykxtz+gyZZU19sTwwpjitFujAVFeH7fI48W+pW64pn4s7GtFAg==",
"dependencies": { "dependencies": {
"@maskito/angular": "0.11.1", "@maskito/angular": "1.8.1",
"@maskito/core": "0.11.1", "@maskito/core": "1.8.1",
"@maskito/kit": "0.11.1", "@maskito/kit": "1.8.1",
"@ng-web-apis/intersection-observer": "3.0.0", "@ng-web-apis/intersection-observer": "3.1.6",
"text-mask-core": "5.1.2", "text-mask-core": "5.1.2",
"tslib": ">=2.0.0" "tslib": ">=2.0.0"
}, },
@@ -4218,42 +4164,42 @@
"@angular/core": ">=12.0.0", "@angular/core": ">=12.0.0",
"@angular/forms": ">=12.0.0", "@angular/forms": ">=12.0.0",
"@angular/router": ">=12.0.0", "@angular/router": ">=12.0.0",
"@ng-web-apis/common": ">=2.0.0", "@ng-web-apis/common": ">=3.0.0",
"@ng-web-apis/mutation-observer": ">=2.0.0", "@ng-web-apis/mutation-observer": ">=3.0.0",
"@ng-web-apis/resize-observer": ">=2.0.0", "@ng-web-apis/resize-observer": ">=3.0.0",
"@taiga-ui/cdk": ">=3.28.0", "@taiga-ui/cdk": ">=3.53.0",
"@taiga-ui/core": ">=3.28.0", "@taiga-ui/core": ">=3.53.0",
"@taiga-ui/i18n": ">=3.28.0", "@taiga-ui/i18n": ">=3.53.0",
"@tinkoff/ng-polymorpheus": ">=4.0.0", "@tinkoff/ng-polymorpheus": ">=4.0.0",
"rxjs": ">=6.0.0" "rxjs": ">=6.0.0"
} }
}, },
"node_modules/@taiga-ui/kit/node_modules/@maskito/angular": { "node_modules/@taiga-ui/kit/node_modules/@maskito/angular": {
"version": "0.11.1", "version": "1.8.1",
"resolved": "https://registry.npmjs.org/@maskito/angular/-/angular-0.11.1.tgz", "resolved": "https://registry.npmjs.org/@maskito/angular/-/angular-1.8.1.tgz",
"integrity": "sha512-80V4FT2jHv+VrJA2gRJpvWvbYVJvPHHoS0ZDqt8DZO/ejWe2SJP3+i/tFHar3i423tXk59dBLp0ahfwkaaNN1A==", "integrity": "sha512-iT9/YK+lTRd8ofU1Qd2pJHofshi/QnSGXS9MBIjt8Mk034pLCYutB5ua+2kiZYMdPk7kyuaSXYZOSL/Pt5cBuA==",
"dependencies": { "dependencies": {
"tslib": "^2.3.0" "tslib": "2.6.2"
}, },
"peerDependencies": { "peerDependencies": {
"@angular/common": ">=12.0.0", "@angular/common": ">=12.0.0",
"@angular/core": ">=12.0.0", "@angular/core": ">=12.0.0",
"@angular/forms": ">=12.0.0", "@angular/forms": ">=12.0.0",
"@maskito/core": "^0.11.1", "@maskito/core": "^1.8.1",
"rxjs": ">=6.0.0" "rxjs": ">=6.0.0"
} }
}, },
"node_modules/@taiga-ui/kit/node_modules/@maskito/core": { "node_modules/@taiga-ui/kit/node_modules/@maskito/core": {
"version": "0.11.1", "version": "1.8.1",
"resolved": "https://registry.npmjs.org/@maskito/core/-/core-0.11.1.tgz", "resolved": "https://registry.npmjs.org/@maskito/core/-/core-1.8.1.tgz",
"integrity": "sha512-8wPNVvlf+q1g4KF1By++eppIZxYs0XWCd/dzvtbfLQRwPXIPTnp9Cm8yWFPGbUVkfA5znkpk5OiiCLzkuYYg7A==" "integrity": "sha512-h9+Z91WASHQ6z6kDP7uIHyMUPxNwA1mOIPsFxdg2MHq1RASFUNKHj66uU5xuR0OJu17qcCCzUu7ixZ43QQ/HYg=="
}, },
"node_modules/@taiga-ui/kit/node_modules/@maskito/kit": { "node_modules/@taiga-ui/kit/node_modules/@maskito/kit": {
"version": "0.11.1", "version": "1.8.1",
"resolved": "https://registry.npmjs.org/@maskito/kit/-/kit-0.11.1.tgz", "resolved": "https://registry.npmjs.org/@maskito/kit/-/kit-1.8.1.tgz",
"integrity": "sha512-5P+WC/oP9Cwk2aEyxGLpy934jpOwagvm2wLGGfNLZ7D0WaXSuDtXJGizG0Yt6EOnx3/EdChwI3WcmdLhDKK+bQ==", "integrity": "sha512-eevH2iyqRjxw8kzt7gmLETrlkPTj4Mq1mbIOOD2VQ+O33ocNFl1a87s02mRQGk6UmSJBmHLT/2EaVfUEswBmWA==",
"peerDependencies": { "peerDependencies": {
"@maskito/core": "^0.11.1" "@maskito/core": "^1.8.1"
} }
}, },
"node_modules/@tinkoff/ng-event-plugins": { "node_modules/@tinkoff/ng-event-plugins": {
@@ -4273,7 +4219,6 @@
"version": "4.2.0", "version": "4.2.0",
"resolved": "https://registry.npmjs.org/@tinkoff/ng-polymorpheus/-/ng-polymorpheus-4.2.0.tgz", "resolved": "https://registry.npmjs.org/@tinkoff/ng-polymorpheus/-/ng-polymorpheus-4.2.0.tgz",
"integrity": "sha512-DBjAXyfYq5PUuJSZK42TSJXqgAFkinavUdHy9bPSy88tLl0ZH3h+JK1EQSYqRP0WJzBe4lXywwDyH4HjagK7sg==", "integrity": "sha512-DBjAXyfYq5PUuJSZK42TSJXqgAFkinavUdHy9bPSy88tLl0ZH3h+JK1EQSYqRP0WJzBe4lXywwDyH4HjagK7sg==",
"peer": true,
"dependencies": { "dependencies": {
"tslib": "2.6.2" "tslib": "2.6.2"
}, },
@@ -4292,37 +4237,45 @@
} }
}, },
"node_modules/@ts-morph/common": { "node_modules/@ts-morph/common": {
"version": "0.9.2", "version": "0.20.0",
"resolved": "https://registry.npmjs.org/@ts-morph/common/-/common-0.9.2.tgz", "resolved": "https://registry.npmjs.org/@ts-morph/common/-/common-0.20.0.tgz",
"integrity": "sha512-IPyg+c3Am0EBoa63W0f/AKeLrJhvzMzQ4BIvD1baxLopmiHOj1HFTXYxC6e8iTZ+UYtN+/WFM9UyGRnoA20b8g==", "integrity": "sha512-7uKjByfbPpwuzkstL3L5MQyuXPSKdoNG93Fmi2JoDcTf3pEP731JdRFAduRVkOs8oqxPsXKA+ScrWkdQ8t/I+Q==",
"optional": true, "optional": true,
"dependencies": { "dependencies": {
"fast-glob": "^3.2.5", "fast-glob": "^3.2.12",
"minimatch": "^3.0.4", "minimatch": "^7.4.3",
"mkdirp": "^1.0.4", "mkdirp": "^2.1.6",
"path-browserify": "^1.0.1" "path-browserify": "^1.0.1"
} }
}, },
"node_modules/@ts-morph/common/node_modules/brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"optional": true,
"dependencies": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
}
},
"node_modules/@ts-morph/common/node_modules/minimatch": { "node_modules/@ts-morph/common/node_modules/minimatch": {
"version": "3.1.2", "version": "7.4.6",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz",
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "integrity": "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==",
"optional": true, "optional": true,
"dependencies": { "dependencies": {
"brace-expansion": "^1.1.7" "brace-expansion": "^2.0.1"
}, },
"engines": { "engines": {
"node": "*" "node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/@ts-morph/common/node_modules/mkdirp": {
"version": "2.1.6",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-2.1.6.tgz",
"integrity": "sha512-+hEnITedc8LAtIP9u3HJDFIdcLV2vXP33sqLLIzkv1Db1zO/1OxbvYf0Y1OC/S/Qo5dxHXepofhmxL02PsKe+A==",
"optional": true,
"bin": {
"mkdirp": "dist/cjs/src/bin.js"
},
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
} }
}, },
"node_modules/@tsconfig/node10": { "node_modules/@tsconfig/node10": {
@@ -6001,9 +5954,9 @@
} }
}, },
"node_modules/code-block-writer": { "node_modules/code-block-writer": {
"version": "10.1.1", "version": "12.0.0",
"resolved": "https://registry.npmjs.org/code-block-writer/-/code-block-writer-10.1.1.tgz", "resolved": "https://registry.npmjs.org/code-block-writer/-/code-block-writer-12.0.0.tgz",
"integrity": "sha512-67ueh2IRGst/51p0n6FvPrnRjAGHY5F8xdjkgrYE7DDzpJe6qA07RYQ9VcoUeo5ATOjSOiWpSL3SWBRRbempMw==", "integrity": "sha512-q4dMFMlXtKR3XNBHyMHt/3pwYNA69EDk00lloMOaaUMKPUXBw6lpXtbu3MMVG6/uOihGnRDOlkyqsONEUj60+w==",
"optional": true "optional": true
}, },
"node_modules/color-convert": { "node_modules/color-convert": {
@@ -10957,49 +10910,77 @@
} }
}, },
"node_modules/ng-morph": { "node_modules/ng-morph": {
"version": "2.2.4", "version": "4.0.0",
"resolved": "https://registry.npmjs.org/ng-morph/-/ng-morph-2.2.4.tgz", "resolved": "https://registry.npmjs.org/ng-morph/-/ng-morph-4.0.0.tgz",
"integrity": "sha512-4AIsjcvUAT6htnX56DsUPZDQuNhWxmi09exUS6TreD6hKghGuqT3QfRf+K9aFw1FJyCsLsh/0py3S/sMtarsIA==", "integrity": "sha512-+opfMF/33fMQRt38oSPT+fnexZm8c635LaTDKOlAnkaDGRWcOM4EllqLf73m+5+D8gurwYXOkimIzj6Jmpx1cA==",
"optional": true, "optional": true,
"dependencies": { "dependencies": {
"jsonc-parser": "3.0.0", "jsonc-parser": "3.2.0",
"minimatch": "3.0.5", "minimatch": "9.0.1",
"multimatch": "5.0.0", "multimatch": "5.0.0",
"ts-morph": "10.0.2" "semver": "7.4.0",
"ts-morph": "19.0.0"
}, },
"peerDependencies": { "peerDependencies": {
"@angular-devkit/core": ">=11.0.0", "@angular-devkit/core": ">=11.0.0",
"@angular-devkit/schematics": ">=11.0.0" "@angular-devkit/schematics": ">=11.0.0",
} "tslib": "2.5.3"
},
"node_modules/ng-morph/node_modules/brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"optional": true,
"dependencies": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
} }
}, },
"node_modules/ng-morph/node_modules/jsonc-parser": { "node_modules/ng-morph/node_modules/jsonc-parser": {
"version": "3.0.0", "version": "3.2.0",
"resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz",
"integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==",
"optional": true "optional": true
}, },
"node_modules/ng-morph/node_modules/minimatch": { "node_modules/ng-morph/node_modules/lru-cache": {
"version": "3.0.5", "version": "6.0.0",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
"integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
"optional": true, "optional": true,
"dependencies": { "dependencies": {
"brace-expansion": "^1.1.7" "yallist": "^4.0.0"
}, },
"engines": { "engines": {
"node": "*" "node": ">=10"
} }
}, },
"node_modules/ng-morph/node_modules/minimatch": {
"version": "9.0.1",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz",
"integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==",
"optional": true,
"dependencies": {
"brace-expansion": "^2.0.1"
},
"engines": {
"node": ">=16 || 14 >=14.17"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/ng-morph/node_modules/semver": {
"version": "7.4.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.4.0.tgz",
"integrity": "sha512-RgOxM8Mw+7Zus0+zcLEUn8+JfoLpj/huFTItQy2hsM4khuC1HYRDp0cU482Ewn/Fcy6bCjufD8vAj7voC66KQw==",
"optional": true,
"dependencies": {
"lru-cache": "^6.0.0"
},
"bin": {
"semver": "bin/semver.js"
},
"engines": {
"node": ">=10"
}
},
"node_modules/ng-morph/node_modules/yallist": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
"optional": true
},
"node_modules/ng-packagr": { "node_modules/ng-packagr": {
"version": "14.2.2", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-14.2.2.tgz", "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-14.2.2.tgz",
@@ -15083,13 +15064,13 @@
"integrity": "sha512-kXrY75F0s0WD15N2bWKDScKlKgwnusN6dTRzGs1N7LlxQRnazrsBISC1HL4sy2adsyk65Zbx3Ui3IGN8leAFOQ==" "integrity": "sha512-kXrY75F0s0WD15N2bWKDScKlKgwnusN6dTRzGs1N7LlxQRnazrsBISC1HL4sy2adsyk65Zbx3Ui3IGN8leAFOQ=="
}, },
"node_modules/ts-morph": { "node_modules/ts-morph": {
"version": "10.0.2", "version": "19.0.0",
"resolved": "https://registry.npmjs.org/ts-morph/-/ts-morph-10.0.2.tgz", "resolved": "https://registry.npmjs.org/ts-morph/-/ts-morph-19.0.0.tgz",
"integrity": "sha512-TVuIfEqtr9dW25K3Jajqpqx7t/zLRFxKu2rXQZSDjTm4MO4lfmuj1hn8WEryjeDDBFcNOCi+yOmYUYR4HucrAg==", "integrity": "sha512-D6qcpiJdn46tUqV45vr5UGM2dnIEuTGNxVhg0sk5NX11orcouwj6i1bMqZIz2mZTZB1Hcgy7C3oEVhAT+f6mbQ==",
"optional": true, "optional": true,
"dependencies": { "dependencies": {
"@ts-morph/common": "~0.9.0", "@ts-morph/common": "~0.20.0",
"code-block-writer": "^10.1.1" "code-block-writer": "^12.0.0"
} }
}, },
"node_modules/ts-node": { "node_modules/ts-node": {

View File

@@ -50,11 +50,11 @@
"@start9labs/argon2": "^0.2.2", "@start9labs/argon2": "^0.2.2",
"@start9labs/emver": "^0.1.5", "@start9labs/emver": "^0.1.5",
"@start9labs/start-sdk": "0.4.0-rev0.lib0.rc5", "@start9labs/start-sdk": "0.4.0-rev0.lib0.rc5",
"@taiga-ui/addon-charts": "3.28.0", "@taiga-ui/addon-charts": "3.53.0",
"@taiga-ui/cdk": "3.28.0", "@taiga-ui/cdk": "3.53.0",
"@taiga-ui/core": "3.28.0", "@taiga-ui/core": "3.53.0",
"@taiga-ui/icons": "3.28.0", "@taiga-ui/icons": "3.53.0",
"@taiga-ui/kit": "3.28.0", "@taiga-ui/kit": "3.53.0",
"angular-svg-round-progressbar": "^9.0.0", "angular-svg-round-progressbar": "^9.0.0",
"ansi-to-html": "^0.7.2", "ansi-to-html": "^0.7.2",
"base64-js": "^1.5.1", "base64-js": "^1.5.1",

View File

@@ -6,7 +6,7 @@ import { SetupLogsService } from '../../../services/setup-logs.service'
import { Log } from '../../../types/api' import { Log } from '../../../types/api'
import { toLocalIsoString } from '../../../util/to-local-iso-string' import { toLocalIsoString } from '../../../util/to-local-iso-string'
var Convert = require('ansi-to-html') import Convert from 'ansi-to-html'
var convert = new Convert({ var convert = new Convert({
bg: 'transparent', bg: 'transparent',
}) })

View File

@@ -13,24 +13,24 @@
<ion-text color="warning">Websocket Failed. Reconnecting</ion-text> <ion-text color="warning">Websocket Failed. Reconnecting</ion-text>
</p> </p>
<ng-container *ngIf="serverData[0] as timeInfo"> <ion-item>
<ion-item-divider>System Time</ion-item-divider> <ion-label>
<ion-item> <h2>Current Time (UTC)</h2>
<ion-label>Current Time (UTC)</ion-label> <h2>
<h6 slot="end"> {{ serverData[0].value | date : 'MMMM d, y, h:mm:ss a' : 'UTC' }}
{{ timeInfo.systemCurrentTime | date : 'MMMM d, y, h:mm:ss a' : 'UTC' </h2>
}} <p *ngIf="!serverData[0].synced">
</h6> <ion-text color="warning">
</ion-item> NTP not synced, time could be wrong
<ion-item> </ion-text>
<ion-label>Start Time (UTC)</ion-label> </p>
<h6 slot="end"> </ion-label>
{{ timeInfo.systemStartTime | date : 'MMMM d, y, h:mm:ss a' : 'UTC' }} </ion-item>
</h6>
</ion-item> <ion-item>
<ion-item> <ion-label>
<ion-label>Uptime</ion-label> <h1>Uptime</h1>
<h6 *ngIf="timeInfo.systemUptime as uptime" slot="end"> <h2 *ngIf="serverData[1] as uptime">
<b>{{ uptime.days }}</b> <b>{{ uptime.days }}</b>
Days, Days,
<b>{{ uptime.hours }}</b> <b>{{ uptime.hours }}</b>
@@ -39,87 +39,115 @@
Minutes, Minutes,
<b>{{ uptime.seconds }}</b> <b>{{ uptime.seconds }}</b>
Seconds Seconds
</h6> </h2>
</ion-item> </ion-label>
</ng-container> </ion-item>
<ng-container *ngIf="serverData[1] as metrics"> <ng-container *ngIf="serverData[2] as metrics">
<!-- General --> <ng-container *ngIf="metrics.general as general">
<ion-item-divider>General</ion-item-divider> <ion-item-divider>General</ion-item-divider>
<ion-item> <ion-item>
<ion-label>Temperature</ion-label> <ion-label>Temperature</ion-label>
<h6 slot="end">{{ metrics.general.temperature }} °C</h6> <ion-note slot="end">
</ion-item> <ng-container *ngIf="general.temperature; else noTemp">
<!-- Memory --> {{ general.temperature.value }} &deg;C
<ion-item-divider>Memory</ion-item-divider> </ng-container>
<ion-item> <ng-template #noTemp>N/A</ng-template>
<ion-label>Percentage Used</ion-label> </ion-note>
<h6 slot="end">{{ metrics.memory['percentage-used'] }} %</h6> </ion-item>
</ion-item> </ng-container>
<ion-item>
<ion-label>Total</ion-label> <ng-container *ngIf="metrics.memory as memory">
<h6 slot="end">{{ metrics.memory.total }} MiB</h6> <ion-item-divider>Memory</ion-item-divider>
</ion-item> <ion-item>
<ion-item> <ion-label>Percentage Used</ion-label>
<ion-label>Available</ion-label> <ion-note slot="end">
<h6 slot="end">{{ metrics.memory.available }} MiB</h6> {{ memory['percentage-used'].value }} %
</ion-item> </ion-note>
<ion-item> </ion-item>
<ion-label>Used</ion-label> <ion-item>
<h6 slot="end">{{ metrics.memory.used }} MiB</h6> <ion-label>Total</ion-label>
</ion-item> <ion-note slot="end">
<ion-item> <ion-text>{{ memory.total.value }} MiB</ion-text>
<ion-label>Swap Total</ion-label> </ion-note>
<h6 slot="end">{{ metrics.memory['swap-total'] }} MiB</h6> </ion-item>
</ion-item> <ion-item>
<ion-item> <ion-label>Used</ion-label>
<ion-label>Swap Free</ion-label> <ion-note slot="end">
<h6 slot="end">{{ metrics.memory['swap-free'] }} MiB</h6> <ion-text>{{ memory.used.value }} MiB</ion-text>
</ion-item> </ion-note>
<ion-item> </ion-item>
<ion-label>Swap Used</ion-label> <ion-item>
<h6 slot="end">{{ metrics.memory['swap-used'] }} MiB</h6> <ion-label>Available</ion-label>
</ion-item> <ion-note slot="end">{{ memory.available.value }} MiB</ion-note>
<!-- CPU --> </ion-item>
<ion-item-divider>CPU</ion-item-divider> <ion-item>
<ion-item> <ion-label>zram Used</ion-label>
<ion-label>User Space</ion-label> <ion-note slot="end">{{ memory['zram-used'].value }} MiB</ion-note>
<h6 slot="end">{{ metrics.cpu['user-space'] }} %</h6> </ion-item>
</ion-item> <ion-item>
<ion-item> <ion-label>zram Total</ion-label>
<ion-label>Kernel Space</ion-label> <ion-note slot="end">{{ memory['zram-total'].value }} MiB</ion-note>
<h6 slot="end">{{ metrics.cpu['kernel-space'] }} %</h6> </ion-item>
</ion-item> <ion-item>
<ion-item> <ion-label>zram Available</ion-label>
<ion-label>I/O Wait</ion-label> <ion-note slot="end">
<h6 slot="end">{{ metrics.cpu['io-wait'] }} %</h6> {{ memory['zram-available'].value }} MiB
</ion-item> </ion-note>
<ion-item> </ion-item>
<ion-label>Idle</ion-label> </ng-container>
<h6 slot="end">{{ metrics.cpu.idle }} %</h6>
</ion-item> <ng-container *ngIf="metrics.cpu as cpu">
<ion-item> <ion-item-divider>CPU</ion-item-divider>
<ion-label>Usage</ion-label> <ion-item>
<h6 slot="end">{{ metrics.cpu.usage }} %</h6> <ion-label>Percentage Used</ion-label>
</ion-item> <ion-note slot="end">{{ cpu['percentage-used'].value }} %</ion-note>
<!-- Disk --> </ion-item>
<ion-item-divider>Disk</ion-item-divider> <ion-item>
<ion-item> <ion-label>User Space</ion-label>
<ion-label>Size</ion-label> <ion-note slot="end">
<h6 slot="end">{{ metrics.disk.size }} GB</h6> <ion-text>{{ cpu['user-space'].value }} %</ion-text>
</ion-item> </ion-note>
<ion-item> </ion-item>
<ion-label>Used</ion-label> <ion-item>
<h6 slot="end">{{ metrics.disk.used }} GB</h6> <ion-label>Kernel Space</ion-label>
</ion-item> <ion-note slot="end">
<ion-item> <ion-text>{{ cpu['kernel-space'].value }} %</ion-text>
<ion-label>Percentage Used</ion-label> </ion-note>
<h6 slot="end">{{ metrics.disk['percentage-used'] }} %</h6> </ion-item>
</ion-item> <ion-item>
<ion-item> <ion-label>Idle</ion-label>
<ion-label>Available</ion-label> <ion-note slot="end">{{ cpu.idle.value }} %</ion-note>
<h6 slot="end">{{ metrics.disk.available }} GB</h6> </ion-item>
</ion-item> <ion-item>
<ion-label>I/O Wait</ion-label>
<ion-note slot="end">{{ cpu.wait.value }} %</ion-note>
</ion-item>
</ng-container>
<ng-container *ngIf="metrics.disk as disk">
<ion-item-divider>Disk</ion-item-divider>
<ion-item>
<ion-label>Percentage Used</ion-label>
<ion-note slot="end">{{ disk['percentage-used'].value }} %</ion-note>
</ion-item>
<ion-item>
<ion-label>Capacity</ion-label>
<ion-note slot="end">
<ion-text>{{ disk.capacity.value }} GB</ion-text>
</ion-note>
</ion-item>
<ion-item>
<ion-label>Used</ion-label>
<ion-note slot="end">
<ion-text>{{ disk.used.value }} GB</ion-text>
</ion-note>
</ion-item>
<ion-item>
<ion-label>Available</ion-label>
<ion-note slot="end">{{ disk.available.value }} GB</ion-note>
</ion-item>
</ng-container>
</ng-container> </ng-container>
</ion-item-group> </ion-item-group>

View File

@@ -19,6 +19,7 @@
"target": "es2020", "target": "es2020",
"module": "es2020", "module": "es2020",
"lib": ["es2020", "dom"], "lib": ["es2020", "dom"],
"allowSyntheticDefaultImports": true,
"paths": { "paths": {
/* These paths are relative to each app base folder */ /* These paths are relative to each app base folder */
"@start9labs/marketplace": ["../marketplace/src/public-api"], "@start9labs/marketplace": ["../marketplace/src/public-api"],