From 85947817803be895aea9f504809e67bf59a57ade Mon Sep 17 00:00:00 2001 From: waterplea Date: Fri, 5 Apr 2024 12:06:02 +0700 Subject: [PATCH] refactor: completely remove ionic --- web/README.md | 2 +- web/angular.json | 100 +- web/ionic.config.json | 23 - web/package-lock.json | 1672 +---------------- web/package.json | 30 +- .../list/categories/categories.component.scss | 1 + .../list/categories/categories.component.ts | 3 +- .../assets/fonts/text-security-disc.woff2 | Bin 784 -> 0 bytes .../taiga-ui/icons/tuiIconBitcoinOutline.svg | 1 + .../taiga-ui/icons/tuiIconRocketOutline.svg | 1 + .../src/directives/safe-links.directive.ts | 2 +- web/projects/shared/styles/global.scss | 29 - web/projects/shared/styles/shared.scss | 129 -- web/projects/shared/styles/variables.scss | 134 -- web/projects/ui/src/app/app.component.html | 17 +- web/projects/ui/src/app/app.component.scss | 12 +- web/projects/ui/src/app/app.component.ts | 5 +- web/projects/ui/src/app/app.module.ts | 10 +- web/projects/ui/src/app/app.providers.ts | 4 +- .../ui/src/app/apps/loading/loading.module.ts | 15 - .../apps/portal/components/card.component.ts | 145 -- .../apps/portal/utils/system-tab-resolver.ts | 5 - .../apps/portal/utils/to-navigation-item.ts | 32 - .../common/os-welcome/os-welcome.module.ts | 10 - .../common/os-welcome/os-welcome.page.html | 34 - .../common/os-welcome/os-welcome.page.scss | 34 - .../app/common/os-welcome/os-welcome.page.ts | 14 - .../notifications-toast.component.ts | 0 .../refresh-alert.component.ts | 0 .../modals => components}/report.component.ts | 2 +- .../sidebar-host.component.ts | 0 .../svg-definitions.component.ts | 0 .../toast-container.component.ts | 0 .../update-toast.component.ts | 0 .../src/app/components/welcome.component.ts | 49 + .../diagnostic/diagnostic.module.ts | 0 .../diagnostic/home/home.module.ts | 0 .../diagnostic/home/home.page.html | 0 .../diagnostic/home/home.page.scss | 0 .../diagnostic/home/home.page.ts | 0 .../diagnostic/logs/logs.module.ts | 0 .../diagnostic/logs/logs.page.html | 0 .../diagnostic/logs/logs.page.ts | 2 +- .../diagnostic/services/diagnostic.service.ts | 0 .../services/live-diagnostic.service.ts | 0 .../services/mock-diagnostic.service.ts | 0 .../{apps => routes}/loading/loading.page.ts | 8 +- .../login/ca-wizard/ca-wizard.component.html | 0 .../login/ca-wizard/ca-wizard.component.scss | 0 .../login/ca-wizard/ca-wizard.component.ts | 0 .../{apps => routes}/login/login.module.ts | 0 .../{apps => routes}/login/login.page.html | 0 .../{apps => routes}/login/login.page.scss | 0 .../app/{apps => routes}/login/login.page.ts | 0 .../portal/components/actions.component.ts | 0 .../portal/components/form.component.ts | 4 +- .../components}/form/control.directive.ts | 0 .../portal/components}/form/control.ts | 0 .../form/form-array/form-array.component.html | 2 +- .../form/form-array/form-array.component.scss | 0 .../form/form-array/form-array.component.ts | 0 .../form/form-color/form-color.component.html | 0 .../form/form-color/form-color.component.scss | 0 .../form/form-color/form-color.component.ts | 0 .../form-control/form-control.component.html | 0 .../form-control/form-control.component.scss | 0 .../form-control/form-control.component.ts | 0 .../form-control/form-control.providers.ts | 0 .../form-datetime.component.html | 8 +- .../form-datetime/form-datetime.component.ts | 0 .../form/form-file/form-file.component.html | 0 .../form/form-file/form-file.component.scss | 0 .../form/form-file/form-file.component.ts | 0 .../form/form-group/form-group.component.html | 2 +- .../form/form-group/form-group.component.scss | 0 .../form/form-group/form-group.component.ts | 0 .../form/form-group/form-group.providers.ts | 0 .../form-multiselect.component.html | 0 .../form-multiselect.component.ts | 0 .../form-number/form-number.component.html | 0 .../form/form-number/form-number.component.ts | 0 .../form-object/form-object.component.html | 0 .../form-object/form-object.component.scss | 0 .../form/form-object/form-object.component.ts | 0 .../form-select/form-select.component.html | 0 .../form/form-select/form-select.component.ts | 0 .../form/form-text/form-text.component.html | 0 .../form/form-text/form-text.component.scss | 1 - .../form/form-text/form-text.component.ts | 2 +- .../form-textarea.component.html | 0 .../form-textarea/form-textarea.component.ts | 0 .../form-toggle/form-toggle.component.html | 0 .../form/form-toggle/form-toggle.component.ts | 0 .../form/form-union/form-union.component.html | 0 .../form/form-union/form-union.component.scss | 0 .../form/form-union/form-union.component.ts | 0 .../portal/components}/form/form.module.ts | 0 .../portal/components}/form/hint.pipe.ts | 0 .../components}/form/invalid.service.ts | 0 .../portal/components}/form/mustache.pipe.ts | 0 .../components/header/about.component.ts | 0 .../components/header/breadcrumb.component.ts | 2 +- .../components/header/connection.component.ts | 0 .../components/header/corner.component.ts | 4 +- .../components/header/header.component.ts | 2 +- .../components/header/home.component.ts | 0 .../components/header/menu.component.ts | 2 +- .../components/header/mobile.component.ts | 4 +- .../header/notification.component.ts | 2 +- .../header/notifications.component.ts | 4 +- .../components/header/snek.component.ts | 0 .../components/header/snek.directive.ts | 0 .../interfaces/address-group.component.ts | 0 .../interfaces/address-item.component.ts | 6 +- .../directives/clearnet.directive.ts | 4 +- .../interfaces/directives/local.directive.ts | 0 .../interfaces/directives/tor.directive.ts | 0 .../interfaces/interface.component.ts | 2 +- .../components/interfaces/interface.utils.ts | 2 +- .../logs/logs-download.directive.ts | 0 .../components/logs/logs-fetch.directive.ts | 0 .../components/logs/logs.component.html | 0 .../components/logs/logs.component.scss | 0 .../portal/components/logs/logs.component.ts | 0 .../portal/components/logs/logs.pipe.ts | 0 .../portal/components/tabs.component.ts | 6 +- .../portal/modals/config-dep.component.ts | 0 .../portal/modals/config.component.ts | 12 +- .../portal/modals/prompt.component.ts | 5 +- .../portal/modals}/qr.component.ts | 2 +- .../portal/pipes/to-manifest.ts | 5 +- .../portal/portal.component.ts | 32 +- .../{apps => routes}/portal/portal.routes.ts | 0 .../routes/dashboard/controls.component.ts | 6 +- .../routes/dashboard/dashboard.component.ts | 6 +- .../routes/dashboard/metrics.component.ts | 0 .../routes/dashboard/service.component.ts | 6 +- .../routes/dashboard/services.component.ts | 64 +- .../routes/dashboard}/services.service.ts | 2 +- .../routes/dashboard/status.component.ts | 0 .../portal/routes/dashboard/ui.component.ts | 0 .../routes/dashboard/utilities.component.ts | 5 +- .../components/action-success.component.ts | 0 .../service/components/action.component.ts | 0 .../service/components/actions.component.ts | 6 +- .../components/additional-item.component.ts | 0 .../components/additional.component.ts | 0 .../components/dependencies.component.ts | 0 .../components/dependency.component.ts | 0 .../components/health-check.component.ts | 0 .../components/health-checks.component.ts | 0 .../interface-list-item.component.ts | 0 .../components/interface-list.component.ts | 0 .../service/components/menu-item.component.ts | 0 .../service/components/menu.component.ts | 0 .../service/components/progress.component.ts | 0 .../service/components/property.component.ts | 2 +- .../service/components/status.component.ts | 0 .../service/modals/properties.component.ts | 0 .../service/pipes/group-actions.pipe.ts | 0 .../service/pipes/install-progress.pipe.ts | 0 .../service/pipes/interface-info.pipe.ts | 0 .../service/pipes/to-additional.pipe.ts | 2 +- .../routes/service/pipes/to-menu.pipe.ts | 8 +- .../service/routes/actions.component.ts | 8 +- .../service/routes/interface.component.ts | 2 +- .../routes/service/routes/logs.component.ts | 2 +- .../routes/service/routes/outlet.component.ts | 0 .../service/routes/service.component.ts | 10 +- .../portal/routes/service/service.module.ts | 0 .../routes/service/types/dependency-info.ts | 0 .../system/backups/backups.component.ts | 0 .../backups/components/physical.component.ts | 0 .../backups/components/status.component.ts | 0 .../backups/components/targets.component.ts | 0 .../backups/components/upcoming.component.ts | 0 .../system/backups/modals/backup.component.ts | 2 +- .../system/backups/modals/edit.component.ts | 0 .../backups/modals/history.component.ts | 2 +- .../system/backups/modals/jobs.component.ts | 0 .../backups/modals/recover.component.ts | 0 .../system/backups/modals/target.component.ts | 0 .../backups/modals/targets.component.ts | 4 +- .../system/backups/pipes/duration.pipe.ts | 0 .../backups/pipes/get-backup-icon.pipe.ts | 0 .../backups/pipes/get-display-info.pipe.ts | 0 .../system/backups/pipes/has-error.pipe.ts | 0 .../backups/pipes/to-human-cron.pipe.ts | 0 .../system/backups/pipes/to-options.pipe.ts | 0 .../system/backups/services/create.service.ts | 0 .../backups/services/restore.service.ts | 2 +- .../system/backups/types/backup-config.ts | 0 .../system/backups/types/backup-type.ts | 0 .../system/backups/types/display-info.ts | 0 .../system/backups/types/recover-data.ts | 0 .../system/backups/types/recover-option.ts | 0 .../routes/system/backups/types/target.ts | 0 .../system/backups/utils/job-builder.ts | 0 .../routes/system/logs/logs.component.ts | 14 +- .../components/controls.component.ts | 8 +- .../marketplace/components/menu.component.ts | 1 + .../components/notification.component.ts | 0 .../components/registry.component.ts | 0 .../components/sidebars.component.ts | 0 .../marketplace/components/tile.component.ts | 12 +- .../marketplace/marketplace.component.ts | 5 + .../system/marketplace/marketplace.routes.ts | 0 .../marketplace/modals/preview.component.ts | 0 .../marketplace/modals/registry.component.ts | 2 +- .../system/marketplace/pipes/to-local.pipe.ts | 0 .../marketplace/services/alerts.service.ts | 0 .../marketplace/services/sidebar.service.ts | 0 .../system/marketplace/utils/registry.ts | 0 .../system/notifications/item.component.ts | 4 +- .../notifications/notifications.component.ts | 2 +- .../system/notifications/table.component.ts | 0 .../settings/components/button.component.ts | 0 .../settings/components/menu.component.ts | 0 .../settings/components/sync.component.ts | 0 .../settings/components/update.component.ts | 0 .../settings/modals/update.component.ts | 0 .../settings/routes/domains/constants.ts | 2 +- .../routes/domains/domains.component.ts | 2 +- .../settings/routes/domains/info.component.ts | 0 .../routes/domains/table.component.ts | 0 .../settings/routes/email/email.component.ts | 4 +- .../settings/routes/email/info.component.ts | 0 .../experimental/experimental.component.ts | 0 .../routes/interfaces/ui.component.ts | 4 +- .../settings/routes/proxies/constants.ts | 0 .../settings/routes/proxies/info.component.ts | 0 .../settings/routes/proxies/menu.component.ts | 2 +- .../routes/proxies/proxies.component.ts | 2 +- .../routes/proxies/table.component.ts | 0 .../settings/routes/router/info.component.ts | 0 .../settings/routes/router/primary-ip.pipe.ts | 0 .../routes/router/router.component.ts | 0 .../settings/routes/router/table.component.ts | 0 .../routes/sessions/platform-info.pipe.ts | 0 .../routes/sessions/sessions.component.ts | 0 .../routes/sessions/table.component.ts | 0 .../settings/routes/ssh/info.component.ts | 0 .../settings/routes/ssh/ssh.component.ts | 0 .../settings/routes/ssh/table.component.ts | 2 +- .../settings/routes/wifi/info.component.ts | 0 .../settings/routes/wifi/table.component.ts | 2 +- .../system/settings/routes/wifi/utils.ts | 0 .../settings/routes/wifi/wifi.component.ts | 2 +- .../system/settings/routes/wifi/wifi.const.ts | 0 .../system/settings/settings.component.ts | 0 .../routes/system/settings/settings.routes.ts | 0 .../system/settings/settings.service.ts | 8 +- .../routes/system/settings/settings.types.ts | 0 .../system/sideload/package.component.ts | 2 +- .../system/sideload/sideload.component.ts | 0 .../routes/system/sideload/sideload.utils.ts | 0 .../portal/routes/system/system.module.ts | 32 +- .../system/updates/filter-updates.pipe.ts | 0 .../routes/system/updates/item.component.ts | 6 +- .../system/updates/updates.component.ts | 6 +- web/projects/ui/src/app/routing.module.ts | 9 +- .../portal => }/services/actions.service.ts | 12 +- .../ui/src/app/services/api/api.fixures.ts | 2 +- .../services/api/embassy-live-api.service.ts | 2 +- .../portal => }/services/badge.service.ts | 2 +- .../services/breadcrumbs.service.ts | 6 +- .../ui/src/app/services/dep-error.service.ts | 2 +- .../ui/src/app/services/eos.service.ts | 2 +- .../ui/src/app/services/form.service.ts | 2 +- .../services/notification.service.ts | 2 +- .../ui/src/app/services/patch-data.service.ts | 4 +- .../ui/src/app/services/proxy.service.ts | 4 +- .../ui/src/app/services/sidebar.service.ts | 21 - .../ui/src/app/services/split-pane.service.ts | 9 - .../ui/src/app/services/time-service.ts | 59 - web/projects/ui/src/app/util/animations.ts | 17 - web/projects/ui/src/app/util/countries.json | 252 --- .../ui/src/app/util/get-package-info.ts | 27 - .../ui/src/app/util/get-project-id.ts | 11 - web/projects/ui/src/app/util/rxjs.util.ts | 96 - web/projects/ui/src/app/util/web.util.ts | 4 - .../app/{util => utils}/config-utilities.ts | 0 .../{util => utils}/configBuilderToSpec.ts | 0 .../ui/src/app/{util => utils}/dry-update.ts | 2 +- .../app/{util => utils}/get-package-data.ts | 0 .../app/{util => utils}/get-server-info.ts | 0 .../ui/src/app/{util => utils}/has-deps.ts | 2 +- .../ui/src/app/{util => utils}/mask.ts | 0 .../constants => utils}/system-utilities.ts | 0 .../{apps/portal => }/utils/to-router-link.ts | 0 web/projects/ui/src/styles.scss | 329 +--- 291 files changed, 416 insertions(+), 3365 deletions(-) delete mode 100644 web/ionic.config.json delete mode 100644 web/projects/shared/assets/fonts/text-security-disc.woff2 create mode 100644 web/projects/shared/assets/taiga-ui/icons/tuiIconBitcoinOutline.svg create mode 100644 web/projects/shared/assets/taiga-ui/icons/tuiIconRocketOutline.svg delete mode 100644 web/projects/shared/styles/global.scss delete mode 100644 web/projects/shared/styles/variables.scss delete mode 100644 web/projects/ui/src/app/apps/loading/loading.module.ts delete mode 100644 web/projects/ui/src/app/apps/portal/components/card.component.ts delete mode 100644 web/projects/ui/src/app/apps/portal/utils/system-tab-resolver.ts delete mode 100644 web/projects/ui/src/app/apps/portal/utils/to-navigation-item.ts delete mode 100644 web/projects/ui/src/app/common/os-welcome/os-welcome.module.ts delete mode 100644 web/projects/ui/src/app/common/os-welcome/os-welcome.page.html delete mode 100644 web/projects/ui/src/app/common/os-welcome/os-welcome.page.scss delete mode 100644 web/projects/ui/src/app/common/os-welcome/os-welcome.page.ts rename web/projects/ui/src/app/{common/toast-container => components}/notifications-toast.component.ts (100%) rename web/projects/ui/src/app/{common/toast-container => components}/refresh-alert.component.ts (100%) rename web/projects/ui/src/app/{apps/portal/modals => components}/report.component.ts (96%) rename web/projects/ui/src/app/{common => components}/sidebar-host.component.ts (100%) rename web/projects/ui/src/app/{common => components}/svg-definitions.component.ts (100%) rename web/projects/ui/src/app/{common/toast-container => components}/toast-container.component.ts (100%) rename web/projects/ui/src/app/{common/toast-container => components}/update-toast.component.ts (100%) create mode 100644 web/projects/ui/src/app/components/welcome.component.ts rename web/projects/ui/src/app/{apps => routes}/diagnostic/diagnostic.module.ts (100%) rename web/projects/ui/src/app/{apps => routes}/diagnostic/home/home.module.ts (100%) rename web/projects/ui/src/app/{apps => routes}/diagnostic/home/home.page.html (100%) rename web/projects/ui/src/app/{apps => routes}/diagnostic/home/home.page.scss (100%) rename web/projects/ui/src/app/{apps => routes}/diagnostic/home/home.page.ts (100%) rename web/projects/ui/src/app/{apps => routes}/diagnostic/logs/logs.module.ts (100%) rename web/projects/ui/src/app/{apps => routes}/diagnostic/logs/logs.page.html (100%) rename web/projects/ui/src/app/{apps => routes}/diagnostic/logs/logs.page.ts (95%) rename web/projects/ui/src/app/{apps => routes}/diagnostic/services/diagnostic.service.ts (100%) rename web/projects/ui/src/app/{apps => routes}/diagnostic/services/live-diagnostic.service.ts (100%) rename web/projects/ui/src/app/{apps => routes}/diagnostic/services/mock-diagnostic.service.ts (100%) rename web/projects/ui/src/app/{apps => routes}/loading/loading.page.ts (78%) rename web/projects/ui/src/app/{apps => routes}/login/ca-wizard/ca-wizard.component.html (100%) rename web/projects/ui/src/app/{apps => routes}/login/ca-wizard/ca-wizard.component.scss (100%) rename web/projects/ui/src/app/{apps => routes}/login/ca-wizard/ca-wizard.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/login/login.module.ts (100%) rename web/projects/ui/src/app/{apps => routes}/login/login.page.html (100%) rename web/projects/ui/src/app/{apps => routes}/login/login.page.scss (100%) rename web/projects/ui/src/app/{apps => routes}/login/login.page.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/actions.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/form.component.ts (96%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/control.directive.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/control.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-array/form-array.component.html (96%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-array/form-array.component.scss (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-array/form-array.component.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-color/form-color.component.html (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-color/form-color.component.scss (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-color/form-color.component.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-control/form-control.component.html (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-control/form-control.component.scss (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-control/form-control.component.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-control/form-control.providers.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-datetime/form-datetime.component.html (81%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-datetime/form-datetime.component.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-file/form-file.component.html (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-file/form-file.component.scss (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-file/form-file.component.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-group/form-group.component.html (92%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-group/form-group.component.scss (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-group/form-group.component.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-group/form-group.providers.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-multiselect/form-multiselect.component.html (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-multiselect/form-multiselect.component.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-number/form-number.component.html (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-number/form-number.component.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-object/form-object.component.html (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-object/form-object.component.scss (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-object/form-object.component.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-select/form-select.component.html (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-select/form-select.component.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-text/form-text.component.html (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-text/form-text.component.scss (74%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-text/form-text.component.ts (86%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-textarea/form-textarea.component.html (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-textarea/form-textarea.component.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-toggle/form-toggle.component.html (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-toggle/form-toggle.component.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-union/form-union.component.html (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-union/form-union.component.scss (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form-union/form-union.component.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/form.module.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/hint.pipe.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/invalid.service.ts (100%) rename web/projects/ui/src/app/{common => routes/portal/components}/form/mustache.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/header/about.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/header/breadcrumb.component.ts (96%) rename web/projects/ui/src/app/{apps => routes}/portal/components/header/connection.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/header/corner.component.ts (95%) rename web/projects/ui/src/app/{apps => routes}/portal/components/header/header.component.ts (98%) rename web/projects/ui/src/app/{apps => routes}/portal/components/header/home.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/header/menu.component.ts (99%) rename web/projects/ui/src/app/{apps => routes}/portal/components/header/mobile.component.ts (95%) rename web/projects/ui/src/app/{apps => routes}/portal/components/header/notification.component.ts (96%) rename web/projects/ui/src/app/{apps => routes}/portal/components/header/notifications.component.ts (96%) rename web/projects/ui/src/app/{apps => routes}/portal/components/header/snek.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/header/snek.directive.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/interfaces/address-group.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/interfaces/address-item.component.ts (93%) rename web/projects/ui/src/app/{apps => routes}/portal/components/interfaces/directives/clearnet.directive.ts (93%) rename web/projects/ui/src/app/{apps => routes}/portal/components/interfaces/directives/local.directive.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/interfaces/directives/tor.directive.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/interfaces/interface.component.ts (96%) rename web/projects/ui/src/app/{apps => routes}/portal/components/interfaces/interface.utils.ts (97%) rename web/projects/ui/src/app/{apps => routes}/portal/components/logs/logs-download.directive.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/logs/logs-fetch.directive.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/logs/logs.component.html (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/logs/logs.component.scss (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/logs/logs.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/logs/logs.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/components/tabs.component.ts (89%) rename web/projects/ui/src/app/{apps => routes}/portal/modals/config-dep.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/modals/config.component.ts (95%) rename web/projects/ui/src/app/{apps => routes}/portal/modals/prompt.component.ts (95%) rename web/projects/ui/src/app/{common => routes/portal/modals}/qr.component.ts (95%) rename web/projects/ui/src/app/{apps => routes}/portal/pipes/to-manifest.ts (58%) rename web/projects/ui/src/app/{apps => routes}/portal/portal.component.ts (66%) rename web/projects/ui/src/app/{apps => routes}/portal/portal.routes.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/dashboard/controls.component.ts (90%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/dashboard/dashboard.component.ts (95%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/dashboard/metrics.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/dashboard/service.component.ts (90%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/dashboard/services.component.ts (54%) rename web/projects/ui/src/app/{apps/portal/services => routes/portal/routes/dashboard}/services.service.ts (92%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/dashboard/status.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/dashboard/ui.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/dashboard/utilities.component.ts (94%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/action-success.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/action.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/actions.component.ts (89%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/additional-item.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/additional.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/dependencies.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/dependency.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/health-check.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/health-checks.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/interface-list-item.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/interface-list.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/menu-item.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/menu.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/progress.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/property.component.ts (96%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/components/status.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/modals/properties.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/pipes/group-actions.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/pipes/install-progress.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/pipes/interface-info.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/pipes/to-additional.pipe.ts (97%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/pipes/to-menu.pipe.ts (95%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/routes/actions.component.ts (95%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/routes/interface.component.ts (92%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/routes/logs.component.ts (91%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/routes/outlet.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/routes/service.component.ts (96%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/service.module.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/service/types/dependency-info.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/backups.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/components/physical.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/components/status.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/components/targets.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/components/upcoming.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/modals/backup.component.ts (98%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/modals/edit.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/modals/history.component.ts (98%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/modals/jobs.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/modals/recover.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/modals/target.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/modals/targets.component.ts (97%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/pipes/duration.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/pipes/get-backup-icon.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/pipes/get-display-info.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/pipes/has-error.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/pipes/to-human-cron.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/pipes/to-options.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/services/create.service.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/services/restore.service.ts (98%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/types/backup-config.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/types/backup-type.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/types/display-info.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/types/recover-data.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/types/recover-option.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/types/target.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/backups/utils/job-builder.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/logs/logs.component.ts (89%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/marketplace/components/controls.component.ts (94%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/marketplace/components/menu.component.ts (98%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/marketplace/components/notification.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/marketplace/components/registry.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/marketplace/components/sidebars.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/marketplace/components/tile.component.ts (97%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/marketplace/marketplace.component.ts (96%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/marketplace/marketplace.routes.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/marketplace/modals/preview.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/marketplace/modals/registry.component.ts (98%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/marketplace/pipes/to-local.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/marketplace/services/alerts.service.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/marketplace/services/sidebar.service.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/marketplace/utils/registry.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/notifications/item.component.ts (94%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/notifications/notifications.component.ts (97%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/notifications/table.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/components/button.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/components/menu.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/components/sync.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/components/update.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/modals/update.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/domains/constants.ts (98%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/domains/domains.component.ts (99%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/domains/info.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/domains/table.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/email/email.component.ts (96%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/email/info.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/experimental/experimental.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/interfaces/ui.component.ts (92%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/proxies/constants.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/proxies/info.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/proxies/menu.component.ts (98%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/proxies/proxies.component.ts (97%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/proxies/table.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/router/info.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/router/primary-ip.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/router/router.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/router/table.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/sessions/platform-info.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/sessions/sessions.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/sessions/table.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/ssh/info.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/ssh/ssh.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/ssh/table.component.ts (97%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/wifi/info.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/wifi/table.component.ts (98%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/wifi/utils.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/wifi/wifi.component.ts (99%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/routes/wifi/wifi.const.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/settings.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/settings.routes.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/settings.service.ts (96%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/settings/settings.types.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/sideload/package.component.ts (98%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/sideload/sideload.component.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/sideload/sideload.utils.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/system.module.ts (62%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/updates/filter-updates.pipe.ts (100%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/updates/item.component.ts (95%) rename web/projects/ui/src/app/{apps => routes}/portal/routes/system/updates/updates.component.ts (91%) rename web/projects/ui/src/app/{apps/portal => }/services/actions.service.ts (91%) rename web/projects/ui/src/app/{apps/portal => }/services/badge.service.ts (97%) rename web/projects/ui/src/app/{apps/portal => }/services/breadcrumbs.service.ts (91%) rename web/projects/ui/src/app/{apps/portal => }/services/notification.service.ts (98%) delete mode 100644 web/projects/ui/src/app/services/sidebar.service.ts delete mode 100644 web/projects/ui/src/app/services/split-pane.service.ts delete mode 100644 web/projects/ui/src/app/services/time-service.ts delete mode 100644 web/projects/ui/src/app/util/animations.ts delete mode 100644 web/projects/ui/src/app/util/countries.json delete mode 100644 web/projects/ui/src/app/util/get-package-info.ts delete mode 100644 web/projects/ui/src/app/util/get-project-id.ts delete mode 100644 web/projects/ui/src/app/util/rxjs.util.ts delete mode 100644 web/projects/ui/src/app/util/web.util.ts rename web/projects/ui/src/app/{util => utils}/config-utilities.ts (100%) rename web/projects/ui/src/app/{util => utils}/configBuilderToSpec.ts (100%) rename web/projects/ui/src/app/{util => utils}/dry-update.ts (88%) rename web/projects/ui/src/app/{util => utils}/get-package-data.ts (100%) rename web/projects/ui/src/app/{util => utils}/get-server-info.ts (100%) rename web/projects/ui/src/app/{util => utils}/has-deps.ts (71%) rename web/projects/ui/src/app/{util => utils}/mask.ts (100%) rename web/projects/ui/src/app/{apps/portal/constants => utils}/system-utilities.ts (100%) rename web/projects/ui/src/app/{apps/portal => }/utils/to-router-link.ts (100%) diff --git a/web/README.md b/web/README.md index 91694b43a..dc594579a 100644 --- a/web/README.md +++ b/web/README.md @@ -44,7 +44,7 @@ git submodule update --init --recursive ```sh cd web -npm i +npm ci npm run build:deps ``` diff --git a/web/angular.json b/web/angular.json index cd18f4523..f230cab92 100644 --- a/web/angular.json +++ b/web/angular.json @@ -47,8 +47,6 @@ "node_modules/@taiga-ui/core/styles/taiga-ui-theme.less", "node_modules/@taiga-ui/styles/taiga-ui-global.less", "projects/shared/styles/taiga.scss", - "projects/shared/styles/variables.scss", - "projects/shared/styles/global.scss", "projects/shared/styles/shared.scss", "projects/ui/src/styles.scss" ], @@ -97,7 +95,10 @@ "buildTarget": "ui:build:development" } }, - "defaultConfiguration": "development" + "defaultConfiguration": "development", + "options": { + "port": 8100 + } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", @@ -113,30 +114,6 @@ "projects/ui/src/**/*.html" ] } - }, - "ionic-cordova-build": { - "builder": "@ionic/angular-toolkit:cordova-build", - "options": { - "browserTarget": "ui:build" - }, - "configurations": { - "production": { - "browserTarget": "ui:build:production" - } - } - }, - "ionic-cordova-serve": { - "builder": "@ionic/angular-toolkit:cordova-serve", - "options": { - "cordovaBuildTarget": "ui:ionic-cordova-build", - "devServerTarget": "ui:serve" - }, - "configurations": { - "production": { - "cordovaBuildTarget": "ui:ionic-cordova-build:production", - "devServerTarget": "ui:serve:production" - } - } } } }, @@ -219,7 +196,8 @@ "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { - "buildTarget": "install-wizard:build" + "buildTarget": "install-wizard:build", + "port": 8100 }, "configurations": { "production": { @@ -245,30 +223,6 @@ "projects/install-wizard/src/**/*.html" ] } - }, - "ionic-cordova-build": { - "builder": "@ionic/angular-toolkit:cordova-build", - "options": { - "browserTarget": "install-wizard:build" - }, - "configurations": { - "production": { - "browserTarget": "install-wizard:build:production" - } - } - }, - "ionic-cordova-serve": { - "builder": "@ionic/angular-toolkit:cordova-serve", - "options": { - "cordovaBuildTarget": "install-wizard:ionic-cordova-build", - "devServerTarget": "install-wizard:serve" - }, - "configurations": { - "production": { - "cordovaBuildTarget": "install-wizard:ionic-cordova-build:production", - "devServerTarget": "install-wizard:serve:production" - } - } } } }, @@ -352,7 +306,10 @@ "buildTarget": "setup-wizard:build:development" } }, - "defaultConfiguration": "development" + "defaultConfiguration": "development", + "options": { + "port": 8100 + } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", @@ -368,30 +325,6 @@ "projects/setup-wizard/src/**/*.html" ] } - }, - "ionic-cordova-build": { - "builder": "@ionic/angular-toolkit:cordova-build", - "options": { - "browserTarget": "setup-wizard:build" - }, - "configurations": { - "production": { - "browserTarget": "setup-wizard:build:production" - } - } - }, - "ionic-cordova-serve": { - "builder": "@ionic/angular-toolkit:cordova-serve", - "options": { - "cordovaBuildTarget": "setup-wizard:ionic-cordova-build", - "devServerTarget": "setup-wizard:serve" - }, - "configurations": { - "production": { - "cordovaBuildTarget": "setup-wizard:ionic-cordova-build:production", - "devServerTarget": "setup-wizard:serve:production" - } - } } } }, @@ -437,15 +370,16 @@ } }, "cli": { - "schematicCollections": ["@ionic/angular-toolkit"], + "schematicCollections": [], "analytics": false }, "schematics": { - "@ionic/angular-toolkit:component": { - "styleext": "scss" - }, - "@ionic/angular-toolkit:page": { - "styleext": "scss" + "@schematics/angular:component": { + "displayBlock": true, + "changeDetection": "OnPush", + "style": "scss", + "skipTests": true, + "skipImport": true } } } diff --git a/web/ionic.config.json b/web/ionic.config.json deleted file mode 100644 index c5810bc10..000000000 --- a/web/ionic.config.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "projects": { - "ui": { - "name": "ui", - "integrations": {}, - "type": "angular", - "root": "projects/ui" - }, - "install-wizard": { - "name": "install-wizard", - "integrations": {}, - "type": "angular", - "root": "projects/install-wizard" - }, - "setup-wizard": { - "name": "setup-wizard", - "integrations": {}, - "type": "angular", - "root": "projects/setup-wizard" - } - }, - "defaultProject": "ui" -} diff --git a/web/package-lock.json b/web/package-lock.json index 67d6eedf3..36c57fedc 100644 --- a/web/package-lock.json +++ b/web/package-lock.json @@ -19,22 +19,21 @@ "@angular/pwa": "^17.3.1", "@angular/router": "^17.3.1", "@angular/service-worker": "^17.3.1", - "@ionic/angular": "^6.1.15", "@materia-ui/ngx-monaco-editor": "^6.0.0", "@start9labs/argon2": "^0.1.0", "@start9labs/emver": "^0.1.5", "@start9labs/start-sdk": "file:../sdk/dist", - "@taiga-ui/addon-charts": "3.68.0", - "@taiga-ui/addon-commerce": "3.68.0", - "@taiga-ui/addon-mobile": "3.68.0", - "@taiga-ui/cdk": "3.68.0", - "@taiga-ui/core": "3.68.0", - "@taiga-ui/experimental": "3.68.0", - "@taiga-ui/icons": "3.68.0", - "@taiga-ui/kit": "3.68.0", - "@taiga-ui/styles": "3.68.0", + "@taiga-ui/addon-charts": "3.73.0", + "@taiga-ui/addon-commerce": "3.73.0", + "@taiga-ui/addon-mobile": "3.73.0", + "@taiga-ui/cdk": "3.73.0", + "@taiga-ui/core": "3.73.0", + "@taiga-ui/experimental": "3.73.0", + "@taiga-ui/icons": "3.73.0", + "@taiga-ui/kit": "3.73.0", + "@taiga-ui/styles": "3.73.0", "@tinkoff/ng-dompurify": "4.0.0", - "@tinkoff/ng-event-plugins": "3.1.0", + "@tinkoff/ng-event-plugins": "3.1.1", "ansi-to-html": "^0.7.2", "base64-js": "^1.5.1", "cbor": "npm:@jprochazk/cbor@^0.4.9", @@ -66,7 +65,6 @@ "@angular/cli": "^17.3.1", "@angular/compiler-cli": "^17.3.1", "@angular/language-service": "^17.3.1", - "@ionic/cli": "^6.19.0", "@types/dompurify": "^2.3.3", "@types/estree": "^0.0.51", "@types/js-yaml": "^4.0.5", @@ -4342,505 +4340,6 @@ "node": ">=12" } }, - "node_modules/@ionic/angular": { - "version": "6.7.5", - "license": "MIT", - "dependencies": { - "@ionic/core": "6.7.5", - "ionicons": "^6.1.3", - "jsonc-parser": "^3.0.0", - "tslib": "^2.0.0" - }, - "peerDependencies": { - "@angular/core": ">=12.0.0", - "@angular/forms": ">=12.0.0", - "@angular/router": ">=12.0.0", - "rxjs": ">=6.6.0", - "zone.js": ">=0.11.0" - } - }, - "node_modules/@ionic/cli": { - "version": "6.20.9", - "dev": true, - "license": "MIT", - "dependencies": { - "@ionic/cli-framework": "5.1.3", - "@ionic/cli-framework-output": "2.2.5", - "@ionic/cli-framework-prompts": "2.1.10", - "@ionic/utils-array": "2.1.5", - "@ionic/utils-fs": "3.1.6", - "@ionic/utils-network": "2.1.5", - "@ionic/utils-process": "2.1.10", - "@ionic/utils-stream": "3.1.5", - "@ionic/utils-subprocess": "2.1.11", - "@ionic/utils-terminal": "2.3.3", - "chalk": "^4.0.0", - "debug": "^4.0.0", - "diff": "^4.0.1", - "elementtree": "^0.1.7", - "leek": "0.0.24", - "lodash": "^4.17.5", - "open": "^7.0.4", - "os-name": "^4.0.0", - "semver": "^7.1.1", - "split2": "^3.0.0", - "ssh-config": "^1.1.1", - "stream-combiner2": "^1.1.1", - "superagent": "^5.2.1", - "superagent-proxy": "^3.0.0", - "tar": "^6.0.1", - "tslib": "^2.0.1" - }, - "bin": { - "ionic": "bin/ionic" - }, - "engines": { - "node": ">=10.3.0" - } - }, - "node_modules/@ionic/cli-framework": { - "version": "5.1.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@ionic/cli-framework-output": "2.2.5", - "@ionic/utils-array": "2.1.5", - "@ionic/utils-fs": "3.1.6", - "@ionic/utils-object": "2.1.5", - "@ionic/utils-process": "2.1.10", - "@ionic/utils-stream": "3.1.5", - "@ionic/utils-subprocess": "2.1.11", - "@ionic/utils-terminal": "2.3.3", - "chalk": "^4.0.0", - "debug": "^4.0.0", - "lodash": "^4.17.5", - "minimist": "^1.2.0", - "rimraf": "^3.0.0", - "tslib": "^2.0.1", - "write-file-atomic": "^3.0.0" - }, - "engines": { - "node": ">=10.3.0" - } - }, - "node_modules/@ionic/cli-framework-output": { - "version": "2.2.5", - "dev": true, - "license": "MIT", - "dependencies": { - "@ionic/utils-terminal": "2.3.3", - "debug": "^4.0.0", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=10.3.0" - } - }, - "node_modules/@ionic/cli-framework-prompts": { - "version": "2.1.10", - "dev": true, - "license": "MIT", - "dependencies": { - "@ionic/utils-terminal": "2.3.3", - "debug": "^4.0.0", - "inquirer": "^7.0.0", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=10.3.0" - } - }, - "node_modules/@ionic/cli-framework-prompts/node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@ionic/cli-framework-prompts/node_modules/chalk": { - "version": "4.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@ionic/cli-framework-prompts/node_modules/cli-width": { - "version": "3.0.0", - "dev": true, - "license": "ISC", - "engines": { - "node": ">= 10" - } - }, - "node_modules/@ionic/cli-framework-prompts/node_modules/color-convert": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@ionic/cli-framework-prompts/node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@ionic/cli-framework-prompts/node_modules/has-flag": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@ionic/cli-framework-prompts/node_modules/inquirer": { - "version": "7.3.3", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.19", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@ionic/cli-framework-prompts/node_modules/mute-stream": { - "version": "0.0.8", - "dev": true, - "license": "ISC" - }, - "node_modules/@ionic/cli-framework-prompts/node_modules/run-async": { - "version": "2.4.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/@ionic/cli-framework-prompts/node_modules/rxjs": { - "version": "6.6.7", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@ionic/cli-framework-prompts/node_modules/rxjs/node_modules/tslib": { - "version": "1.14.1", - "dev": true, - "license": "0BSD" - }, - "node_modules/@ionic/cli-framework-prompts/node_modules/supports-color": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@ionic/cli-framework/node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@ionic/cli-framework/node_modules/chalk": { - "version": "4.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@ionic/cli-framework/node_modules/color-convert": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@ionic/cli-framework/node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@ionic/cli-framework/node_modules/has-flag": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@ionic/cli-framework/node_modules/supports-color": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@ionic/cli/node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@ionic/cli/node_modules/chalk": { - "version": "4.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@ionic/cli/node_modules/color-convert": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@ionic/cli/node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@ionic/cli/node_modules/has-flag": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@ionic/cli/node_modules/open": { - "version": "7.4.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-docker": "^2.0.0", - "is-wsl": "^2.1.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@ionic/cli/node_modules/supports-color": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@ionic/core": { - "version": "6.7.5", - "license": "MIT", - "dependencies": { - "@stencil/core": "^2.18.0", - "ionicons": "^6.1.3", - "tslib": "^2.1.0" - } - }, - "node_modules/@ionic/utils-array": { - "version": "2.1.5", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.0.0", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=10.3.0" - } - }, - "node_modules/@ionic/utils-fs": { - "version": "3.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/fs-extra": "^8.0.0", - "debug": "^4.0.0", - "fs-extra": "^9.0.0", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=10.3.0" - } - }, - "node_modules/@ionic/utils-network": { - "version": "2.1.5", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.0.0", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=10.3.0" - } - }, - "node_modules/@ionic/utils-object": { - "version": "2.1.5", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.0.0", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=10.3.0" - } - }, - "node_modules/@ionic/utils-process": { - "version": "2.1.10", - "dev": true, - "license": "MIT", - "dependencies": { - "@ionic/utils-object": "2.1.5", - "@ionic/utils-terminal": "2.3.3", - "debug": "^4.0.0", - "signal-exit": "^3.0.3", - "tree-kill": "^1.2.2", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=10.3.0" - } - }, - "node_modules/@ionic/utils-stream": { - "version": "3.1.5", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.0.0", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=10.3.0" - } - }, - "node_modules/@ionic/utils-subprocess": { - "version": "2.1.11", - "dev": true, - "license": "MIT", - "dependencies": { - "@ionic/utils-array": "2.1.5", - "@ionic/utils-fs": "3.1.6", - "@ionic/utils-process": "2.1.10", - "@ionic/utils-stream": "3.1.5", - "@ionic/utils-terminal": "2.3.3", - "cross-spawn": "^7.0.3", - "debug": "^4.0.0", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=10.3.0" - } - }, - "node_modules/@ionic/utils-terminal": { - "version": "2.3.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/slice-ansi": "^4.0.0", - "debug": "^4.0.0", - "signal-exit": "^3.0.3", - "slice-ansi": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "tslib": "^2.0.1", - "untildify": "^4.0.0", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=10.3.0" - } - }, "node_modules/@isaacs/cliui": { "version": "8.0.2", "devOptional": true, @@ -5585,20 +5084,10 @@ "resolved": "../sdk/dist", "link": true }, - "node_modules/@stencil/core": { - "version": "2.22.3", - "license": "MIT", - "bin": { - "stencil": "bin/stencil" - }, - "engines": { - "node": ">=12.10.0", - "npm": ">=6.0.0" - } - }, "node_modules/@taiga-ui/addon-charts": { - "version": "3.68.0", - "license": "Apache-2.0", + "version": "3.73.0", + "resolved": "https://registry.npmjs.org/@taiga-ui/addon-charts/-/addon-charts-3.73.0.tgz", + "integrity": "sha512-4zK0sXqMtuz2fVlsgbnBLMuzphCqLbsSR/owMzJxAsrlZV7Lv1VUaMHHe9sdhDBmvO3VZu2d1wNuv/Z1jVfpYQ==", "dependencies": { "tslib": "2.6.2" }, @@ -5606,14 +5095,15 @@ "@angular/common": ">=12.0.0", "@angular/core": ">=12.0.0", "@ng-web-apis/common": "3.0.6", - "@taiga-ui/cdk": "^3.68.0", - "@taiga-ui/core": "^3.68.0", + "@taiga-ui/cdk": "^3.73.0", + "@taiga-ui/core": "^3.73.0", "@tinkoff/ng-polymorpheus": "4.3.0" } }, "node_modules/@taiga-ui/addon-commerce": { - "version": "3.68.0", - "license": "Apache-2.0", + "version": "3.73.0", + "resolved": "https://registry.npmjs.org/@taiga-ui/addon-commerce/-/addon-commerce-3.73.0.tgz", + "integrity": "sha512-LVK1ROrutavqIvOEHCaXRcX9ZNyznz3cCQFhbLldTIgTSXoYQNNitAgG4cRmntLioLupcVnKt0JZOHiObEx49A==", "dependencies": { "tslib": "2.6.2" }, @@ -5625,17 +5115,18 @@ "@maskito/core": "1.9.0", "@maskito/kit": "1.9.0", "@ng-web-apis/common": "3.0.6", - "@taiga-ui/cdk": "^3.68.0", - "@taiga-ui/core": "^3.68.0", - "@taiga-ui/i18n": "^3.68.0", - "@taiga-ui/kit": "^3.68.0", + "@taiga-ui/cdk": "^3.73.0", + "@taiga-ui/core": "^3.73.0", + "@taiga-ui/i18n": "^3.73.0", + "@taiga-ui/kit": "^3.73.0", "@tinkoff/ng-polymorpheus": "4.3.0", "rxjs": ">=6.0.0" } }, "node_modules/@taiga-ui/addon-mobile": { - "version": "3.68.0", - "license": "Apache-2.0", + "version": "3.73.0", + "resolved": "https://registry.npmjs.org/@taiga-ui/addon-mobile/-/addon-mobile-3.73.0.tgz", + "integrity": "sha512-XJ8xlmnp3fU02KjqgFtUCkcMsPmdIvksI/vmK7ZCaNunsGIYVAGSqw3/yyRV+HkX1ccqynX5johv+lligD9RtA==", "dependencies": { "tslib": "2.6.2" }, @@ -5644,21 +5135,22 @@ "@angular/common": ">=12.0.0", "@angular/core": ">=12.0.0", "@ng-web-apis/common": "3.0.6", - "@taiga-ui/cdk": "^3.68.0", - "@taiga-ui/core": "^3.68.0", - "@taiga-ui/kit": "^3.68.0", + "@taiga-ui/cdk": "^3.73.0", + "@taiga-ui/core": "^3.73.0", + "@taiga-ui/kit": "^3.73.0", "@tinkoff/ng-polymorpheus": "4.3.0", "rxjs": ">=6.0.0" } }, "node_modules/@taiga-ui/cdk": { - "version": "3.68.0", - "license": "Apache-2.0", + "version": "3.73.0", + "resolved": "https://registry.npmjs.org/@taiga-ui/cdk/-/cdk-3.73.0.tgz", + "integrity": "sha512-bxgbetJcbB+9h6ZO0ht076A9K0UOemr5D339o8h2tQpFnjOiw7gQ0ZnpNrKXXOpb5eASnptulmwtITvagpE1lg==", "dependencies": { "@ng-web-apis/common": "3.0.6", "@ng-web-apis/mutation-observer": "3.1.0", "@ng-web-apis/resize-observer": "3.0.6", - "@tinkoff/ng-event-plugins": "3.1.0", + "@tinkoff/ng-event-plugins": "3.1.1", "@tinkoff/ng-polymorpheus": "4.3.0", "tslib": "2.6.2" }, @@ -5680,10 +5172,11 @@ "optional": true }, "node_modules/@taiga-ui/core": { - "version": "3.68.0", - "license": "Apache-2.0", + "version": "3.73.0", + "resolved": "https://registry.npmjs.org/@taiga-ui/core/-/core-3.73.0.tgz", + "integrity": "sha512-zQ+qhgBxQK6+SrzfSHIotKI00xbPu0ZTBFyYGUT8zD0If4aN5oeR+Q5A9kUb/0rEPsHcg04TcAEtAsAtG2l/oA==", "dependencies": { - "@taiga-ui/i18n": "^3.68.0", + "@taiga-ui/i18n": "^3.73.0", "tslib": "2.6.2" }, "peerDependencies": { @@ -5695,33 +5188,35 @@ "@angular/router": ">=12.0.0", "@ng-web-apis/common": "3.0.6", "@ng-web-apis/mutation-observer": "3.1.0", - "@taiga-ui/cdk": "^3.68.0", - "@taiga-ui/i18n": "^3.68.0", - "@tinkoff/ng-event-plugins": "3.1.0", + "@taiga-ui/cdk": "^3.73.0", + "@taiga-ui/i18n": "^3.73.0", + "@tinkoff/ng-event-plugins": "3.1.1", "@tinkoff/ng-polymorpheus": "4.3.0", "rxjs": ">=6.0.0" } }, "node_modules/@taiga-ui/experimental": { - "version": "3.68.0", - "license": "Apache-2.0", + "version": "3.73.0", + "resolved": "https://registry.npmjs.org/@taiga-ui/experimental/-/experimental-3.73.0.tgz", + "integrity": "sha512-FlMrasE7emFTNCN2a6xdU9ZCH7HIAU/xd+jjqxsi9Cf37juDLFtInFjFyQ9ZuEnhIJP3POTX+d8t/niRTPwpNw==", "dependencies": { "tslib": "2.6.2" }, "peerDependencies": { "@angular/common": ">=12.0.0", "@angular/core": ">=12.0.0", - "@taiga-ui/addon-commerce": "^3.68.0", - "@taiga-ui/cdk": "^3.68.0", - "@taiga-ui/core": "^3.68.0", - "@taiga-ui/kit": "^3.68.0", + "@taiga-ui/addon-commerce": "^3.73.0", + "@taiga-ui/cdk": "^3.73.0", + "@taiga-ui/core": "^3.73.0", + "@taiga-ui/kit": "^3.73.0", "@tinkoff/ng-polymorpheus": "4.3.0", "rxjs": ">=6.0.0" } }, "node_modules/@taiga-ui/i18n": { - "version": "3.71.0", - "license": "Apache-2.0", + "version": "3.73.0", + "resolved": "https://registry.npmjs.org/@taiga-ui/i18n/-/i18n-3.73.0.tgz", + "integrity": "sha512-CLyYmnnL08+P5XvnKSMhZPpJyBs4199ApMX33hPBa4MvpmykUoVXQ0nXslLECSqAcfL39N9tzWKnxyLAavXjNw==", "dependencies": { "tslib": "2.6.2" }, @@ -5732,18 +5227,20 @@ } }, "node_modules/@taiga-ui/icons": { - "version": "3.68.0", - "license": "Apache-2.0", + "version": "3.73.0", + "resolved": "https://registry.npmjs.org/@taiga-ui/icons/-/icons-3.73.0.tgz", + "integrity": "sha512-3/B9NW/gQ4ad+voS57TSuz7cCElh1hcqUil4wP2P8pwS3HzgScokZpvVQs6u5jZ0Xt4v7uG4pac6pwGVsC8ndA==", "dependencies": { "tslib": "2.6.2" }, "peerDependencies": { - "@taiga-ui/cdk": "^3.68.0" + "@taiga-ui/cdk": "^3.73.0" } }, "node_modules/@taiga-ui/kit": { - "version": "3.68.0", - "license": "Apache-2.0", + "version": "3.73.0", + "resolved": "https://registry.npmjs.org/@taiga-ui/kit/-/kit-3.73.0.tgz", + "integrity": "sha512-AKPjxkcKnMA4TeL5f6gBjgnJff7JJfh2YmOxHPcXXcBy/BeXzY+Lfmlgqz0P8Rtz01JouCZpWIWNayb2cGlq5g==", "dependencies": { "@maskito/angular": "1.9.0", "@maskito/core": "1.9.0", @@ -5760,17 +5257,19 @@ "@ng-web-apis/common": "3.0.6", "@ng-web-apis/mutation-observer": "3.1.0", "@ng-web-apis/resize-observer": "3.0.6", - "@taiga-ui/cdk": "^3.68.0", - "@taiga-ui/core": "^3.68.0", - "@taiga-ui/i18n": "^3.68.0", + "@taiga-ui/cdk": "^3.73.0", + "@taiga-ui/core": "^3.73.0", + "@taiga-ui/i18n": "^3.73.0", "@tinkoff/ng-polymorpheus": "4.3.0", "rxjs": ">=6.0.0" } }, "node_modules/@taiga-ui/styles": { - "version": "3.68.0", + "version": "3.73.0", + "resolved": "https://registry.npmjs.org/@taiga-ui/styles/-/styles-3.73.0.tgz", + "integrity": "sha512-hFInEKxsI4fj5KZCIGzH/zY00YwE2PsUoAlzoeGqpfnOG5rY/2WFpZnLrj7yJCOkFzsFy9KUZC00d46w50ijnQ==", "peerDependencies": { - "@taiga-ui/cdk": "^3.68.0", + "@taiga-ui/cdk": "^3.73.0", "tslib": "2.6.2" } }, @@ -5788,8 +5287,9 @@ } }, "node_modules/@tinkoff/ng-event-plugins": { - "version": "3.1.0", - "license": "Apache-2.0", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@tinkoff/ng-event-plugins/-/ng-event-plugins-3.1.1.tgz", + "integrity": "sha512-JC64sdpiOHmq4rZBFzqVweQoPxN7afoCuebKayEELEODho6oYiTVyM3P9T9JWUyzieSujDP7um7fiCggrWc83A==", "dependencies": { "tslib": "^2.2.0" }, @@ -5810,14 +5310,6 @@ "@angular/platform-browser": ">=12.0.0" } }, - "node_modules/@tootallnate/once": { - "version": "1.1.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, "node_modules/@ts-morph/common": { "version": "0.22.0", "license": "MIT", @@ -5969,14 +5461,6 @@ "@types/send": "*" } }, - "node_modules/@types/fs-extra": { - "version": "8.1.5", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/http-errors": { "version": "2.0.4", "dev": true, @@ -6108,11 +5592,6 @@ "@types/node": "*" } }, - "node_modules/@types/slice-ansi": { - "version": "4.0.0", - "dev": true, - "license": "MIT" - }, "node_modules/@types/sockjs": { "version": "0.3.36", "dev": true, @@ -6555,38 +6034,6 @@ "node": ">=8" } }, - "node_modules/ast-types": { - "version": "0.13.4", - "dev": true, - "license": "MIT", - "dependencies": { - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/astral-regex": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "dev": true, - "license": "MIT" - }, - "node_modules/at-least-node": { - "version": "1.0.0", - "dev": true, - "license": "ISC", - "engines": { - "node": ">= 4.0.0" - } - }, "node_modules/autoprefixer": { "version": "10.4.19", "dev": true, @@ -7346,17 +6793,6 @@ "dev": true, "license": "MIT" }, - "node_modules/combined-stream": { - "version": "1.0.8", - "dev": true, - "license": "MIT", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/commander": { "version": "11.0.0", "dev": true, @@ -7380,14 +6816,6 @@ "dev": true, "license": "MIT" }, - "node_modules/component-emitter": { - "version": "1.3.1", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/compressible": { "version": "2.0.18", "dev": true, @@ -7492,11 +6920,6 @@ "dev": true, "license": "MIT" }, - "node_modules/cookiejar": { - "version": "2.1.4", - "dev": true, - "license": "MIT" - }, "node_modules/copy-anything": { "version": "2.0.6", "dev": true, @@ -7788,14 +7211,6 @@ "node": ">=4" } }, - "node_modules/data-uri-to-buffer": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, "node_modules/debounce": { "version": "1.2.1", "dev": true, @@ -7824,11 +7239,6 @@ "node": ">=0.10.0" } }, - "node_modules/deep-is": { - "version": "0.1.4", - "dev": true, - "license": "MIT" - }, "node_modules/deepmerge": { "version": "4.3.1", "dev": true, @@ -7964,28 +7374,6 @@ "node": ">=8" } }, - "node_modules/degenerator": { - "version": "3.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "ast-types": "^0.13.2", - "escodegen": "^1.8.1", - "esprima": "^4.0.0", - "vm2": "^3.9.17" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/depd": { "version": "2.0.0", "dev": true, @@ -8128,41 +7516,6 @@ "dev": true, "license": "MIT" }, - "node_modules/duplexer2": { - "version": "0.1.4", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "readable-stream": "^2.0.2" - } - }, - "node_modules/duplexer2/node_modules/readable-stream": { - "version": "2.3.8", - "dev": true, - "license": "MIT", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/duplexer2/node_modules/safe-buffer": { - "version": "5.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/duplexer2/node_modules/string_decoder": { - "version": "1.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/eastasianwidth": { "version": "0.2.0", "devOptional": true, @@ -8178,17 +7531,6 @@ "dev": true, "license": "ISC" }, - "node_modules/elementtree": { - "version": "0.1.7", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "sax": "1.1.4" - }, - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/emoji-regex": { "version": "8.0.0", "license": "MIT" @@ -8234,14 +7576,6 @@ "node": ">=0.10.0" } }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "dev": true, - "license": "MIT", - "dependencies": { - "once": "^1.4.0" - } - }, "node_modules/enhanced-resolve": { "version": "5.16.0", "dev": true, @@ -8392,36 +7726,6 @@ "node": ">=0.8.0" } }, - "node_modules/escodegen": { - "version": "1.14.3", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=4.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" - } - }, - "node_modules/escodegen/node_modules/source-map": { - "version": "0.6.1", - "dev": true, - "license": "BSD-3-Clause", - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/eslint-scope": { "version": "5.1.1", "dev": true, @@ -8643,16 +7947,6 @@ "dev": true, "license": "MIT" }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-safe-stringify": { - "version": "2.1.1", - "dev": true, - "license": "MIT" - }, "node_modules/fastq": { "version": "1.17.1", "devOptional": true, @@ -8686,14 +7980,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/file-uri-to-path": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, "node_modules/fill-range": { "version": "7.0.1", "devOptional": true, @@ -8828,27 +8114,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/form-data": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/formidable": { - "version": "1.2.6", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://ko-fi.com/tunnckoCore/commissions" - } - }, "node_modules/forwarded": { "version": "0.2.0", "dev": true, @@ -8877,20 +8142,6 @@ "node": ">= 0.6" } }, - "node_modules/fs-extra": { - "version": "9.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/fs-minipass": { "version": "3.0.3", "devOptional": true, @@ -8924,38 +8175,6 @@ "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/ftp": { - "version": "0.3.10", - "dev": true, - "dependencies": { - "readable-stream": "1.1.x", - "xregexp": "2.0.0" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/ftp/node_modules/isarray": { - "version": "0.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/ftp/node_modules/readable-stream": { - "version": "1.1.14", - "dev": true, - "license": "MIT", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "node_modules/ftp/node_modules/string_decoder": { - "version": "0.10.31", - "dev": true, - "license": "MIT" - }, "node_modules/function-bind": { "version": "1.1.2", "devOptional": true, @@ -9023,51 +8242,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/get-uri": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@tootallnate/once": "1", - "data-uri-to-buffer": "3", - "debug": "4", - "file-uri-to-path": "2", - "fs-extra": "^8.1.0", - "ftp": "^0.3.10" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/get-uri/node_modules/fs-extra": { - "version": "8.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/get-uri/node_modules/jsonfile": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/get-uri/node_modules/universalify": { - "version": "0.1.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4.0.0" - } - }, "node_modules/glob": { "version": "10.3.10", "devOptional": true, @@ -9834,18 +9008,6 @@ "node": ">=8" } }, - "node_modules/ionicons": { - "version": "6.1.3", - "license": "MIT", - "dependencies": { - "@stencil/core": "^2.18.0" - } - }, - "node_modules/ip": { - "version": "1.1.9", - "dev": true, - "license": "MIT" - }, "node_modules/ip-address": { "version": "9.0.5", "devOptional": true, @@ -10002,11 +9164,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "dev": true, - "license": "MIT" - }, "node_modules/is-unicode-supported": { "version": "0.1.0", "license": "MIT", @@ -10207,17 +9364,6 @@ "version": "3.2.1", "license": "MIT" }, - "node_modules/jsonfile": { - "version": "6.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, "node_modules/jsonparse": { "version": "1.3.1", "devOptional": true, @@ -10259,29 +9405,6 @@ "shell-quote": "^1.8.1" } }, - "node_modules/leek": { - "version": "0.0.24", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^2.1.0", - "lodash.assign": "^3.2.0", - "rsvp": "^3.0.21" - } - }, - "node_modules/leek/node_modules/debug": { - "version": "2.6.9", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/leek/node_modules/ms": { - "version": "2.0.0", - "dev": true, - "license": "MIT" - }, "node_modules/less": { "version": "4.2.0", "dev": true, @@ -10335,18 +9458,6 @@ "node": ">=0.10.0" } }, - "node_modules/levn": { - "version": "0.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, "node_modules/license-webpack-plugin": { "version": "4.0.2", "dev": true, @@ -10553,85 +9664,11 @@ "version": "4.17.21", "license": "MIT" }, - "node_modules/lodash._baseassign": { - "version": "3.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash._basecopy": "^3.0.0", - "lodash.keys": "^3.0.0" - } - }, - "node_modules/lodash._basecopy": { - "version": "3.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash._bindcallback": { - "version": "3.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash._createassigner": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash._bindcallback": "^3.0.0", - "lodash._isiterateecall": "^3.0.0", - "lodash.restparam": "^3.0.0" - } - }, - "node_modules/lodash._getnative": { - "version": "3.9.1", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash._isiterateecall": { - "version": "3.0.9", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.assign": { - "version": "3.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash._baseassign": "^3.0.0", - "lodash._createassigner": "^3.0.0", - "lodash.keys": "^3.0.0" - } - }, "node_modules/lodash.debounce": { "version": "4.0.8", "dev": true, "license": "MIT" }, - "node_modules/lodash.isarguments": { - "version": "3.1.0", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.isarray": { - "version": "3.0.4", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.keys": { - "version": "3.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash._getnative": "^3.0.0", - "lodash.isarguments": "^3.0.0", - "lodash.isarray": "^3.0.0" - } - }, - "node_modules/lodash.restparam": { - "version": "3.6.1", - "dev": true, - "license": "MIT" - }, "node_modules/log-symbols": { "version": "4.1.0", "license": "MIT", @@ -10916,17 +9953,6 @@ "node": ">=12" } }, - "node_modules/macos-release": { - "version": "2.5.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/magic-string": { "version": "0.30.8", "license": "MIT", @@ -11485,14 +10511,6 @@ "dev": true, "license": "MIT" }, - "node_modules/netmask": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/ng-morph": { "version": "4.0.5", "license": "Apache-2.0", @@ -12068,22 +11086,6 @@ "opener": "bin/opener-bin.js" } }, - "node_modules/optionator": { - "version": "0.8.3", - "dev": true, - "license": "MIT", - "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, "node_modules/ora": { "version": "5.4.1", "license": "MIT", @@ -12163,21 +11165,6 @@ "node": ">=8" } }, - "node_modules/os-name": { - "version": "4.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "macos-release": "^2.5.0", - "windows-release": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/os-tmpdir": { "version": "1.0.2", "devOptional": true, @@ -12250,87 +11237,6 @@ "node": ">=6" } }, - "node_modules/pac-proxy-agent": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4", - "get-uri": "3", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "5", - "pac-resolver": "^5.0.0", - "raw-body": "^2.2.0", - "socks-proxy-agent": "5" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/pac-proxy-agent/node_modules/agent-base": { - "version": "6.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/pac-proxy-agent/node_modules/http-proxy-agent": { - "version": "4.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/pac-proxy-agent/node_modules/https-proxy-agent": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/pac-proxy-agent/node_modules/socks-proxy-agent": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "^6.0.2", - "debug": "4", - "socks": "^2.3.3" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/pac-resolver": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "degenerator": "^3.0.2", - "ip": "^1.1.5", - "netmask": "^2.0.2" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/pacote": { "version": "17.0.6", "devOptional": true, @@ -12861,13 +11767,6 @@ "dev": true, "license": "MIT" }, - "node_modules/prelude-ls": { - "version": "1.1.2", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, "node_modules/prettier": { "version": "3.2.5", "dev": true, @@ -12939,93 +11838,12 @@ "node": ">= 0.10" } }, - "node_modules/proxy-agent": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "^6.0.0", - "debug": "4", - "http-proxy-agent": "^4.0.0", - "https-proxy-agent": "^5.0.0", - "lru-cache": "^5.1.1", - "pac-proxy-agent": "^5.0.0", - "proxy-from-env": "^1.0.0", - "socks-proxy-agent": "^5.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/proxy-agent/node_modules/agent-base": { - "version": "6.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/proxy-agent/node_modules/http-proxy-agent": { - "version": "4.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/proxy-agent/node_modules/https-proxy-agent": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/proxy-agent/node_modules/socks-proxy-agent": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "^6.0.2", - "debug": "4", - "socks": "^2.3.3" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/proxy-from-env": { - "version": "1.1.0", - "dev": true, - "license": "MIT" - }, "node_modules/prr": { "version": "1.0.1", "dev": true, "license": "MIT", "optional": true }, - "node_modules/pump": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, "node_modules/punycode": { "version": "2.3.1", "license": "MIT", @@ -13132,20 +11950,6 @@ "node": ">=6" } }, - "node_modules/qs": { - "version": "6.12.0", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "side-channel": "^1.0.6" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/queue-microtask": { "version": "1.2.3", "devOptional": true, @@ -13638,14 +12442,6 @@ "dev": true, "license": "MIT" }, - "node_modules/rsvp": { - "version": "3.6.2", - "dev": true, - "license": "MIT", - "engines": { - "node": "0.12.* || 4.* || 6.* || >= 7.*" - } - }, "node_modules/run-async": { "version": "3.0.0", "devOptional": true, @@ -13761,11 +12557,6 @@ } } }, - "node_modules/sax": { - "version": "1.1.4", - "dev": true, - "license": "ISC" - }, "node_modules/schema-utils": { "version": "4.2.0", "dev": true, @@ -14115,52 +12906,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/slice-ansi": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, - "node_modules/slice-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/slice-ansi/node_modules/color-convert": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/slice-ansi/node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT" - }, "node_modules/smart-buffer": { "version": "4.2.0", "devOptional": true, @@ -14324,24 +13069,11 @@ "wbuf": "^1.7.3" } }, - "node_modules/split2": { - "version": "3.2.2", - "dev": true, - "license": "ISC", - "dependencies": { - "readable-stream": "^3.0.0" - } - }, "node_modules/sprintf-js": { "version": "1.1.3", "devOptional": true, "license": "BSD-3-Clause" }, - "node_modules/ssh-config": { - "version": "1.1.6", - "dev": true, - "license": "MIT" - }, "node_modules/ssr-window": { "version": "4.0.2", "license": "MIT" @@ -14365,42 +13097,6 @@ "node": ">= 0.8" } }, - "node_modules/stream-combiner2": { - "version": "1.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "duplexer2": "~0.1.0", - "readable-stream": "^2.0.2" - } - }, - "node_modules/stream-combiner2/node_modules/readable-stream": { - "version": "2.3.8", - "dev": true, - "license": "MIT", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/stream-combiner2/node_modules/safe-buffer": { - "version": "5.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/stream-combiner2/node_modules/string_decoder": { - "version": "1.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/string_decoder": { "version": "1.3.0", "license": "MIT", @@ -14475,53 +13171,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/superagent": { - "version": "5.3.1", - "dev": true, - "license": "MIT", - "dependencies": { - "component-emitter": "^1.3.0", - "cookiejar": "^2.1.2", - "debug": "^4.1.1", - "fast-safe-stringify": "^2.0.7", - "form-data": "^3.0.0", - "formidable": "^1.2.2", - "methods": "^1.1.2", - "mime": "^2.4.6", - "qs": "^6.9.4", - "readable-stream": "^3.6.0", - "semver": "^7.3.2" - }, - "engines": { - "node": ">= 7.0.0" - } - }, - "node_modules/superagent-proxy": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.3.2", - "proxy-agent": "^5.0.0" - }, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "superagent": ">= 0.15.4 || 1 || 2 || 3" - } - }, - "node_modules/superagent/node_modules/mime": { - "version": "2.6.0", - "dev": true, - "license": "MIT", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, "node_modules/supports-color": { "version": "5.5.0", "dev": true, @@ -14789,11 +13438,6 @@ "version": "5.1.2", "license": "Unlicense" }, - "node_modules/through": { - "version": "2.3.8", - "dev": true, - "license": "MIT" - }, "node_modules/thunky": { "version": "1.1.0", "dev": true, @@ -15071,17 +13715,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/type-check": { - "version": "0.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, "node_modules/type-fest": { "version": "0.21.3", "devOptional": true, @@ -15110,14 +13743,6 @@ "dev": true, "license": "MIT" }, - "node_modules/typedarray-to-buffer": { - "version": "3.1.5", - "dev": true, - "license": "MIT", - "dependencies": { - "is-typedarray": "^1.0.0" - } - }, "node_modules/typescript": { "version": "5.4.3", "dev": true, @@ -15201,14 +13826,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/universalify": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10.0.0" - } - }, "node_modules/unpipe": { "version": "1.0.0", "dev": true, @@ -15217,14 +13834,6 @@ "node": ">= 0.8" } }, - "node_modules/untildify": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/update-browserslist-db": { "version": "1.0.13", "dev": true, @@ -15419,21 +14028,6 @@ "@esbuild/win32-x64": "0.19.12" } }, - "node_modules/vm2": { - "version": "3.9.19", - "dev": true, - "license": "MIT", - "dependencies": { - "acorn": "^8.7.0", - "acorn-walk": "^8.2.0" - }, - "bin": { - "vm2": "bin/vm2" - }, - "engines": { - "node": ">=6.0" - } - }, "node_modules/watchpack": { "version": "2.4.0", "dev": true, @@ -15847,124 +14441,6 @@ "dev": true, "license": "MIT" }, - "node_modules/windows-release": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "execa": "^4.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/windows-release/node_modules/execa": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/windows-release/node_modules/get-stream": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/windows-release/node_modules/human-signals": { - "version": "1.1.1", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=8.12.0" - } - }, - "node_modules/windows-release/node_modules/is-stream": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/windows-release/node_modules/mimic-fn": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/windows-release/node_modules/npm-run-path": { - "version": "4.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/windows-release/node_modules/onetime": { - "version": "5.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/windows-release/node_modules/strip-final-newline": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/word-wrap": { - "version": "1.2.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/wrap-ansi": { "version": "7.0.0", "devOptional": true, @@ -16063,17 +14539,6 @@ "dev": true, "license": "ISC" }, - "node_modules/write-file-atomic": { - "version": "3.0.3", - "dev": true, - "license": "ISC", - "dependencies": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, "node_modules/ws": { "version": "7.5.9", "dev": true, @@ -16094,11 +14559,6 @@ } } }, - "node_modules/xregexp": { - "version": "2.0.0", - "dev": true, - "license": "MIT" - }, "node_modules/y18n": { "version": "5.0.8", "devOptional": true, diff --git a/web/package.json b/web/package.json index fadf1ab9c..eeb0a5000 100644 --- a/web/package.json +++ b/web/package.json @@ -23,10 +23,10 @@ "analyze:ui": "webpack-bundle-analyzer dist/raw/ui/stats.json", "publish:shared": "npm run build:shared && npm publish ./dist/shared --access public", "publish:marketplace": "npm run build:marketplace && npm publish ./dist/marketplace --access public", - "start:install": "npm run-script build-config && ionic serve --project install-wizard --host 0.0.0.0", - "start:setup": "npm run-script build-config && ionic serve --project setup-wizard --host 0.0.0.0", - "start:ui": "npm run-script build-config && ionic serve --project ui --ip --host 0.0.0.0", - "start:ui:proxy": "npm run-script build-config && ionic serve --project ui --ip --host 0.0.0.0 -- --proxy-config proxy.conf.json", + "start:install": "npm run-script build-config && ng serve --project install-wizard --host 0.0.0.0", + "start:setup": "npm run-script build-config && ng serve --project setup-wizard --host 0.0.0.0", + "start:ui": "npm run-script build-config && ng serve --project ui --host 0.0.0.0", + "start:ui:proxy": "npm run-script build-config && ng serve --project ui --host 0.0.0.0 --proxy-config proxy.conf.json", "build-config": "node build-config.js" }, "dependencies": { @@ -41,22 +41,21 @@ "@angular/pwa": "^17.3.1", "@angular/router": "^17.3.1", "@angular/service-worker": "^17.3.1", - "@ionic/angular": "^6.1.15", "@materia-ui/ngx-monaco-editor": "^6.0.0", "@start9labs/argon2": "^0.1.0", "@start9labs/emver": "^0.1.5", "@start9labs/start-sdk": "file:../sdk/dist", - "@taiga-ui/addon-charts": "3.68.0", - "@taiga-ui/addon-commerce": "3.68.0", - "@taiga-ui/addon-mobile": "3.68.0", - "@taiga-ui/cdk": "3.68.0", - "@taiga-ui/core": "3.68.0", - "@taiga-ui/experimental": "3.68.0", - "@taiga-ui/icons": "3.68.0", - "@taiga-ui/kit": "3.68.0", - "@taiga-ui/styles": "3.68.0", + "@taiga-ui/addon-charts": "3.73.0", + "@taiga-ui/addon-commerce": "3.73.0", + "@taiga-ui/addon-mobile": "3.73.0", + "@taiga-ui/cdk": "3.73.0", + "@taiga-ui/core": "3.73.0", + "@taiga-ui/experimental": "3.73.0", + "@taiga-ui/icons": "3.73.0", + "@taiga-ui/kit": "3.73.0", + "@taiga-ui/styles": "3.73.0", "@tinkoff/ng-dompurify": "4.0.0", - "@tinkoff/ng-event-plugins": "3.1.0", + "@tinkoff/ng-event-plugins": "3.1.1", "ansi-to-html": "^0.7.2", "base64-js": "^1.5.1", "cbor": "npm:@jprochazk/cbor@^0.4.9", @@ -88,7 +87,6 @@ "@angular/cli": "^17.3.1", "@angular/compiler-cli": "^17.3.1", "@angular/language-service": "^17.3.1", - "@ionic/cli": "^6.19.0", "@types/dompurify": "^2.3.3", "@types/estree": "^0.0.51", "@types/js-yaml": "^4.0.5", diff --git a/web/projects/marketplace/src/pages/list/categories/categories.component.scss b/web/projects/marketplace/src/pages/list/categories/categories.component.scss index c888e736c..94868e02e 100644 --- a/web/projects/marketplace/src/pages/list/categories/categories.component.scss +++ b/web/projects/marketplace/src/pages/list/categories/categories.component.scss @@ -24,6 +24,7 @@ button { z-index: 50; background-color: transparent; background-image: none; + border: none; &:hover { text-decoration-line: none; diff --git a/web/projects/marketplace/src/pages/list/categories/categories.component.ts b/web/projects/marketplace/src/pages/list/categories/categories.component.ts index 66bbeafea..f9778a8f3 100644 --- a/web/projects/marketplace/src/pages/list/categories/categories.component.ts +++ b/web/projects/marketplace/src/pages/list/categories/categories.component.ts @@ -32,8 +32,7 @@ export class CategoriesComponent { case 'all': return 'tuiIconGridLarge' case 'bitcoin': - // @TODO need bitcoin icon - return 'tuiIconBoldLarge' + return 'tuiIconBitcoin' case 'messaging': case 'communications': return 'tuiIconMessageCircleLarge' diff --git a/web/projects/shared/assets/fonts/text-security-disc.woff2 b/web/projects/shared/assets/fonts/text-security-disc.woff2 deleted file mode 100644 index ddaf38b11488a5a63b7162567bbe742f7e61c3ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 784 zcmV+r1MmEIPew8T0RR9100R&J3IG5A00;m800PJW0RR9100000000000000000000 z00006U;u&u3UG1@1^@vz0we8NCz()NCy#>oQxD-9N5i1wul){(vb=i7Deb4 z81L{^9Bes=kB9HqUeDe45ke{jM#qXlMwY;pRaI4`sYI4QDzgD_&Q_nVs>#)Am57!c zJIERYh7%_oRstNtj=n^6-M9LC)pwJSw58B@{qIxKsU6_M50=&d!wGn-7fJ^XQ0Zg| zh{v`i_0Z26gB~JB$PkgEC8YE{9->HgTMuk||4baQ*lPgzpO^nG&)e^9fK6LB@3N6R zPh&aKnDfULL=Ipg2uTeMP4EZk1J81T_ZWYQVEjiuP6&j73>gv<3Min6B1$Nsj4~>y zpo%JLsG*KJ8fc)2CR%8rjW#;y{7%R~0U0J@Dxd&DbUFvG=hp9h$Bnw$?FqBRu1nL8 ze3?G|%aQ4`fVDRWB<5VW>!aOc697o)RmU+dWWq~w&&Y|jd#a^cD&wp$CrkYR7{fVIF!LCSI&m?UDclm$E&pKs9@ zU4f2N6C+j9yaPloqqXoe!TCZmHbPQl8z^7AA?!I{vn5|n$Z5GK%S!)8-TVXjt@@t; O0FV(`<)n_PpSuPb+*ro| diff --git a/web/projects/shared/assets/taiga-ui/icons/tuiIconBitcoinOutline.svg b/web/projects/shared/assets/taiga-ui/icons/tuiIconBitcoinOutline.svg new file mode 100644 index 000000000..89958abb0 --- /dev/null +++ b/web/projects/shared/assets/taiga-ui/icons/tuiIconBitcoinOutline.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/web/projects/shared/assets/taiga-ui/icons/tuiIconRocketOutline.svg b/web/projects/shared/assets/taiga-ui/icons/tuiIconRocketOutline.svg new file mode 100644 index 000000000..2f95becf6 --- /dev/null +++ b/web/projects/shared/assets/taiga-ui/icons/tuiIconRocketOutline.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/web/projects/shared/src/directives/safe-links.directive.ts b/web/projects/shared/src/directives/safe-links.directive.ts index 2671c9733..07b794b92 100644 --- a/web/projects/shared/src/directives/safe-links.directive.ts +++ b/web/projects/shared/src/directives/safe-links.directive.ts @@ -22,7 +22,7 @@ export class SafeLinksDirective implements AfterViewInit { .forEach(link => { link.target = '_blank' link.setAttribute('rel', 'noreferrer') - link.classList.add('externalLink') + link.classList.add('g-external-link') }) } } diff --git a/web/projects/shared/styles/global.scss b/web/projects/shared/styles/global.scss deleted file mode 100644 index a2a4de5e0..000000000 --- a/web/projects/shared/styles/global.scss +++ /dev/null @@ -1,29 +0,0 @@ -/* - * App Global CSS - * ---------------------------------------------------------------------------- - * Put style rules here that you want to apply globally. These styles are for - * the entire app and not just one component. Additionally, this file can be - * used as an entry point to import other CSS/Sass files to be included in the - * output CSS. - * For more information on global stylesheets, visit the documentation: - * https://ionicframework.com/docs/layout/global-stylesheets - */ - -/* Core CSS required for Ionic components to work properly */ -@import '@ionic/angular/css/core.css'; - -/* Basic CSS for apps built with Ionic */ -@import '@ionic/angular/css/normalize.css'; -@import '@ionic/angular/css/structure.css'; -@import '@ionic/angular/css/typography.css'; -@import '@ionic/angular/css/display.css'; - -/* Optional CSS utils that can be commented out */ -@import '@ionic/angular/css/padding.css'; -@import '@ionic/angular/css/float-elements.css'; -@import '@ionic/angular/css/text-alignment.css'; -@import '@ionic/angular/css/text-transformation.css'; -@import '@ionic/angular/css/flex-utils.css'; - -/* Import swiper styles for slides */ -@import 'swiper/scss'; diff --git a/web/projects/shared/styles/shared.scss b/web/projects/shared/styles/shared.scss index d5ad4716b..27e800b49 100644 --- a/web/projects/shared/styles/shared.scss +++ b/web/projects/shared/styles/shared.scss @@ -167,94 +167,6 @@ body { user-select: text; } -ion-input { - caret-color: gray; -} - -ion-alert { - .alert-wrapper { - --min-width: 320px; - } -} - -.swiper { - .swiper-slide { - display: unset; - } -} - -ion-modal { - --backdrop-opacity: 0.7; - &::part(content) { - border-radius: 6px; - border: 2px solid rgba(255, 255, 255, 0.03); - box-shadow: 0 32px 64px rgba(0, 0, 0, 0.2); - } -} - -.alertlike-modal { - &::part(content) { - max-height: 380px !important; - top: 25% !important; - width: 90% !important; - left: 5% !important; - --box-shadow: none !important; - } -} - -@media (min-width: 1000px) { - ion-modal::part(content) { - width: $wide-modal !important; - left: calc((100vw - $wide-modal) / 2) !important; - } - - .alertlike-modal { - &::part(content) { - width: $wide-modal !important; - left: calc((100vw - $wide-modal) / 2) !important; - } - } - - ion-alert { - .alert-wrapper { - --width: 50%; - --max-width: 500px; - } - } -} - -.item-interactive { - --highlight-background: var(--ion-color-light) !important; -} - -.hidden-scrollbar { - overflow: auto; - white-space: nowrap; - height: 60px; - - /* Hide scrollbar for Chrome, Safari and Opera */ - &::-webkit-scrollbar { - width: 0; - height: 0; - } - - /* Hide scrollbar for IE, Edge and Firefox */ - /* IE and Edge */ - -ms-overflow-style: none; - /* Firefox */ - scrollbar-width: none; -} - -.divider { - background: linear-gradient( - 90deg, - var(--ion-color-light) 0, - var(--ion-color-dark) 50%, - var(--ion-color-light) 100% - ); - height: 1px; -} - .loading-dots:after { content: '...'; overflow: hidden; @@ -265,22 +177,6 @@ ion-modal { width: 1em; } -.courier-new { - font-family: 'Courier New'; -} - -.montserrat { - font-family: 'Montserrat', sans-serif !important; -} - -.color-success-shade { - color: var(--ion-color-success-shade); -} - -.color-primary-shade { - color: var(--ion-color-primary-shade); -} - @keyframes ellipsis-dot { 25% { content: ''; @@ -299,37 +195,12 @@ ion-modal { } } -.alert-error-message { - .alert-title { - color: var(--ion-color-danger); - } -} - -.alert-warning-message { - .alert-title { - color: var(--ion-color-warning); - } -} - -.alert-success-message { - .alert-title { - color: var(--ion-color-success); - } -} - a { cursor: pointer; color: inherit; text-decoration: none; } -.modal-buttons { - display: flex; - justify-content: flex-end; - gap: 16px; - margin-top: 24px; -} - /* marketplace */ .background-border { border-radius: 0.75rem; diff --git a/web/projects/shared/styles/variables.scss b/web/projects/shared/styles/variables.scss deleted file mode 100644 index 6a9d364b9..000000000 --- a/web/projects/shared/styles/variables.scss +++ /dev/null @@ -1,134 +0,0 @@ -// Ionic Variables and Theming. For more info, please see: -// http://ionicframework.com/docs/theming/ - -/** Ionic CSS Variables **/ -:root { - --ion-color-primary: #0075e1; - --ion-color-primary-rgb: 66, 140, 255; - --ion-color-primary-contrast: #ffffff; - --ion-color-primary-contrast-rgb: 255, 255, 255; - --ion-color-primary-shade: #3a7be0; - --ion-color-primary-tint: #5598ff; - - --ion-color-secondary: #50c8ff; - --ion-color-secondary-rgb: 80, 200, 255; - --ion-color-secondary-contrast: #ffffff; - --ion-color-secondary-contrast-rgb: 255, 255, 255; - --ion-color-secondary-shade: #46b0e0; - --ion-color-secondary-tint: #62ceff; - - --ion-color-tertiary: #6a64ff; - --ion-color-tertiary-rgb: 106, 100, 255; - --ion-color-tertiary-contrast: #ffffff; - --ion-color-tertiary-contrast-rgb: 255, 255, 255; - --ion-color-tertiary-shade: #5d58e0; - --ion-color-tertiary-tint: #7974ff; - - --ion-color-success: #2fdf75; - --ion-color-success-rgb: 47, 223, 117; - --ion-color-success-contrast: #000000; - --ion-color-success-contrast-rgb: 0, 0, 0; - --ion-color-success-shade: #29c467; - --ion-color-success-tint: #44e283; - - --ion-color-warning: #ffd534; - --ion-color-warning-rgb: 255, 213, 52; - --ion-color-warning-contrast: #000000; - --ion-color-warning-contrast-rgb: 0, 0, 0; - --ion-color-warning-shade: #e0bb2e; - --ion-color-warning-tint: #ffd948; - - --ion-color-danger: #ff4961; - --ion-color-danger-rgb: 255, 73, 97; - --ion-color-danger-contrast: #ffffff; - --ion-color-danger-contrast-rgb: 255, 255, 255; - --ion-color-danger-shade: #e04055; - --ion-color-danger-tint: #ff5b71; - - --ion-color-light: #181818; - --ion-color-light-rgb: 24, 24, 24; - --ion-color-light-contrast: #ffffff; - --ion-color-light-contrast-rgb: 255, 255, 255; - --ion-color-light-shade: #000000; - --ion-color-light-tint: #000000; - - --ion-color-medium: #222428; - --ion-color-medium-rgb: 34, 36, 40; - --ion-color-medium-contrast: #ffffff; - --ion-color-medium-contrast-rgb: 255, 255, 255; - --ion-color-medium-shade: #1e2023; - --ion-color-medium-tint: #383a3e; - - --ion-color-dark: #e0e0e0; - --ion-color-dark-rgb: 224, 224, 224; - --ion-color-dark-contrast: #000000; - --ion-color-dark-contrast-rgb: 0, 0, 0; - --ion-color-dark-shade: #bfbfbf; - --ion-color-dark-tint: #d8d8d8; - - --ion-color-step-50: #1e1e1e; - --ion-color-step-100: #2a2a2a; - --ion-color-step-150: #363636; - --ion-color-step-200: #414141; - --ion-color-step-250: #4d4d4d; - --ion-color-step-300: #595959; - --ion-color-step-350: #656565; - --ion-color-step-400: #717171; - --ion-color-step-450: #7d7d7d; - --ion-color-step-500: #898989; - --ion-color-step-550: #949494; - --ion-color-step-600: #a0a0a0; - --ion-color-step-650: #acacac; - --ion-color-step-700: #b8b8b8; - --ion-color-step-750: #c4c4c4; - --ion-color-step-800: #d0d0d0; - --ion-color-step-850: #dbdbdb; - --ion-color-step-900: #e7e7e7; - --ion-color-step-950: #f3f3f3; - - --alt-red: #ff4961; - --alt-orange: #f89248; - --alt-yellow: #e5d53e; - --alt-green: #3dcf6f; - --alt-blue: #00a8a8; - --alt-purple: #9747ff; - - --portal-header-height: 56px; - - // @TODO rename when make style lib - --tw-color-black: 0 0 0; - --tw-color-white: 255 255 255; - --tw-color-slate-50: 248 250 252; - --tw-color-slate-100: 241 245 249; - --tw-color-slate-200: 226 232 240; - --tw-color-slate-300: 203 213 225; - --tw-color-slate-400: 148 163 184; - --tw-color-slate-500: 100 116 139; - --tw-color-slate-600: 71 85 105; - --tw-color-slate-700: 51 65 85; - --tw-color-slate-800: 30 41 59; - --tw-color-slate-900: 15 23 42; - --tw-color-slate-950: 2 6 23; - --tw-color-gray-50: 249 250 251; - --tw-color-gray-100: 243 244 246; - --tw-color-gray-200: 229 231 235; - --tw-color-gray-300: 209 213 219; - --tw-color-gray-400: 156 163 175; - --tw-color-gray-500: 107 114 128; - --tw-color-gray-600: 75 85 99; - --tw-color-gray-700: 55 65 81; - --tw-color-gray-800: 31 41 55; - --tw-color-gray-900: 17 24 39; - --tw-color-gray-950: 3 7 18; - --tw-color-zinc-50: 250 250 250; - --tw-color-zinc-100: 244 244 245; - --tw-color-zinc-200: 228 228 231; - --tw-color-zinc-300: 212 212 216; - --tw-color-zinc-400: 161 161 170; - --tw-color-zinc-500: 113 113 122; - --tw-color-zinc-600: 82 82 91; - --tw-color-zinc-700: 63 63 70; - --tw-color-zinc-800: 39 39 42; - --tw-color-zinc-900: 24 24 27; - --tw-color-zinc-950: 9 9 11; -} diff --git a/web/projects/ui/src/app/app.component.html b/web/projects/ui/src/app/app.component.html index b8024eef8..1174d755c 100644 --- a/web/projects/ui/src/app/app.component.html +++ b/web/projects/ui/src/app/app.component.html @@ -1,20 +1,7 @@ - - - - - - - - + + diff --git a/web/projects/ui/src/app/app.component.scss b/web/projects/ui/src/app/app.component.scss index 2cf185479..8ed3334e6 100644 --- a/web/projects/ui/src/app/app.component.scss +++ b/web/projects/ui/src/app/app.component.scss @@ -1,17 +1,17 @@ +@import '@taiga-ui/core/styles/taiga-ui-local'; + :host { display: block; height: 100%; } tui-root { + @include transition(filter); height: 100%; -} + font-family: 'Open Sans', sans-serif; + --tui-skeleton-radius: 1rem; -.container { - max-width: 100%; - transition: filter 0.3s; - - &_offline { + &.offline { filter: saturate(0.75) contrast(0.85); } } diff --git a/web/projects/ui/src/app/app.component.ts b/web/projects/ui/src/app/app.component.ts index 28237452a..6b7624d2d 100644 --- a/web/projects/ui/src/app/app.component.ts +++ b/web/projects/ui/src/app/app.component.ts @@ -36,9 +36,10 @@ export class AppComponent implements OnInit { .pipe(startWith({ restarting: false, shuttingDown: false })), ]).pipe( map( - ([verified, connected, status]) => - verified && (!connected || status.restarting || status.shuttingDown), + ([connected, verified, status]) => + connected && (!verified || status.restarting || status.shuttingDown), ), + startWith(true), ) async ngOnInit() { diff --git a/web/projects/ui/src/app/app.module.ts b/web/projects/ui/src/app/app.module.ts index 2457c07bd..94a7498be 100644 --- a/web/projects/ui/src/app/app.module.ts +++ b/web/projects/ui/src/app/app.module.ts @@ -2,7 +2,6 @@ import { HttpClientModule } from '@angular/common/http' import { NgModule } from '@angular/core' import { BrowserAnimationsModule } from '@angular/platform-browser/animations' import { ServiceWorkerModule } from '@angular/service-worker' -import { IonicModule } from '@ionic/angular' import { LoadingModule } from '@start9labs/shared' import { TuiAlertModule, @@ -11,9 +10,9 @@ import { TuiRootModule, TuiThemeNightModule, } from '@taiga-ui/core' -import { SidebarHostComponent } from 'src/app/common/sidebar-host.component' -import { SvgDefinitionsComponent } from 'src/app/common/svg-definitions.component' -import { ToastContainerComponent } from 'src/app/common/toast-container/toast-container.component' +import { SidebarHostComponent } from 'src/app/components/sidebar-host.component' +import { SvgDefinitionsComponent } from 'src/app/components/svg-definitions.component' +import { ToastContainerComponent } from 'src/app/components/toast-container.component' import { environment } from '../environments/environment' import { AppComponent } from './app.component' import { APP_PROVIDERS } from './app.providers' @@ -24,9 +23,6 @@ import { RoutingModule } from './routing.module' imports: [ HttpClientModule, BrowserAnimationsModule, - IonicModule.forRoot({ - mode: 'md', - }), RoutingModule, ToastContainerComponent, TuiRootModule, diff --git a/web/projects/ui/src/app/app.providers.ts b/web/projects/ui/src/app/app.providers.ts index 400fa0e92..e8e2febdf 100644 --- a/web/projects/ui/src/app/app.providers.ts +++ b/web/projects/ui/src/app/app.providers.ts @@ -1,7 +1,6 @@ import { APP_INITIALIZER, Provider } from '@angular/core' import { UntypedFormBuilder } from '@angular/forms' import { Router } from '@angular/router' -import { IonNav } from '@ionic/angular' import { AbstractCategoryService, AbstractMarketplaceService, @@ -10,6 +9,7 @@ import { import { RELATIVE_URL, THEME, WorkspaceConfig } from '@start9labs/shared' import { TUI_DATE_FORMAT, TUI_DATE_SEPARATOR } from '@taiga-ui/cdk' import { + tuiDropdownOptionsProvider, tuiNumberFormatProvider, tuiTextfieldOptionsProvider, } from '@taiga-ui/core' @@ -39,10 +39,10 @@ export const APP_PROVIDERS: Provider[] = [ PATCH_DB_PROVIDERS, FilterPackagesPipe, UntypedFormBuilder, - IonNav, tuiNumberFormatProvider({ decimalSeparator: '.', thousandSeparator: '' }), tuiButtonOptionsProvider({ size: 'm' }), tuiTextfieldOptionsProvider({ hintOnDisabled: true }), + tuiDropdownOptionsProvider({ appearance: 'start-os' }), { provide: TUI_DATE_FORMAT, useValue: 'MDY', diff --git a/web/projects/ui/src/app/apps/loading/loading.module.ts b/web/projects/ui/src/app/apps/loading/loading.module.ts deleted file mode 100644 index 223f8db47..000000000 --- a/web/projects/ui/src/app/apps/loading/loading.module.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { NgModule } from '@angular/core' -import { RouterModule, Routes } from '@angular/router' -import { LoadingPage } from './loading.page' - -const routes: Routes = [ - { - path: '', - component: LoadingPage, - }, -] - -@NgModule({ - imports: [RouterModule.forChild(routes)], -}) -export class LoadingPageModule {} diff --git a/web/projects/ui/src/app/apps/portal/components/card.component.ts b/web/projects/ui/src/app/apps/portal/components/card.component.ts deleted file mode 100644 index 69ba87b1f..000000000 --- a/web/projects/ui/src/app/apps/portal/components/card.component.ts +++ /dev/null @@ -1,145 +0,0 @@ -// import { CommonModule } from '@angular/common' -// import { -// ChangeDetectionStrategy, -// Component, -// HostListener, -// Input, -// } from '@angular/core' -// import { -// TuiBadgedContentModule, -// TuiBadgeNotificationModule, -// TuiButtonModule, -// TuiIconModule, -// } from '@taiga-ui/experimental' -// import { RouterLink } from '@angular/router' -// import { TickerModule } from '@start9labs/shared' -// import { TuiDataListModule, TuiHostedDropdownModule } from '@taiga-ui/core' -// import { Action, ActionsComponent } from './actions.component' - -// @Component({ -// selector: '[appCard]', -// template: ` -// -// -// @if (badge) { -// -// {{ badge }} -// -// } -// @if (icon?.startsWith('tuiIcon')) { -// -// } @else { -// -// } -// -// -// -// @if (isService) { -// -// -// -// -// -// {{ title }} -// -// -// -// -// } -// `, -// styles: [ -// ` -// :host { -// display: flex; -// height: 5.5rem; -// width: 12.5rem; -// border-radius: var(--tui-radius-l); -// overflow: hidden; -// box-shadow: 0 0.25rem 0.25rem rgb(0 0 0 / 25%); -// // TODO: Theme -// background: rgb(111 109 109); -// } - -// .link { -// display: flex; -// flex: 1; -// flex-direction: column; -// align-items: center; -// justify-content: center; -// color: white; -// gap: 0.25rem; -// padding: 0 0.5rem; -// font: var(--tui-font-text-m); -// white-space: nowrap; -// overflow: hidden; -// } - -// .icon { -// width: 2.5rem; -// height: 2.5rem; -// border-radius: 100%; -// color: var(--tui-text-01-night); -// } - -// .side { -// width: 3rem; -// display: flex; -// align-items: center; -// justify-content: center; -// box-shadow: 0 0.25rem 0.25rem rgb(0 0 0 / 25%); -// // TODO: Theme -// background: #4b4a4a; -// } -// `, -// ], -// standalone: true, -// changeDetection: ChangeDetectionStrategy.OnPush, -// imports: [ -// CommonModule, -// RouterLink, -// TuiButtonModule, -// TuiHostedDropdownModule, -// TuiDataListModule, -// TuiIconModule, -// TickerModule, -// TuiBadgedContentModule, -// TuiBadgeNotificationModule, -// ActionsComponent, -// ], -// }) -// export class CardComponent { -// @Input({ required: true }) -// id!: string - -// @Input({ required: true }) -// icon!: string - -// @Input({ required: true }) -// title!: string - -// @Input() -// actions: Record = {} - -// @Input() -// badge: number | null = null - -// get isService(): boolean { -// return !this.id.includes('/') -// } - -// // Prevents Firefox from starting a native drag -// @HostListener('pointerdown.prevent') -// onDown() {} -// } diff --git a/web/projects/ui/src/app/apps/portal/utils/system-tab-resolver.ts b/web/projects/ui/src/app/apps/portal/utils/system-tab-resolver.ts deleted file mode 100644 index ff5bd5ee1..000000000 --- a/web/projects/ui/src/app/apps/portal/utils/system-tab-resolver.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { ActivatedRouteSnapshot } from '@angular/router' - -export function systemTabResolver({ data }: ActivatedRouteSnapshot): string { - return data['title'] -} diff --git a/web/projects/ui/src/app/apps/portal/utils/to-navigation-item.ts b/web/projects/ui/src/app/apps/portal/utils/to-navigation-item.ts deleted file mode 100644 index 6ec647407..000000000 --- a/web/projects/ui/src/app/apps/portal/utils/to-navigation-item.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { PackageDataEntry } from 'src/app/services/patch-db/data-model' -import { SYSTEM_UTILITIES } from '../constants/system-utilities' -import { toRouterLink } from './to-router-link' -import { getManifest } from 'src/app/util/get-package-data' - -export interface NavigationItem { - readonly routerLink: string - readonly icon: string - readonly title: string -} - -export function toNavigationItem( - id: string, - packages: Record = {}, -): NavigationItem { - const item = SYSTEM_UTILITIES[id] - const routerLink = toRouterLink(id) - - if (SYSTEM_UTILITIES[id]) { - return { - icon: item.icon, - title: item.title, - routerLink, - } - } - - return { - icon: packages[id]?.icon, - title: getManifest(packages[id]).title, - routerLink, - } -} diff --git a/web/projects/ui/src/app/common/os-welcome/os-welcome.module.ts b/web/projects/ui/src/app/common/os-welcome/os-welcome.module.ts deleted file mode 100644 index 907d358a6..000000000 --- a/web/projects/ui/src/app/common/os-welcome/os-welcome.module.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { NgModule } from '@angular/core' -import { TuiButtonModule } from '@taiga-ui/experimental' -import { OSWelcomePage } from './os-welcome.page' - -@NgModule({ - declarations: [OSWelcomePage], - imports: [TuiButtonModule], - exports: [OSWelcomePage], -}) -export class OSWelcomePageModule {} diff --git a/web/projects/ui/src/app/common/os-welcome/os-welcome.page.html b/web/projects/ui/src/app/common/os-welcome/os-welcome.page.html deleted file mode 100644 index df6a682a7..000000000 --- a/web/projects/ui/src/app/common/os-welcome/os-welcome.page.html +++ /dev/null @@ -1,34 +0,0 @@ -

This Release

-

0.3.5

-

- View the complete - - release notes - - for more details. -

-
Highlights
-
    -
  • - This release contains significant under-the-hood improvements to performance - and reliability -
  • -
  • Ditch Docker, replace with Podman
  • -
  • Remove locking behavior from PatchDB and optimize
  • -
  • Boost efficiency of service manager
  • -
  • Require HTTPS on LAN, and improve setup flow for trusting Root CA
  • -
  • Better default privacy settings for Firefox kiosk mode
  • -
  • Eliminate memory leak from Javascript runtime
  • -
  • Other small bug fixes
  • -
  • Update license to MIT
  • -
- -
- -
diff --git a/web/projects/ui/src/app/common/os-welcome/os-welcome.page.scss b/web/projects/ui/src/app/common/os-welcome/os-welcome.page.scss deleted file mode 100644 index ae9b93b7b..000000000 --- a/web/projects/ui/src/app/common/os-welcome/os-welcome.page.scss +++ /dev/null @@ -1,34 +0,0 @@ -.close-button { - width: 100%; - display: flex; - justify-content: center; - align-items: center; - min-height: 100px; -} - -.main-content { - color: var(--ion-color-dark); -} - -.spaced-list { - li { - padding-bottom: 12px; - } -} - -.note-padding { - padding-bottom: 12px; -} - -h2 { - font-weight: bold; -} - -h4 { - font-style: italic; -} - -.begin { - display: block; - margin: 0 auto; -} diff --git a/web/projects/ui/src/app/common/os-welcome/os-welcome.page.ts b/web/projects/ui/src/app/common/os-welcome/os-welcome.page.ts deleted file mode 100644 index 678705446..000000000 --- a/web/projects/ui/src/app/common/os-welcome/os-welcome.page.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Component, Inject } from '@angular/core' -import { TuiDialogContext } from '@taiga-ui/core' -import { POLYMORPHEUS_CONTEXT } from '@tinkoff/ng-polymorpheus' - -@Component({ - selector: 'os-welcome', - templateUrl: './os-welcome.page.html', - styleUrls: ['./os-welcome.page.scss'], -}) -export class OSWelcomePage { - constructor( - @Inject(POLYMORPHEUS_CONTEXT) readonly context: TuiDialogContext, - ) {} -} diff --git a/web/projects/ui/src/app/common/toast-container/notifications-toast.component.ts b/web/projects/ui/src/app/components/notifications-toast.component.ts similarity index 100% rename from web/projects/ui/src/app/common/toast-container/notifications-toast.component.ts rename to web/projects/ui/src/app/components/notifications-toast.component.ts diff --git a/web/projects/ui/src/app/common/toast-container/refresh-alert.component.ts b/web/projects/ui/src/app/components/refresh-alert.component.ts similarity index 100% rename from web/projects/ui/src/app/common/toast-container/refresh-alert.component.ts rename to web/projects/ui/src/app/components/refresh-alert.component.ts diff --git a/web/projects/ui/src/app/apps/portal/modals/report.component.ts b/web/projects/ui/src/app/components/report.component.ts similarity index 96% rename from web/projects/ui/src/app/apps/portal/modals/report.component.ts rename to web/projects/ui/src/app/components/report.component.ts index b7a980a7a..3a4c30dca 100644 --- a/web/projects/ui/src/app/apps/portal/modals/report.component.ts +++ b/web/projects/ui/src/app/components/report.component.ts @@ -9,7 +9,7 @@ import { BackupReport } from 'src/app/services/api/api.types' @Component({ template: ` -

Completed: {{ timestamp | date : 'medium' }}

+

Completed: {{ timestamp | date: 'medium' }}

System data diff --git a/web/projects/ui/src/app/common/sidebar-host.component.ts b/web/projects/ui/src/app/components/sidebar-host.component.ts similarity index 100% rename from web/projects/ui/src/app/common/sidebar-host.component.ts rename to web/projects/ui/src/app/components/sidebar-host.component.ts diff --git a/web/projects/ui/src/app/common/svg-definitions.component.ts b/web/projects/ui/src/app/components/svg-definitions.component.ts similarity index 100% rename from web/projects/ui/src/app/common/svg-definitions.component.ts rename to web/projects/ui/src/app/components/svg-definitions.component.ts diff --git a/web/projects/ui/src/app/common/toast-container/toast-container.component.ts b/web/projects/ui/src/app/components/toast-container.component.ts similarity index 100% rename from web/projects/ui/src/app/common/toast-container/toast-container.component.ts rename to web/projects/ui/src/app/components/toast-container.component.ts diff --git a/web/projects/ui/src/app/common/toast-container/update-toast.component.ts b/web/projects/ui/src/app/components/update-toast.component.ts similarity index 100% rename from web/projects/ui/src/app/common/toast-container/update-toast.component.ts rename to web/projects/ui/src/app/components/update-toast.component.ts diff --git a/web/projects/ui/src/app/components/welcome.component.ts b/web/projects/ui/src/app/components/welcome.component.ts new file mode 100644 index 000000000..cdec034d8 --- /dev/null +++ b/web/projects/ui/src/app/components/welcome.component.ts @@ -0,0 +1,49 @@ +import { Component, inject, Inject } from '@angular/core' +import { TuiDialogContext } from '@taiga-ui/core' +import { TuiButtonModule } from '@taiga-ui/experimental' +import { POLYMORPHEUS_CONTEXT } from '@tinkoff/ng-polymorpheus' + +@Component({ + standalone: true, + template: ` +

+ This release: + 0.3.5 +

+

+ View the complete + + release notes + + for more details. +

+
Highlights
+
    +
  • + This release contains significant under-the-hood improvements to + performance and reliability +
  • +
  • Ditch Docker, replace with Podman
  • +
  • Remove locking behavior from PatchDB and optimize
  • +
  • Boost efficiency of service manager
  • +
  • Require HTTPS on LAN, and improve setup flow for trusting Root CA
  • +
  • Better default privacy settings for Firefox kiosk mode
  • +
  • Eliminate memory leak from Javascript runtime
  • +
  • Other small bug fixes
  • +
  • Update license to MIT
  • +
+ +

+ +

+ `, + styles: 'li { margin-bottom: 0.5rem }', + imports: [TuiButtonModule], +}) +export class WelcomeComponent { + readonly context = inject(POLYMORPHEUS_CONTEXT) +} diff --git a/web/projects/ui/src/app/apps/diagnostic/diagnostic.module.ts b/web/projects/ui/src/app/routes/diagnostic/diagnostic.module.ts similarity index 100% rename from web/projects/ui/src/app/apps/diagnostic/diagnostic.module.ts rename to web/projects/ui/src/app/routes/diagnostic/diagnostic.module.ts diff --git a/web/projects/ui/src/app/apps/diagnostic/home/home.module.ts b/web/projects/ui/src/app/routes/diagnostic/home/home.module.ts similarity index 100% rename from web/projects/ui/src/app/apps/diagnostic/home/home.module.ts rename to web/projects/ui/src/app/routes/diagnostic/home/home.module.ts diff --git a/web/projects/ui/src/app/apps/diagnostic/home/home.page.html b/web/projects/ui/src/app/routes/diagnostic/home/home.page.html similarity index 100% rename from web/projects/ui/src/app/apps/diagnostic/home/home.page.html rename to web/projects/ui/src/app/routes/diagnostic/home/home.page.html diff --git a/web/projects/ui/src/app/apps/diagnostic/home/home.page.scss b/web/projects/ui/src/app/routes/diagnostic/home/home.page.scss similarity index 100% rename from web/projects/ui/src/app/apps/diagnostic/home/home.page.scss rename to web/projects/ui/src/app/routes/diagnostic/home/home.page.scss diff --git a/web/projects/ui/src/app/apps/diagnostic/home/home.page.ts b/web/projects/ui/src/app/routes/diagnostic/home/home.page.ts similarity index 100% rename from web/projects/ui/src/app/apps/diagnostic/home/home.page.ts rename to web/projects/ui/src/app/routes/diagnostic/home/home.page.ts diff --git a/web/projects/ui/src/app/apps/diagnostic/logs/logs.module.ts b/web/projects/ui/src/app/routes/diagnostic/logs/logs.module.ts similarity index 100% rename from web/projects/ui/src/app/apps/diagnostic/logs/logs.module.ts rename to web/projects/ui/src/app/routes/diagnostic/logs/logs.module.ts diff --git a/web/projects/ui/src/app/apps/diagnostic/logs/logs.page.html b/web/projects/ui/src/app/routes/diagnostic/logs/logs.page.html similarity index 100% rename from web/projects/ui/src/app/apps/diagnostic/logs/logs.page.html rename to web/projects/ui/src/app/routes/diagnostic/logs/logs.page.html diff --git a/web/projects/ui/src/app/apps/diagnostic/logs/logs.page.ts b/web/projects/ui/src/app/routes/diagnostic/logs/logs.page.ts similarity index 95% rename from web/projects/ui/src/app/apps/diagnostic/logs/logs.page.ts rename to web/projects/ui/src/app/routes/diagnostic/logs/logs.page.ts index 75902f5fd..1c16bab4f 100644 --- a/web/projects/ui/src/app/apps/diagnostic/logs/logs.page.ts +++ b/web/projects/ui/src/app/routes/diagnostic/logs/logs.page.ts @@ -2,7 +2,7 @@ import { Component, ElementRef, inject, OnInit, ViewChild } from '@angular/core' import { INTERSECTION_ROOT } from '@ng-web-apis/intersection-observer' import { convertAnsi, ErrorService } from '@start9labs/shared' import { TuiScrollbarComponent } from '@taiga-ui/core' -import { DiagnosticService } from 'src/app/apps/diagnostic/services/diagnostic.service' +import { DiagnosticService } from 'src/app/routes/diagnostic/services/diagnostic.service' @Component({ selector: 'logs', diff --git a/web/projects/ui/src/app/apps/diagnostic/services/diagnostic.service.ts b/web/projects/ui/src/app/routes/diagnostic/services/diagnostic.service.ts similarity index 100% rename from web/projects/ui/src/app/apps/diagnostic/services/diagnostic.service.ts rename to web/projects/ui/src/app/routes/diagnostic/services/diagnostic.service.ts diff --git a/web/projects/ui/src/app/apps/diagnostic/services/live-diagnostic.service.ts b/web/projects/ui/src/app/routes/diagnostic/services/live-diagnostic.service.ts similarity index 100% rename from web/projects/ui/src/app/apps/diagnostic/services/live-diagnostic.service.ts rename to web/projects/ui/src/app/routes/diagnostic/services/live-diagnostic.service.ts diff --git a/web/projects/ui/src/app/apps/diagnostic/services/mock-diagnostic.service.ts b/web/projects/ui/src/app/routes/diagnostic/services/mock-diagnostic.service.ts similarity index 100% rename from web/projects/ui/src/app/apps/diagnostic/services/mock-diagnostic.service.ts rename to web/projects/ui/src/app/routes/diagnostic/services/mock-diagnostic.service.ts diff --git a/web/projects/ui/src/app/apps/loading/loading.page.ts b/web/projects/ui/src/app/routes/loading/loading.page.ts similarity index 78% rename from web/projects/ui/src/app/apps/loading/loading.page.ts rename to web/projects/ui/src/app/routes/loading/loading.page.ts index 4702c7626..2fee80fad 100644 --- a/web/projects/ui/src/app/apps/loading/loading.page.ts +++ b/web/projects/ui/src/app/routes/loading/loading.page.ts @@ -11,17 +11,15 @@ import { ApiService } from 'src/app/services/api/embassy-api.service' @Component({ standalone: true, template: ` - + `, providers: [ provideSetupService(ApiService), provideSetupLogsService(ApiService), ], + styles: ':host { padding: 1rem; }', imports: [InitializingComponent], }) -export class LoadingPage { +export default class LoadingPage { readonly router = inject(Router) } diff --git a/web/projects/ui/src/app/apps/login/ca-wizard/ca-wizard.component.html b/web/projects/ui/src/app/routes/login/ca-wizard/ca-wizard.component.html similarity index 100% rename from web/projects/ui/src/app/apps/login/ca-wizard/ca-wizard.component.html rename to web/projects/ui/src/app/routes/login/ca-wizard/ca-wizard.component.html diff --git a/web/projects/ui/src/app/apps/login/ca-wizard/ca-wizard.component.scss b/web/projects/ui/src/app/routes/login/ca-wizard/ca-wizard.component.scss similarity index 100% rename from web/projects/ui/src/app/apps/login/ca-wizard/ca-wizard.component.scss rename to web/projects/ui/src/app/routes/login/ca-wizard/ca-wizard.component.scss diff --git a/web/projects/ui/src/app/apps/login/ca-wizard/ca-wizard.component.ts b/web/projects/ui/src/app/routes/login/ca-wizard/ca-wizard.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/login/ca-wizard/ca-wizard.component.ts rename to web/projects/ui/src/app/routes/login/ca-wizard/ca-wizard.component.ts diff --git a/web/projects/ui/src/app/apps/login/login.module.ts b/web/projects/ui/src/app/routes/login/login.module.ts similarity index 100% rename from web/projects/ui/src/app/apps/login/login.module.ts rename to web/projects/ui/src/app/routes/login/login.module.ts diff --git a/web/projects/ui/src/app/apps/login/login.page.html b/web/projects/ui/src/app/routes/login/login.page.html similarity index 100% rename from web/projects/ui/src/app/apps/login/login.page.html rename to web/projects/ui/src/app/routes/login/login.page.html diff --git a/web/projects/ui/src/app/apps/login/login.page.scss b/web/projects/ui/src/app/routes/login/login.page.scss similarity index 100% rename from web/projects/ui/src/app/apps/login/login.page.scss rename to web/projects/ui/src/app/routes/login/login.page.scss diff --git a/web/projects/ui/src/app/apps/login/login.page.ts b/web/projects/ui/src/app/routes/login/login.page.ts similarity index 100% rename from web/projects/ui/src/app/apps/login/login.page.ts rename to web/projects/ui/src/app/routes/login/login.page.ts diff --git a/web/projects/ui/src/app/apps/portal/components/actions.component.ts b/web/projects/ui/src/app/routes/portal/components/actions.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/components/actions.component.ts rename to web/projects/ui/src/app/routes/portal/components/actions.component.ts diff --git a/web/projects/ui/src/app/apps/portal/components/form.component.ts b/web/projects/ui/src/app/routes/portal/components/form.component.ts similarity index 96% rename from web/projects/ui/src/app/apps/portal/components/form.component.ts rename to web/projects/ui/src/app/routes/portal/components/form.component.ts index e3687e17c..b82d0ee67 100644 --- a/web/projects/ui/src/app/apps/portal/components/form.component.ts +++ b/web/projects/ui/src/app/routes/portal/components/form.component.ts @@ -19,8 +19,8 @@ import { TuiButtonModule } from '@taiga-ui/experimental' import { TuiDialogFormService } from '@taiga-ui/kit' import { POLYMORPHEUS_CONTEXT } from '@tinkoff/ng-polymorpheus' import { compare, Operation } from 'fast-json-patch' -import { FormModule } from 'src/app/common/form/form.module' -import { InvalidService } from 'src/app/common/form/invalid.service' +import { FormModule } from 'src/app/routes/portal/components/form/form.module' +import { InvalidService } from 'src/app/routes/portal/components/form/invalid.service' import { FormService } from 'src/app/services/form.service' export interface ActionButton { diff --git a/web/projects/ui/src/app/common/form/control.directive.ts b/web/projects/ui/src/app/routes/portal/components/form/control.directive.ts similarity index 100% rename from web/projects/ui/src/app/common/form/control.directive.ts rename to web/projects/ui/src/app/routes/portal/components/form/control.directive.ts diff --git a/web/projects/ui/src/app/common/form/control.ts b/web/projects/ui/src/app/routes/portal/components/form/control.ts similarity index 100% rename from web/projects/ui/src/app/common/form/control.ts rename to web/projects/ui/src/app/routes/portal/components/form/control.ts diff --git a/web/projects/ui/src/app/common/form/form-array/form-array.component.html b/web/projects/ui/src/app/routes/portal/components/form/form-array/form-array.component.html similarity index 96% rename from web/projects/ui/src/app/common/form/form-array/form-array.component.html rename to web/projects/ui/src/app/routes/portal/components/form/form-array/form-array.component.html index d66387fb5..76c67f837 100644 --- a/web/projects/ui/src/app/common/form/form-array/form-array.component.html +++ b/web/projects/ui/src/app/routes/portal/components/form/form-array/form-array.component.html @@ -28,7 +28,7 @@ [open]="!!open.get(item)" (openChange)="open.set(item, $event)" > - {{ item.value | mustache : $any(spec.spec).displayAs }} + {{ item.value | mustache: $any(spec.spec).displayAs }} diff --git a/web/projects/ui/src/app/common/form/form-array/form-array.component.scss b/web/projects/ui/src/app/routes/portal/components/form/form-array/form-array.component.scss similarity index 100% rename from web/projects/ui/src/app/common/form/form-array/form-array.component.scss rename to web/projects/ui/src/app/routes/portal/components/form/form-array/form-array.component.scss diff --git a/web/projects/ui/src/app/common/form/form-array/form-array.component.ts b/web/projects/ui/src/app/routes/portal/components/form/form-array/form-array.component.ts similarity index 100% rename from web/projects/ui/src/app/common/form/form-array/form-array.component.ts rename to web/projects/ui/src/app/routes/portal/components/form/form-array/form-array.component.ts diff --git a/web/projects/ui/src/app/common/form/form-color/form-color.component.html b/web/projects/ui/src/app/routes/portal/components/form/form-color/form-color.component.html similarity index 100% rename from web/projects/ui/src/app/common/form/form-color/form-color.component.html rename to web/projects/ui/src/app/routes/portal/components/form/form-color/form-color.component.html diff --git a/web/projects/ui/src/app/common/form/form-color/form-color.component.scss b/web/projects/ui/src/app/routes/portal/components/form/form-color/form-color.component.scss similarity index 100% rename from web/projects/ui/src/app/common/form/form-color/form-color.component.scss rename to web/projects/ui/src/app/routes/portal/components/form/form-color/form-color.component.scss diff --git a/web/projects/ui/src/app/common/form/form-color/form-color.component.ts b/web/projects/ui/src/app/routes/portal/components/form/form-color/form-color.component.ts similarity index 100% rename from web/projects/ui/src/app/common/form/form-color/form-color.component.ts rename to web/projects/ui/src/app/routes/portal/components/form/form-color/form-color.component.ts diff --git a/web/projects/ui/src/app/common/form/form-control/form-control.component.html b/web/projects/ui/src/app/routes/portal/components/form/form-control/form-control.component.html similarity index 100% rename from web/projects/ui/src/app/common/form/form-control/form-control.component.html rename to web/projects/ui/src/app/routes/portal/components/form/form-control/form-control.component.html diff --git a/web/projects/ui/src/app/common/form/form-control/form-control.component.scss b/web/projects/ui/src/app/routes/portal/components/form/form-control/form-control.component.scss similarity index 100% rename from web/projects/ui/src/app/common/form/form-control/form-control.component.scss rename to web/projects/ui/src/app/routes/portal/components/form/form-control/form-control.component.scss diff --git a/web/projects/ui/src/app/common/form/form-control/form-control.component.ts b/web/projects/ui/src/app/routes/portal/components/form/form-control/form-control.component.ts similarity index 100% rename from web/projects/ui/src/app/common/form/form-control/form-control.component.ts rename to web/projects/ui/src/app/routes/portal/components/form/form-control/form-control.component.ts diff --git a/web/projects/ui/src/app/common/form/form-control/form-control.providers.ts b/web/projects/ui/src/app/routes/portal/components/form/form-control/form-control.providers.ts similarity index 100% rename from web/projects/ui/src/app/common/form/form-control/form-control.providers.ts rename to web/projects/ui/src/app/routes/portal/components/form/form-control/form-control.providers.ts diff --git a/web/projects/ui/src/app/common/form/form-datetime/form-datetime.component.html b/web/projects/ui/src/app/routes/portal/components/form/form-datetime/form-datetime.component.html similarity index 81% rename from web/projects/ui/src/app/common/form/form-datetime/form-datetime.component.html rename to web/projects/ui/src/app/routes/portal/components/form/form-datetime/form-datetime.component.html index 37387a338..05ffa69f3 100644 --- a/web/projects/ui/src/app/common/form/form-datetime/form-datetime.component.html +++ b/web/projects/ui/src/app/routes/portal/components/form/form-datetime/form-datetime.component.html @@ -18,8 +18,8 @@ [disabled]="!!spec.disabled" [readOnly]="readOnly" [pseudoInvalid]="invalid" - [min]="spec.min ? (spec.min | tuiMapper : getLimit)[0] : min" - [max]="spec.max ? (spec.max | tuiMapper : getLimit)[0] : max" + [min]="spec.min ? (spec.min | tuiMapper: getLimit)[0] : min" + [max]="spec.max ? (spec.max | tuiMapper: getLimit)[0] : max" [(ngModel)]="value" (focusedChange)="onFocus($event)" > @@ -32,8 +32,8 @@ [disabled]="!!spec.disabled" [readOnly]="readOnly" [pseudoInvalid]="invalid" - [min]="spec.min ? (spec.min | tuiMapper : getLimit) : min" - [max]="spec.max ? (spec.max | tuiMapper : getLimit) : max" + [min]="spec.min ? (spec.min | tuiMapper: getLimit) : min" + [max]="spec.max ? (spec.max | tuiMapper: getLimit) : max" [(ngModel)]="value" (focusedChange)="onFocus($event)" > diff --git a/web/projects/ui/src/app/common/form/form-datetime/form-datetime.component.ts b/web/projects/ui/src/app/routes/portal/components/form/form-datetime/form-datetime.component.ts similarity index 100% rename from web/projects/ui/src/app/common/form/form-datetime/form-datetime.component.ts rename to web/projects/ui/src/app/routes/portal/components/form/form-datetime/form-datetime.component.ts diff --git a/web/projects/ui/src/app/common/form/form-file/form-file.component.html b/web/projects/ui/src/app/routes/portal/components/form/form-file/form-file.component.html similarity index 100% rename from web/projects/ui/src/app/common/form/form-file/form-file.component.html rename to web/projects/ui/src/app/routes/portal/components/form/form-file/form-file.component.html diff --git a/web/projects/ui/src/app/common/form/form-file/form-file.component.scss b/web/projects/ui/src/app/routes/portal/components/form/form-file/form-file.component.scss similarity index 100% rename from web/projects/ui/src/app/common/form/form-file/form-file.component.scss rename to web/projects/ui/src/app/routes/portal/components/form/form-file/form-file.component.scss diff --git a/web/projects/ui/src/app/common/form/form-file/form-file.component.ts b/web/projects/ui/src/app/routes/portal/components/form/form-file/form-file.component.ts similarity index 100% rename from web/projects/ui/src/app/common/form/form-file/form-file.component.ts rename to web/projects/ui/src/app/routes/portal/components/form/form-file/form-file.component.ts diff --git a/web/projects/ui/src/app/common/form/form-group/form-group.component.html b/web/projects/ui/src/app/routes/portal/components/form/form-group/form-group.component.html similarity index 92% rename from web/projects/ui/src/app/common/form/form-group/form-group.component.html rename to web/projects/ui/src/app/routes/portal/components/form/form-group/form-group.component.html index 1c4f8301a..d3c769b98 100644 --- a/web/projects/ui/src/app/common/form/form-group/form-group.component.html +++ b/web/projects/ui/src/app/routes/portal/components/form/form-group/form-group.component.html @@ -1,5 +1,5 @@ diff --git a/web/projects/ui/src/app/apps/portal/components/logs/logs-download.directive.ts b/web/projects/ui/src/app/routes/portal/components/logs/logs-download.directive.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/components/logs/logs-download.directive.ts rename to web/projects/ui/src/app/routes/portal/components/logs/logs-download.directive.ts diff --git a/web/projects/ui/src/app/apps/portal/components/logs/logs-fetch.directive.ts b/web/projects/ui/src/app/routes/portal/components/logs/logs-fetch.directive.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/components/logs/logs-fetch.directive.ts rename to web/projects/ui/src/app/routes/portal/components/logs/logs-fetch.directive.ts diff --git a/web/projects/ui/src/app/apps/portal/components/logs/logs.component.html b/web/projects/ui/src/app/routes/portal/components/logs/logs.component.html similarity index 100% rename from web/projects/ui/src/app/apps/portal/components/logs/logs.component.html rename to web/projects/ui/src/app/routes/portal/components/logs/logs.component.html diff --git a/web/projects/ui/src/app/apps/portal/components/logs/logs.component.scss b/web/projects/ui/src/app/routes/portal/components/logs/logs.component.scss similarity index 100% rename from web/projects/ui/src/app/apps/portal/components/logs/logs.component.scss rename to web/projects/ui/src/app/routes/portal/components/logs/logs.component.scss diff --git a/web/projects/ui/src/app/apps/portal/components/logs/logs.component.ts b/web/projects/ui/src/app/routes/portal/components/logs/logs.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/components/logs/logs.component.ts rename to web/projects/ui/src/app/routes/portal/components/logs/logs.component.ts diff --git a/web/projects/ui/src/app/apps/portal/components/logs/logs.pipe.ts b/web/projects/ui/src/app/routes/portal/components/logs/logs.pipe.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/components/logs/logs.pipe.ts rename to web/projects/ui/src/app/routes/portal/components/logs/logs.pipe.ts diff --git a/web/projects/ui/src/app/apps/portal/components/tabs.component.ts b/web/projects/ui/src/app/routes/portal/components/tabs.component.ts similarity index 89% rename from web/projects/ui/src/app/apps/portal/components/tabs.component.ts rename to web/projects/ui/src/app/routes/portal/components/tabs.component.ts index 3238a4c94..42f97f70a 100644 --- a/web/projects/ui/src/app/apps/portal/components/tabs.component.ts +++ b/web/projects/ui/src/app/routes/portal/components/tabs.component.ts @@ -3,9 +3,9 @@ import { Component, inject } from '@angular/core' import { RouterLink, RouterLinkActive } from '@angular/router' import { TuiTabBarModule } from '@taiga-ui/addon-mobile' import { combineLatest, map, startWith } from 'rxjs' -import { SYSTEM_UTILITIES } from 'src/app/apps/portal/constants/system-utilities' -import { BadgeService } from 'src/app/apps/portal/services/badge.service' -import { NotificationService } from 'src/app/apps/portal/services/notification.service' +import { SYSTEM_UTILITIES } from 'src/app/utils/system-utilities' +import { BadgeService } from 'src/app/services/badge.service' +import { NotificationService } from 'src/app/services/notification.service' @Component({ standalone: true, diff --git a/web/projects/ui/src/app/apps/portal/modals/config-dep.component.ts b/web/projects/ui/src/app/routes/portal/modals/config-dep.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/modals/config-dep.component.ts rename to web/projects/ui/src/app/routes/portal/modals/config-dep.component.ts diff --git a/web/projects/ui/src/app/apps/portal/modals/config.component.ts b/web/projects/ui/src/app/routes/portal/modals/config.component.ts similarity index 95% rename from web/projects/ui/src/app/apps/portal/modals/config.component.ts rename to web/projects/ui/src/app/routes/portal/modals/config.component.ts index c13ac9eb7..caadd466d 100644 --- a/web/projects/ui/src/app/apps/portal/modals/config.component.ts +++ b/web/projects/ui/src/app/routes/portal/modals/config.component.ts @@ -20,24 +20,24 @@ import { POLYMORPHEUS_CONTEXT } from '@tinkoff/ng-polymorpheus' import { compare, Operation } from 'fast-json-patch' import { PatchDB } from 'patch-db-client' import { endWith, firstValueFrom, Subscription } from 'rxjs' -import { ConfigDepComponent } from 'src/app/apps/portal/modals/config-dep.component' +import { ConfigDepComponent } from 'src/app/routes/portal/modals/config-dep.component' import { ApiService } from 'src/app/services/api/embassy-api.service' import { DataModel, PackageDataEntry, } from 'src/app/services/patch-db/data-model' -import { hasCurrentDeps } from 'src/app/util/has-deps' +import { hasCurrentDeps } from 'src/app/utils/has-deps' import { getAllPackages, getManifest, getPackage, -} from 'src/app/util/get-package-data' +} from 'src/app/utils/get-package-data' import { Breakages } from 'src/app/services/api/api.types' -import { InvalidService } from 'src/app/common/form/invalid.service' +import { InvalidService } from 'src/app/routes/portal/components/form/invalid.service' import { ActionButton, FormComponent, -} from 'src/app/apps/portal/components/form.component' +} from 'src/app/routes/portal/components/form.component' import { DependentInfo } from 'src/app/types/dependent-info' import { ToManifestPipe } from '../pipes/to-manifest' @@ -118,7 +118,7 @@ export interface PackageConfigData { ], providers: [InvalidService], }) -export class ServiceConfigModal { +export class ConfigModal { @ViewChild(FormComponent) private readonly form?: FormComponent> diff --git a/web/projects/ui/src/app/apps/portal/modals/prompt.component.ts b/web/projects/ui/src/app/routes/portal/modals/prompt.component.ts similarity index 95% rename from web/projects/ui/src/app/apps/portal/modals/prompt.component.ts rename to web/projects/ui/src/app/routes/portal/modals/prompt.component.ts index b039048e5..e2a2765f5 100644 --- a/web/projects/ui/src/app/apps/portal/modals/prompt.component.ts +++ b/web/projects/ui/src/app/routes/portal/modals/prompt.component.ts @@ -71,7 +71,6 @@ import { } .masked { - font-family: text-security-disc; -webkit-text-security: disc; } `, @@ -86,7 +85,7 @@ import { ], changeDetection: ChangeDetectionStrategy.OnPush, }) -export class PromptComponent { +export class PromptModal { masked = this.options.useMask value = this.options.initialValue || '' @@ -110,7 +109,7 @@ export class PromptComponent { } } -export const PROMPT = new PolymorpheusComponent(PromptComponent) +export const PROMPT = new PolymorpheusComponent(PromptModal) export interface PromptOptions { message: string diff --git a/web/projects/ui/src/app/common/qr.component.ts b/web/projects/ui/src/app/routes/portal/modals/qr.component.ts similarity index 95% rename from web/projects/ui/src/app/common/qr.component.ts rename to web/projects/ui/src/app/routes/portal/modals/qr.component.ts index dee6cbb7e..7aa4bf0f0 100644 --- a/web/projects/ui/src/app/common/qr.component.ts +++ b/web/projects/ui/src/app/routes/portal/modals/qr.component.ts @@ -10,7 +10,7 @@ import { QrCodeModule } from 'ng-qrcode' changeDetection: ChangeDetectionStrategy.OnPush, imports: [QrCodeModule], }) -export class QRComponent { +export class QRModal { readonly context = inject>(POLYMORPHEUS_CONTEXT) } diff --git a/web/projects/ui/src/app/apps/portal/pipes/to-manifest.ts b/web/projects/ui/src/app/routes/portal/pipes/to-manifest.ts similarity index 58% rename from web/projects/ui/src/app/apps/portal/pipes/to-manifest.ts rename to web/projects/ui/src/app/routes/portal/pipes/to-manifest.ts index 0376f882f..140641a35 100644 --- a/web/projects/ui/src/app/apps/portal/pipes/to-manifest.ts +++ b/web/projects/ui/src/app/routes/portal/pipes/to-manifest.ts @@ -1,14 +1,13 @@ import { Pipe, PipeTransform } from '@angular/core' import { PackageDataEntry } from 'src/app/services/patch-db/data-model' -import { getManifest } from 'src/app/util/get-package-data' -import { Manifest } from '../../../../../../../../core/startos/bindings/Manifest' +import { getManifest } from 'src/app/utils/get-package-data' @Pipe({ name: 'toManifest', standalone: true, }) export class ToManifestPipe implements PipeTransform { - transform(pkg: PackageDataEntry): Manifest { + transform(pkg: PackageDataEntry) { return getManifest(pkg) } } diff --git a/web/projects/ui/src/app/apps/portal/portal.component.ts b/web/projects/ui/src/app/routes/portal/portal.component.ts similarity index 66% rename from web/projects/ui/src/app/apps/portal/portal.component.ts rename to web/projects/ui/src/app/routes/portal/portal.component.ts index aa79ed8b7..868fc7823 100644 --- a/web/projects/ui/src/app/apps/portal/portal.component.ts +++ b/web/projects/ui/src/app/routes/portal/portal.component.ts @@ -7,47 +7,53 @@ import { Router, RouterOutlet, } from '@angular/router' -import { tuiDropdownOptionsProvider } from '@taiga-ui/core' +import { TuiScrollbarModule } from '@taiga-ui/core' import { PatchDB } from 'patch-db-client' import { filter, map } from 'rxjs' -import { TabsComponent } from 'src/app/apps/portal/components/tabs.component' +import { TabsComponent } from 'src/app/routes/portal/components/tabs.component' +import { BreadcrumbsService } from 'src/app/services/breadcrumbs.service' import { DataModel } from 'src/app/services/patch-db/data-model' import { HeaderComponent } from './components/header/header.component' -import { BreadcrumbsService } from './services/breadcrumbs.service' @Component({ standalone: true, template: `
{{ name$ | async }}
-
+
+ + + +
`, styles: [ ` :host { + height: 100%; + display: flex; + flex-direction: column; // TODO: Theme - background: url(/assets/img/background_dark.jpeg); - background-size: cover; + background: url(/assets/img/background_dark.jpeg) fixed center/cover; } main { flex: 1; overflow: hidden; + margin-bottom: 0.375rem; } `, ], changeDetection: ChangeDetectionStrategy.OnPush, - imports: [CommonModule, RouterOutlet, HeaderComponent, TabsComponent], - providers: [ - // TODO: Move to global - tuiDropdownOptionsProvider({ - appearance: 'start-os', - }), + imports: [ + CommonModule, + RouterOutlet, + HeaderComponent, + TabsComponent, + TuiScrollbarModule, ], }) export class PortalComponent { private readonly breadcrumbs = inject(BreadcrumbsService) - // TODO: Refactor to (activate) on when routing structure becomes flat private readonly _ = inject(Router) .events.pipe( filter((event): event is NavigationEnd => event instanceof NavigationEnd), diff --git a/web/projects/ui/src/app/apps/portal/portal.routes.ts b/web/projects/ui/src/app/routes/portal/portal.routes.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/portal.routes.ts rename to web/projects/ui/src/app/routes/portal/portal.routes.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/dashboard/controls.component.ts b/web/projects/ui/src/app/routes/portal/routes/dashboard/controls.component.ts similarity index 90% rename from web/projects/ui/src/app/apps/portal/routes/dashboard/controls.component.ts rename to web/projects/ui/src/app/routes/portal/routes/dashboard/controls.component.ts index 063e706a0..026c33d88 100644 --- a/web/projects/ui/src/app/apps/portal/routes/dashboard/controls.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/dashboard/controls.component.ts @@ -12,11 +12,11 @@ import { tuiButtonOptionsProvider, } from '@taiga-ui/experimental' import { map } from 'rxjs' -import { UILaunchComponent } from 'src/app/apps/portal/routes/dashboard/ui.component' -import { ActionsService } from 'src/app/apps/portal/services/actions.service' +import { UILaunchComponent } from 'src/app/routes/portal/routes/dashboard/ui.component' +import { ActionsService } from 'src/app/services/actions.service' import { DepErrorService } from 'src/app/services/dep-error.service' import { PackageDataEntry } from 'src/app/services/patch-db/data-model' -import { getManifest } from 'src/app/util/get-package-data' +import { getManifest } from 'src/app/utils/get-package-data' @Component({ standalone: true, diff --git a/web/projects/ui/src/app/apps/portal/routes/dashboard/dashboard.component.ts b/web/projects/ui/src/app/routes/portal/routes/dashboard/dashboard.component.ts similarity index 95% rename from web/projects/ui/src/app/apps/portal/routes/dashboard/dashboard.component.ts rename to web/projects/ui/src/app/routes/portal/routes/dashboard/dashboard.component.ts index 73aed8a91..2b63042c5 100644 --- a/web/projects/ui/src/app/apps/portal/routes/dashboard/dashboard.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/dashboard/dashboard.component.ts @@ -35,12 +35,14 @@ import { UtilitiesComponent } from './utilities.component' `, styles: ` :host { + height: calc(100vh - 6rem); position: relative; max-width: 64rem; display: grid; + grid-template-rows: auto 1fr; grid-template-columns: 1fr 1fr 1fr; gap: 1rem; - margin: 2rem auto; + margin: 2rem auto 0; border: 0.375rem solid transparent; } @@ -76,7 +78,7 @@ import { UtilitiesComponent } from './utilities.component' } :host-context(tui-root._mobile) { - height: 100%; + height: calc(100vh - 7rem); display: block; margin: 0; border-top: 0; diff --git a/web/projects/ui/src/app/apps/portal/routes/dashboard/metrics.component.ts b/web/projects/ui/src/app/routes/portal/routes/dashboard/metrics.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/dashboard/metrics.component.ts rename to web/projects/ui/src/app/routes/portal/routes/dashboard/metrics.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/dashboard/service.component.ts b/web/projects/ui/src/app/routes/portal/routes/dashboard/service.component.ts similarity index 90% rename from web/projects/ui/src/app/apps/portal/routes/dashboard/service.component.ts rename to web/projects/ui/src/app/routes/portal/routes/dashboard/service.component.ts index e6be029d8..eff28f227 100644 --- a/web/projects/ui/src/app/apps/portal/routes/dashboard/service.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/dashboard/service.component.ts @@ -7,12 +7,12 @@ import { } from '@angular/core' import { RouterLink } from '@angular/router' import { tuiPure } from '@taiga-ui/cdk' -import { ControlsComponent } from 'src/app/apps/portal/routes/dashboard/controls.component' -import { StatusComponent } from 'src/app/apps/portal/routes/dashboard/status.component' +import { ControlsComponent } from 'src/app/routes/portal/routes/dashboard/controls.component' +import { StatusComponent } from 'src/app/routes/portal/routes/dashboard/status.component' import { ConnectionService } from 'src/app/services/connection.service' import { PkgDependencyErrors } from 'src/app/services/dep-error.service' import { PackageDataEntry } from 'src/app/services/patch-db/data-model' -import { getManifest } from 'src/app/util/get-package-data' +import { getManifest } from 'src/app/utils/get-package-data' @Component({ standalone: true, diff --git a/web/projects/ui/src/app/apps/portal/routes/dashboard/services.component.ts b/web/projects/ui/src/app/routes/portal/routes/dashboard/services.component.ts similarity index 54% rename from web/projects/ui/src/app/apps/portal/routes/dashboard/services.component.ts rename to web/projects/ui/src/app/routes/portal/routes/dashboard/services.component.ts index 03fe26da6..8925a0a86 100644 --- a/web/projects/ui/src/app/apps/portal/routes/dashboard/services.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/dashboard/services.component.ts @@ -1,46 +1,52 @@ import { AsyncPipe } from '@angular/common' import { ChangeDetectionStrategy, Component, inject } from '@angular/core' -import { ServiceComponent } from 'src/app/apps/portal/routes/dashboard/service.component' -import { ServicesService } from 'src/app/apps/portal/services/services.service' +import { TuiScrollbarModule } from '@taiga-ui/core' +import { ToManifestPipe } from 'src/app/routes/portal/pipes/to-manifest' +import { ServiceComponent } from 'src/app/routes/portal/routes/dashboard/service.component' +import { ServicesService } from 'src/app/routes/portal/routes/dashboard/services.service' import { DepErrorService } from 'src/app/services/dep-error.service' -import { ToManifestPipe } from '../../pipes/to-manifest' @Component({ standalone: true, selector: 'app-services', template: ` - - - - - - - - - - - - @if (errors$ | async; as errors) { - @for (pkg of services$ | async; track $index) { - - } @empty { - - - + +
NameVersionStatusControls
No services installed
+ + + + + + + + + + + @if (errors$ | async; as errors) { + @for (pkg of services$ | async; track $index) { + + } @empty { + + + + } } - } - -
NameVersionStatus + Controls +
No services installed
+ + + `, styles: ` :host { grid-column: 1/4; margin-top: -2rem; + overflow: hidden; --clip-path: polygon( 0 2rem, @@ -94,7 +100,7 @@ import { ToManifestPipe } from '../../pipes/to-manifest' } `, changeDetection: ChangeDetectionStrategy.OnPush, - imports: [ServiceComponent, AsyncPipe, ToManifestPipe], + imports: [ServiceComponent, AsyncPipe, ToManifestPipe, TuiScrollbarModule], }) export class ServicesComponent { readonly services$ = inject(ServicesService) diff --git a/web/projects/ui/src/app/apps/portal/services/services.service.ts b/web/projects/ui/src/app/routes/portal/routes/dashboard/services.service.ts similarity index 92% rename from web/projects/ui/src/app/apps/portal/services/services.service.ts rename to web/projects/ui/src/app/routes/portal/routes/dashboard/services.service.ts index 69083a8e8..6a50eacd4 100644 --- a/web/projects/ui/src/app/apps/portal/services/services.service.ts +++ b/web/projects/ui/src/app/routes/portal/routes/dashboard/services.service.ts @@ -5,7 +5,7 @@ import { DataModel, PackageDataEntry, } from 'src/app/services/patch-db/data-model' -import { getManifest } from 'src/app/util/get-package-data' +import { getManifest } from 'src/app/utils/get-package-data' @Injectable({ providedIn: 'root', diff --git a/web/projects/ui/src/app/apps/portal/routes/dashboard/status.component.ts b/web/projects/ui/src/app/routes/portal/routes/dashboard/status.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/dashboard/status.component.ts rename to web/projects/ui/src/app/routes/portal/routes/dashboard/status.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/dashboard/ui.component.ts b/web/projects/ui/src/app/routes/portal/routes/dashboard/ui.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/dashboard/ui.component.ts rename to web/projects/ui/src/app/routes/portal/routes/dashboard/ui.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/dashboard/utilities.component.ts b/web/projects/ui/src/app/routes/portal/routes/dashboard/utilities.component.ts similarity index 94% rename from web/projects/ui/src/app/apps/portal/routes/dashboard/utilities.component.ts rename to web/projects/ui/src/app/routes/portal/routes/dashboard/utilities.component.ts index 00d4483a0..1e3c1871e 100644 --- a/web/projects/ui/src/app/apps/portal/routes/dashboard/utilities.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/dashboard/utilities.component.ts @@ -5,8 +5,8 @@ import { TuiBadgeNotificationModule, TuiIconModule, } from '@taiga-ui/experimental' -import { SYSTEM_UTILITIES } from 'src/app/apps/portal/constants/system-utilities' -import { BadgeService } from 'src/app/apps/portal/services/badge.service' +import { SYSTEM_UTILITIES } from 'src/app/utils/system-utilities' +import { BadgeService } from 'src/app/services/badge.service' @Component({ standalone: true, @@ -29,6 +29,7 @@ import { BadgeService } from 'src/app/apps/portal/services/badge.service' @import '@taiga-ui/core/styles/taiga-ui-local'; :host { + height: fit-content; --clip-path: polygon( 0 2rem, 1.25rem 0, diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/action-success.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/action-success.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/components/action-success.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/action-success.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/action.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/action.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/components/action.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/action.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/actions.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/actions.component.ts similarity index 89% rename from web/projects/ui/src/app/apps/portal/routes/service/components/actions.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/actions.component.ts index 7c3238229..14889dcad 100644 --- a/web/projects/ui/src/app/apps/portal/routes/service/components/actions.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/service/components/actions.component.ts @@ -6,10 +6,10 @@ import { } from '@angular/core' import { tuiPure } from '@taiga-ui/cdk' import { TuiButtonModule } from '@taiga-ui/experimental' -import { DependencyInfo } from 'src/app/apps/portal/routes/service/types/dependency-info' -import { ActionsService } from 'src/app/apps/portal/services/actions.service' +import { DependencyInfo } from 'src/app/routes/portal/routes/service/types/dependency-info' +import { ActionsService } from 'src/app/services/actions.service' import { PackageDataEntry } from 'src/app/services/patch-db/data-model' -import { getManifest } from 'src/app/util/get-package-data' +import { getManifest } from 'src/app/utils/get-package-data' import { Manifest } from '../../../../../../../../../../core/startos/bindings/Manifest' @Component({ diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/additional-item.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/additional-item.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/components/additional-item.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/additional-item.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/additional.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/additional.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/components/additional.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/additional.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/dependencies.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/dependencies.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/components/dependencies.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/dependencies.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/dependency.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/dependency.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/components/dependency.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/dependency.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/health-check.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/health-check.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/components/health-check.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/health-check.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/health-checks.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/health-checks.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/components/health-checks.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/health-checks.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/interface-list-item.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/interface-list-item.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/components/interface-list-item.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/interface-list-item.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/interface-list.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/interface-list.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/components/interface-list.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/interface-list.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/menu-item.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/menu-item.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/components/menu-item.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/menu-item.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/menu.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/menu.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/components/menu.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/menu.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/progress.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/progress.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/components/progress.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/progress.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/property.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/property.component.ts similarity index 96% rename from web/projects/ui/src/app/apps/portal/routes/service/components/property.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/property.component.ts index 67cde13e2..87fe5aa3e 100644 --- a/web/projects/ui/src/app/apps/portal/routes/service/components/property.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/service/components/property.component.ts @@ -5,7 +5,7 @@ import { Input, } from '@angular/core' import { CopyService } from '@start9labs/shared' -import { mask } from 'src/app/util/mask' +import { mask } from 'src/app/utils/mask' import { TuiLabelModule } from '@taiga-ui/core' import { TuiButtonModule } from '@taiga-ui/experimental' diff --git a/web/projects/ui/src/app/apps/portal/routes/service/components/status.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/components/status.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/components/status.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/components/status.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/modals/properties.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/modals/properties.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/modals/properties.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/modals/properties.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/pipes/group-actions.pipe.ts b/web/projects/ui/src/app/routes/portal/routes/service/pipes/group-actions.pipe.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/pipes/group-actions.pipe.ts rename to web/projects/ui/src/app/routes/portal/routes/service/pipes/group-actions.pipe.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/pipes/install-progress.pipe.ts b/web/projects/ui/src/app/routes/portal/routes/service/pipes/install-progress.pipe.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/pipes/install-progress.pipe.ts rename to web/projects/ui/src/app/routes/portal/routes/service/pipes/install-progress.pipe.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/pipes/interface-info.pipe.ts b/web/projects/ui/src/app/routes/portal/routes/service/pipes/interface-info.pipe.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/pipes/interface-info.pipe.ts rename to web/projects/ui/src/app/routes/portal/routes/service/pipes/interface-info.pipe.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/pipes/to-additional.pipe.ts b/web/projects/ui/src/app/routes/portal/routes/service/pipes/to-additional.pipe.ts similarity index 97% rename from web/projects/ui/src/app/apps/portal/routes/service/pipes/to-additional.pipe.ts rename to web/projects/ui/src/app/routes/portal/routes/service/pipes/to-additional.pipe.ts index cd525ad95..06689bcd2 100644 --- a/web/projects/ui/src/app/apps/portal/routes/service/pipes/to-additional.pipe.ts +++ b/web/projects/ui/src/app/routes/portal/routes/service/pipes/to-additional.pipe.ts @@ -5,7 +5,7 @@ import { CopyService, MarkdownComponent } from '@start9labs/shared' import { from } from 'rxjs' import { PackageDataEntry } from 'src/app/services/patch-db/data-model' import { ApiService } from 'src/app/services/api/embassy-api.service' -import { getManifest } from 'src/app/util/get-package-data' +import { getManifest } from 'src/app/utils/get-package-data' import { Manifest } from '../../../../../../../../../../core/startos/bindings/Manifest' export const FALLBACK_URL = 'Not provided' diff --git a/web/projects/ui/src/app/apps/portal/routes/service/pipes/to-menu.pipe.ts b/web/projects/ui/src/app/routes/portal/routes/service/pipes/to-menu.pipe.ts similarity index 95% rename from web/projects/ui/src/app/apps/portal/routes/service/pipes/to-menu.pipe.ts rename to web/projects/ui/src/app/routes/portal/routes/service/pipes/to-menu.pipe.ts index c08be87a6..7df1aa01d 100644 --- a/web/projects/ui/src/app/apps/portal/routes/service/pipes/to-menu.pipe.ts +++ b/web/projects/ui/src/app/routes/portal/routes/service/pipes/to-menu.pipe.ts @@ -6,14 +6,14 @@ import { PolymorpheusComponent } from '@tinkoff/ng-polymorpheus' import { from } from 'rxjs' import { PackageConfigData, - ServiceConfigModal, -} from 'src/app/apps/portal/modals/config.component' + ConfigModal, +} from 'src/app/routes/portal/modals/config.component' import { ApiService } from 'src/app/services/api/embassy-api.service' import { FormDialogService } from 'src/app/services/form-dialog.service' import { PackageDataEntry } from 'src/app/services/patch-db/data-model' import { ProxyService } from 'src/app/services/proxy.service' import { ServicePropertiesModal } from '../modals/properties.component' -import { getManifest } from 'src/app/util/get-package-data' +import { getManifest } from 'src/app/utils/get-package-data' import { Manifest } from '../../../../../../../../../../core/startos/bindings/Manifest' export interface ServiceMenu { @@ -122,7 +122,7 @@ export class ToMenuPipe implements PipeTransform { } private openConfig({ title, id }: Manifest) { - this.formDialog.open(ServiceConfigModal, { + this.formDialog.open(ConfigModal, { label: `${title} configuration`, data: { pkgId: id }, }) diff --git a/web/projects/ui/src/app/apps/portal/routes/service/routes/actions.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/routes/actions.component.ts similarity index 95% rename from web/projects/ui/src/app/apps/portal/routes/service/routes/actions.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/routes/actions.component.ts index 9b8d66365..4e1256203 100644 --- a/web/projects/ui/src/app/apps/portal/routes/service/routes/actions.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/service/routes/actions.component.ts @@ -13,20 +13,20 @@ import { TUI_PROMPT } from '@taiga-ui/kit' import { PolymorpheusComponent } from '@tinkoff/ng-polymorpheus' import { PatchDB } from 'patch-db-client' import { filter, switchMap, timer } from 'rxjs' -import { FormComponent } from 'src/app/apps/portal/components/form.component' +import { FormComponent } from 'src/app/routes/portal/components/form.component' import { ApiService } from 'src/app/services/api/embassy-api.service' import { DataModel, PackageDataEntry, } from 'src/app/services/patch-db/data-model' -import { hasCurrentDeps } from 'src/app/util/has-deps' +import { hasCurrentDeps } from 'src/app/utils/has-deps' import { FormDialogService } from 'src/app/services/form-dialog.service' import { ServiceActionComponent } from '../components/action.component' import { ServiceActionSuccessComponent } from '../components/action-success.component' import { GroupActionsPipe } from '../pipes/group-actions.pipe' -import { ToManifestPipe } from 'src/app/apps/portal/pipes/to-manifest' +import { ToManifestPipe } from 'src/app/routes/portal/pipes/to-manifest' import { T } from '@start9labs/start-sdk' -import { getAllPackages, getManifest } from 'src/app/util/get-package-data' +import { getAllPackages, getManifest } from 'src/app/utils/get-package-data' @Component({ template: ` diff --git a/web/projects/ui/src/app/apps/portal/routes/service/routes/interface.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/routes/interface.component.ts similarity index 92% rename from web/projects/ui/src/app/apps/portal/routes/service/routes/interface.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/routes/interface.component.ts index 57b5228dc..48d0a8f05 100644 --- a/web/projects/ui/src/app/apps/portal/routes/service/routes/interface.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/service/routes/interface.component.ts @@ -4,7 +4,7 @@ import { ActivatedRoute } from '@angular/router' import { getPkgId } from '@start9labs/shared' import { PatchDB } from 'patch-db-client' import { map } from 'rxjs' -import { InterfaceComponent } from 'src/app/apps/portal/components/interfaces/interface.component' +import { InterfaceComponent } from 'src/app/routes/portal/components/interfaces/interface.component' import { DataModel } from 'src/app/services/patch-db/data-model' import { getAddresses } from '../../../components/interfaces/interface.utils' diff --git a/web/projects/ui/src/app/apps/portal/routes/service/routes/logs.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/routes/logs.component.ts similarity index 91% rename from web/projects/ui/src/app/apps/portal/routes/service/routes/logs.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/routes/logs.component.ts index 719eab01a..d542fcac5 100644 --- a/web/projects/ui/src/app/apps/portal/routes/service/routes/logs.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/service/routes/logs.component.ts @@ -3,7 +3,7 @@ import { ActivatedRoute } from '@angular/router' import { getPkgId } from '@start9labs/shared' import { ApiService } from 'src/app/services/api/embassy-api.service' import { RR } from 'src/app/services/api/api.types' -import { LogsComponent } from 'src/app/apps/portal/components/logs/logs.component' +import { LogsComponent } from 'src/app/routes/portal/components/logs/logs.component' @Component({ template: '', diff --git a/web/projects/ui/src/app/apps/portal/routes/service/routes/outlet.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/routes/outlet.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/routes/outlet.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/routes/outlet.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/routes/service.component.ts b/web/projects/ui/src/app/routes/portal/routes/service/routes/service.component.ts similarity index 96% rename from web/projects/ui/src/app/apps/portal/routes/service/routes/service.component.ts rename to web/projects/ui/src/app/routes/portal/routes/service/routes/service.component.ts index f0eefb616..a1e4e7001 100644 --- a/web/projects/ui/src/app/apps/portal/routes/service/routes/service.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/service/routes/service.component.ts @@ -31,11 +31,11 @@ import { ServiceProgressComponent } from '../components/progress.component' import { ServiceStatusComponent } from '../components/status.component' import { PackageConfigData, - ServiceConfigModal, -} from 'src/app/apps/portal/modals/config.component' + ConfigModal, +} from 'src/app/routes/portal/modals/config.component' import { DependencyInfo } from '../types/dependency-info' -import { getManifest } from 'src/app/util/get-package-data' -import { InstallingProgressPipe } from 'src/app/apps/portal/routes/service/pipes/install-progress.pipe' +import { getManifest } from 'src/app/utils/get-package-data' +import { InstallingProgressPipe } from 'src/app/routes/portal/routes/service/pipes/install-progress.pipe' import { Manifest } from '../../../../../../../../../../core/startos/bindings/Manifest' import { HealthCheckResult } from '../../../../../../../../../../core/startos/bindings/HealthCheckResult' import { MainStatus } from '../../../../../../../../../../core/startos/bindings/MainStatus' @@ -250,7 +250,7 @@ export class ServiceRoute { case 'update': return this.installDep(pkg, pkgManifest, depId) case 'configure': - return this.formDialog.open(ServiceConfigModal, { + return this.formDialog.open(ConfigModal, { label: `${pkg.currentDependencies[depId].title} config`, data: { pkgId: depId, diff --git a/web/projects/ui/src/app/apps/portal/routes/service/service.module.ts b/web/projects/ui/src/app/routes/portal/routes/service/service.module.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/service.module.ts rename to web/projects/ui/src/app/routes/portal/routes/service/service.module.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/service/types/dependency-info.ts b/web/projects/ui/src/app/routes/portal/routes/service/types/dependency-info.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/service/types/dependency-info.ts rename to web/projects/ui/src/app/routes/portal/routes/service/types/dependency-info.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/backups.component.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/backups.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/backups.component.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/backups.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/components/physical.component.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/components/physical.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/components/physical.component.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/components/physical.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/components/status.component.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/components/status.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/components/status.component.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/components/status.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/components/targets.component.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/components/targets.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/components/targets.component.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/components/targets.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/components/upcoming.component.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/components/upcoming.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/components/upcoming.component.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/components/upcoming.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/modals/backup.component.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/modals/backup.component.ts similarity index 98% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/modals/backup.component.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/modals/backup.component.ts index 11470bd63..feea40f97 100644 --- a/web/projects/ui/src/app/apps/portal/routes/system/backups/modals/backup.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/system/backups/modals/backup.component.ts @@ -17,7 +17,7 @@ import { import { PatchDB } from 'patch-db-client' import { firstValueFrom, map } from 'rxjs' import { DataModel } from 'src/app/services/patch-db/data-model' -import { getManifest } from 'src/app/util/get-package-data' +import { getManifest } from 'src/app/utils/get-package-data' interface Package { id: string diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/modals/edit.component.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/modals/edit.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/modals/edit.component.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/modals/edit.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/modals/history.component.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/modals/history.component.ts similarity index 98% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/modals/history.component.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/modals/history.component.ts index 2506249c1..1a44c2322 100644 --- a/web/projects/ui/src/app/apps/portal/routes/system/backups/modals/history.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/system/backups/modals/history.component.ts @@ -14,7 +14,7 @@ import { TuiCheckboxModule } from '@taiga-ui/kit' import { BehaviorSubject } from 'rxjs' import { BackupRun } from 'src/app/services/api/api.types' import { ApiService } from 'src/app/services/api/embassy-api.service' -import { REPORT } from 'src/app/apps/portal/modals/report.component' +import { REPORT } from 'src/app/components/report.component' import { DurationPipe } from '../pipes/duration.pipe' import { HasErrorPipe } from '../pipes/has-error.pipe' import { GetBackupIconPipe } from '../pipes/get-backup-icon.pipe' diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/modals/jobs.component.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/modals/jobs.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/modals/jobs.component.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/modals/jobs.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/modals/recover.component.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/modals/recover.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/modals/recover.component.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/modals/recover.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/modals/target.component.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/modals/target.component.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/modals/target.component.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/modals/target.component.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/modals/targets.component.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/modals/targets.component.ts similarity index 97% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/modals/targets.component.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/modals/targets.component.ts index 21278dfc4..0c7aa954d 100644 --- a/web/projects/ui/src/app/apps/portal/routes/system/backups/modals/targets.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/system/backups/modals/targets.component.ts @@ -6,8 +6,8 @@ import { TuiNotificationModule } from '@taiga-ui/core' import { TuiButtonModule, TuiFadeModule } from '@taiga-ui/experimental' import { PolymorpheusComponent } from '@tinkoff/ng-polymorpheus' import { BehaviorSubject } from 'rxjs' -import { FormComponent } from 'src/app/apps/portal/components/form.component' -import { configBuilderToSpec } from 'src/app/util/configBuilderToSpec' +import { FormComponent } from 'src/app/routes/portal/components/form.component' +import { configBuilderToSpec } from 'src/app/utils/configBuilderToSpec' import { cifsSpec, diskBackupTargetSpec, diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/pipes/duration.pipe.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/pipes/duration.pipe.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/pipes/duration.pipe.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/pipes/duration.pipe.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/pipes/get-backup-icon.pipe.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/pipes/get-backup-icon.pipe.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/pipes/get-backup-icon.pipe.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/pipes/get-backup-icon.pipe.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/pipes/get-display-info.pipe.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/pipes/get-display-info.pipe.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/pipes/get-display-info.pipe.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/pipes/get-display-info.pipe.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/pipes/has-error.pipe.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/pipes/has-error.pipe.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/pipes/has-error.pipe.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/pipes/has-error.pipe.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/pipes/to-human-cron.pipe.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/pipes/to-human-cron.pipe.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/pipes/to-human-cron.pipe.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/pipes/to-human-cron.pipe.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/pipes/to-options.pipe.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/pipes/to-options.pipe.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/pipes/to-options.pipe.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/pipes/to-options.pipe.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/services/create.service.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/services/create.service.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/services/create.service.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/services/create.service.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/services/restore.service.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/services/restore.service.ts similarity index 98% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/services/restore.service.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/services/restore.service.ts index 96f907199..6574737bd 100644 --- a/web/projects/ui/src/app/apps/portal/routes/system/backups/services/restore.service.ts +++ b/web/projects/ui/src/app/routes/portal/routes/system/backups/services/restore.service.ts @@ -17,7 +17,7 @@ import { import { PROMPT, PromptOptions, -} from 'src/app/apps/portal/modals/prompt.component' +} from 'src/app/routes/portal/modals/prompt.component' import { ApiService } from 'src/app/services/api/embassy-api.service' import { BackupTarget } from 'src/app/services/api/api.types' import { TARGET, TARGET_RESTORE } from '../modals/target.component' diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/types/backup-config.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/types/backup-config.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/types/backup-config.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/types/backup-config.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/types/backup-type.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/types/backup-type.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/types/backup-type.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/types/backup-type.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/types/display-info.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/types/display-info.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/types/display-info.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/types/display-info.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/types/recover-data.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/types/recover-data.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/types/recover-data.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/types/recover-data.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/types/recover-option.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/types/recover-option.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/types/recover-option.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/types/recover-option.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/types/target.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/types/target.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/types/target.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/types/target.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/backups/utils/job-builder.ts b/web/projects/ui/src/app/routes/portal/routes/system/backups/utils/job-builder.ts similarity index 100% rename from web/projects/ui/src/app/apps/portal/routes/system/backups/utils/job-builder.ts rename to web/projects/ui/src/app/routes/portal/routes/system/backups/utils/job-builder.ts diff --git a/web/projects/ui/src/app/apps/portal/routes/system/logs/logs.component.ts b/web/projects/ui/src/app/routes/portal/routes/system/logs/logs.component.ts similarity index 89% rename from web/projects/ui/src/app/apps/portal/routes/system/logs/logs.component.ts rename to web/projects/ui/src/app/routes/portal/routes/system/logs/logs.component.ts index a7e75f560..c133c5187 100644 --- a/web/projects/ui/src/app/apps/portal/routes/system/logs/logs.component.ts +++ b/web/projects/ui/src/app/routes/portal/routes/system/logs/logs.component.ts @@ -8,7 +8,6 @@ import { LogsComponent } from '../../../components/logs/logs.component' @Component({ template: ` -