From 298aa8cd8f73fa50313ec685e2326c20c3fc1f84 Mon Sep 17 00:00:00 2001 From: Alex Lee <3076438032@qq.com> Date: Sun, 25 Oct 2026 14:22:00 +0800 Subject: [PATCH] refactor(database): unify KubeBlocks 0.8 and 0.9 workspaces --- main/.dockerignore => .dockerignore | 7 + .github/workflows/build-version.yml | 20 +- .github/workflows/ci.yml | 19 +- main/.gitignore => .gitignore | 3 +- main/.npmrc => .npmrc | 0 main/.nvmrc => .nvmrc | 0 main/.prettierignore => .prettierignore | 0 main/.prettierrc.js => .prettierrc.js | 0 main/Dockerfile => Dockerfile | 7 +- release-v5.1/Makefile => Makefile | 13 +- README.md | 109 +- {main/database => database}/.dockerignore | 0 database/.env.template | 5 + {main/database => database}/.eslintrc.json | 0 {main/database => database}/.gitignore | 1 + {main/database => database}/.prettierignore | 0 {main/database => database}/.prettierrc.js | 0 .../.vscode/settings.json | 0 {main/database => database}/Makefile | 0 {main/database => database}/README.md | 0 .../__tests__/components/.gitkeep | 0 .../__tests__/unit/.gitkeep | 0 .../unit/kb08}/parameterConfig.test.ts | 10 +- .../unit/kb08}/reconfigureHistory.test.ts | 4 +- .../__tests__/unit/kb08}/vlogsTime.test.ts | 4 +- .../data/config.example.yaml | 3 + .../data/config.kb08.example.yaml | 3 + {main/database => database}/deploy/Kubefile | 0 .../charts/database-frontend/Chart.yaml | 0 .../database-frontend-values.yaml | 4 + .../database-frontend/templates/_helpers.tpl | 0 .../database-frontend/templates/app.yaml | 0 .../templates/configmap.yaml | 11 + .../templates/deployment.yaml | 0 .../database-frontend/templates/ingress.yaml | 0 .../database-frontend/templates/rbac.yaml | 0 .../database-frontend/templates/service.yaml | 0 .../charts/database-frontend/values.yaml | 4 + .../deploy/database-frontend-entrypoint.sh | 7 + .../deploy/scripts/update-backup-label.sh | 0 {main/database => database}/global.d.ts | 3 + .../next-i18next.config.js | 0 .../database => database}/next.config.js | 10 +- {main/database => database}/package.json | 18 +- .../database => database}/public/favicon.ico | Bin .../public/guide-image.png | Bin .../public/images/apecloud-mysql.svg | 0 .../public/images/clickhouse.svg | 0 .../public/images/kafka.svg | 0 .../public/images/milvus.svg | 0 .../public/images/mongodb.svg | 0 .../public/images/mysql.svg | 0 .../public/images/polardbx.svg | 0 .../public/images/postgresql.svg | 0 .../public/images/pulsar.svg | 0 .../public/images/qdrant.svg | 0 .../public/images/redis.svg | 0 .../public/images/weaviate.svg | 0 .../public/locales-kb08}/en/common.json | 0 .../public/locales-kb08}/zh/common.json | 0 .../public/locales/en/common.json | 0 .../public/locales/zh/common.json | 0 {main/database => database}/public/logo.svg | 0 .../public/redirect.html | 0 {main/database => database}/src/api/backup.ts | 4 +- {main/database => database}/src/api/db.ts | 6 +- .../database => database}/src/api/migrate.ts | 0 .../database => database}/src/api/platform.ts | 6 +- {main/database => database}/src/api/tools.ts | 0 .../src/components/BaseTable/SwitchPage.tsx | 0 .../src/components/BaseTable/baseTable.tsx | 0 .../src/components/BaseTable/customMenu.tsx | 0 .../src/components/ButtonGroup/index.tsx | 0 .../src/components/CodeBlock/index.tsx | 0 .../src/components/DBStatusTag/index.tsx | 0 .../src/components/DataPicker/index.tsx | 2 +- .../src/components/ErrorLog/LogCounts.tsx | 0 .../src/components/ErrorLog/LogFilter.tsx | 2 +- .../src/components/ErrorLog/LogTable.tsx | 0 .../src/components/ErrorModal/index.tsx | 0 .../src/components/FileSelect/index.tsx | 2 +- .../src/components/FormControl/index.tsx | 0 .../src/components/Icon/icons/add.svg | 0 .../src/components/Icon/icons/analyze.svg | 0 .../src/components/Icon/icons/arrowDown.svg | 0 .../src/components/Icon/icons/arrowLeft.svg | 0 .../src/components/Icon/icons/arrowUp.svg | 0 .../src/components/Icon/icons/backup.svg | 0 .../components/Icon/icons/backupSettings.svg | 0 .../src/components/Icon/icons/book.svg | 0 .../src/components/Icon/icons/calendar.svg | 0 .../src/components/Icon/icons/change.svg | 0 .../components/Icon/icons/chevron-down.svg | 0 .../src/components/Icon/icons/config.svg | 0 .../src/components/Icon/icons/configmap.svg | 0 .../src/components/Icon/icons/connection.svg | 0 .../src/components/Icon/icons/continue.svg | 0 .../src/components/Icon/icons/copy.svg | 0 .../src/components/Icon/icons/currency.svg | 0 .../src/components/Icon/icons/delete.svg | 0 .../src/components/Icon/icons/detail.svg | 0 .../src/components/Icon/icons/docs.svg | 0 .../src/components/Icon/icons/download.svg | 0 .../src/components/Icon/icons/edit.svg | 0 .../src/components/Icon/icons/emptyChart.svg | 0 .../src/components/Icon/icons/error.svg | 0 .../src/components/Icon/icons/export.svg | 0 .../src/components/Icon/icons/file.svg | 0 .../src/components/Icon/icons/formInfo.svg | 0 .../src/components/Icon/icons/gift.svg | 0 .../src/components/Icon/icons/help.svg | 0 .../src/components/Icon/icons/import.svg | 0 .../src/components/Icon/icons/info.svg | 0 .../src/components/Icon/icons/instance.svg | 0 .../src/components/Icon/icons/loading.svg | 0 .../src/components/Icon/icons/log.svg | 0 .../src/components/Icon/icons/logo-linear.svg | 0 .../src/components/Icon/icons/logo.svg | 0 .../src/components/Icon/icons/monitor.svg | 0 .../src/components/Icon/icons/more.svg | 0 .../src/components/Icon/icons/noEvents.svg | 0 .../src/components/Icon/icons/overview.svg | 0 .../src/components/Icon/icons/pause.svg | 0 .../src/components/Icon/icons/plus.svg | 0 .../src/components/Icon/icons/podList.svg | 0 .../src/components/Icon/icons/pods.svg | 0 .../src/components/Icon/icons/read.svg | 0 .../src/components/Icon/icons/refresh.svg | 0 .../src/components/Icon/icons/restart.svg | 0 .../src/components/Icon/icons/restore.svg | 0 .../src/components/Icon/icons/search.svg | 0 .../src/components/Icon/icons/settings.svg | 0 .../src/components/Icon/icons/slider.svg | 0 .../src/components/Icon/icons/start.svg | 0 .../components/Icon/icons/statusDetail.svg | 0 .../src/components/Icon/icons/success.svg | 0 .../src/components/Icon/icons/target.svg | 0 .../src/components/Icon/icons/terminal.svg | 0 .../components/Icon/icons/textRecognition.svg | 0 .../src/components/Icon/icons/time.svg | 0 .../src/components/Icon/icons/to.svg | 0 .../src/components/Icon/icons/unread.svg | 0 .../src/components/Icon/icons/upload.svg | 0 .../src/components/Icon/icons/upperRight.svg | 0 .../src/components/Icon/icons/warning.svg | 0 .../src/components/Icon/icons/warningInfo.svg | 0 .../src/components/Icon/index.tsx | 0 .../src/components/Icons/InfoCircleIcon.tsx | 0 .../components/InsufficientQuotaDialog.tsx | 0 .../src/components/LogBarChart/index.tsx | 0 .../src/components/MonitorChart/index.tsx | 0 .../src/components/MyTooltip/index.tsx | 0 .../src/components/PodStatus/index.tsx | 2 +- .../src/components/PriceBox/index.tsx | 2 +- .../src/components/QuotaBox/index.tsx | 2 +- .../src/components/RangeDate/index.tsx | 0 .../components/RangeDate/style.module.scss | 0 .../src/components/RangeSlider/index.tsx | 0 .../src/components/Sidebar/index.tsx | 0 .../src/components/Textarea/TagTextarea.tsx | 2 +- .../src/components/Tip/index.tsx | 0 .../src/components/YamlCode/hljs.ts | 0 .../src/components/YamlCode/index.module.scss | 0 .../src/components/YamlCode/index.tsx | 0 {main/database => database}/src/config.ts | 0 .../database => database}/src/config/vlogs.ts | 0 .../src/constants/backup.ts | 0 .../src/constants/dataflow.ts | 0 .../database => database}/src/constants/db.ts | 2 +- .../src/constants/editApp.ts | 0 .../src/constants/log.ts | 0 .../src/constants/monitor.ts | 0 .../src/constants/theme.ts | 2 +- .../src/hooks/driver.tsx | 0 .../src/hooks/useClientAppConfig.ts | 0 .../src/hooks/useClientSideValue.tsx | 0 .../src/hooks/useConfirm.tsx | 0 .../src/hooks/useCopyData.ts | 2 +- .../src/hooks/useDBOperation.ts | 2 +- .../src/hooks/useLoading.tsx | 0 .../src/hooks/useScreen.ts | 0 .../src/implementations/kb08}/api/backup.ts | 12 +- .../src/implementations/kb08}/api/db.ts | 20 +- .../src/implementations/kb08}/api/migrate.ts | 6 +- .../src/implementations/kb08}/api/platform.ts | 16 +- .../kb08}/components/ApiDocs.tsx | 2 +- .../kb08}/components/ApiV2AlphaDocs.tsx | 4 +- .../kb08}/components/BaseTable/customMenu.tsx | 0 .../kb08}/components/DBStatusTag/index.tsx | 8 +- .../kb08}/components/DataPicker/index.tsx | 4 +- .../kb08}/components/ErrorLog/LogFilter.tsx | 8 +- .../kb08}/components/ErrorLog/LogTable.tsx | 2 +- .../kb08}/components/ErrorModal/index.tsx | 2 +- .../kb08}/components/PodStatus/index.tsx | 4 +- .../kb08}/components/PriceBox/index.tsx | 4 +- .../kb08}/components/QuotaBox/index.tsx | 2 +- .../kb08}/components/Sidebar/index.tsx | 4 +- database/src/implementations/kb08/config.ts | 2 + .../src/implementations/kb08}/config/vlogs.ts | 2 +- .../implementations/kb08}/constants/backup.ts | 2 +- .../src/implementations/kb08}/constants/db.ts | 2 +- .../kb08}/constants/editApp.ts | 0 .../implementations/kb08}/constants/log.ts | 2 +- .../src/implementations/kb08}/pages/_app.tsx | 28 +- .../implementations/kb08}/pages/api-docs.tsx | 2 +- .../kb08}/pages/api/adapter/mongodb.ts | 8 +- .../kb08}/pages/api/applyReconfigureOps.ts | 20 +- .../kb08}/pages/api/applyYamlList.ts | 6 +- .../kb08}/pages/api/backup/create.ts | 12 +- .../kb08}/pages/api/backup/delBackup.ts | 6 +- .../kb08}/pages/api/backup/getBackupList.ts | 8 +- .../kb08}/pages/api/backup/getBackups.ts | 10 +- .../kb08}/pages/api/backup/updatePolicy.ts | 14 +- .../kb08}/pages/api/createDB.ts | 30 +- .../kb08}/pages/api/db/editPassword.ts | 14 +- .../kb08}/pages/api/db/getDatabases.ts | 10 +- .../kb08}/pages/api/db/getTables.ts | 10 +- .../kb08}/pages/api/delDBByName.ts | 8 +- .../kb08}/pages/api/delServiceByName.ts | 6 +- .../kb08}/pages/api/getAddonList.ts | 8 +- .../kb08}/pages/api/getConfigByName.ts | 16 +- .../kb08}/pages/api/getDBByName.ts | 18 +- .../kb08}/pages/api/getDBEvents.ts | 6 +- .../kb08}/pages/api/getDBList.ts | 10 +- .../implementations/kb08}/pages/api/getEnv.ts | 6 +- .../kb08}/pages/api/getSecretByName.ts | 12 +- .../kb08}/pages/api/getServiceByName.ts | 6 +- .../kb08}/pages/api/getStatefulSetByName.ts | 10 +- .../kb08}/pages/api/guide/checkTask.ts | 6 +- .../kb08}/pages/api/guide/getBonus.ts | 6 +- .../kb08}/pages/api/guide/getTasks.ts | 8 +- .../kb08}/pages/api/logs/get.ts | 16 +- .../kb08}/pages/api/logs/getCounts.ts | 14 +- .../kb08}/pages/api/logs/getFiles.ts | 12 +- .../kb08}/pages/api/migrate/createDump.ts | 16 +- .../kb08}/pages/api/migrate/delJobByName.ts | 8 +- .../kb08}/pages/api/migrate/delete.ts | 6 +- .../kb08}/pages/api/migrate/getJobByName.ts | 6 +- .../kb08}/pages/api/migrate/getLogByName.ts | 6 +- .../kb08}/pages/api/migrate/getPodList.ts | 8 +- .../kb08}/pages/api/migrate/list.ts | 8 +- .../kb08}/pages/api/minio/upload.ts | 8 +- .../api/monitor/getAbortedConnections.ts | 12 +- .../pages/api/monitor/getActiveConnections.ts | 12 +- .../pages/api/monitor/getBlockReadTime.ts | 12 +- .../pages/api/monitor/getBlockWriteTime.ts | 12 +- .../kb08}/pages/api/monitor/getCPU.ts | 8 +- .../api/monitor/getCurrentConnections.ts | 12 +- .../pages/api/monitor/getDataBaseSize.ts | 12 +- .../api/monitor/getDurationTransaction.ts | 12 +- .../kb08}/pages/api/monitor/getMemory.ts | 10 +- .../pages/api/monitor/getMongdbPerformance.ts | 12 +- .../kb08}/pages/api/monitor/getMonitorData.ts | 8 +- .../kb08}/pages/api/monitor/getMysqlInnoDB.ts | 12 +- .../pages/api/monitor/getMysqlSlowQueries.ts | 12 +- .../pages/api/monitor/getMysqlTableLocks.ts | 12 +- .../kb08}/pages/api/monitor/getRedisPerDB.ts | 12 +- .../pages/api/monitor/getRedisPerformance.ts | 12 +- .../kb08}/pages/api/monitor/getRollback.ts | 12 +- .../kb08}/pages/api/monitor/getRunningTime.ts | 10 +- .../pages/api/monitor/getTransactions.ts | 12 +- .../kb08}/pages/api/opsrequest/list.ts | 18 +- .../pages/api/opsrequest/operationlog.ts | 14 +- .../kb08}/pages/api/pauseDBByName.ts | 10 +- .../pages/api/platform/getClientAppConfig.ts | 4 +- .../kb08}/pages/api/platform/getQuota.ts | 6 +- .../kb08}/pages/api/platform/getVersion.ts | 8 +- .../kb08}/pages/api/platform/paymentConfig.ts | 4 +- .../kb08}/pages/api/platform/resourcePrice.ts | 8 +- .../kb08}/pages/api/pod/getPodEvents.ts | 6 +- .../pages/api/pod/getPodEventsAnalyses.ts | 6 +- .../kb08}/pages/api/pod/getPodLogs.ts | 8 +- .../kb08}/pages/api/pod/getPodStatus.ts | 6 +- .../kb08}/pages/api/pod/getPodsByDBName.ts | 10 +- .../kb08}/pages/api/pod/restartPod.ts | 6 +- .../kb08}/pages/api/pod/switchPodMs.ts | 10 +- .../kb08}/pages/api/proxy/get_db_alerts.ts | 6 +- .../implementations/kb08}/pages/api/remark.ts | 8 +- .../kb08}/pages/api/startDBByName.ts | 10 +- .../kb08}/pages/api/v1/database.ts | 10 +- .../pages/api/v1/database/[databaseName].ts | 14 +- .../[databaseName]/backup/[backupName].ts | 14 +- .../database/[databaseName]/backup/index.ts | 10 +- .../database/[databaseName]/disablePublic.ts | 6 +- .../database/[databaseName]/enablePublic.ts | 12 +- .../api/v1/database/[databaseName]/pause.ts | 10 +- .../api/v1/database/[databaseName]/start.ts | 10 +- .../kb08}/pages/api/v1/database/list.ts | 16 +- .../pages/api/v1/database/version/list.ts | 10 +- .../kb08}/pages/api/v1/logs/files.ts | 14 +- .../kb08}/pages/api/v1/logs/index.ts | 18 +- .../kb08}/pages/api/v1/monitor/data.ts | 8 +- .../kb08}/pages/api/v1/openapi.ts | 4 +- .../kb08}/pages/api/v2alpha/databases.ts | 10 +- .../api/v2alpha/databases/[databaseName].ts | 12 +- .../[databaseName]/backups/[backupName].ts | 4 +- .../backups/[backupName]/restore.ts | 12 +- .../databases/[databaseName]/backups/index.ts | 12 +- .../[databaseName]/disable-public.ts | 4 +- .../databases/[databaseName]/enable-public.ts | 10 +- .../v2alpha/databases/[databaseName]/pause.ts | 8 +- .../databases/[databaseName]/restart.ts | 8 +- .../v2alpha/databases/[databaseName]/start.ts | 8 +- .../pages/api/v2alpha/databases/versions.ts | 6 +- .../kb08}/pages/api/v2alpha/logs/files.ts | 12 +- .../kb08}/pages/api/v2alpha/logs/index.ts | 16 +- .../kb08}/pages/api/v2alpha/monitor/data.ts | 6 +- .../kb08}/pages/api/v2alpha/openapi.ts | 2 +- .../pages/api/vlogs/database-log-counts.ts | 6 +- .../kb08}/pages/api/vlogs/database-logs.ts | 6 +- .../kb08}/pages/api/vlogs/database-pods.ts | 12 +- .../kb08/pages/backups/index.server.ts | 8 + .../kb08}/pages/backups/index.tsx | 25 +- .../db/detail/components/AppBaseInfo.tsx | 18 +- .../db/detail/components/BackupModal.tsx | 14 +- .../db/detail/components/BackupTable.tsx | 10 +- .../pages/db/detail/components/DataImport.tsx | 4 +- .../pages/db/detail/components/DelModal.tsx | 6 +- .../db/detail/components/DumpImport/index.tsx | 12 +- .../detail/components/ErrorLog/RunTimeLog.tsx | 18 +- .../db/detail/components/ErrorLog/index.tsx | 4 +- .../pages/db/detail/components/Header.tsx | 12 +- .../pages/db/detail/components/LogsModal.tsx | 12 +- .../detail/components/Migrate/LogsModal.tsx | 12 +- .../components/Migrate/MigrateStatus.tsx | 2 +- .../db/detail/components/Migrate/Table.tsx | 8 +- .../components/Monitor/ChartTemplate.tsx | 2 +- .../detail/components/Monitor/RunningTime.tsx | 8 +- .../db/detail/components/Monitor/index.tsx | 6 +- .../db/detail/components/OperationLog.tsx | 6 +- .../db/detail/components/PodDetailModal.tsx | 12 +- .../kb08}/pages/db/detail/components/Pods.tsx | 16 +- .../components/Reconfigure/ConfigTable.tsx | 6 +- .../detail/components/Reconfigure/History.tsx | 8 +- .../detail/components/Reconfigure/index.tsx | 6 +- .../db/detail/components/RestoreModal.tsx | 10 +- .../db/detail/components/UpdateModal.tsx | 2 +- .../kb08/pages/db/detail/index.server.ts | 16 + .../kb08}/pages/db/detail/index.tsx | 31 +- .../kb08}/pages/db/edit/components/Form.tsx | 26 +- .../kb08}/pages/db/edit/components/Header.tsx | 2 +- .../kb08}/pages/db/edit/components/Yaml.tsx | 6 +- .../kb08/pages/db/edit/index.server.ts | 9 + .../kb08}/pages/db/edit/index.tsx | 40 +- .../pages/db/migrate/components/Form.tsx | 10 +- .../pages/db/migrate/components/Header.tsx | 2 +- .../pages/db/migrate/components/Prepare.tsx | 4 +- .../pages/db/migrate/components/Yaml.tsx | 6 +- .../kb08/pages/db/migrate/index.server.ts | 19 + .../kb08}/pages/db/migrate/index.tsx | 38 +- .../kb08}/pages/dbs/components/dbList.tsx | 24 +- .../kb08}/pages/dbs/components/empty.tsx | 2 +- .../kb08/pages/dbs/index.server.ts | 8 + .../implementations/kb08}/pages/dbs/index.tsx | 15 +- .../kb08}/pages/doc/v2alpha.tsx | 2 +- .../implementations/kb08}/pages/healthz.ts | 0 .../kb08}/pages/icons/index.tsx | 2 +- .../implementations/kb08}/pages/redirect.tsx | 2 +- .../services/backend/apis/create-database.ts | 22 +- .../services/backend/apis/delete-database.ts | 10 +- .../services/backend/apis/get-database.ts | 10 +- .../services/backend/apis/list-database.ts | 10 +- .../services/backend/apis}/pause-database.ts | 8 +- .../services/backend/apis/start-database.ts | 8 +- .../services/backend/apis/update-database.ts | 8 +- .../kb08}/services/backend/auth.ts | 0 .../kb08}/services/backend/dataflow.ts | 0 .../kb08}/services/backend/kubernetes.ts | 4 +- .../kb08}/services/backend/response.ts | 0 .../backend/v2alpha/create-database.ts | 20 +- .../backend/v2alpha/delete-database.ts | 8 +- .../services/backend/v2alpha/get-database.ts | 10 +- .../services/backend/v2alpha/list-database.ts | 12 +- .../backend/v2alpha}/pause-database.ts | 8 +- .../backend/v2alpha/restart-database.ts | 8 +- .../backend/v2alpha/start-database.ts | 8 +- .../backend/v2alpha/update-database.ts | 8 +- .../kb08}/services/monitorFetch.ts | 2 +- .../implementations/kb08}/services/request.ts | 2 +- .../kb08}/services/streamFetch.ts | 2 +- .../src/implementations/kb08}/store/date.ts | 0 .../src/implementations/kb08}/store/db.ts | 8 +- .../src/implementations/kb08}/store/env.ts | 4 +- .../src/implementations/kb08}/store/static.ts | 8 +- .../src/implementations/kb08}/store/user.ts | 6 +- .../kb08}/types/apis/backup/create-backup.ts | 0 .../kb08}/types/apis/backup/restore-backup.ts | 0 .../types/apis/database/create-database.ts | 0 .../kb08}/types/apis/database/get-database.ts | 0 .../types/apis/database/list-database.ts | 0 .../kb08}/types/apis/database/version/list.ts | 2 +- .../implementations/kb08}/types/apis/index.ts | 24 +- .../kb08}/types/apis/logs/data.ts | 4 +- .../kb08/types/apis}/logs/file.ts | 4 +- .../apis/v2alpha/backup/create-backup.ts | 2 +- .../apis/v2alpha/backup/restore-backup.ts | 2 +- .../apis/v2alpha/database/create-database.ts | 2 +- .../apis/v2alpha/database/get-database.ts | 2 +- .../apis/v2alpha/database/list-database.ts | 2 +- .../apis/v2alpha/database/version/list.ts | 2 +- .../kb08}/types/apis/v2alpha/index.ts | 30 +- .../kb08}/types/apis/v2alpha/logs/data.ts | 4 +- .../kb08/types/apis/v2alpha}/logs/file.ts | 4 +- .../implementations/kb08}/types/backup.d.ts | 4 +- .../implementations/kb08}/types/cluster.d.ts | 2 +- .../src/implementations/kb08}/types/db.d.ts | 6 +- .../src/implementations/kb08}/types/log.ts | 4 +- .../implementations/kb08}/types/migrate.d.ts | 0 .../kb08}/types/schemas/backup.ts | 2 +- .../implementations/kb08}/types/schemas/db.ts | 0 .../kb08}/types/schemas/v2alpha/backup.ts | 2 +- .../kb08}/types/schemas/v2alpha/db.ts | 0 .../src/implementations/kb08}/types/user.d.ts | 0 .../src/implementations/kb08}/utils/adapt.ts | 16 +- .../kb08}/utils/backupRemark.ts | 0 .../implementations/kb08}/utils/database.ts | 6 +- .../implementations/kb08}/utils/healthz.ts | 2 +- .../implementations/kb08}/utils/json2Yaml.ts | 16 +- .../kb08}/utils/logParsers/LogParser.ts | 6 +- .../kb08}/utils/logParsers/MongoLogParser.ts | 2 +- .../kb08}/utils/logParsers/MysqlLogParser.ts | 4 +- .../utils/logParsers/PostgresLogParser.ts | 2 +- .../kb08}/utils/logParsers/RedisLogParser.ts | 2 +- .../kb08}/utils/parameterChanges.ts | 2 +- .../kb08}/utils/parameterConfig.ts | 6 +- .../kb08}/utils/parameterHistory.ts | 4 +- .../kb08}/utils/reconfigureHistory.ts | 0 .../src/implementations/kb08}/utils/tools.ts | 6 +- .../src/implementations/kb08}/utils/user.ts | 0 .../implementations/kb08}/utils/vlogsTime.ts | 0 .../src/implementations/kb09}/pages/404.tsx | 0 .../src/implementations/kb09}/pages/_app.tsx | 14 +- .../implementations/kb09}/pages/_document.tsx | 0 .../implementations/kb09}/pages/api-docs.tsx | 0 .../kb09}/pages/api/adapter/mongodb.ts | 0 .../kb09}/pages/api/applyReconfigureOps.ts | 0 .../kb09}/pages/api/applyYamlList.ts | 0 .../kb09}/pages/api/backup/create.ts | 0 .../kb09}/pages/api/backup/delBackup.ts | 0 .../kb09}/pages/api/backup/getBackupList.ts | 0 .../kb09}/pages/api/backup/getBackups.ts | 0 .../kb09}/pages/api/backup/updatePolicy.ts | 0 .../kb09}/pages/api/createDB.ts | 0 .../kb09}/pages/api/db/editPassword.ts | 0 .../kb09}/pages/api/db/getDatabases.ts | 0 .../kb09}/pages/api/db/getTables.ts | 0 .../kb09}/pages/api/delDBByName.ts | 0 .../kb09}/pages/api/delServiceByName.ts | 0 .../kb09}/pages/api/getAddonList.ts | 0 .../kb09}/pages/api/getConfigByName.ts | 0 .../kb09}/pages/api/getDBByName.ts | 0 .../kb09}/pages/api/getDBEvents.ts | 0 .../kb09}/pages/api/getDBList.ts | 0 .../kb09}/pages/api/getSecretByName.ts | 0 .../kb09}/pages/api/getServiceByName.ts | 0 .../kb09}/pages/api/guide/checkTask.ts | 0 .../kb09}/pages/api/guide/getTasks.ts | 0 .../kb09}/pages/api/logs/get.ts | 0 .../kb09}/pages/api/logs/getCounts.ts | 0 .../kb09}/pages/api/logs/getFiles.ts | 0 .../kb09}/pages/api/migrate/createDump.ts | 0 .../kb09}/pages/api/migrate/delJobByName.ts | 0 .../kb09}/pages/api/migrate/delete.ts | 0 .../kb09}/pages/api/migrate/getJobByName.ts | 0 .../kb09}/pages/api/migrate/getLogByName.ts | 0 .../kb09}/pages/api/migrate/getPodList.ts | 0 .../kb09}/pages/api/migrate/list.ts | 0 .../kb09}/pages/api/minio/upload.ts | 0 .../api/monitor/getAbortedConnections.ts | 0 .../pages/api/monitor/getActiveConnections.ts | 0 .../pages/api/monitor/getBlockReadTime.ts | 0 .../pages/api/monitor/getBlockWriteTime.ts | 0 .../kb09}/pages/api/monitor/getCPU.ts | 0 .../api/monitor/getCurrentConnections.ts | 0 .../pages/api/monitor/getDataBaseSize.ts | 0 .../api/monitor/getDurationTransaction.ts | 0 .../kb09}/pages/api/monitor/getMemory.ts | 0 .../pages/api/monitor/getMongdbPerformance.ts | 0 .../kb09}/pages/api/monitor/getMonitorData.ts | 0 .../kb09}/pages/api/monitor/getMysqlInnoDB.ts | 0 .../pages/api/monitor/getMysqlSlowQueries.ts | 0 .../pages/api/monitor/getMysqlTableLocks.ts | 0 .../kb09}/pages/api/monitor/getRedisPerDB.ts | 0 .../pages/api/monitor/getRedisPerformance.ts | 0 .../kb09}/pages/api/monitor/getRollback.ts | 0 .../kb09}/pages/api/monitor/getRunningTime.ts | 0 .../pages/api/monitor/getTransactions.ts | 0 .../kb09}/pages/api/opsrequest/list.ts | 0 .../pages/api/opsrequest/operationlog.ts | 0 .../kb09}/pages/api/pauseDBByName.ts | 0 .../pages/api/platform/getClientAppConfig.ts | 0 .../kb09}/pages/api/platform/getVersion.ts | 0 .../kb09}/pages/api/platform/resourcePrice.ts | 0 .../kb09}/pages/api/pod/getPodEvents.ts | 0 .../pages/api/pod/getPodEventsAnalyses.ts | 0 .../kb09}/pages/api/pod/getPodLogs.ts | 0 .../kb09}/pages/api/pod/getPodStatus.ts | 0 .../kb09}/pages/api/pod/getPodsByDBName.ts | 0 .../kb09}/pages/api/pod/restartPod.ts | 0 .../kb09}/pages/api/pod/switchPodMs.ts | 0 .../kb09}/pages/api/proxy/get_db_alerts.ts | 0 .../implementations/kb09}/pages/api/remark.ts | 0 .../kb09}/pages/api/resolveDBConnectTarget.ts | 0 .../kb09}/pages/api/restoreBackup.ts | 0 .../kb09}/pages/api/startDBByName.ts | 0 .../kb09}/pages/api/v1/database.ts | 0 .../pages/api/v1/database/[databaseName].ts | 0 .../[databaseName]/backup/[backupName].ts | 0 .../database/[databaseName]/backup/index.ts | 0 .../database/[databaseName]/disablePublic.ts | 0 .../database/[databaseName]/enablePublic.ts | 0 .../api/v1/database/[databaseName]/pause.ts | 0 .../api/v1/database/[databaseName]/restart.ts | 0 .../api/v1/database/[databaseName]/start.ts | 0 .../kb09}/pages/api/v1/database/list.ts | 0 .../pages/api/v1/database/version/list.ts | 0 .../kb09}/pages/api/v1/logs/files.ts | 0 .../kb09}/pages/api/v1/logs/index.ts | 0 .../kb09}/pages/api/v1/monitor/data.ts | 0 .../kb09}/pages/api/v1/openapi.ts | 0 .../kb09}/pages/api/v2alpha/databases.ts | 0 .../api/v2alpha/databases/[databaseName].ts | 0 .../[databaseName]/backups/[backupName].ts | 0 .../backups/[backupName]/restore.ts | 0 .../databases/[databaseName]/backups/index.ts | 0 .../[databaseName]/disable-public.ts | 0 .../databases/[databaseName]/enable-public.ts | 0 .../v2alpha/databases/[databaseName]/pause.ts | 0 .../databases/[databaseName]/restart.ts | 0 .../v2alpha/databases/[databaseName]/start.ts | 0 .../pages/api/v2alpha/databases/versions.ts | 0 .../kb09}/pages/api/v2alpha/logs/files.ts | 0 .../kb09}/pages/api/v2alpha/logs/index.ts | 0 .../kb09}/pages/api/v2alpha/monitor/data.ts | 0 .../kb09}/pages/api/v2alpha/openapi.ts | 0 .../pages/api/vlogs/database-log-counts.ts | 0 .../kb09}/pages/api/vlogs/database-logs.ts | 0 .../kb09}/pages/api/vlogs/database-pods.ts | 0 .../kb09/pages/backups/index.server.ts | 8 + .../kb09}/pages/backups/index.tsx | 11 +- .../db/detail/components/AppBaseInfo.tsx | 2 +- .../db/detail/components/BackupModal.tsx | 2 +- .../db/detail/components/BackupTable.tsx | 2 +- .../pages/db/detail/components/DataImport.tsx | 0 .../pages/db/detail/components/DelModal.tsx | 2 +- .../db/detail/components/DumpImport/index.tsx | 2 +- .../detail/components/ErrorLog/RunTimeLog.tsx | 0 .../db/detail/components/ErrorLog/index.tsx | 0 .../pages/db/detail/components/Header.tsx | 2 +- .../pages/db/detail/components/LogsModal.tsx | 2 +- .../detail/components/Migrate/LogsModal.tsx | 4 +- .../components/Migrate/MigrateStatus.tsx | 0 .../db/detail/components/Migrate/Table.tsx | 2 +- .../components/Migrate/empty.module.scss | 0 .../db/detail/components/Migrate/empty.tsx | 0 .../components/Monitor/ChartTemplate.tsx | 0 .../detail/components/Monitor/RunningTime.tsx | 0 .../db/detail/components/Monitor/index.tsx | 2 +- .../db/detail/components/OperationLog.tsx | 0 .../db/detail/components/PodDetailModal.tsx | 2 +- .../kb09}/pages/db/detail/components/Pods.tsx | 2 +- .../components/Reconfigure/ConfigTable.tsx | 2 +- .../detail/components/Reconfigure/History.tsx | 0 .../detail/components/Reconfigure/index.tsx | 2 +- .../db/detail/components/RestoreModal.tsx | 2 +- .../db/detail/components/StopBackupModal.tsx | 0 .../db/detail/components/UpdateModal.tsx | 0 .../db/detail/components/empty.module.scss | 0 .../pages/db/detail/components/empty.tsx | 0 .../kb09}/pages/db/detail/index.module.scss | 0 .../kb09/pages/db/detail/index.server.ts | 10 + .../kb09}/pages/db/detail/index.tsx | 15 +- .../kb09}/pages/db/edit/components/Form.tsx | 2 +- .../kb09}/pages/db/edit/components/Header.tsx | 0 .../kb09}/pages/db/edit/components/Yaml.tsx | 2 +- .../db/edit/components/index.module.scss | 0 .../kb09}/pages/db/edit/index.module.scss | 0 .../kb09/pages/db/edit/index.server.ts | 9 + .../kb09}/pages/db/edit/index.tsx | 12 +- .../pages/db/migrate/components/Form.tsx | 2 +- .../pages/db/migrate/components/Header.tsx | 0 .../pages/db/migrate/components/Prepare.tsx | 0 .../pages/db/migrate/components/Yaml.tsx | 2 +- .../db/migrate/components/index.module.scss | 0 .../kb09}/pages/db/migrate/index.module.scss | 0 .../kb09/pages/db/migrate/index.server.ts | 10 + .../kb09}/pages/db/migrate/index.tsx | 13 +- .../kb09}/pages/dbs/components/dbList.tsx | 6 +- .../pages/dbs/components/empty.module.scss | 0 .../kb09}/pages/dbs/components/empty.tsx | 0 .../kb09}/pages/dbs/index.module.scss | 0 .../kb09/pages/dbs/index.server.ts | 8 + .../implementations/kb09}/pages/dbs/index.tsx | 9 - .../kb09}/pages/doc/v2alpha.tsx | 0 .../kb09}/pages/icons/index.tsx | 0 .../implementations/kb09}/pages/redirect.tsx | 0 .../src/instrumentation.ts | 0 database/src/kubeblocks/page.tsx | 14 + database/src/kubeblocks/version.ts | 7 + database/src/pages/404.tsx | 4 + database/src/pages/_app.tsx | 44 + database/src/pages/_document.tsx | 1 + database/src/pages/api-docs.tsx | 4 + database/src/pages/api/adapter/mongodb.ts | 4 + database/src/pages/api/applyReconfigureOps.ts | 4 + database/src/pages/api/applyYamlList.ts | 4 + database/src/pages/api/backup/create.ts | 4 + database/src/pages/api/backup/delBackup.ts | 4 + .../src/pages/api/backup/getBackupList.ts | 4 + database/src/pages/api/backup/getBackups.ts | 4 + database/src/pages/api/backup/updatePolicy.ts | 4 + database/src/pages/api/createDB.ts | 4 + database/src/pages/api/db/editPassword.ts | 4 + database/src/pages/api/db/getDatabases.ts | 4 + database/src/pages/api/db/getTables.ts | 4 + database/src/pages/api/delDBByName.ts | 4 + database/src/pages/api/delServiceByName.ts | 4 + database/src/pages/api/getAddonList.ts | 4 + database/src/pages/api/getConfigByName.ts | 4 + database/src/pages/api/getDBByName.ts | 4 + database/src/pages/api/getDBEvents.ts | 4 + database/src/pages/api/getDBList.ts | 4 + database/src/pages/api/getEnv.ts | 3 + database/src/pages/api/getSecretByName.ts | 4 + database/src/pages/api/getServiceByName.ts | 4 + .../src/pages/api/getStatefulSetByName.ts | 3 + database/src/pages/api/guide/checkTask.ts | 4 + database/src/pages/api/guide/getBonus.ts | 3 + database/src/pages/api/guide/getTasks.ts | 4 + database/src/pages/api/logs/get.ts | 4 + database/src/pages/api/logs/getCounts.ts | 4 + database/src/pages/api/logs/getFiles.ts | 4 + database/src/pages/api/migrate/createDump.ts | 4 + .../src/pages/api/migrate/delJobByName.ts | 4 + database/src/pages/api/migrate/delete.ts | 4 + .../src/pages/api/migrate/getJobByName.ts | 4 + .../src/pages/api/migrate/getLogByName.ts | 4 + database/src/pages/api/migrate/getPodList.ts | 4 + database/src/pages/api/migrate/list.ts | 4 + database/src/pages/api/minio/upload.ts | 5 + .../api/monitor/getAbortedConnections.ts | 4 + .../pages/api/monitor/getActiveConnections.ts | 4 + .../src/pages/api/monitor/getBlockReadTime.ts | 4 + .../pages/api/monitor/getBlockWriteTime.ts | 4 + database/src/pages/api/monitor/getCPU.ts | 4 + .../api/monitor/getCurrentConnections.ts | 4 + .../src/pages/api/monitor/getDataBaseSize.ts | 4 + .../api/monitor/getDurationTransaction.ts | 4 + database/src/pages/api/monitor/getMemory.ts | 4 + .../pages/api/monitor/getMongdbPerformance.ts | 4 + .../src/pages/api/monitor/getMonitorData.ts | 4 + .../src/pages/api/monitor/getMysqlInnoDB.ts | 4 + .../pages/api/monitor/getMysqlSlowQueries.ts | 4 + .../pages/api/monitor/getMysqlTableLocks.ts | 4 + .../src/pages/api/monitor/getRedisPerDB.ts | 4 + .../pages/api/monitor/getRedisPerformance.ts | 4 + database/src/pages/api/monitor/getRollback.ts | 4 + .../src/pages/api/monitor/getRunningTime.ts | 4 + .../src/pages/api/monitor/getTransactions.ts | 4 + database/src/pages/api/opsrequest/list.ts | 4 + .../src/pages/api/opsrequest/operationlog.ts | 4 + database/src/pages/api/pauseDBByName.ts | 4 + .../pages/api/platform/getClientAppConfig.ts | 4 + database/src/pages/api/platform/getQuota.ts | 3 + database/src/pages/api/platform/getVersion.ts | 4 + .../src/pages/api/platform/paymentConfig.ts | 3 + .../src/pages/api/platform/resourcePrice.ts | 4 + database/src/pages/api/pod/getPodEvents.ts | 4 + .../src/pages/api/pod/getPodEventsAnalyses.ts | 4 + database/src/pages/api/pod/getPodLogs.ts | 4 + database/src/pages/api/pod/getPodStatus.ts | 4 + database/src/pages/api/pod/getPodsByDBName.ts | 4 + database/src/pages/api/pod/restartPod.ts | 4 + database/src/pages/api/pod/switchPodMs.ts | 4 + database/src/pages/api/proxy/get_db_alerts.ts | 4 + database/src/pages/api/remark.ts | 4 + .../src/pages/api/resolveDBConnectTarget.ts | 3 + database/src/pages/api/restoreBackup.ts | 3 + database/src/pages/api/startDBByName.ts | 4 + database/src/pages/api/v1/database.ts | 4 + .../pages/api/v1/database/[databaseName].ts | 4 + .../[databaseName]/backup/[backupName].ts | 4 + .../database/[databaseName]/backup/index.ts | 4 + .../database/[databaseName]/disablePublic.ts | 4 + .../database/[databaseName]/enablePublic.ts | 4 + .../api/v1/database/[databaseName]/pause.ts | 4 + .../api/v1/database/[databaseName]/restart.ts | 3 + .../api/v1/database/[databaseName]/start.ts | 4 + database/src/pages/api/v1/database/list.ts | 4 + .../src/pages/api/v1/database/version/list.ts | 4 + database/src/pages/api/v1/logs/files.ts | 4 + database/src/pages/api/v1/logs/index.ts | 4 + database/src/pages/api/v1/monitor/data.ts | 4 + database/src/pages/api/v1/openapi.ts | 4 + database/src/pages/api/v2alpha/databases.ts | 4 + .../api/v2alpha/databases/[databaseName].ts | 4 + .../[databaseName]/backups/[backupName].ts | 4 + .../backups/[backupName]/restore.ts | 4 + .../databases/[databaseName]/backups/index.ts | 4 + .../[databaseName]/disable-public.ts | 4 + .../databases/[databaseName]/enable-public.ts | 4 + .../v2alpha/databases/[databaseName]/pause.ts | 4 + .../databases/[databaseName]/restart.ts | 4 + .../v2alpha/databases/[databaseName]/start.ts | 4 + .../pages/api/v2alpha/databases/versions.ts | 4 + database/src/pages/api/v2alpha/logs/files.ts | 4 + database/src/pages/api/v2alpha/logs/index.ts | 4 + .../src/pages/api/v2alpha/monitor/data.ts | 4 + database/src/pages/api/v2alpha/openapi.ts | 4 + .../pages/api/vlogs/database-log-counts.ts | 4 + database/src/pages/api/vlogs/database-logs.ts | 4 + database/src/pages/api/vlogs/database-pods.ts | 4 + database/src/pages/backups/index.tsx | 8 + database/src/pages/db/detail/index.tsx | 8 + database/src/pages/db/edit/index.tsx | 8 + database/src/pages/db/migrate/index.tsx | 8 + database/src/pages/dbs/index.tsx | 8 + database/src/pages/doc/v2alpha.tsx | 4 + database/src/pages/healthz.ts | 1 + database/src/pages/icons/index.tsx | 4 + database/src/pages/redirect.tsx | 4 + .../services/backend/apis/create-database.ts | 2 +- .../services/backend/apis/delete-database.ts | 6 +- .../src/services/backend/apis/get-database.ts | 0 .../services/backend/apis/list-database.ts | 0 .../services/backend/apis/pause-database.ts | 2 +- .../services/backend/apis/restart-database.ts | 2 +- .../services/backend/apis/start-database.ts | 2 +- .../services/backend/apis/update-database.ts | 0 .../src/services/backend/auth.ts | 0 .../src/services/backend/database-config.ts | 0 .../src/services/backend/dataflow.ts | 0 .../src/services/backend/db-version.ts | 0 database/src/services/backend/kubeblocks.ts | 30 + .../src/services/backend/kubernetes.ts | 0 .../src/services/backend/middleware.ts | 0 .../src/services/backend/response.ts | 0 .../backend/v2alpha/create-database.ts | 2 +- .../backend/v2alpha/delete-database.ts | 0 .../services/backend/v2alpha/get-database.ts | 0 .../services/backend/v2alpha/list-database.ts | 0 .../backend/v2alpha/pause-database.ts | 2 +- .../backend/v2alpha/restart-database.ts | 2 +- .../backend/v2alpha/start-database.ts | 2 +- .../backend/v2alpha/update-database.ts | 0 .../src/services/kubernet.ts | 0 .../src/services/monitorFetch.ts | 0 .../src/services/request.ts | 0 .../src/services/streamFetch.ts | 0 {main/database => database}/src/store/date.ts | 0 {main/database => database}/src/store/db.ts | 0 .../database => database}/src/store/global.ts | 0 .../database => database}/src/store/guide.ts | 0 .../src/store/hostConfig.ts | 0 .../database => database}/src/store/static.ts | 4 +- {main/database => database}/src/store/user.ts | 0 .../src/styles/global.scss | 0 .../src/styles/reset.scss | 0 .../src/types/apis/backup/create-backup.ts | 0 .../src/types/apis/backup/delete-backup.ts | 0 .../src/types/apis/backup/restore-backup.ts | 0 .../types/apis/database/create-database.ts | 0 .../types/apis/database/delete-database.ts | 0 .../src/types/apis/database/get-database.ts | 0 .../src/types/apis/database/list-database.ts | 0 .../src/types/apis/database/pause-database.ts | 0 .../types/apis/database/restart-database.ts | 0 .../src/types/apis/database/start-database.ts | 0 .../types/apis/database/update-database.ts | 0 .../src/types/apis/database/version/list.ts | 0 .../src/types/apis/index.ts | 0 .../src/types/apis/logs/data.ts | 0 .../src/types/apis/logs/file.ts | 0 .../apis/network/disable-public-access.ts | 0 .../apis/network/enable-public-access.ts | 0 .../apis/v2alpha/backup/create-backup.ts | 0 .../apis/v2alpha/backup/delete-backup.ts | 0 .../apis/v2alpha/backup/restore-backup.ts | 0 .../apis/v2alpha/database/create-database.ts | 0 .../apis/v2alpha/database/delete-database.ts | 0 .../apis/v2alpha/database/get-database.ts | 0 .../apis/v2alpha/database/list-database.ts | 0 .../apis/v2alpha/database/pause-database.ts | 0 .../apis/v2alpha/database/restart-database.ts | 0 .../apis/v2alpha/database/start-database.ts | 0 .../apis/v2alpha/database/update-database.ts | 0 .../apis/v2alpha/database/version/list.ts | 0 .../src/types/apis/v2alpha/index.ts | 0 .../src/types/apis/v2alpha/logs/data.ts | 0 .../src/types/apis/v2alpha/logs/file.ts | 0 .../v2alpha/network/disable-public-access.ts | 0 .../v2alpha/network/enable-public-access.ts | 0 .../src/types/backup.d.ts | 0 .../src/types/cluster.d.ts | 0 .../database => database}/src/types/config.ts | 80 +- {main/database => database}/src/types/db.d.ts | 0 .../src/types/i18next.d.ts | 3 +- .../src/types/index.d.ts | 0 {main/database => database}/src/types/log.ts | 0 .../src/types/migrate.d.ts | 0 .../src/types/monitor.d.ts | 0 .../src/types/response.ts | 0 .../src/types/schemas/backup.ts | 0 .../src/types/schemas/db.ts | 0 .../src/types/schemas/logs.ts | 0 .../src/types/schemas/monitor.ts | 0 .../src/types/schemas/password.ts | 0 .../src/types/schemas/v2alpha/backup.ts | 0 .../src/types/schemas/v2alpha/db.ts | 0 .../src/types/schemas/v2alpha/logs.ts | 0 .../src/types/schemas/v2alpha/monitor.ts | 0 .../database => database}/src/types/user.d.ts | 0 .../src/types/v2alpha/error.ts | 0 .../database => database}/src/utils/adapt.ts | 2 +- .../src/utils/cookieUtils.ts | 0 .../src/utils/database.ts | 0 .../src/utils/i18n-client.ts | 0 {main/database => database}/src/utils/i18n.ts | 6 +- .../src/utils/json2Yaml.ts | 2 +- .../src/utils/kubeFileSystem.ts | 0 .../src/utils/logParsers/LogParser.ts | 0 .../src/utils/logParsers/MongoLogParser.ts | 0 .../src/utils/logParsers/MysqlLogParser.ts | 0 .../src/utils/logParsers/PostgresLogParser.ts | 0 .../src/utils/logParsers/RedisLogParser.ts | 0 .../src/utils/timeRange.ts | 0 .../database => database}/src/utils/tools.ts | 2 +- {main/database => database}/src/utils/user.ts | 0 {main/database => database}/tsconfig.json | 0 {main/database => database}/vitest.config.mts | 0 deploy/env.template | 6 + deploy/install.sh | 5 + .../deploy => deploy/kubeblocks-0.8}/Kubefile | 0 .../kubeblocks-0.8}/README.md | 92 +- .../charts/database-frontend/Chart.yaml | 0 .../database-frontend-values.yaml | 2 + .../database-frontend/templates/_helpers.tpl | 0 .../database-frontend/templates/app.yaml | 0 .../templates/configmap.yaml | 6 + .../templates/deployment.yaml | 0 .../database-frontend/templates/ingress.yaml | 0 .../database-frontend/templates/rbac.yaml | 2 +- .../database-frontend/templates/service.yaml | 0 .../templates/tests/test-connection.yaml | 0 .../charts/database-frontend/values.yaml | 2 + .../database-frontend-entrypoint.sh | 7 + .../scripts/update-backup-label.sh | 0 main/Makefile | 23 - main/README.md | 34 - main/database/next.config.js | 46 - main/database/src/constants/theme.ts | 48 - main/database/src/hooks/useCopyData.ts | 33 - main/packages/ui/.eslintrc.json | 3 - main/packages/ui/package.json | 45 - main/packages/ui/rollup.config.js | 32 - .../ui/src/components/AutoComplete/index.tsx | 180 - .../ui/src/components/EditTabs/index.tsx | 92 - .../packages/ui/src/components/Menu/index.tsx | 56 - .../ui/src/components/Message/index.tsx | 133 - .../ui/src/components/MySlider/index.tsx | 71 - .../ui/src/components/MyTable/index.tsx | 75 - .../ui/src/components/MyTooltip/index.tsx | 23 - .../ui/src/components/RangeInput/index.tsx | 90 - .../ui/src/components/RangeSlider/index.tsx | 57 - .../ui/src/components/Select/index.tsx | 169 - .../packages/ui/src/components/Tabs/index.tsx | 78 - main/packages/ui/src/components/Tip/index.tsx | 69 - .../ui/src/components/YamlCode/YamlCode.tsx | 52 - .../ui/src/components/YamlCode/hljs.ts | 115 - .../src/components/YamlCode/index.module.scss | 6 - .../ui/src/components/YamlCode/index.ts | 2 - .../ui/src/components/icons/AddIcon.tsx | 9 - .../components/icons/ArrowDownSLineIcon.tsx | 9 - .../components/icons/ArrowExchangeIcon.tsx | 19 - .../ui/src/components/icons/BucketIcon.tsx | 10 - .../ui/src/components/icons/CancelIcon.tsx | 16 - .../ui/src/components/icons/ChangeIcon.tsx | 27 - .../src/components/icons/ClearOutlineIcon.tsx | 9 - .../ui/src/components/icons/CloseIcon.tsx | 22 - .../ui/src/components/icons/CopyIcon.tsx | 15 - .../src/components/icons/CreateFolderIcon.tsx | 9 - .../src/components/icons/CurrencySymbol.tsx | 176 - .../ui/src/components/icons/DeleteIcon.tsx | 9 - .../src/components/icons/DetailsMoreIcon.tsx | 9 - .../ui/src/components/icons/DnsIcon.tsx | 9 - .../ui/src/components/icons/DocsIcon.tsx | 23 - .../ui/src/components/icons/DownloadIcon.tsx | 9 - .../ui/src/components/icons/EditIcon.tsx | 24 - .../ui/src/components/icons/ExchangeIcon.tsx | 21 - .../src/components/icons/ExpandMoreIcon.tsx | 9 - .../ui/src/components/icons/FileIcon.tsx | 9 - .../ui/src/components/icons/FolderIcon.tsx | 9 - .../ui/src/components/icons/GeneralIcon.tsx | 20 - .../ui/src/components/icons/GithubIcon.tsx | 19 - .../ui/src/components/icons/GoogleIcon.tsx | 30 - .../ui/src/components/icons/GroupAdd.tsx | 10 - .../src/components/icons/InfoCircleIcon.tsx | 9 - .../ui/src/components/icons/InfoIcon.tsx | 9 - .../ui/src/components/icons/LeftArrowIcon.tsx | 9 - .../ui/src/components/icons/LinkIcon.tsx | 9 - .../ui/src/components/icons/ListCheckIcon.tsx | 18 - .../ui/src/components/icons/ListIcon.tsx | 21 - .../ui/src/components/icons/LogoutIcon.tsx | 22 - .../ui/src/components/icons/MonitorIcon.tsx | 19 - .../ui/src/components/icons/MoreIcon.tsx | 9 - .../src/components/icons/NotificationIcon.tsx | 20 - .../ui/src/components/icons/PortIcon.tsx | 34 - .../ui/src/components/icons/ProviderIcon.tsx | 9 - .../ui/src/components/icons/RefreshIcon.tsx | 10 - .../ui/src/components/icons/RightArrow.tsx | 19 - .../ui/src/components/icons/SealosCoin.tsx | 41 - .../ui/src/components/icons/SearchIcon.tsx | 9 - .../ui/src/components/icons/SettingIcon.tsx | 28 - .../components/icons/SortPolygonDownIcon.tsx | 9 - .../components/icons/SortPolygonUpIcon.tsx | 9 - .../ui/src/components/icons/StorageIcon.tsx | 20 - .../ui/src/components/icons/SuccessIcon.tsx | 20 - .../ui/src/components/icons/UploadIcon.tsx | 9 - .../src/components/icons/VisibilityIcon.tsx | 9 - .../ui/src/components/icons/WarnIcon.tsx | 16 - .../src/components/icons/WarnTriangleIcon.tsx | 28 - .../ui/src/components/icons/WarningIcon.tsx | 20 - .../ui/src/components/icons/WebHostIcon.tsx | 28 - .../ui/src/components/icons/WechatIcon.tsx | 24 - .../src/components/icons/line/WarnTriange.tsx | 25 - main/packages/ui/src/components/index.ts | 125 - main/packages/ui/src/index.ts | 4 - main/packages/ui/src/theme/colors.ts | 118 - .../ui/src/theme/components/Button.ts | 103 - .../packages/ui/src/theme/components/Input.ts | 52 - .../packages/ui/src/theme/components/Modal.ts | 38 - .../ui/src/theme/components/NumberInput.ts | 30 - .../ui/src/theme/components/Select.ts | 20 - .../ui/src/theme/components/Slider.ts | 15 - .../ui/src/theme/components/Switch.ts | 15 - main/packages/ui/src/theme/components/Tag.ts | 17 - .../ui/src/theme/components/Textarea.ts | 23 - .../ui/src/theme/components/YamlCode.ts | 7 - .../packages/ui/src/theme/components/index.ts | 29 - main/packages/ui/src/theme/index.ts | 4 - main/packages/ui/src/theme/theme.ts | 51 - main/packages/ui/tsconfig.json | 8 - main/package.json => package.json | 6 +- main/pnpm-lock.yaml => pnpm-lock.yaml | 494 +- ...pnpm-workspace.yaml => pnpm-workspace.yaml | 1 - release-v5.1/.dockerignore | 24 - release-v5.1/.gitignore | 10 - release-v5.1/.npmrc | 1 - release-v5.1/.prettierignore | 5 - release-v5.1/.prettierrc.js | 20 - release-v5.1/Dockerfile | 107 - release-v5.1/README.md | 31 - release-v5.1/database/.dockerignore | 10 - release-v5.1/database/.env.template | 5 - release-v5.1/database/.eslintrc.json | 6 - release-v5.1/database/.gitignore | 43 - release-v5.1/database/.prettierignore | 4 - release-v5.1/database/.prettierrc.js | 21 - release-v5.1/database/.vscode/settings.json | 22 - release-v5.1/database/Dockerfile | 58 - release-v5.1/database/Makefile | 39 - .../database/deploy/manifests/appcr.yaml.tmpl | 19 - .../deploy/manifests/deploy.yaml.tmpl | 131 - .../deploy/manifests/ingress.yaml.tmpl | 31 - .../database/deploy/manifests/rbac.yaml | 37 - release-v5.1/database/next-i18next.config.js | 14 - release-v5.1/database/package.json | 88 - release-v5.1/database/public/favicon.ico | Bin 4286 -> 0 bytes release-v5.1/database/public/guide-image.png | Bin 34218 -> 0 bytes .../database/public/images/apecloud-mysql.svg | 3 - .../database/public/images/clickhouse.svg | 10 - release-v5.1/database/public/images/kafka.svg | 3 - .../database/public/images/milvus.svg | 3 - .../database/public/images/mongodb.svg | 5 - .../database/public/images/postgresql.svg | 6 - .../database/public/images/pulsar.svg | 3 - .../database/public/images/qdrant.svg | 17 - release-v5.1/database/public/images/redis.svg | 11 - .../database/public/images/weaviate.svg | 192 - release-v5.1/database/public/logo.svg | 48 - release-v5.1/database/public/redirect.html | 88 - release-v5.1/database/src/api/tools.ts | 13 - .../src/components/BaseTable/SwitchPage.tsx | 158 - .../src/components/BaseTable/baseTable.tsx | 119 - .../src/components/ButtonGroup/index.tsx | 40 - .../src/components/CodeBlock/index.tsx | 65 - .../src/components/ErrorLog/LogCounts.tsx | 102 - .../src/components/FileSelect/index.tsx | 129 - .../src/components/FormControl/index.tsx | 29 - .../src/components/Icon/icons/add.svg | 3 - .../src/components/Icon/icons/analyze.svg | 1 - .../src/components/Icon/icons/arrowDown.svg | 3 - .../src/components/Icon/icons/arrowLeft.svg | 3 - .../src/components/Icon/icons/arrowUp.svg | 3 - .../src/components/Icon/icons/backup.svg | 4 - .../components/Icon/icons/backupSettings.svg | 4 - .../src/components/Icon/icons/book.svg | 3 - .../src/components/Icon/icons/calendar.svg | 3 - .../src/components/Icon/icons/change.svg | 5 - .../components/Icon/icons/chevron-down.svg | 3 - .../src/components/Icon/icons/config.svg | 3 - .../src/components/Icon/icons/configmap.svg | 4 - .../src/components/Icon/icons/connection.svg | 3 - .../src/components/Icon/icons/continue.svg | 3 - .../src/components/Icon/icons/copy.svg | 1 - .../src/components/Icon/icons/currency.svg | 3 - .../src/components/Icon/icons/delete.svg | 3 - .../src/components/Icon/icons/detail.svg | 3 - .../src/components/Icon/icons/docs.svg | 3 - .../src/components/Icon/icons/download.svg | 1 - .../src/components/Icon/icons/edit.svg | 5 - .../src/components/Icon/icons/emptyChart.svg | 10 - .../src/components/Icon/icons/error.svg | 3 - .../src/components/Icon/icons/export.svg | 3 - .../src/components/Icon/icons/file.svg | 11 - .../src/components/Icon/icons/formInfo.svg | 3 - .../src/components/Icon/icons/gift.svg | 10 - .../src/components/Icon/icons/help.svg | 3 - .../src/components/Icon/icons/import.svg | 4 - .../src/components/Icon/icons/info.svg | 3 - .../src/components/Icon/icons/instance.svg | 6 - .../src/components/Icon/icons/loading.svg | 10 - .../src/components/Icon/icons/log.svg | 3 - .../src/components/Icon/icons/logo-linear.svg | 3 - .../src/components/Icon/icons/logo.svg | 5 - .../src/components/Icon/icons/monitor.svg | 3 - .../src/components/Icon/icons/more.svg | 1 - .../src/components/Icon/icons/noEvents.svg | 1 - .../src/components/Icon/icons/overview.svg | 6 - .../src/components/Icon/icons/pause.svg | 4 - .../src/components/Icon/icons/plus.svg | 3 - .../src/components/Icon/icons/podList.svg | 1 - .../src/components/Icon/icons/pods.svg | 6 - .../src/components/Icon/icons/read.svg | 3 - .../src/components/Icon/icons/refresh.svg | 5 - .../src/components/Icon/icons/restart.svg | 3 - .../src/components/Icon/icons/restore.svg | 1 - .../src/components/Icon/icons/search.svg | 3 - .../src/components/Icon/icons/settings.svg | 4 - .../src/components/Icon/icons/slider.svg | 3 - .../src/components/Icon/icons/start.svg | 1 - .../components/Icon/icons/statusDetail.svg | 1 - .../src/components/Icon/icons/success.svg | 3 - .../src/components/Icon/icons/target.svg | 10 - .../src/components/Icon/icons/terminal.svg | 1 - .../components/Icon/icons/textRecognition.svg | 7 - .../src/components/Icon/icons/time.svg | 3 - .../database/src/components/Icon/icons/to.svg | 4 - .../src/components/Icon/icons/unread.svg | 7 - .../src/components/Icon/icons/upload.svg | 3 - .../src/components/Icon/icons/upperRight.svg | 3 - .../src/components/Icon/icons/warning.svg | 11 - .../src/components/Icon/icons/warningInfo.svg | 10 - .../database/src/components/Icon/index.tsx | 85 - .../src/components/LogBarChart/index.tsx | 250 - .../src/components/MonitorChart/index.tsx | 163 - .../src/components/MyTooltip/index.tsx | 24 - .../src/components/RangeDate/index.tsx | 60 - .../components/RangeDate/style.module.scss | 0 .../src/components/RangeSlider/index.tsx | 84 - .../src/components/Textarea/TagTextarea.tsx | 112 - .../database/src/components/Tip/index.tsx | 67 - .../database/src/components/YamlCode/hljs.ts | 121 - .../src/components/YamlCode/index.module.scss | 6 - .../src/components/YamlCode/index.tsx | 46 - release-v5.1/database/src/config.ts | 19 - .../database/src/constants/dataflow.ts | 9 - .../database/src/constants/monitor.ts | 34 - release-v5.1/database/src/hooks/driver.tsx | 364 - .../database/src/hooks/useClientSideValue.tsx | 11 - .../database/src/hooks/useConfirm.tsx | 82 - .../database/src/hooks/useLoading.tsx | 40 - release-v5.1/database/src/hooks/useScreen.ts | 25 - release-v5.1/database/src/instrumentation.ts | 30 - release-v5.1/database/src/pages/404.tsx | 13 - release-v5.1/database/src/pages/_document.tsx | 21 - .../components/Migrate/empty.module.scss | 6 - .../db/detail/components/Migrate/empty.tsx | 23 - .../db/detail/components/StopBackupModal.tsx | 133 - .../db/detail/components/empty.module.scss | 6 - .../src/pages/db/detail/components/empty.tsx | 23 - .../src/pages/db/detail/index.module.scss | 55 - .../db/edit/components/index.module.scss | 49 - .../src/pages/db/edit/index.module.scss | 3 - .../db/migrate/components/index.module.scss | 49 - .../src/pages/db/migrate/index.module.scss | 3 - .../pages/dbs/components/empty.module.scss | 11 - .../database/src/pages/dbs/index.module.scss | 0 .../database/src/services/kubernet.ts | 9 - release-v5.1/database/src/store/global.ts | 37 - release-v5.1/database/src/store/guide.ts | 48 - release-v5.1/database/src/store/hostConfig.ts | 36 - release-v5.1/database/src/styles/global.scss | 34 - release-v5.1/database/src/styles/reset.scss | 191 - .../src/types/apis/backup/delete-backup.ts | 11 - .../types/apis/database/delete-database.ts | 10 - .../src/types/apis/database/pause-database.ts | 10 - .../src/types/apis/database/start-database.ts | 10 - .../types/apis/database/update-database.ts | 70 - .../apis/network/disable-public-access.ts | 17 - .../apis/network/enable-public-access.ts | 17 - .../apis/v2alpha/backup/delete-backup.ts | 5 - .../apis/v2alpha/database/delete-database.ts | 5 - .../apis/v2alpha/database/pause-database.ts | 5 - .../apis/v2alpha/database/restart-database.ts | 5 - .../apis/v2alpha/database/start-database.ts | 5 - .../apis/v2alpha/database/update-database.ts | 68 - .../v2alpha/network/disable-public-access.ts | 15 - .../v2alpha/network/enable-public-access.ts | 15 - release-v5.1/database/src/types/config.ts | 65 - release-v5.1/database/src/types/i18next.d.ts | 32 - release-v5.1/database/src/types/index.d.ts | 8 - release-v5.1/database/src/types/monitor.d.ts | 84 - release-v5.1/database/src/types/response.ts | 34 - .../database/src/types/schemas/logs.ts | 33 - .../database/src/types/schemas/monitor.ts | 11 - .../src/types/schemas/v2alpha/logs.ts | 33 - .../src/types/schemas/v2alpha/monitor.ts | 11 - .../database/src/types/v2alpha/error.ts | 524 - .../database/src/utils/cookieUtils.ts | 15 - .../database/src/utils/i18n-client.ts | 12 - release-v5.1/database/src/utils/i18n.ts | 11 - .../database/src/utils/kubeFileSystem.ts | 476 - release-v5.1/database/src/utils/timeRange.ts | 73 - release-v5.1/database/tsconfig.json | 11 - release-v5.1/package.json | 63 - release-v5.1/packages/ui/.eslintrc.json | 3 - release-v5.1/packages/ui/package.json | 35 - release-v5.1/packages/ui/rollup.config.js | 32 - .../ui/src/components/AutoComplete/index.tsx | 180 - .../ui/src/components/EditTabs/index.tsx | 92 - .../packages/ui/src/components/Menu/index.tsx | 56 - .../ui/src/components/Message/index.tsx | 133 - .../ui/src/components/MySlider/index.tsx | 71 - .../ui/src/components/MyTable/index.tsx | 75 - .../ui/src/components/MyTooltip/index.tsx | 23 - .../ui/src/components/RangeInput/index.tsx | 90 - .../ui/src/components/RangeSlider/index.tsx | 57 - .../ui/src/components/Select/index.tsx | 176 - .../packages/ui/src/components/Tabs/index.tsx | 78 - .../packages/ui/src/components/Tip/index.tsx | 69 - .../ui/src/components/YamlCode/YamlCode.tsx | 52 - .../ui/src/components/YamlCode/hljs.ts | 115 - .../src/components/YamlCode/index.module.scss | 6 - .../ui/src/components/YamlCode/index.ts | 2 - .../ui/src/components/icons/AddIcon.tsx | 9 - .../components/icons/ArrowDownSLineIcon.tsx | 9 - .../components/icons/ArrowExchangeIcon.tsx | 19 - .../ui/src/components/icons/BucketIcon.tsx | 10 - .../ui/src/components/icons/CancelIcon.tsx | 16 - .../ui/src/components/icons/ChangeIcon.tsx | 27 - .../src/components/icons/ClearOutlineIcon.tsx | 9 - .../ui/src/components/icons/CloseIcon.tsx | 22 - .../ui/src/components/icons/CopyIcon.tsx | 15 - .../src/components/icons/CreateFolderIcon.tsx | 9 - .../src/components/icons/CurrencySymbol.tsx | 176 - .../ui/src/components/icons/DeleteIcon.tsx | 9 - .../src/components/icons/DetailsMoreIcon.tsx | 9 - .../ui/src/components/icons/DnsIcon.tsx | 9 - .../ui/src/components/icons/DocsIcon.tsx | 23 - .../ui/src/components/icons/DownloadIcon.tsx | 9 - .../ui/src/components/icons/EditIcon.tsx | 24 - .../ui/src/components/icons/ExchangeIcon.tsx | 21 - .../src/components/icons/ExpandMoreIcon.tsx | 9 - .../ui/src/components/icons/FileIcon.tsx | 9 - .../ui/src/components/icons/FolderIcon.tsx | 9 - .../ui/src/components/icons/GeneralIcon.tsx | 20 - .../ui/src/components/icons/GithubIcon.tsx | 19 - .../ui/src/components/icons/GoogleIcon.tsx | 30 - .../ui/src/components/icons/GroupAdd.tsx | 10 - .../src/components/icons/InfoCircleIcon.tsx | 9 - .../ui/src/components/icons/InfoIcon.tsx | 9 - .../ui/src/components/icons/LeftArrowIcon.tsx | 9 - .../ui/src/components/icons/LinkIcon.tsx | 9 - .../ui/src/components/icons/ListCheckIcon.tsx | 18 - .../ui/src/components/icons/ListIcon.tsx | 21 - .../ui/src/components/icons/LogoutIcon.tsx | 22 - .../ui/src/components/icons/MonitorIcon.tsx | 19 - .../ui/src/components/icons/MoreIcon.tsx | 9 - .../src/components/icons/NotificationIcon.tsx | 20 - .../ui/src/components/icons/PortIcon.tsx | 34 - .../ui/src/components/icons/ProviderIcon.tsx | 9 - .../ui/src/components/icons/RefreshIcon.tsx | 10 - .../ui/src/components/icons/RightArrow.tsx | 19 - .../ui/src/components/icons/SealosCoin.tsx | 41 - .../ui/src/components/icons/SearchIcon.tsx | 9 - .../ui/src/components/icons/SettingIcon.tsx | 28 - .../components/icons/SortPolygonDownIcon.tsx | 9 - .../components/icons/SortPolygonUpIcon.tsx | 9 - .../ui/src/components/icons/StorageIcon.tsx | 20 - .../ui/src/components/icons/SuccessIcon.tsx | 20 - .../ui/src/components/icons/UploadIcon.tsx | 9 - .../src/components/icons/VisibilityIcon.tsx | 9 - .../ui/src/components/icons/WarnIcon.tsx | 16 - .../src/components/icons/WarnTriangleIcon.tsx | 28 - .../ui/src/components/icons/WarningIcon.tsx | 20 - .../ui/src/components/icons/WebHostIcon.tsx | 28 - .../ui/src/components/icons/WechatIcon.tsx | 24 - .../src/components/icons/line/WarnTriange.tsx | 25 - .../packages/ui/src/components/index.ts | 125 - release-v5.1/packages/ui/src/index.ts | 4 - release-v5.1/packages/ui/src/theme/colors.ts | 118 - .../ui/src/theme/components/Button.ts | 103 - .../packages/ui/src/theme/components/Input.ts | 52 - .../packages/ui/src/theme/components/Modal.ts | 38 - .../ui/src/theme/components/NumberInput.ts | 30 - .../ui/src/theme/components/Select.ts | 20 - .../ui/src/theme/components/Slider.ts | 15 - .../ui/src/theme/components/Switch.ts | 15 - .../packages/ui/src/theme/components/Tag.ts | 17 - .../ui/src/theme/components/Textarea.ts | 23 - .../ui/src/theme/components/YamlCode.ts | 7 - .../packages/ui/src/theme/components/index.ts | 29 - release-v5.1/packages/ui/src/theme/index.ts | 4 - release-v5.1/packages/ui/src/theme/theme.ts | 51 - release-v5.1/packages/ui/tsconfig.json | 8 - release-v5.1/pnpm-lock.yaml | 12067 ---------------- release-v5.1/pnpm-workspace.yaml | 3 - release-v5.1/tsconfig.base.json | 18 - release-v5.1/tsconfig.deps.json | 6 - release-v5.1/tsconfig.json | 7 - release-v5.1/tsconfig.web.json | 8 - scripts/prepare-bundle.sh | 9 +- scripts/test-bundle.py | 2 +- tests/support/source.cjs | 23 + tests/test_deployment_compatibility.py | 23 +- tests/test_host_config.cjs | 15 +- tests/test_kubeblocks.cjs | 165 + tests/test_metrics_sdk.cjs | 9 +- tests/test_release_config.cjs | 21 +- tests/test_sealox_compatibility.cjs | 22 +- main/tsconfig.base.json => tsconfig.base.json | 0 main/tsconfig.deps.json => tsconfig.deps.json | 0 main/tsconfig.json => tsconfig.json | 0 main/tsconfig.web.json => tsconfig.web.json | 0 1235 files changed, 2336 insertions(+), 26389 deletions(-) rename main/.dockerignore => .dockerignore (84%) rename main/.gitignore => .gitignore (89%) rename main/.npmrc => .npmrc (100%) rename main/.nvmrc => .nvmrc (100%) rename main/.prettierignore => .prettierignore (100%) rename main/.prettierrc.js => .prettierrc.js (100%) rename main/Dockerfile => Dockerfile (91%) rename release-v5.1/Makefile => Makefile (59%) rename {main/database => database}/.dockerignore (100%) create mode 100644 database/.env.template rename {main/database => database}/.eslintrc.json (100%) rename {main/database => database}/.gitignore (93%) rename {main/database => database}/.prettierignore (100%) rename {main/database => database}/.prettierrc.js (100%) rename {main/database => database}/.vscode/settings.json (100%) rename {main/database => database}/Makefile (100%) rename {main/database => database}/README.md (100%) rename {main/database => database}/__tests__/components/.gitkeep (100%) rename {main/database => database}/__tests__/unit/.gitkeep (100%) rename {release-v5.1/database/__tests__/unit/utils => database/__tests__/unit/kb08}/parameterConfig.test.ts (96%) rename {release-v5.1/database/__tests__/unit/utils => database/__tests__/unit/kb08}/reconfigureHistory.test.ts (94%) rename {release-v5.1/database/__tests__/unit/utils => database/__tests__/unit/kb08}/vlogsTime.test.ts (76%) rename {main/database => database}/data/config.example.yaml (91%) rename release-v5.1/database/data/config.example.yaml => database/data/config.kb08.example.yaml (88%) rename {main/database => database}/deploy/Kubefile (100%) rename {main/database => database}/deploy/charts/database-frontend/Chart.yaml (100%) rename {main/database => database}/deploy/charts/database-frontend/database-frontend-values.yaml (90%) rename {main/database => database}/deploy/charts/database-frontend/templates/_helpers.tpl (100%) rename {main/database => database}/deploy/charts/database-frontend/templates/app.yaml (100%) rename {main/database => database}/deploy/charts/database-frontend/templates/configmap.yaml (84%) rename {main/database => database}/deploy/charts/database-frontend/templates/deployment.yaml (100%) rename {main/database => database}/deploy/charts/database-frontend/templates/ingress.yaml (100%) rename {main/database => database}/deploy/charts/database-frontend/templates/rbac.yaml (100%) rename {main/database => database}/deploy/charts/database-frontend/templates/service.yaml (100%) rename {main/database => database}/deploy/charts/database-frontend/values.yaml (93%) rename {main/database => database}/deploy/database-frontend-entrypoint.sh (96%) rename {main/database => database}/deploy/scripts/update-backup-label.sh (100%) rename {main/database => database}/global.d.ts (62%) rename {main/database => database}/next-i18next.config.js (100%) rename {release-v5.1/database => database}/next.config.js (89%) rename {main/database => database}/package.json (94%) rename {main/database => database}/public/favicon.ico (100%) rename {main/database => database}/public/guide-image.png (100%) rename {main/database => database}/public/images/apecloud-mysql.svg (100%) rename {main/database => database}/public/images/clickhouse.svg (100%) rename {main/database => database}/public/images/kafka.svg (100%) rename {main/database => database}/public/images/milvus.svg (100%) rename {main/database => database}/public/images/mongodb.svg (100%) rename {main/database => database}/public/images/mysql.svg (100%) rename {release-v5.1/database => database}/public/images/polardbx.svg (100%) rename {main/database => database}/public/images/postgresql.svg (100%) rename {main/database => database}/public/images/pulsar.svg (100%) rename {main/database => database}/public/images/qdrant.svg (100%) rename {main/database => database}/public/images/redis.svg (100%) rename {main/database => database}/public/images/weaviate.svg (100%) rename {release-v5.1/database/public/locales => database/public/locales-kb08}/en/common.json (100%) rename {release-v5.1/database/public/locales => database/public/locales-kb08}/zh/common.json (100%) rename {main/database => database}/public/locales/en/common.json (100%) rename {main/database => database}/public/locales/zh/common.json (100%) rename {main/database => database}/public/logo.svg (100%) rename {main/database => database}/public/redirect.html (100%) rename {main/database => database}/src/api/backup.ts (78%) rename {main/database => database}/src/api/db.ts (96%) rename {main/database => database}/src/api/migrate.ts (100%) rename {main/database => database}/src/api/platform.ts (78%) rename {main/database => database}/src/api/tools.ts (100%) rename {main/database => database}/src/components/BaseTable/SwitchPage.tsx (100%) rename {main/database => database}/src/components/BaseTable/baseTable.tsx (100%) rename {main/database => database}/src/components/BaseTable/customMenu.tsx (100%) rename {main/database => database}/src/components/ButtonGroup/index.tsx (100%) rename {main/database => database}/src/components/CodeBlock/index.tsx (100%) rename {main/database => database}/src/components/DBStatusTag/index.tsx (100%) rename {main/database => database}/src/components/DataPicker/index.tsx (99%) rename {main/database => database}/src/components/ErrorLog/LogCounts.tsx (100%) rename {main/database => database}/src/components/ErrorLog/LogFilter.tsx (99%) rename {main/database => database}/src/components/ErrorLog/LogTable.tsx (100%) rename {main/database => database}/src/components/ErrorModal/index.tsx (100%) rename {main/database => database}/src/components/FileSelect/index.tsx (98%) rename {main/database => database}/src/components/FormControl/index.tsx (100%) rename {main/database => database}/src/components/Icon/icons/add.svg (100%) rename {main/database => database}/src/components/Icon/icons/analyze.svg (100%) rename {main/database => database}/src/components/Icon/icons/arrowDown.svg (100%) rename {main/database => database}/src/components/Icon/icons/arrowLeft.svg (100%) rename {main/database => database}/src/components/Icon/icons/arrowUp.svg (100%) rename {main/database => database}/src/components/Icon/icons/backup.svg (100%) rename {main/database => database}/src/components/Icon/icons/backupSettings.svg (100%) rename {main/database => database}/src/components/Icon/icons/book.svg (100%) rename {main/database => database}/src/components/Icon/icons/calendar.svg (100%) rename {main/database => database}/src/components/Icon/icons/change.svg (100%) rename {main/database => database}/src/components/Icon/icons/chevron-down.svg (100%) rename {main/database => database}/src/components/Icon/icons/config.svg (100%) rename {main/database => database}/src/components/Icon/icons/configmap.svg (100%) rename {main/database => database}/src/components/Icon/icons/connection.svg (100%) rename {main/database => database}/src/components/Icon/icons/continue.svg (100%) rename {main/database => database}/src/components/Icon/icons/copy.svg (100%) rename {main/database => database}/src/components/Icon/icons/currency.svg (100%) rename {main/database => database}/src/components/Icon/icons/delete.svg (100%) rename {main/database => database}/src/components/Icon/icons/detail.svg (100%) rename {main/database => database}/src/components/Icon/icons/docs.svg (100%) rename {main/database => database}/src/components/Icon/icons/download.svg (100%) rename {main/database => database}/src/components/Icon/icons/edit.svg (100%) rename {main/database => database}/src/components/Icon/icons/emptyChart.svg (100%) rename {main/database => database}/src/components/Icon/icons/error.svg (100%) rename {main/database => database}/src/components/Icon/icons/export.svg (100%) rename {main/database => database}/src/components/Icon/icons/file.svg (100%) rename {main/database => database}/src/components/Icon/icons/formInfo.svg (100%) rename {main/database => database}/src/components/Icon/icons/gift.svg (100%) rename {main/database => database}/src/components/Icon/icons/help.svg (100%) rename {main/database => database}/src/components/Icon/icons/import.svg (100%) rename {main/database => database}/src/components/Icon/icons/info.svg (100%) rename {main/database => database}/src/components/Icon/icons/instance.svg (100%) rename {main/database => database}/src/components/Icon/icons/loading.svg (100%) rename {main/database => database}/src/components/Icon/icons/log.svg (100%) rename {main/database => database}/src/components/Icon/icons/logo-linear.svg (100%) rename {main/database => database}/src/components/Icon/icons/logo.svg (100%) rename {main/database => database}/src/components/Icon/icons/monitor.svg (100%) rename {main/database => database}/src/components/Icon/icons/more.svg (100%) rename {main/database => database}/src/components/Icon/icons/noEvents.svg (100%) rename {main/database => database}/src/components/Icon/icons/overview.svg (100%) rename {main/database => database}/src/components/Icon/icons/pause.svg (100%) rename {main/database => database}/src/components/Icon/icons/plus.svg (100%) rename {main/database => database}/src/components/Icon/icons/podList.svg (100%) rename {main/database => database}/src/components/Icon/icons/pods.svg (100%) rename {main/database => database}/src/components/Icon/icons/read.svg (100%) rename {main/database => database}/src/components/Icon/icons/refresh.svg (100%) rename {main/database => database}/src/components/Icon/icons/restart.svg (100%) rename {main/database => database}/src/components/Icon/icons/restore.svg (100%) rename {main/database => database}/src/components/Icon/icons/search.svg (100%) rename {main/database => database}/src/components/Icon/icons/settings.svg (100%) rename {main/database => database}/src/components/Icon/icons/slider.svg (100%) rename {main/database => database}/src/components/Icon/icons/start.svg (100%) rename {main/database => database}/src/components/Icon/icons/statusDetail.svg (100%) rename {main/database => database}/src/components/Icon/icons/success.svg (100%) rename {main/database => database}/src/components/Icon/icons/target.svg (100%) rename {main/database => database}/src/components/Icon/icons/terminal.svg (100%) rename {main/database => database}/src/components/Icon/icons/textRecognition.svg (100%) rename {main/database => database}/src/components/Icon/icons/time.svg (100%) rename {main/database => database}/src/components/Icon/icons/to.svg (100%) rename {main/database => database}/src/components/Icon/icons/unread.svg (100%) rename {main/database => database}/src/components/Icon/icons/upload.svg (100%) rename {main/database => database}/src/components/Icon/icons/upperRight.svg (100%) rename {main/database => database}/src/components/Icon/icons/warning.svg (100%) rename {main/database => database}/src/components/Icon/icons/warningInfo.svg (100%) rename {main/database => database}/src/components/Icon/index.tsx (100%) rename {main/database => database}/src/components/Icons/InfoCircleIcon.tsx (100%) rename {main/database => database}/src/components/InsufficientQuotaDialog.tsx (100%) rename {main/database => database}/src/components/LogBarChart/index.tsx (100%) rename {main/database => database}/src/components/MonitorChart/index.tsx (100%) rename {main/database => database}/src/components/MyTooltip/index.tsx (100%) rename {main/database => database}/src/components/PodStatus/index.tsx (96%) rename {main/database => database}/src/components/PriceBox/index.tsx (97%) rename {main/database => database}/src/components/QuotaBox/index.tsx (97%) rename {main/database => database}/src/components/RangeDate/index.tsx (100%) rename {main/database => database}/src/components/RangeDate/style.module.scss (100%) rename {main/database => database}/src/components/RangeSlider/index.tsx (100%) rename {main/database => database}/src/components/Sidebar/index.tsx (100%) rename {main/database => database}/src/components/Textarea/TagTextarea.tsx (98%) rename {main/database => database}/src/components/Tip/index.tsx (100%) rename {main/database => database}/src/components/YamlCode/hljs.ts (100%) rename {main/database => database}/src/components/YamlCode/index.module.scss (100%) rename {main/database => database}/src/components/YamlCode/index.tsx (100%) rename {main/database => database}/src/config.ts (100%) rename {main/database => database}/src/config/vlogs.ts (100%) rename {main/database => database}/src/constants/backup.ts (100%) rename {main/database => database}/src/constants/dataflow.ts (100%) rename {main/database => database}/src/constants/db.ts (99%) rename {main/database => database}/src/constants/editApp.ts (100%) rename {main/database => database}/src/constants/log.ts (100%) rename {main/database => database}/src/constants/monitor.ts (100%) rename {release-v5.1/database => database}/src/constants/theme.ts (94%) rename {main/database => database}/src/hooks/driver.tsx (100%) rename {main/database => database}/src/hooks/useClientAppConfig.ts (100%) rename {main/database => database}/src/hooks/useClientSideValue.tsx (100%) rename {main/database => database}/src/hooks/useConfirm.tsx (100%) rename {release-v5.1/database => database}/src/hooks/useCopyData.ts (93%) rename {main/database => database}/src/hooks/useDBOperation.ts (98%) rename {main/database => database}/src/hooks/useLoading.tsx (100%) rename {main/database => database}/src/hooks/useScreen.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/api/backup.ts (53%) rename {release-v5.1/database/src => database/src/implementations/kb08}/api/db.ts (88%) rename {release-v5.1/database/src => database/src/implementations/kb08}/api/migrate.ts (87%) rename {release-v5.1/database/src => database/src/implementations/kb08}/api/platform.ts (66%) rename {release-v5.1/database/src => database/src/implementations/kb08}/components/ApiDocs.tsx (78%) rename {release-v5.1/database/src => database/src/implementations/kb08}/components/ApiV2AlphaDocs.tsx (78%) rename {release-v5.1/database/src => database/src/implementations/kb08}/components/BaseTable/customMenu.tsx (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/components/DBStatusTag/index.tsx (95%) rename {release-v5.1/database/src => database/src/implementations/kb08}/components/DataPicker/index.tsx (99%) rename {release-v5.1/database/src => database/src/implementations/kb08}/components/ErrorLog/LogFilter.tsx (98%) rename {release-v5.1/database/src => database/src/implementations/kb08}/components/ErrorLog/LogTable.tsx (99%) rename {release-v5.1/database/src => database/src/implementations/kb08}/components/ErrorModal/index.tsx (97%) rename {release-v5.1/database/src => database/src/implementations/kb08}/components/PodStatus/index.tsx (91%) rename {release-v5.1/database/src => database/src/implementations/kb08}/components/PriceBox/index.tsx (95%) rename {release-v5.1/database/src => database/src/implementations/kb08}/components/QuotaBox/index.tsx (97%) rename {release-v5.1/database/src => database/src/implementations/kb08}/components/Sidebar/index.tsx (94%) create mode 100644 database/src/implementations/kb08/config.ts rename {release-v5.1/database/src => database/src/implementations/kb08}/config/vlogs.ts (87%) rename {release-v5.1/database/src => database/src/implementations/kb08}/constants/backup.ts (95%) rename {release-v5.1/database/src => database/src/implementations/kb08}/constants/db.ts (99%) rename {release-v5.1/database/src => database/src/implementations/kb08}/constants/editApp.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/constants/log.ts (97%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/_app.tsx (89%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api-docs.tsx (50%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/adapter/mongodb.ts (89%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/applyReconfigureOps.ts (84%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/applyYamlList.ts (73%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/backup/create.ts (82%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/backup/delBackup.ts (82%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/backup/getBackupList.ts (80%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/backup/getBackups.ts (68%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/backup/updatePolicy.ts (83%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/createDB.ts (89%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/db/editPassword.ts (87%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/db/getDatabases.ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/db/getTables.ts (87%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/delDBByName.ts (92%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/delServiceByName.ts (73%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/getAddonList.ts (87%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/getConfigByName.ts (91%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/getDBByName.ts (71%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/getDBEvents.ts (74%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/getDBList.ts (69%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/getEnv.ts (88%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/getSecretByName.ts (73%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/getServiceByName.ts (75%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/getStatefulSetByName.ts (83%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/guide/checkTask.ts (83%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/guide/getBonus.ts (86%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/guide/getTasks.ts (82%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/logs/get.ts (70%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/logs/getCounts.ts (79%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/logs/getFiles.ts (80%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/migrate/createDump.ts (91%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/migrate/delJobByName.ts (80%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/migrate/delete.ts (81%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/migrate/getJobByName.ts (75%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/migrate/getLogByName.ts (84%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/migrate/getPodList.ts (76%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/migrate/list.ts (80%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/minio/upload.ts (91%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getAbortedConnections.ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getActiveConnections.ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getBlockReadTime.ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getBlockWriteTime.ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getCPU.ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getCurrentConnections.ts (87%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getDataBaseSize.ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getDurationTransaction.ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getMemory.ts (82%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getMongdbPerformance.ts (87%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getMonitorData.ts (90%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getMysqlInnoDB.ts (81%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getMysqlSlowQueries.ts (84%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getMysqlTableLocks.ts (84%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getRedisPerDB.ts (83%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getRedisPerformance.ts (87%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getRollback.ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getRunningTime.ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/monitor/getTransactions.ts (86%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/opsrequest/list.ts (91%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/opsrequest/operationlog.ts (79%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/pauseDBByName.ts (82%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/platform/getClientAppConfig.ts (83%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/platform/getQuota.ts (66%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/platform/getVersion.ts (89%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/platform/paymentConfig.ts (95%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/platform/resourcePrice.ts (86%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/pod/getPodEvents.ts (77%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/pod/getPodEventsAnalyses.ts (91%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/pod/getPodLogs.ts (92%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/pod/getPodStatus.ts (74%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/pod/getPodsByDBName.ts (71%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/pod/restartPod.ts (72%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/pod/switchPodMs.ts (69%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/proxy/get_db_alerts.ts (87%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/remark.ts (80%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/startDBByName.ts (79%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v1/database.ts (87%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v1/database/[databaseName].ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v1/database/[databaseName]/backup/[backupName].ts (93%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v1/database/[databaseName]/backup/index.ts (91%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v1/database/[databaseName]/disablePublic.ts (92%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v1/database/[databaseName]/enablePublic.ts (88%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v1/database/[databaseName]/pause.ts (76%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v1/database/[databaseName]/start.ts (76%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v1/database/list.ts (56%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v1/database/version/list.ts (82%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v1/logs/files.ts (82%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v1/logs/index.ts (74%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v1/monitor/data.ts (91%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v1/openapi.ts (66%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/databases.ts (84%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/databases/[databaseName].ts (89%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/databases/[databaseName]/backups/[backupName].ts (92%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]/restore.ts (95%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/databases/[databaseName]/backups/index.ts (93%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/databases/[databaseName]/disable-public.ts (94%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/databases/[databaseName]/enable-public.ts (89%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/databases/[databaseName]/pause.ts (84%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/databases/[databaseName]/restart.ts (84%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/databases/[databaseName]/start.ts (84%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/databases/versions.ts (88%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/logs/files.ts (86%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/logs/index.ts (79%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/monitor/data.ts (94%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/v2alpha/openapi.ts (88%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/vlogs/database-log-counts.ts (93%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/vlogs/database-logs.ts (95%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/api/vlogs/database-pods.ts (89%) create mode 100644 database/src/implementations/kb08/pages/backups/index.server.ts rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/backups/index.tsx (95%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/AppBaseInfo.tsx (97%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/BackupModal.tsx (96%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/BackupTable.tsx (95%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/DataImport.tsx (95%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/DelModal.tsx (96%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/DumpImport/index.tsx (97%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/ErrorLog/RunTimeLog.tsx (95%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/ErrorLog/index.tsx (94%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/Header.tsx (96%) rename {main/database/src => database/src/implementations/kb08}/pages/db/detail/components/LogsModal.tsx (94%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/Migrate/LogsModal.tsx (94%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/Migrate/MigrateStatus.tsx (92%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/Migrate/Table.tsx (96%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/Monitor/ChartTemplate.tsx (98%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/Monitor/RunningTime.tsx (92%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/Monitor/index.tsx (98%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/OperationLog.tsx (96%) rename {main/database/src => database/src/implementations/kb08}/pages/db/detail/components/PodDetailModal.tsx (96%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/Pods.tsx (95%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/Reconfigure/ConfigTable.tsx (97%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/Reconfigure/History.tsx (93%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/Reconfigure/index.tsx (97%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/RestoreModal.tsx (94%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/components/UpdateModal.tsx (96%) create mode 100644 database/src/implementations/kb08/pages/db/detail/index.server.ts rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/detail/index.tsx (90%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/edit/components/Form.tsx (98%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/edit/components/Header.tsx (98%) rename {main/database/src => database/src/implementations/kb08}/pages/db/edit/components/Yaml.tsx (94%) create mode 100644 database/src/implementations/kb08/pages/db/edit/index.server.ts rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/edit/index.tsx (92%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/migrate/components/Form.tsx (97%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/migrate/components/Header.tsx (95%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/migrate/components/Prepare.tsx (95%) rename {main/database/src => database/src/implementations/kb08}/pages/db/migrate/components/Yaml.tsx (94%) create mode 100644 database/src/implementations/kb08/pages/db/migrate/index.server.ts rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/db/migrate/index.tsx (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/dbs/components/dbList.tsx (96%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/dbs/components/empty.tsx (95%) create mode 100644 database/src/implementations/kb08/pages/dbs/index.server.ts rename {main/database/src => database/src/implementations/kb08}/pages/dbs/index.tsx (83%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/doc/v2alpha.tsx (50%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/healthz.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/icons/index.tsx (95%) rename {release-v5.1/database/src => database/src/implementations/kb08}/pages/redirect.tsx (94%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/backend/apis/create-database.ts (89%) rename {main/database/src => database/src/implementations/kb08}/services/backend/apis/delete-database.ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/backend/apis/get-database.ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/backend/apis/list-database.ts (84%) rename {main/database/src/services/backend/v2alpha => database/src/implementations/kb08/services/backend/apis}/pause-database.ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/backend/apis/start-database.ts (81%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/backend/apis/update-database.ts (96%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/backend/auth.ts (100%) rename {main/database/src => database/src/implementations/kb08}/services/backend/dataflow.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/backend/kubernetes.ts (98%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/backend/response.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/backend/v2alpha/create-database.ts (90%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/backend/v2alpha/delete-database.ts (94%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/backend/v2alpha/get-database.ts (96%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/backend/v2alpha/list-database.ts (90%) rename {release-v5.1/database/src/services/backend/apis => database/src/implementations/kb08/services/backend/v2alpha}/pause-database.ts (84%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/backend/v2alpha/restart-database.ts (74%) rename {main/database/src => database/src/implementations/kb08}/services/backend/v2alpha/start-database.ts (83%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/backend/v2alpha/update-database.ts (95%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/monitorFetch.ts (96%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/request.ts (96%) rename {release-v5.1/database/src => database/src/implementations/kb08}/services/streamFetch.ts (96%) rename {release-v5.1/database/src => database/src/implementations/kb08}/store/date.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/store/db.ts (93%) rename {release-v5.1/database/src => database/src/implementations/kb08}/store/env.ts (87%) rename {release-v5.1/database/src => database/src/implementations/kb08}/store/static.ts (83%) rename {release-v5.1/database/src => database/src/implementations/kb08}/store/user.ts (89%) rename {main/database/src => database/src/implementations/kb08}/types/apis/backup/create-backup.ts (100%) rename {main/database/src => database/src/implementations/kb08}/types/apis/backup/restore-backup.ts (100%) rename {main/database/src => database/src/implementations/kb08}/types/apis/database/create-database.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/apis/database/get-database.ts (100%) rename {main/database/src => database/src/implementations/kb08}/types/apis/database/list-database.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/apis/database/version/list.ts (63%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/apis/index.ts (97%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/apis/logs/data.ts (81%) rename {release-v5.1/database/src/types/apis/v2alpha => database/src/implementations/kb08/types/apis}/logs/file.ts (77%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/apis/v2alpha/backup/create-backup.ts (77%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/apis/v2alpha/backup/restore-backup.ts (89%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/apis/v2alpha/database/create-database.ts (68%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/apis/v2alpha/database/get-database.ts (62%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/apis/v2alpha/database/list-database.ts (62%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/apis/v2alpha/database/version/list.ts (63%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/apis/v2alpha/index.ts (98%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/apis/v2alpha/logs/data.ts (81%) rename {release-v5.1/database/src/types/apis => database/src/implementations/kb08/types/apis/v2alpha}/logs/file.ts (77%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/backup.d.ts (90%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/cluster.d.ts (99%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/db.d.ts (96%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/log.ts (87%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/migrate.d.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/schemas/backup.ts (92%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/schemas/db.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/schemas/v2alpha/backup.ts (93%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/schemas/v2alpha/db.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/types/user.d.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/adapt.ts (97%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/backupRemark.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/database.ts (98%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/healthz.ts (85%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/json2Yaml.ts (98%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/logParsers/LogParser.ts (94%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/logParsers/MongoLogParser.ts (98%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/logParsers/MysqlLogParser.ts (98%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/logParsers/PostgresLogParser.ts (99%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/logParsers/RedisLogParser.ts (98%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/parameterChanges.ts (99%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/parameterConfig.ts (96%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/parameterHistory.ts (97%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/reconfigureHistory.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/tools.ts (98%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/user.ts (100%) rename {release-v5.1/database/src => database/src/implementations/kb08}/utils/vlogsTime.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/404.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/_app.tsx (95%) rename {main/database/src => database/src/implementations/kb09}/pages/_document.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api-docs.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/adapter/mongodb.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/applyReconfigureOps.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/applyYamlList.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/backup/create.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/backup/delBackup.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/backup/getBackupList.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/backup/getBackups.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/backup/updatePolicy.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/createDB.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/db/editPassword.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/db/getDatabases.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/db/getTables.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/delDBByName.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/delServiceByName.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/getAddonList.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/getConfigByName.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/getDBByName.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/getDBEvents.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/getDBList.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/getSecretByName.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/getServiceByName.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/guide/checkTask.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/guide/getTasks.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/logs/get.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/logs/getCounts.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/logs/getFiles.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/migrate/createDump.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/migrate/delJobByName.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/migrate/delete.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/migrate/getJobByName.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/migrate/getLogByName.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/migrate/getPodList.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/migrate/list.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/minio/upload.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getAbortedConnections.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getActiveConnections.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getBlockReadTime.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getBlockWriteTime.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getCPU.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getCurrentConnections.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getDataBaseSize.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getDurationTransaction.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getMemory.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getMongdbPerformance.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getMonitorData.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getMysqlInnoDB.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getMysqlSlowQueries.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getMysqlTableLocks.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getRedisPerDB.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getRedisPerformance.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getRollback.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getRunningTime.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/monitor/getTransactions.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/opsrequest/list.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/opsrequest/operationlog.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/pauseDBByName.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/platform/getClientAppConfig.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/platform/getVersion.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/platform/resourcePrice.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/pod/getPodEvents.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/pod/getPodEventsAnalyses.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/pod/getPodLogs.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/pod/getPodStatus.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/pod/getPodsByDBName.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/pod/restartPod.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/pod/switchPodMs.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/proxy/get_db_alerts.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/remark.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/resolveDBConnectTarget.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/restoreBackup.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/startDBByName.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/database.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/database/[databaseName].ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/database/[databaseName]/backup/[backupName].ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/database/[databaseName]/backup/index.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/database/[databaseName]/disablePublic.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/database/[databaseName]/enablePublic.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/database/[databaseName]/pause.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/database/[databaseName]/restart.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/database/[databaseName]/start.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/database/list.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/database/version/list.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/logs/files.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/logs/index.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/monitor/data.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v1/openapi.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/databases.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/databases/[databaseName].ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/databases/[databaseName]/backups/[backupName].ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]/restore.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/databases/[databaseName]/backups/index.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/databases/[databaseName]/disable-public.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/databases/[databaseName]/enable-public.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/databases/[databaseName]/pause.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/databases/[databaseName]/restart.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/databases/[databaseName]/start.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/databases/versions.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/logs/files.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/logs/index.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/monitor/data.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/v2alpha/openapi.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/vlogs/database-log-counts.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/vlogs/database-logs.ts (100%) rename {main/database/src => database/src/implementations/kb09}/pages/api/vlogs/database-pods.ts (100%) create mode 100644 database/src/implementations/kb09/pages/backups/index.server.ts rename {main/database/src => database/src/implementations/kb09}/pages/backups/index.tsx (98%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/AppBaseInfo.tsx (99%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/BackupModal.tsx (99%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/BackupTable.tsx (99%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/DataImport.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/DelModal.tsx (98%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/DumpImport/index.tsx (99%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/ErrorLog/RunTimeLog.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/ErrorLog/index.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/Header.tsx (99%) rename {release-v5.1/database/src => database/src/implementations/kb09}/pages/db/detail/components/LogsModal.tsx (99%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/Migrate/LogsModal.tsx (98%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/Migrate/MigrateStatus.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/Migrate/Table.tsx (99%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/Migrate/empty.module.scss (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/Migrate/empty.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/Monitor/ChartTemplate.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/Monitor/RunningTime.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/Monitor/index.tsx (99%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/OperationLog.tsx (100%) rename {release-v5.1/database/src => database/src/implementations/kb09}/pages/db/detail/components/PodDetailModal.tsx (99%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/Pods.tsx (99%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/Reconfigure/ConfigTable.tsx (99%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/Reconfigure/History.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/Reconfigure/index.tsx (99%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/RestoreModal.tsx (98%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/StopBackupModal.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/UpdateModal.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/empty.module.scss (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/components/empty.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/index.module.scss (100%) create mode 100644 database/src/implementations/kb09/pages/db/detail/index.server.ts rename {main/database/src => database/src/implementations/kb09}/pages/db/detail/index.tsx (96%) rename {main/database/src => database/src/implementations/kb09}/pages/db/edit/components/Form.tsx (99%) rename {main/database/src => database/src/implementations/kb09}/pages/db/edit/components/Header.tsx (100%) rename {release-v5.1/database/src => database/src/implementations/kb09}/pages/db/edit/components/Yaml.tsx (98%) rename {main/database/src => database/src/implementations/kb09}/pages/db/edit/components/index.module.scss (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/edit/index.module.scss (100%) create mode 100644 database/src/implementations/kb09/pages/db/edit/index.server.ts rename {main/database/src => database/src/implementations/kb09}/pages/db/edit/index.tsx (98%) rename {main/database/src => database/src/implementations/kb09}/pages/db/migrate/components/Form.tsx (99%) rename {main/database/src => database/src/implementations/kb09}/pages/db/migrate/components/Header.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/migrate/components/Prepare.tsx (100%) rename {release-v5.1/database/src => database/src/implementations/kb09}/pages/db/migrate/components/Yaml.tsx (98%) rename {main/database/src => database/src/implementations/kb09}/pages/db/migrate/components/index.module.scss (100%) rename {main/database/src => database/src/implementations/kb09}/pages/db/migrate/index.module.scss (100%) create mode 100644 database/src/implementations/kb09/pages/db/migrate/index.server.ts rename {main/database/src => database/src/implementations/kb09}/pages/db/migrate/index.tsx (94%) rename {main/database/src => database/src/implementations/kb09}/pages/dbs/components/dbList.tsx (99%) rename {main/database/src => database/src/implementations/kb09}/pages/dbs/components/empty.module.scss (100%) rename {main/database/src => database/src/implementations/kb09}/pages/dbs/components/empty.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/dbs/index.module.scss (100%) create mode 100644 database/src/implementations/kb09/pages/dbs/index.server.ts rename {release-v5.1/database/src => database/src/implementations/kb09}/pages/dbs/index.tsx (90%) rename {main/database/src => database/src/implementations/kb09}/pages/doc/v2alpha.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/icons/index.tsx (100%) rename {main/database/src => database/src/implementations/kb09}/pages/redirect.tsx (100%) rename {main/database => database}/src/instrumentation.ts (100%) create mode 100644 database/src/kubeblocks/page.tsx create mode 100644 database/src/kubeblocks/version.ts create mode 100644 database/src/pages/404.tsx create mode 100644 database/src/pages/_app.tsx create mode 100644 database/src/pages/_document.tsx create mode 100644 database/src/pages/api-docs.tsx create mode 100644 database/src/pages/api/adapter/mongodb.ts create mode 100644 database/src/pages/api/applyReconfigureOps.ts create mode 100644 database/src/pages/api/applyYamlList.ts create mode 100644 database/src/pages/api/backup/create.ts create mode 100644 database/src/pages/api/backup/delBackup.ts create mode 100644 database/src/pages/api/backup/getBackupList.ts create mode 100644 database/src/pages/api/backup/getBackups.ts create mode 100644 database/src/pages/api/backup/updatePolicy.ts create mode 100644 database/src/pages/api/createDB.ts create mode 100644 database/src/pages/api/db/editPassword.ts create mode 100644 database/src/pages/api/db/getDatabases.ts create mode 100644 database/src/pages/api/db/getTables.ts create mode 100644 database/src/pages/api/delDBByName.ts create mode 100644 database/src/pages/api/delServiceByName.ts create mode 100644 database/src/pages/api/getAddonList.ts create mode 100644 database/src/pages/api/getConfigByName.ts create mode 100644 database/src/pages/api/getDBByName.ts create mode 100644 database/src/pages/api/getDBEvents.ts create mode 100644 database/src/pages/api/getDBList.ts create mode 100644 database/src/pages/api/getEnv.ts create mode 100644 database/src/pages/api/getSecretByName.ts create mode 100644 database/src/pages/api/getServiceByName.ts create mode 100644 database/src/pages/api/getStatefulSetByName.ts create mode 100644 database/src/pages/api/guide/checkTask.ts create mode 100644 database/src/pages/api/guide/getBonus.ts create mode 100644 database/src/pages/api/guide/getTasks.ts create mode 100644 database/src/pages/api/logs/get.ts create mode 100644 database/src/pages/api/logs/getCounts.ts create mode 100644 database/src/pages/api/logs/getFiles.ts create mode 100644 database/src/pages/api/migrate/createDump.ts create mode 100644 database/src/pages/api/migrate/delJobByName.ts create mode 100644 database/src/pages/api/migrate/delete.ts create mode 100644 database/src/pages/api/migrate/getJobByName.ts create mode 100644 database/src/pages/api/migrate/getLogByName.ts create mode 100644 database/src/pages/api/migrate/getPodList.ts create mode 100644 database/src/pages/api/migrate/list.ts create mode 100644 database/src/pages/api/minio/upload.ts create mode 100644 database/src/pages/api/monitor/getAbortedConnections.ts create mode 100644 database/src/pages/api/monitor/getActiveConnections.ts create mode 100644 database/src/pages/api/monitor/getBlockReadTime.ts create mode 100644 database/src/pages/api/monitor/getBlockWriteTime.ts create mode 100644 database/src/pages/api/monitor/getCPU.ts create mode 100644 database/src/pages/api/monitor/getCurrentConnections.ts create mode 100644 database/src/pages/api/monitor/getDataBaseSize.ts create mode 100644 database/src/pages/api/monitor/getDurationTransaction.ts create mode 100644 database/src/pages/api/monitor/getMemory.ts create mode 100644 database/src/pages/api/monitor/getMongdbPerformance.ts create mode 100644 database/src/pages/api/monitor/getMonitorData.ts create mode 100644 database/src/pages/api/monitor/getMysqlInnoDB.ts create mode 100644 database/src/pages/api/monitor/getMysqlSlowQueries.ts create mode 100644 database/src/pages/api/monitor/getMysqlTableLocks.ts create mode 100644 database/src/pages/api/monitor/getRedisPerDB.ts create mode 100644 database/src/pages/api/monitor/getRedisPerformance.ts create mode 100644 database/src/pages/api/monitor/getRollback.ts create mode 100644 database/src/pages/api/monitor/getRunningTime.ts create mode 100644 database/src/pages/api/monitor/getTransactions.ts create mode 100644 database/src/pages/api/opsrequest/list.ts create mode 100644 database/src/pages/api/opsrequest/operationlog.ts create mode 100644 database/src/pages/api/pauseDBByName.ts create mode 100644 database/src/pages/api/platform/getClientAppConfig.ts create mode 100644 database/src/pages/api/platform/getQuota.ts create mode 100644 database/src/pages/api/platform/getVersion.ts create mode 100644 database/src/pages/api/platform/paymentConfig.ts create mode 100644 database/src/pages/api/platform/resourcePrice.ts create mode 100644 database/src/pages/api/pod/getPodEvents.ts create mode 100644 database/src/pages/api/pod/getPodEventsAnalyses.ts create mode 100644 database/src/pages/api/pod/getPodLogs.ts create mode 100644 database/src/pages/api/pod/getPodStatus.ts create mode 100644 database/src/pages/api/pod/getPodsByDBName.ts create mode 100644 database/src/pages/api/pod/restartPod.ts create mode 100644 database/src/pages/api/pod/switchPodMs.ts create mode 100644 database/src/pages/api/proxy/get_db_alerts.ts create mode 100644 database/src/pages/api/remark.ts create mode 100644 database/src/pages/api/resolveDBConnectTarget.ts create mode 100644 database/src/pages/api/restoreBackup.ts create mode 100644 database/src/pages/api/startDBByName.ts create mode 100644 database/src/pages/api/v1/database.ts create mode 100644 database/src/pages/api/v1/database/[databaseName].ts create mode 100644 database/src/pages/api/v1/database/[databaseName]/backup/[backupName].ts create mode 100644 database/src/pages/api/v1/database/[databaseName]/backup/index.ts create mode 100644 database/src/pages/api/v1/database/[databaseName]/disablePublic.ts create mode 100644 database/src/pages/api/v1/database/[databaseName]/enablePublic.ts create mode 100644 database/src/pages/api/v1/database/[databaseName]/pause.ts create mode 100644 database/src/pages/api/v1/database/[databaseName]/restart.ts create mode 100644 database/src/pages/api/v1/database/[databaseName]/start.ts create mode 100644 database/src/pages/api/v1/database/list.ts create mode 100644 database/src/pages/api/v1/database/version/list.ts create mode 100644 database/src/pages/api/v1/logs/files.ts create mode 100644 database/src/pages/api/v1/logs/index.ts create mode 100644 database/src/pages/api/v1/monitor/data.ts create mode 100644 database/src/pages/api/v1/openapi.ts create mode 100644 database/src/pages/api/v2alpha/databases.ts create mode 100644 database/src/pages/api/v2alpha/databases/[databaseName].ts create mode 100644 database/src/pages/api/v2alpha/databases/[databaseName]/backups/[backupName].ts create mode 100644 database/src/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]/restore.ts create mode 100644 database/src/pages/api/v2alpha/databases/[databaseName]/backups/index.ts create mode 100644 database/src/pages/api/v2alpha/databases/[databaseName]/disable-public.ts create mode 100644 database/src/pages/api/v2alpha/databases/[databaseName]/enable-public.ts create mode 100644 database/src/pages/api/v2alpha/databases/[databaseName]/pause.ts create mode 100644 database/src/pages/api/v2alpha/databases/[databaseName]/restart.ts create mode 100644 database/src/pages/api/v2alpha/databases/[databaseName]/start.ts create mode 100644 database/src/pages/api/v2alpha/databases/versions.ts create mode 100644 database/src/pages/api/v2alpha/logs/files.ts create mode 100644 database/src/pages/api/v2alpha/logs/index.ts create mode 100644 database/src/pages/api/v2alpha/monitor/data.ts create mode 100644 database/src/pages/api/v2alpha/openapi.ts create mode 100644 database/src/pages/api/vlogs/database-log-counts.ts create mode 100644 database/src/pages/api/vlogs/database-logs.ts create mode 100644 database/src/pages/api/vlogs/database-pods.ts create mode 100644 database/src/pages/backups/index.tsx create mode 100644 database/src/pages/db/detail/index.tsx create mode 100644 database/src/pages/db/edit/index.tsx create mode 100644 database/src/pages/db/migrate/index.tsx create mode 100644 database/src/pages/dbs/index.tsx create mode 100644 database/src/pages/doc/v2alpha.tsx create mode 100644 database/src/pages/healthz.ts create mode 100644 database/src/pages/icons/index.tsx create mode 100644 database/src/pages/redirect.tsx rename {main/database => database}/src/services/backend/apis/create-database.ts (98%) rename {release-v5.1/database => database}/src/services/backend/apis/delete-database.ts (90%) rename {main/database => database}/src/services/backend/apis/get-database.ts (100%) rename {main/database => database}/src/services/backend/apis/list-database.ts (100%) rename {main/database => database}/src/services/backend/apis/pause-database.ts (95%) rename {main/database => database}/src/services/backend/apis/restart-database.ts (91%) rename {main/database => database}/src/services/backend/apis/start-database.ts (94%) rename {main/database => database}/src/services/backend/apis/update-database.ts (100%) rename {main/database => database}/src/services/backend/auth.ts (100%) rename {main/database => database}/src/services/backend/database-config.ts (100%) rename {release-v5.1/database => database}/src/services/backend/dataflow.ts (100%) rename {main/database => database}/src/services/backend/db-version.ts (100%) create mode 100644 database/src/services/backend/kubeblocks.ts rename {main/database => database}/src/services/backend/kubernetes.ts (100%) rename {main/database => database}/src/services/backend/middleware.ts (100%) rename {main/database => database}/src/services/backend/response.ts (100%) rename {main/database => database}/src/services/backend/v2alpha/create-database.ts (98%) rename {main/database => database}/src/services/backend/v2alpha/delete-database.ts (100%) rename {main/database => database}/src/services/backend/v2alpha/get-database.ts (100%) rename {main/database => database}/src/services/backend/v2alpha/list-database.ts (100%) rename {release-v5.1/database => database}/src/services/backend/v2alpha/pause-database.ts (96%) rename {main/database => database}/src/services/backend/v2alpha/restart-database.ts (92%) rename {release-v5.1/database => database}/src/services/backend/v2alpha/start-database.ts (95%) rename {main/database => database}/src/services/backend/v2alpha/update-database.ts (100%) rename {main/database => database}/src/services/kubernet.ts (100%) rename {main/database => database}/src/services/monitorFetch.ts (100%) rename {main/database => database}/src/services/request.ts (100%) rename {main/database => database}/src/services/streamFetch.ts (100%) rename {main/database => database}/src/store/date.ts (100%) rename {main/database => database}/src/store/db.ts (100%) rename {main/database => database}/src/store/global.ts (100%) rename {main/database => database}/src/store/guide.ts (100%) rename {main/database => database}/src/store/hostConfig.ts (100%) rename {main/database => database}/src/store/static.ts (93%) rename {main/database => database}/src/store/user.ts (100%) rename {main/database => database}/src/styles/global.scss (100%) rename {main/database => database}/src/styles/reset.scss (100%) rename {release-v5.1/database => database}/src/types/apis/backup/create-backup.ts (100%) rename {main/database => database}/src/types/apis/backup/delete-backup.ts (100%) rename {release-v5.1/database => database}/src/types/apis/backup/restore-backup.ts (100%) rename {release-v5.1/database => database}/src/types/apis/database/create-database.ts (100%) rename {main/database => database}/src/types/apis/database/delete-database.ts (100%) rename {main/database => database}/src/types/apis/database/get-database.ts (100%) rename {release-v5.1/database => database}/src/types/apis/database/list-database.ts (100%) rename {main/database => database}/src/types/apis/database/pause-database.ts (100%) rename {main/database => database}/src/types/apis/database/restart-database.ts (100%) rename {main/database => database}/src/types/apis/database/start-database.ts (100%) rename {main/database => database}/src/types/apis/database/update-database.ts (100%) rename {main/database => database}/src/types/apis/database/version/list.ts (100%) rename {main/database => database}/src/types/apis/index.ts (100%) rename {main/database => database}/src/types/apis/logs/data.ts (100%) rename {main/database => database}/src/types/apis/logs/file.ts (100%) rename {main/database => database}/src/types/apis/network/disable-public-access.ts (100%) rename {main/database => database}/src/types/apis/network/enable-public-access.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/backup/create-backup.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/backup/delete-backup.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/backup/restore-backup.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/database/create-database.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/database/delete-database.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/database/get-database.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/database/list-database.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/database/pause-database.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/database/restart-database.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/database/start-database.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/database/update-database.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/database/version/list.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/index.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/logs/data.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/logs/file.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/network/disable-public-access.ts (100%) rename {main/database => database}/src/types/apis/v2alpha/network/enable-public-access.ts (100%) rename {main/database => database}/src/types/backup.d.ts (100%) rename {main/database => database}/src/types/cluster.d.ts (100%) rename {main/database => database}/src/types/config.ts (75%) rename {main/database => database}/src/types/db.d.ts (100%) rename {main/database => database}/src/types/i18next.d.ts (87%) rename {main/database => database}/src/types/index.d.ts (100%) rename {main/database => database}/src/types/log.ts (100%) rename {main/database => database}/src/types/migrate.d.ts (100%) rename {main/database => database}/src/types/monitor.d.ts (100%) rename {main/database => database}/src/types/response.ts (100%) rename {main/database => database}/src/types/schemas/backup.ts (100%) rename {main/database => database}/src/types/schemas/db.ts (100%) rename {main/database => database}/src/types/schemas/logs.ts (100%) rename {main/database => database}/src/types/schemas/monitor.ts (100%) rename {main/database => database}/src/types/schemas/password.ts (100%) rename {main/database => database}/src/types/schemas/v2alpha/backup.ts (100%) rename {main/database => database}/src/types/schemas/v2alpha/db.ts (100%) rename {main/database => database}/src/types/schemas/v2alpha/logs.ts (100%) rename {main/database => database}/src/types/schemas/v2alpha/monitor.ts (100%) rename {main/database => database}/src/types/user.d.ts (100%) rename {main/database => database}/src/types/v2alpha/error.ts (100%) rename {main/database => database}/src/utils/adapt.ts (99%) rename {main/database => database}/src/utils/cookieUtils.ts (100%) rename {main/database => database}/src/utils/database.ts (100%) rename {main/database => database}/src/utils/i18n-client.ts (100%) rename {main/database => database}/src/utils/i18n.ts (54%) rename {main/database => database}/src/utils/json2Yaml.ts (99%) rename {main/database => database}/src/utils/kubeFileSystem.ts (100%) rename {main/database => database}/src/utils/logParsers/LogParser.ts (100%) rename {main/database => database}/src/utils/logParsers/MongoLogParser.ts (100%) rename {main/database => database}/src/utils/logParsers/MysqlLogParser.ts (100%) rename {main/database => database}/src/utils/logParsers/PostgresLogParser.ts (100%) rename {main/database => database}/src/utils/logParsers/RedisLogParser.ts (100%) rename {main/database => database}/src/utils/timeRange.ts (100%) rename {main/database => database}/src/utils/tools.ts (99%) rename {main/database => database}/src/utils/user.ts (100%) rename {main/database => database}/tsconfig.json (100%) rename {main/database => database}/vitest.config.mts (100%) rename {release-v5.1/database/deploy => deploy/kubeblocks-0.8}/Kubefile (100%) rename {release-v5.1/database => deploy/kubeblocks-0.8}/README.md (73%) rename {release-v5.1/database/deploy => deploy/kubeblocks-0.8}/charts/database-frontend/Chart.yaml (100%) rename {release-v5.1/database/deploy => deploy/kubeblocks-0.8}/charts/database-frontend/database-frontend-values.yaml (93%) rename {release-v5.1/database/deploy => deploy/kubeblocks-0.8}/charts/database-frontend/templates/_helpers.tpl (100%) rename {release-v5.1/database/deploy => deploy/kubeblocks-0.8}/charts/database-frontend/templates/app.yaml (100%) rename {release-v5.1/database/deploy => deploy/kubeblocks-0.8}/charts/database-frontend/templates/configmap.yaml (88%) rename {release-v5.1/database/deploy => deploy/kubeblocks-0.8}/charts/database-frontend/templates/deployment.yaml (100%) rename {release-v5.1/database/deploy => deploy/kubeblocks-0.8}/charts/database-frontend/templates/ingress.yaml (100%) rename {release-v5.1/database/deploy => deploy/kubeblocks-0.8}/charts/database-frontend/templates/rbac.yaml (95%) rename {release-v5.1/database/deploy => deploy/kubeblocks-0.8}/charts/database-frontend/templates/service.yaml (100%) rename {release-v5.1/database/deploy => deploy/kubeblocks-0.8}/charts/database-frontend/templates/tests/test-connection.yaml (100%) rename {release-v5.1/database/deploy => deploy/kubeblocks-0.8}/charts/database-frontend/values.yaml (94%) rename {release-v5.1/database/deploy => deploy/kubeblocks-0.8}/database-frontend-entrypoint.sh (97%) rename {release-v5.1/database/deploy => deploy/kubeblocks-0.8}/scripts/update-backup-label.sh (100%) delete mode 100644 main/Makefile delete mode 100644 main/README.md delete mode 100644 main/database/next.config.js delete mode 100644 main/database/src/constants/theme.ts delete mode 100644 main/database/src/hooks/useCopyData.ts delete mode 100644 main/packages/ui/.eslintrc.json delete mode 100644 main/packages/ui/package.json delete mode 100644 main/packages/ui/rollup.config.js delete mode 100644 main/packages/ui/src/components/AutoComplete/index.tsx delete mode 100644 main/packages/ui/src/components/EditTabs/index.tsx delete mode 100644 main/packages/ui/src/components/Menu/index.tsx delete mode 100644 main/packages/ui/src/components/Message/index.tsx delete mode 100644 main/packages/ui/src/components/MySlider/index.tsx delete mode 100644 main/packages/ui/src/components/MyTable/index.tsx delete mode 100644 main/packages/ui/src/components/MyTooltip/index.tsx delete mode 100644 main/packages/ui/src/components/RangeInput/index.tsx delete mode 100644 main/packages/ui/src/components/RangeSlider/index.tsx delete mode 100644 main/packages/ui/src/components/Select/index.tsx delete mode 100644 main/packages/ui/src/components/Tabs/index.tsx delete mode 100644 main/packages/ui/src/components/Tip/index.tsx delete mode 100644 main/packages/ui/src/components/YamlCode/YamlCode.tsx delete mode 100644 main/packages/ui/src/components/YamlCode/hljs.ts delete mode 100644 main/packages/ui/src/components/YamlCode/index.module.scss delete mode 100644 main/packages/ui/src/components/YamlCode/index.ts delete mode 100644 main/packages/ui/src/components/icons/AddIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/ArrowDownSLineIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/ArrowExchangeIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/BucketIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/CancelIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/ChangeIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/ClearOutlineIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/CloseIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/CopyIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/CreateFolderIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/CurrencySymbol.tsx delete mode 100644 main/packages/ui/src/components/icons/DeleteIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/DetailsMoreIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/DnsIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/DocsIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/DownloadIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/EditIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/ExchangeIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/ExpandMoreIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/FileIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/FolderIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/GeneralIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/GithubIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/GoogleIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/GroupAdd.tsx delete mode 100644 main/packages/ui/src/components/icons/InfoCircleIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/InfoIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/LeftArrowIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/LinkIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/ListCheckIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/ListIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/LogoutIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/MonitorIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/MoreIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/NotificationIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/PortIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/ProviderIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/RefreshIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/RightArrow.tsx delete mode 100644 main/packages/ui/src/components/icons/SealosCoin.tsx delete mode 100644 main/packages/ui/src/components/icons/SearchIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/SettingIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/SortPolygonDownIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/SortPolygonUpIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/StorageIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/SuccessIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/UploadIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/VisibilityIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/WarnIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/WarnTriangleIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/WarningIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/WebHostIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/WechatIcon.tsx delete mode 100644 main/packages/ui/src/components/icons/line/WarnTriange.tsx delete mode 100644 main/packages/ui/src/components/index.ts delete mode 100644 main/packages/ui/src/index.ts delete mode 100644 main/packages/ui/src/theme/colors.ts delete mode 100644 main/packages/ui/src/theme/components/Button.ts delete mode 100644 main/packages/ui/src/theme/components/Input.ts delete mode 100644 main/packages/ui/src/theme/components/Modal.ts delete mode 100644 main/packages/ui/src/theme/components/NumberInput.ts delete mode 100644 main/packages/ui/src/theme/components/Select.ts delete mode 100644 main/packages/ui/src/theme/components/Slider.ts delete mode 100644 main/packages/ui/src/theme/components/Switch.ts delete mode 100644 main/packages/ui/src/theme/components/Tag.ts delete mode 100644 main/packages/ui/src/theme/components/Textarea.ts delete mode 100644 main/packages/ui/src/theme/components/YamlCode.ts delete mode 100644 main/packages/ui/src/theme/components/index.ts delete mode 100644 main/packages/ui/src/theme/index.ts delete mode 100644 main/packages/ui/src/theme/theme.ts delete mode 100644 main/packages/ui/tsconfig.json rename main/package.json => package.json (70%) rename main/pnpm-lock.yaml => pnpm-lock.yaml (96%) rename main/pnpm-workspace.yaml => pnpm-workspace.yaml (59%) delete mode 100644 release-v5.1/.dockerignore delete mode 100644 release-v5.1/.gitignore delete mode 100644 release-v5.1/.npmrc delete mode 100644 release-v5.1/.prettierignore delete mode 100644 release-v5.1/.prettierrc.js delete mode 100644 release-v5.1/Dockerfile delete mode 100644 release-v5.1/README.md delete mode 100644 release-v5.1/database/.dockerignore delete mode 100644 release-v5.1/database/.env.template delete mode 100644 release-v5.1/database/.eslintrc.json delete mode 100644 release-v5.1/database/.gitignore delete mode 100644 release-v5.1/database/.prettierignore delete mode 100644 release-v5.1/database/.prettierrc.js delete mode 100644 release-v5.1/database/.vscode/settings.json delete mode 100644 release-v5.1/database/Dockerfile delete mode 100644 release-v5.1/database/Makefile delete mode 100644 release-v5.1/database/deploy/manifests/appcr.yaml.tmpl delete mode 100644 release-v5.1/database/deploy/manifests/deploy.yaml.tmpl delete mode 100644 release-v5.1/database/deploy/manifests/ingress.yaml.tmpl delete mode 100644 release-v5.1/database/deploy/manifests/rbac.yaml delete mode 100644 release-v5.1/database/next-i18next.config.js delete mode 100644 release-v5.1/database/package.json delete mode 100644 release-v5.1/database/public/favicon.ico delete mode 100644 release-v5.1/database/public/guide-image.png delete mode 100644 release-v5.1/database/public/images/apecloud-mysql.svg delete mode 100644 release-v5.1/database/public/images/clickhouse.svg delete mode 100644 release-v5.1/database/public/images/kafka.svg delete mode 100644 release-v5.1/database/public/images/milvus.svg delete mode 100644 release-v5.1/database/public/images/mongodb.svg delete mode 100644 release-v5.1/database/public/images/postgresql.svg delete mode 100644 release-v5.1/database/public/images/pulsar.svg delete mode 100644 release-v5.1/database/public/images/qdrant.svg delete mode 100644 release-v5.1/database/public/images/redis.svg delete mode 100644 release-v5.1/database/public/images/weaviate.svg delete mode 100644 release-v5.1/database/public/logo.svg delete mode 100644 release-v5.1/database/public/redirect.html delete mode 100644 release-v5.1/database/src/api/tools.ts delete mode 100644 release-v5.1/database/src/components/BaseTable/SwitchPage.tsx delete mode 100644 release-v5.1/database/src/components/BaseTable/baseTable.tsx delete mode 100644 release-v5.1/database/src/components/ButtonGroup/index.tsx delete mode 100644 release-v5.1/database/src/components/CodeBlock/index.tsx delete mode 100644 release-v5.1/database/src/components/ErrorLog/LogCounts.tsx delete mode 100644 release-v5.1/database/src/components/FileSelect/index.tsx delete mode 100644 release-v5.1/database/src/components/FormControl/index.tsx delete mode 100644 release-v5.1/database/src/components/Icon/icons/add.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/analyze.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/arrowDown.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/arrowLeft.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/arrowUp.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/backup.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/backupSettings.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/book.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/calendar.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/change.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/chevron-down.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/config.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/configmap.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/connection.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/continue.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/copy.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/currency.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/delete.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/detail.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/docs.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/download.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/edit.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/emptyChart.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/error.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/export.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/file.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/formInfo.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/gift.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/help.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/import.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/info.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/instance.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/loading.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/log.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/logo-linear.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/logo.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/monitor.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/more.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/noEvents.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/overview.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/pause.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/plus.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/podList.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/pods.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/read.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/refresh.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/restart.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/restore.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/search.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/settings.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/slider.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/start.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/statusDetail.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/success.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/target.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/terminal.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/textRecognition.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/time.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/to.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/unread.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/upload.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/upperRight.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/warning.svg delete mode 100644 release-v5.1/database/src/components/Icon/icons/warningInfo.svg delete mode 100644 release-v5.1/database/src/components/Icon/index.tsx delete mode 100644 release-v5.1/database/src/components/LogBarChart/index.tsx delete mode 100644 release-v5.1/database/src/components/MonitorChart/index.tsx delete mode 100644 release-v5.1/database/src/components/MyTooltip/index.tsx delete mode 100644 release-v5.1/database/src/components/RangeDate/index.tsx delete mode 100644 release-v5.1/database/src/components/RangeDate/style.module.scss delete mode 100644 release-v5.1/database/src/components/RangeSlider/index.tsx delete mode 100644 release-v5.1/database/src/components/Textarea/TagTextarea.tsx delete mode 100644 release-v5.1/database/src/components/Tip/index.tsx delete mode 100644 release-v5.1/database/src/components/YamlCode/hljs.ts delete mode 100644 release-v5.1/database/src/components/YamlCode/index.module.scss delete mode 100644 release-v5.1/database/src/components/YamlCode/index.tsx delete mode 100644 release-v5.1/database/src/config.ts delete mode 100644 release-v5.1/database/src/constants/dataflow.ts delete mode 100644 release-v5.1/database/src/constants/monitor.ts delete mode 100644 release-v5.1/database/src/hooks/driver.tsx delete mode 100644 release-v5.1/database/src/hooks/useClientSideValue.tsx delete mode 100644 release-v5.1/database/src/hooks/useConfirm.tsx delete mode 100644 release-v5.1/database/src/hooks/useLoading.tsx delete mode 100644 release-v5.1/database/src/hooks/useScreen.ts delete mode 100644 release-v5.1/database/src/instrumentation.ts delete mode 100644 release-v5.1/database/src/pages/404.tsx delete mode 100644 release-v5.1/database/src/pages/_document.tsx delete mode 100644 release-v5.1/database/src/pages/db/detail/components/Migrate/empty.module.scss delete mode 100644 release-v5.1/database/src/pages/db/detail/components/Migrate/empty.tsx delete mode 100644 release-v5.1/database/src/pages/db/detail/components/StopBackupModal.tsx delete mode 100644 release-v5.1/database/src/pages/db/detail/components/empty.module.scss delete mode 100644 release-v5.1/database/src/pages/db/detail/components/empty.tsx delete mode 100644 release-v5.1/database/src/pages/db/detail/index.module.scss delete mode 100644 release-v5.1/database/src/pages/db/edit/components/index.module.scss delete mode 100644 release-v5.1/database/src/pages/db/edit/index.module.scss delete mode 100644 release-v5.1/database/src/pages/db/migrate/components/index.module.scss delete mode 100644 release-v5.1/database/src/pages/db/migrate/index.module.scss delete mode 100644 release-v5.1/database/src/pages/dbs/components/empty.module.scss delete mode 100644 release-v5.1/database/src/pages/dbs/index.module.scss delete mode 100644 release-v5.1/database/src/services/kubernet.ts delete mode 100644 release-v5.1/database/src/store/global.ts delete mode 100644 release-v5.1/database/src/store/guide.ts delete mode 100644 release-v5.1/database/src/store/hostConfig.ts delete mode 100644 release-v5.1/database/src/styles/global.scss delete mode 100644 release-v5.1/database/src/styles/reset.scss delete mode 100644 release-v5.1/database/src/types/apis/backup/delete-backup.ts delete mode 100644 release-v5.1/database/src/types/apis/database/delete-database.ts delete mode 100644 release-v5.1/database/src/types/apis/database/pause-database.ts delete mode 100644 release-v5.1/database/src/types/apis/database/start-database.ts delete mode 100644 release-v5.1/database/src/types/apis/database/update-database.ts delete mode 100644 release-v5.1/database/src/types/apis/network/disable-public-access.ts delete mode 100644 release-v5.1/database/src/types/apis/network/enable-public-access.ts delete mode 100644 release-v5.1/database/src/types/apis/v2alpha/backup/delete-backup.ts delete mode 100644 release-v5.1/database/src/types/apis/v2alpha/database/delete-database.ts delete mode 100644 release-v5.1/database/src/types/apis/v2alpha/database/pause-database.ts delete mode 100644 release-v5.1/database/src/types/apis/v2alpha/database/restart-database.ts delete mode 100644 release-v5.1/database/src/types/apis/v2alpha/database/start-database.ts delete mode 100644 release-v5.1/database/src/types/apis/v2alpha/database/update-database.ts delete mode 100644 release-v5.1/database/src/types/apis/v2alpha/network/disable-public-access.ts delete mode 100644 release-v5.1/database/src/types/apis/v2alpha/network/enable-public-access.ts delete mode 100644 release-v5.1/database/src/types/config.ts delete mode 100644 release-v5.1/database/src/types/i18next.d.ts delete mode 100644 release-v5.1/database/src/types/index.d.ts delete mode 100644 release-v5.1/database/src/types/monitor.d.ts delete mode 100644 release-v5.1/database/src/types/response.ts delete mode 100644 release-v5.1/database/src/types/schemas/logs.ts delete mode 100644 release-v5.1/database/src/types/schemas/monitor.ts delete mode 100644 release-v5.1/database/src/types/schemas/v2alpha/logs.ts delete mode 100644 release-v5.1/database/src/types/schemas/v2alpha/monitor.ts delete mode 100644 release-v5.1/database/src/types/v2alpha/error.ts delete mode 100644 release-v5.1/database/src/utils/cookieUtils.ts delete mode 100644 release-v5.1/database/src/utils/i18n-client.ts delete mode 100644 release-v5.1/database/src/utils/i18n.ts delete mode 100644 release-v5.1/database/src/utils/kubeFileSystem.ts delete mode 100644 release-v5.1/database/src/utils/timeRange.ts delete mode 100644 release-v5.1/database/tsconfig.json delete mode 100644 release-v5.1/package.json delete mode 100644 release-v5.1/packages/ui/.eslintrc.json delete mode 100644 release-v5.1/packages/ui/package.json delete mode 100644 release-v5.1/packages/ui/rollup.config.js delete mode 100644 release-v5.1/packages/ui/src/components/AutoComplete/index.tsx delete mode 100644 release-v5.1/packages/ui/src/components/EditTabs/index.tsx delete mode 100644 release-v5.1/packages/ui/src/components/Menu/index.tsx delete mode 100644 release-v5.1/packages/ui/src/components/Message/index.tsx delete mode 100644 release-v5.1/packages/ui/src/components/MySlider/index.tsx delete mode 100644 release-v5.1/packages/ui/src/components/MyTable/index.tsx delete mode 100644 release-v5.1/packages/ui/src/components/MyTooltip/index.tsx delete mode 100644 release-v5.1/packages/ui/src/components/RangeInput/index.tsx delete mode 100644 release-v5.1/packages/ui/src/components/RangeSlider/index.tsx delete mode 100644 release-v5.1/packages/ui/src/components/Select/index.tsx delete mode 100644 release-v5.1/packages/ui/src/components/Tabs/index.tsx delete mode 100644 release-v5.1/packages/ui/src/components/Tip/index.tsx delete mode 100644 release-v5.1/packages/ui/src/components/YamlCode/YamlCode.tsx delete mode 100644 release-v5.1/packages/ui/src/components/YamlCode/hljs.ts delete mode 100644 release-v5.1/packages/ui/src/components/YamlCode/index.module.scss delete mode 100644 release-v5.1/packages/ui/src/components/YamlCode/index.ts delete mode 100644 release-v5.1/packages/ui/src/components/icons/AddIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/ArrowDownSLineIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/ArrowExchangeIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/BucketIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/CancelIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/ChangeIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/ClearOutlineIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/CloseIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/CopyIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/CreateFolderIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/CurrencySymbol.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/DeleteIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/DetailsMoreIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/DnsIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/DocsIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/DownloadIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/EditIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/ExchangeIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/ExpandMoreIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/FileIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/FolderIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/GeneralIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/GithubIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/GoogleIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/GroupAdd.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/InfoCircleIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/InfoIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/LeftArrowIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/LinkIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/ListCheckIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/ListIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/LogoutIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/MonitorIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/MoreIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/NotificationIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/PortIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/ProviderIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/RefreshIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/RightArrow.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/SealosCoin.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/SearchIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/SettingIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/SortPolygonDownIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/SortPolygonUpIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/StorageIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/SuccessIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/UploadIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/VisibilityIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/WarnIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/WarnTriangleIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/WarningIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/WebHostIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/WechatIcon.tsx delete mode 100644 release-v5.1/packages/ui/src/components/icons/line/WarnTriange.tsx delete mode 100644 release-v5.1/packages/ui/src/components/index.ts delete mode 100644 release-v5.1/packages/ui/src/index.ts delete mode 100644 release-v5.1/packages/ui/src/theme/colors.ts delete mode 100644 release-v5.1/packages/ui/src/theme/components/Button.ts delete mode 100644 release-v5.1/packages/ui/src/theme/components/Input.ts delete mode 100644 release-v5.1/packages/ui/src/theme/components/Modal.ts delete mode 100644 release-v5.1/packages/ui/src/theme/components/NumberInput.ts delete mode 100644 release-v5.1/packages/ui/src/theme/components/Select.ts delete mode 100644 release-v5.1/packages/ui/src/theme/components/Slider.ts delete mode 100644 release-v5.1/packages/ui/src/theme/components/Switch.ts delete mode 100644 release-v5.1/packages/ui/src/theme/components/Tag.ts delete mode 100644 release-v5.1/packages/ui/src/theme/components/Textarea.ts delete mode 100644 release-v5.1/packages/ui/src/theme/components/YamlCode.ts delete mode 100644 release-v5.1/packages/ui/src/theme/components/index.ts delete mode 100644 release-v5.1/packages/ui/src/theme/index.ts delete mode 100644 release-v5.1/packages/ui/src/theme/theme.ts delete mode 100644 release-v5.1/packages/ui/tsconfig.json delete mode 100644 release-v5.1/pnpm-lock.yaml delete mode 100644 release-v5.1/pnpm-workspace.yaml delete mode 100644 release-v5.1/tsconfig.base.json delete mode 100644 release-v5.1/tsconfig.deps.json delete mode 100644 release-v5.1/tsconfig.json delete mode 100644 release-v5.1/tsconfig.web.json create mode 100644 tests/support/source.cjs create mode 100644 tests/test_kubeblocks.cjs rename main/tsconfig.base.json => tsconfig.base.json (100%) rename main/tsconfig.deps.json => tsconfig.deps.json (100%) rename main/tsconfig.json => tsconfig.json (100%) rename main/tsconfig.web.json => tsconfig.web.json (100%) diff --git a/main/.dockerignore b/.dockerignore similarity index 84% rename from main/.dockerignore rename to .dockerignore index 094250d..a1d0aff 100644 --- a/main/.dockerignore +++ b/.dockerignore @@ -32,3 +32,10 @@ coverage .DS_Store **/.DS_Store + +.context/ +dataflow/ +deploy/ +scripts/ +tests/ +.github/ diff --git a/.github/workflows/build-version.yml b/.github/workflows/build-version.yml index 4c6aff9..2f6aa81 100644 --- a/.github/workflows/build-version.yml +++ b/.github/workflows/build-version.yml @@ -52,13 +52,19 @@ jobs: with: version: v3.17.3 - name: Validate chart and entrypoint - working-directory: ${{ inputs.source }}/database/deploy + env: + SOURCE: ${{ inputs.source }} run: | set -euo pipefail - bash -n database-frontend-entrypoint.sh - helm lint charts/database-frontend - helm template dbprovider-frontend charts/database-frontend --namespace dbprovider-frontend > /dev/null - python3 ../../../tests/test_deployment_compatibility.py + case "$SOURCE" in + main) deploy_dir=database/deploy ;; + release-v5.1) deploy_dir=deploy/kubeblocks-0.8 ;; + *) exit 1 ;; + esac + bash -n "$deploy_dir/database-frontend-entrypoint.sh" + helm lint "$deploy_dir/charts/database-frontend" + helm template dbprovider-frontend "$deploy_dir/charts/database-frontend" --namespace dbprovider-frontend > /dev/null + python3 tests/test_deployment_compatibility.py - name: Validate DataFlow and combined installer run: | python3 scripts/test-bundle.py @@ -93,8 +99,8 @@ jobs: - name: Build runtime image (${{ matrix.arch }}) uses: docker/build-push-action@v6 with: - context: ./${{ inputs.source }} - file: ./${{ inputs.source }}/Dockerfile + context: . + file: ./Dockerfile build-args: | name=database path=database diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e20348f..0aa46cb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -9,7 +9,7 @@ on: workflow_dispatch: inputs: publish_images: - description: Publish runtime and cluster images for both source trees + description: Publish runtime and cluster images for both deployment profiles type: boolean default: false upload_oss: @@ -26,7 +26,24 @@ concurrency: cancel-in-progress: ${{ github.event_name == 'pull_request' }} jobs: + compatibility: + runs-on: ubuntu-24.04 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: '20.20.2' + - uses: azure/setup-helm@v4 + with: + version: v3.17.3 + - run: corepack enable && corepack prepare pnpm@8.9.0 --activate + - run: pnpm install --frozen-lockfile + - run: pnpm --dir database typecheck + - run: pnpm --dir database test:ci + - run: node --test tests/test_*.cjs + versions: + needs: compatibility strategy: fail-fast: false matrix: diff --git a/main/.gitignore b/.gitignore similarity index 89% rename from main/.gitignore rename to .gitignore index 576ba6c..5a64ba5 100644 --- a/main/.gitignore +++ b/.gitignore @@ -2,7 +2,6 @@ node_modules/ .next .env*.local next-env.d.ts -packages/gtm/dist/ !.vscode/ .vscode/tasks.json .claude @@ -13,3 +12,5 @@ AGENTS.md .sisyphus **/test-results/ .codegraph/ + +.context/ diff --git a/main/.npmrc b/.npmrc similarity index 100% rename from main/.npmrc rename to .npmrc diff --git a/main/.nvmrc b/.nvmrc similarity index 100% rename from main/.nvmrc rename to .nvmrc diff --git a/main/.prettierignore b/.prettierignore similarity index 100% rename from main/.prettierignore rename to .prettierignore diff --git a/main/.prettierrc.js b/.prettierrc.js similarity index 100% rename from main/.prettierrc.js rename to .prettierrc.js diff --git a/main/Dockerfile b/Dockerfile similarity index 91% rename from main/Dockerfile rename to Dockerfile index ce06082..cf063f6 100644 --- a/main/Dockerfile +++ b/Dockerfile @@ -33,11 +33,7 @@ COPY ./tsconfig.json ./tsconfig.json COPY ./tsconfig.deps.json ./tsconfig.deps.json COPY ./tsconfig.base.json ./tsconfig.base.json COPY ./tsconfig.web.json ./tsconfig.web.json -COPY ./packages ./packages -RUN --mount=type=cache,id=pnpm,target=/pnpm/store \ -pnpm -r --offline --filter=./packages/* install \ -&& pnpm -r --filter=./packages/* run build FROM deps AS builder @@ -47,14 +43,13 @@ FROM deps AS builder # Uncomment the following line in case you want to disable telemetry during the build. ENV NEXT_TELEMETRY_DISABLED=1 -# COPY --from=deps /app/packages ./packages ARG name ARG path COPY ${path} ${path} -RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm --frozen-lockfile --filter=$name install && \ +RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm --frozen-lockfile --offline install && \ pnpm --filter=$name run build # Production image, copy all the files and run next diff --git a/release-v5.1/Makefile b/Makefile similarity index 59% rename from release-v5.1/Makefile rename to Makefile index aa774f7..f6e0b33 100644 --- a/release-v5.1/Makefile +++ b/Makefile @@ -3,19 +3,16 @@ IMAGE_TAG ?= dev PLATFORMS ?= linux/amd64,linux/arm64 IMAGE := $(if $(DOCKER_USERNAME),$(DOCKER_USERNAME)/)sealos-database:$(IMAGE_TAG) -.PHONY: all push-images fetch-deps build-packages build-database dev-database image-build-database image-push-database +.PHONY: all push-images fetch-deps build-database dev-database image-build-database image-push-database all: image-build-database push-images: image-push-database fetch-deps: pnpm fetch -build-packages: fetch-deps - pnpm -r --offline --filter='./packages/*' install - pnpm -r --filter='./packages/*' run build -build-database: build-packages - pnpm --offline --filter ./database install +build-database: fetch-deps + pnpm --offline --frozen-lockfile install pnpm --filter ./database run build -dev-database: build-packages - pnpm --offline --filter ./database install +dev-database: fetch-deps + pnpm --offline --frozen-lockfile install pnpm --filter ./database run dev image-build-database: docker buildx build --platform=$(PLATFORMS) -t $(IMAGE) --build-arg path=database --build-arg name=database . diff --git a/README.md b/README.md index b24d771..463df74 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,74 @@ # database -The `main/` and `release-v5.1/` directories contain independent Database -workspaces. Both are built by `.github/workflows/ci.yml`; these names refer to -source directories, not the branch that triggers CI. +The repository root is the single Database source workspace and image build +context. The application in `database/` supports KubeBlocks 0.8 and 0.9, +selected at runtime by mounted configuration. The 0.8 deployment profile lives +in `deploy/kubeblocks-0.8/`; the 0.9 profile lives in `database/deploy/`. +Historical publishing channel names are retained for installation compatibility +and do not correspond to source directories. + +## KubeBlocks compatibility + +```yaml +# /app/data/config.yaml (production), database/data/config.local.yaml (development) +database: + kubeblocks: + version: "0.9" # "0.8" for a KubeBlocks 0.8 cluster +``` + +- Helm value: `dbproviderConfig.kubeblocksVersion`, quoted `"0.8"` or `"0.9"`. + The main deployment profile defaults to 0.9 and release-v5.1 defaults to 0.8. +- Installer override: `KUBEBLOCKS_VERSION=0.8 bash install.sh`, or export it + before invoking Sealos. See [deploy/env.template](deploy/env.template). + An empty/unset value preserves persisted Helm values and profile defaults. + Explicit `HELM_OPTIONS`/`HELM_OPTS` arguments take precedence over this input. +- Direct Helm override: `--set-string dbproviderConfig.kubeblocksVersion=0.8`. + Helm renders the setting into the mounted ConfigMap; the application does not + read `KUBEBLOCKS_VERSION` from its process environment. There is no build-time + version flag, so the same built runtime image can run either mode. +- Restart the application after changing configuration. Use the version that + matches the installed operator. Changing this setting does not upgrade + KubeBlocks, migrate existing instances, or convert their resources. + +Old manually mounted main YAML defaults to 0.9. Old release YAML without the +new setting is recognized by its existing `cloud.port`, `cloud.disableHttps` +and `database.features.logs/kafka/managedDb` fields and retains 0.8. This is +configuration-format compatibility, not operator detection. Add an explicit +version to custom configurations; unsupported versions fail startup validation. + +Routes select one complete version implementation, including SSR and client +navigation, so old resource operations are not mixed with new UI models. +Missing operations return 404 rather than falling through to the other version. +The 0.8 implementation retains PolarDB-X, ClusterVersion discovery, legacy +parameter history, backup behavior, and Sealox MySQL compatibility. The 0.9 +implementation retains ComponentVersion discovery and newer resource templates. +Shared modules live under `database/src`; version-specific modules live +under `src/implementations/kb08` and `kb09`. Version-specific UI and API contracts +are deliberately retained in this first consolidation; they are not yet one +normalized API/model. Database resource and data migrations are outside this change. + +Only one dependency tree (Node 20.20.2, pnpm 8.9.0, Next 14) is installed: + +```sh +pnpm install --frozen-lockfile +# Pick one example; both run from the same application directory. +cp database/data/config.kb08.example.yaml database/data/config.local.yaml +pnpm dev-db +``` + +Both deployment profiles retain their existing release, namespace, resource +identity and persisted values paths. Reuse the deployment profile originally +used to install the service. An explicit runtime version override does not +change those installation paths or migrate saved values. ## CI and publishing | Trigger | Validation | Image publication | OSS upload | | --- | --- | --- | --- | -| Pull request to `main` | Both workspaces, Helm and runtime builds | No | No | -| Push to `main` | Both workspaces | Yes | Yes | -| Push a `v*` tag | Both workspaces | Yes | Yes | -| Manual run | Both workspaces | `publish_images` or `upload_oss` | `upload_oss` | +| Pull request to `main` | Both deployment profiles and unified runtime | No | No | +| Push to `main` | Unified runtime and both profiles | Yes | Yes | +| Push a `v*` tag | Unified runtime and both profiles | Yes | Yes | +| Manual run | Unified runtime and both profiles | `publish_images` or `upload_oss` | `upload_oss` | DataFlow is imported once under `dataflow/` (provenance in [dataflow/IMPORT.md](dataflow/IMPORT.md)). Both source channels build the same @@ -19,7 +76,7 @@ DataFlow source alongside their respective Database frontend. Their cluster images install both services using [deploy/install.sh](deploy/install.sh). Every runtime image and cluster image supports `linux/amd64` and `linux/arm64`. -Runtime builds use each workspace's root Dockerfile with `name=database` and +All Database runtime builds use `Dockerfile` with `name=database` and `path=database`. Cluster images include the Helm chart, entrypoint and the runtime image saved by Sealos for the selected architecture. @@ -73,7 +130,7 @@ runs; a passing PR build alone does not verify those integrations. ## Deployment compatibility -Both source workspaces use `database/` and the `database` package name. Runtime +The unified source workspace uses `database/` and the `database` package name. Runtime and cluster image names use `database`. Deployment identity remains `dbprovider-frontend`: Helm release, namespace, resource names and selectors. The chart directory remains `charts/database-frontend`. @@ -91,10 +148,10 @@ by a different Helm release. No namespace or database-data migration is performe ## Currency display upgrade -Both `main/` and `release-v5.1/` now read the display symbol from Sealos Desktop +Both KubeBlocks implementations read the display symbol from Sealos Desktop HostConfig after SDK initialization. The application and shared UI use the same published `@labring/sealos-desktop-sdk@0.1.24` directly. -Only `packages/ui` remains local. Shared (`1.0.3`), driver (`1.0.0`), GTM (`1.1.0`), +UI components and theme come from `@labring/sealos-chakra-ui@1.0.0`; there are no local UI packages. Shared (`1.0.3`), driver (`1.0.0`), GTM (`1.1.0`), and Desktop SDKs come from npm. Each application owns its host-config store; main also owns the quota-dialog adapter that reuses this store. HostConfig is requested once per page lifetime and kept only in memory. Price @@ -117,17 +174,18 @@ response no longer returns `CurrencySymbol`. No release, namespace, selector, hostname or `dbproviderConfig` contract is renamed. -Local regression checks (install both workspaces with pnpm 8.9.0 first): +Local regression checks (install the root workspace with pnpm 8.9.0 first): ```sh node --test tests/test_host_config.cjs python3 tests/test_deployment_compatibility.py -pnpm --dir main/database typecheck -pnpm --dir release-v5.1/database typecheck +pnpm --dir database typecheck +pnpm --dir database test:ci +node --test tests/test_*.cjs ``` -Run `helm lint` and `helm template` for each workspace's -`database/deploy/charts/database-frontend` chart as well. These checks do not replace +Run `helm lint` and `helm template` for both `database/deploy/charts/database-frontend` +and `deploy/kubeblocks-0.8/charts/database-frontend` as well. These checks do not replace an embedded Desktop integration test. ## Sealox compatibility on release-v5.1 @@ -156,7 +214,7 @@ node --test tests/test_sealox_compatibility.cjs ## Direct metrics SDK -Both source workspaces use `@labring/sealos-metrics-sdk@0.2.0` in server-side +Both KubeBlocks implementations use `@labring/sealos-metrics-sdk@0.2.0` in server-side monitoring routes. Database templates use `database.query`; existing custom PromQL uses `raw.query`. API authentication and chart conversions remain in the application. The SDK additionally checks Kubernetes readiness and permission to @@ -172,16 +230,15 @@ The metrics endpoint must expose Prometheus `/api/v1/query` and user values or pass `--set-string dbproviderConfig.metricsUrl=`; the chart writes `database.components.monitoring.url`. The install script also accepts `metricsUrl=`. The default is the endpoint above. - For local development, copy `main/database/data/config.example.yaml` to - `main/database/data/config.local.yaml` and edit the same setting. + For local development, copy `database/data/config.example.yaml` to + `database/data/config.local.yaml` and edit the same setting. Restart the application after changing the mounted configuration. - Release-v5.1: the chart mounts `/app/data/config.yaml` and writes `database.components.monitoring.url` from `dbproviderConfig.metricsUrl`. The install script accepts `metricsUrl=` or `METRICS_URL=`, with `metricsUrl` taking precedence. For local development, copy - `release-v5.1/database/data/config.example.yaml` to `data/config.local.yaml` - within that application and edit the same YAML field. Application environment - variables are no longer read. See the release application's README for the + `database/data/config.kb08.example.yaml` to `database/data/config.local.yaml` and edit the same YAML field. Application environment + variables are no longer read. See [the 0.8 deployment profile README](deploy/kubeblocks-0.8/README.md) for the complete migration table; deploy the new image and ConfigMap together. On upgrade, replace custom `dbproviderConfig.monitorUrl` with `metricsUrl` and @@ -275,3 +332,11 @@ architectures. Actual installation may initialize/upgrade DataFlow metadata; local source/build checks do not prove live storage, authentication or browser acceptance. Live deployment requires a chosen cluster and a separately authorized metadata modification if initialization or schema migration is needed. + +## Published UI package + +The application imports `@labring/sealos-chakra-ui@1.0.0` directly. Its 86 source +files match the former local UI implementation. Next.js transpiles this source +package via `transpilePackages`. Root `postinstall` generates Chakra theme types +from the installed package, so local development and container builds use the +same theme without retaining a local component library. diff --git a/main/database/.dockerignore b/database/.dockerignore similarity index 100% rename from main/database/.dockerignore rename to database/.dockerignore diff --git a/database/.env.template b/database/.env.template new file mode 100644 index 0000000..72a3177 --- /dev/null +++ b/database/.env.template @@ -0,0 +1,5 @@ +# Runtime settings: data/config.local.yaml in development, /app/data/config.yaml in production. +# Set database.kubeblocks.version to "0.8" or "0.9" (default "0.9"). +# KUBEBLOCKS_VERSION is an INSTALLER input only; see ../deploy/env.template. +# Development mock user; empty disables mocking. Never enable in production. +NEXT_PUBLIC_MOCK_USER= diff --git a/main/database/.eslintrc.json b/database/.eslintrc.json similarity index 100% rename from main/database/.eslintrc.json rename to database/.eslintrc.json diff --git a/main/database/.gitignore b/database/.gitignore similarity index 93% rename from main/database/.gitignore rename to database/.gitignore index 66a3d6c..80c98c5 100644 --- a/main/database/.gitignore +++ b/database/.gitignore @@ -30,6 +30,7 @@ yarn-error.log* data/* !data/config.example.yaml +!data/config.kb08.example.yaml # vercel .vercel diff --git a/main/database/.prettierignore b/database/.prettierignore similarity index 100% rename from main/database/.prettierignore rename to database/.prettierignore diff --git a/main/database/.prettierrc.js b/database/.prettierrc.js similarity index 100% rename from main/database/.prettierrc.js rename to database/.prettierrc.js diff --git a/main/database/.vscode/settings.json b/database/.vscode/settings.json similarity index 100% rename from main/database/.vscode/settings.json rename to database/.vscode/settings.json diff --git a/main/database/Makefile b/database/Makefile similarity index 100% rename from main/database/Makefile rename to database/Makefile diff --git a/main/database/README.md b/database/README.md similarity index 100% rename from main/database/README.md rename to database/README.md diff --git a/main/database/__tests__/components/.gitkeep b/database/__tests__/components/.gitkeep similarity index 100% rename from main/database/__tests__/components/.gitkeep rename to database/__tests__/components/.gitkeep diff --git a/main/database/__tests__/unit/.gitkeep b/database/__tests__/unit/.gitkeep similarity index 100% rename from main/database/__tests__/unit/.gitkeep rename to database/__tests__/unit/.gitkeep diff --git a/release-v5.1/database/__tests__/unit/utils/parameterConfig.test.ts b/database/__tests__/unit/kb08/parameterConfig.test.ts similarity index 96% rename from release-v5.1/database/__tests__/unit/utils/parameterConfig.test.ts rename to database/__tests__/unit/kb08/parameterConfig.test.ts index b9358e1..2d001ec 100644 --- a/release-v5.1/database/__tests__/unit/utils/parameterConfig.test.ts +++ b/database/__tests__/unit/kb08/parameterConfig.test.ts @@ -1,5 +1,5 @@ import assert from 'node:assert/strict'; -import test from 'node:test'; +import { test } from 'vitest'; import { areParameterValuesApplied, getPostgreSQLConfigSpecMetadata, @@ -10,12 +10,12 @@ import { mergeRedisParameterValues, shouldUseRedisConfigurationFallback, toKubeBlocksParameterPairs -} from '../../../src/utils/parameterChanges'; +} from '@/implementations/kb08/utils/parameterChanges'; import { getParameterHistoryName, resolveParameterHistoryStatus -} from '../../../src/utils/parameterHistory'; -import { ReconfigStatus } from '../../../src/constants/db'; +} from '@/implementations/kb08/utils/parameterHistory'; +import { ReconfigStatus } from '@/implementations/kb08/constants/db'; test('uses Redis Configuration fallback only when runtime ConfigMap values are absent', () => { assert.equal( @@ -117,7 +117,7 @@ test('lets Redis Configuration values override stale ConfigMap values', () => { test('serializes parameter differences for a KubeBlocks reconfigure OpsRequest', () => { assert.deepEqual( toKubeBlocksParameterPairs([ - { path: 'max_connections', oldValue: '700', newValue: '701' } + { path: 'max_connections', newValue: '701' } ]), [ { key: 'max_connections', value: '701' } diff --git a/release-v5.1/database/__tests__/unit/utils/reconfigureHistory.test.ts b/database/__tests__/unit/kb08/reconfigureHistory.test.ts similarity index 94% rename from release-v5.1/database/__tests__/unit/utils/reconfigureHistory.test.ts rename to database/__tests__/unit/kb08/reconfigureHistory.test.ts index 3fddaa1..6c33ba6 100644 --- a/release-v5.1/database/__tests__/unit/utils/reconfigureHistory.test.ts +++ b/database/__tests__/unit/kb08/reconfigureHistory.test.ts @@ -1,6 +1,6 @@ import assert from 'node:assert/strict'; -import test from 'node:test'; -import { getReconfigureHistoryConfigurations } from '../../../src/utils/reconfigureHistory.ts'; +import { test } from 'vitest'; +import { getReconfigureHistoryConfigurations } from '@/implementations/kb08/utils/reconfigureHistory'; const previousConfigKey = 'cloud.sealos.io/previous-config'; diff --git a/release-v5.1/database/__tests__/unit/utils/vlogsTime.test.ts b/database/__tests__/unit/kb08/vlogsTime.test.ts similarity index 76% rename from release-v5.1/database/__tests__/unit/utils/vlogsTime.test.ts rename to database/__tests__/unit/kb08/vlogsTime.test.ts index 0b68440..588a4cc 100644 --- a/release-v5.1/database/__tests__/unit/utils/vlogsTime.test.ts +++ b/database/__tests__/unit/kb08/vlogsTime.test.ts @@ -1,6 +1,6 @@ import assert from 'node:assert/strict'; -import test from 'node:test'; -import { toVlogsQueryTime } from '../../../src/utils/vlogsTime'; +import { test } from 'vitest'; +import { toVlogsQueryTime } from '@/implementations/kb08/utils/vlogsTime'; test('serializes a browser timestamp as an unambiguous UTC query time', () => { assert.equal(toVlogsQueryTime(1787638417000), '2026-08-25T06:13:37.000Z'); diff --git a/main/database/data/config.example.yaml b/database/data/config.example.yaml similarity index 91% rename from main/database/data/config.example.yaml rename to database/data/config.example.yaml index b9fbf11..29d715e 100644 --- a/main/database/data/config.example.yaml +++ b/database/data/config.example.yaml @@ -5,6 +5,9 @@ cloud: desktopDomain: cloud.sealos.io database: + # Must match the installed KubeBlocks version. Changing this does not migrate databases. + kubeblocks: + version: "0.9" features: guide: false showDocument: true diff --git a/release-v5.1/database/data/config.example.yaml b/database/data/config.kb08.example.yaml similarity index 88% rename from release-v5.1/database/data/config.example.yaml rename to database/data/config.kb08.example.yaml index fe07642..7271cd5 100644 --- a/release-v5.1/database/data/config.example.yaml +++ b/database/data/config.kb08.example.yaml @@ -5,6 +5,9 @@ cloud: port: "" disableHttps: false database: + # Must match the installed KubeBlocks version. Changing this does not migrate databases. + kubeblocks: + version: "0.8" features: guide: true showDocument: true diff --git a/main/database/deploy/Kubefile b/database/deploy/Kubefile similarity index 100% rename from main/database/deploy/Kubefile rename to database/deploy/Kubefile diff --git a/main/database/deploy/charts/database-frontend/Chart.yaml b/database/deploy/charts/database-frontend/Chart.yaml similarity index 100% rename from main/database/deploy/charts/database-frontend/Chart.yaml rename to database/deploy/charts/database-frontend/Chart.yaml diff --git a/main/database/deploy/charts/database-frontend/database-frontend-values.yaml b/database/deploy/charts/database-frontend/database-frontend-values.yaml similarity index 90% rename from main/database/deploy/charts/database-frontend/database-frontend-values.yaml rename to database/deploy/charts/database-frontend/database-frontend-values.yaml index a0b29df..5f8c599 100644 --- a/main/database/deploy/charts/database-frontend/database-frontend-values.yaml +++ b/database/deploy/charts/database-frontend/database-frontend-values.yaml @@ -12,6 +12,10 @@ resources: memory: 128Mi dbproviderConfig: + # Target KubeBlocks version. Override with --set-string dbproviderConfig.kubeblocksVersion=0.8 or 0.9. + kubeblocksVersion: "0.9" + logEnabled: false + kafkaEnabled: true # Direct Prometheus-compatible endpoint (not database-monitor). # Override via user values or --set-string dbproviderConfig.metricsUrl=. metricsUrl: "http://vmselect-vm-stack-victoria-metrics-k8s-stack.vm.svc.cluster.local:8481/select/0/prometheus" diff --git a/main/database/deploy/charts/database-frontend/templates/_helpers.tpl b/database/deploy/charts/database-frontend/templates/_helpers.tpl similarity index 100% rename from main/database/deploy/charts/database-frontend/templates/_helpers.tpl rename to database/deploy/charts/database-frontend/templates/_helpers.tpl diff --git a/main/database/deploy/charts/database-frontend/templates/app.yaml b/database/deploy/charts/database-frontend/templates/app.yaml similarity index 100% rename from main/database/deploy/charts/database-frontend/templates/app.yaml rename to database/deploy/charts/database-frontend/templates/app.yaml diff --git a/main/database/deploy/charts/database-frontend/templates/configmap.yaml b/database/deploy/charts/database-frontend/templates/configmap.yaml similarity index 84% rename from main/database/deploy/charts/database-frontend/templates/configmap.yaml rename to database/deploy/charts/database-frontend/templates/configmap.yaml index 959d3d3..df19398 100644 --- a/main/database/deploy/charts/database-frontend/templates/configmap.yaml +++ b/database/deploy/charts/database-frontend/templates/configmap.yaml @@ -1,3 +1,7 @@ +{{- $kbVersion := .Values.dbproviderConfig.kubeblocksVersion -}} +{{- if not (has $kbVersion (list "0.8" "0.9")) -}} +{{- fail "dbproviderConfig.kubeblocksVersion must be the string 0.8 or 0.9 (use --set-string)" -}} +{{- end -}} apiVersion: v1 kind: ConfigMap metadata: @@ -10,11 +14,18 @@ data: cloud: domain: {{ .Values.dbproviderConfig.cloudDomain | quote }} desktopDomain: {{ .Values.dbproviderConfig.cloudDomain | quote }} + port: {{ .Values.dbproviderConfig.cloudPort | quote }} + disableHttps: {{ .Values.dbproviderConfig.disableHttps }} database: + kubeblocks: + version: {{ $kbVersion | quote }} features: guide: {{ .Values.dbproviderConfig.guideEnabled }} showDocument: {{ .Values.dbproviderConfig.showDocument }} fileImport: {{ .Values.dbproviderConfig.fileImportEnabled }} + logs: {{ .Values.dbproviderConfig.logEnabled }} + kafka: {{ .Values.dbproviderConfig.kafkaEnabled }} + managedDb: {{ .Values.dbproviderConfig.managedDbEnabled }} ui: customScripts: {{- toYaml .Values.dbproviderConfig.customScripts | nindent 10 }} diff --git a/main/database/deploy/charts/database-frontend/templates/deployment.yaml b/database/deploy/charts/database-frontend/templates/deployment.yaml similarity index 100% rename from main/database/deploy/charts/database-frontend/templates/deployment.yaml rename to database/deploy/charts/database-frontend/templates/deployment.yaml diff --git a/main/database/deploy/charts/database-frontend/templates/ingress.yaml b/database/deploy/charts/database-frontend/templates/ingress.yaml similarity index 100% rename from main/database/deploy/charts/database-frontend/templates/ingress.yaml rename to database/deploy/charts/database-frontend/templates/ingress.yaml diff --git a/main/database/deploy/charts/database-frontend/templates/rbac.yaml b/database/deploy/charts/database-frontend/templates/rbac.yaml similarity index 100% rename from main/database/deploy/charts/database-frontend/templates/rbac.yaml rename to database/deploy/charts/database-frontend/templates/rbac.yaml diff --git a/main/database/deploy/charts/database-frontend/templates/service.yaml b/database/deploy/charts/database-frontend/templates/service.yaml similarity index 100% rename from main/database/deploy/charts/database-frontend/templates/service.yaml rename to database/deploy/charts/database-frontend/templates/service.yaml diff --git a/main/database/deploy/charts/database-frontend/values.yaml b/database/deploy/charts/database-frontend/values.yaml similarity index 93% rename from main/database/deploy/charts/database-frontend/values.yaml rename to database/deploy/charts/database-frontend/values.yaml index 5207ac9..3f39e52 100644 --- a/main/database/deploy/charts/database-frontend/values.yaml +++ b/database/deploy/charts/database-frontend/values.yaml @@ -33,6 +33,10 @@ ingress: annotations: {} dbproviderConfig: + # Target KubeBlocks version. Override with --set-string dbproviderConfig.kubeblocksVersion=0.8 or 0.9. + kubeblocksVersion: "0.9" + logEnabled: false + kafkaEnabled: true cloudDomain: "127.0.0.1.nip.io" cloudPort: "" httpPort: "" diff --git a/main/database/deploy/database-frontend-entrypoint.sh b/database/deploy/database-frontend-entrypoint.sh similarity index 96% rename from main/database/deploy/database-frontend-entrypoint.sh rename to database/deploy/database-frontend-entrypoint.sh index accc32b..29c6abb 100755 --- a/main/database/deploy/database-frontend-entrypoint.sh +++ b/database/deploy/database-frontend-entrypoint.sh @@ -8,6 +8,12 @@ HELM_OPTS=${HELM_OPTS:-""} HELM_OPTIONS=${HELM_OPTIONS:-""} AUTO_CONFIG_HELM_OPTS="" +# An explicit installer override is rendered into YAML, never baked into the image. +case "${KUBEBLOCKS_VERSION:-}" in + ""|0.8|0.9) ;; + *) echo 'KUBEBLOCKS_VERSION must be 0.8 or 0.9' >&2; exit 1 ;; +esac + get_cm_value() { local namespace="$1" local name="$2" @@ -33,6 +39,7 @@ SEALOS_DISABLE_HTTPS=${SEALOS_DISABLE_HTTPS:-"${disableHttps:-$(get_cm_value sea add_set_string dbproviderConfig.disableHttps "${SEALOS_DISABLE_HTTPS}" SEALOS_CERT_SECRET_NAME=${SEALOS_CERT_SECRET_NAME:-"${certSecretName:-$(get_cm_value sealos-system sealos-config certSecretName)}"} add_set_string dbproviderConfig.certSecretName "${SEALOS_CERT_SECRET_NAME}" +add_set_string dbproviderConfig.kubeblocksVersion "${KUBEBLOCKS_VERSION:-}" add_set_string dbproviderConfig.metricsUrl "${metricsUrl:-}" add_set_string dbproviderConfig.minioUrl "${minioUrl:-}" add_set_string dbproviderConfig.minioAccessKey "${minioAccessKey:-}" diff --git a/main/database/deploy/scripts/update-backup-label.sh b/database/deploy/scripts/update-backup-label.sh similarity index 100% rename from main/database/deploy/scripts/update-backup-label.sh rename to database/deploy/scripts/update-backup-label.sh diff --git a/main/database/global.d.ts b/database/global.d.ts similarity index 62% rename from main/database/global.d.ts rename to database/global.d.ts index ec8f7f3..835a79b 100644 --- a/main/database/global.d.ts +++ b/database/global.d.ts @@ -1,3 +1,6 @@ +/// +/// + import { AppConfig } from './src/types/config'; declare global { diff --git a/main/database/next-i18next.config.js b/database/next-i18next.config.js similarity index 100% rename from main/database/next-i18next.config.js rename to database/next-i18next.config.js diff --git a/release-v5.1/database/next.config.js b/database/next.config.js similarity index 89% rename from release-v5.1/database/next.config.js rename to database/next.config.js index 275fffe..0d32022 100644 --- a/release-v5.1/database/next.config.js +++ b/database/next.config.js @@ -18,7 +18,7 @@ const nextConfig = { return config; }, transpilePackages: [ - '@sealos/ui', + '@labring/sealos-chakra-ui', '@labring/sealos-desktop-sdk', '@labring/sealos-driver-sdk', '@labring/sealos-shared-sdk', @@ -30,13 +30,7 @@ const nextConfig = { instrumentationHook: true }, async redirects() { - return [ - { - source: '/', - destination: '/dbs', - permanent: false - } - ]; + return [{ source: '/', destination: '/dbs', permanent: false }]; }, async rewrites() { return [ diff --git a/main/database/package.json b/database/package.json similarity index 94% rename from main/database/package.json rename to database/package.json index 4114722..440c031 100644 --- a/main/database/package.json +++ b/database/package.json @@ -24,12 +24,14 @@ "@emotion/react": "^11.11.1", "@emotion/styled": "^11.11.0", "@kubernetes/client-node": "^0.18.1", - "@next/font": "13.5.11", - "@scalar/api-reference-react": "^0.8.36", + "@labring/sealos-chakra-ui": "1.0.0", + "@labring/sealos-desktop-sdk": "0.1.24", "@labring/sealos-driver-sdk": "1.0.0", "@labring/sealos-gtm-sdk": "1.1.0", + "@labring/sealos-metrics-sdk": "0.2.0", "@labring/sealos-shared-sdk": "1.0.3", - "@sealos/ui": "workspace:^", + "@next/font": "13.5.11", + "@scalar/api-reference-react": "^0.8.36", "@tanstack/react-query": "^4.35.3", "@tanstack/react-table": "^8.10.7", "@tanstack/react-virtual": "^3.10.8", @@ -57,6 +59,7 @@ "next-i18next": "^15.3.0", "nprogress": "^0.2.0", "papaparse": "^5.4.1", + "picocolors": "^1.1.1", "prettier": "^2.8.8", "react": "18.3.1", "react-day-picker": "^8.8.2", @@ -66,14 +69,11 @@ "react-markdown": "^8.0.7", "react-syntax-highlighter": "^15.5.0", "sass": "^1.68.0", - "@labring/sealos-desktop-sdk": "0.1.24", "sharp": "^0.32.6", "typescript": "^5.2.2", "zod": "^4.0.8", "zod-openapi": "^5.2.0", - "zustand": "^4.4.1", - "picocolors": "^1.1.1", - "@labring/sealos-metrics-sdk": "0.2.0" + "zustand": "^4.4.1" }, "devDependencies": { "@playwright/test": "^1.58.1", @@ -90,13 +90,13 @@ "@types/react-dom": "18.3.7", "@types/react-syntax-highlighter": "^15.5.7", "@vitejs/plugin-react": "^5.1.1", + "@vitest/browser": "4.0.15", "@vitest/browser-playwright": "4.0.15", "eslint": "8.33.0", "eslint-config-next": "13.1.6", "svg-inline-loader": "^0.8.2", "vite-tsconfig-paths": "^5.1.4", "vitest": "^4.0.12", - "webpack-bundle-analyzer": "^4.9.1", - "@vitest/browser": "4.0.15" + "webpack-bundle-analyzer": "^4.9.1" } } diff --git a/main/database/public/favicon.ico b/database/public/favicon.ico similarity index 100% rename from main/database/public/favicon.ico rename to database/public/favicon.ico diff --git a/main/database/public/guide-image.png b/database/public/guide-image.png similarity index 100% rename from main/database/public/guide-image.png rename to database/public/guide-image.png diff --git a/main/database/public/images/apecloud-mysql.svg b/database/public/images/apecloud-mysql.svg similarity index 100% rename from main/database/public/images/apecloud-mysql.svg rename to database/public/images/apecloud-mysql.svg diff --git a/main/database/public/images/clickhouse.svg b/database/public/images/clickhouse.svg similarity index 100% rename from main/database/public/images/clickhouse.svg rename to database/public/images/clickhouse.svg diff --git a/main/database/public/images/kafka.svg b/database/public/images/kafka.svg similarity index 100% rename from main/database/public/images/kafka.svg rename to database/public/images/kafka.svg diff --git a/main/database/public/images/milvus.svg b/database/public/images/milvus.svg similarity index 100% rename from main/database/public/images/milvus.svg rename to database/public/images/milvus.svg diff --git a/main/database/public/images/mongodb.svg b/database/public/images/mongodb.svg similarity index 100% rename from main/database/public/images/mongodb.svg rename to database/public/images/mongodb.svg diff --git a/main/database/public/images/mysql.svg b/database/public/images/mysql.svg similarity index 100% rename from main/database/public/images/mysql.svg rename to database/public/images/mysql.svg diff --git a/release-v5.1/database/public/images/polardbx.svg b/database/public/images/polardbx.svg similarity index 100% rename from release-v5.1/database/public/images/polardbx.svg rename to database/public/images/polardbx.svg diff --git a/main/database/public/images/postgresql.svg b/database/public/images/postgresql.svg similarity index 100% rename from main/database/public/images/postgresql.svg rename to database/public/images/postgresql.svg diff --git a/main/database/public/images/pulsar.svg b/database/public/images/pulsar.svg similarity index 100% rename from main/database/public/images/pulsar.svg rename to database/public/images/pulsar.svg diff --git a/main/database/public/images/qdrant.svg b/database/public/images/qdrant.svg similarity index 100% rename from main/database/public/images/qdrant.svg rename to database/public/images/qdrant.svg diff --git a/main/database/public/images/redis.svg b/database/public/images/redis.svg similarity index 100% rename from main/database/public/images/redis.svg rename to database/public/images/redis.svg diff --git a/main/database/public/images/weaviate.svg b/database/public/images/weaviate.svg similarity index 100% rename from main/database/public/images/weaviate.svg rename to database/public/images/weaviate.svg diff --git a/release-v5.1/database/public/locales/en/common.json b/database/public/locales-kb08/en/common.json similarity index 100% rename from release-v5.1/database/public/locales/en/common.json rename to database/public/locales-kb08/en/common.json diff --git a/release-v5.1/database/public/locales/zh/common.json b/database/public/locales-kb08/zh/common.json similarity index 100% rename from release-v5.1/database/public/locales/zh/common.json rename to database/public/locales-kb08/zh/common.json diff --git a/main/database/public/locales/en/common.json b/database/public/locales/en/common.json similarity index 100% rename from main/database/public/locales/en/common.json rename to database/public/locales/en/common.json diff --git a/main/database/public/locales/zh/common.json b/database/public/locales/zh/common.json similarity index 100% rename from main/database/public/locales/zh/common.json rename to database/public/locales/zh/common.json diff --git a/main/database/public/logo.svg b/database/public/logo.svg similarity index 100% rename from main/database/public/logo.svg rename to database/public/logo.svg diff --git a/main/database/public/redirect.html b/database/public/redirect.html similarity index 100% rename from main/database/public/redirect.html rename to database/public/redirect.html diff --git a/main/database/src/api/backup.ts b/database/src/api/backup.ts similarity index 78% rename from main/database/src/api/backup.ts rename to database/src/api/backup.ts index 491fc31..8280118 100644 --- a/main/database/src/api/backup.ts +++ b/database/src/api/backup.ts @@ -1,8 +1,8 @@ import { GET, POST, DELETE } from '@/services/request'; -import type { Props as CreateBackupPros } from '@/pages/api/backup/create'; +import type { Props as CreateBackupPros } from '@/implementations/kb09/pages/api/backup/create'; import { adaptBackup } from '@/utils/adapt'; import { AutoBackupFormType } from '@/types/backup'; -import type { Props as UpdatePolicyProps } from '@/pages/api/backup/updatePolicy'; +import type { Props as UpdatePolicyProps } from '@/implementations/kb09/pages/api/backup/updatePolicy'; import { BackupItemType } from '@/types/db'; export const createBackup = (data: CreateBackupPros) => POST('/api/backup/create', data); diff --git a/main/database/src/api/db.ts b/database/src/api/db.ts similarity index 96% rename from main/database/src/api/db.ts rename to database/src/api/db.ts index b72ab5b..793010c 100644 --- a/main/database/src/api/db.ts +++ b/database/src/api/db.ts @@ -1,4 +1,4 @@ -import type { SecretResponse } from '@/pages/api/getSecretByName'; +import type { SecretResponse } from '@/implementations/kb09/pages/api/getSecretByName'; import { DELETE, GET, POST } from '@/services/request'; import type { BackupItemType, @@ -19,8 +19,8 @@ import { TFile } from '@/utils/kubeFileSystem'; import { LogResult } from '@/utils/logParsers/LogParser'; import { V1ObjectMeta, V1Service } from '@kubernetes/client-node'; import { AxiosRequestConfig } from 'axios'; -import { SwitchMsData } from '@/pages/api/pod/switchPodMs'; -import { EditPasswordReq } from '@/pages/api/db/editPassword'; +import { SwitchMsData } from '@/implementations/kb09/pages/api/pod/switchPodMs'; +import { EditPasswordReq } from '@/implementations/kb09/pages/api/db/editPassword'; import type { ResolveDBConnectTargetParams, ResolveDBConnectTargetResponse diff --git a/main/database/src/api/migrate.ts b/database/src/api/migrate.ts similarity index 100% rename from main/database/src/api/migrate.ts rename to database/src/api/migrate.ts diff --git a/main/database/src/api/platform.ts b/database/src/api/platform.ts similarity index 78% rename from main/database/src/api/platform.ts rename to database/src/api/platform.ts index da1fee8..2273c8d 100644 --- a/main/database/src/api/platform.ts +++ b/database/src/api/platform.ts @@ -1,6 +1,6 @@ -import type { Response as DBVersionMapType } from '@/pages/api/platform/getVersion'; -import type { Response as resourcePriceResponse } from '@/pages/api/platform/resourcePrice'; -import type { AddonItem } from '@/pages/api/getAddonList'; +import type { Response as DBVersionMapType } from '@/implementations/kb09/pages/api/platform/getVersion'; +import type { Response as resourcePriceResponse } from '@/implementations/kb09/pages/api/platform/resourcePrice'; +import type { AddonItem } from '@/implementations/kb09/pages/api/getAddonList'; import { GET, POST } from '@/services/request'; import type { UserTask } from '@/types/user'; import { getUserSession } from '@/utils/user'; diff --git a/main/database/src/api/tools.ts b/database/src/api/tools.ts similarity index 100% rename from main/database/src/api/tools.ts rename to database/src/api/tools.ts diff --git a/main/database/src/components/BaseTable/SwitchPage.tsx b/database/src/components/BaseTable/SwitchPage.tsx similarity index 100% rename from main/database/src/components/BaseTable/SwitchPage.tsx rename to database/src/components/BaseTable/SwitchPage.tsx diff --git a/main/database/src/components/BaseTable/baseTable.tsx b/database/src/components/BaseTable/baseTable.tsx similarity index 100% rename from main/database/src/components/BaseTable/baseTable.tsx rename to database/src/components/BaseTable/baseTable.tsx diff --git a/main/database/src/components/BaseTable/customMenu.tsx b/database/src/components/BaseTable/customMenu.tsx similarity index 100% rename from main/database/src/components/BaseTable/customMenu.tsx rename to database/src/components/BaseTable/customMenu.tsx diff --git a/main/database/src/components/ButtonGroup/index.tsx b/database/src/components/ButtonGroup/index.tsx similarity index 100% rename from main/database/src/components/ButtonGroup/index.tsx rename to database/src/components/ButtonGroup/index.tsx diff --git a/main/database/src/components/CodeBlock/index.tsx b/database/src/components/CodeBlock/index.tsx similarity index 100% rename from main/database/src/components/CodeBlock/index.tsx rename to database/src/components/CodeBlock/index.tsx diff --git a/main/database/src/components/DBStatusTag/index.tsx b/database/src/components/DBStatusTag/index.tsx similarity index 100% rename from main/database/src/components/DBStatusTag/index.tsx rename to database/src/components/DBStatusTag/index.tsx diff --git a/main/database/src/components/DataPicker/index.tsx b/database/src/components/DataPicker/index.tsx similarity index 99% rename from main/database/src/components/DataPicker/index.tsx rename to database/src/components/DataPicker/index.tsx index ec9d61c..220f3db 100644 --- a/main/database/src/components/DataPicker/index.tsx +++ b/database/src/components/DataPicker/index.tsx @@ -21,7 +21,7 @@ import { DateRange, DayPicker, SelectRangeEventHandler } from 'react-day-picker' import 'react-day-picker/dist/style.css'; import useDateTimeStore from '@/store/date'; import { parseTimeRange, formatTimeRange } from '@/utils/timeRange'; -import { MySelect } from '@sealos/ui'; +import { MySelect } from '@labring/sealos-chakra-ui'; import MyIcon from '../Icon'; import { Calendar } from 'lucide-react'; diff --git a/main/database/src/components/ErrorLog/LogCounts.tsx b/database/src/components/ErrorLog/LogCounts.tsx similarity index 100% rename from main/database/src/components/ErrorLog/LogCounts.tsx rename to database/src/components/ErrorLog/LogCounts.tsx diff --git a/main/database/src/components/ErrorLog/LogFilter.tsx b/database/src/components/ErrorLog/LogFilter.tsx similarity index 99% rename from main/database/src/components/ErrorLog/LogFilter.tsx rename to database/src/components/ErrorLog/LogFilter.tsx index 0a7d6ea..1c76a8d 100644 --- a/main/database/src/components/ErrorLog/LogFilter.tsx +++ b/database/src/components/ErrorLog/LogFilter.tsx @@ -18,7 +18,7 @@ import { Checkbox } from '@chakra-ui/react'; import { useTranslation } from 'next-i18next'; -import { SealosMenu } from '@sealos/ui'; +import { SealosMenu } from '@labring/sealos-chakra-ui'; import MyIcon from '@/components/Icon'; import { DBDetailType, SupportReconfigureDBType } from '@/types/db'; import { LogTypeEnum } from '@/constants/log'; diff --git a/main/database/src/components/ErrorLog/LogTable.tsx b/database/src/components/ErrorLog/LogTable.tsx similarity index 100% rename from main/database/src/components/ErrorLog/LogTable.tsx rename to database/src/components/ErrorLog/LogTable.tsx diff --git a/main/database/src/components/ErrorModal/index.tsx b/database/src/components/ErrorModal/index.tsx similarity index 100% rename from main/database/src/components/ErrorModal/index.tsx rename to database/src/components/ErrorModal/index.tsx diff --git a/main/database/src/components/FileSelect/index.tsx b/database/src/components/FileSelect/index.tsx similarity index 98% rename from main/database/src/components/FileSelect/index.tsx rename to database/src/components/FileSelect/index.tsx index d716a1e..d06f017 100644 --- a/main/database/src/components/FileSelect/index.tsx +++ b/database/src/components/FileSelect/index.tsx @@ -1,6 +1,6 @@ import { useLoading } from '@/hooks/useLoading'; import { Box, Flex, Icon, Text, type BoxProps } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { useTranslation } from 'next-i18next'; import { useCallback, useRef, useState } from 'react'; import MyIcon from '../Icon'; diff --git a/main/database/src/components/FormControl/index.tsx b/database/src/components/FormControl/index.tsx similarity index 100% rename from main/database/src/components/FormControl/index.tsx rename to database/src/components/FormControl/index.tsx diff --git a/main/database/src/components/Icon/icons/add.svg b/database/src/components/Icon/icons/add.svg similarity index 100% rename from main/database/src/components/Icon/icons/add.svg rename to database/src/components/Icon/icons/add.svg diff --git a/main/database/src/components/Icon/icons/analyze.svg b/database/src/components/Icon/icons/analyze.svg similarity index 100% rename from main/database/src/components/Icon/icons/analyze.svg rename to database/src/components/Icon/icons/analyze.svg diff --git a/main/database/src/components/Icon/icons/arrowDown.svg b/database/src/components/Icon/icons/arrowDown.svg similarity index 100% rename from main/database/src/components/Icon/icons/arrowDown.svg rename to database/src/components/Icon/icons/arrowDown.svg diff --git a/main/database/src/components/Icon/icons/arrowLeft.svg b/database/src/components/Icon/icons/arrowLeft.svg similarity index 100% rename from main/database/src/components/Icon/icons/arrowLeft.svg rename to database/src/components/Icon/icons/arrowLeft.svg diff --git a/main/database/src/components/Icon/icons/arrowUp.svg b/database/src/components/Icon/icons/arrowUp.svg similarity index 100% rename from main/database/src/components/Icon/icons/arrowUp.svg rename to database/src/components/Icon/icons/arrowUp.svg diff --git a/main/database/src/components/Icon/icons/backup.svg b/database/src/components/Icon/icons/backup.svg similarity index 100% rename from main/database/src/components/Icon/icons/backup.svg rename to database/src/components/Icon/icons/backup.svg diff --git a/main/database/src/components/Icon/icons/backupSettings.svg b/database/src/components/Icon/icons/backupSettings.svg similarity index 100% rename from main/database/src/components/Icon/icons/backupSettings.svg rename to database/src/components/Icon/icons/backupSettings.svg diff --git a/main/database/src/components/Icon/icons/book.svg b/database/src/components/Icon/icons/book.svg similarity index 100% rename from main/database/src/components/Icon/icons/book.svg rename to database/src/components/Icon/icons/book.svg diff --git a/main/database/src/components/Icon/icons/calendar.svg b/database/src/components/Icon/icons/calendar.svg similarity index 100% rename from main/database/src/components/Icon/icons/calendar.svg rename to database/src/components/Icon/icons/calendar.svg diff --git a/main/database/src/components/Icon/icons/change.svg b/database/src/components/Icon/icons/change.svg similarity index 100% rename from main/database/src/components/Icon/icons/change.svg rename to database/src/components/Icon/icons/change.svg diff --git a/main/database/src/components/Icon/icons/chevron-down.svg b/database/src/components/Icon/icons/chevron-down.svg similarity index 100% rename from main/database/src/components/Icon/icons/chevron-down.svg rename to database/src/components/Icon/icons/chevron-down.svg diff --git a/main/database/src/components/Icon/icons/config.svg b/database/src/components/Icon/icons/config.svg similarity index 100% rename from main/database/src/components/Icon/icons/config.svg rename to database/src/components/Icon/icons/config.svg diff --git a/main/database/src/components/Icon/icons/configmap.svg b/database/src/components/Icon/icons/configmap.svg similarity index 100% rename from main/database/src/components/Icon/icons/configmap.svg rename to database/src/components/Icon/icons/configmap.svg diff --git a/main/database/src/components/Icon/icons/connection.svg b/database/src/components/Icon/icons/connection.svg similarity index 100% rename from main/database/src/components/Icon/icons/connection.svg rename to database/src/components/Icon/icons/connection.svg diff --git a/main/database/src/components/Icon/icons/continue.svg b/database/src/components/Icon/icons/continue.svg similarity index 100% rename from main/database/src/components/Icon/icons/continue.svg rename to database/src/components/Icon/icons/continue.svg diff --git a/main/database/src/components/Icon/icons/copy.svg b/database/src/components/Icon/icons/copy.svg similarity index 100% rename from main/database/src/components/Icon/icons/copy.svg rename to database/src/components/Icon/icons/copy.svg diff --git a/main/database/src/components/Icon/icons/currency.svg b/database/src/components/Icon/icons/currency.svg similarity index 100% rename from main/database/src/components/Icon/icons/currency.svg rename to database/src/components/Icon/icons/currency.svg diff --git a/main/database/src/components/Icon/icons/delete.svg b/database/src/components/Icon/icons/delete.svg similarity index 100% rename from main/database/src/components/Icon/icons/delete.svg rename to database/src/components/Icon/icons/delete.svg diff --git a/main/database/src/components/Icon/icons/detail.svg b/database/src/components/Icon/icons/detail.svg similarity index 100% rename from main/database/src/components/Icon/icons/detail.svg rename to database/src/components/Icon/icons/detail.svg diff --git a/main/database/src/components/Icon/icons/docs.svg b/database/src/components/Icon/icons/docs.svg similarity index 100% rename from main/database/src/components/Icon/icons/docs.svg rename to database/src/components/Icon/icons/docs.svg diff --git a/main/database/src/components/Icon/icons/download.svg b/database/src/components/Icon/icons/download.svg similarity index 100% rename from main/database/src/components/Icon/icons/download.svg rename to database/src/components/Icon/icons/download.svg diff --git a/main/database/src/components/Icon/icons/edit.svg b/database/src/components/Icon/icons/edit.svg similarity index 100% rename from main/database/src/components/Icon/icons/edit.svg rename to database/src/components/Icon/icons/edit.svg diff --git a/main/database/src/components/Icon/icons/emptyChart.svg b/database/src/components/Icon/icons/emptyChart.svg similarity index 100% rename from main/database/src/components/Icon/icons/emptyChart.svg rename to database/src/components/Icon/icons/emptyChart.svg diff --git a/main/database/src/components/Icon/icons/error.svg b/database/src/components/Icon/icons/error.svg similarity index 100% rename from main/database/src/components/Icon/icons/error.svg rename to database/src/components/Icon/icons/error.svg diff --git a/main/database/src/components/Icon/icons/export.svg b/database/src/components/Icon/icons/export.svg similarity index 100% rename from main/database/src/components/Icon/icons/export.svg rename to database/src/components/Icon/icons/export.svg diff --git a/main/database/src/components/Icon/icons/file.svg b/database/src/components/Icon/icons/file.svg similarity index 100% rename from main/database/src/components/Icon/icons/file.svg rename to database/src/components/Icon/icons/file.svg diff --git a/main/database/src/components/Icon/icons/formInfo.svg b/database/src/components/Icon/icons/formInfo.svg similarity index 100% rename from main/database/src/components/Icon/icons/formInfo.svg rename to database/src/components/Icon/icons/formInfo.svg diff --git a/main/database/src/components/Icon/icons/gift.svg b/database/src/components/Icon/icons/gift.svg similarity index 100% rename from main/database/src/components/Icon/icons/gift.svg rename to database/src/components/Icon/icons/gift.svg diff --git a/main/database/src/components/Icon/icons/help.svg b/database/src/components/Icon/icons/help.svg similarity index 100% rename from main/database/src/components/Icon/icons/help.svg rename to database/src/components/Icon/icons/help.svg diff --git a/main/database/src/components/Icon/icons/import.svg b/database/src/components/Icon/icons/import.svg similarity index 100% rename from main/database/src/components/Icon/icons/import.svg rename to database/src/components/Icon/icons/import.svg diff --git a/main/database/src/components/Icon/icons/info.svg b/database/src/components/Icon/icons/info.svg similarity index 100% rename from main/database/src/components/Icon/icons/info.svg rename to database/src/components/Icon/icons/info.svg diff --git a/main/database/src/components/Icon/icons/instance.svg b/database/src/components/Icon/icons/instance.svg similarity index 100% rename from main/database/src/components/Icon/icons/instance.svg rename to database/src/components/Icon/icons/instance.svg diff --git a/main/database/src/components/Icon/icons/loading.svg b/database/src/components/Icon/icons/loading.svg similarity index 100% rename from main/database/src/components/Icon/icons/loading.svg rename to database/src/components/Icon/icons/loading.svg diff --git a/main/database/src/components/Icon/icons/log.svg b/database/src/components/Icon/icons/log.svg similarity index 100% rename from main/database/src/components/Icon/icons/log.svg rename to database/src/components/Icon/icons/log.svg diff --git a/main/database/src/components/Icon/icons/logo-linear.svg b/database/src/components/Icon/icons/logo-linear.svg similarity index 100% rename from main/database/src/components/Icon/icons/logo-linear.svg rename to database/src/components/Icon/icons/logo-linear.svg diff --git a/main/database/src/components/Icon/icons/logo.svg b/database/src/components/Icon/icons/logo.svg similarity index 100% rename from main/database/src/components/Icon/icons/logo.svg rename to database/src/components/Icon/icons/logo.svg diff --git a/main/database/src/components/Icon/icons/monitor.svg b/database/src/components/Icon/icons/monitor.svg similarity index 100% rename from main/database/src/components/Icon/icons/monitor.svg rename to database/src/components/Icon/icons/monitor.svg diff --git a/main/database/src/components/Icon/icons/more.svg b/database/src/components/Icon/icons/more.svg similarity index 100% rename from main/database/src/components/Icon/icons/more.svg rename to database/src/components/Icon/icons/more.svg diff --git a/main/database/src/components/Icon/icons/noEvents.svg b/database/src/components/Icon/icons/noEvents.svg similarity index 100% rename from main/database/src/components/Icon/icons/noEvents.svg rename to database/src/components/Icon/icons/noEvents.svg diff --git a/main/database/src/components/Icon/icons/overview.svg b/database/src/components/Icon/icons/overview.svg similarity index 100% rename from main/database/src/components/Icon/icons/overview.svg rename to database/src/components/Icon/icons/overview.svg diff --git a/main/database/src/components/Icon/icons/pause.svg b/database/src/components/Icon/icons/pause.svg similarity index 100% rename from main/database/src/components/Icon/icons/pause.svg rename to database/src/components/Icon/icons/pause.svg diff --git a/main/database/src/components/Icon/icons/plus.svg b/database/src/components/Icon/icons/plus.svg similarity index 100% rename from main/database/src/components/Icon/icons/plus.svg rename to database/src/components/Icon/icons/plus.svg diff --git a/main/database/src/components/Icon/icons/podList.svg b/database/src/components/Icon/icons/podList.svg similarity index 100% rename from main/database/src/components/Icon/icons/podList.svg rename to database/src/components/Icon/icons/podList.svg diff --git a/main/database/src/components/Icon/icons/pods.svg b/database/src/components/Icon/icons/pods.svg similarity index 100% rename from main/database/src/components/Icon/icons/pods.svg rename to database/src/components/Icon/icons/pods.svg diff --git a/main/database/src/components/Icon/icons/read.svg b/database/src/components/Icon/icons/read.svg similarity index 100% rename from main/database/src/components/Icon/icons/read.svg rename to database/src/components/Icon/icons/read.svg diff --git a/main/database/src/components/Icon/icons/refresh.svg b/database/src/components/Icon/icons/refresh.svg similarity index 100% rename from main/database/src/components/Icon/icons/refresh.svg rename to database/src/components/Icon/icons/refresh.svg diff --git a/main/database/src/components/Icon/icons/restart.svg b/database/src/components/Icon/icons/restart.svg similarity index 100% rename from main/database/src/components/Icon/icons/restart.svg rename to database/src/components/Icon/icons/restart.svg diff --git a/main/database/src/components/Icon/icons/restore.svg b/database/src/components/Icon/icons/restore.svg similarity index 100% rename from main/database/src/components/Icon/icons/restore.svg rename to database/src/components/Icon/icons/restore.svg diff --git a/main/database/src/components/Icon/icons/search.svg b/database/src/components/Icon/icons/search.svg similarity index 100% rename from main/database/src/components/Icon/icons/search.svg rename to database/src/components/Icon/icons/search.svg diff --git a/main/database/src/components/Icon/icons/settings.svg b/database/src/components/Icon/icons/settings.svg similarity index 100% rename from main/database/src/components/Icon/icons/settings.svg rename to database/src/components/Icon/icons/settings.svg diff --git a/main/database/src/components/Icon/icons/slider.svg b/database/src/components/Icon/icons/slider.svg similarity index 100% rename from main/database/src/components/Icon/icons/slider.svg rename to database/src/components/Icon/icons/slider.svg diff --git a/main/database/src/components/Icon/icons/start.svg b/database/src/components/Icon/icons/start.svg similarity index 100% rename from main/database/src/components/Icon/icons/start.svg rename to database/src/components/Icon/icons/start.svg diff --git a/main/database/src/components/Icon/icons/statusDetail.svg b/database/src/components/Icon/icons/statusDetail.svg similarity index 100% rename from main/database/src/components/Icon/icons/statusDetail.svg rename to database/src/components/Icon/icons/statusDetail.svg diff --git a/main/database/src/components/Icon/icons/success.svg b/database/src/components/Icon/icons/success.svg similarity index 100% rename from main/database/src/components/Icon/icons/success.svg rename to database/src/components/Icon/icons/success.svg diff --git a/main/database/src/components/Icon/icons/target.svg b/database/src/components/Icon/icons/target.svg similarity index 100% rename from main/database/src/components/Icon/icons/target.svg rename to database/src/components/Icon/icons/target.svg diff --git a/main/database/src/components/Icon/icons/terminal.svg b/database/src/components/Icon/icons/terminal.svg similarity index 100% rename from main/database/src/components/Icon/icons/terminal.svg rename to database/src/components/Icon/icons/terminal.svg diff --git a/main/database/src/components/Icon/icons/textRecognition.svg b/database/src/components/Icon/icons/textRecognition.svg similarity index 100% rename from main/database/src/components/Icon/icons/textRecognition.svg rename to database/src/components/Icon/icons/textRecognition.svg diff --git a/main/database/src/components/Icon/icons/time.svg b/database/src/components/Icon/icons/time.svg similarity index 100% rename from main/database/src/components/Icon/icons/time.svg rename to database/src/components/Icon/icons/time.svg diff --git a/main/database/src/components/Icon/icons/to.svg b/database/src/components/Icon/icons/to.svg similarity index 100% rename from main/database/src/components/Icon/icons/to.svg rename to database/src/components/Icon/icons/to.svg diff --git a/main/database/src/components/Icon/icons/unread.svg b/database/src/components/Icon/icons/unread.svg similarity index 100% rename from main/database/src/components/Icon/icons/unread.svg rename to database/src/components/Icon/icons/unread.svg diff --git a/main/database/src/components/Icon/icons/upload.svg b/database/src/components/Icon/icons/upload.svg similarity index 100% rename from main/database/src/components/Icon/icons/upload.svg rename to database/src/components/Icon/icons/upload.svg diff --git a/main/database/src/components/Icon/icons/upperRight.svg b/database/src/components/Icon/icons/upperRight.svg similarity index 100% rename from main/database/src/components/Icon/icons/upperRight.svg rename to database/src/components/Icon/icons/upperRight.svg diff --git a/main/database/src/components/Icon/icons/warning.svg b/database/src/components/Icon/icons/warning.svg similarity index 100% rename from main/database/src/components/Icon/icons/warning.svg rename to database/src/components/Icon/icons/warning.svg diff --git a/main/database/src/components/Icon/icons/warningInfo.svg b/database/src/components/Icon/icons/warningInfo.svg similarity index 100% rename from main/database/src/components/Icon/icons/warningInfo.svg rename to database/src/components/Icon/icons/warningInfo.svg diff --git a/main/database/src/components/Icon/index.tsx b/database/src/components/Icon/index.tsx similarity index 100% rename from main/database/src/components/Icon/index.tsx rename to database/src/components/Icon/index.tsx diff --git a/main/database/src/components/Icons/InfoCircleIcon.tsx b/database/src/components/Icons/InfoCircleIcon.tsx similarity index 100% rename from main/database/src/components/Icons/InfoCircleIcon.tsx rename to database/src/components/Icons/InfoCircleIcon.tsx diff --git a/main/database/src/components/InsufficientQuotaDialog.tsx b/database/src/components/InsufficientQuotaDialog.tsx similarity index 100% rename from main/database/src/components/InsufficientQuotaDialog.tsx rename to database/src/components/InsufficientQuotaDialog.tsx diff --git a/main/database/src/components/LogBarChart/index.tsx b/database/src/components/LogBarChart/index.tsx similarity index 100% rename from main/database/src/components/LogBarChart/index.tsx rename to database/src/components/LogBarChart/index.tsx diff --git a/main/database/src/components/MonitorChart/index.tsx b/database/src/components/MonitorChart/index.tsx similarity index 100% rename from main/database/src/components/MonitorChart/index.tsx rename to database/src/components/MonitorChart/index.tsx diff --git a/main/database/src/components/MyTooltip/index.tsx b/database/src/components/MyTooltip/index.tsx similarity index 100% rename from main/database/src/components/MyTooltip/index.tsx rename to database/src/components/MyTooltip/index.tsx diff --git a/main/database/src/components/PodStatus/index.tsx b/database/src/components/PodStatus/index.tsx similarity index 96% rename from main/database/src/components/PodStatus/index.tsx rename to database/src/components/PodStatus/index.tsx index 96b0bac..5fa3cef 100644 --- a/main/database/src/components/PodStatus/index.tsx +++ b/database/src/components/PodStatus/index.tsx @@ -3,7 +3,7 @@ import { Box, Flex, useTheme } from '@chakra-ui/react'; import { PodStatusEnum, podStatusMap } from '@/constants/db'; import type { V1ContainerStatus } from '@kubernetes/client-node'; import dayjs from 'dayjs'; -import { MyTooltip } from '@sealos/ui'; +import { MyTooltip } from '@labring/sealos-chakra-ui'; const PodStatus = ({ containerStatuses }: { containerStatuses: V1ContainerStatus[] }) => { const theme = useTheme(); diff --git a/main/database/src/components/PriceBox/index.tsx b/database/src/components/PriceBox/index.tsx similarity index 97% rename from main/database/src/components/PriceBox/index.tsx rename to database/src/components/PriceBox/index.tsx index 8653879..a1a57e2 100644 --- a/main/database/src/components/PriceBox/index.tsx +++ b/database/src/components/PriceBox/index.tsx @@ -2,7 +2,7 @@ import { useHostConfigStore } from '@/store/hostConfig'; import { SOURCE_PRICE } from '@/store/static'; import { I18nCommonKey } from '@/types/i18next'; import { Box, Flex, useTheme, Text, Center } from '@chakra-ui/react'; -import { CurrencySymbol, MyTooltip } from '@sealos/ui'; +import { CurrencySymbol, MyTooltip } from '@labring/sealos-chakra-ui'; import { useTranslation } from 'next-i18next'; import { useMemo } from 'react'; import MyIcon from '@/components/Icon'; diff --git a/main/database/src/components/QuotaBox/index.tsx b/database/src/components/QuotaBox/index.tsx similarity index 97% rename from main/database/src/components/QuotaBox/index.tsx rename to database/src/components/QuotaBox/index.tsx index 40f8502..6c24091 100644 --- a/main/database/src/components/QuotaBox/index.tsx +++ b/database/src/components/QuotaBox/index.tsx @@ -1,7 +1,7 @@ import React, { useMemo } from 'react'; import { Box, Flex, useTheme, Progress, css, Text } from '@chakra-ui/react'; import { useTranslation } from 'next-i18next'; -import { MyTooltip } from '@sealos/ui'; +import { MyTooltip } from '@labring/sealos-chakra-ui'; import { useUserQuota, diff --git a/main/database/src/components/RangeDate/index.tsx b/database/src/components/RangeDate/index.tsx similarity index 100% rename from main/database/src/components/RangeDate/index.tsx rename to database/src/components/RangeDate/index.tsx diff --git a/main/database/src/components/RangeDate/style.module.scss b/database/src/components/RangeDate/style.module.scss similarity index 100% rename from main/database/src/components/RangeDate/style.module.scss rename to database/src/components/RangeDate/style.module.scss diff --git a/main/database/src/components/RangeSlider/index.tsx b/database/src/components/RangeSlider/index.tsx similarity index 100% rename from main/database/src/components/RangeSlider/index.tsx rename to database/src/components/RangeSlider/index.tsx diff --git a/main/database/src/components/Sidebar/index.tsx b/database/src/components/Sidebar/index.tsx similarity index 100% rename from main/database/src/components/Sidebar/index.tsx rename to database/src/components/Sidebar/index.tsx diff --git a/main/database/src/components/Textarea/TagTextarea.tsx b/database/src/components/Textarea/TagTextarea.tsx similarity index 98% rename from main/database/src/components/Textarea/TagTextarea.tsx rename to database/src/components/Textarea/TagTextarea.tsx index 1dfa13b..d2c5690 100644 --- a/main/database/src/components/Textarea/TagTextarea.tsx +++ b/database/src/components/Textarea/TagTextarea.tsx @@ -1,5 +1,5 @@ import { Box, BoxProps, Flex, Input, Tag, TagCloseButton, TagLabel } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { useTranslation } from 'next-i18next'; import { useCallback, useRef, useState } from 'react'; diff --git a/main/database/src/components/Tip/index.tsx b/database/src/components/Tip/index.tsx similarity index 100% rename from main/database/src/components/Tip/index.tsx rename to database/src/components/Tip/index.tsx diff --git a/main/database/src/components/YamlCode/hljs.ts b/database/src/components/YamlCode/hljs.ts similarity index 100% rename from main/database/src/components/YamlCode/hljs.ts rename to database/src/components/YamlCode/hljs.ts diff --git a/main/database/src/components/YamlCode/index.module.scss b/database/src/components/YamlCode/index.module.scss similarity index 100% rename from main/database/src/components/YamlCode/index.module.scss rename to database/src/components/YamlCode/index.module.scss diff --git a/main/database/src/components/YamlCode/index.tsx b/database/src/components/YamlCode/index.tsx similarity index 100% rename from main/database/src/components/YamlCode/index.tsx rename to database/src/components/YamlCode/index.tsx diff --git a/main/database/src/config.ts b/database/src/config.ts similarity index 100% rename from main/database/src/config.ts rename to database/src/config.ts diff --git a/main/database/src/config/vlogs.ts b/database/src/config/vlogs.ts similarity index 100% rename from main/database/src/config/vlogs.ts rename to database/src/config/vlogs.ts diff --git a/main/database/src/constants/backup.ts b/database/src/constants/backup.ts similarity index 100% rename from main/database/src/constants/backup.ts rename to database/src/constants/backup.ts diff --git a/main/database/src/constants/dataflow.ts b/database/src/constants/dataflow.ts similarity index 100% rename from main/database/src/constants/dataflow.ts rename to database/src/constants/dataflow.ts diff --git a/main/database/src/constants/db.ts b/database/src/constants/db.ts similarity index 99% rename from main/database/src/constants/db.ts rename to database/src/constants/db.ts index ff5dea2..e140adb 100644 --- a/main/database/src/constants/db.ts +++ b/database/src/constants/db.ts @@ -11,7 +11,7 @@ import { } from '@/types/db'; import { I18nCommonKey } from '@/types/i18next'; import { CpuSlideMarkList, MemorySlideMarkList } from './editApp'; -import type { SecretResponse } from '@/pages/api/getSecretByName'; +import type { SecretResponse } from '@/implementations/kb09/pages/api/getSecretByName'; export const crLabelKey = 'sealos-database-cr'; export const CloudMigraionLabel = 'sealos-database-cr-migrate'; diff --git a/main/database/src/constants/editApp.ts b/database/src/constants/editApp.ts similarity index 100% rename from main/database/src/constants/editApp.ts rename to database/src/constants/editApp.ts diff --git a/main/database/src/constants/log.ts b/database/src/constants/log.ts similarity index 100% rename from main/database/src/constants/log.ts rename to database/src/constants/log.ts diff --git a/main/database/src/constants/monitor.ts b/database/src/constants/monitor.ts similarity index 100% rename from main/database/src/constants/monitor.ts rename to database/src/constants/monitor.ts diff --git a/release-v5.1/database/src/constants/theme.ts b/database/src/constants/theme.ts similarity index 94% rename from release-v5.1/database/src/constants/theme.ts rename to database/src/constants/theme.ts index e955941..5e447d9 100644 --- a/release-v5.1/database/src/constants/theme.ts +++ b/database/src/constants/theme.ts @@ -1,5 +1,5 @@ import { extendTheme } from '@chakra-ui/react'; -import { theme as SealosTheme } from '@sealos/ui'; +import { theme as SealosTheme } from '@labring/sealos-chakra-ui'; import { checkboxAnatomy } from '@chakra-ui/anatomy'; import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; diff --git a/main/database/src/hooks/driver.tsx b/database/src/hooks/driver.tsx similarity index 100% rename from main/database/src/hooks/driver.tsx rename to database/src/hooks/driver.tsx diff --git a/main/database/src/hooks/useClientAppConfig.ts b/database/src/hooks/useClientAppConfig.ts similarity index 100% rename from main/database/src/hooks/useClientAppConfig.ts rename to database/src/hooks/useClientAppConfig.ts diff --git a/main/database/src/hooks/useClientSideValue.tsx b/database/src/hooks/useClientSideValue.tsx similarity index 100% rename from main/database/src/hooks/useClientSideValue.tsx rename to database/src/hooks/useClientSideValue.tsx diff --git a/main/database/src/hooks/useConfirm.tsx b/database/src/hooks/useConfirm.tsx similarity index 100% rename from main/database/src/hooks/useConfirm.tsx rename to database/src/hooks/useConfirm.tsx diff --git a/release-v5.1/database/src/hooks/useCopyData.ts b/database/src/hooks/useCopyData.ts similarity index 93% rename from release-v5.1/database/src/hooks/useCopyData.ts rename to database/src/hooks/useCopyData.ts index 47d3bbd..f4c370d 100644 --- a/release-v5.1/database/src/hooks/useCopyData.ts +++ b/database/src/hooks/useCopyData.ts @@ -1,4 +1,4 @@ -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; /** * copy text data diff --git a/main/database/src/hooks/useDBOperation.ts b/database/src/hooks/useDBOperation.ts similarity index 98% rename from main/database/src/hooks/useDBOperation.ts rename to database/src/hooks/useDBOperation.ts index b8721a0..4edb116 100644 --- a/main/database/src/hooks/useDBOperation.ts +++ b/database/src/hooks/useDBOperation.ts @@ -1,5 +1,5 @@ import { useCallback, useState } from 'react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { track } from '@labring/sealos-gtm-sdk'; import { ResponseCode } from '@/types/response'; import { useTranslation } from 'next-i18next'; diff --git a/main/database/src/hooks/useLoading.tsx b/database/src/hooks/useLoading.tsx similarity index 100% rename from main/database/src/hooks/useLoading.tsx rename to database/src/hooks/useLoading.tsx diff --git a/main/database/src/hooks/useScreen.ts b/database/src/hooks/useScreen.ts similarity index 100% rename from main/database/src/hooks/useScreen.ts rename to database/src/hooks/useScreen.ts diff --git a/release-v5.1/database/src/api/backup.ts b/database/src/implementations/kb08/api/backup.ts similarity index 53% rename from release-v5.1/database/src/api/backup.ts rename to database/src/implementations/kb08/api/backup.ts index d0912da..92c07c6 100644 --- a/release-v5.1/database/src/api/backup.ts +++ b/database/src/implementations/kb08/api/backup.ts @@ -1,9 +1,9 @@ -import { GET, POST, DELETE } from '@/services/request'; -import type { Props as CreateBackupPros } from '@/pages/api/backup/create'; -import { adaptBackup } from '@/utils/adapt'; -import { AutoBackupFormType } from '@/types/backup'; -import type { Props as UpdatePolicyProps } from '@/pages/api/backup/updatePolicy'; -import { BackupItemType } from '@/types/db'; +import { GET, POST, DELETE } from '@/implementations/kb08/services/request'; +import type { Props as CreateBackupPros } from '@/implementations/kb08/pages/api/backup/create'; +import { adaptBackup } from '@/implementations/kb08/utils/adapt'; +import { AutoBackupFormType } from '@/implementations/kb08/types/backup'; +import type { Props as UpdatePolicyProps } from '@/implementations/kb08/pages/api/backup/updatePolicy'; +import { BackupItemType } from '@/implementations/kb08/types/db'; export const createBackup = (data: CreateBackupPros) => POST('/api/backup/create', data); diff --git a/release-v5.1/database/src/api/db.ts b/database/src/implementations/kb08/api/db.ts similarity index 88% rename from release-v5.1/database/src/api/db.ts rename to database/src/implementations/kb08/api/db.ts index da2b82e..a1d4c55 100644 --- a/release-v5.1/database/src/api/db.ts +++ b/database/src/implementations/kb08/api/db.ts @@ -1,5 +1,5 @@ -import type { SecretResponse } from '@/pages/api/getSecretByName'; -import { DELETE, GET, POST } from '@/services/request'; +import type { SecretResponse } from '@/implementations/kb08/pages/api/getSecretByName'; +import { DELETE, GET, POST } from '@/implementations/kb08/services/request'; import type { BackupItemType, ConfigParameterItem, @@ -10,18 +10,18 @@ import type { OpsRequestItemType, PodDetailType, SupportReconfigureDBType -} from '@/types/db'; -import { LogTypeEnum } from '@/constants/log'; +} from '@/implementations/kb08/types/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; import { MonitorChartDataResult } from '@/types/monitor'; -import { adaptEvents } from '@/utils/adapt'; -import { json2BasicOps } from '@/utils/json2Yaml'; +import { adaptEvents } from '@/implementations/kb08/utils/adapt'; +import { json2BasicOps } from '@/implementations/kb08/utils/json2Yaml'; import { TFile } from '@/utils/kubeFileSystem'; -import { LogResult } from '@/utils/logParsers/LogParser'; +import { LogResult } from '@/implementations/kb08/utils/logParsers/LogParser'; import { V1ObjectMeta, V1Service, V1StatefulSet } from '@kubernetes/client-node'; import { AxiosRequestConfig } from 'axios'; -import { SwitchMsData } from '@/pages/api/pod/switchPodMs'; -import { EditPasswordReq } from '@/pages/api/db/editPassword'; -import { RequiredByKeys } from '@/utils/tools'; +import { SwitchMsData } from '@/implementations/kb08/pages/api/pod/switchPodMs'; +import { EditPasswordReq } from '@/implementations/kb08/pages/api/db/editPassword'; +import { RequiredByKeys } from '@/implementations/kb08/utils/tools'; export const getMyDBList = () => GET('/api/getDBList'); diff --git a/release-v5.1/database/src/api/migrate.ts b/database/src/implementations/kb08/api/migrate.ts similarity index 87% rename from release-v5.1/database/src/api/migrate.ts rename to database/src/implementations/kb08/api/migrate.ts index 3b4c181..aac42e7 100644 --- a/release-v5.1/database/src/api/migrate.ts +++ b/database/src/implementations/kb08/api/migrate.ts @@ -1,6 +1,6 @@ -import { DELETE, GET, POST } from '@/services/request'; -import { DumpForm, InternetMigrationCR } from '@/types/migrate'; -import { adaptMigrateList } from '@/utils/adapt'; +import { DELETE, GET, POST } from '@/implementations/kb08/services/request'; +import { DumpForm, InternetMigrationCR } from '@/implementations/kb08/types/migrate'; +import { adaptMigrateList } from '@/implementations/kb08/utils/adapt'; import { V1JobStatus, V1Pod } from '@kubernetes/client-node'; export const getMigrateList = (migrateName: string) => diff --git a/release-v5.1/database/src/api/platform.ts b/database/src/implementations/kb08/api/platform.ts similarity index 66% rename from release-v5.1/database/src/api/platform.ts rename to database/src/implementations/kb08/api/platform.ts index fd5f2bb..a2d4789 100644 --- a/release-v5.1/database/src/api/platform.ts +++ b/database/src/implementations/kb08/api/platform.ts @@ -1,11 +1,11 @@ -import { SystemEnvResponse } from '@/pages/api/getEnv'; -import type { Response as DBVersionMapType } from '@/pages/api/platform/getVersion'; -import type { Response as resourcePriceResponse } from '@/pages/api/platform/resourcePrice'; -import type { AddonItem } from '@/pages/api/getAddonList'; -import type { PaymentConfigResponse } from '@/pages/api/platform/paymentConfig'; -import { GET, POST } from '@/services/request'; -import type { UserQuotaItemType, UserTask } from '@/types/user'; -import { getUserSession } from '@/utils/user'; +import { SystemEnvResponse } from '@/implementations/kb08/pages/api/getEnv'; +import type { Response as DBVersionMapType } from '@/implementations/kb08/pages/api/platform/getVersion'; +import type { Response as resourcePriceResponse } from '@/implementations/kb08/pages/api/platform/resourcePrice'; +import type { AddonItem } from '@/implementations/kb08/pages/api/getAddonList'; +import type { PaymentConfigResponse } from '@/implementations/kb08/pages/api/platform/paymentConfig'; +import { GET, POST } from '@/implementations/kb08/services/request'; +import type { UserQuotaItemType, UserTask } from '@/implementations/kb08/types/user'; +import { getUserSession } from '@/implementations/kb08/utils/user'; import { AxiosProgressEvent } from 'axios'; export const getResourcePrice = () => GET('/api/platform/resourcePrice'); diff --git a/release-v5.1/database/src/components/ApiDocs.tsx b/database/src/implementations/kb08/components/ApiDocs.tsx similarity index 78% rename from release-v5.1/database/src/components/ApiDocs.tsx rename to database/src/implementations/kb08/components/ApiDocs.tsx index 628c1d1..e930a20 100644 --- a/release-v5.1/database/src/components/ApiDocs.tsx +++ b/database/src/implementations/kb08/components/ApiDocs.tsx @@ -1,5 +1,5 @@ import { ApiReferenceReact } from '@scalar/api-reference-react'; -import { document } from '@/types/apis'; +import { document } from '@/implementations/kb08/types/apis/index'; import '@scalar/api-reference-react/style.css'; diff --git a/release-v5.1/database/src/components/ApiV2AlphaDocs.tsx b/database/src/implementations/kb08/components/ApiV2AlphaDocs.tsx similarity index 78% rename from release-v5.1/database/src/components/ApiV2AlphaDocs.tsx rename to database/src/implementations/kb08/components/ApiV2AlphaDocs.tsx index 9bcfcf2..8c27684 100644 --- a/release-v5.1/database/src/components/ApiV2AlphaDocs.tsx +++ b/database/src/implementations/kb08/components/ApiV2AlphaDocs.tsx @@ -1,6 +1,6 @@ import { ApiReferenceReact } from '@scalar/api-reference-react'; -import { getUserKubeConfig } from '@/utils/user'; -import { document } from '@/types/apis/v2alpha'; +import { getUserKubeConfig } from '@/implementations/kb08/utils/user'; +import { document } from '@/implementations/kb08/types/apis/v2alpha/index'; import '@scalar/api-reference-react/style.css'; diff --git a/release-v5.1/database/src/components/BaseTable/customMenu.tsx b/database/src/implementations/kb08/components/BaseTable/customMenu.tsx similarity index 100% rename from release-v5.1/database/src/components/BaseTable/customMenu.tsx rename to database/src/implementations/kb08/components/BaseTable/customMenu.tsx diff --git a/release-v5.1/database/src/components/DBStatusTag/index.tsx b/database/src/implementations/kb08/components/DBStatusTag/index.tsx similarity index 95% rename from release-v5.1/database/src/components/DBStatusTag/index.tsx rename to database/src/implementations/kb08/components/DBStatusTag/index.tsx index bc7c1ab..ec2e879 100644 --- a/release-v5.1/database/src/components/DBStatusTag/index.tsx +++ b/database/src/implementations/kb08/components/DBStatusTag/index.tsx @@ -13,12 +13,12 @@ import { Tooltip, Text } from '@chakra-ui/react'; -import type { DBConditionItemType, DBStatusMapType } from '@/types/db'; -import MyIcon from '../Icon'; +import type { DBConditionItemType, DBStatusMapType } from '@/implementations/kb08/types/db'; +import MyIcon from '@/components/Icon/index'; import { useTranslation } from 'next-i18next'; -import { formatPodTime } from '@/utils/tools'; +import { formatPodTime } from '@/implementations/kb08/utils/tools'; import { I18nCommonKey } from '@/types/i18next'; -import { DBStatusEnum } from '@/constants/db'; +import { DBStatusEnum } from '@/implementations/kb08/constants/db'; import { Maximize2 } from 'lucide-react'; type DBStatusDetailsModalProps = { diff --git a/release-v5.1/database/src/components/DataPicker/index.tsx b/database/src/implementations/kb08/components/DataPicker/index.tsx similarity index 99% rename from release-v5.1/database/src/components/DataPicker/index.tsx rename to database/src/implementations/kb08/components/DataPicker/index.tsx index dfebee7..c03eb07 100644 --- a/release-v5.1/database/src/components/DataPicker/index.tsx +++ b/database/src/implementations/kb08/components/DataPicker/index.tsx @@ -19,9 +19,9 @@ import { useTranslation } from 'next-i18next'; import { ChangeEventHandler, useEffect, useMemo, useState } from 'react'; import { DateRange, DayPicker, SelectRangeEventHandler } from 'react-day-picker'; import 'react-day-picker/dist/style.css'; -import useDateTimeStore from '@/store/date'; +import useDateTimeStore from '@/implementations/kb08/store/date'; import { parseTimeRange, formatTimeRange } from '@/utils/timeRange'; -import MyIcon from '../Icon'; +import MyIcon from '@/components/Icon/index'; import { Calendar } from 'lucide-react'; interface DatePickerProps extends FlexProps { diff --git a/release-v5.1/database/src/components/ErrorLog/LogFilter.tsx b/database/src/implementations/kb08/components/ErrorLog/LogFilter.tsx similarity index 98% rename from release-v5.1/database/src/components/ErrorLog/LogFilter.tsx rename to database/src/implementations/kb08/components/ErrorLog/LogFilter.tsx index 659380b..17918d6 100644 --- a/release-v5.1/database/src/components/ErrorLog/LogFilter.tsx +++ b/database/src/implementations/kb08/components/ErrorLog/LogFilter.tsx @@ -18,17 +18,17 @@ import { Checkbox } from '@chakra-ui/react'; import { useTranslation } from 'next-i18next'; -import { SealosMenu } from '@sealos/ui'; +import { SealosMenu } from '@labring/sealos-chakra-ui'; import MyIcon from '@/components/Icon'; -import { DBDetailType, SupportReconfigureDBType } from '@/types/db'; -import { LogTypeEnum } from '@/constants/log'; +import { DBDetailType, SupportReconfigureDBType } from '@/implementations/kb08/types/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; import { TFile } from '@/utils/kubeFileSystem'; import { I18nCommonKey } from '@/types/i18next'; import dynamic from 'next/dynamic'; import React, { useEffect, useState, useMemo } from 'react'; import { Search, ChevronDown } from 'lucide-react'; -const DatePicker = dynamic(() => import('@/components/DataPicker'), { ssr: false }); +const DatePicker = dynamic(() => import('@/implementations/kb08/components/DataPicker/index'), { ssr: false }); interface LogFilterProps { db: DBDetailType; diff --git a/release-v5.1/database/src/components/ErrorLog/LogTable.tsx b/database/src/implementations/kb08/components/ErrorLog/LogTable.tsx similarity index 99% rename from release-v5.1/database/src/components/ErrorLog/LogTable.tsx rename to database/src/implementations/kb08/components/ErrorLog/LogTable.tsx index 0b83cb9..3dda008 100644 --- a/release-v5.1/database/src/components/ErrorLog/LogTable.tsx +++ b/database/src/implementations/kb08/components/ErrorLog/LogTable.tsx @@ -1,6 +1,6 @@ import { BaseTable } from '@/components/BaseTable/baseTable'; import MyIcon from '@/components/Icon'; -import { formatTime } from '@/utils/tools'; +import { formatTime } from '@/implementations/kb08/utils/tools'; import { Box, Button, Flex, Text } from '@chakra-ui/react'; import { useTranslation } from 'next-i18next'; import { diff --git a/release-v5.1/database/src/components/ErrorModal/index.tsx b/database/src/implementations/kb08/components/ErrorModal/index.tsx similarity index 97% rename from release-v5.1/database/src/components/ErrorModal/index.tsx rename to database/src/implementations/kb08/components/ErrorModal/index.tsx index afb64a7..99e74a3 100644 --- a/release-v5.1/database/src/components/ErrorModal/index.tsx +++ b/database/src/implementations/kb08/components/ErrorModal/index.tsx @@ -14,7 +14,7 @@ import MyIcon from '@/components/Icon'; import { useTranslation } from 'next-i18next'; import { ResponseCode } from '@/types/response'; import { sealosApp } from '@labring/sealos-desktop-sdk/app'; -import { getPaymentConfig } from '@/api/platform'; +import { getPaymentConfig } from '@/implementations/kb08/api/platform'; const ErrorModal = ({ title, diff --git a/release-v5.1/database/src/components/PodStatus/index.tsx b/database/src/implementations/kb08/components/PodStatus/index.tsx similarity index 91% rename from release-v5.1/database/src/components/PodStatus/index.tsx rename to database/src/implementations/kb08/components/PodStatus/index.tsx index 96b0bac..36ca6a8 100644 --- a/release-v5.1/database/src/components/PodStatus/index.tsx +++ b/database/src/implementations/kb08/components/PodStatus/index.tsx @@ -1,9 +1,9 @@ import React, { useMemo } from 'react'; import { Box, Flex, useTheme } from '@chakra-ui/react'; -import { PodStatusEnum, podStatusMap } from '@/constants/db'; +import { PodStatusEnum, podStatusMap } from '@/implementations/kb08/constants/db'; import type { V1ContainerStatus } from '@kubernetes/client-node'; import dayjs from 'dayjs'; -import { MyTooltip } from '@sealos/ui'; +import { MyTooltip } from '@labring/sealos-chakra-ui'; const PodStatus = ({ containerStatuses }: { containerStatuses: V1ContainerStatus[] }) => { const theme = useTheme(); diff --git a/release-v5.1/database/src/components/PriceBox/index.tsx b/database/src/implementations/kb08/components/PriceBox/index.tsx similarity index 95% rename from release-v5.1/database/src/components/PriceBox/index.tsx rename to database/src/implementations/kb08/components/PriceBox/index.tsx index 8653879..f734977 100644 --- a/release-v5.1/database/src/components/PriceBox/index.tsx +++ b/database/src/implementations/kb08/components/PriceBox/index.tsx @@ -1,8 +1,8 @@ import { useHostConfigStore } from '@/store/hostConfig'; -import { SOURCE_PRICE } from '@/store/static'; +import { SOURCE_PRICE } from '@/implementations/kb08/store/static'; import { I18nCommonKey } from '@/types/i18next'; import { Box, Flex, useTheme, Text, Center } from '@chakra-ui/react'; -import { CurrencySymbol, MyTooltip } from '@sealos/ui'; +import { CurrencySymbol, MyTooltip } from '@labring/sealos-chakra-ui'; import { useTranslation } from 'next-i18next'; import { useMemo } from 'react'; import MyIcon from '@/components/Icon'; diff --git a/release-v5.1/database/src/components/QuotaBox/index.tsx b/database/src/implementations/kb08/components/QuotaBox/index.tsx similarity index 97% rename from release-v5.1/database/src/components/QuotaBox/index.tsx rename to database/src/implementations/kb08/components/QuotaBox/index.tsx index c71c1c6..6e240f2 100644 --- a/release-v5.1/database/src/components/QuotaBox/index.tsx +++ b/database/src/implementations/kb08/components/QuotaBox/index.tsx @@ -1,5 +1,5 @@ import MyTooltip from '@/components/MyTooltip'; -import { useUserStore } from '@/store/user'; +import { useUserStore } from '@/implementations/kb08/store/user'; import { Box, Flex, Progress, css, useTheme } from '@chakra-ui/react'; import { useQuery } from '@tanstack/react-query'; import { useTranslation } from 'next-i18next'; diff --git a/release-v5.1/database/src/components/Sidebar/index.tsx b/database/src/implementations/kb08/components/Sidebar/index.tsx similarity index 94% rename from release-v5.1/database/src/components/Sidebar/index.tsx rename to database/src/implementations/kb08/components/Sidebar/index.tsx index 6fb8946..b6e0f10 100644 --- a/release-v5.1/database/src/components/Sidebar/index.tsx +++ b/database/src/implementations/kb08/components/Sidebar/index.tsx @@ -1,9 +1,9 @@ import { Center, Text, Stack } from '@chakra-ui/react'; -import MyIcon from '../Icon'; +import MyIcon from '@/components/Icon/index'; import { useTranslation } from 'next-i18next'; import { useRouter } from 'next/router'; -import useEnvStore from '@/store/env'; +import useEnvStore from '@/implementations/kb08/store/env'; import { useMemo } from 'react'; export default function Sidebar() { diff --git a/database/src/implementations/kb08/config.ts b/database/src/implementations/kb08/config.ts new file mode 100644 index 0000000..db85402 --- /dev/null +++ b/database/src/implementations/kb08/config.ts @@ -0,0 +1,2 @@ +// Both implementations read the same validated deployment configuration. +export { Config } from '@/config'; diff --git a/release-v5.1/database/src/config/vlogs.ts b/database/src/implementations/kb08/config/vlogs.ts similarity index 87% rename from release-v5.1/database/src/config/vlogs.ts rename to database/src/implementations/kb08/config/vlogs.ts index 0d54718..9878063 100644 --- a/release-v5.1/database/src/config/vlogs.ts +++ b/database/src/implementations/kb08/config/vlogs.ts @@ -1,4 +1,4 @@ -import { Config } from '@/config'; +import { Config } from '@/implementations/kb08/config'; export const VLOGS_CONFIG = { get BASE_URL() { return Config().database.components.logging.url; diff --git a/release-v5.1/database/src/constants/backup.ts b/database/src/implementations/kb08/constants/backup.ts similarity index 95% rename from release-v5.1/database/src/constants/backup.ts rename to database/src/implementations/kb08/constants/backup.ts index e602bc9..14f5189 100644 --- a/release-v5.1/database/src/constants/backup.ts +++ b/database/src/implementations/kb08/constants/backup.ts @@ -1,4 +1,4 @@ -import { BackupStatusMapType } from '@/types/db'; +import { BackupStatusMapType } from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; export enum BackupStatusEnum { diff --git a/release-v5.1/database/src/constants/db.ts b/database/src/implementations/kb08/constants/db.ts similarity index 99% rename from release-v5.1/database/src/constants/db.ts rename to database/src/implementations/kb08/constants/db.ts index a0f310f..04790f4 100644 --- a/release-v5.1/database/src/constants/db.ts +++ b/database/src/implementations/kb08/constants/db.ts @@ -8,7 +8,7 @@ import { ParameterFieldMetadata, PodDetailType, ReconfigStatusMapType -} from '@/types/db'; +} from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; import { CpuSlideMarkList, MemorySlideMarkList } from './editApp'; diff --git a/release-v5.1/database/src/constants/editApp.ts b/database/src/implementations/kb08/constants/editApp.ts similarity index 100% rename from release-v5.1/database/src/constants/editApp.ts rename to database/src/implementations/kb08/constants/editApp.ts diff --git a/release-v5.1/database/src/constants/log.ts b/database/src/implementations/kb08/constants/log.ts similarity index 97% rename from release-v5.1/database/src/constants/log.ts rename to database/src/implementations/kb08/constants/log.ts index f69dc8a..162bbc4 100644 --- a/release-v5.1/database/src/constants/log.ts +++ b/database/src/implementations/kb08/constants/log.ts @@ -1,4 +1,4 @@ -import { SupportReconfigureDBType } from '@/types/db'; +import { SupportReconfigureDBType } from '@/implementations/kb08/types/db'; import { TFile } from '@/utils/kubeFileSystem'; export enum LogTypeEnum { diff --git a/release-v5.1/database/src/pages/_app.tsx b/database/src/implementations/kb08/pages/_app.tsx similarity index 89% rename from release-v5.1/database/src/pages/_app.tsx rename to database/src/implementations/kb08/pages/_app.tsx index b1636cf..bcbaa5b 100644 --- a/release-v5.1/database/src/pages/_app.tsx +++ b/database/src/implementations/kb08/pages/_app.tsx @@ -1,10 +1,10 @@ -import { Config } from '@/config'; +import { Config } from '@/implementations/kb08/config'; import { useHostConfigStore } from '@/store/hostConfig'; import { theme } from '@/constants/theme'; import { useConfirm } from '@/hooks/useConfirm'; import { useLoading } from '@/hooks/useLoading'; import { useGlobalStore } from '@/store/global'; -import { getDBVersion, getUserPrice } from '@/store/static'; +import { getDBVersion, getUserPrice } from '@/implementations/kb08/store/static'; import { getLangStore, setLangStore } from '@/utils/cookieUtils'; import { ChakraProvider } from '@chakra-ui/react'; import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; @@ -12,22 +12,15 @@ import throttle from 'lodash/throttle'; import { appWithTranslation, useTranslation } from 'next-i18next'; import type { AppContext, AppInitialProps, AppProps } from 'next/app'; import Head from 'next/head'; -import Router, { useRouter } from 'next/router'; -import NProgress from 'nprogress'; -import { useEffect, useState } from 'react'; +import { useRouter } from 'next/router'; +import { useEffect, useState, type ComponentProps } from 'react'; import { EVENT_NAME } from '@labring/sealos-desktop-sdk'; import { createSealosApp, sealosApp } from '@labring/sealos-desktop-sdk/app'; -import useEnvStore from '@/store/env'; -import '@labring/sealos-driver-sdk/src/driver.css'; -import '@/styles/reset.scss'; -import 'nprogress/nprogress.css'; +import useEnvStore from '@/implementations/kb08/store/env'; import Script from 'next/script'; import App from 'next/app'; //Binding events. -Router.events.on('routeChangeStart', () => NProgress.start()); -Router.events.on('routeChangeComplete', () => NProgress.done()); -Router.events.on('routeChangeError', () => NProgress.done()); // Create a client const queryClient = new QueryClient({ @@ -41,7 +34,7 @@ const queryClient = new QueryClient({ }); type AppOwnProps = { - customScripts: { [key: string]: string }[]; + customScripts: ComponentProps[]; }; function MyApp({ Component, pageProps, customScripts }: AppProps & AppOwnProps) { @@ -209,7 +202,13 @@ MyApp.getInitialProps = async (context: AppContext): Promise ({ + id: script.id ?? `custom-script-${index}`, + strategy: script.strategy ?? 'afterInteractive', + ...('src' in script + ? { src: script.src } + : { dangerouslySetInnerHTML: { __html: script.content } }) + })); } } catch (error) { console.error('Failed to inject custom scripts:', error); @@ -218,4 +217,5 @@ MyApp.getInitialProps = async (context: AppContext): Promise import('@/components/ApiDocs'), { ssr: false }); +const ApiDocs = dynamic(() => import('@/implementations/kb08/components/ApiDocs'), { ssr: false }); export default function References() { return ; diff --git a/release-v5.1/database/src/pages/api/adapter/mongodb.ts b/database/src/implementations/kb08/pages/api/adapter/mongodb.ts similarity index 89% rename from release-v5.1/database/src/pages/api/adapter/mongodb.ts rename to database/src/implementations/kb08/pages/api/adapter/mongodb.ts index ad91648..34bcd38 100644 --- a/release-v5.1/database/src/pages/api/adapter/mongodb.ts +++ b/database/src/implementations/kb08/pages/api/adapter/mongodb.ts @@ -1,10 +1,10 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import yaml from 'js-yaml'; -import { adaptPod } from '@/utils/adapt'; +import { adaptPod } from '@/implementations/kb08/utils/adapt'; export const json2HaConfig = ({ name, diff --git a/release-v5.1/database/src/pages/api/applyReconfigureOps.ts b/database/src/implementations/kb08/pages/api/applyReconfigureOps.ts similarity index 84% rename from release-v5.1/database/src/pages/api/applyReconfigureOps.ts rename to database/src/implementations/kb08/pages/api/applyReconfigureOps.ts index d3b8a32..43bdc55 100644 --- a/release-v5.1/database/src/pages/api/applyReconfigureOps.ts +++ b/database/src/implementations/kb08/pages/api/applyReconfigureOps.ts @@ -1,14 +1,14 @@ -import { DBReconfigureMap, ParameterFieldMetadataMap } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { DBReconfigureMap, ParameterFieldMetadataMap } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { KbPgClusterType } from '@/types/cluster'; -import { DBType, ParameterFieldMetadata } from '@/types/db'; -import { adjustDifferencesForIni } from '@/utils/tools'; -import { json2Reconfigure } from '@/utils/json2Yaml'; -import { ensurePostgreSQLConfigSpec } from '@/utils/parameterConfig'; -import { createParameterHistory } from '@/utils/parameterHistory'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { DBType, ParameterFieldMetadata } from '@/implementations/kb08/types/db'; +import { adjustDifferencesForIni } from '@/implementations/kb08/utils/tools'; +import { json2Reconfigure } from '@/implementations/kb08/utils/json2Yaml'; +import { ensurePostgreSQLConfigSpec } from '@/implementations/kb08/utils/parameterConfig'; +import { createParameterHistory } from '@/implementations/kb08/utils/parameterHistory'; import type { NextApiRequest, NextApiResponse } from 'next'; /** diff --git a/release-v5.1/database/src/pages/api/applyYamlList.ts b/database/src/implementations/kb08/pages/api/applyYamlList.ts similarity index 73% rename from release-v5.1/database/src/pages/api/applyYamlList.ts rename to database/src/implementations/kb08/pages/api/applyYamlList.ts index 331e8da..26b42c1 100644 --- a/release-v5.1/database/src/pages/api/applyYamlList.ts +++ b/database/src/implementations/kb08/pages/api/applyYamlList.ts @@ -1,8 +1,8 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { handleK8sError, jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { handleK8sError, jsonRes } from '@/implementations/kb08/services/backend/response'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { const { yamlList, type = 'create' } = req.body as { diff --git a/release-v5.1/database/src/pages/api/backup/create.ts b/database/src/implementations/kb08/pages/api/backup/create.ts similarity index 82% rename from release-v5.1/database/src/pages/api/backup/create.ts rename to database/src/implementations/kb08/pages/api/backup/create.ts index b294e84..c7678a5 100644 --- a/release-v5.1/database/src/pages/api/backup/create.ts +++ b/database/src/implementations/kb08/pages/api/backup/create.ts @@ -1,12 +1,12 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { json2ManualBackup } from '@/utils/json2Yaml'; -import { DBBackupMethodNameMap, DBBackupPolicyNameMap, DBTypeEnum } from '@/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { json2ManualBackup } from '@/implementations/kb08/utils/json2Yaml'; +import { DBBackupMethodNameMap, DBBackupPolicyNameMap, DBTypeEnum } from '@/implementations/kb08/constants/db'; import { ResponseCode } from '@/types/response'; -import { isValidBackupRemark } from '@/utils/backupRemark'; +import { isValidBackupRemark } from '@/implementations/kb08/utils/backupRemark'; export type Props = { backupName: string; diff --git a/release-v5.1/database/src/pages/api/backup/delBackup.ts b/database/src/implementations/kb08/pages/api/backup/delBackup.ts similarity index 82% rename from release-v5.1/database/src/pages/api/backup/delBackup.ts rename to database/src/implementations/kb08/pages/api/backup/delBackup.ts index b43ec4c..a71cc7b 100644 --- a/release-v5.1/database/src/pages/api/backup/delBackup.ts +++ b/database/src/implementations/kb08/pages/api/backup/delBackup.ts @@ -1,8 +1,8 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; export type Props = { backupName: string; diff --git a/release-v5.1/database/src/pages/api/backup/getBackupList.ts b/database/src/implementations/kb08/pages/api/backup/getBackupList.ts similarity index 80% rename from release-v5.1/database/src/pages/api/backup/getBackupList.ts rename to database/src/implementations/kb08/pages/api/backup/getBackupList.ts index 6c8ad38..f722ac7 100644 --- a/release-v5.1/database/src/pages/api/backup/getBackupList.ts +++ b/database/src/implementations/kb08/pages/api/backup/getBackupList.ts @@ -1,9 +1,9 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { crLabelKey } from '@/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { crLabelKey } from '@/implementations/kb08/constants/db'; export type Props = { dbName: string; diff --git a/release-v5.1/database/src/pages/api/backup/getBackups.ts b/database/src/implementations/kb08/pages/api/backup/getBackups.ts similarity index 68% rename from release-v5.1/database/src/pages/api/backup/getBackups.ts rename to database/src/implementations/kb08/pages/api/backup/getBackups.ts index eda0218..493f9b7 100644 --- a/release-v5.1/database/src/pages/api/backup/getBackups.ts +++ b/database/src/implementations/kb08/pages/api/backup/getBackups.ts @@ -1,10 +1,10 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { crLabelKey } from '@/constants/db'; -import { adaptBackup } from '@/utils/adapt'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { crLabelKey } from '@/implementations/kb08/constants/db'; +import { adaptBackup } from '@/implementations/kb08/utils/adapt'; export type Props = { dbName: string; diff --git a/release-v5.1/database/src/pages/api/backup/updatePolicy.ts b/database/src/implementations/kb08/pages/api/backup/updatePolicy.ts similarity index 83% rename from release-v5.1/database/src/pages/api/backup/updatePolicy.ts rename to database/src/implementations/kb08/pages/api/backup/updatePolicy.ts index 33087a3..b49b571 100644 --- a/release-v5.1/database/src/pages/api/backup/updatePolicy.ts +++ b/database/src/implementations/kb08/pages/api/backup/updatePolicy.ts @@ -1,11 +1,11 @@ -import { BACKUP_REPO_DEFAULT_KEY } from '@/constants/backup'; -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { K8sApiDefault, getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { BACKUP_REPO_DEFAULT_KEY } from '@/implementations/kb08/constants/backup'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { K8sApiDefault, getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { BackupRepoCRItemType } from '@/types/backup'; -import { KbPgClusterType } from '@/types/cluster'; +import { BackupRepoCRItemType } from '@/implementations/kb08/types/backup'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; import * as k8s from '@kubernetes/client-node'; import { PatchUtils } from '@kubernetes/client-node'; import type { NextApiRequest, NextApiResponse } from 'next'; diff --git a/release-v5.1/database/src/pages/api/createDB.ts b/database/src/implementations/kb08/pages/api/createDB.ts similarity index 89% rename from release-v5.1/database/src/pages/api/createDB.ts rename to database/src/implementations/kb08/pages/api/createDB.ts index 4564103..34138d0 100644 --- a/release-v5.1/database/src/pages/api/createDB.ts +++ b/database/src/implementations/kb08/pages/api/createDB.ts @@ -1,31 +1,31 @@ -import { Config } from '@/config'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { handleK8sError, jsonRes } from '@/services/backend/response'; +import { Config } from '@/implementations/kb08/config'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { handleK8sError, jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { KbPgClusterType } from '@/types/cluster'; -import { BackupItemType, DBEditType } from '@/types/db'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { BackupItemType, DBEditType } from '@/implementations/kb08/types/db'; import { json2Account, json2ResourceOps, json2CreateCluster, json2ParameterConfig, json2Reconfigure -} from '@/utils/json2Yaml'; +} from '@/implementations/kb08/utils/json2Yaml'; import type { NextApiRequest, NextApiResponse } from 'next'; import { updateBackupPolicyApi } from './backup/updatePolicy'; -import { BackupSupportedDBTypeList } from '@/constants/db'; -import { adaptDBDetail, convertBackupFormToSpec } from '@/utils/adapt'; +import { BackupSupportedDBTypeList } from '@/implementations/kb08/constants/db'; +import { adaptDBDetail, convertBackupFormToSpec } from '@/implementations/kb08/utils/adapt'; import { CustomObjectsApi, KubernetesObject, PatchUtils } from '@kubernetes/client-node'; -import { getScore } from '@/utils/tools'; -import { validatePolarDBXResources } from '@/utils/database'; +import { getScore } from '@/implementations/kb08/utils/tools'; +import { validatePolarDBXResources } from '@/implementations/kb08/utils/database'; import { ensurePostgreSQLConfigSpec, getCurrentParameterValues, getParameterDifferences -} from '@/utils/parameterConfig'; -import { createParameterHistory } from '@/utils/parameterHistory'; -import type { ParameterDifference } from '@/utils/parameterChanges'; +} from '@/implementations/kb08/utils/parameterConfig'; +import { createParameterHistory } from '@/implementations/kb08/utils/parameterHistory'; +import type { ParameterDifference } from '@/implementations/kb08/utils/parameterChanges'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { @@ -187,7 +187,7 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse< const account = json2Account(dbForm); const cluster = json2CreateCluster(dbForm, backupInfo, { - storageClassName: Config().database.storage.forcedClassName + storageClassName: Config().database.storage.forcedClassName || undefined }); const yamlList = [account, cluster]; diff --git a/release-v5.1/database/src/pages/api/db/editPassword.ts b/database/src/implementations/kb08/pages/api/db/editPassword.ts similarity index 87% rename from release-v5.1/database/src/pages/api/db/editPassword.ts rename to database/src/implementations/kb08/pages/api/db/editPassword.ts index acd7a10..f1b35ec 100644 --- a/release-v5.1/database/src/pages/api/db/editPassword.ts +++ b/database/src/implementations/kb08/pages/api/db/editPassword.ts @@ -1,11 +1,11 @@ -import { DBBackupPolicyNameMap, DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { DBBackupPolicyNameMap, DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { DBType } from '@/types/db'; -import { dbTypeMap, fetchDBSecret } from '@/utils/database'; -import { json2BasicOps } from '@/utils/json2Yaml'; +import { DBType } from '@/implementations/kb08/types/db'; +import { dbTypeMap, fetchDBSecret } from '@/implementations/kb08/utils/database'; +import { json2BasicOps } from '@/implementations/kb08/utils/json2Yaml'; import { KubeFileSystem } from '@/utils/kubeFileSystem'; import type { NextApiRequest, NextApiResponse } from 'next'; diff --git a/release-v5.1/database/src/pages/api/db/getDatabases.ts b/database/src/implementations/kb08/pages/api/db/getDatabases.ts similarity index 85% rename from release-v5.1/database/src/pages/api/db/getDatabases.ts rename to database/src/implementations/kb08/pages/api/db/getDatabases.ts index 6e95863..2377713 100644 --- a/release-v5.1/database/src/pages/api/db/getDatabases.ts +++ b/database/src/implementations/kb08/pages/api/db/getDatabases.ts @@ -1,10 +1,10 @@ -import { DBBackupPolicyNameMap, DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { DBBackupPolicyNameMap, DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; import type { NextApiRequest, NextApiResponse } from 'next'; -import { fetchDBSecret } from '@/utils/database'; +import { fetchDBSecret } from '@/implementations/kb08/utils/database'; import { KubeFileSystem } from '@/utils/kubeFileSystem'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/db/getTables.ts b/database/src/implementations/kb08/pages/api/db/getTables.ts similarity index 87% rename from release-v5.1/database/src/pages/api/db/getTables.ts rename to database/src/implementations/kb08/pages/api/db/getTables.ts index ed4ac92..75aa252 100644 --- a/release-v5.1/database/src/pages/api/db/getTables.ts +++ b/database/src/implementations/kb08/pages/api/db/getTables.ts @@ -1,10 +1,10 @@ -import { DBBackupPolicyNameMap, DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { DBBackupPolicyNameMap, DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; import type { NextApiRequest, NextApiResponse } from 'next'; -import { fetchDBSecret } from '@/utils/database'; +import { fetchDBSecret } from '@/implementations/kb08/utils/database'; import { KubeFileSystem } from '@/utils/kubeFileSystem'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/delDBByName.ts b/database/src/implementations/kb08/pages/api/delDBByName.ts similarity index 92% rename from release-v5.1/database/src/pages/api/delDBByName.ts rename to database/src/implementations/kb08/pages/api/delDBByName.ts index 3532f0e..5168c60 100644 --- a/release-v5.1/database/src/pages/api/delDBByName.ts +++ b/database/src/implementations/kb08/pages/api/delDBByName.ts @@ -1,15 +1,15 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { getBackupListByDBName } from './backup/getBackupList'; import { delBackupByName } from './backup/delBackup'; import { getMigrateList } from './migrate/list'; import { delMigrateByName } from './migrate/delete'; import { DeleteJobByName, GetJobByName } from './migrate/delJobByName'; import { getCluster } from './getDBByName'; -import { adaptDBDetail } from '@/utils/adapt'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/delServiceByName.ts b/database/src/implementations/kb08/pages/api/delServiceByName.ts similarity index 73% rename from release-v5.1/database/src/pages/api/delServiceByName.ts rename to database/src/implementations/kb08/pages/api/delServiceByName.ts index 967e1c7..7ae2c2e 100644 --- a/release-v5.1/database/src/pages/api/delServiceByName.ts +++ b/database/src/implementations/kb08/pages/api/delServiceByName.ts @@ -1,8 +1,8 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/getAddonList.ts b/database/src/implementations/kb08/pages/api/getAddonList.ts similarity index 87% rename from release-v5.1/database/src/pages/api/getAddonList.ts rename to database/src/implementations/kb08/pages/api/getAddonList.ts index 1909b57..8aa5c23 100644 --- a/release-v5.1/database/src/pages/api/getAddonList.ts +++ b/database/src/implementations/kb08/pages/api/getAddonList.ts @@ -1,9 +1,9 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { K8sApi } from '@/services/backend/kubernetes'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { K8sApi } from '@/implementations/kb08/services/backend/kubernetes'; import * as k8s from '@kubernetes/client-node'; export interface AddonItem { diff --git a/release-v5.1/database/src/pages/api/getConfigByName.ts b/database/src/implementations/kb08/pages/api/getConfigByName.ts similarity index 91% rename from release-v5.1/database/src/pages/api/getConfigByName.ts rename to database/src/implementations/kb08/pages/api/getConfigByName.ts index 467dff5..72a33f8 100644 --- a/release-v5.1/database/src/pages/api/getConfigByName.ts +++ b/database/src/implementations/kb08/pages/api/getConfigByName.ts @@ -2,20 +2,20 @@ import { DBReconfigureMap, ParameterFieldOverrides, ParameterFieldMetadataMap -} from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +} from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { KbPgClusterType } from '@/types/cluster'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; import { ConfigParameterItem, DBType, ParameterConfigField, ParameterFieldMetadata -} from '@/types/db'; -import { parseConfig, flattenObject } from '@/utils/tools'; -import { getCurrentParameterValues } from '@/utils/parameterConfig'; +} from '@/implementations/kb08/types/db'; +import { parseConfig, flattenObject } from '@/implementations/kb08/utils/tools'; +import { getCurrentParameterValues } from '@/implementations/kb08/utils/parameterConfig'; import type { NextApiRequest, NextApiResponse } from 'next'; /** diff --git a/release-v5.1/database/src/pages/api/getDBByName.ts b/database/src/implementations/kb08/pages/api/getDBByName.ts similarity index 71% rename from release-v5.1/database/src/pages/api/getDBByName.ts rename to database/src/implementations/kb08/pages/api/getDBByName.ts index bcd9da6..738ad17 100644 --- a/release-v5.1/database/src/pages/api/getDBByName.ts +++ b/database/src/implementations/kb08/pages/api/getDBByName.ts @@ -1,14 +1,14 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { KbPgClusterType } from '@/types/cluster'; -import { adaptDBDetail } from '@/utils/adapt'; -import { defaultDBDetail } from '@/constants/db'; -import { getCurrentParameterValues } from '@/utils/parameterConfig'; -import { getScore } from '@/utils/tools'; -import { getParameterConfigFromRuntimeValues } from '@/utils/parameterChanges'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; +import { defaultDBDetail } from '@/implementations/kb08/constants/db'; +import { getCurrentParameterValues } from '@/implementations/kb08/utils/parameterConfig'; +import { getScore } from '@/implementations/kb08/utils/tools'; +import { getParameterConfigFromRuntimeValues } from '@/implementations/kb08/utils/parameterChanges'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/getDBEvents.ts b/database/src/implementations/kb08/pages/api/getDBEvents.ts similarity index 74% rename from release-v5.1/database/src/pages/api/getDBEvents.ts rename to database/src/implementations/kb08/pages/api/getDBEvents.ts index 92a861b..c724bdd 100644 --- a/release-v5.1/database/src/pages/api/getDBEvents.ts +++ b/database/src/implementations/kb08/pages/api/getDBEvents.ts @@ -1,8 +1,8 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/getDBList.ts b/database/src/implementations/kb08/pages/api/getDBList.ts similarity index 69% rename from release-v5.1/database/src/pages/api/getDBList.ts rename to database/src/implementations/kb08/pages/api/getDBList.ts index 981c9c2..2b119b5 100644 --- a/release-v5.1/database/src/pages/api/getDBList.ts +++ b/database/src/implementations/kb08/pages/api/getDBList.ts @@ -1,10 +1,10 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { adaptDBListItem } from '@/utils/adapt'; -import { KbPgClusterType } from '@/types/cluster'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { adaptDBListItem } from '@/implementations/kb08/utils/adapt'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/getEnv.ts b/database/src/implementations/kb08/pages/api/getEnv.ts similarity index 88% rename from release-v5.1/database/src/pages/api/getEnv.ts rename to database/src/implementations/kb08/pages/api/getEnv.ts index bd9edc4..31e36ed 100644 --- a/release-v5.1/database/src/pages/api/getEnv.ts +++ b/database/src/implementations/kb08/pages/api/getEnv.ts @@ -1,7 +1,7 @@ -import { Config } from '@/config'; -import { jsonRes } from '@/services/backend/response'; +import { Config } from '@/implementations/kb08/config'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { resolveDataflowEnabled } from '@/services/backend/dataflow'; +import { resolveDataflowEnabled } from '@/implementations/kb08/services/backend/dataflow'; import type { NextApiRequest, NextApiResponse } from 'next'; export type SystemEnvResponse = { diff --git a/release-v5.1/database/src/pages/api/getSecretByName.ts b/database/src/implementations/kb08/pages/api/getSecretByName.ts similarity index 73% rename from release-v5.1/database/src/pages/api/getSecretByName.ts rename to database/src/implementations/kb08/pages/api/getSecretByName.ts index 8a54592..b483a87 100644 --- a/release-v5.1/database/src/pages/api/getSecretByName.ts +++ b/database/src/implementations/kb08/pages/api/getSecretByName.ts @@ -1,11 +1,11 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import type { DBType } from '@/types/db'; -import { buildConnectionInfo, fetchDBSecret } from '@/utils/database'; -import { MockDBSecret } from '@/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import type { DBType } from '@/implementations/kb08/types/db'; +import { buildConnectionInfo, fetchDBSecret } from '@/implementations/kb08/utils/database'; +import { MockDBSecret } from '@/implementations/kb08/constants/db'; export type SecretResponse = { username: string; diff --git a/release-v5.1/database/src/pages/api/getServiceByName.ts b/database/src/implementations/kb08/pages/api/getServiceByName.ts similarity index 75% rename from release-v5.1/database/src/pages/api/getServiceByName.ts rename to database/src/implementations/kb08/pages/api/getServiceByName.ts index facd0d2..2f012ac 100644 --- a/release-v5.1/database/src/pages/api/getServiceByName.ts +++ b/database/src/implementations/kb08/pages/api/getServiceByName.ts @@ -1,8 +1,8 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/getStatefulSetByName.ts b/database/src/implementations/kb08/pages/api/getStatefulSetByName.ts similarity index 83% rename from release-v5.1/database/src/pages/api/getStatefulSetByName.ts rename to database/src/implementations/kb08/pages/api/getStatefulSetByName.ts index 589551f..91728fc 100644 --- a/release-v5.1/database/src/pages/api/getStatefulSetByName.ts +++ b/database/src/implementations/kb08/pages/api/getStatefulSetByName.ts @@ -1,10 +1,10 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { DBTypeEnum } from '@/constants/db'; -import { DBType } from '@/types/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { DBType } from '@/implementations/kb08/types/db'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/guide/checkTask.ts b/database/src/implementations/kb08/pages/api/guide/checkTask.ts similarity index 83% rename from release-v5.1/database/src/pages/api/guide/checkTask.ts rename to database/src/implementations/kb08/pages/api/guide/checkTask.ts index 9aa6000..86d0f37 100644 --- a/release-v5.1/database/src/pages/api/guide/checkTask.ts +++ b/database/src/implementations/kb08/pages/api/guide/checkTask.ts @@ -1,6 +1,6 @@ -import { Config } from '@/config'; -import { authAppToken } from '@/services/backend/auth'; -import { jsonRes } from '@/services/backend/response'; +import { Config } from '@/implementations/kb08/config'; +import { authAppToken } from '@/implementations/kb08/services/backend/auth'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; import type { NextApiRequest, NextApiResponse } from 'next'; diff --git a/release-v5.1/database/src/pages/api/guide/getBonus.ts b/database/src/implementations/kb08/pages/api/guide/getBonus.ts similarity index 86% rename from release-v5.1/database/src/pages/api/guide/getBonus.ts rename to database/src/implementations/kb08/pages/api/guide/getBonus.ts index 80486a0..f50023a 100644 --- a/release-v5.1/database/src/pages/api/guide/getBonus.ts +++ b/database/src/implementations/kb08/pages/api/guide/getBonus.ts @@ -1,6 +1,6 @@ -import { Config } from '@/config'; -import { authAppToken } from '@/services/backend/auth'; -import { jsonRes } from '@/services/backend/response'; +import { Config } from '@/implementations/kb08/config'; +import { authAppToken } from '@/implementations/kb08/services/backend/auth'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; import type { NextApiRequest, NextApiResponse } from 'next'; diff --git a/release-v5.1/database/src/pages/api/guide/getTasks.ts b/database/src/implementations/kb08/pages/api/guide/getTasks.ts similarity index 82% rename from release-v5.1/database/src/pages/api/guide/getTasks.ts rename to database/src/implementations/kb08/pages/api/guide/getTasks.ts index 05571c9..4bd9d7a 100644 --- a/release-v5.1/database/src/pages/api/guide/getTasks.ts +++ b/database/src/implementations/kb08/pages/api/guide/getTasks.ts @@ -1,8 +1,8 @@ -import { Config } from '@/config'; -import { authAppToken } from '@/services/backend/auth'; -import { jsonRes } from '@/services/backend/response'; +import { Config } from '@/implementations/kb08/config'; +import { authAppToken } from '@/implementations/kb08/services/backend/auth'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { UserTask } from '@/types/user'; +import { UserTask } from '@/implementations/kb08/types/user'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/logs/get.ts b/database/src/implementations/kb08/pages/api/logs/get.ts similarity index 70% rename from release-v5.1/database/src/pages/api/logs/get.ts rename to database/src/implementations/kb08/pages/api/logs/get.ts index 3d0091a..9d274d3 100644 --- a/release-v5.1/database/src/pages/api/logs/get.ts +++ b/database/src/implementations/kb08/pages/api/logs/get.ts @@ -1,12 +1,12 @@ -import { DBTypeEnum } from '@/constants/db'; -import { ServiceLogConfigs } from '@/constants/log'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { ServiceLogConfigs } from '@/implementations/kb08/constants/log'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { SupportReconfigureDBType } from '@/types/db'; -import { LogTypeEnum } from '@/constants/log'; -import { DatabaseLogService } from '@/utils/logParsers/LogParser'; +import { SupportReconfigureDBType } from '@/implementations/kb08/types/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; +import { DatabaseLogService } from '@/implementations/kb08/utils/logParsers/LogParser'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/logs/getCounts.ts b/database/src/implementations/kb08/pages/api/logs/getCounts.ts similarity index 79% rename from release-v5.1/database/src/pages/api/logs/getCounts.ts rename to database/src/implementations/kb08/pages/api/logs/getCounts.ts index e1cd26e..b6c6916 100644 --- a/release-v5.1/database/src/pages/api/logs/getCounts.ts +++ b/database/src/implementations/kb08/pages/api/logs/getCounts.ts @@ -1,12 +1,12 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { SupportReconfigureDBType } from '@/types/db'; -import { LogTypeEnum } from '@/constants/log'; +import { SupportReconfigureDBType } from '@/implementations/kb08/types/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; import { KubeFileSystem } from '@/utils/kubeFileSystem'; -import { DatabaseLogService } from '@/utils/logParsers/LogParser'; -import { DBTypeEnum } from '@/constants/db'; +import { DatabaseLogService } from '@/implementations/kb08/utils/logParsers/LogParser'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; import type { NextApiRequest, NextApiResponse } from 'next'; const convertToDBTypeEnum = (dbType: SupportReconfigureDBType): DBTypeEnum => { diff --git a/release-v5.1/database/src/pages/api/logs/getFiles.ts b/database/src/implementations/kb08/pages/api/logs/getFiles.ts similarity index 80% rename from release-v5.1/database/src/pages/api/logs/getFiles.ts rename to database/src/implementations/kb08/pages/api/logs/getFiles.ts index 5b8485b..ee3955e 100644 --- a/release-v5.1/database/src/pages/api/logs/getFiles.ts +++ b/database/src/implementations/kb08/pages/api/logs/getFiles.ts @@ -1,10 +1,10 @@ -import { ServiceLogConfigs } from '@/constants/log'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { ServiceLogConfigs } from '@/implementations/kb08/constants/log'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { SupportReconfigureDBType } from '@/types/db'; -import { LogTypeEnum } from '@/constants/log'; +import { SupportReconfigureDBType } from '@/implementations/kb08/types/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; import { KubeFileSystem } from '@/utils/kubeFileSystem'; import type { NextApiRequest, NextApiResponse } from 'next'; diff --git a/release-v5.1/database/src/pages/api/migrate/createDump.ts b/database/src/implementations/kb08/pages/api/migrate/createDump.ts similarity index 91% rename from release-v5.1/database/src/pages/api/migrate/createDump.ts rename to database/src/implementations/kb08/pages/api/migrate/createDump.ts index eeca82a..a130724 100644 --- a/release-v5.1/database/src/pages/api/migrate/createDump.ts +++ b/database/src/implementations/kb08/pages/api/migrate/createDump.ts @@ -1,13 +1,13 @@ -import { Config } from '@/config'; -import { CloudMigraionLabel, DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { Config } from '@/implementations/kb08/config'; +import { CloudMigraionLabel, DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { DumpForm } from '@/types/migrate'; -import { fetchDBSecret } from '@/utils/database'; +import { DumpForm } from '@/implementations/kb08/types/migrate'; +import { fetchDBSecret } from '@/implementations/kb08/utils/database'; import { Command } from '@/utils/kubeFileSystem'; -import { formatTime } from '@/utils/tools'; +import { formatTime } from '@/implementations/kb08/utils/tools'; import yaml from 'js-yaml'; import type { NextApiRequest, NextApiResponse } from 'next'; diff --git a/release-v5.1/database/src/pages/api/migrate/delJobByName.ts b/database/src/implementations/kb08/pages/api/migrate/delJobByName.ts similarity index 80% rename from release-v5.1/database/src/pages/api/migrate/delJobByName.ts rename to database/src/implementations/kb08/pages/api/migrate/delJobByName.ts index 873c127..1079ae5 100644 --- a/release-v5.1/database/src/pages/api/migrate/delJobByName.ts +++ b/database/src/implementations/kb08/pages/api/migrate/delJobByName.ts @@ -1,9 +1,9 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { CloudMigraionLabel } from '@/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { CloudMigraionLabel } from '@/implementations/kb08/constants/db'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/migrate/delete.ts b/database/src/implementations/kb08/pages/api/migrate/delete.ts similarity index 81% rename from release-v5.1/database/src/pages/api/migrate/delete.ts rename to database/src/implementations/kb08/pages/api/migrate/delete.ts index 8f8f83e..dc0d49e 100644 --- a/release-v5.1/database/src/pages/api/migrate/delete.ts +++ b/database/src/implementations/kb08/pages/api/migrate/delete.ts @@ -1,8 +1,8 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; export type Props = { migrateName: string; diff --git a/release-v5.1/database/src/pages/api/migrate/getJobByName.ts b/database/src/implementations/kb08/pages/api/migrate/getJobByName.ts similarity index 75% rename from release-v5.1/database/src/pages/api/migrate/getJobByName.ts rename to database/src/implementations/kb08/pages/api/migrate/getJobByName.ts index 2cbc35c..687dba4 100644 --- a/release-v5.1/database/src/pages/api/migrate/getJobByName.ts +++ b/database/src/implementations/kb08/pages/api/migrate/getJobByName.ts @@ -1,6 +1,6 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; import type { NextApiRequest, NextApiResponse } from 'next'; diff --git a/release-v5.1/database/src/pages/api/migrate/getLogByName.ts b/database/src/implementations/kb08/pages/api/migrate/getLogByName.ts similarity index 84% rename from release-v5.1/database/src/pages/api/migrate/getLogByName.ts rename to database/src/implementations/kb08/pages/api/migrate/getLogByName.ts index ae8c829..0f6e863 100644 --- a/release-v5.1/database/src/pages/api/migrate/getLogByName.ts +++ b/database/src/implementations/kb08/pages/api/migrate/getLogByName.ts @@ -1,6 +1,6 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; import type { NextApiRequest, NextApiResponse } from 'next'; diff --git a/release-v5.1/database/src/pages/api/migrate/getPodList.ts b/database/src/implementations/kb08/pages/api/migrate/getPodList.ts similarity index 76% rename from release-v5.1/database/src/pages/api/migrate/getPodList.ts rename to database/src/implementations/kb08/pages/api/migrate/getPodList.ts index f4805cc..56d0fdb 100644 --- a/release-v5.1/database/src/pages/api/migrate/getPodList.ts +++ b/database/src/implementations/kb08/pages/api/migrate/getPodList.ts @@ -1,7 +1,7 @@ -import { CloudMigraionLabel, KBMigrationTaskLabel, SealosMigrationTaskLabel } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { CloudMigraionLabel, KBMigrationTaskLabel, SealosMigrationTaskLabel } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; import type { NextApiRequest, NextApiResponse } from 'next'; diff --git a/release-v5.1/database/src/pages/api/migrate/list.ts b/database/src/implementations/kb08/pages/api/migrate/list.ts similarity index 80% rename from release-v5.1/database/src/pages/api/migrate/list.ts rename to database/src/implementations/kb08/pages/api/migrate/list.ts index dff3266..c3c3f89 100644 --- a/release-v5.1/database/src/pages/api/migrate/list.ts +++ b/database/src/implementations/kb08/pages/api/migrate/list.ts @@ -1,9 +1,9 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { CloudMigraionLabel } from '@/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { CloudMigraionLabel } from '@/implementations/kb08/constants/db'; export type Props = { migrateName: string; diff --git a/release-v5.1/database/src/pages/api/minio/upload.ts b/database/src/implementations/kb08/pages/api/minio/upload.ts similarity index 91% rename from release-v5.1/database/src/pages/api/minio/upload.ts rename to database/src/implementations/kb08/pages/api/minio/upload.ts index a7ea5cd..3ac3bdc 100644 --- a/release-v5.1/database/src/pages/api/minio/upload.ts +++ b/database/src/implementations/kb08/pages/api/minio/upload.ts @@ -1,7 +1,7 @@ -import { Config } from '@/config'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { Config } from '@/implementations/kb08/config'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import * as Minio from 'minio'; import multer from 'multer'; import { customAlphabet } from 'nanoid'; diff --git a/release-v5.1/database/src/pages/api/monitor/getAbortedConnections.ts b/database/src/implementations/kb08/pages/api/monitor/getAbortedConnections.ts similarity index 85% rename from release-v5.1/database/src/pages/api/monitor/getAbortedConnections.ts rename to database/src/implementations/kb08/pages/api/monitor/getAbortedConnections.ts index ce70f39..f013b07 100644 --- a/release-v5.1/database/src/pages/api/monitor/getAbortedConnections.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getAbortedConnections.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/monitor/getActiveConnections.ts b/database/src/implementations/kb08/pages/api/monitor/getActiveConnections.ts similarity index 85% rename from release-v5.1/database/src/pages/api/monitor/getActiveConnections.ts rename to database/src/implementations/kb08/pages/api/monitor/getActiveConnections.ts index 45a0077..87b5393 100644 --- a/release-v5.1/database/src/pages/api/monitor/getActiveConnections.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getActiveConnections.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/monitor/getBlockReadTime.ts b/database/src/implementations/kb08/pages/api/monitor/getBlockReadTime.ts similarity index 85% rename from release-v5.1/database/src/pages/api/monitor/getBlockReadTime.ts rename to database/src/implementations/kb08/pages/api/monitor/getBlockReadTime.ts index 5fce411..e105cfa 100644 --- a/release-v5.1/database/src/pages/api/monitor/getBlockReadTime.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getBlockReadTime.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/monitor/getBlockWriteTime.ts b/database/src/implementations/kb08/pages/api/monitor/getBlockWriteTime.ts similarity index 85% rename from release-v5.1/database/src/pages/api/monitor/getBlockWriteTime.ts rename to database/src/implementations/kb08/pages/api/monitor/getBlockWriteTime.ts index 00726f3..68f9027 100644 --- a/release-v5.1/database/src/pages/api/monitor/getBlockWriteTime.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getBlockWriteTime.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/monitor/getCPU.ts b/database/src/implementations/kb08/pages/api/monitor/getCPU.ts similarity index 85% rename from release-v5.1/database/src/pages/api/monitor/getCPU.ts rename to database/src/implementations/kb08/pages/api/monitor/getCPU.ts index 5c1f601..acc114b 100644 --- a/release-v5.1/database/src/pages/api/monitor/getCPU.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getCPU.ts @@ -1,7 +1,7 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; import type { NextApiRequest, NextApiResponse } from 'next'; diff --git a/release-v5.1/database/src/pages/api/monitor/getCurrentConnections.ts b/database/src/implementations/kb08/pages/api/monitor/getCurrentConnections.ts similarity index 87% rename from release-v5.1/database/src/pages/api/monitor/getCurrentConnections.ts rename to database/src/implementations/kb08/pages/api/monitor/getCurrentConnections.ts index 8371ef4..f35b7ee 100644 --- a/release-v5.1/database/src/pages/api/monitor/getCurrentConnections.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getCurrentConnections.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/monitor/getDataBaseSize.ts b/database/src/implementations/kb08/pages/api/monitor/getDataBaseSize.ts similarity index 85% rename from release-v5.1/database/src/pages/api/monitor/getDataBaseSize.ts rename to database/src/implementations/kb08/pages/api/monitor/getDataBaseSize.ts index 695cb5c..4d283ce 100644 --- a/release-v5.1/database/src/pages/api/monitor/getDataBaseSize.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getDataBaseSize.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/monitor/getDurationTransaction.ts b/database/src/implementations/kb08/pages/api/monitor/getDurationTransaction.ts similarity index 85% rename from release-v5.1/database/src/pages/api/monitor/getDurationTransaction.ts rename to database/src/implementations/kb08/pages/api/monitor/getDurationTransaction.ts index 58bb366..d805622 100644 --- a/release-v5.1/database/src/pages/api/monitor/getDurationTransaction.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getDurationTransaction.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/monitor/getMemory.ts b/database/src/implementations/kb08/pages/api/monitor/getMemory.ts similarity index 82% rename from release-v5.1/database/src/pages/api/monitor/getMemory.ts rename to database/src/implementations/kb08/pages/api/monitor/getMemory.ts index e8674f6..59fdefe 100644 --- a/release-v5.1/database/src/pages/api/monitor/getMemory.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getMemory.ts @@ -1,10 +1,10 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/monitor/getMongdbPerformance.ts b/database/src/implementations/kb08/pages/api/monitor/getMongdbPerformance.ts similarity index 87% rename from release-v5.1/database/src/pages/api/monitor/getMongdbPerformance.ts rename to database/src/implementations/kb08/pages/api/monitor/getMongdbPerformance.ts index ba8361e..2223db0 100644 --- a/release-v5.1/database/src/pages/api/monitor/getMongdbPerformance.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getMongdbPerformance.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; import { MonitorQueryKey } from '@/types/monitor'; diff --git a/release-v5.1/database/src/pages/api/monitor/getMonitorData.ts b/database/src/implementations/kb08/pages/api/monitor/getMonitorData.ts similarity index 90% rename from release-v5.1/database/src/pages/api/monitor/getMonitorData.ts rename to database/src/implementations/kb08/pages/api/monitor/getMonitorData.ts index 05820c7..1b06954 100644 --- a/release-v5.1/database/src/pages/api/monitor/getMonitorData.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getMonitorData.ts @@ -1,7 +1,7 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { databaseMonitorFetch } from '@/services/monitorFetch'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { databaseMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { AdapterChartDataType, MonitorDBResult } from '@/types/monitor'; import type { NextApiRequest, NextApiResponse } from 'next'; diff --git a/release-v5.1/database/src/pages/api/monitor/getMysqlInnoDB.ts b/database/src/implementations/kb08/pages/api/monitor/getMysqlInnoDB.ts similarity index 81% rename from release-v5.1/database/src/pages/api/monitor/getMysqlInnoDB.ts rename to database/src/implementations/kb08/pages/api/monitor/getMysqlInnoDB.ts index 97c511c..f8774dd 100644 --- a/release-v5.1/database/src/pages/api/monitor/getMysqlInnoDB.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getMysqlInnoDB.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; import { maxBy } from 'lodash'; diff --git a/release-v5.1/database/src/pages/api/monitor/getMysqlSlowQueries.ts b/database/src/implementations/kb08/pages/api/monitor/getMysqlSlowQueries.ts similarity index 84% rename from release-v5.1/database/src/pages/api/monitor/getMysqlSlowQueries.ts rename to database/src/implementations/kb08/pages/api/monitor/getMysqlSlowQueries.ts index 3cf5d01..a4a332a 100644 --- a/release-v5.1/database/src/pages/api/monitor/getMysqlSlowQueries.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getMysqlSlowQueries.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/monitor/getMysqlTableLocks.ts b/database/src/implementations/kb08/pages/api/monitor/getMysqlTableLocks.ts similarity index 84% rename from release-v5.1/database/src/pages/api/monitor/getMysqlTableLocks.ts rename to database/src/implementations/kb08/pages/api/monitor/getMysqlTableLocks.ts index db5cde8..9b47489 100644 --- a/release-v5.1/database/src/pages/api/monitor/getMysqlTableLocks.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getMysqlTableLocks.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/monitor/getRedisPerDB.ts b/database/src/implementations/kb08/pages/api/monitor/getRedisPerDB.ts similarity index 83% rename from release-v5.1/database/src/pages/api/monitor/getRedisPerDB.ts rename to database/src/implementations/kb08/pages/api/monitor/getRedisPerDB.ts index db9fe86..f50c9e3 100644 --- a/release-v5.1/database/src/pages/api/monitor/getRedisPerDB.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getRedisPerDB.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/monitor/getRedisPerformance.ts b/database/src/implementations/kb08/pages/api/monitor/getRedisPerformance.ts similarity index 87% rename from release-v5.1/database/src/pages/api/monitor/getRedisPerformance.ts rename to database/src/implementations/kb08/pages/api/monitor/getRedisPerformance.ts index 7befd97..3a07d60 100644 --- a/release-v5.1/database/src/pages/api/monitor/getRedisPerformance.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getRedisPerformance.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; import { MonitorQueryKey } from '@/types/monitor'; diff --git a/release-v5.1/database/src/pages/api/monitor/getRollback.ts b/database/src/implementations/kb08/pages/api/monitor/getRollback.ts similarity index 85% rename from release-v5.1/database/src/pages/api/monitor/getRollback.ts rename to database/src/implementations/kb08/pages/api/monitor/getRollback.ts index 2ba08b4..66a15ae 100644 --- a/release-v5.1/database/src/pages/api/monitor/getRollback.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getRollback.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/monitor/getRunningTime.ts b/database/src/implementations/kb08/pages/api/monitor/getRunningTime.ts similarity index 85% rename from release-v5.1/database/src/pages/api/monitor/getRunningTime.ts rename to database/src/implementations/kb08/pages/api/monitor/getRunningTime.ts index 522ada5..1609577 100644 --- a/release-v5.1/database/src/pages/api/monitor/getRunningTime.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getRunningTime.ts @@ -1,8 +1,8 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; import { max, maxBy } from 'lodash'; diff --git a/release-v5.1/database/src/pages/api/monitor/getTransactions.ts b/database/src/implementations/kb08/pages/api/monitor/getTransactions.ts similarity index 86% rename from release-v5.1/database/src/pages/api/monitor/getTransactions.ts rename to database/src/implementations/kb08/pages/api/monitor/getTransactions.ts index 94e1939..e9af846 100644 --- a/release-v5.1/database/src/pages/api/monitor/getTransactions.ts +++ b/database/src/implementations/kb08/pages/api/monitor/getTransactions.ts @@ -1,11 +1,11 @@ -import { DBTypeEnum } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { rawMonitorFetch } from '@/services/monitorFetch'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { rawMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { MonitorDBResult } from '@/types/monitor'; -import { convertBytes } from '@/utils/tools'; +import { convertBytes } from '@/implementations/kb08/utils/tools'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/opsrequest/list.ts b/database/src/implementations/kb08/pages/api/opsrequest/list.ts similarity index 91% rename from release-v5.1/database/src/pages/api/opsrequest/list.ts rename to database/src/implementations/kb08/pages/api/opsrequest/list.ts index 3c364b9..6f55ad8 100644 --- a/release-v5.1/database/src/pages/api/opsrequest/list.ts +++ b/database/src/implementations/kb08/pages/api/opsrequest/list.ts @@ -1,24 +1,24 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { KubeBlockOpsRequestType } from '@/types/cluster'; -import { DBType, OpsRequestItemType } from '@/types/db'; -import { adaptOpsRequest } from '@/utils/adapt'; +import { KubeBlockOpsRequestType } from '@/implementations/kb08/types/cluster'; +import { DBType, OpsRequestItemType } from '@/implementations/kb08/types/db'; +import { adaptOpsRequest } from '@/implementations/kb08/utils/adapt'; import { DBNameLabel, DBReconfigureKey, DBParameterHistoryDataKey, DBParameterHistoryLabel, ReconfigStatus -} from '@/constants/db'; +} from '@/implementations/kb08/constants/db'; import { adaptParameterHistory, completeParameterHistory, readParameterHistory, resolveParameterHistoryStatus -} from '@/utils/parameterHistory'; -import { getCurrentParameterValues } from '@/utils/parameterConfig'; +} from '@/implementations/kb08/utils/parameterHistory'; +import { getCurrentParameterValues } from '@/implementations/kb08/utils/parameterConfig'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/opsrequest/operationlog.ts b/database/src/implementations/kb08/pages/api/opsrequest/operationlog.ts similarity index 79% rename from release-v5.1/database/src/pages/api/opsrequest/operationlog.ts rename to database/src/implementations/kb08/pages/api/opsrequest/operationlog.ts index d34dee3..b8531b3 100644 --- a/release-v5.1/database/src/pages/api/opsrequest/operationlog.ts +++ b/database/src/implementations/kb08/pages/api/opsrequest/operationlog.ts @@ -1,11 +1,11 @@ -import { crLabelKey, DBNameLabel } from '@/constants/db'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { crLabelKey, DBNameLabel } from '@/implementations/kb08/constants/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { KubeBlockOpsRequestType } from '@/types/cluster'; -import { DBType, OpsRequestItemType } from '@/types/db'; -import { adaptOperationLog } from '@/utils/adapt'; +import { KubeBlockOpsRequestType } from '@/implementations/kb08/types/cluster'; +import { DBType, OpsRequestItemType } from '@/implementations/kb08/types/db'; +import { adaptOperationLog } from '@/implementations/kb08/utils/adapt'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/pauseDBByName.ts b/database/src/implementations/kb08/pages/api/pauseDBByName.ts similarity index 82% rename from release-v5.1/database/src/pages/api/pauseDBByName.ts rename to database/src/implementations/kb08/pages/api/pauseDBByName.ts index 755eefc..f149a9a 100644 --- a/release-v5.1/database/src/pages/api/pauseDBByName.ts +++ b/database/src/implementations/kb08/pages/api/pauseDBByName.ts @@ -1,9 +1,9 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { KbPgClusterType } from '@/types/cluster'; -import { json2BasicOps } from '@/utils/json2Yaml'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { json2BasicOps } from '@/implementations/kb08/utils/json2Yaml'; import { PatchUtils } from '@kubernetes/client-node'; import type { NextApiRequest, NextApiResponse } from 'next'; import { getCluster } from './getDBByName'; diff --git a/release-v5.1/database/src/pages/api/platform/getClientAppConfig.ts b/database/src/implementations/kb08/pages/api/platform/getClientAppConfig.ts similarity index 83% rename from release-v5.1/database/src/pages/api/platform/getClientAppConfig.ts rename to database/src/implementations/kb08/pages/api/platform/getClientAppConfig.ts index 93274e7..4ddea72 100644 --- a/release-v5.1/database/src/pages/api/platform/getClientAppConfig.ts +++ b/database/src/implementations/kb08/pages/api/platform/getClientAppConfig.ts @@ -1,5 +1,5 @@ -import { Config } from '@/config'; -import { jsonRes } from '@/services/backend/response'; +import { Config } from '@/implementations/kb08/config'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import type { NextApiRequest, NextApiResponse } from 'next'; // Public compatibility endpoint for clients using main's database creation and settings forms. diff --git a/release-v5.1/database/src/pages/api/platform/getQuota.ts b/database/src/implementations/kb08/pages/api/platform/getQuota.ts similarity index 66% rename from release-v5.1/database/src/pages/api/platform/getQuota.ts rename to database/src/implementations/kb08/pages/api/platform/getQuota.ts index c868958..aa65c24 100644 --- a/release-v5.1/database/src/pages/api/platform/getQuota.ts +++ b/database/src/implementations/kb08/pages/api/platform/getQuota.ts @@ -1,7 +1,7 @@ import type { NextApiRequest, NextApiResponse } from 'next'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { authSession } from '@/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/platform/getVersion.ts b/database/src/implementations/kb08/pages/api/platform/getVersion.ts similarity index 89% rename from release-v5.1/database/src/pages/api/platform/getVersion.ts rename to database/src/implementations/kb08/pages/api/platform/getVersion.ts index c74fe7c..f5b8291 100644 --- a/release-v5.1/database/src/pages/api/platform/getVersion.ts +++ b/database/src/implementations/kb08/pages/api/platform/getVersion.ts @@ -1,9 +1,9 @@ import type { NextApiRequest, NextApiResponse } from 'next'; -import { K8sApi } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { DBTypeEnum } from '@/constants/db'; +import { K8sApi } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; import * as k8s from '@kubernetes/client-node'; -import { DBVersionMap } from '@/store/static'; +import { DBVersionMap } from '@/implementations/kb08/store/static'; export type Response = Record< `${DBTypeEnum}`, diff --git a/release-v5.1/database/src/pages/api/platform/paymentConfig.ts b/database/src/implementations/kb08/pages/api/platform/paymentConfig.ts similarity index 95% rename from release-v5.1/database/src/pages/api/platform/paymentConfig.ts rename to database/src/implementations/kb08/pages/api/platform/paymentConfig.ts index 96c4ed2..4b4f391 100644 --- a/release-v5.1/database/src/pages/api/platform/paymentConfig.ts +++ b/database/src/implementations/kb08/pages/api/platform/paymentConfig.ts @@ -1,6 +1,6 @@ -import { Config } from '@/config'; +import { Config } from '@/implementations/kb08/config'; import type { NextApiRequest, NextApiResponse } from 'next'; -import { jsonRes } from '@/services/backend/response'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; type CostCenterConfigResponse = { code: number; diff --git a/release-v5.1/database/src/pages/api/platform/resourcePrice.ts b/database/src/implementations/kb08/pages/api/platform/resourcePrice.ts similarity index 86% rename from release-v5.1/database/src/pages/api/platform/resourcePrice.ts rename to database/src/implementations/kb08/pages/api/platform/resourcePrice.ts index 82af9dc..73b756e 100644 --- a/release-v5.1/database/src/pages/api/platform/resourcePrice.ts +++ b/database/src/implementations/kb08/pages/api/platform/resourcePrice.ts @@ -1,8 +1,8 @@ -import { Config } from '@/config'; +import { Config } from '@/implementations/kb08/config'; import type { NextApiRequest, NextApiResponse } from 'next'; -import { jsonRes } from '@/services/backend/response'; -import { authSession } from '@/services/backend/auth'; -import type { userPriceType } from '@/types/user'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import type { userPriceType } from '@/implementations/kb08/types/user'; export type Response = { cpu: number; diff --git a/release-v5.1/database/src/pages/api/pod/getPodEvents.ts b/database/src/implementations/kb08/pages/api/pod/getPodEvents.ts similarity index 77% rename from release-v5.1/database/src/pages/api/pod/getPodEvents.ts rename to database/src/implementations/kb08/pages/api/pod/getPodEvents.ts index 74e1eff..3f2aebb 100644 --- a/release-v5.1/database/src/pages/api/pod/getPodEvents.ts +++ b/database/src/implementations/kb08/pages/api/pod/getPodEvents.ts @@ -1,8 +1,8 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/pod/getPodEventsAnalyses.ts b/database/src/implementations/kb08/pages/api/pod/getPodEventsAnalyses.ts similarity index 91% rename from release-v5.1/database/src/pages/api/pod/getPodEventsAnalyses.ts rename to database/src/implementations/kb08/pages/api/pod/getPodEventsAnalyses.ts index e1f2c86..b663daf 100644 --- a/release-v5.1/database/src/pages/api/pod/getPodEventsAnalyses.ts +++ b/database/src/implementations/kb08/pages/api/pod/getPodEventsAnalyses.ts @@ -1,8 +1,8 @@ -import { Config } from '@/config'; +import { Config } from '@/implementations/kb08/config'; import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; import { PassThrough } from 'stream'; import axios from 'axios'; diff --git a/release-v5.1/database/src/pages/api/pod/getPodLogs.ts b/database/src/implementations/kb08/pages/api/pod/getPodLogs.ts similarity index 92% rename from release-v5.1/database/src/pages/api/pod/getPodLogs.ts rename to database/src/implementations/kb08/pages/api/pod/getPodLogs.ts index 63b94c7..ec095f4 100644 --- a/release-v5.1/database/src/pages/api/pod/getPodLogs.ts +++ b/database/src/implementations/kb08/pages/api/pod/getPodLogs.ts @@ -1,11 +1,11 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { Log } from '@kubernetes/client-node'; import { PassThrough } from 'stream'; -import { DBBackupPolicyNameMap, DBTypeEnum } from '@/constants/db'; +import { DBBackupPolicyNameMap, DBTypeEnum } from '@/implementations/kb08/constants/db'; // get App Metrics By DeployName. compute average value export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/pod/getPodStatus.ts b/database/src/implementations/kb08/pages/api/pod/getPodStatus.ts similarity index 74% rename from release-v5.1/database/src/pages/api/pod/getPodStatus.ts rename to database/src/implementations/kb08/pages/api/pod/getPodStatus.ts index 8c019fb..9d07763 100644 --- a/release-v5.1/database/src/pages/api/pod/getPodStatus.ts +++ b/database/src/implementations/kb08/pages/api/pod/getPodStatus.ts @@ -1,8 +1,8 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/pod/getPodsByDBName.ts b/database/src/implementations/kb08/pages/api/pod/getPodsByDBName.ts similarity index 71% rename from release-v5.1/database/src/pages/api/pod/getPodsByDBName.ts rename to database/src/implementations/kb08/pages/api/pod/getPodsByDBName.ts index ae6bf7b..014de2f 100644 --- a/release-v5.1/database/src/pages/api/pod/getPodsByDBName.ts +++ b/database/src/implementations/kb08/pages/api/pod/getPodsByDBName.ts @@ -1,10 +1,10 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { KBBackupNameLabel } from '@/constants/db'; -import { adaptPod } from '@/utils/adapt'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { KBBackupNameLabel } from '@/implementations/kb08/constants/db'; +import { adaptPod } from '@/implementations/kb08/utils/adapt'; // get App Metrics By DeployName. compute average value export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/pod/restartPod.ts b/database/src/implementations/kb08/pages/api/pod/restartPod.ts similarity index 72% rename from release-v5.1/database/src/pages/api/pod/restartPod.ts rename to database/src/implementations/kb08/pages/api/pod/restartPod.ts index 5595487..9008808 100644 --- a/release-v5.1/database/src/pages/api/pod/restartPod.ts +++ b/database/src/implementations/kb08/pages/api/pod/restartPod.ts @@ -1,8 +1,8 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/pod/switchPodMs.ts b/database/src/implementations/kb08/pages/api/pod/switchPodMs.ts similarity index 69% rename from release-v5.1/database/src/pages/api/pod/switchPodMs.ts rename to database/src/implementations/kb08/pages/api/pod/switchPodMs.ts index bb87a66..a66897f 100644 --- a/release-v5.1/database/src/pages/api/pod/switchPodMs.ts +++ b/database/src/implementations/kb08/pages/api/pod/switchPodMs.ts @@ -1,10 +1,10 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { json2SwitchMsNode } from '@/utils/json2Yaml'; -import { DBType } from '@/types/db'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { json2SwitchMsNode } from '@/implementations/kb08/utils/json2Yaml'; +import { DBType } from '@/implementations/kb08/types/db'; export type SwitchMsData = { dbName: string; diff --git a/release-v5.1/database/src/pages/api/proxy/get_db_alerts.ts b/database/src/implementations/kb08/pages/api/proxy/get_db_alerts.ts similarity index 87% rename from release-v5.1/database/src/pages/api/proxy/get_db_alerts.ts rename to database/src/implementations/kb08/pages/api/proxy/get_db_alerts.ts index c05f373..cb8e796 100644 --- a/release-v5.1/database/src/pages/api/proxy/get_db_alerts.ts +++ b/database/src/implementations/kb08/pages/api/proxy/get_db_alerts.ts @@ -1,7 +1,7 @@ -import { Config } from '@/config'; +import { Config } from '@/implementations/kb08/config'; import type { NextApiRequest, NextApiResponse } from 'next'; -import { jsonRes } from '@/services/backend/response'; -import { authSession } from '@/services/backend/auth'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; import { ResponseCode, ResponseMessages } from '@/types/response'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/remark.ts b/database/src/implementations/kb08/pages/api/remark.ts similarity index 80% rename from release-v5.1/database/src/pages/api/remark.ts rename to database/src/implementations/kb08/pages/api/remark.ts index 42a75b0..5371970 100644 --- a/release-v5.1/database/src/pages/api/remark.ts +++ b/database/src/implementations/kb08/pages/api/remark.ts @@ -1,10 +1,10 @@ import type { NextApiRequest, NextApiResponse } from 'next'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { PatchUtils } from '@kubernetes/client-node'; -import { DB_REMARK_KEY } from '@/constants/db'; +import { DB_REMARK_KEY } from '@/implementations/kb08/constants/db'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/startDBByName.ts b/database/src/implementations/kb08/pages/api/startDBByName.ts similarity index 79% rename from release-v5.1/database/src/pages/api/startDBByName.ts rename to database/src/implementations/kb08/pages/api/startDBByName.ts index 0f545fc..910920c 100644 --- a/release-v5.1/database/src/pages/api/startDBByName.ts +++ b/database/src/implementations/kb08/pages/api/startDBByName.ts @@ -1,9 +1,9 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { KbPgClusterType } from '@/types/cluster'; -import { json2BasicOps } from '@/utils/json2Yaml'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { json2BasicOps } from '@/implementations/kb08/utils/json2Yaml'; import { PatchUtils } from '@kubernetes/client-node'; import type { NextApiRequest, NextApiResponse } from 'next'; import { getCluster } from './getDBByName'; diff --git a/release-v5.1/database/src/pages/api/v1/database.ts b/database/src/implementations/kb08/pages/api/v1/database.ts similarity index 87% rename from release-v5.1/database/src/pages/api/v1/database.ts rename to database/src/implementations/kb08/pages/api/v1/database.ts index 8bc1a47..39ae6df 100644 --- a/release-v5.1/database/src/pages/api/v1/database.ts +++ b/database/src/implementations/kb08/pages/api/v1/database.ts @@ -1,10 +1,10 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { handleK8sError, jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { handleK8sError, jsonRes } from '@/implementations/kb08/services/backend/response'; import { NextApiRequest, NextApiResponse } from 'next'; -import { createDatabaseSchemas } from '@/types/apis'; +import { createDatabaseSchemas } from '@/implementations/kb08/types/apis/index'; import { ResponseCode, ResponseMessages } from '@/types/response'; -import { createDatabase } from '@/services/backend/apis/create-database'; +import { createDatabase } from '@/implementations/kb08/services/backend/apis/create-database'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { const kubeconfig = await authSession(req).catch(() => null); diff --git a/release-v5.1/database/src/pages/api/v1/database/[databaseName].ts b/database/src/implementations/kb08/pages/api/v1/database/[databaseName].ts similarity index 85% rename from release-v5.1/database/src/pages/api/v1/database/[databaseName].ts rename to database/src/implementations/kb08/pages/api/v1/database/[databaseName].ts index f75329c..9439072 100644 --- a/release-v5.1/database/src/pages/api/v1/database/[databaseName].ts +++ b/database/src/implementations/kb08/pages/api/v1/database/[databaseName].ts @@ -1,12 +1,12 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { handleK8sError, jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { handleK8sError, jsonRes } from '@/implementations/kb08/services/backend/response'; import { NextApiRequest, NextApiResponse } from 'next'; import { ResponseCode, ResponseMessages } from '@/types/response'; -import { getDatabaseSchemas, updateDatabaseSchemas } from '@/types/apis'; -import { updateDatabase } from '@/services/backend/apis/update-database'; -import { getDatabase } from '@/services/backend/apis/get-database'; -import { deleteDatabase } from '@/services/backend/apis/delete-database'; +import { getDatabaseSchemas, updateDatabaseSchemas } from '@/implementations/kb08/types/apis/index'; +import { updateDatabase } from '@/implementations/kb08/services/backend/apis/update-database'; +import { getDatabase } from '@/implementations/kb08/services/backend/apis/get-database'; +import { deleteDatabase } from '@/implementations/kb08/services/backend/apis/delete-database'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { const kubeconfig = await authSession(req).catch(() => null); diff --git a/release-v5.1/database/src/pages/api/v1/database/[databaseName]/backup/[backupName].ts b/database/src/implementations/kb08/pages/api/v1/database/[databaseName]/backup/[backupName].ts similarity index 93% rename from release-v5.1/database/src/pages/api/v1/database/[databaseName]/backup/[backupName].ts rename to database/src/implementations/kb08/pages/api/v1/database/[databaseName]/backup/[backupName].ts index e4cf7ec..93eb90f 100644 --- a/release-v5.1/database/src/pages/api/v1/database/[databaseName]/backup/[backupName].ts +++ b/database/src/implementations/kb08/pages/api/v1/database/[databaseName]/backup/[backupName].ts @@ -1,12 +1,12 @@ import { NextApiRequest, NextApiResponse } from 'next'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { handleK8sError, jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { handleK8sError, jsonRes } from '@/implementations/kb08/services/backend/response'; import { ResponseCode, ResponseMessages } from '@/types/response'; -import { json2CreateCluster, json2Account } from '@/utils/json2Yaml'; -import { DBTypeEnum, defaultDBEditValue } from '@/constants/db'; -import type { DBEditType } from '@/types/db'; -import { cpuFormatToM, memoryFormatToMi, storageFormatToGi } from '@/utils/tools'; +import { json2CreateCluster, json2Account } from '@/implementations/kb08/utils/json2Yaml'; +import { DBTypeEnum, defaultDBEditValue } from '@/implementations/kb08/constants/db'; +import type { DBEditType } from '@/implementations/kb08/types/db'; +import { cpuFormatToM, memoryFormatToMi, storageFormatToGi } from '@/implementations/kb08/utils/tools'; import z from 'zod'; const restoreBodySchema = z.object({ diff --git a/release-v5.1/database/src/pages/api/v1/database/[databaseName]/backup/index.ts b/database/src/implementations/kb08/pages/api/v1/database/[databaseName]/backup/index.ts similarity index 91% rename from release-v5.1/database/src/pages/api/v1/database/[databaseName]/backup/index.ts rename to database/src/implementations/kb08/pages/api/v1/database/[databaseName]/backup/index.ts index c564c02..5b178d0 100644 --- a/release-v5.1/database/src/pages/api/v1/database/[databaseName]/backup/index.ts +++ b/database/src/implementations/kb08/pages/api/v1/database/[databaseName]/backup/index.ts @@ -1,10 +1,10 @@ import { NextApiRequest, NextApiResponse } from 'next'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { handleK8sError, jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { handleK8sError, jsonRes } from '@/implementations/kb08/services/backend/response'; import { ResponseCode, ResponseMessages } from '@/types/response'; -import { json2ManualBackup } from '@/utils/json2Yaml'; -import { DBBackupMethodNameMap, DBBackupPolicyNameMap, DBTypeEnum } from '@/constants/db'; +import { json2ManualBackup } from '@/implementations/kb08/utils/json2Yaml'; +import { DBBackupMethodNameMap, DBBackupPolicyNameMap, DBTypeEnum } from '@/implementations/kb08/constants/db'; import { customAlphabet } from 'nanoid'; import z from 'zod'; diff --git a/release-v5.1/database/src/pages/api/v1/database/[databaseName]/disablePublic.ts b/database/src/implementations/kb08/pages/api/v1/database/[databaseName]/disablePublic.ts similarity index 92% rename from release-v5.1/database/src/pages/api/v1/database/[databaseName]/disablePublic.ts rename to database/src/implementations/kb08/pages/api/v1/database/[databaseName]/disablePublic.ts index 8ec6fb2..dba1700 100644 --- a/release-v5.1/database/src/pages/api/v1/database/[databaseName]/disablePublic.ts +++ b/database/src/implementations/kb08/pages/api/v1/database/[databaseName]/disablePublic.ts @@ -1,7 +1,7 @@ import type { NextApiRequest, NextApiResponse } from 'next'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { handleK8sError, jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { handleK8sError, jsonRes } from '@/implementations/kb08/services/backend/response'; import { ResponseCode, ResponseMessages } from '@/types/response'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/v1/database/[databaseName]/enablePublic.ts b/database/src/implementations/kb08/pages/api/v1/database/[databaseName]/enablePublic.ts similarity index 88% rename from release-v5.1/database/src/pages/api/v1/database/[databaseName]/enablePublic.ts rename to database/src/implementations/kb08/pages/api/v1/database/[databaseName]/enablePublic.ts index ca20e8e..11a0b9a 100644 --- a/release-v5.1/database/src/pages/api/v1/database/[databaseName]/enablePublic.ts +++ b/database/src/implementations/kb08/pages/api/v1/database/[databaseName]/enablePublic.ts @@ -1,11 +1,11 @@ import type { NextApiRequest, NextApiResponse } from 'next'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { handleK8sError, jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { handleK8sError, jsonRes } from '@/implementations/kb08/services/backend/response'; import { ResponseCode, ResponseMessages } from '@/types/response'; -import { adaptDBDetail } from '@/utils/adapt'; -import { KbPgClusterType } from '@/types/cluster'; -import { json2NetworkService } from '@/utils/json2Yaml'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { json2NetworkService } from '@/implementations/kb08/utils/json2Yaml'; import yaml from 'js-yaml'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/v1/database/[databaseName]/pause.ts b/database/src/implementations/kb08/pages/api/v1/database/[databaseName]/pause.ts similarity index 76% rename from release-v5.1/database/src/pages/api/v1/database/[databaseName]/pause.ts rename to database/src/implementations/kb08/pages/api/v1/database/[databaseName]/pause.ts index 54a46ee..9cc4547 100644 --- a/release-v5.1/database/src/pages/api/v1/database/[databaseName]/pause.ts +++ b/database/src/implementations/kb08/pages/api/v1/database/[databaseName]/pause.ts @@ -1,10 +1,10 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes, handleK8sError } from '@/services/backend/response'; -import { pauseDatabaseSchemas } from '@/types/apis'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes, handleK8sError } from '@/implementations/kb08/services/backend/response'; +import { pauseDatabaseSchemas } from '@/implementations/kb08/types/apis/index'; import { ResponseCode, ResponseMessages } from '@/types/response'; import { NextApiRequest, NextApiResponse } from 'next'; -import { pauseDatabase } from '@/services/backend/apis/pause-database'; +import { pauseDatabase } from '@/implementations/kb08/services/backend/apis/pause-database'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { const kubeconfig = await authSession(req).catch(() => null); diff --git a/release-v5.1/database/src/pages/api/v1/database/[databaseName]/start.ts b/database/src/implementations/kb08/pages/api/v1/database/[databaseName]/start.ts similarity index 76% rename from release-v5.1/database/src/pages/api/v1/database/[databaseName]/start.ts rename to database/src/implementations/kb08/pages/api/v1/database/[databaseName]/start.ts index fbcf6ac..1ed3683 100644 --- a/release-v5.1/database/src/pages/api/v1/database/[databaseName]/start.ts +++ b/database/src/implementations/kb08/pages/api/v1/database/[databaseName]/start.ts @@ -1,10 +1,10 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes, handleK8sError } from '@/services/backend/response'; -import { startDatabaseSchemas } from '@/types/apis'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes, handleK8sError } from '@/implementations/kb08/services/backend/response'; +import { startDatabaseSchemas } from '@/implementations/kb08/types/apis/index'; import { ResponseCode, ResponseMessages } from '@/types/response'; import { NextApiRequest, NextApiResponse } from 'next'; -import { startDatabase } from '@/services/backend/apis/start-database'; +import { startDatabase } from '@/implementations/kb08/services/backend/apis/start-database'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { const kubeconfig = await authSession(req).catch(() => null); diff --git a/release-v5.1/database/src/pages/api/v1/database/list.ts b/database/src/implementations/kb08/pages/api/v1/database/list.ts similarity index 56% rename from release-v5.1/database/src/pages/api/v1/database/list.ts rename to database/src/implementations/kb08/pages/api/v1/database/list.ts index 5c6405c..998095d 100644 --- a/release-v5.1/database/src/pages/api/v1/database/list.ts +++ b/database/src/implementations/kb08/pages/api/v1/database/list.ts @@ -1,13 +1,13 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { handleK8sError, jsonRes } from '@/services/backend/response'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { handleK8sError, jsonRes } from '@/implementations/kb08/services/backend/response'; import { NextApiRequest, NextApiResponse } from 'next'; import { ResponseCode, ResponseMessages } from '@/types/response'; -import { updateDatabaseSchemas } from '@/types/apis'; -import { updateDatabase } from '@/services/backend/apis/update-database'; -import { KbPgClusterType } from '@/types/cluster'; -import { adaptDBListItem } from '@/utils/adapt'; -import { getDatabaseList } from '@/services/backend/apis/list-database'; +import { updateDatabaseSchemas } from '@/implementations/kb08/types/apis/index'; +import { updateDatabase } from '@/implementations/kb08/services/backend/apis/update-database'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { adaptDBListItem } from '@/implementations/kb08/utils/adapt'; +import { getDatabaseList } from '@/implementations/kb08/services/backend/apis/list-database'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/v1/database/version/list.ts b/database/src/implementations/kb08/pages/api/v1/database/version/list.ts similarity index 82% rename from release-v5.1/database/src/pages/api/v1/database/version/list.ts rename to database/src/implementations/kb08/pages/api/v1/database/version/list.ts index 59c934b..47247e8 100644 --- a/release-v5.1/database/src/pages/api/v1/database/version/list.ts +++ b/database/src/implementations/kb08/pages/api/v1/database/version/list.ts @@ -1,10 +1,10 @@ -import { getK8s, K8sApi } from '@/services/backend/kubernetes'; -import { handleK8sError, jsonRes } from '@/services/backend/response'; +import { getK8s, K8sApi } from '@/implementations/kb08/services/backend/kubernetes'; +import { handleK8sError, jsonRes } from '@/implementations/kb08/services/backend/response'; import type { NextApiRequest, NextApiResponse } from 'next'; -import { versionListSchema } from '@/types/schemas/db'; -import { DBTypeEnum } from '@/constants/db'; +import { versionListSchema } from '@/implementations/kb08/types/schemas/db'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; import z from 'zod'; -import { DBVersionMap } from '@/store/static'; +import { DBVersionMap } from '@/implementations/kb08/store/static'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { const kc = K8sApi(); diff --git a/release-v5.1/database/src/pages/api/v1/logs/files.ts b/database/src/implementations/kb08/pages/api/v1/logs/files.ts similarity index 82% rename from release-v5.1/database/src/pages/api/v1/logs/files.ts rename to database/src/implementations/kb08/pages/api/v1/logs/files.ts index 2649f16..e7a6d00 100644 --- a/release-v5.1/database/src/pages/api/v1/logs/files.ts +++ b/database/src/implementations/kb08/pages/api/v1/logs/files.ts @@ -1,14 +1,14 @@ -import { ServiceLogConfigs } from '@/constants/log'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { ServiceLogConfigs } from '@/implementations/kb08/constants/log'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { SupportReconfigureDBType } from '@/types/db'; -import { LogTypeEnum } from '@/constants/log'; +import { SupportReconfigureDBType } from '@/implementations/kb08/types/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; import { KubeFileSystem } from '@/utils/kubeFileSystem'; import type { NextApiRequest, NextApiResponse } from 'next'; import { ResponseCode, ResponseMessages } from '@/types/response'; -import { logsFileSchemas } from '@/types/apis'; +import { logsFileSchemas } from '@/implementations/kb08/types/apis/index'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/v1/logs/index.ts b/database/src/implementations/kb08/pages/api/v1/logs/index.ts similarity index 74% rename from release-v5.1/database/src/pages/api/v1/logs/index.ts rename to database/src/implementations/kb08/pages/api/v1/logs/index.ts index f23fcf0..6e475e5 100644 --- a/release-v5.1/database/src/pages/api/v1/logs/index.ts +++ b/database/src/implementations/kb08/pages/api/v1/logs/index.ts @@ -1,15 +1,15 @@ -import { DBTypeEnum } from '@/constants/db'; -import { ServiceLogConfigs } from '@/constants/log'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { ServiceLogConfigs } from '@/implementations/kb08/constants/log'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { SupportReconfigureDBType } from '@/types/db'; -import { LogTypeEnum } from '@/constants/log'; -import { DatabaseLogService } from '@/utils/logParsers/LogParser'; +import { SupportReconfigureDBType } from '@/implementations/kb08/types/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; +import { DatabaseLogService } from '@/implementations/kb08/utils/logParsers/LogParser'; import type { NextApiRequest, NextApiResponse } from 'next'; import { ResponseCode, ResponseMessages } from '@/types/response'; -import { logsDataSchemas } from '@/types/apis'; +import { logsDataSchemas } from '@/implementations/kb08/types/apis/index'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { diff --git a/release-v5.1/database/src/pages/api/v1/monitor/data.ts b/database/src/implementations/kb08/pages/api/v1/monitor/data.ts similarity index 91% rename from release-v5.1/database/src/pages/api/v1/monitor/data.ts rename to database/src/implementations/kb08/pages/api/v1/monitor/data.ts index fd60f37..1f53276 100644 --- a/release-v5.1/database/src/pages/api/v1/monitor/data.ts +++ b/database/src/implementations/kb08/pages/api/v1/monitor/data.ts @@ -1,7 +1,7 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { jsonRes } from '@/services/backend/response'; -import { databaseMonitorFetch } from '@/services/monitorFetch'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { databaseMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { AdapterChartDataType, MonitorDBResult } from '@/types/monitor'; import { ResponseCode, ResponseMessages } from '@/types/response'; diff --git a/release-v5.1/database/src/pages/api/v1/openapi.ts b/database/src/implementations/kb08/pages/api/v1/openapi.ts similarity index 66% rename from release-v5.1/database/src/pages/api/v1/openapi.ts rename to database/src/implementations/kb08/pages/api/v1/openapi.ts index 4b0821c..c167d84 100644 --- a/release-v5.1/database/src/pages/api/v1/openapi.ts +++ b/database/src/implementations/kb08/pages/api/v1/openapi.ts @@ -1,5 +1,5 @@ -import { jsonRes } from '@/services/backend/response'; -import { document } from '@/types/apis'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; +import { document } from '@/implementations/kb08/types/apis/index'; import { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/v2alpha/databases.ts b/database/src/implementations/kb08/pages/api/v2alpha/databases.ts similarity index 84% rename from release-v5.1/database/src/pages/api/v2alpha/databases.ts rename to database/src/implementations/kb08/pages/api/v2alpha/databases.ts index 8db1d87..f608e7c 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/databases.ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/databases.ts @@ -1,9 +1,9 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; import { NextApiRequest, NextApiResponse } from 'next'; -import { createDatabaseSchemas } from '@/types/apis/v2alpha'; -import { createDatabase } from '@/services/backend/v2alpha/create-database'; -import { getDatabaseList } from '@/services/backend/v2alpha/list-database'; +import { createDatabaseSchemas } from '@/implementations/kb08/types/apis/v2alpha/index'; +import { createDatabase } from '@/implementations/kb08/services/backend/v2alpha/create-database'; +import { getDatabaseList } from '@/implementations/kb08/services/backend/v2alpha/list-database'; import { sendError, sendK8sError, diff --git a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName].ts b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName].ts similarity index 89% rename from release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName].ts rename to database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName].ts index 526b365..10111e7 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName].ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName].ts @@ -1,10 +1,10 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; import { NextApiRequest, NextApiResponse } from 'next'; -import { getDatabaseSchemas, updateDatabaseSchemas } from '@/types/apis/v2alpha'; -import { updateDatabase } from '@/services/backend/v2alpha/update-database'; -import { getDatabase } from '@/services/backend/v2alpha/get-database'; -import { deleteDatabase } from '@/services/backend/v2alpha/delete-database'; +import { getDatabaseSchemas, updateDatabaseSchemas } from '@/implementations/kb08/types/apis/v2alpha/index'; +import { updateDatabase } from '@/implementations/kb08/services/backend/v2alpha/update-database'; +import { getDatabase } from '@/implementations/kb08/services/backend/v2alpha/get-database'; +import { deleteDatabase } from '@/implementations/kb08/services/backend/v2alpha/delete-database'; import { sendError, sendK8sError, diff --git a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/backups/[backupName].ts b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/backups/[backupName].ts similarity index 92% rename from release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/backups/[backupName].ts rename to database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/backups/[backupName].ts index 8a74237..ff09b65 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/backups/[backupName].ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/backups/[backupName].ts @@ -1,6 +1,6 @@ import { NextApiRequest, NextApiResponse } from 'next'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; import { sendError, sendK8sError, ErrorType, ErrorCode } from '@/types/v2alpha/error'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]/restore.ts b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]/restore.ts similarity index 95% rename from release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]/restore.ts rename to database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]/restore.ts index 0ed640e..0d51434 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]/restore.ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]/restore.ts @@ -1,10 +1,10 @@ import { NextApiRequest, NextApiResponse } from 'next'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { json2CreateCluster, json2Account } from '@/utils/json2Yaml'; -import { DBTypeEnum, defaultDBEditValue, templateDeployKey } from '@/constants/db'; -import type { DBEditType } from '@/types/db'; -import { cpuFormatToM, memoryFormatToMi, storageFormatToGi } from '@/utils/tools'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { json2CreateCluster, json2Account } from '@/implementations/kb08/utils/json2Yaml'; +import { DBTypeEnum, defaultDBEditValue, templateDeployKey } from '@/implementations/kb08/constants/db'; +import type { DBEditType } from '@/implementations/kb08/types/db'; +import { cpuFormatToM, memoryFormatToMi, storageFormatToGi } from '@/implementations/kb08/utils/tools'; import { customAlphabet } from 'nanoid'; import z from 'zod'; import { diff --git a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/backups/index.ts b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/backups/index.ts similarity index 93% rename from release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/backups/index.ts rename to database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/backups/index.ts index 7aa85ed..0454494 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/backups/index.ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/backups/index.ts @@ -1,17 +1,17 @@ import { NextApiRequest, NextApiResponse } from 'next'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { json2ManualBackup } from '@/utils/json2Yaml'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { json2ManualBackup } from '@/implementations/kb08/utils/json2Yaml'; import { DBBackupMethodNameMap, DBBackupPolicyNameMap, DBTypeEnum, DBNameLabel -} from '@/constants/db'; +} from '@/implementations/kb08/constants/db'; import { customAlphabet } from 'nanoid'; import z from 'zod'; -import { BACKUP_REMARK_LABEL_KEY, BackupStatusEnum } from '@/constants/backup'; -import { decodeFromHex } from '@/utils/tools'; +import { BACKUP_REMARK_LABEL_KEY, BackupStatusEnum } from '@/implementations/kb08/constants/backup'; +import { decodeFromHex } from '@/implementations/kb08/utils/tools'; import { sendError, sendK8sError, diff --git a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/disable-public.ts b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/disable-public.ts similarity index 94% rename from release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/disable-public.ts rename to database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/disable-public.ts index 0bb4a59..9d93904 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/disable-public.ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/disable-public.ts @@ -1,6 +1,6 @@ import type { NextApiRequest, NextApiResponse } from 'next'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; import { sendError, sendK8sError, ErrorType, ErrorCode } from '@/types/v2alpha/error'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/enable-public.ts b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/enable-public.ts similarity index 89% rename from release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/enable-public.ts rename to database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/enable-public.ts index 35e1586..92a618c 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/enable-public.ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/enable-public.ts @@ -1,9 +1,9 @@ import type { NextApiRequest, NextApiResponse } from 'next'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { adaptDBDetail } from '@/utils/adapt'; -import { KbPgClusterType } from '@/types/cluster'; -import { json2NetworkService } from '@/utils/json2Yaml'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { json2NetworkService } from '@/implementations/kb08/utils/json2Yaml'; import { sendError, sendK8sError, ErrorType, ErrorCode } from '@/types/v2alpha/error'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/pause.ts b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/pause.ts similarity index 84% rename from release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/pause.ts rename to database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/pause.ts index 7168540..a9260f0 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/pause.ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/pause.ts @@ -1,8 +1,8 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { pauseDatabaseSchemas } from '@/types/apis/v2alpha'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { pauseDatabaseSchemas } from '@/implementations/kb08/types/apis/v2alpha/index'; import { NextApiRequest, NextApiResponse } from 'next'; -import { pauseDatabase } from '@/services/backend/v2alpha/pause-database'; +import { pauseDatabase } from '@/implementations/kb08/services/backend/v2alpha/pause-database'; import { sendError, sendK8sError, diff --git a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/restart.ts b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/restart.ts similarity index 84% rename from release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/restart.ts rename to database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/restart.ts index 20a728c..52d0117 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/restart.ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/restart.ts @@ -1,8 +1,8 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { restartDatabaseSchemas } from '@/types/apis/v2alpha'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { restartDatabaseSchemas } from '@/implementations/kb08/types/apis/v2alpha/index'; import { NextApiRequest, NextApiResponse } from 'next'; -import { restartDatabase } from '@/services/backend/v2alpha/restart-database'; +import { restartDatabase } from '@/implementations/kb08/services/backend/v2alpha/restart-database'; import { sendError, sendK8sError, diff --git a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/start.ts b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/start.ts similarity index 84% rename from release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/start.ts rename to database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/start.ts index 61b63ab..4a92fc4 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/databases/[databaseName]/start.ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/start.ts @@ -1,8 +1,8 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { startDatabaseSchemas } from '@/types/apis/v2alpha'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { startDatabaseSchemas } from '@/implementations/kb08/types/apis/v2alpha/index'; import { NextApiRequest, NextApiResponse } from 'next'; -import { startDatabase } from '@/services/backend/v2alpha/start-database'; +import { startDatabase } from '@/implementations/kb08/services/backend/v2alpha/start-database'; import { sendError, sendK8sError, diff --git a/release-v5.1/database/src/pages/api/v2alpha/databases/versions.ts b/database/src/implementations/kb08/pages/api/v2alpha/databases/versions.ts similarity index 88% rename from release-v5.1/database/src/pages/api/v2alpha/databases/versions.ts rename to database/src/implementations/kb08/pages/api/v2alpha/databases/versions.ts index 3382b44..99563ed 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/databases/versions.ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/databases/versions.ts @@ -1,7 +1,7 @@ -import { K8sApi } from '@/services/backend/kubernetes'; +import { K8sApi } from '@/implementations/kb08/services/backend/kubernetes'; import type { NextApiRequest, NextApiResponse } from 'next'; -import { versionListSchema } from '@/types/schemas/db'; -import { DBTypeEnum } from '@/constants/db'; +import { versionListSchema } from '@/implementations/kb08/types/schemas/db'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; import z from 'zod'; import * as k8s from '@kubernetes/client-node'; import { sendError, sendK8sError, ErrorType, ErrorCode } from '@/types/v2alpha/error'; diff --git a/release-v5.1/database/src/pages/api/v2alpha/logs/files.ts b/database/src/implementations/kb08/pages/api/v2alpha/logs/files.ts similarity index 86% rename from release-v5.1/database/src/pages/api/v2alpha/logs/files.ts rename to database/src/implementations/kb08/pages/api/v2alpha/logs/files.ts index 6a561e4..e8ff22d 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/logs/files.ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/logs/files.ts @@ -1,12 +1,12 @@ -import { ServiceLogConfigs } from '@/constants/log'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; +import { ServiceLogConfigs } from '@/implementations/kb08/constants/log'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; import { ApiResp } from '@/services/kubernet'; -import { SupportReconfigureDBType } from '@/types/db'; -import { LogTypeEnum } from '@/constants/log'; +import { SupportReconfigureDBType } from '@/implementations/kb08/types/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; import { KubeFileSystem } from '@/utils/kubeFileSystem'; import type { NextApiRequest, NextApiResponse } from 'next'; -import { logsFileSchemas } from '@/types/apis/v2alpha'; +import { logsFileSchemas } from '@/implementations/kb08/types/apis/v2alpha/index'; import { sendError, sendValidationError, ErrorType, ErrorCode } from '@/types/v2alpha/error'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/v2alpha/logs/index.ts b/database/src/implementations/kb08/pages/api/v2alpha/logs/index.ts similarity index 79% rename from release-v5.1/database/src/pages/api/v2alpha/logs/index.ts rename to database/src/implementations/kb08/pages/api/v2alpha/logs/index.ts index e5550f2..4ae47d9 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/logs/index.ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/logs/index.ts @@ -1,13 +1,13 @@ -import { DBTypeEnum } from '@/constants/db'; -import { ServiceLogConfigs } from '@/constants/log'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { ServiceLogConfigs } from '@/implementations/kb08/constants/log'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; import { ApiResp } from '@/services/kubernet'; -import { SupportReconfigureDBType } from '@/types/db'; -import { LogTypeEnum } from '@/constants/log'; -import { DatabaseLogService } from '@/utils/logParsers/LogParser'; +import { SupportReconfigureDBType } from '@/implementations/kb08/types/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; +import { DatabaseLogService } from '@/implementations/kb08/utils/logParsers/LogParser'; import type { NextApiRequest, NextApiResponse } from 'next'; -import { logsDataSchemas } from '@/types/apis/v2alpha'; +import { logsDataSchemas } from '@/implementations/kb08/types/apis/v2alpha/index'; import { sendError, sendValidationError, ErrorType, ErrorCode } from '@/types/v2alpha/error'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/v2alpha/monitor/data.ts b/database/src/implementations/kb08/pages/api/v2alpha/monitor/data.ts similarity index 94% rename from release-v5.1/database/src/pages/api/v2alpha/monitor/data.ts rename to database/src/implementations/kb08/pages/api/v2alpha/monitor/data.ts index c93587c..cdace0f 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/monitor/data.ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/monitor/data.ts @@ -1,6 +1,6 @@ -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { databaseMonitorFetch } from '@/services/monitorFetch'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { databaseMonitorFetch } from '@/implementations/kb08/services/monitorFetch'; import { ApiResp } from '@/services/kubernet'; import { AdapterChartDataType, MonitorDBResult } from '@/types/monitor'; import type { NextApiRequest, NextApiResponse } from 'next'; diff --git a/release-v5.1/database/src/pages/api/v2alpha/openapi.ts b/database/src/implementations/kb08/pages/api/v2alpha/openapi.ts similarity index 88% rename from release-v5.1/database/src/pages/api/v2alpha/openapi.ts rename to database/src/implementations/kb08/pages/api/v2alpha/openapi.ts index b1c364c..fe3a7bd 100644 --- a/release-v5.1/database/src/pages/api/v2alpha/openapi.ts +++ b/database/src/implementations/kb08/pages/api/v2alpha/openapi.ts @@ -1,4 +1,4 @@ -import { document } from '@/types/apis/v2alpha'; +import { document } from '@/implementations/kb08/types/apis/v2alpha/index'; import { NextApiRequest, NextApiResponse } from 'next'; import { sendError, ErrorType, ErrorCode } from '@/types/v2alpha/error'; diff --git a/release-v5.1/database/src/pages/api/vlogs/database-log-counts.ts b/database/src/implementations/kb08/pages/api/vlogs/database-log-counts.ts similarity index 93% rename from release-v5.1/database/src/pages/api/vlogs/database-log-counts.ts rename to database/src/implementations/kb08/pages/api/vlogs/database-log-counts.ts index 07222e4..8191aef 100644 --- a/release-v5.1/database/src/pages/api/vlogs/database-log-counts.ts +++ b/database/src/implementations/kb08/pages/api/vlogs/database-log-counts.ts @@ -1,7 +1,7 @@ -import { jsonRes } from '@/services/backend/response'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { VLOGS_CONFIG } from '@/config/vlogs'; -import { toVlogsQueryTime } from '@/utils/vlogsTime'; +import { VLOGS_CONFIG } from '@/implementations/kb08/config/vlogs'; +import { toVlogsQueryTime } from '@/implementations/kb08/utils/vlogsTime'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/vlogs/database-logs.ts b/database/src/implementations/kb08/pages/api/vlogs/database-logs.ts similarity index 95% rename from release-v5.1/database/src/pages/api/vlogs/database-logs.ts rename to database/src/implementations/kb08/pages/api/vlogs/database-logs.ts index f7e569f..55c15b6 100644 --- a/release-v5.1/database/src/pages/api/vlogs/database-logs.ts +++ b/database/src/implementations/kb08/pages/api/vlogs/database-logs.ts @@ -1,7 +1,7 @@ -import { jsonRes } from '@/services/backend/response'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { VLOGS_CONFIG } from '@/config/vlogs'; -import { toVlogsQueryTime } from '@/utils/vlogsTime'; +import { VLOGS_CONFIG } from '@/implementations/kb08/config/vlogs'; +import { toVlogsQueryTime } from '@/implementations/kb08/utils/vlogsTime'; import type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { diff --git a/release-v5.1/database/src/pages/api/vlogs/database-pods.ts b/database/src/implementations/kb08/pages/api/vlogs/database-pods.ts similarity index 89% rename from release-v5.1/database/src/pages/api/vlogs/database-pods.ts rename to database/src/implementations/kb08/pages/api/vlogs/database-pods.ts index 7053e23..d85fae7 100644 --- a/release-v5.1/database/src/pages/api/vlogs/database-pods.ts +++ b/database/src/implementations/kb08/pages/api/vlogs/database-pods.ts @@ -1,10 +1,10 @@ -import { jsonRes } from '@/services/backend/response'; +import { jsonRes } from '@/implementations/kb08/services/backend/response'; import { ApiResp } from '@/services/kubernet'; -import { authSession } from '@/services/backend/auth'; -import { getK8s } from '@/services/backend/kubernetes'; -import { SupportReconfigureDBType } from '@/types/db'; -import { VLOGS_CONFIG } from '@/config/vlogs'; -import { toVlogsQueryTime } from '@/utils/vlogsTime'; +import { authSession } from '@/implementations/kb08/services/backend/auth'; +import { getK8s } from '@/implementations/kb08/services/backend/kubernetes'; +import { SupportReconfigureDBType } from '@/implementations/kb08/types/db'; +import { VLOGS_CONFIG } from '@/implementations/kb08/config/vlogs'; +import { toVlogsQueryTime } from '@/implementations/kb08/utils/vlogsTime'; import type { NextApiRequest, NextApiResponse } from 'next'; interface VlogsPodQueryParams { diff --git a/database/src/implementations/kb08/pages/backups/index.server.ts b/database/src/implementations/kb08/pages/backups/index.server.ts new file mode 100644 index 0000000..2be43ec --- /dev/null +++ b/database/src/implementations/kb08/pages/backups/index.server.ts @@ -0,0 +1,8 @@ +import { serviceSideProps } from '@/utils/i18n'; +export async function getServerSideProps(content: any) { + return { + props: { + ...(await serviceSideProps(content)) + } + }; +} diff --git a/release-v5.1/database/src/pages/backups/index.tsx b/database/src/implementations/kb08/pages/backups/index.tsx similarity index 95% rename from release-v5.1/database/src/pages/backups/index.tsx rename to database/src/implementations/kb08/pages/backups/index.tsx index ce31915..9391a0b 100644 --- a/release-v5.1/database/src/pages/backups/index.tsx +++ b/database/src/implementations/kb08/pages/backups/index.tsx @@ -1,16 +1,15 @@ -import { deleteBackup, getBackups } from '@/api/backup'; -import { getDBByName } from '@/api/db'; +import { deleteBackup, getBackups } from '@/implementations/kb08/api/backup'; +import { getDBByName } from '@/implementations/kb08/api/db'; import MyIcon from '@/components/Icon'; import MyTooltip from '@/components/MyTooltip'; -import Sidebar from '@/components/Sidebar'; -import { BackupStatusEnum, backupTypeMap } from '@/constants/backup'; +import Sidebar from '@/implementations/kb08/components/Sidebar/index'; +import { BackupStatusEnum, backupTypeMap } from '@/implementations/kb08/constants/backup'; import { useConfirm } from '@/hooks/useConfirm'; import { useLoading } from '@/hooks/useLoading'; -import useEnvStore from '@/store/env'; -import { BackupItemType, DBDetailType } from '@/types/db'; +import useEnvStore from '@/implementations/kb08/store/env'; +import { BackupItemType, DBDetailType } from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; -import { serviceSideProps } from '@/utils/i18n'; -import { getErrText } from '@/utils/tools'; +import { getErrText } from '@/implementations/kb08/utils/tools'; import { QuestionOutlineIcon } from '@chakra-ui/icons'; import { Box, @@ -29,7 +28,7 @@ import { Thead, Tr } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import { ColumnDef, @@ -358,11 +357,3 @@ export default function Backups() { ); } - -export async function getServerSideProps(content: any) { - return { - props: { - ...(await serviceSideProps(content)) - } - }; -} diff --git a/release-v5.1/database/src/pages/db/detail/components/AppBaseInfo.tsx b/database/src/implementations/kb08/pages/db/detail/components/AppBaseInfo.tsx similarity index 97% rename from release-v5.1/database/src/pages/db/detail/components/AppBaseInfo.tsx rename to database/src/implementations/kb08/pages/db/detail/components/AppBaseInfo.tsx index bf73a5d..b3d817b 100644 --- a/release-v5.1/database/src/pages/db/detail/components/AppBaseInfo.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/AppBaseInfo.tsx @@ -6,18 +6,18 @@ import { getDBSecret, getDBServiceByName, getDBStatefulSetByName -} from '@/api/db'; +} from '@/implementations/kb08/api/db'; import FormControl from '@/components/FormControl'; import MyIcon from '@/components/Icon'; -import { DBStatusEnum, DBTypeEnum, DBTypeSecretMap, defaultDBDetail } from '@/constants/db'; +import { DBStatusEnum, DBTypeEnum, DBTypeSecretMap, defaultDBDetail } from '@/implementations/kb08/constants/db'; import { startDriver, detailDriverObj } from '@/hooks/driver'; -import useEnvStore from '@/store/env'; +import useEnvStore from '@/implementations/kb08/store/env'; import { useGuideStore } from '@/store/guide'; -import { SOURCE_PRICE } from '@/store/static'; -import type { DBComponentsName, DBDetailType, DBType } from '@/types/db'; +import { SOURCE_PRICE } from '@/implementations/kb08/store/static'; +import type { DBComponentsName, DBDetailType, DBType } from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; -import { json2NetworkService } from '@/utils/json2Yaml'; -import { printMemory, useCopyData } from '@/utils/tools'; +import { json2NetworkService } from '@/implementations/kb08/utils/json2Yaml'; +import { printMemory, useCopyData } from '@/implementations/kb08/utils/tools'; import { Box, Button, @@ -41,7 +41,7 @@ import { Text, useDisclosure } from '@chakra-ui/react'; -import { CurrencySymbol, MyTooltip, useMessage } from '@sealos/ui'; +import { CurrencySymbol, MyTooltip, useMessage } from '@labring/sealos-chakra-ui'; import { track } from '@labring/sealos-gtm-sdk'; import { useQuery } from '@tanstack/react-query'; import { pick } from 'lodash'; @@ -50,7 +50,7 @@ import { useRouter } from 'next/router'; import { useCallback, useEffect, useMemo, useState } from 'react'; import { SubmitHandler, useForm } from 'react-hook-form'; import { sealosApp } from '@labring/sealos-desktop-sdk/app'; -import { getUserSession } from '@/utils/user'; +import { getUserSession } from '@/implementations/kb08/utils/user'; const CopyBox = ({ value, showSecret = true, diff --git a/release-v5.1/database/src/pages/db/detail/components/BackupModal.tsx b/database/src/implementations/kb08/pages/db/detail/components/BackupModal.tsx similarity index 96% rename from release-v5.1/database/src/pages/db/detail/components/BackupModal.tsx rename to database/src/implementations/kb08/pages/db/detail/components/BackupModal.tsx index 0ba3107..f33659d 100644 --- a/release-v5.1/database/src/pages/db/detail/components/BackupModal.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/BackupModal.tsx @@ -1,10 +1,10 @@ -import { createBackup, updateBackupPolicy } from '@/api/backup'; -import { getDBByName } from '@/api/db'; +import { createBackup, updateBackupPolicy } from '@/implementations/kb08/api/backup'; +import { getDBByName } from '@/implementations/kb08/api/db'; import Tip from '@/components/Tip'; -import { DBBackupMethodNameMap, DBTypeEnum, SelectTimeList, WeekSelectList } from '@/constants/db'; +import { DBBackupMethodNameMap, DBTypeEnum, SelectTimeList, WeekSelectList } from '@/implementations/kb08/constants/db'; import { useConfirm } from '@/hooks/useConfirm'; -import type { AutoBackupFormType, AutoBackupType } from '@/types/backup'; -import { convertCronTime, getErrText } from '@/utils/tools'; +import type { AutoBackupFormType, AutoBackupType } from '@/implementations/kb08/types/backup'; +import { convertCronTime, getErrText } from '@/implementations/kb08/utils/tools'; import { InfoOutlineIcon } from '@chakra-ui/icons'; import { Box, @@ -21,13 +21,13 @@ import { ModalOverlay, Switch } from '@chakra-ui/react'; -import { MySelect, Tabs, useMessage } from '@sealos/ui'; +import { MySelect, Tabs, useMessage } from '@labring/sealos-chakra-ui'; import { useMutation, useQuery } from '@tanstack/react-query'; import { customAlphabet } from 'nanoid'; import { useTranslation } from 'next-i18next'; import { useCallback, useEffect, useState } from 'react'; import { useForm } from 'react-hook-form'; -import { isValidBackupRemark } from '@/utils/backupRemark'; +import { isValidBackupRemark } from '@/implementations/kb08/utils/backupRemark'; const nanoid = customAlphabet('abcdefghijklmnopqrstuvwxyz1234567890', 6); enum NavEnum { diff --git a/release-v5.1/database/src/pages/db/detail/components/BackupTable.tsx b/database/src/implementations/kb08/pages/db/detail/components/BackupTable.tsx similarity index 95% rename from release-v5.1/database/src/pages/db/detail/components/BackupTable.tsx rename to database/src/implementations/kb08/pages/db/detail/components/BackupTable.tsx index 2282124..bab4868 100644 --- a/release-v5.1/database/src/pages/db/detail/components/BackupTable.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/BackupTable.tsx @@ -1,11 +1,11 @@ -import { deleteBackup, getBackupList } from '@/api/backup'; +import { deleteBackup, getBackupList } from '@/implementations/kb08/api/backup'; import MyIcon from '@/components/Icon'; -import { BackupStatusEnum, backupTypeMap } from '@/constants/backup'; +import { BackupStatusEnum, backupTypeMap } from '@/implementations/kb08/constants/backup'; import { useConfirm } from '@/hooks/useConfirm'; import { useLoading } from '@/hooks/useLoading'; -import type { BackupItemType, DBDetailType } from '@/types/db'; +import type { BackupItemType, DBDetailType } from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; -import { getErrText } from '@/utils/tools'; +import { getErrText } from '@/implementations/kb08/utils/tools'; import { QuestionOutlineIcon } from '@chakra-ui/icons'; import { Box, @@ -21,7 +21,7 @@ import { Tr, useDisclosure } from '@chakra-ui/react'; -import { MyTooltip, useMessage } from '@sealos/ui'; +import { MyTooltip, useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import dayjs from 'dayjs'; import { useTranslation } from 'next-i18next'; diff --git a/release-v5.1/database/src/pages/db/detail/components/DataImport.tsx b/database/src/implementations/kb08/pages/db/detail/components/DataImport.tsx similarity index 95% rename from release-v5.1/database/src/pages/db/detail/components/DataImport.tsx rename to database/src/implementations/kb08/pages/db/detail/components/DataImport.tsx index ba9c4e6..964463a 100644 --- a/release-v5.1/database/src/pages/db/detail/components/DataImport.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/DataImport.tsx @@ -1,10 +1,10 @@ -import { DBDetailType } from '@/types/db'; +import { DBDetailType } from '@/implementations/kb08/types/db'; import { Box, Button, Flex, Text } from '@chakra-ui/react'; import { useTranslation } from 'next-i18next'; import { useState } from 'react'; import { MigrateTable } from './Migrate/Table'; import DumpImport from './DumpImport'; -import useEnvStore from '@/store/env'; +import useEnvStore from '@/implementations/kb08/store/env'; import { useRouter } from 'next/router'; import MyIcon from '@/components/Icon'; diff --git a/release-v5.1/database/src/pages/db/detail/components/DelModal.tsx b/database/src/implementations/kb08/pages/db/detail/components/DelModal.tsx similarity index 96% rename from release-v5.1/database/src/pages/db/detail/components/DelModal.tsx rename to database/src/implementations/kb08/pages/db/detail/components/DelModal.tsx index 2ddee65..4a0ced1 100644 --- a/release-v5.1/database/src/pages/db/detail/components/DelModal.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/DelModal.tsx @@ -1,6 +1,6 @@ -import { delDBByName } from '@/api/db'; +import { delDBByName } from '@/implementations/kb08/api/db'; import MyIcon from '@/components/Icon'; -import { DBSource, DBSourceType } from '@/types/db'; +import { DBSource, DBSourceType } from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; import { Box, @@ -15,7 +15,7 @@ import { ModalHeader, ModalOverlay } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { track } from '@labring/sealos-gtm-sdk'; import { useTranslation } from 'next-i18next'; import { useCallback, useEffect, useRef, useState } from 'react'; diff --git a/release-v5.1/database/src/pages/db/detail/components/DumpImport/index.tsx b/database/src/implementations/kb08/pages/db/detail/components/DumpImport/index.tsx similarity index 97% rename from release-v5.1/database/src/pages/db/detail/components/DumpImport/index.tsx rename to database/src/implementations/kb08/pages/db/detail/components/DumpImport/index.tsx index 11d95c0..d1edb7c 100644 --- a/release-v5.1/database/src/pages/db/detail/components/DumpImport/index.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/DumpImport/index.tsx @@ -1,4 +1,4 @@ -import { getDatabases, getTables } from '@/api/db'; +import { getDatabases, getTables } from '@/implementations/kb08/api/db'; import { applyDumpCR, deleteMigrateJobByName, @@ -6,12 +6,12 @@ import { getMigrateJobList, getMigratePodList, getPodStatusByName -} from '@/api/migrate'; -import { uploadFile } from '@/api/platform'; +} from '@/implementations/kb08/api/migrate'; +import { uploadFile } from '@/implementations/kb08/api/platform'; import FileSelect from '@/components/FileSelect'; import MyIcon from '@/components/Icon'; -import { DBDetailType } from '@/types/db'; -import { DumpForm } from '@/types/migrate'; +import { DBDetailType } from '@/implementations/kb08/types/db'; +import { DumpForm } from '@/implementations/kb08/types/migrate'; import { assembleTranslate } from '@/utils/i18n-client'; import { @@ -29,7 +29,7 @@ import { Text, useDisclosure } from '@chakra-ui/react'; -import { AutoComplete, useMessage } from '@sealos/ui'; +import { AutoComplete, useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import { useTranslation } from 'next-i18next'; import { useState } from 'react'; diff --git a/release-v5.1/database/src/pages/db/detail/components/ErrorLog/RunTimeLog.tsx b/database/src/implementations/kb08/pages/db/detail/components/ErrorLog/RunTimeLog.tsx similarity index 95% rename from release-v5.1/database/src/pages/db/detail/components/ErrorLog/RunTimeLog.tsx rename to database/src/implementations/kb08/pages/db/detail/components/ErrorLog/RunTimeLog.tsx index 9868bec..c80e0f7 100644 --- a/release-v5.1/database/src/pages/db/detail/components/ErrorLog/RunTimeLog.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/ErrorLog/RunTimeLog.tsx @@ -3,22 +3,22 @@ import { getVlogsDatabaseLogs, getVlogsDatabasePods, getVlogsDatabaseLogCounts -} from '@/api/db'; -import { useDBStore } from '@/store/db'; -import { DBDetailType, SupportReconfigureDBType } from '@/types/db'; -import { LogTypeEnum } from '@/constants/log'; +} from '@/implementations/kb08/api/db'; +import { useDBStore } from '@/implementations/kb08/store/db'; +import { DBDetailType, SupportReconfigureDBType } from '@/implementations/kb08/types/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; import { TFile } from '@/utils/kubeFileSystem'; -import { getUserNamespace } from '@/utils/user'; +import { getUserNamespace } from '@/implementations/kb08/utils/user'; import { Box, Divider, Flex, useTheme } from '@chakra-ui/react'; import { useQuery } from '@tanstack/react-query'; import { useTranslation } from 'next-i18next'; import React, { useMemo, useState, useEffect } from 'react'; import { I18nCommonKey } from '@/types/i18next'; -import { LogFilter } from '@/components/ErrorLog/LogFilter'; +import { LogFilter } from '@/implementations/kb08/components/ErrorLog/LogFilter'; import { LogCounts } from '@/components/ErrorLog/LogCounts'; -import { LogTable } from '@/components/ErrorLog/LogTable'; -import { downLoadBold } from '@/utils/tools'; -import useDateTimeStore from '@/store/date'; +import { LogTable } from '@/implementations/kb08/components/ErrorLog/LogTable'; +import { downLoadBold } from '@/implementations/kb08/utils/tools'; +import useDateTimeStore from '@/implementations/kb08/store/date'; import { useRouter } from 'next/router'; const DB_MAIN_CONTAINER_MAP: Record = { diff --git a/release-v5.1/database/src/pages/db/detail/components/ErrorLog/index.tsx b/database/src/implementations/kb08/pages/db/detail/components/ErrorLog/index.tsx similarity index 94% rename from release-v5.1/database/src/pages/db/detail/components/ErrorLog/index.tsx rename to database/src/implementations/kb08/pages/db/detail/components/ErrorLog/index.tsx index 98bcb7b..4c3c3dc 100644 --- a/release-v5.1/database/src/pages/db/detail/components/ErrorLog/index.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/ErrorLog/index.tsx @@ -1,5 +1,5 @@ -import { LogTypeEnum } from '@/constants/log'; -import { DBDetailType, SupportReconfigureDBType } from '@/types/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; +import { DBDetailType, SupportReconfigureDBType } from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; import { Box, Flex } from '@chakra-ui/react'; import { useTranslation } from 'next-i18next'; diff --git a/release-v5.1/database/src/pages/db/detail/components/Header.tsx b/database/src/implementations/kb08/pages/db/detail/components/Header.tsx similarity index 96% rename from release-v5.1/database/src/pages/db/detail/components/Header.tsx rename to database/src/implementations/kb08/pages/db/detail/components/Header.tsx index 7adfd61..efb4d61 100644 --- a/release-v5.1/database/src/pages/db/detail/components/Header.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/Header.tsx @@ -1,8 +1,8 @@ -import { pauseDBByName, restartDB, startDBByName, type DatabaseAlertItem } from '@/api/db'; -import DBStatusTag from '@/components/DBStatusTag'; -import { defaultDBDetail } from '@/constants/db'; +import { pauseDBByName, restartDB, startDBByName, type DatabaseAlertItem } from '@/implementations/kb08/api/db'; +import DBStatusTag from '@/implementations/kb08/components/DBStatusTag/index'; +import { defaultDBDetail } from '@/implementations/kb08/constants/db'; import { useConfirm } from '@/hooks/useConfirm'; -import type { DBDetailType } from '@/types/db'; +import type { DBDetailType } from '@/implementations/kb08/types/db'; import { Box, Button, @@ -14,7 +14,7 @@ import { PopoverTrigger, useDisclosure } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { track } from '@labring/sealos-gtm-sdk'; import { useTranslation } from 'next-i18next'; import dynamic from 'next/dynamic'; @@ -25,7 +25,7 @@ import UpdateModal from './UpdateModal'; import { DATAFLOW_APP_KEY, DATAFLOW_SUPPORTED_TYPES } from '@/constants/dataflow'; import { ConnectionInfo } from './AppBaseInfo'; import { getLangStore } from '@/utils/cookieUtils'; -import useEnvStore from '@/store/env'; +import useEnvStore from '@/implementations/kb08/store/env'; import { ArrowLeft, Trash2, Settings } from 'lucide-react'; const DelModal = dynamic(() => import('./DelModal')); diff --git a/main/database/src/pages/db/detail/components/LogsModal.tsx b/database/src/implementations/kb08/pages/db/detail/components/LogsModal.tsx similarity index 94% rename from main/database/src/pages/db/detail/components/LogsModal.tsx rename to database/src/implementations/kb08/pages/db/detail/components/LogsModal.tsx index 77e88a5..62d9726 100644 --- a/main/database/src/pages/db/detail/components/LogsModal.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/LogsModal.tsx @@ -1,7 +1,7 @@ -import { getPodLogs } from '@/api/db'; +import { getPodLogs } from '@/implementations/kb08/api/db'; import { useLoading } from '@/hooks/useLoading'; -import { streamFetch } from '@/services/streamFetch'; -import { downLoadBold } from '@/utils/tools'; +import { streamFetch } from '@/implementations/kb08/services/streamFetch'; +import { downLoadBold } from '@/implementations/kb08/utils/tools'; import { ChevronDownIcon } from '@chakra-ui/icons'; import { Box, @@ -15,13 +15,13 @@ import { ModalOverlay, useTheme } from '@chakra-ui/react'; -import { SealosMenu } from '@sealos/ui'; +import { SealosMenu } from '@labring/sealos-chakra-ui'; import { default as AnsiUp } from 'ansi_up'; import { useTranslation } from 'next-i18next'; import { useCallback, useEffect, useMemo, useRef, useState } from 'react'; -import styles from '../index.module.scss'; +import styles from '@/implementations/kb09/pages/db/detail/index.module.scss'; import MyIcon from '@/components/Icon'; -import Empty from './empty'; +import Empty from '@/implementations/kb09/pages/db/detail/components/empty'; interface sinceItem { key: 'streaming_logs' | 'within_5_minutes' | 'within_1_hour' | 'within_1_day' | 'terminated_logs'; diff --git a/release-v5.1/database/src/pages/db/detail/components/Migrate/LogsModal.tsx b/database/src/implementations/kb08/pages/db/detail/components/Migrate/LogsModal.tsx similarity index 94% rename from release-v5.1/database/src/pages/db/detail/components/Migrate/LogsModal.tsx rename to database/src/implementations/kb08/pages/db/detail/components/Migrate/LogsModal.tsx index c2b0615..65b2c1f 100644 --- a/release-v5.1/database/src/pages/db/detail/components/Migrate/LogsModal.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/Migrate/LogsModal.tsx @@ -1,9 +1,9 @@ -import { getLogByNameAndContainerName } from '@/api/migrate'; +import { getLogByNameAndContainerName } from '@/implementations/kb08/api/migrate'; import MyIcon from '@/components/Icon'; import { useLoading } from '@/hooks/useLoading'; -import styles from '@/pages/db/detail/index.module.scss'; -import { streamFetch } from '@/services/streamFetch'; -import { downLoadBold } from '@/utils/tools'; +import styles from '@/implementations/kb09/pages/db/detail/index.module.scss'; +import { streamFetch } from '@/implementations/kb08/services/streamFetch'; +import { downLoadBold } from '@/implementations/kb08/utils/tools'; import { ChevronDownIcon } from '@chakra-ui/icons'; import { Box, @@ -17,11 +17,11 @@ import { ModalOverlay, useTheme } from '@chakra-ui/react'; -import { SealosMenu } from '@sealos/ui'; +import { SealosMenu } from '@labring/sealos-chakra-ui'; import { default as AnsiUp } from 'ansi_up'; import { useTranslation } from 'next-i18next'; import { useCallback, useEffect, useMemo, useRef, useState } from 'react'; -import Empty from './empty'; +import Empty from '@/implementations/kb09/pages/db/detail/components/Migrate/empty'; interface sinceItem { key: 'streaming_logs' | 'within_5_minutes' | 'within_1_hour' | 'within_1_day' | 'terminated_logs'; diff --git a/release-v5.1/database/src/pages/db/detail/components/Migrate/MigrateStatus.tsx b/database/src/implementations/kb08/pages/db/detail/components/Migrate/MigrateStatus.tsx similarity index 92% rename from release-v5.1/database/src/pages/db/detail/components/Migrate/MigrateStatus.tsx rename to database/src/implementations/kb08/pages/db/detail/components/Migrate/MigrateStatus.tsx index 89732a9..b8f28e3 100644 --- a/release-v5.1/database/src/pages/db/detail/components/Migrate/MigrateStatus.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/Migrate/MigrateStatus.tsx @@ -1,4 +1,4 @@ -import { getMigratePodList } from '@/api/migrate'; +import { getMigratePodList } from '@/implementations/kb08/api/migrate'; import { Box } from '@chakra-ui/react'; import { useQuery } from '@tanstack/react-query'; import { useMemo } from 'react'; diff --git a/release-v5.1/database/src/pages/db/detail/components/Migrate/Table.tsx b/database/src/implementations/kb08/pages/db/detail/components/Migrate/Table.tsx similarity index 96% rename from release-v5.1/database/src/pages/db/detail/components/Migrate/Table.tsx rename to database/src/implementations/kb08/pages/db/detail/components/Migrate/Table.tsx index 58ca641..031dd12 100644 --- a/release-v5.1/database/src/pages/db/detail/components/Migrate/Table.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/Migrate/Table.tsx @@ -1,9 +1,9 @@ -import { deleteMigrateByName, getMigrateList, getMigratePodList } from '@/api/migrate'; +import { deleteMigrateByName, getMigrateList, getMigratePodList } from '@/implementations/kb08/api/migrate'; import MyIcon from '@/components/Icon'; import { useConfirm } from '@/hooks/useConfirm'; import { useLoading } from '@/hooks/useLoading'; -import { MigrateItemType } from '@/types/migrate'; -import { getErrText } from '@/utils/tools'; +import { MigrateItemType } from '@/implementations/kb08/types/migrate'; +import { getErrText } from '@/implementations/kb08/utils/tools'; import { Box, Button, @@ -16,7 +16,7 @@ import { Thead, Tr } from '@chakra-ui/react'; -import { MyTooltip, useMessage } from '@sealos/ui'; +import { MyTooltip, useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import dayjs from 'dayjs'; import { useTranslation } from 'next-i18next'; diff --git a/release-v5.1/database/src/pages/db/detail/components/Monitor/ChartTemplate.tsx b/database/src/implementations/kb08/pages/db/detail/components/Monitor/ChartTemplate.tsx similarity index 98% rename from release-v5.1/database/src/pages/db/detail/components/Monitor/ChartTemplate.tsx rename to database/src/implementations/kb08/pages/db/detail/components/Monitor/ChartTemplate.tsx index 2a0337f..9a79138 100644 --- a/release-v5.1/database/src/pages/db/detail/components/Monitor/ChartTemplate.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/Monitor/ChartTemplate.tsx @@ -1,6 +1,6 @@ import MyIcon from '@/components/Icon'; import { LineStyleMap } from '@/constants/monitor'; -import { GET } from '@/services/request'; +import { GET } from '@/implementations/kb08/services/request'; import { ChartTemplateProps } from '@/types/monitor'; import { Box, Flex, Text } from '@chakra-ui/react'; import { useQuery } from '@tanstack/react-query'; diff --git a/release-v5.1/database/src/pages/db/detail/components/Monitor/RunningTime.tsx b/database/src/implementations/kb08/pages/db/detail/components/Monitor/RunningTime.tsx similarity index 92% rename from release-v5.1/database/src/pages/db/detail/components/Monitor/RunningTime.tsx rename to database/src/implementations/kb08/pages/db/detail/components/Monitor/RunningTime.tsx index 4f395b6..4aa1f31 100644 --- a/release-v5.1/database/src/pages/db/detail/components/Monitor/RunningTime.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/Monitor/RunningTime.tsx @@ -1,11 +1,11 @@ -import { GET } from '@/services/request'; -import { DBDetailType } from '@/types/db'; -import { formatTimeToDay } from '@/utils/tools'; +import { GET } from '@/implementations/kb08/services/request'; +import { DBDetailType } from '@/implementations/kb08/types/db'; +import { formatTimeToDay } from '@/implementations/kb08/utils/tools'; import { Flex } from '@chakra-ui/react'; import { useQuery } from '@tanstack/react-query'; import { Box, Text } from '@chakra-ui/react'; import { useMemo } from 'react'; -import { DBTypeEnum } from '@/constants/db'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; import { useTranslation } from 'next-i18next'; const RunningTime = ({ diff --git a/release-v5.1/database/src/pages/db/detail/components/Monitor/index.tsx b/database/src/implementations/kb08/pages/db/detail/components/Monitor/index.tsx similarity index 98% rename from release-v5.1/database/src/pages/db/detail/components/Monitor/index.tsx rename to database/src/implementations/kb08/pages/db/detail/components/Monitor/index.tsx index 4917a67..8d20525 100644 --- a/release-v5.1/database/src/pages/db/detail/components/Monitor/index.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/Monitor/index.tsx @@ -1,13 +1,13 @@ -import { DBDetailType } from '@/types/db'; +import { DBDetailType } from '@/implementations/kb08/types/db'; import { Box, Flex } from '@chakra-ui/react'; import { useRouter } from 'next/router'; import { useEffect, useState } from 'react'; import ChartTemplate from './ChartTemplate'; import RunningTime from './RunningTime'; -import { DBTypeEnum } from '@/constants/db'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; import dayjs from 'dayjs'; import { useTranslation } from 'next-i18next'; -import { Tabs } from '@sealos/ui'; +import { Tabs } from '@labring/sealos-chakra-ui'; enum MonitorType { resources = 'resources', diff --git a/release-v5.1/database/src/pages/db/detail/components/OperationLog.tsx b/database/src/implementations/kb08/pages/db/detail/components/OperationLog.tsx similarity index 96% rename from release-v5.1/database/src/pages/db/detail/components/OperationLog.tsx rename to database/src/implementations/kb08/pages/db/detail/components/OperationLog.tsx index 65a1881..ed51dec 100644 --- a/release-v5.1/database/src/pages/db/detail/components/OperationLog.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/OperationLog.tsx @@ -1,8 +1,8 @@ -import { getOperationLog } from '@/api/db'; +import { getOperationLog } from '@/implementations/kb08/api/db'; import MyIcon from '@/components/Icon'; -import { DBDetailType, OpsRequestItemType } from '@/types/db'; +import { DBDetailType, OpsRequestItemType } from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; -import { RequiredByKeys } from '@/utils/tools'; +import { RequiredByKeys } from '@/implementations/kb08/utils/tools'; import { Box, Divider, diff --git a/main/database/src/pages/db/detail/components/PodDetailModal.tsx b/database/src/implementations/kb08/pages/db/detail/components/PodDetailModal.tsx similarity index 96% rename from main/database/src/pages/db/detail/components/PodDetailModal.tsx rename to database/src/implementations/kb08/pages/db/detail/components/PodDetailModal.tsx index 6ea692c..74bec3b 100644 --- a/main/database/src/pages/db/detail/components/PodDetailModal.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/PodDetailModal.tsx @@ -1,9 +1,9 @@ -import { getPodEvents } from '@/api/db'; +import { getPodEvents } from '@/implementations/kb08/api/db'; import MyIcon from '@/components/Icon'; -import { defaultPod } from '@/constants/db'; +import { defaultPod } from '@/implementations/kb08/constants/db'; import { useLoading } from '@/hooks/useLoading'; -import { streamFetch } from '@/services/streamFetch'; -import type { PodDetailType, PodEvent } from '@/types/db'; +import { streamFetch } from '@/implementations/kb08/services/streamFetch'; +import type { PodDetailType, PodEvent } from '@/implementations/kb08/types/db'; import { ChevronDownIcon } from '@chakra-ui/icons'; import { Box, @@ -22,11 +22,11 @@ import { useDisclosure, useTheme } from '@chakra-ui/react'; -import { SealosMenu, useMessage } from '@sealos/ui'; +import { SealosMenu, useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import { useTranslation } from 'next-i18next'; import React, { useCallback, useEffect, useRef, useState } from 'react'; -import styles from '../index.module.scss'; +import styles from '@/implementations/kb09/pages/db/detail/index.module.scss'; const Logs = ({ pod = defaultPod, diff --git a/release-v5.1/database/src/pages/db/detail/components/Pods.tsx b/database/src/implementations/kb08/pages/db/detail/components/Pods.tsx similarity index 95% rename from release-v5.1/database/src/pages/db/detail/components/Pods.tsx rename to database/src/implementations/kb08/pages/db/detail/components/Pods.tsx index d605cc9..5b25f8a 100644 --- a/release-v5.1/database/src/pages/db/detail/components/Pods.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/Pods.tsx @@ -1,12 +1,12 @@ -import { getOpsRequest, restartPodByName, switchPodMs } from '@/api/db'; +import { getOpsRequest, restartPodByName, switchPodMs } from '@/implementations/kb08/api/db'; import MyIcon from '@/components/Icon'; -import PodStatus from '@/components/PodStatus'; +import PodStatus from '@/implementations/kb08/components/PodStatus/index'; import { useConfirm } from '@/hooks/useConfirm'; import { useLoading } from '@/hooks/useLoading'; -import { useDBStore } from '@/store/db'; -import type { DBType, OpsRequestItemType, PodDetailType } from '@/types/db'; +import { useDBStore } from '@/implementations/kb08/store/db'; +import type { DBType, OpsRequestItemType, PodDetailType } from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; -import { getPodRoleName, RequiredByKeys } from '@/utils/tools'; +import { getPodRoleName, RequiredByKeys } from '@/implementations/kb08/utils/tools'; import { Box, Button, @@ -19,13 +19,13 @@ import { Thead, Tr } from '@chakra-ui/react'; -import { MyTooltip, useMessage } from '@sealos/ui'; +import { MyTooltip, useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import { useTranslation } from 'next-i18next'; import dynamic from 'next/dynamic'; import React, { PropsWithChildren, useCallback, useEffect, useRef, useState } from 'react'; -import styles from '../index.module.scss'; -import { DBSwitchRoleKey, DBTypeEnum } from '@/constants/db'; +import styles from '@/implementations/kb09/pages/db/detail/index.module.scss'; +import { DBSwitchRoleKey, DBTypeEnum } from '@/implementations/kb08/constants/db'; const LogsModal = dynamic(() => import('./LogsModal'), { ssr: false }); const DetailModel = dynamic(() => import('./PodDetailModal'), { ssr: false }); diff --git a/release-v5.1/database/src/pages/db/detail/components/Reconfigure/ConfigTable.tsx b/database/src/implementations/kb08/pages/db/detail/components/Reconfigure/ConfigTable.tsx similarity index 97% rename from release-v5.1/database/src/pages/db/detail/components/Reconfigure/ConfigTable.tsx rename to database/src/implementations/kb08/pages/db/detail/components/Reconfigure/ConfigTable.tsx index bc334e7..21bf3bc 100644 --- a/release-v5.1/database/src/pages/db/detail/components/Reconfigure/ConfigTable.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/Reconfigure/ConfigTable.tsx @@ -1,9 +1,9 @@ import MyIcon from '@/components/Icon'; -import { DBTypeEnum } from '@/constants/db'; -import { ParameterConfigField } from '@/types/db'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { ParameterConfigField } from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; import { Box, Flex, Input, InputGroup, InputLeftElement, Text } from '@chakra-ui/react'; -import { MySelect } from '@sealos/ui'; +import { MySelect } from '@labring/sealos-chakra-ui'; import { useTranslation } from 'next-i18next'; import React, { forwardRef, useEffect, useImperativeHandle, useMemo, useState } from 'react'; import { useFieldArray, useForm, useWatch } from 'react-hook-form'; diff --git a/release-v5.1/database/src/pages/db/detail/components/Reconfigure/History.tsx b/database/src/implementations/kb08/pages/db/detail/components/Reconfigure/History.tsx similarity index 93% rename from release-v5.1/database/src/pages/db/detail/components/Reconfigure/History.tsx rename to database/src/implementations/kb08/pages/db/detail/components/Reconfigure/History.tsx index 322f115..f91d79d 100644 --- a/release-v5.1/database/src/pages/db/detail/components/Reconfigure/History.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/Reconfigure/History.tsx @@ -1,9 +1,9 @@ -import { getOpsRequest } from '@/api/db'; +import { getOpsRequest } from '@/implementations/kb08/api/db'; import MyIcon from '@/components/Icon'; -import { DBReconfigureKey } from '@/constants/db'; -import { DBDetailType, OpsRequestItemType } from '@/types/db'; +import { DBReconfigureKey } from '@/implementations/kb08/constants/db'; +import { DBDetailType, OpsRequestItemType } from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; -import { RequiredByKeys } from '@/utils/tools'; +import { RequiredByKeys } from '@/implementations/kb08/utils/tools'; import { TableContainer, Table, diff --git a/release-v5.1/database/src/pages/db/detail/components/Reconfigure/index.tsx b/database/src/implementations/kb08/pages/db/detail/components/Reconfigure/index.tsx similarity index 97% rename from release-v5.1/database/src/pages/db/detail/components/Reconfigure/index.tsx rename to database/src/implementations/kb08/pages/db/detail/components/Reconfigure/index.tsx index 6369f1c..0cea25b 100644 --- a/release-v5.1/database/src/pages/db/detail/components/Reconfigure/index.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/Reconfigure/index.tsx @@ -1,5 +1,5 @@ -import { applyReconfigureOps, getConfigByName } from '@/api/db'; -import type { ConfigParameterItem, DBDetailType } from '@/types/db'; +import { applyReconfigureOps, getConfigByName } from '@/implementations/kb08/api/db'; +import type { ConfigParameterItem, DBDetailType } from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; import { Box, @@ -16,7 +16,7 @@ import { Text, useDisclosure } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import { useTranslation } from 'next-i18next'; import { useRouter } from 'next/router'; diff --git a/release-v5.1/database/src/pages/db/detail/components/RestoreModal.tsx b/database/src/implementations/kb08/pages/db/detail/components/RestoreModal.tsx similarity index 94% rename from release-v5.1/database/src/pages/db/detail/components/RestoreModal.tsx rename to database/src/implementations/kb08/pages/db/detail/components/RestoreModal.tsx index 78c358f..c0035a2 100644 --- a/release-v5.1/database/src/pages/db/detail/components/RestoreModal.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/RestoreModal.tsx @@ -1,8 +1,8 @@ -import { createDB } from '@/api/db'; +import { createDB } from '@/implementations/kb08/api/db'; import Tip from '@/components/Tip'; -import { DBTypeEnum } from '@/constants/db'; -import { BackupItemType, DBDetailType } from '@/types/db'; -import { getErrText } from '@/utils/tools'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { BackupItemType, DBDetailType } from '@/implementations/kb08/types/db'; +import { getErrText } from '@/implementations/kb08/utils/tools'; import { InfoOutlineIcon } from '@chakra-ui/icons'; import { Box, @@ -18,7 +18,7 @@ import { ModalHeader, ModalOverlay } from '@chakra-ui/react'; -import { RangeInput, useMessage } from '@sealos/ui'; +import { RangeInput, useMessage } from '@labring/sealos-chakra-ui'; import { useMutation } from '@tanstack/react-query'; import { customAlphabet } from 'nanoid'; import { useTranslation } from 'next-i18next'; diff --git a/release-v5.1/database/src/pages/db/detail/components/UpdateModal.tsx b/database/src/implementations/kb08/pages/db/detail/components/UpdateModal.tsx similarity index 96% rename from release-v5.1/database/src/pages/db/detail/components/UpdateModal.tsx rename to database/src/implementations/kb08/pages/db/detail/components/UpdateModal.tsx index e0fb0fc..0316dfe 100644 --- a/release-v5.1/database/src/pages/db/detail/components/UpdateModal.tsx +++ b/database/src/implementations/kb08/pages/db/detail/components/UpdateModal.tsx @@ -1,5 +1,5 @@ import MyIcon from '@/components/Icon'; -import { DBSource } from '@/types/db'; +import { DBSource } from '@/implementations/kb08/types/db'; import { Box, Button, diff --git a/database/src/implementations/kb08/pages/db/detail/index.server.ts b/database/src/implementations/kb08/pages/db/detail/index.server.ts new file mode 100644 index 0000000..1e94b4d --- /dev/null +++ b/database/src/implementations/kb08/pages/db/detail/index.server.ts @@ -0,0 +1,16 @@ +import { serviceSideProps } from '@/utils/i18n'; +import { Config } from '@/config'; +export async function getServerSideProps(context: any) { + const dbType = context.query?.dbType || ''; + const dbName = context.query?.name || ''; + const queryListType = context.query?.listType || 'overview'; + const dataImportEnabled = Config().database.features.fileImport; + const dataImportSupported = + ['postgresql', 'apecloud-mysql', 'mongodb', 'redis'].includes(dbType) && dataImportEnabled; + const listType = + queryListType === 'dataImport' && !dataImportSupported ? 'overview' : queryListType; + + return { + props: { ...(await serviceSideProps(context)), dbName, listType, dbType } + }; +} diff --git a/release-v5.1/database/src/pages/db/detail/index.tsx b/database/src/implementations/kb08/pages/db/detail/index.tsx similarity index 90% rename from release-v5.1/database/src/pages/db/detail/index.tsx rename to database/src/implementations/kb08/pages/db/detail/index.tsx index 9a61259..8c42a2e 100644 --- a/release-v5.1/database/src/pages/db/detail/index.tsx +++ b/database/src/implementations/kb08/pages/db/detail/index.tsx @@ -1,12 +1,10 @@ -import { Config } from '@/config'; import { useLoading } from '@/hooks/useLoading'; -import { useDBStore } from '@/store/db'; -import useEnvStore from '@/store/env'; +import { useDBStore } from '@/implementations/kb08/store/db'; +import useEnvStore from '@/implementations/kb08/store/env'; import { useGlobalStore } from '@/store/global'; -import { DBType } from '@/types/db'; -import { serviceSideProps } from '@/utils/i18n'; +import { DBType } from '@/implementations/kb08/types/db'; import { Box, Flex, Text, useMediaQuery, useTheme } from '@chakra-ui/react'; -import { MyTooltip, useMessage } from '@sealos/ui'; +import { MyTooltip, useMessage } from '@labring/sealos-chakra-ui'; import { track } from '@labring/sealos-gtm-sdk'; import { useQuery } from '@tanstack/react-query'; import { useTranslation } from 'next-i18next'; @@ -19,12 +17,12 @@ import Monitor from './components/Monitor'; import Pods from './components/Pods'; import { I18nCommonKey } from '@/types/i18next'; import ReconfigureTable from './components/Reconfigure/index'; -import ErrorLog from '@/pages/db/detail/components/ErrorLog'; +import ErrorLog from '@/implementations/kb08/pages/db/detail/components/ErrorLog/index'; import MyIcon from '@/components/Icon'; -import { BackupSupportedDBTypeList } from '@/constants/db'; +import { BackupSupportedDBTypeList } from '@/implementations/kb08/constants/db'; import DataImport from './components/DataImport'; import OperationLog from './components/OperationLog'; -import { type DatabaseAlertItem } from '@/api/db'; +import { type DatabaseAlertItem } from '@/implementations/kb08/api/db'; enum TabEnum { pod = 'pod', @@ -330,18 +328,3 @@ const AppDetail = ({ }; export default AppDetail; - -export async function getServerSideProps(context: any) { - const dbType = context.query?.dbType || ''; - const dbName = context.query?.name || ''; - const queryListType = context.query?.listType || TabEnum.Overview; - const dataImportEnabled = Config().database.features.fileImport; - const dataImportSupported = - ['postgresql', 'apecloud-mysql', 'mongodb', 'redis'].includes(dbType) && dataImportEnabled; - const listType = - queryListType === TabEnum.DataImport && !dataImportSupported ? TabEnum.Overview : queryListType; - - return { - props: { ...(await serviceSideProps(context)), dbName, listType, dbType } - }; -} diff --git a/release-v5.1/database/src/pages/db/edit/components/Form.tsx b/database/src/implementations/kb08/pages/db/edit/components/Form.tsx similarity index 98% rename from release-v5.1/database/src/pages/db/edit/components/Form.tsx rename to database/src/implementations/kb08/pages/db/edit/components/Form.tsx index 9754868..1432859 100644 --- a/release-v5.1/database/src/pages/db/edit/components/Form.tsx +++ b/database/src/implementations/kb08/pages/db/edit/components/Form.tsx @@ -1,7 +1,7 @@ import { obj2Query } from '@/api/tools'; import MyIcon from '@/components/Icon'; -import PriceBox from '@/components/PriceBox'; -import QuotaBox from '@/components/QuotaBox'; +import PriceBox from '@/implementations/kb08/components/PriceBox/index'; +import QuotaBox from '@/implementations/kb08/components/QuotaBox/index'; import Tip from '@/components/Tip'; import { BackupSupportedDBTypeList, @@ -10,15 +10,15 @@ import { RedisHAConfig, SelectTimeList, WeekSelectList -} from '@/constants/db'; -import { CpuSlideMarkList, MemorySlideMarkList } from '@/constants/editApp'; -import useEnvStore from '@/store/env'; -import { DBVersionMap, INSTALL_ACCOUNT } from '@/store/static'; +} from '@/implementations/kb08/constants/db'; +import { CpuSlideMarkList, MemorySlideMarkList } from '@/implementations/kb08/constants/editApp'; +import useEnvStore from '@/implementations/kb08/store/env'; +import { DBVersionMap, INSTALL_ACCOUNT } from '@/implementations/kb08/store/static'; import type { QueryType } from '@/types'; -import { AutoBackupType } from '@/types/backup'; -import type { DBEditType, DBType } from '@/types/db'; +import { AutoBackupType } from '@/implementations/kb08/types/backup'; +import type { DBEditType, DBType } from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; -import { getDefaultMaxConnections } from '@/utils/parameterChanges'; +import { getDefaultMaxConnections } from '@/implementations/kb08/utils/parameterChanges'; import { distributeResources, POLARDBX_MIN_COMPONENT_CPU, @@ -27,9 +27,9 @@ import { POLARDBX_MIN_MEMORY, POLARDBX_MIN_STORAGE, POLARDBX_GMS_MAX_STORAGE -} from '@/utils/database'; -import { getAddonList } from '@/api/platform'; -import type { AddonItem } from '@/pages/api/getAddonList'; +} from '@/implementations/kb08/utils/database'; +import { getAddonList } from '@/implementations/kb08/api/platform'; +import type { AddonItem } from '@/implementations/kb08/pages/api/getAddonList'; import { useQuery } from '@tanstack/react-query'; import { InfoOutlineIcon } from '@chakra-ui/icons'; import { @@ -62,7 +62,7 @@ import { Tr, useTheme } from '@chakra-ui/react'; -import { MySelect, MySlider, MyTooltip, RangeInput, Tabs } from '@sealos/ui'; +import { MySelect, MySlider, MyTooltip, RangeInput, Tabs } from '@labring/sealos-chakra-ui'; import { useTranslation } from 'next-i18next'; import { useRouter } from 'next/router'; import { useEffect, useMemo, useRef, useState } from 'react'; diff --git a/release-v5.1/database/src/pages/db/edit/components/Header.tsx b/database/src/implementations/kb08/pages/db/edit/components/Header.tsx similarity index 98% rename from release-v5.1/database/src/pages/db/edit/components/Header.tsx rename to database/src/implementations/kb08/pages/db/edit/components/Header.tsx index 01074d3..5eb4cab 100644 --- a/release-v5.1/database/src/pages/db/edit/components/Header.tsx +++ b/database/src/implementations/kb08/pages/db/edit/components/Header.tsx @@ -4,7 +4,7 @@ import { useRouter } from 'next/router'; import MyIcon from '@/components/Icon'; import JSZip from 'jszip'; import type { YamlItemType } from '@/types/index'; -import { downLoadBold } from '@/utils/tools'; +import { downLoadBold } from '@/implementations/kb08/utils/tools'; import dayjs from 'dayjs'; import { useGlobalStore } from '@/store/global'; import { useTranslation } from 'next-i18next'; diff --git a/main/database/src/pages/db/edit/components/Yaml.tsx b/database/src/implementations/kb08/pages/db/edit/components/Yaml.tsx similarity index 94% rename from main/database/src/pages/db/edit/components/Yaml.tsx rename to database/src/implementations/kb08/pages/db/edit/components/Yaml.tsx index 15afc3d..9084a7c 100644 --- a/main/database/src/pages/db/edit/components/Yaml.tsx +++ b/database/src/implementations/kb08/pages/db/edit/components/Yaml.tsx @@ -2,13 +2,13 @@ import { obj2Query } from '@/api/tools'; import MyIcon from '@/components/Icon'; import YamlCode from '@/components/YamlCode/index'; import type { QueryType, YamlItemType } from '@/types'; -import { useCopyData } from '@/utils/tools'; +import { useCopyData } from '@/implementations/kb08/utils/tools'; import { Box, Center, Flex, Grid, useTheme } from '@chakra-ui/react'; -import { Tabs } from '@sealos/ui'; +import { Tabs } from '@labring/sealos-chakra-ui'; import { useTranslation } from 'next-i18next'; import { useRouter } from 'next/router'; import { useState } from 'react'; -import styles from './index.module.scss'; +import styles from '@/implementations/kb09/pages/db/edit/components/index.module.scss'; const Yaml = ({ yamlList = [], pxVal }: { yamlList: YamlItemType[]; pxVal: number }) => { const theme = useTheme(); diff --git a/database/src/implementations/kb08/pages/db/edit/index.server.ts b/database/src/implementations/kb08/pages/db/edit/index.server.ts new file mode 100644 index 0000000..149c6b7 --- /dev/null +++ b/database/src/implementations/kb08/pages/db/edit/index.server.ts @@ -0,0 +1,9 @@ +import { serviceSideProps } from '@/utils/i18n'; +export async function getServerSideProps(context: any) { + const dbName = context?.query?.name || ''; + const tabType = context?.query?.type || 'form'; + + return { + props: { ...(await serviceSideProps(context)), dbName, tabType } + }; +} diff --git a/release-v5.1/database/src/pages/db/edit/index.tsx b/database/src/implementations/kb08/pages/db/edit/index.tsx similarity index 92% rename from release-v5.1/database/src/pages/db/edit/index.tsx rename to database/src/implementations/kb08/pages/db/edit/index.tsx index 192d284..3365d65 100644 --- a/release-v5.1/database/src/pages/db/edit/index.tsx +++ b/database/src/implementations/kb08/pages/db/edit/index.tsx @@ -1,19 +1,18 @@ -import { adapterMongoHaConfig, applyYamlList, createDB } from '@/api/db'; -import { defaultDBEditValue } from '@/constants/db'; -import { editModeMap } from '@/constants/editApp'; +import { adapterMongoHaConfig, applyYamlList, createDB } from '@/implementations/kb08/api/db'; +import { defaultDBEditValue } from '@/implementations/kb08/constants/db'; +import { editModeMap } from '@/implementations/kb08/constants/editApp'; import { useConfirm } from '@/hooks/useConfirm'; import { useLoading } from '@/hooks/useLoading'; -import { useDBStore } from '@/store/db'; +import { useDBStore } from '@/implementations/kb08/store/db'; import { useGlobalStore } from '@/store/global'; -import { DBVersionMap } from '@/store/static'; -import { useUserStore } from '@/store/user'; +import { DBVersionMap } from '@/implementations/kb08/store/static'; +import { useUserStore } from '@/implementations/kb08/store/user'; import type { YamlItemType } from '@/types'; -import type { DBEditType } from '@/types/db'; -import { adaptDBForm } from '@/utils/adapt'; -import { serviceSideProps } from '@/utils/i18n'; -import { json2Account, json2CreateCluster, limitRangeYaml } from '@/utils/json2Yaml'; +import type { DBEditType } from '@/implementations/kb08/types/db'; +import { adaptDBForm } from '@/implementations/kb08/utils/adapt'; +import { json2Account, json2CreateCluster, limitRangeYaml } from '@/implementations/kb08/utils/json2Yaml'; import { Box, Flex, useDisclosure } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { track } from '@labring/sealos-gtm-sdk'; import { useQuery } from '@tanstack/react-query'; import debounce from 'lodash/debounce'; @@ -28,12 +27,12 @@ import Yaml from './components/Yaml'; import yaml from 'js-yaml'; import { ResponseCode } from '@/types/response'; import { useGuideStore } from '@/store/guide'; -import { getDBSecret } from '@/api/db'; +import { getDBSecret } from '@/implementations/kb08/api/db'; import type { ConnectionInfo } from '../detail/components/AppBaseInfo'; -import type { DBType, BackupItemType } from '@/types/db'; -import { getBackups, deleteBackup } from '@/api/backup'; -import StopBackupModal from '../detail/components/StopBackupModal'; -const ErrorModal = dynamic(() => import('@/components/ErrorModal')); +import type { DBType, BackupItemType } from '@/implementations/kb08/types/db'; +import { getBackups, deleteBackup } from '@/implementations/kb08/api/backup'; +import StopBackupModal from '@/implementations/kb09/pages/db/detail/components/StopBackupModal'; +const ErrorModal = dynamic(() => import('@/implementations/kb08/components/ErrorModal/index')); const defaultEdit = { ...defaultDBEditValue, @@ -409,12 +408,3 @@ const EditApp = ({ dbName, tabType }: { dbName?: string; tabType?: 'form' | 'yam }; export default EditApp; - -export async function getServerSideProps(context: any) { - const dbName = context?.query?.name || ''; - const tabType = context?.query?.type || 'form'; - - return { - props: { ...(await serviceSideProps(context)), dbName, tabType } - }; -} diff --git a/release-v5.1/database/src/pages/db/migrate/components/Form.tsx b/database/src/implementations/kb08/pages/db/migrate/components/Form.tsx similarity index 97% rename from release-v5.1/database/src/pages/db/migrate/components/Form.tsx rename to database/src/implementations/kb08/pages/db/migrate/components/Form.tsx index 71b866c..3318bb8 100644 --- a/release-v5.1/database/src/pages/db/migrate/components/Form.tsx +++ b/database/src/implementations/kb08/pages/db/migrate/components/Form.tsx @@ -1,8 +1,8 @@ import MyIcon from '@/components/Icon'; -import QuotaBox from '@/components/QuotaBox'; +import QuotaBox from '@/implementations/kb08/components/QuotaBox/index'; import TagTextarea from '@/components/Textarea/TagTextarea'; -import { SupportMigrationDBType } from '@/types/db'; -import { MigrateForm } from '@/types/migrate'; +import { SupportMigrationDBType } from '@/implementations/kb08/types/db'; +import { MigrateForm } from '@/implementations/kb08/types/migrate'; import { Accordion, AccordionButton, @@ -23,7 +23,7 @@ import { useDisclosure, useTheme } from '@chakra-ui/react'; -import { Tabs, useMessage } from '@sealos/ui'; +import { Tabs, useMessage } from '@labring/sealos-chakra-ui'; import 'github-markdown-css/github-markdown-light.css'; import { useTranslation } from 'next-i18next'; import { useRouter } from 'next/router'; @@ -31,7 +31,7 @@ import { useEffect, useMemo, useRef, useState } from 'react'; import { UseFormReturn } from 'react-hook-form'; import PrepareBox from './Prepare'; import { I18nCommonKey } from '@/types/i18next'; -import { parseDatabaseUrl, useClipboard, useCopyData } from '@/utils/tools'; +import { parseDatabaseUrl, useClipboard, useCopyData } from '@/implementations/kb08/utils/tools'; import { Popover, PopoverTrigger, PopoverContent, PopoverBody } from '@chakra-ui/react'; diff --git a/release-v5.1/database/src/pages/db/migrate/components/Header.tsx b/database/src/implementations/kb08/pages/db/migrate/components/Header.tsx similarity index 95% rename from release-v5.1/database/src/pages/db/migrate/components/Header.tsx rename to database/src/implementations/kb08/pages/db/migrate/components/Header.tsx index 345a7f3..5bd0334 100644 --- a/release-v5.1/database/src/pages/db/migrate/components/Header.tsx +++ b/database/src/implementations/kb08/pages/db/migrate/components/Header.tsx @@ -1,5 +1,5 @@ import MyIcon from '@/components/Icon'; -import { DBType } from '@/types/db'; +import { DBType } from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; import { Box, Button, Flex } from '@chakra-ui/react'; import { ArrowLeft } from 'lucide-react'; diff --git a/release-v5.1/database/src/pages/db/migrate/components/Prepare.tsx b/database/src/implementations/kb08/pages/db/migrate/components/Prepare.tsx similarity index 95% rename from release-v5.1/database/src/pages/db/migrate/components/Prepare.tsx rename to database/src/implementations/kb08/pages/db/migrate/components/Prepare.tsx index f3f1580..c1c95ec 100644 --- a/release-v5.1/database/src/pages/db/migrate/components/Prepare.tsx +++ b/database/src/implementations/kb08/pages/db/migrate/components/Prepare.tsx @@ -1,6 +1,6 @@ import CodeBlock from '@/components/CodeBlock'; -import { SupportMigrationDBType } from '@/types/db'; -import { MigrateForm } from '@/types/migrate'; +import { SupportMigrationDBType } from '@/implementations/kb08/types/db'; +import { MigrateForm } from '@/implementations/kb08/types/migrate'; import { Box, Checkbox, Text } from '@chakra-ui/react'; import { useMemo, useState } from 'react'; import { UseFormReturn } from 'react-hook-form'; diff --git a/main/database/src/pages/db/migrate/components/Yaml.tsx b/database/src/implementations/kb08/pages/db/migrate/components/Yaml.tsx similarity index 94% rename from main/database/src/pages/db/migrate/components/Yaml.tsx rename to database/src/implementations/kb08/pages/db/migrate/components/Yaml.tsx index 7eb02aa..7efb53d 100644 --- a/main/database/src/pages/db/migrate/components/Yaml.tsx +++ b/database/src/implementations/kb08/pages/db/migrate/components/Yaml.tsx @@ -1,12 +1,12 @@ import MyIcon from '@/components/Icon'; import YamlCode from '@/components/YamlCode/index'; import type { QueryType, YamlItemType } from '@/types'; -import { useCopyData } from '@/utils/tools'; +import { useCopyData } from '@/implementations/kb08/utils/tools'; import { Box, Center, Flex, Grid, useTheme } from '@chakra-ui/react'; -import { Tabs } from '@sealos/ui'; +import { Tabs } from '@labring/sealos-chakra-ui'; import { useRouter } from 'next/router'; import { useState } from 'react'; -import styles from './index.module.scss'; +import styles from '@/implementations/kb09/pages/db/migrate/components/index.module.scss'; import { useTranslation } from 'next-i18next'; const Yaml = ({ yamlList = [], pxVal }: { yamlList: YamlItemType[]; pxVal: number }) => { diff --git a/database/src/implementations/kb08/pages/db/migrate/index.server.ts b/database/src/implementations/kb08/pages/db/migrate/index.server.ts new file mode 100644 index 0000000..8561a46 --- /dev/null +++ b/database/src/implementations/kb08/pages/db/migrate/index.server.ts @@ -0,0 +1,19 @@ +import { serviceSideProps } from '@/utils/i18n'; +export async function getServerSideProps(context: any) { + const dbName = context?.query?.name || ''; + const dbType = context?.query?.dbType || ''; + const tabType = context?.query?.type || 'form'; + + if (dbType === 'redis') { + return { + redirect: { + destination: `/db/detail?name=${dbName}&dbType=${dbType}&listType=dataImport`, + permanent: false + } + }; + } + + return { + props: { ...(await serviceSideProps(context)), dbName, tabType, dbType } + }; +} diff --git a/release-v5.1/database/src/pages/db/migrate/index.tsx b/database/src/implementations/kb08/pages/db/migrate/index.tsx similarity index 85% rename from release-v5.1/database/src/pages/db/migrate/index.tsx rename to database/src/implementations/kb08/pages/db/migrate/index.tsx index f566ba2..9fcd1f2 100644 --- a/release-v5.1/database/src/pages/db/migrate/index.tsx +++ b/database/src/implementations/kb08/pages/db/migrate/index.tsx @@ -1,17 +1,16 @@ -import { applyYamlList, getDBSecret } from '@/api/db'; -import { defaultDBEditValue } from '@/constants/db'; +import { applyYamlList, getDBSecret } from '@/implementations/kb08/api/db'; +import { defaultDBEditValue } from '@/implementations/kb08/constants/db'; import { useConfirm } from '@/hooks/useConfirm'; import { useLoading } from '@/hooks/useLoading'; -import { useDBStore } from '@/store/db'; +import { useDBStore } from '@/implementations/kb08/store/db'; import { useGlobalStore } from '@/store/global'; -import { useUserStore } from '@/store/user'; +import { useUserStore } from '@/implementations/kb08/store/user'; import type { YamlItemType } from '@/types'; -import { DBType } from '@/types/db'; -import { MigrateForm } from '@/types/migrate'; -import { serviceSideProps } from '@/utils/i18n'; -import { json2MigrateCR } from '@/utils/json2Yaml'; +import { DBType } from '@/implementations/kb08/types/db'; +import { MigrateForm } from '@/implementations/kb08/types/migrate'; +import { json2MigrateCR } from '@/implementations/kb08/utils/json2Yaml'; import { Box, Flex } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import debounce from 'lodash/debounce'; import { useTranslation } from 'next-i18next'; @@ -23,7 +22,7 @@ import Form from './components/Form'; import Header from './components/Header'; import Yaml from './components/Yaml'; -const ErrorModal = dynamic(() => import('@/components/ErrorModal')); +const ErrorModal = dynamic(() => import('@/implementations/kb08/components/ErrorModal/index')); const EditApp = ({ dbName, @@ -235,22 +234,3 @@ const EditApp = ({ }; export default EditApp; - -export async function getServerSideProps(context: any) { - const dbName = context?.query?.name || ''; - const dbType = context?.query?.dbType || ''; - const tabType = context?.query?.type || 'form'; - - if (dbType === 'redis') { - return { - redirect: { - destination: `/db/detail?name=${dbName}&dbType=${dbType}&listType=dataImport`, - permanent: false - } - }; - } - - return { - props: { ...(await serviceSideProps(context)), dbName, tabType, dbType } - }; -} diff --git a/release-v5.1/database/src/pages/dbs/components/dbList.tsx b/database/src/implementations/kb08/pages/dbs/components/dbList.tsx similarity index 96% rename from release-v5.1/database/src/pages/dbs/components/dbList.tsx rename to database/src/implementations/kb08/pages/dbs/components/dbList.tsx index 9d6ef22..e37e64e 100644 --- a/release-v5.1/database/src/pages/dbs/components/dbList.tsx +++ b/database/src/implementations/kb08/pages/dbs/components/dbList.tsx @@ -1,19 +1,19 @@ -import { pauseDBByName, restartDB, startDBByName } from '@/api/db'; +import { pauseDBByName, restartDB, startDBByName } from '@/implementations/kb08/api/db'; import { BaseTable } from '@/components/BaseTable/baseTable'; -import { CustomMenu } from '@/components/BaseTable/customMenu'; -import DBStatusTag, { DBStatusDetailsModal } from '@/components/DBStatusTag'; -import type { DatabaseAlertItem } from '@/api/db'; +import { CustomMenu } from '@/implementations/kb08/components/BaseTable/customMenu'; +import DBStatusTag, { DBStatusDetailsModal } from '@/implementations/kb08/components/DBStatusTag/index'; +import type { DatabaseAlertItem } from '@/implementations/kb08/api/db'; import MyIcon from '@/components/Icon'; -import { DBStatusEnum, DBTypeList } from '@/constants/db'; +import { DBStatusEnum, DBTypeList } from '@/implementations/kb08/constants/db'; import { applistDriverObj, startDriver } from '@/hooks/driver'; import { useClientSideValue } from '@/hooks/useClientSideValue'; import { useConfirm } from '@/hooks/useConfirm'; -import UpdateModal from '@/pages/db/detail/components/UpdateModal'; -import useEnvStore from '@/store/env'; +import UpdateModal from '@/implementations/kb08/pages/db/detail/components/UpdateModal'; +import useEnvStore from '@/implementations/kb08/store/env'; import { useGlobalStore } from '@/store/global'; import { useGuideStore } from '@/store/guide'; -import { DBListItemType } from '@/types/db'; -import { printMemory } from '@/utils/tools'; +import { DBListItemType } from '@/implementations/kb08/types/db'; +import { printMemory } from '@/implementations/kb08/utils/tools'; import { Search, TriangleAlert } from 'lucide-react'; import { Box, @@ -33,7 +33,7 @@ import { PopoverTrigger, Badge } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { track } from '@labring/sealos-gtm-sdk'; import { ColumnDef, @@ -63,9 +63,9 @@ import { Input, ModalFooter } from '@chakra-ui/react'; -import { setDBRemark } from '@/api/db'; +import { setDBRemark } from '@/implementations/kb08/api/db'; -const DelModal = dynamic(() => import('@/pages/db/detail/components/DelModal')); +const DelModal = dynamic(() => import('@/implementations/kb08/pages/db/detail/components/DelModal')); const DBList = ({ dbList = [], diff --git a/release-v5.1/database/src/pages/dbs/components/empty.tsx b/database/src/implementations/kb08/pages/dbs/components/empty.tsx similarity index 95% rename from release-v5.1/database/src/pages/dbs/components/empty.tsx rename to database/src/implementations/kb08/pages/dbs/components/empty.tsx index 98a8a8b..2dd06a6 100644 --- a/release-v5.1/database/src/pages/dbs/components/empty.tsx +++ b/database/src/implementations/kb08/pages/dbs/components/empty.tsx @@ -1,7 +1,7 @@ import React, { useEffect } from 'react'; import { useRouter } from 'next/router'; import { Button, Box } from '@chakra-ui/react'; -import styles from './empty.module.scss'; +import styles from '@/implementations/kb09/pages/dbs/components/empty.module.scss'; import MyIcon from '@/components/Icon'; import { useTranslation } from 'next-i18next'; import { startDriver, applistDriverObj } from '@/hooks/driver'; diff --git a/database/src/implementations/kb08/pages/dbs/index.server.ts b/database/src/implementations/kb08/pages/dbs/index.server.ts new file mode 100644 index 0000000..2be43ec --- /dev/null +++ b/database/src/implementations/kb08/pages/dbs/index.server.ts @@ -0,0 +1,8 @@ +import { serviceSideProps } from '@/utils/i18n'; +export async function getServerSideProps(content: any) { + return { + props: { + ...(await serviceSideProps(content)) + } + }; +} diff --git a/main/database/src/pages/dbs/index.tsx b/database/src/implementations/kb08/pages/dbs/index.tsx similarity index 83% rename from main/database/src/pages/dbs/index.tsx rename to database/src/implementations/kb08/pages/dbs/index.tsx index 1d42d22..803db73 100644 --- a/main/database/src/pages/dbs/index.tsx +++ b/database/src/implementations/kb08/pages/dbs/index.tsx @@ -1,16 +1,15 @@ import Empty from './components/empty'; import DBList from './components/dbList'; import { useQuery } from '@tanstack/react-query'; -import { useDBStore } from '@/store/db'; +import { useDBStore } from '@/implementations/kb08/store/db'; import { useLoading } from '@/hooks/useLoading'; import { useEffect, useState } from 'react'; -import { serviceSideProps } from '@/utils/i18n'; -import Sidebar from '@/components/Sidebar'; +import Sidebar from '@/implementations/kb08/components/Sidebar/index'; import { Box, Flex, Switch, Text } from '@chakra-ui/react'; import { useGuideStore } from '@/store/guide'; import { useRouter } from 'next/router'; import { track } from '@labring/sealos-gtm-sdk'; -import { type DatabaseAlertItem } from '@/api/db'; +import { type DatabaseAlertItem } from '@/implementations/kb08/api/db'; function Home() { const { dbList, setDBList, alerts, loadAlerts } = useDBStore(); @@ -59,12 +58,4 @@ function Home() { ); } -export async function getServerSideProps(content: any) { - return { - props: { - ...(await serviceSideProps(content)) - } - }; -} - export default Home; diff --git a/release-v5.1/database/src/pages/doc/v2alpha.tsx b/database/src/implementations/kb08/pages/doc/v2alpha.tsx similarity index 50% rename from release-v5.1/database/src/pages/doc/v2alpha.tsx rename to database/src/implementations/kb08/pages/doc/v2alpha.tsx index 9d0b1ef..7e2d7c2 100644 --- a/release-v5.1/database/src/pages/doc/v2alpha.tsx +++ b/database/src/implementations/kb08/pages/doc/v2alpha.tsx @@ -1,6 +1,6 @@ import dynamic from 'next/dynamic'; -const ApiV2AlphaDocs = dynamic(() => import('@/components/ApiV2AlphaDocs'), { ssr: false }); +const ApiV2AlphaDocs = dynamic(() => import('@/implementations/kb08/components/ApiV2AlphaDocs'), { ssr: false }); export default function ApiV2AlphaDocsPage() { return ; diff --git a/release-v5.1/database/src/pages/healthz.ts b/database/src/implementations/kb08/pages/healthz.ts similarity index 100% rename from release-v5.1/database/src/pages/healthz.ts rename to database/src/implementations/kb08/pages/healthz.ts diff --git a/release-v5.1/database/src/pages/icons/index.tsx b/database/src/implementations/kb08/pages/icons/index.tsx similarity index 95% rename from release-v5.1/database/src/pages/icons/index.tsx rename to database/src/implementations/kb08/pages/icons/index.tsx index 0706867..ade9ffc 100644 --- a/release-v5.1/database/src/pages/icons/index.tsx +++ b/database/src/implementations/kb08/pages/icons/index.tsx @@ -1,5 +1,5 @@ import MyIcon, { IconMap } from '@/components/Icon'; -import { useCopyData } from '@/utils/tools'; +import { useCopyData } from '@/implementations/kb08/utils/tools'; import { Box, SimpleGrid } from '@chakra-ui/react'; import { useRouter } from 'next/router'; import { useEffect } from 'react'; diff --git a/release-v5.1/database/src/pages/redirect.tsx b/database/src/implementations/kb08/pages/redirect.tsx similarity index 94% rename from release-v5.1/database/src/pages/redirect.tsx rename to database/src/implementations/kb08/pages/redirect.tsx index d9411ca..d0701e2 100644 --- a/release-v5.1/database/src/pages/redirect.tsx +++ b/database/src/implementations/kb08/pages/redirect.tsx @@ -1,4 +1,4 @@ -import { getDBByName } from '@/api/db'; +import { getDBByName } from '@/implementations/kb08/api/db'; import { useGlobalStore } from '@/store/global'; import { useGuideStore } from '@/store/guide'; import { useRouter } from 'next/router'; diff --git a/release-v5.1/database/src/services/backend/apis/create-database.ts b/database/src/implementations/kb08/services/backend/apis/create-database.ts similarity index 89% rename from release-v5.1/database/src/services/backend/apis/create-database.ts rename to database/src/implementations/kb08/services/backend/apis/create-database.ts index 9786c19..a8e2fe2 100644 --- a/release-v5.1/database/src/services/backend/apis/create-database.ts +++ b/database/src/implementations/kb08/services/backend/apis/create-database.ts @@ -1,15 +1,15 @@ -import { Config } from '@/config'; -import { createDatabaseSchemas } from '@/types/apis'; +import { Config } from '@/implementations/kb08/config'; +import { createDatabaseSchemas } from '@/implementations/kb08/types/apis/index'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { BackupSupportedDBTypeList, DBTypeEnum } from '@/constants/db'; -import { updateBackupPolicyApi } from '@/pages/api/backup/updatePolicy'; -import { KbPgClusterType } from '@/types/cluster'; -import { adaptDBDetail, convertBackupFormToSpec } from '@/utils/adapt'; -import { json2Account, json2CreateCluster, json2ParameterConfig } from '@/utils/json2Yaml'; -import { DBEditType, EditType } from '@/types/db'; -import { getScore } from '@/utils/tools'; -import { validatePolarDBXResources } from '@/utils/database'; +import { BackupSupportedDBTypeList, DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { updateBackupPolicyApi } from '@/implementations/kb08/pages/api/backup/updatePolicy'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { adaptDBDetail, convertBackupFormToSpec } from '@/implementations/kb08/utils/adapt'; +import { json2Account, json2CreateCluster, json2ParameterConfig } from '@/implementations/kb08/utils/json2Yaml'; +import { DBEditType, EditType } from '@/implementations/kb08/types/db'; +import { getScore } from '@/implementations/kb08/utils/tools'; +import { validatePolarDBXResources } from '@/implementations/kb08/utils/database'; const schema2Raw = (dbForm: z.Infer): DBEditType => { console.log('Original input resources:', dbForm.resource); @@ -139,7 +139,7 @@ export async function createDatabase( const account = json2Account(rawDbForm); const cluster = json2CreateCluster(rawDbForm, undefined, { - storageClassName: Config().database.storage.forcedClassName + storageClassName: Config().database.storage.forcedClassName || undefined }); console.log('Generated cluster config preview:', { diff --git a/main/database/src/services/backend/apis/delete-database.ts b/database/src/implementations/kb08/services/backend/apis/delete-database.ts similarity index 85% rename from main/database/src/services/backend/apis/delete-database.ts rename to database/src/implementations/kb08/services/backend/apis/delete-database.ts index c10292b..9e5f5dd 100644 --- a/main/database/src/services/backend/apis/delete-database.ts +++ b/database/src/implementations/kb08/services/backend/apis/delete-database.ts @@ -1,10 +1,10 @@ -import { getDatabaseSchemas, updateDatabaseSchemas } from '@/types/apis'; +import { getDatabaseSchemas, updateDatabaseSchemas } from '@/implementations/kb08/types/apis/index'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { delMigrateByName } from '@/pages/api/migrate/delete'; -import { GetJobByName, DeleteJobByName } from '@/pages/api/migrate/delJobByName'; -import { CloudMigraionLabel } from '@/constants/db'; -import { getMigrateList } from '@/pages/api/migrate/list'; +import { delMigrateByName } from '@/implementations/kb08/pages/api/migrate/delete'; +import { GetJobByName, DeleteJobByName } from '@/implementations/kb08/pages/api/migrate/delJobByName'; +import { CloudMigraionLabel } from '@/implementations/kb08/constants/db'; +import { getMigrateList } from '@/implementations/kb08/pages/api/migrate/list'; export async function deleteDatabase( k8s: Awaited>, request: { diff --git a/release-v5.1/database/src/services/backend/apis/get-database.ts b/database/src/implementations/kb08/services/backend/apis/get-database.ts similarity index 85% rename from release-v5.1/database/src/services/backend/apis/get-database.ts rename to database/src/implementations/kb08/services/backend/apis/get-database.ts index 7581c63..3db5c1a 100644 --- a/release-v5.1/database/src/services/backend/apis/get-database.ts +++ b/database/src/implementations/kb08/services/backend/apis/get-database.ts @@ -1,15 +1,15 @@ -import { updateDatabaseSchemas } from '@/types/apis'; +import { updateDatabaseSchemas } from '@/implementations/kb08/types/apis/index'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { KbPgClusterType } from '@/types/cluster'; -import { adaptDBDetail } from '@/utils/adapt'; -import { dbDetailSchema } from '@/types/schemas/db'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; +import { dbDetailSchema } from '@/implementations/kb08/types/schemas/db'; import { CPUResourceEnum, DBDetailType, MemoryResourceEnum, ReplicasResourceEnum -} from '@/types/db'; +} from '@/implementations/kb08/types/db'; export const raw2schema = (raw: DBDetailType): z.Infer => { const dbEditSchemaFromRaw: z.Infer = { terminationPolicy: raw.terminationPolicy, diff --git a/release-v5.1/database/src/services/backend/apis/list-database.ts b/database/src/implementations/kb08/services/backend/apis/list-database.ts similarity index 84% rename from release-v5.1/database/src/services/backend/apis/list-database.ts rename to database/src/implementations/kb08/services/backend/apis/list-database.ts index 05bb18f..d57e114 100644 --- a/release-v5.1/database/src/services/backend/apis/list-database.ts +++ b/database/src/implementations/kb08/services/backend/apis/list-database.ts @@ -1,15 +1,15 @@ -import { updateDatabaseSchemas } from '@/types/apis'; +import { updateDatabaseSchemas } from '@/implementations/kb08/types/apis/index'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { KbPgClusterType } from '@/types/cluster'; -import { adaptDBDetail, adaptDBListItem } from '@/utils/adapt'; -import { dbDetailSchema, dblistItemSchema } from '@/types/schemas/db'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { adaptDBDetail, adaptDBListItem } from '@/implementations/kb08/utils/adapt'; +import { dbDetailSchema, dblistItemSchema } from '@/implementations/kb08/types/schemas/db'; import { CPUResourceEnum, DBDetailType, MemoryResourceEnum, ReplicasResourceEnum -} from '@/types/db'; +} from '@/implementations/kb08/types/db'; const raw2schema = (raw: DBDetailType): z.Infer => { const autoBackup = raw.autoBackup; const dbEditSchemaFromRaw: z.Infer = { diff --git a/main/database/src/services/backend/v2alpha/pause-database.ts b/database/src/implementations/kb08/services/backend/apis/pause-database.ts similarity index 85% rename from main/database/src/services/backend/v2alpha/pause-database.ts rename to database/src/implementations/kb08/services/backend/apis/pause-database.ts index 029f238..5769dbd 100644 --- a/main/database/src/services/backend/v2alpha/pause-database.ts +++ b/database/src/implementations/kb08/services/backend/apis/pause-database.ts @@ -1,12 +1,12 @@ -import { pauseDatabaseSchemas } from '@/types/apis/v2alpha'; +import { pauseDatabaseSchemas } from '@/implementations/kb08/types/apis/index'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { getCluster } from '@/pages/api/getDBByName'; -import { json2BasicOps } from '@/utils/json2Yaml'; +import { getCluster } from '@/implementations/kb08/pages/api/getDBByName'; +import { json2BasicOps } from '@/implementations/kb08/utils/json2Yaml'; import { PatchUtils } from '@kubernetes/client-node'; import { NextApiRequest } from 'next'; import { raw2schema } from './get-database'; -import { adaptDBDetail } from '@/utils/adapt'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; export async function pauseDatabase( k8s: Awaited>, diff --git a/release-v5.1/database/src/services/backend/apis/start-database.ts b/database/src/implementations/kb08/services/backend/apis/start-database.ts similarity index 81% rename from release-v5.1/database/src/services/backend/apis/start-database.ts rename to database/src/implementations/kb08/services/backend/apis/start-database.ts index 0db5d4f..accb3ef 100644 --- a/release-v5.1/database/src/services/backend/apis/start-database.ts +++ b/database/src/implementations/kb08/services/backend/apis/start-database.ts @@ -1,11 +1,11 @@ -import { startDatabaseSchemas } from '@/types/apis'; +import { startDatabaseSchemas } from '@/implementations/kb08/types/apis/index'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { getCluster } from '@/pages/api/getDBByName'; -import { json2BasicOps } from '@/utils/json2Yaml'; +import { getCluster } from '@/implementations/kb08/pages/api/getDBByName'; +import { json2BasicOps } from '@/implementations/kb08/utils/json2Yaml'; import { PatchUtils } from '@kubernetes/client-node'; import { NextApiRequest } from 'next'; -import { adaptDBDetail } from '@/utils/adapt'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; import { raw2schema } from './get-database'; export async function startDatabase( diff --git a/release-v5.1/database/src/services/backend/apis/update-database.ts b/database/src/implementations/kb08/services/backend/apis/update-database.ts similarity index 96% rename from release-v5.1/database/src/services/backend/apis/update-database.ts rename to database/src/implementations/kb08/services/backend/apis/update-database.ts index a71b731..346499a 100644 --- a/release-v5.1/database/src/services/backend/apis/update-database.ts +++ b/database/src/implementations/kb08/services/backend/apis/update-database.ts @@ -1,7 +1,7 @@ -import { json2ResourceOps } from '@/utils/json2Yaml'; -import { adaptDBDetail } from '@/utils/adapt'; -import { KbPgClusterType } from '@/types/cluster'; -import { updateDatabaseSchemas } from '@/types/apis'; +import { json2ResourceOps } from '@/implementations/kb08/utils/json2Yaml'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { updateDatabaseSchemas } from '@/implementations/kb08/types/apis/index'; import z from 'zod'; import { getK8s } from '../kubernetes'; import * as yaml from 'js-yaml'; diff --git a/release-v5.1/database/src/services/backend/auth.ts b/database/src/implementations/kb08/services/backend/auth.ts similarity index 100% rename from release-v5.1/database/src/services/backend/auth.ts rename to database/src/implementations/kb08/services/backend/auth.ts diff --git a/main/database/src/services/backend/dataflow.ts b/database/src/implementations/kb08/services/backend/dataflow.ts similarity index 100% rename from main/database/src/services/backend/dataflow.ts rename to database/src/implementations/kb08/services/backend/dataflow.ts diff --git a/release-v5.1/database/src/services/backend/kubernetes.ts b/database/src/implementations/kb08/services/backend/kubernetes.ts similarity index 98% rename from release-v5.1/database/src/services/backend/kubernetes.ts rename to database/src/implementations/kb08/services/backend/kubernetes.ts index 5c06f7a..d9d654a 100644 --- a/release-v5.1/database/src/services/backend/kubernetes.ts +++ b/database/src/implementations/kb08/services/backend/kubernetes.ts @@ -1,5 +1,5 @@ -import { UserQuotaItemType } from '@/types/user'; -import { cpuFormatToM, memoryFormatToMi, storageQuantityToMi } from '@/utils/tools'; +import { UserQuotaItemType } from '@/implementations/kb08/types/user'; +import { cpuFormatToM, memoryFormatToMi, storageQuantityToMi } from '@/implementations/kb08/utils/tools'; import * as k8s from '@kubernetes/client-node'; import * as yaml from 'js-yaml'; diff --git a/release-v5.1/database/src/services/backend/response.ts b/database/src/implementations/kb08/services/backend/response.ts similarity index 100% rename from release-v5.1/database/src/services/backend/response.ts rename to database/src/implementations/kb08/services/backend/response.ts diff --git a/release-v5.1/database/src/services/backend/v2alpha/create-database.ts b/database/src/implementations/kb08/services/backend/v2alpha/create-database.ts similarity index 90% rename from release-v5.1/database/src/services/backend/v2alpha/create-database.ts rename to database/src/implementations/kb08/services/backend/v2alpha/create-database.ts index 7806aaa..3b07c55 100644 --- a/release-v5.1/database/src/services/backend/v2alpha/create-database.ts +++ b/database/src/implementations/kb08/services/backend/v2alpha/create-database.ts @@ -1,14 +1,14 @@ -import { Config } from '@/config'; -import { createDatabaseSchemas } from '@/types/apis/v2alpha'; +import { Config } from '@/implementations/kb08/config'; +import { createDatabaseSchemas } from '@/implementations/kb08/types/apis/v2alpha/index'; import { getK8s, K8sApi } from '../kubernetes'; import { z } from 'zod'; -import { BackupSupportedDBTypeList, DBTypeEnum } from '@/constants/db'; -import { updateBackupPolicyApi } from '@/pages/api/backup/updatePolicy'; -import { KbPgClusterType } from '@/types/cluster'; -import { adaptDBDetail, convertBackupFormToSpec } from '@/utils/adapt'; -import { json2Account, json2CreateCluster, json2ParameterConfig } from '@/utils/json2Yaml'; -import { DBEditType, EditType } from '@/types/db'; -import { getScore } from '@/utils/tools'; +import { BackupSupportedDBTypeList, DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { updateBackupPolicyApi } from '@/implementations/kb08/pages/api/backup/updatePolicy'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { adaptDBDetail, convertBackupFormToSpec } from '@/implementations/kb08/utils/adapt'; +import { json2Account, json2CreateCluster, json2ParameterConfig } from '@/implementations/kb08/utils/json2Yaml'; +import { DBEditType, EditType } from '@/implementations/kb08/types/db'; +import { getScore } from '@/implementations/kb08/utils/tools'; // Cache for version information to avoid repeated API calls const versionCache = new Map(); @@ -173,7 +173,7 @@ export async function createDatabase( const account = json2Account(rawDbForm); const cluster = json2CreateCluster(rawDbForm, undefined, { - storageClassName: Config().database.storage.forcedClassName + storageClassName: Config().database.storage.forcedClassName || undefined }); const yamlList = [account, cluster]; diff --git a/release-v5.1/database/src/services/backend/v2alpha/delete-database.ts b/database/src/implementations/kb08/services/backend/v2alpha/delete-database.ts similarity index 94% rename from release-v5.1/database/src/services/backend/v2alpha/delete-database.ts rename to database/src/implementations/kb08/services/backend/v2alpha/delete-database.ts index 4030a8b..6c4093e 100644 --- a/release-v5.1/database/src/services/backend/v2alpha/delete-database.ts +++ b/database/src/implementations/kb08/services/backend/v2alpha/delete-database.ts @@ -1,9 +1,9 @@ -import { getDatabaseSchemas } from '@/types/apis'; +import { getDatabaseSchemas } from '@/implementations/kb08/types/apis/index'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { CloudMigraionLabel } from '@/constants/db'; -import { adaptDBDetail } from '@/utils/adapt'; -import { KbPgClusterType } from '@/types/cluster'; +import { CloudMigraionLabel } from '@/implementations/kb08/constants/db'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; export async function deleteDatabase( k8s: Awaited>, diff --git a/release-v5.1/database/src/services/backend/v2alpha/get-database.ts b/database/src/implementations/kb08/services/backend/v2alpha/get-database.ts similarity index 96% rename from release-v5.1/database/src/services/backend/v2alpha/get-database.ts rename to database/src/implementations/kb08/services/backend/v2alpha/get-database.ts index 5bf49e2..ef40e9b 100644 --- a/release-v5.1/database/src/services/backend/v2alpha/get-database.ts +++ b/database/src/implementations/kb08/services/backend/v2alpha/get-database.ts @@ -1,15 +1,15 @@ -import { updateDatabaseSchemas } from '@/types/apis/v2alpha'; +import { updateDatabaseSchemas } from '@/implementations/kb08/types/apis/v2alpha/index'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { KbPgClusterType } from '@/types/cluster'; -import { adaptDBDetail } from '@/utils/adapt'; -import { dbDetailSchema } from '@/types/schemas/v2alpha/db'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; +import { dbDetailSchema } from '@/implementations/kb08/types/schemas/v2alpha/db'; import { CPUResourceEnum, DBDetailType, MemoryResourceEnum, ReplicasResourceEnum -} from '@/types/db'; +} from '@/implementations/kb08/types/db'; type DbDetail = z.infer; type ConnectionInfo = DbDetail['connection']; diff --git a/release-v5.1/database/src/services/backend/v2alpha/list-database.ts b/database/src/implementations/kb08/services/backend/v2alpha/list-database.ts similarity index 90% rename from release-v5.1/database/src/services/backend/v2alpha/list-database.ts rename to database/src/implementations/kb08/services/backend/v2alpha/list-database.ts index 9cc4a95..a9b310e 100644 --- a/release-v5.1/database/src/services/backend/v2alpha/list-database.ts +++ b/database/src/implementations/kb08/services/backend/v2alpha/list-database.ts @@ -1,16 +1,16 @@ import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { KbPgClusterType } from '@/types/cluster'; -import { adaptDBDetail } from '@/utils/adapt'; -import { dblistItemSchema } from '@/types/schemas/v2alpha/db'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; +import { dblistItemSchema } from '@/implementations/kb08/types/schemas/v2alpha/db'; import { CPUResourceEnum, DBDetailType, MemoryResourceEnum, ReplicasResourceEnum -} from '@/types/db'; -import { fetchDBSecret, buildConnectionInfo } from '@/utils/database'; -import { KBBackupNameLabel } from '@/constants/db'; +} from '@/implementations/kb08/types/db'; +import { fetchDBSecret, buildConnectionInfo } from '@/implementations/kb08/utils/database'; +import { KBBackupNameLabel } from '@/implementations/kb08/constants/db'; type DbListItem = z.infer; type ConnectionInfo = DbListItem['connection']; diff --git a/release-v5.1/database/src/services/backend/apis/pause-database.ts b/database/src/implementations/kb08/services/backend/v2alpha/pause-database.ts similarity index 84% rename from release-v5.1/database/src/services/backend/apis/pause-database.ts rename to database/src/implementations/kb08/services/backend/v2alpha/pause-database.ts index 279a1cc..b9e32d9 100644 --- a/release-v5.1/database/src/services/backend/apis/pause-database.ts +++ b/database/src/implementations/kb08/services/backend/v2alpha/pause-database.ts @@ -1,12 +1,12 @@ -import { pauseDatabaseSchemas } from '@/types/apis'; +import { pauseDatabaseSchemas } from '@/implementations/kb08/types/apis/v2alpha/index'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { getCluster } from '@/pages/api/getDBByName'; -import { json2BasicOps } from '@/utils/json2Yaml'; +import { getCluster } from '@/implementations/kb08/pages/api/getDBByName'; +import { json2BasicOps } from '@/implementations/kb08/utils/json2Yaml'; import { PatchUtils } from '@kubernetes/client-node'; import { NextApiRequest } from 'next'; import { raw2schema } from './get-database'; -import { adaptDBDetail } from '@/utils/adapt'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; export async function pauseDatabase( k8s: Awaited>, diff --git a/release-v5.1/database/src/services/backend/v2alpha/restart-database.ts b/database/src/implementations/kb08/services/backend/v2alpha/restart-database.ts similarity index 74% rename from release-v5.1/database/src/services/backend/v2alpha/restart-database.ts rename to database/src/implementations/kb08/services/backend/v2alpha/restart-database.ts index 0e171d9..bcc3b28 100644 --- a/release-v5.1/database/src/services/backend/v2alpha/restart-database.ts +++ b/database/src/implementations/kb08/services/backend/v2alpha/restart-database.ts @@ -1,10 +1,10 @@ -import { restartDatabaseSchemas } from '@/types/apis/v2alpha'; +import { restartDatabaseSchemas } from '@/implementations/kb08/types/apis/v2alpha/index'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { getCluster } from '@/pages/api/getDBByName'; -import { json2BasicOps } from '@/utils/json2Yaml'; +import { getCluster } from '@/implementations/kb08/pages/api/getDBByName'; +import { json2BasicOps } from '@/implementations/kb08/utils/json2Yaml'; import { NextApiRequest } from 'next'; -import { adaptDBDetail } from '@/utils/adapt'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; import { raw2schema } from './get-database'; export async function restartDatabase( diff --git a/main/database/src/services/backend/v2alpha/start-database.ts b/database/src/implementations/kb08/services/backend/v2alpha/start-database.ts similarity index 83% rename from main/database/src/services/backend/v2alpha/start-database.ts rename to database/src/implementations/kb08/services/backend/v2alpha/start-database.ts index 10fbd6f..ccdc2fb 100644 --- a/main/database/src/services/backend/v2alpha/start-database.ts +++ b/database/src/implementations/kb08/services/backend/v2alpha/start-database.ts @@ -1,11 +1,11 @@ -import { startDatabaseSchemas } from '@/types/apis/v2alpha'; +import { startDatabaseSchemas } from '@/implementations/kb08/types/apis/v2alpha/index'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { getCluster } from '@/pages/api/getDBByName'; -import { json2BasicOps } from '@/utils/json2Yaml'; +import { getCluster } from '@/implementations/kb08/pages/api/getDBByName'; +import { json2BasicOps } from '@/implementations/kb08/utils/json2Yaml'; import { PatchUtils } from '@kubernetes/client-node'; import { NextApiRequest } from 'next'; -import { adaptDBDetail } from '@/utils/adapt'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; import { raw2schema } from './get-database'; export async function startDatabase( diff --git a/release-v5.1/database/src/services/backend/v2alpha/update-database.ts b/database/src/implementations/kb08/services/backend/v2alpha/update-database.ts similarity index 95% rename from release-v5.1/database/src/services/backend/v2alpha/update-database.ts rename to database/src/implementations/kb08/services/backend/v2alpha/update-database.ts index 86b75ed..cb66479 100644 --- a/release-v5.1/database/src/services/backend/v2alpha/update-database.ts +++ b/database/src/implementations/kb08/services/backend/v2alpha/update-database.ts @@ -1,7 +1,7 @@ -import { json2ResourceOps } from '@/utils/json2Yaml'; -import { adaptDBDetail } from '@/utils/adapt'; -import { KbPgClusterType } from '@/types/cluster'; -import { updateDatabaseSchemas } from '@/types/apis/v2alpha'; +import { json2ResourceOps } from '@/implementations/kb08/utils/json2Yaml'; +import { adaptDBDetail } from '@/implementations/kb08/utils/adapt'; +import { KbPgClusterType } from '@/implementations/kb08/types/cluster'; +import { updateDatabaseSchemas } from '@/implementations/kb08/types/apis/v2alpha/index'; import z from 'zod'; import { getK8s } from '../kubernetes'; import * as yaml from 'js-yaml'; diff --git a/release-v5.1/database/src/services/monitorFetch.ts b/database/src/implementations/kb08/services/monitorFetch.ts similarity index 96% rename from release-v5.1/database/src/services/monitorFetch.ts rename to database/src/implementations/kb08/services/monitorFetch.ts index b0300a5..7c161f5 100644 --- a/release-v5.1/database/src/services/monitorFetch.ts +++ b/database/src/implementations/kb08/services/monitorFetch.ts @@ -1,4 +1,4 @@ -import { Config } from '@/config'; +import { Config } from '@/implementations/kb08/config'; import { MetricsClient } from '@labring/sealos-metrics-sdk'; import type { DatabaseQueryParams, TimeRange } from '@labring/sealos-metrics-sdk'; diff --git a/release-v5.1/database/src/services/request.ts b/database/src/implementations/kb08/services/request.ts similarity index 96% rename from release-v5.1/database/src/services/request.ts rename to database/src/implementations/kb08/services/request.ts index 191147a..27fb494 100644 --- a/release-v5.1/database/src/services/request.ts +++ b/database/src/implementations/kb08/services/request.ts @@ -4,7 +4,7 @@ import axios, { AxiosResponse, AxiosRequestConfig } from 'axios'; -import { getUserKubeConfig } from '@/utils/user'; +import { getUserKubeConfig } from '@/implementations/kb08/utils/user'; import { ApiResponse, ResponseCode } from '@/types/response'; const request = axios.create({ diff --git a/release-v5.1/database/src/services/streamFetch.ts b/database/src/implementations/kb08/services/streamFetch.ts similarity index 96% rename from release-v5.1/database/src/services/streamFetch.ts rename to database/src/implementations/kb08/services/streamFetch.ts index c4ff5a3..2b82458 100644 --- a/release-v5.1/database/src/services/streamFetch.ts +++ b/database/src/implementations/kb08/services/streamFetch.ts @@ -1,4 +1,4 @@ -import { getUserKubeConfig } from '@/utils/user'; +import { getUserKubeConfig } from '@/implementations/kb08/utils/user'; interface StreamFetchProps { url: string; diff --git a/release-v5.1/database/src/store/date.ts b/database/src/implementations/kb08/store/date.ts similarity index 100% rename from release-v5.1/database/src/store/date.ts rename to database/src/implementations/kb08/store/date.ts diff --git a/release-v5.1/database/src/store/db.ts b/database/src/implementations/kb08/store/db.ts similarity index 93% rename from release-v5.1/database/src/store/db.ts rename to database/src/implementations/kb08/store/db.ts index eafce30..2bed6ab 100644 --- a/release-v5.1/database/src/store/db.ts +++ b/database/src/implementations/kb08/store/db.ts @@ -1,7 +1,7 @@ import { create } from 'zustand'; import { devtools } from 'zustand/middleware'; import { immer } from 'zustand/middleware/immer'; -import type { DBDetailType, DBListItemType, PodDetailType } from '@/types/db'; +import type { DBDetailType, DBListItemType, PodDetailType } from '@/implementations/kb08/types/db'; import { getMyDBList, getPodsByDBName, @@ -9,9 +9,9 @@ import { getMonitorData, getDatabaseAlerts, type DatabaseAlertItem -} from '@/api/db'; -import { defaultDBDetail } from '@/constants/db'; -import { getUserNamespace } from '@/utils/user'; +} from '@/implementations/kb08/api/db'; +import { defaultDBDetail } from '@/implementations/kb08/constants/db'; +import { getUserNamespace } from '@/implementations/kb08/utils/user'; type State = { dbList: DBListItemType[]; diff --git a/release-v5.1/database/src/store/env.ts b/database/src/implementations/kb08/store/env.ts similarity index 87% rename from release-v5.1/database/src/store/env.ts rename to database/src/implementations/kb08/store/env.ts index 18b9a5e..cc2bd89 100644 --- a/release-v5.1/database/src/store/env.ts +++ b/database/src/implementations/kb08/store/env.ts @@ -1,5 +1,5 @@ -import { getAppEnv } from '@/api/platform'; -import { SystemEnvResponse } from '@/pages/api/getEnv'; +import { getAppEnv } from '@/implementations/kb08/api/platform'; +import { SystemEnvResponse } from '@/implementations/kb08/pages/api/getEnv'; import { create } from 'zustand'; import { immer } from 'zustand/middleware/immer'; diff --git a/release-v5.1/database/src/store/static.ts b/database/src/implementations/kb08/store/static.ts similarity index 83% rename from release-v5.1/database/src/store/static.ts rename to database/src/implementations/kb08/store/static.ts index 822fb01..c61deef 100644 --- a/release-v5.1/database/src/store/static.ts +++ b/database/src/implementations/kb08/store/static.ts @@ -1,7 +1,7 @@ -import { getDBVersionMap, getResourcePrice } from '@/api/platform'; -import { DBTypeEnum } from '@/constants/db'; -import type { Response as DBVersionMapType } from '@/pages/api/platform/getVersion'; -import type { Response as resourcePriceResponse } from '@/pages/api/platform/resourcePrice'; +import { getDBVersionMap, getResourcePrice } from '@/implementations/kb08/api/platform'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import type { Response as DBVersionMapType } from '@/implementations/kb08/pages/api/platform/getVersion'; +import type { Response as resourcePriceResponse } from '@/implementations/kb08/pages/api/platform/resourcePrice'; export let SOURCE_PRICE: resourcePriceResponse = { cpu: 0.067, diff --git a/release-v5.1/database/src/store/user.ts b/database/src/implementations/kb08/store/user.ts similarity index 89% rename from release-v5.1/database/src/store/user.ts rename to database/src/implementations/kb08/store/user.ts index 8dad4ea..dd00d31 100644 --- a/release-v5.1/database/src/store/user.ts +++ b/database/src/implementations/kb08/store/user.ts @@ -1,7 +1,7 @@ -import { getUserQuota } from '@/api/platform'; -import { DBEditType } from '@/types/db'; +import { getUserQuota } from '@/implementations/kb08/api/platform'; +import { DBEditType } from '@/implementations/kb08/types/db'; import { I18nCommonKey } from '@/types/i18next'; -import { UserQuotaItemType } from '@/types/user'; +import { UserQuotaItemType } from '@/implementations/kb08/types/user'; import { create } from 'zustand'; import { devtools } from 'zustand/middleware'; import { immer } from 'zustand/middleware/immer'; diff --git a/main/database/src/types/apis/backup/create-backup.ts b/database/src/implementations/kb08/types/apis/backup/create-backup.ts similarity index 100% rename from main/database/src/types/apis/backup/create-backup.ts rename to database/src/implementations/kb08/types/apis/backup/create-backup.ts diff --git a/main/database/src/types/apis/backup/restore-backup.ts b/database/src/implementations/kb08/types/apis/backup/restore-backup.ts similarity index 100% rename from main/database/src/types/apis/backup/restore-backup.ts rename to database/src/implementations/kb08/types/apis/backup/restore-backup.ts diff --git a/main/database/src/types/apis/database/create-database.ts b/database/src/implementations/kb08/types/apis/database/create-database.ts similarity index 100% rename from main/database/src/types/apis/database/create-database.ts rename to database/src/implementations/kb08/types/apis/database/create-database.ts diff --git a/release-v5.1/database/src/types/apis/database/get-database.ts b/database/src/implementations/kb08/types/apis/database/get-database.ts similarity index 100% rename from release-v5.1/database/src/types/apis/database/get-database.ts rename to database/src/implementations/kb08/types/apis/database/get-database.ts diff --git a/main/database/src/types/apis/database/list-database.ts b/database/src/implementations/kb08/types/apis/database/list-database.ts similarity index 100% rename from main/database/src/types/apis/database/list-database.ts rename to database/src/implementations/kb08/types/apis/database/list-database.ts diff --git a/release-v5.1/database/src/types/apis/database/version/list.ts b/database/src/implementations/kb08/types/apis/database/version/list.ts similarity index 63% rename from release-v5.1/database/src/types/apis/database/version/list.ts rename to database/src/implementations/kb08/types/apis/database/version/list.ts index a398ea7..b3369b0 100644 --- a/release-v5.1/database/src/types/apis/database/version/list.ts +++ b/database/src/implementations/kb08/types/apis/database/version/list.ts @@ -1,4 +1,4 @@ -import { versionListSchema } from '@/types/schemas/db'; +import { versionListSchema } from '@/implementations/kb08/types/schemas/db'; import * as z from 'zod'; export const response = z.object({ diff --git a/release-v5.1/database/src/types/apis/index.ts b/database/src/implementations/kb08/types/apis/index.ts similarity index 97% rename from release-v5.1/database/src/types/apis/index.ts rename to database/src/implementations/kb08/types/apis/index.ts index 760d34b..168c38d 100644 --- a/release-v5.1/database/src/types/apis/index.ts +++ b/database/src/implementations/kb08/types/apis/index.ts @@ -3,20 +3,20 @@ import { createDocument } from 'zod-openapi'; import * as createDatabaseSchemas from './database/create-database'; export * as createDatabaseSchemas from './database/create-database'; -import * as updateDatabaseSchemas from './database/update-database'; -export * as updateDatabaseSchemas from './database/update-database'; +import * as updateDatabaseSchemas from '@/types/apis/database/update-database'; +export * as updateDatabaseSchemas from '@/types/apis/database/update-database'; -import * as startDatabaseSchemas from './database/start-database'; -export * as startDatabaseSchemas from './database/start-database'; +import * as startDatabaseSchemas from '@/types/apis/database/start-database'; +export * as startDatabaseSchemas from '@/types/apis/database/start-database'; -import * as pauseDatabaseSchemas from './database/pause-database'; -export * as pauseDatabaseSchemas from './database/pause-database'; +import * as pauseDatabaseSchemas from '@/types/apis/database/pause-database'; +export * as pauseDatabaseSchemas from '@/types/apis/database/pause-database'; import * as getDatabaseSchemas from './database/get-database'; export * as getDatabaseSchemas from './database/get-database'; -import * as deleteDatabaseSchemas from './database/delete-database'; -export * as deleteDatabaseSchemas from './database/delete-database'; +import * as deleteDatabaseSchemas from '@/types/apis/database/delete-database'; +export * as deleteDatabaseSchemas from '@/types/apis/database/delete-database'; import * as logsDataSchemas from './logs/data'; export * as logsDataSchemas from './logs/data'; @@ -26,11 +26,11 @@ export * as logsFileSchemas from './logs/file'; import * as databaseVersionListSchemas from './database/version/list'; -import * as enablePublicAccessSchemas from './network/enable-public-access'; -export * as enablePublicAccessSchemas from './network/enable-public-access'; +import * as enablePublicAccessSchemas from '@/types/apis/network/enable-public-access'; +export * as enablePublicAccessSchemas from '@/types/apis/network/enable-public-access'; -import * as disablePublicAccessSchemas from './network/disable-public-access'; -export * as disablePublicAccessSchemas from './network/disable-public-access'; +import * as disablePublicAccessSchemas from '@/types/apis/network/disable-public-access'; +export * as disablePublicAccessSchemas from '@/types/apis/network/disable-public-access'; export const document = createDocument({ openapi: '3.1.0', diff --git a/release-v5.1/database/src/types/apis/logs/data.ts b/database/src/implementations/kb08/types/apis/logs/data.ts similarity index 81% rename from release-v5.1/database/src/types/apis/logs/data.ts rename to database/src/implementations/kb08/types/apis/logs/data.ts index ebe2c1a..3f1bb75 100644 --- a/release-v5.1/database/src/types/apis/logs/data.ts +++ b/database/src/implementations/kb08/types/apis/logs/data.ts @@ -1,6 +1,6 @@ import { z } from 'zod'; -import { LogTypeEnum } from '@/constants/log'; -import { DBTypeEnum } from '@/constants/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; import { logResultSchema } from '@/types/schemas/logs'; export const query = z.object({ diff --git a/release-v5.1/database/src/types/apis/v2alpha/logs/file.ts b/database/src/implementations/kb08/types/apis/logs/file.ts similarity index 77% rename from release-v5.1/database/src/types/apis/v2alpha/logs/file.ts rename to database/src/implementations/kb08/types/apis/logs/file.ts index a51a234..1910e4c 100644 --- a/release-v5.1/database/src/types/apis/v2alpha/logs/file.ts +++ b/database/src/implementations/kb08/types/apis/logs/file.ts @@ -1,6 +1,6 @@ import { z } from 'zod'; -import { LogTypeEnum } from '@/constants/log'; -import { DBTypeEnum } from '@/constants/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; import { logFileItemSchema, logResultSchema } from '@/types/schemas/logs'; export const query = z.object({ diff --git a/release-v5.1/database/src/types/apis/v2alpha/backup/create-backup.ts b/database/src/implementations/kb08/types/apis/v2alpha/backup/create-backup.ts similarity index 77% rename from release-v5.1/database/src/types/apis/v2alpha/backup/create-backup.ts rename to database/src/implementations/kb08/types/apis/v2alpha/backup/create-backup.ts index 1c948ea..b73c75c 100644 --- a/release-v5.1/database/src/types/apis/v2alpha/backup/create-backup.ts +++ b/database/src/implementations/kb08/types/apis/v2alpha/backup/create-backup.ts @@ -1,5 +1,5 @@ import * as z from 'zod'; -import { dbTypeSchema } from '@/types/schemas/v2alpha/db'; +import { dbTypeSchema } from '@/implementations/kb08/types/schemas/v2alpha/db'; export const body = z.object({ backupName: z.string().min(1, 'Backup name is required'), diff --git a/release-v5.1/database/src/types/apis/v2alpha/backup/restore-backup.ts b/database/src/implementations/kb08/types/apis/v2alpha/backup/restore-backup.ts similarity index 89% rename from release-v5.1/database/src/types/apis/v2alpha/backup/restore-backup.ts rename to database/src/implementations/kb08/types/apis/v2alpha/backup/restore-backup.ts index 5815c5b..3e31b5c 100644 --- a/release-v5.1/database/src/types/apis/v2alpha/backup/restore-backup.ts +++ b/database/src/implementations/kb08/types/apis/v2alpha/backup/restore-backup.ts @@ -3,7 +3,7 @@ import { dbTypeSchema, allResourceSchema, kubeBlockClusterTerminationPolicySchema -} from '@/types/schemas/v2alpha/db'; +} from '@/implementations/kb08/types/schemas/v2alpha/db'; export const body = z.object({ backupName: z.string().min(1, 'Backup name is required'), diff --git a/release-v5.1/database/src/types/apis/v2alpha/database/create-database.ts b/database/src/implementations/kb08/types/apis/v2alpha/database/create-database.ts similarity index 68% rename from release-v5.1/database/src/types/apis/v2alpha/database/create-database.ts rename to database/src/implementations/kb08/types/apis/v2alpha/database/create-database.ts index d831ac8..2f4d07c 100644 --- a/release-v5.1/database/src/types/apis/v2alpha/database/create-database.ts +++ b/database/src/implementations/kb08/types/apis/v2alpha/database/create-database.ts @@ -1,5 +1,5 @@ import { z } from 'zod'; -import { dbEditSchema, dbTypeSchema } from '@/types/schemas/v2alpha/db'; +import { dbEditSchema, dbTypeSchema } from '@/implementations/kb08/types/schemas/v2alpha/db'; // Accept main clients' MySQL name without changing release's internal engine names. export const body = dbEditSchema.extend({ diff --git a/release-v5.1/database/src/types/apis/v2alpha/database/get-database.ts b/database/src/implementations/kb08/types/apis/v2alpha/database/get-database.ts similarity index 62% rename from release-v5.1/database/src/types/apis/v2alpha/database/get-database.ts rename to database/src/implementations/kb08/types/apis/v2alpha/database/get-database.ts index 99908e9..8846ac5 100644 --- a/release-v5.1/database/src/types/apis/v2alpha/database/get-database.ts +++ b/database/src/implementations/kb08/types/apis/v2alpha/database/get-database.ts @@ -1,5 +1,5 @@ import * as z from 'zod'; -import { dbDetailSchema } from '@/types/schemas/v2alpha/db'; +import { dbDetailSchema } from '@/implementations/kb08/types/schemas/v2alpha/db'; export const pathParams = z.object({ databaseName: z.string() diff --git a/release-v5.1/database/src/types/apis/v2alpha/database/list-database.ts b/database/src/implementations/kb08/types/apis/v2alpha/database/list-database.ts similarity index 62% rename from release-v5.1/database/src/types/apis/v2alpha/database/list-database.ts rename to database/src/implementations/kb08/types/apis/v2alpha/database/list-database.ts index b5a81cd..1209161 100644 --- a/release-v5.1/database/src/types/apis/v2alpha/database/list-database.ts +++ b/database/src/implementations/kb08/types/apis/v2alpha/database/list-database.ts @@ -1,5 +1,5 @@ import * as z from 'zod'; -import { dbDetailSchema } from '@/types/schemas/v2alpha/db'; +import { dbDetailSchema } from '@/implementations/kb08/types/schemas/v2alpha/db'; export const pathParams = z.object({}); diff --git a/release-v5.1/database/src/types/apis/v2alpha/database/version/list.ts b/database/src/implementations/kb08/types/apis/v2alpha/database/version/list.ts similarity index 63% rename from release-v5.1/database/src/types/apis/v2alpha/database/version/list.ts rename to database/src/implementations/kb08/types/apis/v2alpha/database/version/list.ts index a398ea7..b3369b0 100644 --- a/release-v5.1/database/src/types/apis/v2alpha/database/version/list.ts +++ b/database/src/implementations/kb08/types/apis/v2alpha/database/version/list.ts @@ -1,4 +1,4 @@ -import { versionListSchema } from '@/types/schemas/db'; +import { versionListSchema } from '@/implementations/kb08/types/schemas/db'; import * as z from 'zod'; export const response = z.object({ diff --git a/release-v5.1/database/src/types/apis/v2alpha/index.ts b/database/src/implementations/kb08/types/apis/v2alpha/index.ts similarity index 98% rename from release-v5.1/database/src/types/apis/v2alpha/index.ts rename to database/src/implementations/kb08/types/apis/v2alpha/index.ts index 57f81f3..a040573 100644 --- a/release-v5.1/database/src/types/apis/v2alpha/index.ts +++ b/database/src/implementations/kb08/types/apis/v2alpha/index.ts @@ -12,28 +12,28 @@ import { ErrorCode, createErrorExample } from '@/types/v2alpha/error'; -import { dbEditSchema, dbStatusSchema } from '@/types/schemas/v2alpha/db'; +import { dbEditSchema, dbStatusSchema } from '@/implementations/kb08/types/schemas/v2alpha/db'; import * as createDatabaseSchemas from './database/create-database'; export * as createDatabaseSchemas from './database/create-database'; -import * as updateDatabaseSchemas from './database/update-database'; -export * as updateDatabaseSchemas from './database/update-database'; +import * as updateDatabaseSchemas from '@/types/apis/v2alpha/database/update-database'; +export * as updateDatabaseSchemas from '@/types/apis/v2alpha/database/update-database'; -import * as startDatabaseSchemas from './database/start-database'; -export * as startDatabaseSchemas from './database/start-database'; +import * as startDatabaseSchemas from '@/types/apis/v2alpha/database/start-database'; +export * as startDatabaseSchemas from '@/types/apis/v2alpha/database/start-database'; -import * as pauseDatabaseSchemas from './database/pause-database'; -export * as pauseDatabaseSchemas from './database/pause-database'; +import * as pauseDatabaseSchemas from '@/types/apis/v2alpha/database/pause-database'; +export * as pauseDatabaseSchemas from '@/types/apis/v2alpha/database/pause-database'; -import * as restartDatabaseSchemas from './database/restart-database'; -export * as restartDatabaseSchemas from './database/restart-database'; +import * as restartDatabaseSchemas from '@/types/apis/v2alpha/database/restart-database'; +export * as restartDatabaseSchemas from '@/types/apis/v2alpha/database/restart-database'; import * as getDatabaseSchemas from './database/get-database'; export * as getDatabaseSchemas from './database/get-database'; -import * as deleteDatabaseSchemas from './database/delete-database'; -export * as deleteDatabaseSchemas from './database/delete-database'; +import * as deleteDatabaseSchemas from '@/types/apis/v2alpha/database/delete-database'; +export * as deleteDatabaseSchemas from '@/types/apis/v2alpha/database/delete-database'; import * as logsDataSchemas from './logs/data'; export * as logsDataSchemas from './logs/data'; @@ -44,11 +44,11 @@ export * as logsFileSchemas from './logs/file'; import * as databaseVersionListSchemas from './database/version/list'; export * as databaseVersionListSchemas from './database/version/list'; -import * as enablePublicAccessSchemas from './network/enable-public-access'; -export * as enablePublicAccessSchemas from './network/enable-public-access'; +import * as enablePublicAccessSchemas from '@/types/apis/v2alpha/network/enable-public-access'; +export * as enablePublicAccessSchemas from '@/types/apis/v2alpha/network/enable-public-access'; -import * as disablePublicAccessSchemas from './network/disable-public-access'; -export * as disablePublicAccessSchemas from './network/disable-public-access'; +import * as disablePublicAccessSchemas from '@/types/apis/v2alpha/network/disable-public-access'; +export * as disablePublicAccessSchemas from '@/types/apis/v2alpha/network/disable-public-access'; const getDatabaseResponseJsonSchema = { type: 'object', diff --git a/release-v5.1/database/src/types/apis/v2alpha/logs/data.ts b/database/src/implementations/kb08/types/apis/v2alpha/logs/data.ts similarity index 81% rename from release-v5.1/database/src/types/apis/v2alpha/logs/data.ts rename to database/src/implementations/kb08/types/apis/v2alpha/logs/data.ts index ebe2c1a..3f1bb75 100644 --- a/release-v5.1/database/src/types/apis/v2alpha/logs/data.ts +++ b/database/src/implementations/kb08/types/apis/v2alpha/logs/data.ts @@ -1,6 +1,6 @@ import { z } from 'zod'; -import { LogTypeEnum } from '@/constants/log'; -import { DBTypeEnum } from '@/constants/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; import { logResultSchema } from '@/types/schemas/logs'; export const query = z.object({ diff --git a/release-v5.1/database/src/types/apis/logs/file.ts b/database/src/implementations/kb08/types/apis/v2alpha/logs/file.ts similarity index 77% rename from release-v5.1/database/src/types/apis/logs/file.ts rename to database/src/implementations/kb08/types/apis/v2alpha/logs/file.ts index a51a234..1910e4c 100644 --- a/release-v5.1/database/src/types/apis/logs/file.ts +++ b/database/src/implementations/kb08/types/apis/v2alpha/logs/file.ts @@ -1,6 +1,6 @@ import { z } from 'zod'; -import { LogTypeEnum } from '@/constants/log'; -import { DBTypeEnum } from '@/constants/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; import { logFileItemSchema, logResultSchema } from '@/types/schemas/logs'; export const query = z.object({ diff --git a/release-v5.1/database/src/types/backup.d.ts b/database/src/implementations/kb08/types/backup.d.ts similarity index 90% rename from release-v5.1/database/src/types/backup.d.ts rename to database/src/implementations/kb08/types/backup.d.ts index a0b03bd..e46f5e5 100644 --- a/release-v5.1/database/src/types/backup.d.ts +++ b/database/src/implementations/kb08/types/backup.d.ts @@ -1,5 +1,5 @@ -import { DBStatusEnum, DBTypeEnum, PodStatusEnum } from '@/constants/db'; -import { BackupStatusEnum } from '@/constants/backup'; +import { DBStatusEnum, DBTypeEnum, PodStatusEnum } from '@/implementations/kb08/constants/db'; +import { BackupStatusEnum } from '@/implementations/kb08/constants/backup'; export interface BackupPolicyType { apiVersion: 'dataprotection.kubeblocks.io/v1alpha1'; diff --git a/release-v5.1/database/src/types/cluster.d.ts b/database/src/implementations/kb08/types/cluster.d.ts similarity index 99% rename from release-v5.1/database/src/types/cluster.d.ts rename to database/src/implementations/kb08/types/cluster.d.ts index d5bd1d8..be37a49 100644 --- a/release-v5.1/database/src/types/cluster.d.ts +++ b/database/src/implementations/kb08/types/cluster.d.ts @@ -1,4 +1,4 @@ -import { DBStatusEnum, DBTypeEnum, PodStatusEnum, ReconfigStatus } from '@/constants/db'; +import { DBStatusEnum, DBTypeEnum, PodStatusEnum, ReconfigStatus } from '@/implementations/kb08/constants/db'; export type KbPgClusterType = { apiVersion: 'apps.kubeblocks.io/v1alpha1'; diff --git a/release-v5.1/database/src/types/db.d.ts b/database/src/implementations/kb08/types/db.d.ts similarity index 96% rename from release-v5.1/database/src/types/db.d.ts rename to database/src/implementations/kb08/types/db.d.ts index 3ca87db..34276b3 100644 --- a/release-v5.1/database/src/types/db.d.ts +++ b/database/src/implementations/kb08/types/db.d.ts @@ -1,5 +1,5 @@ -import { BackupStatusEnum, BackupTypeEnum } from '@/constants/backup'; -import { DBStatusEnum, DBTypeEnum } from '@/constants/db'; +import { BackupStatusEnum, BackupTypeEnum } from '@/implementations/kb08/constants/backup'; +import { DBStatusEnum, DBTypeEnum } from '@/implementations/kb08/constants/db'; import type { V1ConfigMap, V1ContainerStatus, @@ -13,7 +13,7 @@ import type { } from '@kubernetes/client-node'; import { AutoBackupFormType } from './backup'; import { KubeBlockClusterTerminationPolicy } from './cluster'; -import { I18nCommonKey } from './i18next'; +import { I18nCommonKey } from '@/types/i18next'; export type DBType = `${DBTypeEnum}`; diff --git a/release-v5.1/database/src/types/log.ts b/database/src/implementations/kb08/types/log.ts similarity index 87% rename from release-v5.1/database/src/types/log.ts rename to database/src/implementations/kb08/types/log.ts index 76f0d24..b1e7268 100644 --- a/release-v5.1/database/src/types/log.ts +++ b/database/src/implementations/kb08/types/log.ts @@ -1,5 +1,5 @@ -import { DBTypeEnum } from '@/constants/db'; -import { LogTypeEnum } from '@/constants/log'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; export interface BaseLogEntry { timestamp: string; diff --git a/release-v5.1/database/src/types/migrate.d.ts b/database/src/implementations/kb08/types/migrate.d.ts similarity index 100% rename from release-v5.1/database/src/types/migrate.d.ts rename to database/src/implementations/kb08/types/migrate.d.ts diff --git a/release-v5.1/database/src/types/schemas/backup.ts b/database/src/implementations/kb08/types/schemas/backup.ts similarity index 92% rename from release-v5.1/database/src/types/schemas/backup.ts rename to database/src/implementations/kb08/types/schemas/backup.ts index c8c56bc..a6e89f8 100644 --- a/release-v5.1/database/src/types/schemas/backup.ts +++ b/database/src/implementations/kb08/types/schemas/backup.ts @@ -1,4 +1,4 @@ -import { BackupTypeEnum, BackupStatusEnum } from '@/constants/backup'; +import { BackupTypeEnum, BackupStatusEnum } from '@/implementations/kb08/constants/backup'; import * as z from 'zod'; export const autoBackupTypeSchema = z.union([ diff --git a/release-v5.1/database/src/types/schemas/db.ts b/database/src/implementations/kb08/types/schemas/db.ts similarity index 100% rename from release-v5.1/database/src/types/schemas/db.ts rename to database/src/implementations/kb08/types/schemas/db.ts diff --git a/release-v5.1/database/src/types/schemas/v2alpha/backup.ts b/database/src/implementations/kb08/types/schemas/v2alpha/backup.ts similarity index 93% rename from release-v5.1/database/src/types/schemas/v2alpha/backup.ts rename to database/src/implementations/kb08/types/schemas/v2alpha/backup.ts index 2650843..1186b4c 100644 --- a/release-v5.1/database/src/types/schemas/v2alpha/backup.ts +++ b/database/src/implementations/kb08/types/schemas/v2alpha/backup.ts @@ -1,4 +1,4 @@ -import { BackupTypeEnum, BackupStatusEnum } from '@/constants/backup'; +import { BackupTypeEnum, BackupStatusEnum } from '@/implementations/kb08/constants/backup'; import * as z from 'zod'; export const autoBackupTypeSchema = z.union([ diff --git a/release-v5.1/database/src/types/schemas/v2alpha/db.ts b/database/src/implementations/kb08/types/schemas/v2alpha/db.ts similarity index 100% rename from release-v5.1/database/src/types/schemas/v2alpha/db.ts rename to database/src/implementations/kb08/types/schemas/v2alpha/db.ts diff --git a/release-v5.1/database/src/types/user.d.ts b/database/src/implementations/kb08/types/user.d.ts similarity index 100% rename from release-v5.1/database/src/types/user.d.ts rename to database/src/implementations/kb08/types/user.d.ts diff --git a/release-v5.1/database/src/utils/adapt.ts b/database/src/implementations/kb08/utils/adapt.ts similarity index 97% rename from release-v5.1/database/src/utils/adapt.ts rename to database/src/implementations/kb08/utils/adapt.ts index 150f17b..05a2165 100644 --- a/release-v5.1/database/src/utils/adapt.ts +++ b/database/src/implementations/kb08/utils/adapt.ts @@ -1,5 +1,5 @@ -import { BACKUP_REMARK_LABEL_KEY, BackupTypeEnum, backupStatusMap } from '@/constants/backup'; -import { DB_REMARK_KEY } from '@/constants/db'; +import { BACKUP_REMARK_LABEL_KEY, BackupTypeEnum, backupStatusMap } from '@/implementations/kb08/constants/backup'; +import { DB_REMARK_KEY } from '@/implementations/kb08/constants/db'; import { DBBackupMethodNameMap, DBComponentNameMap, @@ -9,13 +9,13 @@ import { DBSourceConfigs, MigrationRemark, dbStatusMap -} from '@/constants/db'; -import type { AutoBackupFormType, AutoBackupType, BackupCRItemType } from '@/types/backup'; +} from '@/implementations/kb08/constants/db'; +import type { AutoBackupFormType, AutoBackupType, BackupCRItemType } from '@/implementations/kb08/types/backup'; import type { KbPgClusterType, KubeBlockClusterSpec, KubeBlockOpsRequestType -} from '@/types/cluster'; +} from '@/implementations/kb08/types/cluster'; import type { DBComponentsName, DBDetailType, @@ -26,8 +26,8 @@ import type { OpsRequestItemType, PodDetailType, PodEvent -} from '@/types/db'; -import { InternetMigrationCR, MigrateItemType } from '@/types/migrate'; +} from '../types/db'; +import { InternetMigrationCR, MigrateItemType } from '@/implementations/kb08/types/migrate'; import { convertCronTime, cpuFormatToC, @@ -38,7 +38,7 @@ import { memoryFormatToGi, memoryFormatToMi, storageFormatToNum -} from '@/utils/tools'; +} from '@/implementations/kb08/utils/tools'; import { getReconfigureHistoryConfigurations } from './reconfigureHistory'; import type { CoreV1EventList, V1Pod } from '@kubernetes/client-node'; import dayjs from 'dayjs'; diff --git a/release-v5.1/database/src/utils/backupRemark.ts b/database/src/implementations/kb08/utils/backupRemark.ts similarity index 100% rename from release-v5.1/database/src/utils/backupRemark.ts rename to database/src/implementations/kb08/utils/backupRemark.ts diff --git a/release-v5.1/database/src/utils/database.ts b/database/src/implementations/kb08/utils/database.ts similarity index 98% rename from release-v5.1/database/src/utils/database.ts rename to database/src/implementations/kb08/utils/database.ts index 01ca251..4419247 100644 --- a/release-v5.1/database/src/utils/database.ts +++ b/database/src/implementations/kb08/utils/database.ts @@ -1,7 +1,7 @@ import * as k8s from '@kubernetes/client-node'; -import { KubeFileSystem } from './kubeFileSystem'; -import { DBComponentsName, DBEditType, DBType } from '@/types/db'; -import { DBComponentNameMap, DBTypeEnum, RedisHAConfig } from '@/constants/db'; +import { KubeFileSystem } from '@/utils/kubeFileSystem'; +import { DBComponentsName, DBEditType, DBType } from '@/implementations/kb08/types/db'; +import { DBComponentNameMap, DBTypeEnum, RedisHAConfig } from '@/implementations/kb08/constants/db'; import { formatNumber, str2Num } from './tools'; const base = { diff --git a/release-v5.1/database/src/utils/healthz.ts b/database/src/implementations/kb08/utils/healthz.ts similarity index 85% rename from release-v5.1/database/src/utils/healthz.ts rename to database/src/implementations/kb08/utils/healthz.ts index 27248a8..94bb1eb 100644 --- a/release-v5.1/database/src/utils/healthz.ts +++ b/database/src/implementations/kb08/utils/healthz.ts @@ -1,4 +1,4 @@ -import { Config } from '@/config'; +import { Config } from '@/implementations/kb08/config'; export const HEALTHZ_SERVICE = 'database'; diff --git a/release-v5.1/database/src/utils/json2Yaml.ts b/database/src/implementations/kb08/utils/json2Yaml.ts similarity index 98% rename from release-v5.1/database/src/utils/json2Yaml.ts rename to database/src/implementations/kb08/utils/json2Yaml.ts index 1ec8fd1..bb2e9e8 100644 --- a/release-v5.1/database/src/utils/json2Yaml.ts +++ b/database/src/implementations/kb08/utils/json2Yaml.ts @@ -1,4 +1,4 @@ -import { BACKUP_LABEL_KEY, BACKUP_REMARK_LABEL_KEY } from '@/constants/backup'; +import { BACKUP_LABEL_KEY, BACKUP_REMARK_LABEL_KEY } from '@/implementations/kb08/constants/backup'; import { CloudMigraionLabel, DBComponentNameMap, @@ -9,21 +9,21 @@ import { crLabelKey, defaultDBEditValue, sealafDeployKey -} from '@/constants/db'; -import { StorageClassName } from '@/store/env'; -import type { DBDetailType, DBEditType, DBType } from '@/types/db'; -import { MigrateForm } from '@/types/migrate'; -import { encodeToHex, str2Num } from '@/utils/tools'; +} from '@/implementations/kb08/constants/db'; +import { StorageClassName } from '@/implementations/kb08/store/env'; +import type { DBDetailType, DBEditType, DBType } from '@/implementations/kb08/types/db'; +import { MigrateForm } from '@/implementations/kb08/types/migrate'; +import { encodeToHex, str2Num } from '@/implementations/kb08/utils/tools'; import dayjs from 'dayjs'; import yaml from 'js-yaml'; import { getUserNamespace } from './user'; import { V1StatefulSet } from '@kubernetes/client-node'; import { customAlphabet } from 'nanoid'; -import { SwitchMsData } from '@/pages/api/pod/switchPodMs'; +import { SwitchMsData } from '@/implementations/kb08/pages/api/pod/switchPodMs'; import { distributeResources } from './database'; import { getPostgreSQLConfigSpecMetadata, toKubeBlocksParameterPairs } from './parameterChanges'; import z from 'zod'; -import { backupBaseSchema } from '@/types/schemas/backup'; +import { backupBaseSchema } from '@/implementations/kb08/types/schemas/backup'; const nanoid = customAlphabet('abcdefghijklmnopqrstuvwxyz', 5); diff --git a/release-v5.1/database/src/utils/logParsers/LogParser.ts b/database/src/implementations/kb08/utils/logParsers/LogParser.ts similarity index 94% rename from release-v5.1/database/src/utils/logParsers/LogParser.ts rename to database/src/implementations/kb08/utils/logParsers/LogParser.ts index 653ed69..5b9a1a3 100644 --- a/release-v5.1/database/src/utils/logParsers/LogParser.ts +++ b/database/src/implementations/kb08/utils/logParsers/LogParser.ts @@ -1,5 +1,5 @@ -import { DBTypeEnum } from '@/constants/db'; -import { LogTypeEnum } from '@/constants/log'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; import { BaseLogEntry, ILogParser, @@ -7,7 +7,7 @@ import { MongoLogEntry, PgLogEntry, RedisLogEntry -} from '@/types/log'; +} from '@/implementations/kb08/types/log'; import * as k8s from '@kubernetes/client-node'; import { MongoLogParser } from './MongoLogParser'; import { PostgresLogParser } from './PostgresLogParser'; diff --git a/release-v5.1/database/src/utils/logParsers/MongoLogParser.ts b/database/src/implementations/kb08/utils/logParsers/MongoLogParser.ts similarity index 98% rename from release-v5.1/database/src/utils/logParsers/MongoLogParser.ts rename to database/src/implementations/kb08/utils/logParsers/MongoLogParser.ts index f11546c..d57086d 100644 --- a/release-v5.1/database/src/utils/logParsers/MongoLogParser.ts +++ b/database/src/implementations/kb08/utils/logParsers/MongoLogParser.ts @@ -1,5 +1,5 @@ import * as k8s from '@kubernetes/client-node'; -import { ILogParser, LogParserParams, LogResult, MongoLogEntry } from '@/types/log'; +import { ILogParser, LogParserParams, LogResult, MongoLogEntry } from '@/implementations/kb08/types/log'; export class MongoLogParser implements ILogParser { private static readonly MONGO_LOG_PATTERN = diff --git a/release-v5.1/database/src/utils/logParsers/MysqlLogParser.ts b/database/src/implementations/kb08/utils/logParsers/MysqlLogParser.ts similarity index 98% rename from release-v5.1/database/src/utils/logParsers/MysqlLogParser.ts rename to database/src/implementations/kb08/utils/logParsers/MysqlLogParser.ts index 47c6f50..b856a55 100644 --- a/release-v5.1/database/src/utils/logParsers/MysqlLogParser.ts +++ b/database/src/implementations/kb08/utils/logParsers/MysqlLogParser.ts @@ -1,5 +1,5 @@ -import { LogTypeEnum } from '@/constants/log'; -import { ILogParser, LogParserParams, LogResult, MysqlLogEntry } from '@/types/log'; +import { LogTypeEnum } from '@/implementations/kb08/constants/log'; +import { ILogParser, LogParserParams, LogResult, MysqlLogEntry } from '@/implementations/kb08/types/log'; import { KubeFileSystem } from '@/utils/kubeFileSystem'; import * as k8s from '@kubernetes/client-node'; diff --git a/release-v5.1/database/src/utils/logParsers/PostgresLogParser.ts b/database/src/implementations/kb08/utils/logParsers/PostgresLogParser.ts similarity index 99% rename from release-v5.1/database/src/utils/logParsers/PostgresLogParser.ts rename to database/src/implementations/kb08/utils/logParsers/PostgresLogParser.ts index 0689fae..bf235d3 100644 --- a/release-v5.1/database/src/utils/logParsers/PostgresLogParser.ts +++ b/database/src/implementations/kb08/utils/logParsers/PostgresLogParser.ts @@ -1,5 +1,5 @@ import * as k8s from '@kubernetes/client-node'; -import { ILogParser, LogParserParams, LogResult, PgLogEntry } from '@/types/log'; +import { ILogParser, LogParserParams, LogResult, PgLogEntry } from '@/implementations/kb08/types/log'; import { KubeFileSystem } from '@/utils/kubeFileSystem'; import Papa from 'papaparse'; diff --git a/release-v5.1/database/src/utils/logParsers/RedisLogParser.ts b/database/src/implementations/kb08/utils/logParsers/RedisLogParser.ts similarity index 98% rename from release-v5.1/database/src/utils/logParsers/RedisLogParser.ts rename to database/src/implementations/kb08/utils/logParsers/RedisLogParser.ts index d6e3930..ca8dddf 100644 --- a/release-v5.1/database/src/utils/logParsers/RedisLogParser.ts +++ b/database/src/implementations/kb08/utils/logParsers/RedisLogParser.ts @@ -1,5 +1,5 @@ import * as k8s from '@kubernetes/client-node'; -import { ILogParser, LogParserParams, LogResult, RedisLogEntry } from '@/types/log'; +import { ILogParser, LogParserParams, LogResult, RedisLogEntry } from '@/implementations/kb08/types/log'; import { KubeFileSystem } from '@/utils/kubeFileSystem'; import dayjs from 'dayjs'; diff --git a/release-v5.1/database/src/utils/parameterChanges.ts b/database/src/implementations/kb08/utils/parameterChanges.ts similarity index 99% rename from release-v5.1/database/src/utils/parameterChanges.ts rename to database/src/implementations/kb08/utils/parameterChanges.ts index d242bcd..70eddb3 100644 --- a/release-v5.1/database/src/utils/parameterChanges.ts +++ b/database/src/implementations/kb08/utils/parameterChanges.ts @@ -1,4 +1,4 @@ -import type { DBEditType } from '@/types/db'; +import type { DBEditType } from '@/implementations/kb08/types/db'; type ParameterConfig = NonNullable; diff --git a/release-v5.1/database/src/utils/parameterConfig.ts b/database/src/implementations/kb08/utils/parameterConfig.ts similarity index 96% rename from release-v5.1/database/src/utils/parameterConfig.ts rename to database/src/implementations/kb08/utils/parameterConfig.ts index 37891b6..ef4c78c 100644 --- a/release-v5.1/database/src/utils/parameterConfig.ts +++ b/database/src/implementations/kb08/utils/parameterConfig.ts @@ -1,6 +1,6 @@ -import { DBReconfigureMap } from '@/constants/db'; -import type { DBEditType } from '@/types/db'; -import { flattenObject, parseConfig, parseRedisConfig } from '@/utils/tools'; +import { DBReconfigureMap } from '@/implementations/kb08/constants/db'; +import type { DBEditType } from '@/implementations/kb08/types/db'; +import { flattenObject, parseConfig, parseRedisConfig } from '@/implementations/kb08/utils/tools'; import { CoreV1Api, CustomObjectsApi, PatchUtils } from '@kubernetes/client-node'; import { areParameterValuesApplied, diff --git a/release-v5.1/database/src/utils/parameterHistory.ts b/database/src/implementations/kb08/utils/parameterHistory.ts similarity index 97% rename from release-v5.1/database/src/utils/parameterHistory.ts rename to database/src/implementations/kb08/utils/parameterHistory.ts index 5919702..58426ab 100644 --- a/release-v5.1/database/src/utils/parameterHistory.ts +++ b/database/src/implementations/kb08/utils/parameterHistory.ts @@ -4,8 +4,8 @@ import { DBParameterHistoryLabel, DBReconfigStatusMap, ReconfigStatus -} from '@/constants/db'; -import type { DBType, OpsRequestItemType } from '@/types/db'; +} from '@/implementations/kb08/constants/db'; +import type { DBType, OpsRequestItemType } from '@/implementations/kb08/types/db'; import type { CoreV1Api, V1ConfigMap } from '@kubernetes/client-node'; import { customAlphabet } from 'nanoid'; import type { ParameterDifference } from './parameterChanges'; diff --git a/release-v5.1/database/src/utils/reconfigureHistory.ts b/database/src/implementations/kb08/utils/reconfigureHistory.ts similarity index 100% rename from release-v5.1/database/src/utils/reconfigureHistory.ts rename to database/src/implementations/kb08/utils/reconfigureHistory.ts diff --git a/release-v5.1/database/src/utils/tools.ts b/database/src/implementations/kb08/utils/tools.ts similarity index 98% rename from release-v5.1/database/src/utils/tools.ts rename to database/src/implementations/kb08/utils/tools.ts index 6884bdf..b51fb46 100644 --- a/release-v5.1/database/src/utils/tools.ts +++ b/database/src/implementations/kb08/utils/tools.ts @@ -1,17 +1,17 @@ import { I18nCommonKey } from '@/types/i18next'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { addHours, format, set, startOfDay } from 'date-fns'; import dayjs from 'dayjs'; import utc from 'dayjs/plugin/utc'; import timezone from 'dayjs/plugin/timezone'; import { useTranslation } from 'next-i18next'; -import { DBTypeEnum } from '@/constants/db'; +import { DBTypeEnum } from '@/implementations/kb08/constants/db'; dayjs.extend(utc); dayjs.extend(timezone); import yaml from 'js-yaml'; import ini from 'ini'; -import { DBType, PodDetailType } from '@/types/db'; +import { DBType, PodDetailType } from '@/implementations/kb08/types/db'; export const formatTime = (time: string | number | Date, format = 'YYYY-MM-DD HH:mm:ss') => { return dayjs(time).tz('Asia/Shanghai').format(format); diff --git a/release-v5.1/database/src/utils/user.ts b/database/src/implementations/kb08/utils/user.ts similarity index 100% rename from release-v5.1/database/src/utils/user.ts rename to database/src/implementations/kb08/utils/user.ts diff --git a/release-v5.1/database/src/utils/vlogsTime.ts b/database/src/implementations/kb08/utils/vlogsTime.ts similarity index 100% rename from release-v5.1/database/src/utils/vlogsTime.ts rename to database/src/implementations/kb08/utils/vlogsTime.ts diff --git a/main/database/src/pages/404.tsx b/database/src/implementations/kb09/pages/404.tsx similarity index 100% rename from main/database/src/pages/404.tsx rename to database/src/implementations/kb09/pages/404.tsx diff --git a/main/database/src/pages/_app.tsx b/database/src/implementations/kb09/pages/_app.tsx similarity index 95% rename from main/database/src/pages/_app.tsx rename to database/src/implementations/kb09/pages/_app.tsx index 4c24cbe..6bb04dc 100644 --- a/main/database/src/pages/_app.tsx +++ b/database/src/implementations/kb09/pages/_app.tsx @@ -11,14 +11,10 @@ import throttle from 'lodash/throttle'; import { appWithTranslation, useTranslation } from 'next-i18next'; import type { AppContext, AppInitialProps, AppProps } from 'next/app'; import Head from 'next/head'; -import Router, { useRouter } from 'next/router'; -import NProgress from 'nprogress'; +import { useRouter } from 'next/router'; import { useEffect, useState, useCallback, ComponentProps } from 'react'; import { EVENT_NAME } from '@labring/sealos-desktop-sdk'; import { createSealosApp, sealosApp } from '@labring/sealos-desktop-sdk/app'; -import '@labring/sealos-driver-sdk/src/driver.css'; -import '@/styles/reset.scss'; -import 'nprogress/nprogress.css'; import Script from 'next/script'; import App from 'next/app'; import { useUserStore } from '@/store/user'; @@ -33,9 +29,6 @@ import { useClientAppConfig } from '@/hooks/useClientAppConfig'; import { QuotaGuardProvider, type SupportedLang } from '@labring/sealos-shared-sdk'; //Binding events. -Router.events.on('routeChangeStart', () => NProgress.start()); -Router.events.on('routeChangeComplete', () => NProgress.done()); -Router.events.on('routeChangeError', () => NProgress.done()); // Create a client const queryClient = new QueryClient({ @@ -304,7 +297,9 @@ MyApp.getInitialProps = async (context: AppContext): Promise ); } - -export async function getServerSideProps(content: any) { - return { - props: { - ...(await serviceSideProps(content)) - } - }; -} diff --git a/main/database/src/pages/db/detail/components/AppBaseInfo.tsx b/database/src/implementations/kb09/pages/db/detail/components/AppBaseInfo.tsx similarity index 99% rename from main/database/src/pages/db/detail/components/AppBaseInfo.tsx rename to database/src/implementations/kb09/pages/db/detail/components/AppBaseInfo.tsx index 8126d37..032090a 100644 --- a/main/database/src/pages/db/detail/components/AppBaseInfo.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/AppBaseInfo.tsx @@ -47,7 +47,7 @@ import { Text, useDisclosure } from '@chakra-ui/react'; -import { CurrencySymbol, MyTooltip, useMessage } from '@sealos/ui'; +import { CurrencySymbol, MyTooltip, useMessage } from '@labring/sealos-chakra-ui'; import { track } from '@labring/sealos-gtm-sdk'; import { useQuery } from '@tanstack/react-query'; import { pick } from 'lodash'; diff --git a/main/database/src/pages/db/detail/components/BackupModal.tsx b/database/src/implementations/kb09/pages/db/detail/components/BackupModal.tsx similarity index 99% rename from main/database/src/pages/db/detail/components/BackupModal.tsx rename to database/src/implementations/kb09/pages/db/detail/components/BackupModal.tsx index 5789661..d1476db 100644 --- a/main/database/src/pages/db/detail/components/BackupModal.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/BackupModal.tsx @@ -20,7 +20,7 @@ import { ModalOverlay, Switch } from '@chakra-ui/react'; -import { MySelect, Tabs, useMessage } from '@sealos/ui'; +import { MySelect, Tabs, useMessage } from '@labring/sealos-chakra-ui'; import { useMutation, useQuery } from '@tanstack/react-query'; import { customAlphabet } from 'nanoid'; import { useTranslation } from 'next-i18next'; diff --git a/main/database/src/pages/db/detail/components/BackupTable.tsx b/database/src/implementations/kb09/pages/db/detail/components/BackupTable.tsx similarity index 99% rename from main/database/src/pages/db/detail/components/BackupTable.tsx rename to database/src/implementations/kb09/pages/db/detail/components/BackupTable.tsx index b7a932c..17b2723 100644 --- a/main/database/src/pages/db/detail/components/BackupTable.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/BackupTable.tsx @@ -21,7 +21,7 @@ import { Tr, useDisclosure } from '@chakra-ui/react'; -import { MyTooltip, useMessage } from '@sealos/ui'; +import { MyTooltip, useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import dayjs from 'dayjs'; import { useTranslation } from 'next-i18next'; diff --git a/main/database/src/pages/db/detail/components/DataImport.tsx b/database/src/implementations/kb09/pages/db/detail/components/DataImport.tsx similarity index 100% rename from main/database/src/pages/db/detail/components/DataImport.tsx rename to database/src/implementations/kb09/pages/db/detail/components/DataImport.tsx diff --git a/main/database/src/pages/db/detail/components/DelModal.tsx b/database/src/implementations/kb09/pages/db/detail/components/DelModal.tsx similarity index 98% rename from main/database/src/pages/db/detail/components/DelModal.tsx rename to database/src/implementations/kb09/pages/db/detail/components/DelModal.tsx index e28c36d..a60d9cf 100644 --- a/main/database/src/pages/db/detail/components/DelModal.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/DelModal.tsx @@ -15,7 +15,7 @@ import { ModalHeader, ModalOverlay } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { track } from '@labring/sealos-gtm-sdk'; import { useTranslation } from 'next-i18next'; import { useCallback, useEffect, useRef, useState } from 'react'; diff --git a/main/database/src/pages/db/detail/components/DumpImport/index.tsx b/database/src/implementations/kb09/pages/db/detail/components/DumpImport/index.tsx similarity index 99% rename from main/database/src/pages/db/detail/components/DumpImport/index.tsx rename to database/src/implementations/kb09/pages/db/detail/components/DumpImport/index.tsx index c8b7c5b..e72bd71 100644 --- a/main/database/src/pages/db/detail/components/DumpImport/index.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/DumpImport/index.tsx @@ -31,7 +31,7 @@ import { Text, useDisclosure } from '@chakra-ui/react'; -import { AutoComplete, useMessage } from '@sealos/ui'; +import { AutoComplete, useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import { useTranslation } from 'next-i18next'; import { useState } from 'react'; diff --git a/main/database/src/pages/db/detail/components/ErrorLog/RunTimeLog.tsx b/database/src/implementations/kb09/pages/db/detail/components/ErrorLog/RunTimeLog.tsx similarity index 100% rename from main/database/src/pages/db/detail/components/ErrorLog/RunTimeLog.tsx rename to database/src/implementations/kb09/pages/db/detail/components/ErrorLog/RunTimeLog.tsx diff --git a/main/database/src/pages/db/detail/components/ErrorLog/index.tsx b/database/src/implementations/kb09/pages/db/detail/components/ErrorLog/index.tsx similarity index 100% rename from main/database/src/pages/db/detail/components/ErrorLog/index.tsx rename to database/src/implementations/kb09/pages/db/detail/components/ErrorLog/index.tsx diff --git a/main/database/src/pages/db/detail/components/Header.tsx b/database/src/implementations/kb09/pages/db/detail/components/Header.tsx similarity index 99% rename from main/database/src/pages/db/detail/components/Header.tsx rename to database/src/implementations/kb09/pages/db/detail/components/Header.tsx index 2833023..7cb1bcb 100644 --- a/main/database/src/pages/db/detail/components/Header.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/Header.tsx @@ -17,7 +17,7 @@ import { Skeleton, useDisclosure } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { useTranslation } from 'next-i18next'; import dynamic from 'next/dynamic'; import { useRouter } from 'next/router'; diff --git a/release-v5.1/database/src/pages/db/detail/components/LogsModal.tsx b/database/src/implementations/kb09/pages/db/detail/components/LogsModal.tsx similarity index 99% rename from release-v5.1/database/src/pages/db/detail/components/LogsModal.tsx rename to database/src/implementations/kb09/pages/db/detail/components/LogsModal.tsx index 77e88a5..a3a0d88 100644 --- a/release-v5.1/database/src/pages/db/detail/components/LogsModal.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/LogsModal.tsx @@ -15,7 +15,7 @@ import { ModalOverlay, useTheme } from '@chakra-ui/react'; -import { SealosMenu } from '@sealos/ui'; +import { SealosMenu } from '@labring/sealos-chakra-ui'; import { default as AnsiUp } from 'ansi_up'; import { useTranslation } from 'next-i18next'; import { useCallback, useEffect, useMemo, useRef, useState } from 'react'; diff --git a/main/database/src/pages/db/detail/components/Migrate/LogsModal.tsx b/database/src/implementations/kb09/pages/db/detail/components/Migrate/LogsModal.tsx similarity index 98% rename from main/database/src/pages/db/detail/components/Migrate/LogsModal.tsx rename to database/src/implementations/kb09/pages/db/detail/components/Migrate/LogsModal.tsx index c2b0615..646128a 100644 --- a/main/database/src/pages/db/detail/components/Migrate/LogsModal.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/Migrate/LogsModal.tsx @@ -1,7 +1,7 @@ import { getLogByNameAndContainerName } from '@/api/migrate'; import MyIcon from '@/components/Icon'; import { useLoading } from '@/hooks/useLoading'; -import styles from '@/pages/db/detail/index.module.scss'; +import styles from '@/implementations/kb09/pages/db/detail/index.module.scss'; import { streamFetch } from '@/services/streamFetch'; import { downLoadBold } from '@/utils/tools'; import { ChevronDownIcon } from '@chakra-ui/icons'; @@ -17,7 +17,7 @@ import { ModalOverlay, useTheme } from '@chakra-ui/react'; -import { SealosMenu } from '@sealos/ui'; +import { SealosMenu } from '@labring/sealos-chakra-ui'; import { default as AnsiUp } from 'ansi_up'; import { useTranslation } from 'next-i18next'; import { useCallback, useEffect, useMemo, useRef, useState } from 'react'; diff --git a/main/database/src/pages/db/detail/components/Migrate/MigrateStatus.tsx b/database/src/implementations/kb09/pages/db/detail/components/Migrate/MigrateStatus.tsx similarity index 100% rename from main/database/src/pages/db/detail/components/Migrate/MigrateStatus.tsx rename to database/src/implementations/kb09/pages/db/detail/components/Migrate/MigrateStatus.tsx diff --git a/main/database/src/pages/db/detail/components/Migrate/Table.tsx b/database/src/implementations/kb09/pages/db/detail/components/Migrate/Table.tsx similarity index 99% rename from main/database/src/pages/db/detail/components/Migrate/Table.tsx rename to database/src/implementations/kb09/pages/db/detail/components/Migrate/Table.tsx index 58ca641..1d124a1 100644 --- a/main/database/src/pages/db/detail/components/Migrate/Table.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/Migrate/Table.tsx @@ -16,7 +16,7 @@ import { Thead, Tr } from '@chakra-ui/react'; -import { MyTooltip, useMessage } from '@sealos/ui'; +import { MyTooltip, useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import dayjs from 'dayjs'; import { useTranslation } from 'next-i18next'; diff --git a/main/database/src/pages/db/detail/components/Migrate/empty.module.scss b/database/src/implementations/kb09/pages/db/detail/components/Migrate/empty.module.scss similarity index 100% rename from main/database/src/pages/db/detail/components/Migrate/empty.module.scss rename to database/src/implementations/kb09/pages/db/detail/components/Migrate/empty.module.scss diff --git a/main/database/src/pages/db/detail/components/Migrate/empty.tsx b/database/src/implementations/kb09/pages/db/detail/components/Migrate/empty.tsx similarity index 100% rename from main/database/src/pages/db/detail/components/Migrate/empty.tsx rename to database/src/implementations/kb09/pages/db/detail/components/Migrate/empty.tsx diff --git a/main/database/src/pages/db/detail/components/Monitor/ChartTemplate.tsx b/database/src/implementations/kb09/pages/db/detail/components/Monitor/ChartTemplate.tsx similarity index 100% rename from main/database/src/pages/db/detail/components/Monitor/ChartTemplate.tsx rename to database/src/implementations/kb09/pages/db/detail/components/Monitor/ChartTemplate.tsx diff --git a/main/database/src/pages/db/detail/components/Monitor/RunningTime.tsx b/database/src/implementations/kb09/pages/db/detail/components/Monitor/RunningTime.tsx similarity index 100% rename from main/database/src/pages/db/detail/components/Monitor/RunningTime.tsx rename to database/src/implementations/kb09/pages/db/detail/components/Monitor/RunningTime.tsx diff --git a/main/database/src/pages/db/detail/components/Monitor/index.tsx b/database/src/implementations/kb09/pages/db/detail/components/Monitor/index.tsx similarity index 99% rename from main/database/src/pages/db/detail/components/Monitor/index.tsx rename to database/src/implementations/kb09/pages/db/detail/components/Monitor/index.tsx index 9b09ebd..a6c5714 100644 --- a/main/database/src/pages/db/detail/components/Monitor/index.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/Monitor/index.tsx @@ -7,7 +7,7 @@ import RunningTime from './RunningTime'; import { DBTypeEnum } from '@/constants/db'; import dayjs from 'dayjs'; import { useTranslation } from 'next-i18next'; -import { Tabs } from '@sealos/ui'; +import { Tabs } from '@labring/sealos-chakra-ui'; enum MonitorType { resources = 'resources', diff --git a/main/database/src/pages/db/detail/components/OperationLog.tsx b/database/src/implementations/kb09/pages/db/detail/components/OperationLog.tsx similarity index 100% rename from main/database/src/pages/db/detail/components/OperationLog.tsx rename to database/src/implementations/kb09/pages/db/detail/components/OperationLog.tsx diff --git a/release-v5.1/database/src/pages/db/detail/components/PodDetailModal.tsx b/database/src/implementations/kb09/pages/db/detail/components/PodDetailModal.tsx similarity index 99% rename from release-v5.1/database/src/pages/db/detail/components/PodDetailModal.tsx rename to database/src/implementations/kb09/pages/db/detail/components/PodDetailModal.tsx index 6ea692c..68e8ccf 100644 --- a/release-v5.1/database/src/pages/db/detail/components/PodDetailModal.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/PodDetailModal.tsx @@ -22,7 +22,7 @@ import { useDisclosure, useTheme } from '@chakra-ui/react'; -import { SealosMenu, useMessage } from '@sealos/ui'; +import { SealosMenu, useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import { useTranslation } from 'next-i18next'; import React, { useCallback, useEffect, useRef, useState } from 'react'; diff --git a/main/database/src/pages/db/detail/components/Pods.tsx b/database/src/implementations/kb09/pages/db/detail/components/Pods.tsx similarity index 99% rename from main/database/src/pages/db/detail/components/Pods.tsx rename to database/src/implementations/kb09/pages/db/detail/components/Pods.tsx index 37c1133..2f1db25 100644 --- a/main/database/src/pages/db/detail/components/Pods.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/Pods.tsx @@ -18,7 +18,7 @@ import { Thead, Tr } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import { useTranslation } from 'next-i18next'; import dynamic from 'next/dynamic'; diff --git a/main/database/src/pages/db/detail/components/Reconfigure/ConfigTable.tsx b/database/src/implementations/kb09/pages/db/detail/components/Reconfigure/ConfigTable.tsx similarity index 99% rename from main/database/src/pages/db/detail/components/Reconfigure/ConfigTable.tsx rename to database/src/implementations/kb09/pages/db/detail/components/Reconfigure/ConfigTable.tsx index c260285..2a1a795 100644 --- a/main/database/src/pages/db/detail/components/Reconfigure/ConfigTable.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/Reconfigure/ConfigTable.tsx @@ -13,7 +13,7 @@ import React, { useState } from 'react'; import { useFieldArray, useForm, useWatch } from 'react-hook-form'; -import { MySelect } from '@sealos/ui'; +import { MySelect } from '@labring/sealos-chakra-ui'; export interface ConfigItem { key: string; diff --git a/main/database/src/pages/db/detail/components/Reconfigure/History.tsx b/database/src/implementations/kb09/pages/db/detail/components/Reconfigure/History.tsx similarity index 100% rename from main/database/src/pages/db/detail/components/Reconfigure/History.tsx rename to database/src/implementations/kb09/pages/db/detail/components/Reconfigure/History.tsx diff --git a/main/database/src/pages/db/detail/components/Reconfigure/index.tsx b/database/src/implementations/kb09/pages/db/detail/components/Reconfigure/index.tsx similarity index 99% rename from main/database/src/pages/db/detail/components/Reconfigure/index.tsx rename to database/src/implementations/kb09/pages/db/detail/components/Reconfigure/index.tsx index a6630cf..5d724c6 100644 --- a/main/database/src/pages/db/detail/components/Reconfigure/index.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/Reconfigure/index.tsx @@ -17,7 +17,7 @@ import { Text, useDisclosure } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import { useTranslation } from 'next-i18next'; import { useRouter } from 'next/router'; diff --git a/main/database/src/pages/db/detail/components/RestoreModal.tsx b/database/src/implementations/kb09/pages/db/detail/components/RestoreModal.tsx similarity index 98% rename from main/database/src/pages/db/detail/components/RestoreModal.tsx rename to database/src/implementations/kb09/pages/db/detail/components/RestoreModal.tsx index acb5a98..5b72436 100644 --- a/main/database/src/pages/db/detail/components/RestoreModal.tsx +++ b/database/src/implementations/kb09/pages/db/detail/components/RestoreModal.tsx @@ -21,7 +21,7 @@ import { ModalHeader, ModalOverlay } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { useMutation } from '@tanstack/react-query'; import { customAlphabet } from 'nanoid'; import { useTranslation } from 'next-i18next'; diff --git a/main/database/src/pages/db/detail/components/StopBackupModal.tsx b/database/src/implementations/kb09/pages/db/detail/components/StopBackupModal.tsx similarity index 100% rename from main/database/src/pages/db/detail/components/StopBackupModal.tsx rename to database/src/implementations/kb09/pages/db/detail/components/StopBackupModal.tsx diff --git a/main/database/src/pages/db/detail/components/UpdateModal.tsx b/database/src/implementations/kb09/pages/db/detail/components/UpdateModal.tsx similarity index 100% rename from main/database/src/pages/db/detail/components/UpdateModal.tsx rename to database/src/implementations/kb09/pages/db/detail/components/UpdateModal.tsx diff --git a/main/database/src/pages/db/detail/components/empty.module.scss b/database/src/implementations/kb09/pages/db/detail/components/empty.module.scss similarity index 100% rename from main/database/src/pages/db/detail/components/empty.module.scss rename to database/src/implementations/kb09/pages/db/detail/components/empty.module.scss diff --git a/main/database/src/pages/db/detail/components/empty.tsx b/database/src/implementations/kb09/pages/db/detail/components/empty.tsx similarity index 100% rename from main/database/src/pages/db/detail/components/empty.tsx rename to database/src/implementations/kb09/pages/db/detail/components/empty.tsx diff --git a/main/database/src/pages/db/detail/index.module.scss b/database/src/implementations/kb09/pages/db/detail/index.module.scss similarity index 100% rename from main/database/src/pages/db/detail/index.module.scss rename to database/src/implementations/kb09/pages/db/detail/index.module.scss diff --git a/database/src/implementations/kb09/pages/db/detail/index.server.ts b/database/src/implementations/kb09/pages/db/detail/index.server.ts new file mode 100644 index 0000000..9eea5a5 --- /dev/null +++ b/database/src/implementations/kb09/pages/db/detail/index.server.ts @@ -0,0 +1,10 @@ +import { serviceSideProps } from '@/utils/i18n'; +export async function getServerSideProps(context: any) { + const dbType = context.query?.dbType || ''; + const dbName = context.query?.name || ''; + const listType = context.query?.listType || 'overview'; + + return { + props: { ...(await serviceSideProps(context)), dbName, listType, dbType } + }; +} diff --git a/main/database/src/pages/db/detail/index.tsx b/database/src/implementations/kb09/pages/db/detail/index.tsx similarity index 96% rename from main/database/src/pages/db/detail/index.tsx rename to database/src/implementations/kb09/pages/db/detail/index.tsx index fc18202..ec7b119 100644 --- a/main/database/src/pages/db/detail/index.tsx +++ b/database/src/implementations/kb09/pages/db/detail/index.tsx @@ -2,9 +2,8 @@ import { useDBStore } from '@/store/db'; import { useClientAppConfig } from '@/hooks/useClientAppConfig'; import { useGlobalStore } from '@/store/global'; import { DBType } from '@/types/db'; -import { serviceSideProps } from '@/utils/i18n'; import { Box, Flex, Skeleton, SkeletonText, Text, useMediaQuery } from '@chakra-ui/react'; -import { MyTooltip, useMessage } from '@sealos/ui'; +import { MyTooltip, useMessage } from '@labring/sealos-chakra-ui'; import { track } from '@labring/sealos-gtm-sdk'; import { useQuery } from '@tanstack/react-query'; import { useTranslation } from 'next-i18next'; @@ -17,7 +16,7 @@ import Monitor from './components/Monitor'; import Pods from './components/Pods'; import { I18nCommonKey } from '@/types/i18next'; import ReconfigureTable from './components/Reconfigure/index'; -import ErrorLog from '@/pages/db/detail/components/ErrorLog'; +import ErrorLog from '@/implementations/kb09/pages/db/detail/components/ErrorLog/index'; import MyIcon from '@/components/Icon'; import { BackupSupportedDBTypeList } from '@/constants/db'; import DataImport from './components/DataImport'; @@ -363,13 +362,3 @@ const AppDetail = ({ }; export default AppDetail; - -export async function getServerSideProps(context: any) { - const dbType = context.query?.dbType || ''; - const dbName = context.query?.name || ''; - const listType = context.query?.listType || TabEnum.Overview; - - return { - props: { ...(await serviceSideProps(context)), dbName, listType, dbType } - }; -} diff --git a/main/database/src/pages/db/edit/components/Form.tsx b/database/src/implementations/kb09/pages/db/edit/components/Form.tsx similarity index 99% rename from main/database/src/pages/db/edit/components/Form.tsx rename to database/src/implementations/kb09/pages/db/edit/components/Form.tsx index 95c0195..8f47be7 100644 --- a/main/database/src/pages/db/edit/components/Form.tsx +++ b/database/src/implementations/kb09/pages/db/edit/components/Form.tsx @@ -54,7 +54,7 @@ import { Tr, useTheme } from '@chakra-ui/react'; -import { MySelect, MySlider, MyTooltip, RangeInput, Tabs } from '@sealos/ui'; +import { MySelect, MySlider, MyTooltip, RangeInput, Tabs } from '@labring/sealos-chakra-ui'; import { useTranslation } from 'next-i18next'; import { useRouter } from 'next/router'; import { useEffect, useMemo, useRef, useState } from 'react'; diff --git a/main/database/src/pages/db/edit/components/Header.tsx b/database/src/implementations/kb09/pages/db/edit/components/Header.tsx similarity index 100% rename from main/database/src/pages/db/edit/components/Header.tsx rename to database/src/implementations/kb09/pages/db/edit/components/Header.tsx diff --git a/release-v5.1/database/src/pages/db/edit/components/Yaml.tsx b/database/src/implementations/kb09/pages/db/edit/components/Yaml.tsx similarity index 98% rename from release-v5.1/database/src/pages/db/edit/components/Yaml.tsx rename to database/src/implementations/kb09/pages/db/edit/components/Yaml.tsx index 15afc3d..ac9f520 100644 --- a/release-v5.1/database/src/pages/db/edit/components/Yaml.tsx +++ b/database/src/implementations/kb09/pages/db/edit/components/Yaml.tsx @@ -4,7 +4,7 @@ import YamlCode from '@/components/YamlCode/index'; import type { QueryType, YamlItemType } from '@/types'; import { useCopyData } from '@/utils/tools'; import { Box, Center, Flex, Grid, useTheme } from '@chakra-ui/react'; -import { Tabs } from '@sealos/ui'; +import { Tabs } from '@labring/sealos-chakra-ui'; import { useTranslation } from 'next-i18next'; import { useRouter } from 'next/router'; import { useState } from 'react'; diff --git a/main/database/src/pages/db/edit/components/index.module.scss b/database/src/implementations/kb09/pages/db/edit/components/index.module.scss similarity index 100% rename from main/database/src/pages/db/edit/components/index.module.scss rename to database/src/implementations/kb09/pages/db/edit/components/index.module.scss diff --git a/main/database/src/pages/db/edit/index.module.scss b/database/src/implementations/kb09/pages/db/edit/index.module.scss similarity index 100% rename from main/database/src/pages/db/edit/index.module.scss rename to database/src/implementations/kb09/pages/db/edit/index.module.scss diff --git a/database/src/implementations/kb09/pages/db/edit/index.server.ts b/database/src/implementations/kb09/pages/db/edit/index.server.ts new file mode 100644 index 0000000..149c6b7 --- /dev/null +++ b/database/src/implementations/kb09/pages/db/edit/index.server.ts @@ -0,0 +1,9 @@ +import { serviceSideProps } from '@/utils/i18n'; +export async function getServerSideProps(context: any) { + const dbName = context?.query?.name || ''; + const tabType = context?.query?.type || 'form'; + + return { + props: { ...(await serviceSideProps(context)), dbName, tabType } + }; +} diff --git a/main/database/src/pages/db/edit/index.tsx b/database/src/implementations/kb09/pages/db/edit/index.tsx similarity index 98% rename from main/database/src/pages/db/edit/index.tsx rename to database/src/implementations/kb09/pages/db/edit/index.tsx index 7039210..d3cf955 100644 --- a/main/database/src/pages/db/edit/index.tsx +++ b/database/src/implementations/kb09/pages/db/edit/index.tsx @@ -9,7 +9,6 @@ import { DBVersionMap } from '@/store/static'; import type { YamlItemType } from '@/types'; import type { DBEditType } from '@/types/db'; import { adaptDBForm } from '@/utils/adapt'; -import { serviceSideProps } from '@/utils/i18n'; import { json2Account, json2CreateCluster, limitRangeYaml } from '@/utils/json2Yaml'; import { Box, @@ -24,7 +23,7 @@ import { ModalFooter, Button } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { track } from '@labring/sealos-gtm-sdk'; import { useQuery } from '@tanstack/react-query'; import debounce from 'lodash/debounce'; @@ -611,12 +610,3 @@ const EditApp = ({ dbName, tabType }: { dbName?: string; tabType?: 'form' | 'yam }; export default EditApp; - -export async function getServerSideProps(context: any) { - const dbName = context?.query?.name || ''; - const tabType = context?.query?.type || 'form'; - - return { - props: { ...(await serviceSideProps(context)), dbName, tabType } - }; -} diff --git a/main/database/src/pages/db/migrate/components/Form.tsx b/database/src/implementations/kb09/pages/db/migrate/components/Form.tsx similarity index 99% rename from main/database/src/pages/db/migrate/components/Form.tsx rename to database/src/implementations/kb09/pages/db/migrate/components/Form.tsx index be7f241..737418a 100644 --- a/main/database/src/pages/db/migrate/components/Form.tsx +++ b/database/src/implementations/kb09/pages/db/migrate/components/Form.tsx @@ -23,7 +23,7 @@ import { useDisclosure, useTheme } from '@chakra-ui/react'; -import { Tabs, useMessage } from '@sealos/ui'; +import { Tabs, useMessage } from '@labring/sealos-chakra-ui'; import 'github-markdown-css/github-markdown-light.css'; import { useTranslation } from 'next-i18next'; import { useRouter } from 'next/router'; diff --git a/main/database/src/pages/db/migrate/components/Header.tsx b/database/src/implementations/kb09/pages/db/migrate/components/Header.tsx similarity index 100% rename from main/database/src/pages/db/migrate/components/Header.tsx rename to database/src/implementations/kb09/pages/db/migrate/components/Header.tsx diff --git a/main/database/src/pages/db/migrate/components/Prepare.tsx b/database/src/implementations/kb09/pages/db/migrate/components/Prepare.tsx similarity index 100% rename from main/database/src/pages/db/migrate/components/Prepare.tsx rename to database/src/implementations/kb09/pages/db/migrate/components/Prepare.tsx diff --git a/release-v5.1/database/src/pages/db/migrate/components/Yaml.tsx b/database/src/implementations/kb09/pages/db/migrate/components/Yaml.tsx similarity index 98% rename from release-v5.1/database/src/pages/db/migrate/components/Yaml.tsx rename to database/src/implementations/kb09/pages/db/migrate/components/Yaml.tsx index 7eb02aa..4328805 100644 --- a/release-v5.1/database/src/pages/db/migrate/components/Yaml.tsx +++ b/database/src/implementations/kb09/pages/db/migrate/components/Yaml.tsx @@ -3,7 +3,7 @@ import YamlCode from '@/components/YamlCode/index'; import type { QueryType, YamlItemType } from '@/types'; import { useCopyData } from '@/utils/tools'; import { Box, Center, Flex, Grid, useTheme } from '@chakra-ui/react'; -import { Tabs } from '@sealos/ui'; +import { Tabs } from '@labring/sealos-chakra-ui'; import { useRouter } from 'next/router'; import { useState } from 'react'; import styles from './index.module.scss'; diff --git a/main/database/src/pages/db/migrate/components/index.module.scss b/database/src/implementations/kb09/pages/db/migrate/components/index.module.scss similarity index 100% rename from main/database/src/pages/db/migrate/components/index.module.scss rename to database/src/implementations/kb09/pages/db/migrate/components/index.module.scss diff --git a/main/database/src/pages/db/migrate/index.module.scss b/database/src/implementations/kb09/pages/db/migrate/index.module.scss similarity index 100% rename from main/database/src/pages/db/migrate/index.module.scss rename to database/src/implementations/kb09/pages/db/migrate/index.module.scss diff --git a/database/src/implementations/kb09/pages/db/migrate/index.server.ts b/database/src/implementations/kb09/pages/db/migrate/index.server.ts new file mode 100644 index 0000000..a7237ac --- /dev/null +++ b/database/src/implementations/kb09/pages/db/migrate/index.server.ts @@ -0,0 +1,10 @@ +import { serviceSideProps } from '@/utils/i18n'; +export async function getServerSideProps(context: any) { + const dbName = context?.query?.name || ''; + const dbType = context?.query?.dbType || ''; + const tabType = context?.query?.type || 'form'; + + return { + props: { ...(await serviceSideProps(context)), dbName, tabType, dbType } + }; +} diff --git a/main/database/src/pages/db/migrate/index.tsx b/database/src/implementations/kb09/pages/db/migrate/index.tsx similarity index 94% rename from main/database/src/pages/db/migrate/index.tsx rename to database/src/implementations/kb09/pages/db/migrate/index.tsx index 59e5be6..edd33a9 100644 --- a/main/database/src/pages/db/migrate/index.tsx +++ b/database/src/implementations/kb09/pages/db/migrate/index.tsx @@ -7,10 +7,9 @@ import { useGlobalStore } from '@/store/global'; import type { YamlItemType } from '@/types'; import { DBType } from '@/types/db'; import { MigrateForm } from '@/types/migrate'; -import { serviceSideProps } from '@/utils/i18n'; import { json2MigrateCR } from '@/utils/json2Yaml'; import { Box, Flex } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { useQuery } from '@tanstack/react-query'; import debounce from 'lodash/debounce'; import { useTranslation } from 'next-i18next'; @@ -250,13 +249,3 @@ const EditApp = ({ }; export default EditApp; - -export async function getServerSideProps(context: any) { - const dbName = context?.query?.name || ''; - const dbType = context?.query?.dbType || ''; - const tabType = context?.query?.type || 'form'; - - return { - props: { ...(await serviceSideProps(context)), dbName, tabType, dbType } - }; -} diff --git a/main/database/src/pages/dbs/components/dbList.tsx b/database/src/implementations/kb09/pages/dbs/components/dbList.tsx similarity index 99% rename from main/database/src/pages/dbs/components/dbList.tsx rename to database/src/implementations/kb09/pages/dbs/components/dbList.tsx index d2b85dc..cbe7235 100644 --- a/main/database/src/pages/dbs/components/dbList.tsx +++ b/database/src/implementations/kb09/pages/dbs/components/dbList.tsx @@ -9,7 +9,7 @@ import { applistDriverObj, startDriver } from '@/hooks/driver'; import { useClientSideValue } from '@/hooks/useClientSideValue'; import { useConfirm } from '@/hooks/useConfirm'; import { useDBOperation } from '@/hooks/useDBOperation'; -import UpdateModal from '@/pages/db/detail/components/UpdateModal'; +import UpdateModal from '@/implementations/kb09/pages/db/detail/components/UpdateModal'; import { useClientAppConfig } from '@/hooks/useClientAppConfig'; import { useGlobalStore } from '@/store/global'; import { useGuideStore } from '@/store/guide'; @@ -33,7 +33,7 @@ import { PopoverContent, PopoverTrigger } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { track } from '@labring/sealos-gtm-sdk'; import { ColumnDef, @@ -64,7 +64,7 @@ import { import { setDBRemark } from '@/api/db'; import { useQuotaGuarded } from '@labring/sealos-shared-sdk'; -const DelModal = dynamic(() => import('@/pages/db/detail/components/DelModal')); +const DelModal = dynamic(() => import('@/implementations/kb09/pages/db/detail/components/DelModal')); const ErrorModal = dynamic(() => import('@/components/ErrorModal')); type StatusModalState = { diff --git a/main/database/src/pages/dbs/components/empty.module.scss b/database/src/implementations/kb09/pages/dbs/components/empty.module.scss similarity index 100% rename from main/database/src/pages/dbs/components/empty.module.scss rename to database/src/implementations/kb09/pages/dbs/components/empty.module.scss diff --git a/main/database/src/pages/dbs/components/empty.tsx b/database/src/implementations/kb09/pages/dbs/components/empty.tsx similarity index 100% rename from main/database/src/pages/dbs/components/empty.tsx rename to database/src/implementations/kb09/pages/dbs/components/empty.tsx diff --git a/main/database/src/pages/dbs/index.module.scss b/database/src/implementations/kb09/pages/dbs/index.module.scss similarity index 100% rename from main/database/src/pages/dbs/index.module.scss rename to database/src/implementations/kb09/pages/dbs/index.module.scss diff --git a/database/src/implementations/kb09/pages/dbs/index.server.ts b/database/src/implementations/kb09/pages/dbs/index.server.ts new file mode 100644 index 0000000..2be43ec --- /dev/null +++ b/database/src/implementations/kb09/pages/dbs/index.server.ts @@ -0,0 +1,8 @@ +import { serviceSideProps } from '@/utils/i18n'; +export async function getServerSideProps(content: any) { + return { + props: { + ...(await serviceSideProps(content)) + } + }; +} diff --git a/release-v5.1/database/src/pages/dbs/index.tsx b/database/src/implementations/kb09/pages/dbs/index.tsx similarity index 90% rename from release-v5.1/database/src/pages/dbs/index.tsx rename to database/src/implementations/kb09/pages/dbs/index.tsx index 1d42d22..464e06b 100644 --- a/release-v5.1/database/src/pages/dbs/index.tsx +++ b/database/src/implementations/kb09/pages/dbs/index.tsx @@ -4,7 +4,6 @@ import { useQuery } from '@tanstack/react-query'; import { useDBStore } from '@/store/db'; import { useLoading } from '@/hooks/useLoading'; import { useEffect, useState } from 'react'; -import { serviceSideProps } from '@/utils/i18n'; import Sidebar from '@/components/Sidebar'; import { Box, Flex, Switch, Text } from '@chakra-ui/react'; import { useGuideStore } from '@/store/guide'; @@ -59,12 +58,4 @@ function Home() { ); } -export async function getServerSideProps(content: any) { - return { - props: { - ...(await serviceSideProps(content)) - } - }; -} - export default Home; diff --git a/main/database/src/pages/doc/v2alpha.tsx b/database/src/implementations/kb09/pages/doc/v2alpha.tsx similarity index 100% rename from main/database/src/pages/doc/v2alpha.tsx rename to database/src/implementations/kb09/pages/doc/v2alpha.tsx diff --git a/main/database/src/pages/icons/index.tsx b/database/src/implementations/kb09/pages/icons/index.tsx similarity index 100% rename from main/database/src/pages/icons/index.tsx rename to database/src/implementations/kb09/pages/icons/index.tsx diff --git a/main/database/src/pages/redirect.tsx b/database/src/implementations/kb09/pages/redirect.tsx similarity index 100% rename from main/database/src/pages/redirect.tsx rename to database/src/implementations/kb09/pages/redirect.tsx diff --git a/main/database/src/instrumentation.ts b/database/src/instrumentation.ts similarity index 100% rename from main/database/src/instrumentation.ts rename to database/src/instrumentation.ts diff --git a/database/src/kubeblocks/page.tsx b/database/src/kubeblocks/page.tsx new file mode 100644 index 0000000..3102144 --- /dev/null +++ b/database/src/kubeblocks/page.tsx @@ -0,0 +1,14 @@ +import { createContext, useContext, type ComponentType } from 'react'; +import ErrorPage from 'next/error'; +import type { KubeBlocksVersion } from './version'; + +export const KubeBlocksContext = createContext(null); + +export function versionedPage(pages: Partial>>) { + return function KubeBlocksPage(props: any) { + const version = useContext(KubeBlocksContext); + if (!version) throw new Error('KubeBlocks version was not initialized'); + const Page = pages[version]; + return Page ? : ; + }; +} diff --git a/database/src/kubeblocks/version.ts b/database/src/kubeblocks/version.ts new file mode 100644 index 0000000..1a87e44 --- /dev/null +++ b/database/src/kubeblocks/version.ts @@ -0,0 +1,7 @@ +export const KUBEBLOCKS_VERSIONS = ['0.8', '0.9'] as const; +export type KubeBlocksVersion = (typeof KUBEBLOCKS_VERSIONS)[number]; + +export function parseKubeBlocksVersion(value: unknown): KubeBlocksVersion { + if (value === '0.8' || value === '0.9') return value; + throw new Error('database.kubeblocks.version must be "0.8" or "0.9"'); +} diff --git a/database/src/pages/404.tsx b/database/src/pages/404.tsx new file mode 100644 index 0000000..0498cdf --- /dev/null +++ b/database/src/pages/404.tsx @@ -0,0 +1,4 @@ +import { versionedPage } from '@/kubeblocks/page'; +import Page09 from '@/implementations/kb09/pages/404'; +import Page08 from '@/implementations/kb09/pages/404'; +export default versionedPage({ '0.9': Page09, '0.8': Page08 }); diff --git a/database/src/pages/_app.tsx b/database/src/pages/_app.tsx new file mode 100644 index 0000000..182e558 --- /dev/null +++ b/database/src/pages/_app.tsx @@ -0,0 +1,44 @@ +import '@labring/sealos-driver-sdk/src/driver.css'; +import '@/styles/reset.scss'; +import 'nprogress/nprogress.css'; +import type { AppContext, AppProps } from 'next/app'; +import App08, { getAppInitialProps as getProps08 } from '@/implementations/kb08/pages/_app'; +import App09, { getAppInitialProps as getProps09 } from '@/implementations/kb09/pages/_app'; +import { KubeBlocksContext } from '@/kubeblocks/page'; +import { parseKubeBlocksVersion, type KubeBlocksVersion } from '@/kubeblocks/version'; +import Router from 'next/router'; +import NProgress from 'nprogress'; + +Router.events.on('routeChangeStart', () => NProgress.start()); +Router.events.on('routeChangeComplete', () => NProgress.done()); +Router.events.on('routeChangeError', () => NProgress.done()); + +// Deployment configuration is immutable for the lifetime of a browser page. +// Initial SSR supplies it; client navigation retains it without trusting URL/query input. +let browserVersion: KubeBlocksVersion | undefined; + +type Props = AppProps & { kubeblocksVersion: KubeBlocksVersion; [key: string]: any }; +function DatabaseApp(props: Props) { + const version = parseKubeBlocksVersion(props.kubeblocksVersion); + if (typeof window !== 'undefined') browserVersion = version; + const App = version === '0.8' ? App08 : App09; + return ( + + + + ); +} + +DatabaseApp.getInitialProps = async (context: AppContext) => { + let version: KubeBlocksVersion; + if (typeof window === 'undefined') { + const { getKubeBlocksVersion } = await import('@/services/backend/kubeblocks'); + version = getKubeBlocksVersion(); + } else { + version = parseKubeBlocksVersion(browserVersion); + } + const getProps = version === '0.8' ? getProps08 : getProps09; + const props = await getProps(context); + return { ...props, kubeblocksVersion: version }; +}; +export default DatabaseApp; diff --git a/database/src/pages/_document.tsx b/database/src/pages/_document.tsx new file mode 100644 index 0000000..8f268bc --- /dev/null +++ b/database/src/pages/_document.tsx @@ -0,0 +1 @@ +export { default } from '@/implementations/kb09/pages/_document'; diff --git a/database/src/pages/api-docs.tsx b/database/src/pages/api-docs.tsx new file mode 100644 index 0000000..e45dea0 --- /dev/null +++ b/database/src/pages/api-docs.tsx @@ -0,0 +1,4 @@ +import { versionedPage } from '@/kubeblocks/page'; +import Page09 from '@/implementations/kb09/pages/api-docs'; +import Page08 from '@/implementations/kb08/pages/api-docs'; +export default versionedPage({ '0.9': Page09, '0.8': Page08 }); diff --git a/database/src/pages/api/adapter/mongodb.ts b/database/src/pages/api/adapter/mongodb.ts new file mode 100644 index 0000000..47cd318 --- /dev/null +++ b/database/src/pages/api/adapter/mongodb.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/adapter/mongodb'; +import handler08 from '@/implementations/kb08/pages/api/adapter/mongodb'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/applyReconfigureOps.ts b/database/src/pages/api/applyReconfigureOps.ts new file mode 100644 index 0000000..725058e --- /dev/null +++ b/database/src/pages/api/applyReconfigureOps.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/applyReconfigureOps'; +import handler08 from '@/implementations/kb08/pages/api/applyReconfigureOps'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/applyYamlList.ts b/database/src/pages/api/applyYamlList.ts new file mode 100644 index 0000000..c6d2a6c --- /dev/null +++ b/database/src/pages/api/applyYamlList.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/applyYamlList'; +import handler08 from '@/implementations/kb08/pages/api/applyYamlList'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/backup/create.ts b/database/src/pages/api/backup/create.ts new file mode 100644 index 0000000..cd475d3 --- /dev/null +++ b/database/src/pages/api/backup/create.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/backup/create'; +import handler08 from '@/implementations/kb08/pages/api/backup/create'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/backup/delBackup.ts b/database/src/pages/api/backup/delBackup.ts new file mode 100644 index 0000000..83ce4dd --- /dev/null +++ b/database/src/pages/api/backup/delBackup.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/backup/delBackup'; +import handler08 from '@/implementations/kb08/pages/api/backup/delBackup'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/backup/getBackupList.ts b/database/src/pages/api/backup/getBackupList.ts new file mode 100644 index 0000000..43aafaa --- /dev/null +++ b/database/src/pages/api/backup/getBackupList.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/backup/getBackupList'; +import handler08 from '@/implementations/kb08/pages/api/backup/getBackupList'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/backup/getBackups.ts b/database/src/pages/api/backup/getBackups.ts new file mode 100644 index 0000000..288733c --- /dev/null +++ b/database/src/pages/api/backup/getBackups.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/backup/getBackups'; +import handler08 from '@/implementations/kb08/pages/api/backup/getBackups'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/backup/updatePolicy.ts b/database/src/pages/api/backup/updatePolicy.ts new file mode 100644 index 0000000..12cd3bc --- /dev/null +++ b/database/src/pages/api/backup/updatePolicy.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/backup/updatePolicy'; +import handler08 from '@/implementations/kb08/pages/api/backup/updatePolicy'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/createDB.ts b/database/src/pages/api/createDB.ts new file mode 100644 index 0000000..9697e0c --- /dev/null +++ b/database/src/pages/api/createDB.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/createDB'; +import handler08 from '@/implementations/kb08/pages/api/createDB'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/db/editPassword.ts b/database/src/pages/api/db/editPassword.ts new file mode 100644 index 0000000..cdab032 --- /dev/null +++ b/database/src/pages/api/db/editPassword.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/db/editPassword'; +import handler08 from '@/implementations/kb08/pages/api/db/editPassword'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/db/getDatabases.ts b/database/src/pages/api/db/getDatabases.ts new file mode 100644 index 0000000..10c4345 --- /dev/null +++ b/database/src/pages/api/db/getDatabases.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/db/getDatabases'; +import handler08 from '@/implementations/kb08/pages/api/db/getDatabases'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/db/getTables.ts b/database/src/pages/api/db/getTables.ts new file mode 100644 index 0000000..41a7caf --- /dev/null +++ b/database/src/pages/api/db/getTables.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/db/getTables'; +import handler08 from '@/implementations/kb08/pages/api/db/getTables'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/delDBByName.ts b/database/src/pages/api/delDBByName.ts new file mode 100644 index 0000000..58ce30a --- /dev/null +++ b/database/src/pages/api/delDBByName.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/delDBByName'; +import handler08 from '@/implementations/kb08/pages/api/delDBByName'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/delServiceByName.ts b/database/src/pages/api/delServiceByName.ts new file mode 100644 index 0000000..de8ba36 --- /dev/null +++ b/database/src/pages/api/delServiceByName.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/delServiceByName'; +import handler08 from '@/implementations/kb08/pages/api/delServiceByName'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/getAddonList.ts b/database/src/pages/api/getAddonList.ts new file mode 100644 index 0000000..0201c77 --- /dev/null +++ b/database/src/pages/api/getAddonList.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/getAddonList'; +import handler08 from '@/implementations/kb08/pages/api/getAddonList'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/getConfigByName.ts b/database/src/pages/api/getConfigByName.ts new file mode 100644 index 0000000..b3fe8a1 --- /dev/null +++ b/database/src/pages/api/getConfigByName.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/getConfigByName'; +import handler08 from '@/implementations/kb08/pages/api/getConfigByName'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/getDBByName.ts b/database/src/pages/api/getDBByName.ts new file mode 100644 index 0000000..1982ab2 --- /dev/null +++ b/database/src/pages/api/getDBByName.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/getDBByName'; +import handler08 from '@/implementations/kb08/pages/api/getDBByName'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/getDBEvents.ts b/database/src/pages/api/getDBEvents.ts new file mode 100644 index 0000000..d92bcec --- /dev/null +++ b/database/src/pages/api/getDBEvents.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/getDBEvents'; +import handler08 from '@/implementations/kb08/pages/api/getDBEvents'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/getDBList.ts b/database/src/pages/api/getDBList.ts new file mode 100644 index 0000000..5d880aa --- /dev/null +++ b/database/src/pages/api/getDBList.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/getDBList'; +import handler08 from '@/implementations/kb08/pages/api/getDBList'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/getEnv.ts b/database/src/pages/api/getEnv.ts new file mode 100644 index 0000000..bd634ed --- /dev/null +++ b/database/src/pages/api/getEnv.ts @@ -0,0 +1,3 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler08 from '@/implementations/kb08/pages/api/getEnv'; +export default versionedHandler({ '0.8': handler08 }); diff --git a/database/src/pages/api/getSecretByName.ts b/database/src/pages/api/getSecretByName.ts new file mode 100644 index 0000000..dc85663 --- /dev/null +++ b/database/src/pages/api/getSecretByName.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/getSecretByName'; +import handler08 from '@/implementations/kb08/pages/api/getSecretByName'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/getServiceByName.ts b/database/src/pages/api/getServiceByName.ts new file mode 100644 index 0000000..18c6d8d --- /dev/null +++ b/database/src/pages/api/getServiceByName.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/getServiceByName'; +import handler08 from '@/implementations/kb08/pages/api/getServiceByName'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/getStatefulSetByName.ts b/database/src/pages/api/getStatefulSetByName.ts new file mode 100644 index 0000000..1e7dd77 --- /dev/null +++ b/database/src/pages/api/getStatefulSetByName.ts @@ -0,0 +1,3 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler08 from '@/implementations/kb08/pages/api/getStatefulSetByName'; +export default versionedHandler({ '0.8': handler08 }); diff --git a/database/src/pages/api/guide/checkTask.ts b/database/src/pages/api/guide/checkTask.ts new file mode 100644 index 0000000..f6b2aa3 --- /dev/null +++ b/database/src/pages/api/guide/checkTask.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/guide/checkTask'; +import handler08 from '@/implementations/kb08/pages/api/guide/checkTask'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/guide/getBonus.ts b/database/src/pages/api/guide/getBonus.ts new file mode 100644 index 0000000..0fb6f8b --- /dev/null +++ b/database/src/pages/api/guide/getBonus.ts @@ -0,0 +1,3 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler08 from '@/implementations/kb08/pages/api/guide/getBonus'; +export default versionedHandler({ '0.8': handler08 }); diff --git a/database/src/pages/api/guide/getTasks.ts b/database/src/pages/api/guide/getTasks.ts new file mode 100644 index 0000000..d75e510 --- /dev/null +++ b/database/src/pages/api/guide/getTasks.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/guide/getTasks'; +import handler08 from '@/implementations/kb08/pages/api/guide/getTasks'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/logs/get.ts b/database/src/pages/api/logs/get.ts new file mode 100644 index 0000000..31d2dad --- /dev/null +++ b/database/src/pages/api/logs/get.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/logs/get'; +import handler08 from '@/implementations/kb08/pages/api/logs/get'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/logs/getCounts.ts b/database/src/pages/api/logs/getCounts.ts new file mode 100644 index 0000000..118cbe5 --- /dev/null +++ b/database/src/pages/api/logs/getCounts.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/logs/getCounts'; +import handler08 from '@/implementations/kb08/pages/api/logs/getCounts'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/logs/getFiles.ts b/database/src/pages/api/logs/getFiles.ts new file mode 100644 index 0000000..57e01e2 --- /dev/null +++ b/database/src/pages/api/logs/getFiles.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/logs/getFiles'; +import handler08 from '@/implementations/kb08/pages/api/logs/getFiles'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/migrate/createDump.ts b/database/src/pages/api/migrate/createDump.ts new file mode 100644 index 0000000..221bd3d --- /dev/null +++ b/database/src/pages/api/migrate/createDump.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/migrate/createDump'; +import handler08 from '@/implementations/kb08/pages/api/migrate/createDump'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/migrate/delJobByName.ts b/database/src/pages/api/migrate/delJobByName.ts new file mode 100644 index 0000000..5e34d2e --- /dev/null +++ b/database/src/pages/api/migrate/delJobByName.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/migrate/delJobByName'; +import handler08 from '@/implementations/kb08/pages/api/migrate/delJobByName'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/migrate/delete.ts b/database/src/pages/api/migrate/delete.ts new file mode 100644 index 0000000..8e9521e --- /dev/null +++ b/database/src/pages/api/migrate/delete.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/migrate/delete'; +import handler08 from '@/implementations/kb08/pages/api/migrate/delete'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/migrate/getJobByName.ts b/database/src/pages/api/migrate/getJobByName.ts new file mode 100644 index 0000000..08e73e7 --- /dev/null +++ b/database/src/pages/api/migrate/getJobByName.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/migrate/getJobByName'; +import handler08 from '@/implementations/kb08/pages/api/migrate/getJobByName'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/migrate/getLogByName.ts b/database/src/pages/api/migrate/getLogByName.ts new file mode 100644 index 0000000..5def303 --- /dev/null +++ b/database/src/pages/api/migrate/getLogByName.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/migrate/getLogByName'; +import handler08 from '@/implementations/kb08/pages/api/migrate/getLogByName'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/migrate/getPodList.ts b/database/src/pages/api/migrate/getPodList.ts new file mode 100644 index 0000000..1400730 --- /dev/null +++ b/database/src/pages/api/migrate/getPodList.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/migrate/getPodList'; +import handler08 from '@/implementations/kb08/pages/api/migrate/getPodList'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/migrate/list.ts b/database/src/pages/api/migrate/list.ts new file mode 100644 index 0000000..9eb6284 --- /dev/null +++ b/database/src/pages/api/migrate/list.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/migrate/list'; +import handler08 from '@/implementations/kb08/pages/api/migrate/list'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/minio/upload.ts b/database/src/pages/api/minio/upload.ts new file mode 100644 index 0000000..11017c8 --- /dev/null +++ b/database/src/pages/api/minio/upload.ts @@ -0,0 +1,5 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/minio/upload'; +import handler08 from '@/implementations/kb08/pages/api/minio/upload'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); +export const config = { api: { bodyParser: false } }; diff --git a/database/src/pages/api/monitor/getAbortedConnections.ts b/database/src/pages/api/monitor/getAbortedConnections.ts new file mode 100644 index 0000000..f813e0d --- /dev/null +++ b/database/src/pages/api/monitor/getAbortedConnections.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getAbortedConnections'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getAbortedConnections'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getActiveConnections.ts b/database/src/pages/api/monitor/getActiveConnections.ts new file mode 100644 index 0000000..0e73054 --- /dev/null +++ b/database/src/pages/api/monitor/getActiveConnections.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getActiveConnections'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getActiveConnections'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getBlockReadTime.ts b/database/src/pages/api/monitor/getBlockReadTime.ts new file mode 100644 index 0000000..fb9dc1e --- /dev/null +++ b/database/src/pages/api/monitor/getBlockReadTime.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getBlockReadTime'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getBlockReadTime'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getBlockWriteTime.ts b/database/src/pages/api/monitor/getBlockWriteTime.ts new file mode 100644 index 0000000..2624ce6 --- /dev/null +++ b/database/src/pages/api/monitor/getBlockWriteTime.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getBlockWriteTime'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getBlockWriteTime'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getCPU.ts b/database/src/pages/api/monitor/getCPU.ts new file mode 100644 index 0000000..d88ea62 --- /dev/null +++ b/database/src/pages/api/monitor/getCPU.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getCPU'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getCPU'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getCurrentConnections.ts b/database/src/pages/api/monitor/getCurrentConnections.ts new file mode 100644 index 0000000..6d52110 --- /dev/null +++ b/database/src/pages/api/monitor/getCurrentConnections.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getCurrentConnections'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getCurrentConnections'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getDataBaseSize.ts b/database/src/pages/api/monitor/getDataBaseSize.ts new file mode 100644 index 0000000..6a4aea7 --- /dev/null +++ b/database/src/pages/api/monitor/getDataBaseSize.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getDataBaseSize'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getDataBaseSize'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getDurationTransaction.ts b/database/src/pages/api/monitor/getDurationTransaction.ts new file mode 100644 index 0000000..8d25ca3 --- /dev/null +++ b/database/src/pages/api/monitor/getDurationTransaction.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getDurationTransaction'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getDurationTransaction'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getMemory.ts b/database/src/pages/api/monitor/getMemory.ts new file mode 100644 index 0000000..ad67c9f --- /dev/null +++ b/database/src/pages/api/monitor/getMemory.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getMemory'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getMemory'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getMongdbPerformance.ts b/database/src/pages/api/monitor/getMongdbPerformance.ts new file mode 100644 index 0000000..1817949 --- /dev/null +++ b/database/src/pages/api/monitor/getMongdbPerformance.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getMongdbPerformance'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getMongdbPerformance'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getMonitorData.ts b/database/src/pages/api/monitor/getMonitorData.ts new file mode 100644 index 0000000..eed688f --- /dev/null +++ b/database/src/pages/api/monitor/getMonitorData.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getMonitorData'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getMonitorData'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getMysqlInnoDB.ts b/database/src/pages/api/monitor/getMysqlInnoDB.ts new file mode 100644 index 0000000..af2e6ab --- /dev/null +++ b/database/src/pages/api/monitor/getMysqlInnoDB.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getMysqlInnoDB'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getMysqlInnoDB'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getMysqlSlowQueries.ts b/database/src/pages/api/monitor/getMysqlSlowQueries.ts new file mode 100644 index 0000000..6bad66c --- /dev/null +++ b/database/src/pages/api/monitor/getMysqlSlowQueries.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getMysqlSlowQueries'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getMysqlSlowQueries'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getMysqlTableLocks.ts b/database/src/pages/api/monitor/getMysqlTableLocks.ts new file mode 100644 index 0000000..8561cef --- /dev/null +++ b/database/src/pages/api/monitor/getMysqlTableLocks.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getMysqlTableLocks'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getMysqlTableLocks'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getRedisPerDB.ts b/database/src/pages/api/monitor/getRedisPerDB.ts new file mode 100644 index 0000000..812c280 --- /dev/null +++ b/database/src/pages/api/monitor/getRedisPerDB.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getRedisPerDB'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getRedisPerDB'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getRedisPerformance.ts b/database/src/pages/api/monitor/getRedisPerformance.ts new file mode 100644 index 0000000..9ba105a --- /dev/null +++ b/database/src/pages/api/monitor/getRedisPerformance.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getRedisPerformance'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getRedisPerformance'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getRollback.ts b/database/src/pages/api/monitor/getRollback.ts new file mode 100644 index 0000000..0f00ff8 --- /dev/null +++ b/database/src/pages/api/monitor/getRollback.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getRollback'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getRollback'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getRunningTime.ts b/database/src/pages/api/monitor/getRunningTime.ts new file mode 100644 index 0000000..9d3d360 --- /dev/null +++ b/database/src/pages/api/monitor/getRunningTime.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getRunningTime'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getRunningTime'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/monitor/getTransactions.ts b/database/src/pages/api/monitor/getTransactions.ts new file mode 100644 index 0000000..52fd502 --- /dev/null +++ b/database/src/pages/api/monitor/getTransactions.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/monitor/getTransactions'; +import handler08 from '@/implementations/kb08/pages/api/monitor/getTransactions'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/opsrequest/list.ts b/database/src/pages/api/opsrequest/list.ts new file mode 100644 index 0000000..bcc815e --- /dev/null +++ b/database/src/pages/api/opsrequest/list.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/opsrequest/list'; +import handler08 from '@/implementations/kb08/pages/api/opsrequest/list'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/opsrequest/operationlog.ts b/database/src/pages/api/opsrequest/operationlog.ts new file mode 100644 index 0000000..c026a16 --- /dev/null +++ b/database/src/pages/api/opsrequest/operationlog.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/opsrequest/operationlog'; +import handler08 from '@/implementations/kb08/pages/api/opsrequest/operationlog'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/pauseDBByName.ts b/database/src/pages/api/pauseDBByName.ts new file mode 100644 index 0000000..0dc2bc3 --- /dev/null +++ b/database/src/pages/api/pauseDBByName.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/pauseDBByName'; +import handler08 from '@/implementations/kb08/pages/api/pauseDBByName'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/platform/getClientAppConfig.ts b/database/src/pages/api/platform/getClientAppConfig.ts new file mode 100644 index 0000000..d5c6367 --- /dev/null +++ b/database/src/pages/api/platform/getClientAppConfig.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/platform/getClientAppConfig'; +import handler08 from '@/implementations/kb08/pages/api/platform/getClientAppConfig'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/platform/getQuota.ts b/database/src/pages/api/platform/getQuota.ts new file mode 100644 index 0000000..c0291f0 --- /dev/null +++ b/database/src/pages/api/platform/getQuota.ts @@ -0,0 +1,3 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler08 from '@/implementations/kb08/pages/api/platform/getQuota'; +export default versionedHandler({ '0.8': handler08 }); diff --git a/database/src/pages/api/platform/getVersion.ts b/database/src/pages/api/platform/getVersion.ts new file mode 100644 index 0000000..01e83b0 --- /dev/null +++ b/database/src/pages/api/platform/getVersion.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/platform/getVersion'; +import handler08 from '@/implementations/kb08/pages/api/platform/getVersion'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/platform/paymentConfig.ts b/database/src/pages/api/platform/paymentConfig.ts new file mode 100644 index 0000000..a2b1e9b --- /dev/null +++ b/database/src/pages/api/platform/paymentConfig.ts @@ -0,0 +1,3 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler08 from '@/implementations/kb08/pages/api/platform/paymentConfig'; +export default versionedHandler({ '0.8': handler08 }); diff --git a/database/src/pages/api/platform/resourcePrice.ts b/database/src/pages/api/platform/resourcePrice.ts new file mode 100644 index 0000000..151aff6 --- /dev/null +++ b/database/src/pages/api/platform/resourcePrice.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/platform/resourcePrice'; +import handler08 from '@/implementations/kb08/pages/api/platform/resourcePrice'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/pod/getPodEvents.ts b/database/src/pages/api/pod/getPodEvents.ts new file mode 100644 index 0000000..cf5b3db --- /dev/null +++ b/database/src/pages/api/pod/getPodEvents.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/pod/getPodEvents'; +import handler08 from '@/implementations/kb08/pages/api/pod/getPodEvents'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/pod/getPodEventsAnalyses.ts b/database/src/pages/api/pod/getPodEventsAnalyses.ts new file mode 100644 index 0000000..a1dc2f8 --- /dev/null +++ b/database/src/pages/api/pod/getPodEventsAnalyses.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/pod/getPodEventsAnalyses'; +import handler08 from '@/implementations/kb08/pages/api/pod/getPodEventsAnalyses'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/pod/getPodLogs.ts b/database/src/pages/api/pod/getPodLogs.ts new file mode 100644 index 0000000..0a01419 --- /dev/null +++ b/database/src/pages/api/pod/getPodLogs.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/pod/getPodLogs'; +import handler08 from '@/implementations/kb08/pages/api/pod/getPodLogs'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/pod/getPodStatus.ts b/database/src/pages/api/pod/getPodStatus.ts new file mode 100644 index 0000000..2de8ec7 --- /dev/null +++ b/database/src/pages/api/pod/getPodStatus.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/pod/getPodStatus'; +import handler08 from '@/implementations/kb08/pages/api/pod/getPodStatus'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/pod/getPodsByDBName.ts b/database/src/pages/api/pod/getPodsByDBName.ts new file mode 100644 index 0000000..32ab8e9 --- /dev/null +++ b/database/src/pages/api/pod/getPodsByDBName.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/pod/getPodsByDBName'; +import handler08 from '@/implementations/kb08/pages/api/pod/getPodsByDBName'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/pod/restartPod.ts b/database/src/pages/api/pod/restartPod.ts new file mode 100644 index 0000000..5932de9 --- /dev/null +++ b/database/src/pages/api/pod/restartPod.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/pod/restartPod'; +import handler08 from '@/implementations/kb08/pages/api/pod/restartPod'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/pod/switchPodMs.ts b/database/src/pages/api/pod/switchPodMs.ts new file mode 100644 index 0000000..d712bee --- /dev/null +++ b/database/src/pages/api/pod/switchPodMs.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/pod/switchPodMs'; +import handler08 from '@/implementations/kb08/pages/api/pod/switchPodMs'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/proxy/get_db_alerts.ts b/database/src/pages/api/proxy/get_db_alerts.ts new file mode 100644 index 0000000..308accc --- /dev/null +++ b/database/src/pages/api/proxy/get_db_alerts.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/proxy/get_db_alerts'; +import handler08 from '@/implementations/kb08/pages/api/proxy/get_db_alerts'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/remark.ts b/database/src/pages/api/remark.ts new file mode 100644 index 0000000..013028e --- /dev/null +++ b/database/src/pages/api/remark.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/remark'; +import handler08 from '@/implementations/kb08/pages/api/remark'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/resolveDBConnectTarget.ts b/database/src/pages/api/resolveDBConnectTarget.ts new file mode 100644 index 0000000..7d94f0c --- /dev/null +++ b/database/src/pages/api/resolveDBConnectTarget.ts @@ -0,0 +1,3 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/resolveDBConnectTarget'; +export default versionedHandler({ '0.9': handler09 }); diff --git a/database/src/pages/api/restoreBackup.ts b/database/src/pages/api/restoreBackup.ts new file mode 100644 index 0000000..1a92d4e --- /dev/null +++ b/database/src/pages/api/restoreBackup.ts @@ -0,0 +1,3 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/restoreBackup'; +export default versionedHandler({ '0.9': handler09 }); diff --git a/database/src/pages/api/startDBByName.ts b/database/src/pages/api/startDBByName.ts new file mode 100644 index 0000000..50f990f --- /dev/null +++ b/database/src/pages/api/startDBByName.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/startDBByName'; +import handler08 from '@/implementations/kb08/pages/api/startDBByName'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v1/database.ts b/database/src/pages/api/v1/database.ts new file mode 100644 index 0000000..736c2c6 --- /dev/null +++ b/database/src/pages/api/v1/database.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/database'; +import handler08 from '@/implementations/kb08/pages/api/v1/database'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v1/database/[databaseName].ts b/database/src/pages/api/v1/database/[databaseName].ts new file mode 100644 index 0000000..24cfa70 --- /dev/null +++ b/database/src/pages/api/v1/database/[databaseName].ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/database/[databaseName]'; +import handler08 from '@/implementations/kb08/pages/api/v1/database/[databaseName]'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v1/database/[databaseName]/backup/[backupName].ts b/database/src/pages/api/v1/database/[databaseName]/backup/[backupName].ts new file mode 100644 index 0000000..677d29c --- /dev/null +++ b/database/src/pages/api/v1/database/[databaseName]/backup/[backupName].ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/database/[databaseName]/backup/[backupName]'; +import handler08 from '@/implementations/kb08/pages/api/v1/database/[databaseName]/backup/[backupName]'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v1/database/[databaseName]/backup/index.ts b/database/src/pages/api/v1/database/[databaseName]/backup/index.ts new file mode 100644 index 0000000..2fd4dae --- /dev/null +++ b/database/src/pages/api/v1/database/[databaseName]/backup/index.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/database/[databaseName]/backup/index'; +import handler08 from '@/implementations/kb08/pages/api/v1/database/[databaseName]/backup/index'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v1/database/[databaseName]/disablePublic.ts b/database/src/pages/api/v1/database/[databaseName]/disablePublic.ts new file mode 100644 index 0000000..0ebd917 --- /dev/null +++ b/database/src/pages/api/v1/database/[databaseName]/disablePublic.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/database/[databaseName]/disablePublic'; +import handler08 from '@/implementations/kb08/pages/api/v1/database/[databaseName]/disablePublic'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v1/database/[databaseName]/enablePublic.ts b/database/src/pages/api/v1/database/[databaseName]/enablePublic.ts new file mode 100644 index 0000000..07a46f0 --- /dev/null +++ b/database/src/pages/api/v1/database/[databaseName]/enablePublic.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/database/[databaseName]/enablePublic'; +import handler08 from '@/implementations/kb08/pages/api/v1/database/[databaseName]/enablePublic'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v1/database/[databaseName]/pause.ts b/database/src/pages/api/v1/database/[databaseName]/pause.ts new file mode 100644 index 0000000..da443bf --- /dev/null +++ b/database/src/pages/api/v1/database/[databaseName]/pause.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/database/[databaseName]/pause'; +import handler08 from '@/implementations/kb08/pages/api/v1/database/[databaseName]/pause'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v1/database/[databaseName]/restart.ts b/database/src/pages/api/v1/database/[databaseName]/restart.ts new file mode 100644 index 0000000..47016a1 --- /dev/null +++ b/database/src/pages/api/v1/database/[databaseName]/restart.ts @@ -0,0 +1,3 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/database/[databaseName]/restart'; +export default versionedHandler({ '0.9': handler09 }); diff --git a/database/src/pages/api/v1/database/[databaseName]/start.ts b/database/src/pages/api/v1/database/[databaseName]/start.ts new file mode 100644 index 0000000..d7d5a8b --- /dev/null +++ b/database/src/pages/api/v1/database/[databaseName]/start.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/database/[databaseName]/start'; +import handler08 from '@/implementations/kb08/pages/api/v1/database/[databaseName]/start'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v1/database/list.ts b/database/src/pages/api/v1/database/list.ts new file mode 100644 index 0000000..b7a0314 --- /dev/null +++ b/database/src/pages/api/v1/database/list.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/database/list'; +import handler08 from '@/implementations/kb08/pages/api/v1/database/list'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v1/database/version/list.ts b/database/src/pages/api/v1/database/version/list.ts new file mode 100644 index 0000000..1f54faa --- /dev/null +++ b/database/src/pages/api/v1/database/version/list.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/database/version/list'; +import handler08 from '@/implementations/kb08/pages/api/v1/database/version/list'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v1/logs/files.ts b/database/src/pages/api/v1/logs/files.ts new file mode 100644 index 0000000..6694784 --- /dev/null +++ b/database/src/pages/api/v1/logs/files.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/logs/files'; +import handler08 from '@/implementations/kb08/pages/api/v1/logs/files'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v1/logs/index.ts b/database/src/pages/api/v1/logs/index.ts new file mode 100644 index 0000000..07f9321 --- /dev/null +++ b/database/src/pages/api/v1/logs/index.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/logs/index'; +import handler08 from '@/implementations/kb08/pages/api/v1/logs/index'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v1/monitor/data.ts b/database/src/pages/api/v1/monitor/data.ts new file mode 100644 index 0000000..5cb9364 --- /dev/null +++ b/database/src/pages/api/v1/monitor/data.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/monitor/data'; +import handler08 from '@/implementations/kb08/pages/api/v1/monitor/data'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v1/openapi.ts b/database/src/pages/api/v1/openapi.ts new file mode 100644 index 0000000..b20e5ea --- /dev/null +++ b/database/src/pages/api/v1/openapi.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v1/openapi'; +import handler08 from '@/implementations/kb08/pages/api/v1/openapi'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/databases.ts b/database/src/pages/api/v2alpha/databases.ts new file mode 100644 index 0000000..ce04e60 --- /dev/null +++ b/database/src/pages/api/v2alpha/databases.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/databases'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/databases'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/databases/[databaseName].ts b/database/src/pages/api/v2alpha/databases/[databaseName].ts new file mode 100644 index 0000000..fd710a2 --- /dev/null +++ b/database/src/pages/api/v2alpha/databases/[databaseName].ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/databases/[databaseName]'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/databases/[databaseName]'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/databases/[databaseName]/backups/[backupName].ts b/database/src/pages/api/v2alpha/databases/[databaseName]/backups/[backupName].ts new file mode 100644 index 0000000..05914ce --- /dev/null +++ b/database/src/pages/api/v2alpha/databases/[databaseName]/backups/[backupName].ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]/restore.ts b/database/src/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]/restore.ts new file mode 100644 index 0000000..2fd1f83 --- /dev/null +++ b/database/src/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]/restore.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]/restore'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/backups/[backupName]/restore'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/databases/[databaseName]/backups/index.ts b/database/src/pages/api/v2alpha/databases/[databaseName]/backups/index.ts new file mode 100644 index 0000000..13ecdd3 --- /dev/null +++ b/database/src/pages/api/v2alpha/databases/[databaseName]/backups/index.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/databases/[databaseName]/backups/index'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/backups/index'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/databases/[databaseName]/disable-public.ts b/database/src/pages/api/v2alpha/databases/[databaseName]/disable-public.ts new file mode 100644 index 0000000..3596c5e --- /dev/null +++ b/database/src/pages/api/v2alpha/databases/[databaseName]/disable-public.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/databases/[databaseName]/disable-public'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/disable-public'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/databases/[databaseName]/enable-public.ts b/database/src/pages/api/v2alpha/databases/[databaseName]/enable-public.ts new file mode 100644 index 0000000..0a8e519 --- /dev/null +++ b/database/src/pages/api/v2alpha/databases/[databaseName]/enable-public.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/databases/[databaseName]/enable-public'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/enable-public'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/databases/[databaseName]/pause.ts b/database/src/pages/api/v2alpha/databases/[databaseName]/pause.ts new file mode 100644 index 0000000..db35e3b --- /dev/null +++ b/database/src/pages/api/v2alpha/databases/[databaseName]/pause.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/databases/[databaseName]/pause'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/pause'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/databases/[databaseName]/restart.ts b/database/src/pages/api/v2alpha/databases/[databaseName]/restart.ts new file mode 100644 index 0000000..e7bd033 --- /dev/null +++ b/database/src/pages/api/v2alpha/databases/[databaseName]/restart.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/databases/[databaseName]/restart'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/restart'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/databases/[databaseName]/start.ts b/database/src/pages/api/v2alpha/databases/[databaseName]/start.ts new file mode 100644 index 0000000..df55717 --- /dev/null +++ b/database/src/pages/api/v2alpha/databases/[databaseName]/start.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/databases/[databaseName]/start'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/databases/[databaseName]/start'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/databases/versions.ts b/database/src/pages/api/v2alpha/databases/versions.ts new file mode 100644 index 0000000..0cbc26a --- /dev/null +++ b/database/src/pages/api/v2alpha/databases/versions.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/databases/versions'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/databases/versions'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/logs/files.ts b/database/src/pages/api/v2alpha/logs/files.ts new file mode 100644 index 0000000..b093fc3 --- /dev/null +++ b/database/src/pages/api/v2alpha/logs/files.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/logs/files'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/logs/files'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/logs/index.ts b/database/src/pages/api/v2alpha/logs/index.ts new file mode 100644 index 0000000..b21772a --- /dev/null +++ b/database/src/pages/api/v2alpha/logs/index.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/logs/index'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/logs/index'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/monitor/data.ts b/database/src/pages/api/v2alpha/monitor/data.ts new file mode 100644 index 0000000..ec1d079 --- /dev/null +++ b/database/src/pages/api/v2alpha/monitor/data.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/monitor/data'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/monitor/data'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/v2alpha/openapi.ts b/database/src/pages/api/v2alpha/openapi.ts new file mode 100644 index 0000000..6b88a13 --- /dev/null +++ b/database/src/pages/api/v2alpha/openapi.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/v2alpha/openapi'; +import handler08 from '@/implementations/kb08/pages/api/v2alpha/openapi'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/vlogs/database-log-counts.ts b/database/src/pages/api/vlogs/database-log-counts.ts new file mode 100644 index 0000000..0647024 --- /dev/null +++ b/database/src/pages/api/vlogs/database-log-counts.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/vlogs/database-log-counts'; +import handler08 from '@/implementations/kb08/pages/api/vlogs/database-log-counts'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/vlogs/database-logs.ts b/database/src/pages/api/vlogs/database-logs.ts new file mode 100644 index 0000000..0731a35 --- /dev/null +++ b/database/src/pages/api/vlogs/database-logs.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/vlogs/database-logs'; +import handler08 from '@/implementations/kb08/pages/api/vlogs/database-logs'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/api/vlogs/database-pods.ts b/database/src/pages/api/vlogs/database-pods.ts new file mode 100644 index 0000000..d2a7ae2 --- /dev/null +++ b/database/src/pages/api/vlogs/database-pods.ts @@ -0,0 +1,4 @@ +import { versionedHandler } from '@/services/backend/kubeblocks'; +import handler09 from '@/implementations/kb09/pages/api/vlogs/database-pods'; +import handler08 from '@/implementations/kb08/pages/api/vlogs/database-pods'; +export default versionedHandler({ '0.9': handler09, '0.8': handler08 }); diff --git a/database/src/pages/backups/index.tsx b/database/src/pages/backups/index.tsx new file mode 100644 index 0000000..0fd8bcb --- /dev/null +++ b/database/src/pages/backups/index.tsx @@ -0,0 +1,8 @@ +import { versionedPage } from '@/kubeblocks/page'; +import Page09 from '@/implementations/kb09/pages/backups/index'; +import Page08 from '@/implementations/kb08/pages/backups/index'; +export default versionedPage({ '0.9': Page09, '0.8': Page08 }); +import { versionedServerSideProps } from '@/services/backend/kubeblocks'; +import { getServerSideProps as props09 } from '@/implementations/kb09/pages/backups/index.server'; +import { getServerSideProps as props08 } from '@/implementations/kb08/pages/backups/index.server'; +export const getServerSideProps = versionedServerSideProps({ '0.9': props09, '0.8': props08 }); diff --git a/database/src/pages/db/detail/index.tsx b/database/src/pages/db/detail/index.tsx new file mode 100644 index 0000000..5202a93 --- /dev/null +++ b/database/src/pages/db/detail/index.tsx @@ -0,0 +1,8 @@ +import { versionedPage } from '@/kubeblocks/page'; +import Page09 from '@/implementations/kb09/pages/db/detail/index'; +import Page08 from '@/implementations/kb08/pages/db/detail/index'; +export default versionedPage({ '0.9': Page09, '0.8': Page08 }); +import { versionedServerSideProps } from '@/services/backend/kubeblocks'; +import { getServerSideProps as props09 } from '@/implementations/kb09/pages/db/detail/index.server'; +import { getServerSideProps as props08 } from '@/implementations/kb08/pages/db/detail/index.server'; +export const getServerSideProps = versionedServerSideProps({ '0.9': props09, '0.8': props08 }); diff --git a/database/src/pages/db/edit/index.tsx b/database/src/pages/db/edit/index.tsx new file mode 100644 index 0000000..21e5045 --- /dev/null +++ b/database/src/pages/db/edit/index.tsx @@ -0,0 +1,8 @@ +import { versionedPage } from '@/kubeblocks/page'; +import Page09 from '@/implementations/kb09/pages/db/edit/index'; +import Page08 from '@/implementations/kb08/pages/db/edit/index'; +export default versionedPage({ '0.9': Page09, '0.8': Page08 }); +import { versionedServerSideProps } from '@/services/backend/kubeblocks'; +import { getServerSideProps as props09 } from '@/implementations/kb09/pages/db/edit/index.server'; +import { getServerSideProps as props08 } from '@/implementations/kb08/pages/db/edit/index.server'; +export const getServerSideProps = versionedServerSideProps({ '0.9': props09, '0.8': props08 }); diff --git a/database/src/pages/db/migrate/index.tsx b/database/src/pages/db/migrate/index.tsx new file mode 100644 index 0000000..ba80d85 --- /dev/null +++ b/database/src/pages/db/migrate/index.tsx @@ -0,0 +1,8 @@ +import { versionedPage } from '@/kubeblocks/page'; +import Page09 from '@/implementations/kb09/pages/db/migrate/index'; +import Page08 from '@/implementations/kb08/pages/db/migrate/index'; +export default versionedPage({ '0.9': Page09, '0.8': Page08 }); +import { versionedServerSideProps } from '@/services/backend/kubeblocks'; +import { getServerSideProps as props09 } from '@/implementations/kb09/pages/db/migrate/index.server'; +import { getServerSideProps as props08 } from '@/implementations/kb08/pages/db/migrate/index.server'; +export const getServerSideProps = versionedServerSideProps({ '0.9': props09, '0.8': props08 }); diff --git a/database/src/pages/dbs/index.tsx b/database/src/pages/dbs/index.tsx new file mode 100644 index 0000000..55c1591 --- /dev/null +++ b/database/src/pages/dbs/index.tsx @@ -0,0 +1,8 @@ +import { versionedPage } from '@/kubeblocks/page'; +import Page09 from '@/implementations/kb09/pages/dbs/index'; +import Page08 from '@/implementations/kb08/pages/dbs/index'; +export default versionedPage({ '0.9': Page09, '0.8': Page08 }); +import { versionedServerSideProps } from '@/services/backend/kubeblocks'; +import { getServerSideProps as props09 } from '@/implementations/kb09/pages/dbs/index.server'; +import { getServerSideProps as props08 } from '@/implementations/kb08/pages/dbs/index.server'; +export const getServerSideProps = versionedServerSideProps({ '0.9': props09, '0.8': props08 }); diff --git a/database/src/pages/doc/v2alpha.tsx b/database/src/pages/doc/v2alpha.tsx new file mode 100644 index 0000000..d4c6f87 --- /dev/null +++ b/database/src/pages/doc/v2alpha.tsx @@ -0,0 +1,4 @@ +import { versionedPage } from '@/kubeblocks/page'; +import Page09 from '@/implementations/kb09/pages/doc/v2alpha'; +import Page08 from '@/implementations/kb08/pages/doc/v2alpha'; +export default versionedPage({ '0.9': Page09, '0.8': Page08 }); diff --git a/database/src/pages/healthz.ts b/database/src/pages/healthz.ts new file mode 100644 index 0000000..bb65aff --- /dev/null +++ b/database/src/pages/healthz.ts @@ -0,0 +1 @@ +export { default, getServerSideProps } from '@/implementations/kb08/pages/healthz'; diff --git a/database/src/pages/icons/index.tsx b/database/src/pages/icons/index.tsx new file mode 100644 index 0000000..2325dbd --- /dev/null +++ b/database/src/pages/icons/index.tsx @@ -0,0 +1,4 @@ +import { versionedPage } from '@/kubeblocks/page'; +import Page09 from '@/implementations/kb09/pages/icons/index'; +import Page08 from '@/implementations/kb08/pages/icons/index'; +export default versionedPage({ '0.9': Page09, '0.8': Page08 }); diff --git a/database/src/pages/redirect.tsx b/database/src/pages/redirect.tsx new file mode 100644 index 0000000..08c8e0f --- /dev/null +++ b/database/src/pages/redirect.tsx @@ -0,0 +1,4 @@ +import { versionedPage } from '@/kubeblocks/page'; +import Page09 from '@/implementations/kb09/pages/redirect'; +import Page08 from '@/implementations/kb08/pages/redirect'; +export default versionedPage({ '0.9': Page09, '0.8': Page08 }); diff --git a/main/database/src/services/backend/apis/create-database.ts b/database/src/services/backend/apis/create-database.ts similarity index 98% rename from main/database/src/services/backend/apis/create-database.ts rename to database/src/services/backend/apis/create-database.ts index f891835..9910644 100644 --- a/main/database/src/services/backend/apis/create-database.ts +++ b/database/src/services/backend/apis/create-database.ts @@ -8,7 +8,7 @@ import { import { getK8s } from '../kubernetes'; import { z } from 'zod'; import { BackupSupportedDBTypeList } from '@/constants/db'; -import { updateBackupPolicyApi } from '@/pages/api/backup/updatePolicy'; +import { updateBackupPolicyApi } from '@/implementations/kb09/pages/api/backup/updatePolicy'; import { KbPgClusterType } from '@/types/cluster'; import { adaptDBDetail, convertBackupFormToSpec } from '@/utils/adapt'; import { json2Account, json2CreateCluster, json2ParameterConfig } from '@/utils/json2Yaml'; diff --git a/release-v5.1/database/src/services/backend/apis/delete-database.ts b/database/src/services/backend/apis/delete-database.ts similarity index 90% rename from release-v5.1/database/src/services/backend/apis/delete-database.ts rename to database/src/services/backend/apis/delete-database.ts index c10292b..ebe6466 100644 --- a/release-v5.1/database/src/services/backend/apis/delete-database.ts +++ b/database/src/services/backend/apis/delete-database.ts @@ -1,10 +1,10 @@ import { getDatabaseSchemas, updateDatabaseSchemas } from '@/types/apis'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { delMigrateByName } from '@/pages/api/migrate/delete'; -import { GetJobByName, DeleteJobByName } from '@/pages/api/migrate/delJobByName'; +import { delMigrateByName } from '@/implementations/kb09/pages/api/migrate/delete'; +import { GetJobByName, DeleteJobByName } from '@/implementations/kb09/pages/api/migrate/delJobByName'; import { CloudMigraionLabel } from '@/constants/db'; -import { getMigrateList } from '@/pages/api/migrate/list'; +import { getMigrateList } from '@/implementations/kb09/pages/api/migrate/list'; export async function deleteDatabase( k8s: Awaited>, request: { diff --git a/main/database/src/services/backend/apis/get-database.ts b/database/src/services/backend/apis/get-database.ts similarity index 100% rename from main/database/src/services/backend/apis/get-database.ts rename to database/src/services/backend/apis/get-database.ts diff --git a/main/database/src/services/backend/apis/list-database.ts b/database/src/services/backend/apis/list-database.ts similarity index 100% rename from main/database/src/services/backend/apis/list-database.ts rename to database/src/services/backend/apis/list-database.ts diff --git a/main/database/src/services/backend/apis/pause-database.ts b/database/src/services/backend/apis/pause-database.ts similarity index 95% rename from main/database/src/services/backend/apis/pause-database.ts rename to database/src/services/backend/apis/pause-database.ts index 9b7de52..f03fef1 100644 --- a/main/database/src/services/backend/apis/pause-database.ts +++ b/database/src/services/backend/apis/pause-database.ts @@ -1,7 +1,7 @@ import { pauseDatabaseSchemas } from '@/types/apis'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { getCluster } from '@/pages/api/getDBByName'; +import { getCluster } from '@/implementations/kb09/pages/api/getDBByName'; import { json2BasicOps } from '@/utils/json2Yaml'; import { PatchUtils } from '@kubernetes/client-node'; import { NextApiRequest } from 'next'; diff --git a/main/database/src/services/backend/apis/restart-database.ts b/database/src/services/backend/apis/restart-database.ts similarity index 91% rename from main/database/src/services/backend/apis/restart-database.ts rename to database/src/services/backend/apis/restart-database.ts index 5ddb78c..3dcdcf6 100644 --- a/main/database/src/services/backend/apis/restart-database.ts +++ b/database/src/services/backend/apis/restart-database.ts @@ -1,7 +1,7 @@ import { restartDatabaseSchemas } from '@/types/apis'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { getCluster } from '@/pages/api/getDBByName'; +import { getCluster } from '@/implementations/kb09/pages/api/getDBByName'; import { json2BasicOps } from '@/utils/json2Yaml'; import { NextApiRequest } from 'next'; diff --git a/main/database/src/services/backend/apis/start-database.ts b/database/src/services/backend/apis/start-database.ts similarity index 94% rename from main/database/src/services/backend/apis/start-database.ts rename to database/src/services/backend/apis/start-database.ts index bb872aa..03ed4d0 100644 --- a/main/database/src/services/backend/apis/start-database.ts +++ b/database/src/services/backend/apis/start-database.ts @@ -1,7 +1,7 @@ import { startDatabaseSchemas } from '@/types/apis'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { getCluster } from '@/pages/api/getDBByName'; +import { getCluster } from '@/implementations/kb09/pages/api/getDBByName'; import { json2BasicOps } from '@/utils/json2Yaml'; import { PatchUtils } from '@kubernetes/client-node'; import { NextApiRequest } from 'next'; diff --git a/main/database/src/services/backend/apis/update-database.ts b/database/src/services/backend/apis/update-database.ts similarity index 100% rename from main/database/src/services/backend/apis/update-database.ts rename to database/src/services/backend/apis/update-database.ts diff --git a/main/database/src/services/backend/auth.ts b/database/src/services/backend/auth.ts similarity index 100% rename from main/database/src/services/backend/auth.ts rename to database/src/services/backend/auth.ts diff --git a/main/database/src/services/backend/database-config.ts b/database/src/services/backend/database-config.ts similarity index 100% rename from main/database/src/services/backend/database-config.ts rename to database/src/services/backend/database-config.ts diff --git a/release-v5.1/database/src/services/backend/dataflow.ts b/database/src/services/backend/dataflow.ts similarity index 100% rename from release-v5.1/database/src/services/backend/dataflow.ts rename to database/src/services/backend/dataflow.ts diff --git a/main/database/src/services/backend/db-version.ts b/database/src/services/backend/db-version.ts similarity index 100% rename from main/database/src/services/backend/db-version.ts rename to database/src/services/backend/db-version.ts diff --git a/database/src/services/backend/kubeblocks.ts b/database/src/services/backend/kubeblocks.ts new file mode 100644 index 0000000..40be643 --- /dev/null +++ b/database/src/services/backend/kubeblocks.ts @@ -0,0 +1,30 @@ +import { Config } from '@/config'; +import { parseKubeBlocksVersion, type KubeBlocksVersion } from '@/kubeblocks/version'; +import type { NextApiHandler, GetServerSideProps } from 'next'; + +export function getKubeBlocksVersion(): KubeBlocksVersion { + return parseKubeBlocksVersion(Config().database.kubeblocks.version); +} + +// Never fall through to another version for a missing operation. +export function versionedHandler( + handlers: Partial> +): NextApiHandler { + return (req, res) => { + const handler = handlers[getKubeBlocksVersion()]; + if (!handler) + return res + .status(404) + .json({ code: 404, message: 'Not supported by this KubeBlocks version' }); + return handler(req, res); + }; +} + +export function versionedServerSideProps( + handlers: Partial> +): GetServerSideProps { + return (context) => { + const handler = handlers[getKubeBlocksVersion()]; + return handler ? handler(context) : Promise.resolve({ notFound: true }); + }; +} diff --git a/main/database/src/services/backend/kubernetes.ts b/database/src/services/backend/kubernetes.ts similarity index 100% rename from main/database/src/services/backend/kubernetes.ts rename to database/src/services/backend/kubernetes.ts diff --git a/main/database/src/services/backend/middleware.ts b/database/src/services/backend/middleware.ts similarity index 100% rename from main/database/src/services/backend/middleware.ts rename to database/src/services/backend/middleware.ts diff --git a/main/database/src/services/backend/response.ts b/database/src/services/backend/response.ts similarity index 100% rename from main/database/src/services/backend/response.ts rename to database/src/services/backend/response.ts diff --git a/main/database/src/services/backend/v2alpha/create-database.ts b/database/src/services/backend/v2alpha/create-database.ts similarity index 98% rename from main/database/src/services/backend/v2alpha/create-database.ts rename to database/src/services/backend/v2alpha/create-database.ts index f7f037b..ac0b956 100644 --- a/main/database/src/services/backend/v2alpha/create-database.ts +++ b/database/src/services/backend/v2alpha/create-database.ts @@ -8,7 +8,7 @@ import { import { getK8s } from '../kubernetes'; import { z } from 'zod'; import { BackupSupportedDBTypeList } from '@/constants/db'; -import { updateBackupPolicyApi } from '@/pages/api/backup/updatePolicy'; +import { updateBackupPolicyApi } from '@/implementations/kb09/pages/api/backup/updatePolicy'; import { KbPgClusterType } from '@/types/cluster'; import { adaptDBDetail, convertBackupFormToSpec } from '@/utils/adapt'; import { json2Account, json2CreateCluster, json2ParameterConfig } from '@/utils/json2Yaml'; diff --git a/main/database/src/services/backend/v2alpha/delete-database.ts b/database/src/services/backend/v2alpha/delete-database.ts similarity index 100% rename from main/database/src/services/backend/v2alpha/delete-database.ts rename to database/src/services/backend/v2alpha/delete-database.ts diff --git a/main/database/src/services/backend/v2alpha/get-database.ts b/database/src/services/backend/v2alpha/get-database.ts similarity index 100% rename from main/database/src/services/backend/v2alpha/get-database.ts rename to database/src/services/backend/v2alpha/get-database.ts diff --git a/main/database/src/services/backend/v2alpha/list-database.ts b/database/src/services/backend/v2alpha/list-database.ts similarity index 100% rename from main/database/src/services/backend/v2alpha/list-database.ts rename to database/src/services/backend/v2alpha/list-database.ts diff --git a/release-v5.1/database/src/services/backend/v2alpha/pause-database.ts b/database/src/services/backend/v2alpha/pause-database.ts similarity index 96% rename from release-v5.1/database/src/services/backend/v2alpha/pause-database.ts rename to database/src/services/backend/v2alpha/pause-database.ts index 029f238..a0287c7 100644 --- a/release-v5.1/database/src/services/backend/v2alpha/pause-database.ts +++ b/database/src/services/backend/v2alpha/pause-database.ts @@ -1,7 +1,7 @@ import { pauseDatabaseSchemas } from '@/types/apis/v2alpha'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { getCluster } from '@/pages/api/getDBByName'; +import { getCluster } from '@/implementations/kb09/pages/api/getDBByName'; import { json2BasicOps } from '@/utils/json2Yaml'; import { PatchUtils } from '@kubernetes/client-node'; import { NextApiRequest } from 'next'; diff --git a/main/database/src/services/backend/v2alpha/restart-database.ts b/database/src/services/backend/v2alpha/restart-database.ts similarity index 92% rename from main/database/src/services/backend/v2alpha/restart-database.ts rename to database/src/services/backend/v2alpha/restart-database.ts index e99721a..38db11c 100644 --- a/main/database/src/services/backend/v2alpha/restart-database.ts +++ b/database/src/services/backend/v2alpha/restart-database.ts @@ -1,7 +1,7 @@ import { restartDatabaseSchemas } from '@/types/apis/v2alpha'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { getCluster } from '@/pages/api/getDBByName'; +import { getCluster } from '@/implementations/kb09/pages/api/getDBByName'; import { json2BasicOps } from '@/utils/json2Yaml'; import { NextApiRequest } from 'next'; import { adaptDBDetail } from '@/utils/adapt'; diff --git a/release-v5.1/database/src/services/backend/v2alpha/start-database.ts b/database/src/services/backend/v2alpha/start-database.ts similarity index 95% rename from release-v5.1/database/src/services/backend/v2alpha/start-database.ts rename to database/src/services/backend/v2alpha/start-database.ts index 10fbd6f..dc85f5c 100644 --- a/release-v5.1/database/src/services/backend/v2alpha/start-database.ts +++ b/database/src/services/backend/v2alpha/start-database.ts @@ -1,7 +1,7 @@ import { startDatabaseSchemas } from '@/types/apis/v2alpha'; import { getK8s } from '../kubernetes'; import { z } from 'zod'; -import { getCluster } from '@/pages/api/getDBByName'; +import { getCluster } from '@/implementations/kb09/pages/api/getDBByName'; import { json2BasicOps } from '@/utils/json2Yaml'; import { PatchUtils } from '@kubernetes/client-node'; import { NextApiRequest } from 'next'; diff --git a/main/database/src/services/backend/v2alpha/update-database.ts b/database/src/services/backend/v2alpha/update-database.ts similarity index 100% rename from main/database/src/services/backend/v2alpha/update-database.ts rename to database/src/services/backend/v2alpha/update-database.ts diff --git a/main/database/src/services/kubernet.ts b/database/src/services/kubernet.ts similarity index 100% rename from main/database/src/services/kubernet.ts rename to database/src/services/kubernet.ts diff --git a/main/database/src/services/monitorFetch.ts b/database/src/services/monitorFetch.ts similarity index 100% rename from main/database/src/services/monitorFetch.ts rename to database/src/services/monitorFetch.ts diff --git a/main/database/src/services/request.ts b/database/src/services/request.ts similarity index 100% rename from main/database/src/services/request.ts rename to database/src/services/request.ts diff --git a/main/database/src/services/streamFetch.ts b/database/src/services/streamFetch.ts similarity index 100% rename from main/database/src/services/streamFetch.ts rename to database/src/services/streamFetch.ts diff --git a/main/database/src/store/date.ts b/database/src/store/date.ts similarity index 100% rename from main/database/src/store/date.ts rename to database/src/store/date.ts diff --git a/main/database/src/store/db.ts b/database/src/store/db.ts similarity index 100% rename from main/database/src/store/db.ts rename to database/src/store/db.ts diff --git a/main/database/src/store/global.ts b/database/src/store/global.ts similarity index 100% rename from main/database/src/store/global.ts rename to database/src/store/global.ts diff --git a/main/database/src/store/guide.ts b/database/src/store/guide.ts similarity index 100% rename from main/database/src/store/guide.ts rename to database/src/store/guide.ts diff --git a/main/database/src/store/hostConfig.ts b/database/src/store/hostConfig.ts similarity index 100% rename from main/database/src/store/hostConfig.ts rename to database/src/store/hostConfig.ts diff --git a/main/database/src/store/static.ts b/database/src/store/static.ts similarity index 93% rename from main/database/src/store/static.ts rename to database/src/store/static.ts index 474c9e6..9049508 100644 --- a/main/database/src/store/static.ts +++ b/database/src/store/static.ts @@ -1,7 +1,7 @@ import { getDBVersionMap, getResourcePrice } from '@/api/platform'; import { DBTypeEnum } from '@/constants/db'; -import type { Response as DBVersionMapType } from '@/pages/api/platform/getVersion'; -import type { Response as resourcePriceResponse } from '@/pages/api/platform/resourcePrice'; +import type { Response as DBVersionMapType } from '@/implementations/kb09/pages/api/platform/getVersion'; +import type { Response as resourcePriceResponse } from '@/implementations/kb09/pages/api/platform/resourcePrice'; export let SOURCE_PRICE: resourcePriceResponse = { cpu: 0.067, diff --git a/main/database/src/store/user.ts b/database/src/store/user.ts similarity index 100% rename from main/database/src/store/user.ts rename to database/src/store/user.ts diff --git a/main/database/src/styles/global.scss b/database/src/styles/global.scss similarity index 100% rename from main/database/src/styles/global.scss rename to database/src/styles/global.scss diff --git a/main/database/src/styles/reset.scss b/database/src/styles/reset.scss similarity index 100% rename from main/database/src/styles/reset.scss rename to database/src/styles/reset.scss diff --git a/release-v5.1/database/src/types/apis/backup/create-backup.ts b/database/src/types/apis/backup/create-backup.ts similarity index 100% rename from release-v5.1/database/src/types/apis/backup/create-backup.ts rename to database/src/types/apis/backup/create-backup.ts diff --git a/main/database/src/types/apis/backup/delete-backup.ts b/database/src/types/apis/backup/delete-backup.ts similarity index 100% rename from main/database/src/types/apis/backup/delete-backup.ts rename to database/src/types/apis/backup/delete-backup.ts diff --git a/release-v5.1/database/src/types/apis/backup/restore-backup.ts b/database/src/types/apis/backup/restore-backup.ts similarity index 100% rename from release-v5.1/database/src/types/apis/backup/restore-backup.ts rename to database/src/types/apis/backup/restore-backup.ts diff --git a/release-v5.1/database/src/types/apis/database/create-database.ts b/database/src/types/apis/database/create-database.ts similarity index 100% rename from release-v5.1/database/src/types/apis/database/create-database.ts rename to database/src/types/apis/database/create-database.ts diff --git a/main/database/src/types/apis/database/delete-database.ts b/database/src/types/apis/database/delete-database.ts similarity index 100% rename from main/database/src/types/apis/database/delete-database.ts rename to database/src/types/apis/database/delete-database.ts diff --git a/main/database/src/types/apis/database/get-database.ts b/database/src/types/apis/database/get-database.ts similarity index 100% rename from main/database/src/types/apis/database/get-database.ts rename to database/src/types/apis/database/get-database.ts diff --git a/release-v5.1/database/src/types/apis/database/list-database.ts b/database/src/types/apis/database/list-database.ts similarity index 100% rename from release-v5.1/database/src/types/apis/database/list-database.ts rename to database/src/types/apis/database/list-database.ts diff --git a/main/database/src/types/apis/database/pause-database.ts b/database/src/types/apis/database/pause-database.ts similarity index 100% rename from main/database/src/types/apis/database/pause-database.ts rename to database/src/types/apis/database/pause-database.ts diff --git a/main/database/src/types/apis/database/restart-database.ts b/database/src/types/apis/database/restart-database.ts similarity index 100% rename from main/database/src/types/apis/database/restart-database.ts rename to database/src/types/apis/database/restart-database.ts diff --git a/main/database/src/types/apis/database/start-database.ts b/database/src/types/apis/database/start-database.ts similarity index 100% rename from main/database/src/types/apis/database/start-database.ts rename to database/src/types/apis/database/start-database.ts diff --git a/main/database/src/types/apis/database/update-database.ts b/database/src/types/apis/database/update-database.ts similarity index 100% rename from main/database/src/types/apis/database/update-database.ts rename to database/src/types/apis/database/update-database.ts diff --git a/main/database/src/types/apis/database/version/list.ts b/database/src/types/apis/database/version/list.ts similarity index 100% rename from main/database/src/types/apis/database/version/list.ts rename to database/src/types/apis/database/version/list.ts diff --git a/main/database/src/types/apis/index.ts b/database/src/types/apis/index.ts similarity index 100% rename from main/database/src/types/apis/index.ts rename to database/src/types/apis/index.ts diff --git a/main/database/src/types/apis/logs/data.ts b/database/src/types/apis/logs/data.ts similarity index 100% rename from main/database/src/types/apis/logs/data.ts rename to database/src/types/apis/logs/data.ts diff --git a/main/database/src/types/apis/logs/file.ts b/database/src/types/apis/logs/file.ts similarity index 100% rename from main/database/src/types/apis/logs/file.ts rename to database/src/types/apis/logs/file.ts diff --git a/main/database/src/types/apis/network/disable-public-access.ts b/database/src/types/apis/network/disable-public-access.ts similarity index 100% rename from main/database/src/types/apis/network/disable-public-access.ts rename to database/src/types/apis/network/disable-public-access.ts diff --git a/main/database/src/types/apis/network/enable-public-access.ts b/database/src/types/apis/network/enable-public-access.ts similarity index 100% rename from main/database/src/types/apis/network/enable-public-access.ts rename to database/src/types/apis/network/enable-public-access.ts diff --git a/main/database/src/types/apis/v2alpha/backup/create-backup.ts b/database/src/types/apis/v2alpha/backup/create-backup.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/backup/create-backup.ts rename to database/src/types/apis/v2alpha/backup/create-backup.ts diff --git a/main/database/src/types/apis/v2alpha/backup/delete-backup.ts b/database/src/types/apis/v2alpha/backup/delete-backup.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/backup/delete-backup.ts rename to database/src/types/apis/v2alpha/backup/delete-backup.ts diff --git a/main/database/src/types/apis/v2alpha/backup/restore-backup.ts b/database/src/types/apis/v2alpha/backup/restore-backup.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/backup/restore-backup.ts rename to database/src/types/apis/v2alpha/backup/restore-backup.ts diff --git a/main/database/src/types/apis/v2alpha/database/create-database.ts b/database/src/types/apis/v2alpha/database/create-database.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/database/create-database.ts rename to database/src/types/apis/v2alpha/database/create-database.ts diff --git a/main/database/src/types/apis/v2alpha/database/delete-database.ts b/database/src/types/apis/v2alpha/database/delete-database.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/database/delete-database.ts rename to database/src/types/apis/v2alpha/database/delete-database.ts diff --git a/main/database/src/types/apis/v2alpha/database/get-database.ts b/database/src/types/apis/v2alpha/database/get-database.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/database/get-database.ts rename to database/src/types/apis/v2alpha/database/get-database.ts diff --git a/main/database/src/types/apis/v2alpha/database/list-database.ts b/database/src/types/apis/v2alpha/database/list-database.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/database/list-database.ts rename to database/src/types/apis/v2alpha/database/list-database.ts diff --git a/main/database/src/types/apis/v2alpha/database/pause-database.ts b/database/src/types/apis/v2alpha/database/pause-database.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/database/pause-database.ts rename to database/src/types/apis/v2alpha/database/pause-database.ts diff --git a/main/database/src/types/apis/v2alpha/database/restart-database.ts b/database/src/types/apis/v2alpha/database/restart-database.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/database/restart-database.ts rename to database/src/types/apis/v2alpha/database/restart-database.ts diff --git a/main/database/src/types/apis/v2alpha/database/start-database.ts b/database/src/types/apis/v2alpha/database/start-database.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/database/start-database.ts rename to database/src/types/apis/v2alpha/database/start-database.ts diff --git a/main/database/src/types/apis/v2alpha/database/update-database.ts b/database/src/types/apis/v2alpha/database/update-database.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/database/update-database.ts rename to database/src/types/apis/v2alpha/database/update-database.ts diff --git a/main/database/src/types/apis/v2alpha/database/version/list.ts b/database/src/types/apis/v2alpha/database/version/list.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/database/version/list.ts rename to database/src/types/apis/v2alpha/database/version/list.ts diff --git a/main/database/src/types/apis/v2alpha/index.ts b/database/src/types/apis/v2alpha/index.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/index.ts rename to database/src/types/apis/v2alpha/index.ts diff --git a/main/database/src/types/apis/v2alpha/logs/data.ts b/database/src/types/apis/v2alpha/logs/data.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/logs/data.ts rename to database/src/types/apis/v2alpha/logs/data.ts diff --git a/main/database/src/types/apis/v2alpha/logs/file.ts b/database/src/types/apis/v2alpha/logs/file.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/logs/file.ts rename to database/src/types/apis/v2alpha/logs/file.ts diff --git a/main/database/src/types/apis/v2alpha/network/disable-public-access.ts b/database/src/types/apis/v2alpha/network/disable-public-access.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/network/disable-public-access.ts rename to database/src/types/apis/v2alpha/network/disable-public-access.ts diff --git a/main/database/src/types/apis/v2alpha/network/enable-public-access.ts b/database/src/types/apis/v2alpha/network/enable-public-access.ts similarity index 100% rename from main/database/src/types/apis/v2alpha/network/enable-public-access.ts rename to database/src/types/apis/v2alpha/network/enable-public-access.ts diff --git a/main/database/src/types/backup.d.ts b/database/src/types/backup.d.ts similarity index 100% rename from main/database/src/types/backup.d.ts rename to database/src/types/backup.d.ts diff --git a/main/database/src/types/cluster.d.ts b/database/src/types/cluster.d.ts similarity index 100% rename from main/database/src/types/cluster.d.ts rename to database/src/types/cluster.d.ts diff --git a/main/database/src/types/config.ts b/database/src/types/config.ts similarity index 75% rename from main/database/src/types/config.ts rename to database/src/types/config.ts index c7ca999..dada312 100644 --- a/main/database/src/types/config.ts +++ b/database/src/types/config.ts @@ -11,7 +11,7 @@ const CustomScriptSchema = z.union([ .enum(['afterInteractive', 'lazyOnload', 'beforeInteractive', 'worker']) .optional() .describe('Next.js Script loading strategy'), - id: z.string().describe('Script element ID') + id: z.string().optional().describe('Script element ID') }), z.strictObject({ content: z @@ -21,7 +21,7 @@ const CustomScriptSchema = z.union([ .enum(['afterInteractive', 'lazyOnload', 'beforeInteractive', 'worker']) .optional() .describe('Next.js Script loading strategy'), - id: z.string().describe('Script element ID') + id: z.string().optional().describe('Script element ID') }) ]); @@ -32,7 +32,9 @@ export type CustomScript = z.infer; */ const CloudSchema = z.strictObject({ domain: z.string().describe('Cloud platform domain (e.g. cloud.sealos.io)'), - desktopDomain: z.string().describe('Desktop application domain') + desktopDomain: z.string().describe('Desktop application domain'), + port: z.string().default(''), + disableHttps: z.boolean().default(false) }); /** @@ -41,7 +43,10 @@ const CloudSchema = z.strictObject({ const FeaturesSchema = z.strictObject({ guide: z.boolean().describe('Whether the interactive guide feature is enabled'), showDocument: z.boolean().describe('Whether to show the documentation entry button'), - fileImport: z.boolean().describe('Whether the MinIO-based file import feature is enabled') + fileImport: z.boolean().describe('Whether the MinIO-based file import feature is enabled'), + logs: z.boolean().default(false), + kafka: z.boolean().default(true), + managedDb: z.boolean().default(false) }); /** @@ -89,9 +94,13 @@ const MinioStorageSchema = z.strictObject({ * Same structure as applaunchpad components.eventAnalysis. */ const EventAnalysisSchema = z.strictObject({ - enabled: z.boolean().describe('Whether the FastGPT event analysis feature is enabled'), + enabled: z + .boolean() + .default(false) + .describe('Whether the FastGPT event analysis feature is enabled'), url: z .string() + .default('https://fastgpt.run/api/openapi') .describe('FastGPT API base URL without trailing slash, e.g. https://fastgpt.run/api/openapi'), modelId: z .string() @@ -104,20 +113,30 @@ const EventAnalysisSchema = z.strictObject({ * Migration job configuration schema. */ const MigrationSchema = z.strictObject({ - fetchFileImage: z.string().describe('Docker image for file fetch migration job'), + fetchFileImage: z + .string() + .default('quay.io/minio/mc:latest') + .describe('Docker image for file fetch migration job'), importDataImage: z.string().describe('Docker image for data import migration job'), jobCpuMillicores: z .number() .nonnegative() + .default(2000) .describe('CPU limit for migration jobs, in millicores'), - jobMemoryMiB: z.number().nonnegative().describe('Memory limit for migration jobs, in MiB'), + jobMemoryMiB: z + .number() + .nonnegative() + .default(4096) + .describe('Memory limit for migration jobs, in MiB'), dumpImportCpuMillicores: z .number() .nonnegative() + .default(2000) .describe('CPU limit for dump import jobs, in millicores'), dumpImportMemoryMiB: z .number() .nonnegative() + .default(4096) .describe('Memory limit for dump import jobs, in MiB') }); @@ -126,8 +145,16 @@ const MigrationSchema = z.strictObject({ */ const BackupSchema = z.strictObject({ enabled: z.boolean().describe('Whether database backup feature is enabled'), - jobCpuMillicores: z.number().nonnegative().describe('CPU limit for backup jobs, in millicores'), - jobMemoryMiB: z.number().nonnegative().describe('Memory limit for backup jobs, in MiB') + jobCpuMillicores: z + .number() + .nonnegative() + .default(300) + .describe('CPU limit for backup jobs, in millicores'), + jobMemoryMiB: z + .number() + .nonnegative() + .default(256) + .describe('Memory limit for backup jobs, in MiB') }); /** @@ -135,7 +162,7 @@ const BackupSchema = z.strictObject({ */ const AlertSchema = z.strictObject({ url: z.string().describe('Database alert service URL'), - secret: z.string().describe('Database alert service secret') + secret: z.string().default('').describe('Database alert service secret') }); /** @@ -143,7 +170,7 @@ const AlertSchema = z.strictObject({ */ const BillingSchema = z.strictObject({ url: z.string().describe('Billing service URL'), - secret: z.string().describe('Billing service secret (server-side only)') + secret: z.string().default('').describe('Billing service secret (server-side only)') }); const ComponentsSchema = z.strictObject({ @@ -181,6 +208,14 @@ const AnalyticsSchema = z.strictObject({ * Database-specific configuration schema. */ const DatabaseSchema = z.strictObject({ + kubeblocks: z + .strictObject({ + version: z + .enum(['0.8', '0.9']) + .default('0.9') + .describe('Target cluster KubeBlocks minor version; does not upgrade the operator') + }) + .default({ version: '0.9' }), features: FeaturesSchema.describe('Feature flags and behavior switches'), ui: UiSchema.describe('UI and branding configuration'), storage: StorageSchema.describe('Kubernetes storage configuration'), @@ -194,11 +229,32 @@ const DatabaseSchema = z.strictObject({ * Complete application configuration schema. * This is the canonical schema for server-side configuration loaded from YAML. */ -export const AppConfigSchema = z.strictObject({ +const UnifiedAppConfigSchema = z.strictObject({ cloud: CloudSchema.describe('Common cloud platform configuration'), database: DatabaseSchema.describe('Database application configuration') }); +// Pre-unification 0.8 YAML has these legacy-only fields and no version setting. +// Preserve that deployment mode when upgrading a manually mounted old config. +// Explicit settings always win; otherwise the established main default is 0.9. +export const AppConfigSchema = z.preprocess((input) => { + if (!input || typeof input !== 'object') return input; + const raw = input as Record; + const db = raw.database; + if ( + db && + db.kubeblocks === undefined && + raw.cloud?.port !== undefined && + raw.cloud?.disableHttps !== undefined && + db.features?.logs !== undefined && + db.features?.kafka !== undefined && + db.features?.managedDb !== undefined + ) { + return { ...raw, database: { ...db, kubeblocks: { version: '0.8' } } }; + } + return input; +}, UnifiedAppConfigSchema); + export type AppConfig = z.infer; /** diff --git a/main/database/src/types/db.d.ts b/database/src/types/db.d.ts similarity index 100% rename from main/database/src/types/db.d.ts rename to database/src/types/db.d.ts diff --git a/main/database/src/types/i18next.d.ts b/database/src/types/i18next.d.ts similarity index 87% rename from main/database/src/types/i18next.d.ts rename to database/src/types/i18next.d.ts index f42b7f1..2005e85 100644 --- a/main/database/src/types/i18next.d.ts +++ b/database/src/types/i18next.d.ts @@ -1,8 +1,9 @@ import 'i18next'; import common from '../../public/locales/zh/common.json'; +import legacyCommon from '../../public/locales-kb08/zh/common.json'; export interface I18nNamespaces { - common: typeof common; + common: typeof common & typeof legacyCommon; } export type I18nNsType = (keyof I18nNamespaces)[]; diff --git a/main/database/src/types/index.d.ts b/database/src/types/index.d.ts similarity index 100% rename from main/database/src/types/index.d.ts rename to database/src/types/index.d.ts diff --git a/main/database/src/types/log.ts b/database/src/types/log.ts similarity index 100% rename from main/database/src/types/log.ts rename to database/src/types/log.ts diff --git a/main/database/src/types/migrate.d.ts b/database/src/types/migrate.d.ts similarity index 100% rename from main/database/src/types/migrate.d.ts rename to database/src/types/migrate.d.ts diff --git a/main/database/src/types/monitor.d.ts b/database/src/types/monitor.d.ts similarity index 100% rename from main/database/src/types/monitor.d.ts rename to database/src/types/monitor.d.ts diff --git a/main/database/src/types/response.ts b/database/src/types/response.ts similarity index 100% rename from main/database/src/types/response.ts rename to database/src/types/response.ts diff --git a/main/database/src/types/schemas/backup.ts b/database/src/types/schemas/backup.ts similarity index 100% rename from main/database/src/types/schemas/backup.ts rename to database/src/types/schemas/backup.ts diff --git a/main/database/src/types/schemas/db.ts b/database/src/types/schemas/db.ts similarity index 100% rename from main/database/src/types/schemas/db.ts rename to database/src/types/schemas/db.ts diff --git a/main/database/src/types/schemas/logs.ts b/database/src/types/schemas/logs.ts similarity index 100% rename from main/database/src/types/schemas/logs.ts rename to database/src/types/schemas/logs.ts diff --git a/main/database/src/types/schemas/monitor.ts b/database/src/types/schemas/monitor.ts similarity index 100% rename from main/database/src/types/schemas/monitor.ts rename to database/src/types/schemas/monitor.ts diff --git a/main/database/src/types/schemas/password.ts b/database/src/types/schemas/password.ts similarity index 100% rename from main/database/src/types/schemas/password.ts rename to database/src/types/schemas/password.ts diff --git a/main/database/src/types/schemas/v2alpha/backup.ts b/database/src/types/schemas/v2alpha/backup.ts similarity index 100% rename from main/database/src/types/schemas/v2alpha/backup.ts rename to database/src/types/schemas/v2alpha/backup.ts diff --git a/main/database/src/types/schemas/v2alpha/db.ts b/database/src/types/schemas/v2alpha/db.ts similarity index 100% rename from main/database/src/types/schemas/v2alpha/db.ts rename to database/src/types/schemas/v2alpha/db.ts diff --git a/main/database/src/types/schemas/v2alpha/logs.ts b/database/src/types/schemas/v2alpha/logs.ts similarity index 100% rename from main/database/src/types/schemas/v2alpha/logs.ts rename to database/src/types/schemas/v2alpha/logs.ts diff --git a/main/database/src/types/schemas/v2alpha/monitor.ts b/database/src/types/schemas/v2alpha/monitor.ts similarity index 100% rename from main/database/src/types/schemas/v2alpha/monitor.ts rename to database/src/types/schemas/v2alpha/monitor.ts diff --git a/main/database/src/types/user.d.ts b/database/src/types/user.d.ts similarity index 100% rename from main/database/src/types/user.d.ts rename to database/src/types/user.d.ts diff --git a/main/database/src/types/v2alpha/error.ts b/database/src/types/v2alpha/error.ts similarity index 100% rename from main/database/src/types/v2alpha/error.ts rename to database/src/types/v2alpha/error.ts diff --git a/main/database/src/utils/adapt.ts b/database/src/utils/adapt.ts similarity index 99% rename from main/database/src/utils/adapt.ts rename to database/src/utils/adapt.ts index 296e0e1..0b0d9df 100644 --- a/main/database/src/utils/adapt.ts +++ b/database/src/utils/adapt.ts @@ -25,7 +25,7 @@ import type { OpsRequestItemType, PodDetailType, PodEvent -} from '@/types/db'; +} from '../types/db'; import { InternetMigrationCR, MigrateItemType } from '@/types/migrate'; import { convertCronTime, diff --git a/main/database/src/utils/cookieUtils.ts b/database/src/utils/cookieUtils.ts similarity index 100% rename from main/database/src/utils/cookieUtils.ts rename to database/src/utils/cookieUtils.ts diff --git a/main/database/src/utils/database.ts b/database/src/utils/database.ts similarity index 100% rename from main/database/src/utils/database.ts rename to database/src/utils/database.ts diff --git a/main/database/src/utils/i18n-client.ts b/database/src/utils/i18n-client.ts similarity index 100% rename from main/database/src/utils/i18n-client.ts rename to database/src/utils/i18n-client.ts diff --git a/main/database/src/utils/i18n.ts b/database/src/utils/i18n.ts similarity index 54% rename from main/database/src/utils/i18n.ts rename to database/src/utils/i18n.ts index b0d70a2..e99e8ec 100644 --- a/main/database/src/utils/i18n.ts +++ b/database/src/utils/i18n.ts @@ -1,11 +1,15 @@ import { serverSideTranslations } from 'next-i18next/serverSideTranslations'; +import { getKubeBlocksVersion } from '@/services/backend/kubeblocks'; import { LANG_KEY } from './cookieUtils'; export const serviceSideProps = (content: any) => { return serverSideTranslations( content.req.cookies[LANG_KEY] || 'zh', ['common'], - null, + { + i18n: { defaultLocale: 'zh', locales: ['en', 'zh'] }, + localePath: getKubeBlocksVersion() === '0.8' ? './public/locales-kb08' : './public/locales' + }, content.locales ); }; diff --git a/main/database/src/utils/json2Yaml.ts b/database/src/utils/json2Yaml.ts similarity index 99% rename from main/database/src/utils/json2Yaml.ts rename to database/src/utils/json2Yaml.ts index 262545e..88be40d 100644 --- a/main/database/src/utils/json2Yaml.ts +++ b/database/src/utils/json2Yaml.ts @@ -18,7 +18,7 @@ import yaml from 'js-yaml'; import { getUserNamespace } from './user'; import { V1StatefulSet } from '@kubernetes/client-node'; import { customAlphabet } from 'nanoid'; -import { SwitchMsData } from '@/pages/api/pod/switchPodMs'; +import { SwitchMsData } from '@/implementations/kb09/pages/api/pod/switchPodMs'; import { distributeResources } from './database'; import z from 'zod'; import { backupBaseSchema } from '@/types/schemas/backup'; diff --git a/main/database/src/utils/kubeFileSystem.ts b/database/src/utils/kubeFileSystem.ts similarity index 100% rename from main/database/src/utils/kubeFileSystem.ts rename to database/src/utils/kubeFileSystem.ts diff --git a/main/database/src/utils/logParsers/LogParser.ts b/database/src/utils/logParsers/LogParser.ts similarity index 100% rename from main/database/src/utils/logParsers/LogParser.ts rename to database/src/utils/logParsers/LogParser.ts diff --git a/main/database/src/utils/logParsers/MongoLogParser.ts b/database/src/utils/logParsers/MongoLogParser.ts similarity index 100% rename from main/database/src/utils/logParsers/MongoLogParser.ts rename to database/src/utils/logParsers/MongoLogParser.ts diff --git a/main/database/src/utils/logParsers/MysqlLogParser.ts b/database/src/utils/logParsers/MysqlLogParser.ts similarity index 100% rename from main/database/src/utils/logParsers/MysqlLogParser.ts rename to database/src/utils/logParsers/MysqlLogParser.ts diff --git a/main/database/src/utils/logParsers/PostgresLogParser.ts b/database/src/utils/logParsers/PostgresLogParser.ts similarity index 100% rename from main/database/src/utils/logParsers/PostgresLogParser.ts rename to database/src/utils/logParsers/PostgresLogParser.ts diff --git a/main/database/src/utils/logParsers/RedisLogParser.ts b/database/src/utils/logParsers/RedisLogParser.ts similarity index 100% rename from main/database/src/utils/logParsers/RedisLogParser.ts rename to database/src/utils/logParsers/RedisLogParser.ts diff --git a/main/database/src/utils/timeRange.ts b/database/src/utils/timeRange.ts similarity index 100% rename from main/database/src/utils/timeRange.ts rename to database/src/utils/timeRange.ts diff --git a/main/database/src/utils/tools.ts b/database/src/utils/tools.ts similarity index 99% rename from main/database/src/utils/tools.ts rename to database/src/utils/tools.ts index ea8c7dd..ac52cea 100644 --- a/main/database/src/utils/tools.ts +++ b/database/src/utils/tools.ts @@ -1,5 +1,5 @@ import { I18nCommonKey } from '@/types/i18next'; -import { useMessage } from '@sealos/ui'; +import { useMessage } from '@labring/sealos-chakra-ui'; import { addHours, format, set, startOfDay } from 'date-fns'; import dayjs from 'dayjs'; import utc from 'dayjs/plugin/utc'; diff --git a/main/database/src/utils/user.ts b/database/src/utils/user.ts similarity index 100% rename from main/database/src/utils/user.ts rename to database/src/utils/user.ts diff --git a/main/database/tsconfig.json b/database/tsconfig.json similarity index 100% rename from main/database/tsconfig.json rename to database/tsconfig.json diff --git a/main/database/vitest.config.mts b/database/vitest.config.mts similarity index 100% rename from main/database/vitest.config.mts rename to database/vitest.config.mts diff --git a/deploy/env.template b/deploy/env.template index 50c0b33..11d9b3e 100644 --- a/deploy/env.template +++ b/deploy/env.template @@ -27,3 +27,9 @@ SEALOS_CLOUD_DOMAIN= # installer sources these pins, so inherited environment values cannot replace # them. Use DATAFLOW_HELM_OPTS for an explicit DataFlow image override; change # prepare-bundle.sh arguments to configure the packaged Database image. + +# Database operator compatibility, installer input only (not a container env variable). +# Empty preserves Helm/user values: main profile defaults to 0.9, release-v5.1 to 0.8. +# Set 0.8 or 0.9 to match the cluster. Does not upgrade KubeBlocks or migrate data. +# Direct Helm override: --set-string dbproviderConfig.kubeblocksVersion=0.8 +KUBEBLOCKS_VERSION= diff --git a/deploy/install.sh b/deploy/install.sh index 15e5eb3..7081819 100644 --- a/deploy/install.sh +++ b/deploy/install.sh @@ -1,6 +1,11 @@ #!/usr/bin/env bash set -euo pipefail bundle_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +# Validate before either installer can mutate cluster resources. +case "${KUBEBLOCKS_VERSION:-}" in + ""|0.8|0.9) ;; + *) echo 'KUBEBLOCKS_VERSION must be 0.8 or 0.9' >&2; exit 1 ;; +esac # Separate releases preserve existing resource ownership, values and storage. ( cd "${bundle_dir}/dataflow" diff --git a/release-v5.1/database/deploy/Kubefile b/deploy/kubeblocks-0.8/Kubefile similarity index 100% rename from release-v5.1/database/deploy/Kubefile rename to deploy/kubeblocks-0.8/Kubefile diff --git a/release-v5.1/database/README.md b/deploy/kubeblocks-0.8/README.md similarity index 73% rename from release-v5.1/database/README.md rename to deploy/kubeblocks-0.8/README.md index 8fdf39f..1d6196c 100644 --- a/release-v5.1/database/README.md +++ b/deploy/kubeblocks-0.8/README.md @@ -1,4 +1,4 @@ -# sealos app launchpad +# KubeBlocks 0.8 deployment profile ## Deployment configuration @@ -34,92 +34,17 @@ installations must update their persisted user values explicitly. This setting d Kafka creation through the database APIs, and the Data Import setting only hides the tab in the database detail UI. -## project tree - -```bash -. -├── Dockerfile -├── Makefile -├── README.md -├── deploy -│ └── manifests -│ └── frontend.yaml -├── next-env.d.ts -├── next.config.js -├── package.json -├── pnpm-lock.yaml -├── public -│ └── favicon.ico -├── src -│ ├── api # FE api -│ ├── components # global components -│ │ ├── DBStatusTag -│ │ ├── ButtonGroup -│ │ ├── FormControl -│ │ ├── Icon -│ │ │ ├── icons # svg icon -│ │ │ └── index.tsx -│ │ ├── PodLineChart -│ │ ├── RangeInput -│ │ ├── RangeSlider -│ │ ├── Slider -│ │ └── YamlCode -│ ├── constants # global constant data -│ │ ├── app.ts -│ │ ├── editApp.ts -│ │ └── theme.ts -│ ├── hooks # global hooks -│ │ ├── useConfirm.tsx -│ │ ├── useLoading.tsx -│ │ ├── useScreen.ts -│ ├── mock -│ ├── pages -│ │ ├── 404.tsx -│ │ ├── _app.tsx -│ │ ├── _document.tsx -│ │ ├── api # server api -│ │ ├── app -│ │ │ ├── detail -│ │ │ └── edit -│ │ └── apps -│ │ └── index.tsx -│ ├── services # server function -│ │ ├── backend -│ │ │ ├── auth.ts -│ │ │ ├── kubernetes.ts -│ │ │ └── response.ts -│ │ ├── error.ts -│ │ ├── kubernet.ts -│ │ └── request.ts -│ ├── store # FE store -│ │ ├── app.ts -│ │ ├── global.ts -│ │ └── static.ts -│ ├── styles -│ │ └── reset.scss -│ ├── types -│ │ ├── app.d.ts -│ │ ├── index.d.ts -│ │ └── user.d.ts -│ └── utils -│ ├── adapt.ts # format api data -│ ├── deployYaml2Json.ts # form data to yaml -│ ├── tools.ts -│ └── user.ts -└── tsconfig.json -``` - ## Runtime configuration (release-v5.1) Application settings are loaded and validated at server startup from the ConfigMap mounted at `/app/data/config.yaml`, using the same `cloud` / `database` layout as -main. The release schema retains its own feature flags and migration image; a main -configuration file is not a drop-in replacement. `.env` application settings are no +main. The unified schema also retains the 0.8 feature flags and migration image. +Use this profile or explicitly select version "0.8" when targeting the old operator. `.env` application settings are no longer read. Node.js, Kubernetes service discovery, TLS and development mock-user environment variables remain environment variables. -For local development, copy `data/config.example.yaml` to `data/config.local.yaml` +For local development, copy `../../database/data/config.kb08.example.yaml` to `../../database/data/config.local.yaml` and edit its fields. The example lists the default chart configuration. For Helm, set the corresponding `dbproviderConfig` key in `/root/.sealos/cloud/values/apps/database/dbprovider-values.yaml`, or pass @@ -186,3 +111,12 @@ Offline validation: ```sh node --test tests/test_release_config.cjs # from repository root ``` + +## Unified application + +This directory contains deployment assets, not an independent Node workspace. +The configuration example is `../../database/data/config.kb08.example.yaml`. Build and run `../../database` for both modes. +This chart defaults `dbproviderConfig.kubeblocksVersion` to `"0.8"`; override +with Helm `--set-string dbproviderConfig.kubeblocksVersion=0.8` or the installer +input `KUBEBLOCKS_VERSION=0.8`. Application settings come only from YAML. +See the [repository README](../../README.md) for the unified runtime and tests. diff --git a/release-v5.1/database/deploy/charts/database-frontend/Chart.yaml b/deploy/kubeblocks-0.8/charts/database-frontend/Chart.yaml similarity index 100% rename from release-v5.1/database/deploy/charts/database-frontend/Chart.yaml rename to deploy/kubeblocks-0.8/charts/database-frontend/Chart.yaml diff --git a/release-v5.1/database/deploy/charts/database-frontend/database-frontend-values.yaml b/deploy/kubeblocks-0.8/charts/database-frontend/database-frontend-values.yaml similarity index 93% rename from release-v5.1/database/deploy/charts/database-frontend/database-frontend-values.yaml rename to deploy/kubeblocks-0.8/charts/database-frontend/database-frontend-values.yaml index 08e2483..220d75c 100644 --- a/release-v5.1/database/deploy/charts/database-frontend/database-frontend-values.yaml +++ b/deploy/kubeblocks-0.8/charts/database-frontend/database-frontend-values.yaml @@ -37,6 +37,8 @@ livenessProbe: # Application settings are rendered into /app/data/config.yaml. # Override dbproviderConfig keys in persisted user values or with Helm --set. dbproviderConfig: + # Target KubeBlocks version. Override with --set-string dbproviderConfig.kubeblocksVersion=0.8 or 0.9. + kubeblocksVersion: "0.8" # Direct Prometheus-compatible endpoint (not database-monitor). # Override via user values or --set-string dbproviderConfig.metricsUrl=. metricsUrl: "http://vmselect-vm-stack-victoria-metrics-k8s-stack.vm.svc.cluster.local:8481/select/0/prometheus" diff --git a/release-v5.1/database/deploy/charts/database-frontend/templates/_helpers.tpl b/deploy/kubeblocks-0.8/charts/database-frontend/templates/_helpers.tpl similarity index 100% rename from release-v5.1/database/deploy/charts/database-frontend/templates/_helpers.tpl rename to deploy/kubeblocks-0.8/charts/database-frontend/templates/_helpers.tpl diff --git a/release-v5.1/database/deploy/charts/database-frontend/templates/app.yaml b/deploy/kubeblocks-0.8/charts/database-frontend/templates/app.yaml similarity index 100% rename from release-v5.1/database/deploy/charts/database-frontend/templates/app.yaml rename to deploy/kubeblocks-0.8/charts/database-frontend/templates/app.yaml diff --git a/release-v5.1/database/deploy/charts/database-frontend/templates/configmap.yaml b/deploy/kubeblocks-0.8/charts/database-frontend/templates/configmap.yaml similarity index 88% rename from release-v5.1/database/deploy/charts/database-frontend/templates/configmap.yaml rename to deploy/kubeblocks-0.8/charts/database-frontend/templates/configmap.yaml index a8e0982..0e1a17f 100644 --- a/release-v5.1/database/deploy/charts/database-frontend/templates/configmap.yaml +++ b/deploy/kubeblocks-0.8/charts/database-frontend/templates/configmap.yaml @@ -1,3 +1,7 @@ +{{- $kbVersion := .Values.dbproviderConfig.kubeblocksVersion -}} +{{- if not (has $kbVersion (list "0.8" "0.9")) -}} +{{- fail "dbproviderConfig.kubeblocksVersion must be the string 0.8 or 0.9 (use --set-string)" -}} +{{- end -}} apiVersion: v1 kind: ConfigMap metadata: @@ -13,6 +17,8 @@ data: port: {{ .Values.dbproviderConfig.cloudPort | quote }} disableHttps: {{ .Values.dbproviderConfig.disableHttps }} database: + kubeblocks: + version: {{ $kbVersion | quote }} features: guide: {{ .Values.dbproviderConfig.guideEnabled }} showDocument: {{ .Values.dbproviderConfig.showDocument }} diff --git a/release-v5.1/database/deploy/charts/database-frontend/templates/deployment.yaml b/deploy/kubeblocks-0.8/charts/database-frontend/templates/deployment.yaml similarity index 100% rename from release-v5.1/database/deploy/charts/database-frontend/templates/deployment.yaml rename to deploy/kubeblocks-0.8/charts/database-frontend/templates/deployment.yaml diff --git a/release-v5.1/database/deploy/charts/database-frontend/templates/ingress.yaml b/deploy/kubeblocks-0.8/charts/database-frontend/templates/ingress.yaml similarity index 100% rename from release-v5.1/database/deploy/charts/database-frontend/templates/ingress.yaml rename to deploy/kubeblocks-0.8/charts/database-frontend/templates/ingress.yaml diff --git a/release-v5.1/database/deploy/charts/database-frontend/templates/rbac.yaml b/deploy/kubeblocks-0.8/charts/database-frontend/templates/rbac.yaml similarity index 95% rename from release-v5.1/database/deploy/charts/database-frontend/templates/rbac.yaml rename to deploy/kubeblocks-0.8/charts/database-frontend/templates/rbac.yaml index 361d7e6..5d5ccd0 100644 --- a/release-v5.1/database/deploy/charts/database-frontend/templates/rbac.yaml +++ b/deploy/kubeblocks-0.8/charts/database-frontend/templates/rbac.yaml @@ -17,7 +17,7 @@ rules: resources: [ 'addons' ] verbs: [ 'get', 'watch', 'list' ] - apiGroups: ['apps.kubeblocks.io'] - resources: ['clusterversions'] + resources: ['clusterversions', 'componentversions'] verbs: ['get', 'watch', 'list'] - apiGroups: ['dataprotection.kubeblocks.io'] resources: ['backuprepos'] diff --git a/release-v5.1/database/deploy/charts/database-frontend/templates/service.yaml b/deploy/kubeblocks-0.8/charts/database-frontend/templates/service.yaml similarity index 100% rename from release-v5.1/database/deploy/charts/database-frontend/templates/service.yaml rename to deploy/kubeblocks-0.8/charts/database-frontend/templates/service.yaml diff --git a/release-v5.1/database/deploy/charts/database-frontend/templates/tests/test-connection.yaml b/deploy/kubeblocks-0.8/charts/database-frontend/templates/tests/test-connection.yaml similarity index 100% rename from release-v5.1/database/deploy/charts/database-frontend/templates/tests/test-connection.yaml rename to deploy/kubeblocks-0.8/charts/database-frontend/templates/tests/test-connection.yaml diff --git a/release-v5.1/database/deploy/charts/database-frontend/values.yaml b/deploy/kubeblocks-0.8/charts/database-frontend/values.yaml similarity index 94% rename from release-v5.1/database/deploy/charts/database-frontend/values.yaml rename to deploy/kubeblocks-0.8/charts/database-frontend/values.yaml index e50f6c2..30de5c8 100644 --- a/release-v5.1/database/deploy/charts/database-frontend/values.yaml +++ b/deploy/kubeblocks-0.8/charts/database-frontend/values.yaml @@ -67,6 +67,8 @@ ingress: # Application settings are rendered into /app/data/config.yaml. # Override dbproviderConfig keys in persisted user values or with Helm --set. dbproviderConfig: + # Target KubeBlocks version. Override with --set-string dbproviderConfig.kubeblocksVersion=0.8 or 0.9. + kubeblocksVersion: "0.8" cloudDomain: "127.0.0.1.nip.io" cloudPort: "" certSecretName: "wildcard-cert" diff --git a/release-v5.1/database/deploy/database-frontend-entrypoint.sh b/deploy/kubeblocks-0.8/database-frontend-entrypoint.sh similarity index 97% rename from release-v5.1/database/deploy/database-frontend-entrypoint.sh rename to deploy/kubeblocks-0.8/database-frontend-entrypoint.sh index 9ce5297..959ab82 100755 --- a/release-v5.1/database/deploy/database-frontend-entrypoint.sh +++ b/deploy/kubeblocks-0.8/database-frontend-entrypoint.sh @@ -17,6 +17,12 @@ if [ -n "${HELM_OPTS:-}" ]; then HELM_EXTRA_ARGS+=("${PARSED_HELM_OPTS[@]}") fi +# An explicit installer override is rendered into YAML, never baked into the image. +case "${KUBEBLOCKS_VERSION:-}" in + ""|0.8|0.9) ;; + *) echo 'KUBEBLOCKS_VERSION must be 0.8 or 0.9' >&2; exit 1 ;; +esac + get_cm_value() { local namespace="$1" local name="$2" @@ -129,6 +135,7 @@ add_set_string dbproviderConfig.eventAnalysisFastGPTKey "${eventAnalysisFastGPTK add_set_string dbproviderConfig.migrateFileImage "${migrateFileImage:-${MIGRATE_FILE_IMAGE:-}}" add_set_string dbproviderConfig.backupEnabled "${backupEnabled:-${BACKUP_ENABLED:-}}" +add_set_string dbproviderConfig.kubeblocksVersion "${KUBEBLOCKS_VERSION:-}" add_set_string dbproviderConfig.metricsUrl "${metricsUrl:-${METRICS_URL:-}}" add_set_string dbproviderConfig.cloudDomain "${SEALOS_CLOUD_DOMAIN}" add_set_string dbproviderConfig.cloudPort "${SEALOS_CLOUD_PORT}" diff --git a/release-v5.1/database/deploy/scripts/update-backup-label.sh b/deploy/kubeblocks-0.8/scripts/update-backup-label.sh similarity index 100% rename from release-v5.1/database/deploy/scripts/update-backup-label.sh rename to deploy/kubeblocks-0.8/scripts/update-backup-label.sh diff --git a/main/Makefile b/main/Makefile deleted file mode 100644 index aa774f7..0000000 --- a/main/Makefile +++ /dev/null @@ -1,23 +0,0 @@ -DOCKER_USERNAME ?= -IMAGE_TAG ?= dev -PLATFORMS ?= linux/amd64,linux/arm64 -IMAGE := $(if $(DOCKER_USERNAME),$(DOCKER_USERNAME)/)sealos-database:$(IMAGE_TAG) - -.PHONY: all push-images fetch-deps build-packages build-database dev-database image-build-database image-push-database -all: image-build-database -push-images: image-push-database -fetch-deps: - pnpm fetch -build-packages: fetch-deps - pnpm -r --offline --filter='./packages/*' install - pnpm -r --filter='./packages/*' run build -build-database: build-packages - pnpm --offline --filter ./database install - pnpm --filter ./database run build -dev-database: build-packages - pnpm --offline --filter ./database install - pnpm --filter ./database run dev -image-build-database: - docker buildx build --platform=$(PLATFORMS) -t $(IMAGE) --build-arg path=database --build-arg name=database . -image-push-database: - docker buildx build --platform=$(PLATFORMS) --push -t $(IMAGE) --build-arg path=database --build-arg name=database . diff --git a/main/README.md b/main/README.md deleted file mode 100644 index f15b24a..0000000 --- a/main/README.md +++ /dev/null @@ -1,34 +0,0 @@ -# Database workspace - -This source workspace contains the Database application in `database/` and its -local UI components in `packages/ui/`. Shared, driver, GTM, and Desktop SDKs -come from published `@labring` npm packages. The application owns its host-config -store in `database/src/store/hostConfig.ts`. Run commands from this directory. - -## Development - -Use the Node and pnpm versions declared in `package.json`. - -```sh -pnpm install --frozen-lockfile -pnpm dev-db -pnpm build-database -``` - -Local configuration uses `database/data/config.yaml`; copy -`database/data/config.example.yaml` and fill in your environment's values. -The application configuration key is `database`. - -## Images and deployment packaging - -```sh -make image-build-database -make image-push-database DOCKER_USERNAME=your-registry IMAGE_TAG=your-tag -bash -n database/deploy/database-frontend-entrypoint.sh -helm lint database/deploy/charts/database-frontend -helm template dbprovider-frontend database/deploy/charts/database-frontend \ - --namespace dbprovider-frontend >/dev/null -``` - -Images target `linux/amd64` and `linux/arm64`. CI and publication details are in -[the repository README](../README.md). diff --git a/main/database/next.config.js b/main/database/next.config.js deleted file mode 100644 index dc7859c..0000000 --- a/main/database/next.config.js +++ /dev/null @@ -1,46 +0,0 @@ -/** @type {import('next').NextConfig} */ -const { i18n } = require('./next-i18next.config'); -const path = require('path'); -const nextConfig = { - i18n, - output: 'standalone', - reactStrictMode: false, - compress: true, - webpack: (config, { isServer }) => { - config.module.rules = config.module.rules.concat([ - { - test: /\.svg$/i, - issuer: /\.[jt]sx?$/, - use: ['@svgr/webpack'] - } - ]); - config.plugins = [...config.plugins]; - return config; - }, - transpilePackages: [ - '@sealos/ui', - '@labring/sealos-desktop-sdk', - '@labring/sealos-driver-sdk', - '@labring/sealos-shared-sdk', - '@labring/sealos-gtm-sdk' - ], - experimental: { - // this includes files from the workspace root one directory up - outputFileTracingRoot: path.join(__dirname, '../'), - instrumentationHook: true - }, - async rewrites() { - return [ - { - source: '/api/v2alpha/docs', - destination: '/doc/v2alpha' - }, - { - source: '/api/v2alpha/openapi.json', - destination: '/api/v2alpha/openapi' - } - ]; - } -}; - -module.exports = nextConfig; diff --git a/main/database/src/constants/theme.ts b/main/database/src/constants/theme.ts deleted file mode 100644 index e955941..0000000 --- a/main/database/src/constants/theme.ts +++ /dev/null @@ -1,48 +0,0 @@ -import { extendTheme } from '@chakra-ui/react'; -import { theme as SealosTheme } from '@sealos/ui'; -import { checkboxAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; - -const { definePartsStyle, defineMultiStyleConfig } = createMultiStyleConfigHelpers( - checkboxAnatomy.keys -); - -const checkbox = defineMultiStyleConfig({ - baseStyle: { - control: { - borderWidth: '1px', - borderRadius: '4px', - _checked: { - bg: '#F0FBFF', - borderColor: '#219BF4', - boxShadow: ' 0px 0px 0px 2.4px rgba(33, 155, 244, 0.15)', - _hover: { - bg: '#F0FBFF', - borderColor: '#219BF4' - } - }, - _hover: { - bg: 'transparent' - } - }, - icon: { - color: '#219BF4' - } - } -}); - -export const theme = extendTheme(SealosTheme, { - styles: { - global: { - 'html, body': { - color: 'grayModern.900', - fontSize: 'md', - height: '100%', - fontWeight: 400 - // overflowY: 'auto', - // minWidth: '700px' - } - } - }, - components: { Checkbox: checkbox } -}); diff --git a/main/database/src/hooks/useCopyData.ts b/main/database/src/hooks/useCopyData.ts deleted file mode 100644 index 47d3bbd..0000000 --- a/main/database/src/hooks/useCopyData.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { useMessage } from '@sealos/ui'; - -/** - * copy text data - */ -export const useCopyData = () => { - const { message: toast } = useMessage(); - - return { - copyData: async (data: string, title: string = '复制成功') => { - try { - if (navigator.clipboard) { - await navigator.clipboard.writeText(data); - } else { - throw new Error(''); - } - } catch (error) { - const textarea = document.createElement('textarea'); - textarea.value = data; - document.body.appendChild(textarea); - textarea.select(); - document.execCommand('copy'); - document.body.removeChild(textarea); - } - toast({ - position: 'top', - title, - status: 'success', - duration: 1000 - }); - } - }; -}; diff --git a/main/packages/ui/.eslintrc.json b/main/packages/ui/.eslintrc.json deleted file mode 100644 index bffb357..0000000 --- a/main/packages/ui/.eslintrc.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "next/core-web-vitals" -} diff --git a/main/packages/ui/package.json b/main/packages/ui/package.json deleted file mode 100644 index b835987..0000000 --- a/main/packages/ui/package.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "name": "@sealos/ui", - "version": "1.0.0", - "description": "", - "main": "./src/index.ts", - "src": "./src", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1", - "dev": "next dev", - "build": "exit 0" - }, - "keywords": [], - "author": "", - "license": "ISC", - "dependencies": { - "@chakra-ui/anatomy": "^2.2.1", - "@chakra-ui/icons": "^2.1.1", - "@chakra-ui/next-js": "^2.1.5", - "@chakra-ui/react": "^2.8.1", - "@chakra-ui/system": "^2.6.1", - "@emotion/react": "^11.11.1", - "@emotion/styled": "^11.11.0", - "framer-motion": "^10.16.4", - "react-markdown": "^8.0.7", - "react-syntax-highlighter": "^15.5.0", - "rollup-plugin-peer-deps-external": "^2.2.4" - }, - "peerDependencies": { - "react": "^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^18.0 || ^19.0 || ^19.0.0-rc" - }, - "devDependencies": { - "@rollup/plugin-commonjs": "^25.0.5", - "@rollup/plugin-node-resolve": "^15.2.3", - "@rollup/plugin-typescript": "^11.1.4", - "@types/react": "18.3.27", - "@types/react-syntax-highlighter": "^15.5.7", - "rollup": "2.79.1", - "rollup-plugin-dts": "^4.2.3", - "rollup-plugin-terser": "^7.0.2", - "rollup-plugin-typescript2": "^0.36.0", - "tslib": "^2.6.2", - "typescript": "^5.2.2" - } -} diff --git a/main/packages/ui/rollup.config.js b/main/packages/ui/rollup.config.js deleted file mode 100644 index a2df194..0000000 --- a/main/packages/ui/rollup.config.js +++ /dev/null @@ -1,32 +0,0 @@ -// rollup.config.js - -import peerDepsExternal from 'rollup-plugin-peer-deps-external'; -import resolve from '@rollup/plugin-node-resolve'; -import commonjs from '@rollup/plugin-commonjs'; -import { terser } from 'rollup-plugin-terser'; -import typescript from 'rollup-plugin-typescript2'; - -export default { - //entry point - input: './src/index.ts', - preserveModules: true, - - //output directory - output: [ - { - dir: './dist/esm/', - format: 'esm', - sourcemap: true, - exports: 'auto' - } - ], - - //plugins - plugins: [ - peerDepsExternal(), - resolve(), - commonjs(), - typescript({ useTsconfigDeclarationDir: true }), - terser() - ] -}; diff --git a/main/packages/ui/src/components/AutoComplete/index.tsx b/main/packages/ui/src/components/AutoComplete/index.tsx deleted file mode 100644 index d1f53b6..0000000 --- a/main/packages/ui/src/components/AutoComplete/index.tsx +++ /dev/null @@ -1,180 +0,0 @@ -'use client'; - -import { - Box, - Flex, - HStack, - Input, - Popover, - PopoverBody, - PopoverContent, - PopoverTrigger, - useDisclosure, - VStack, - Text -} from '@chakra-ui/react'; -import { CSSProperties, memo, useRef, useState } from 'react'; - -function AutoComplete({ - selectList, - value, - setValue, - supportNewValue = true, - inputPlaceholder = 'Search or create...', - inputSureToCreate = 'Create', - inputNotSupportToCreate = 'Not support' -}: { - selectList: string[]; - value: string; - setValue: (value: any) => void; - supportNewValue?: boolean; - inputPlaceholder?: string; // When there is no input in the Input box, prompt text - inputSureToCreate?: string; // When the Input box has content and it is a new resource that does not exist, prompt text - inputNotSupportToCreate?: string; // When the Input box has input content, but does not support creating new content, prompt text -}) { - const [inputValue, setInputValue] = useState(''); - const inputRef = useRef(null); - - const handleDatabaseNameSelect = (databasename: string) => { - setInputValue(databasename); - setValue(databasename); - handler.onClose(); - }; - const handler = useDisclosure(); - - const handleCreateDatabaseName = () => { - if (supportNewValue) { - setValue(inputValue); - handler.onClose(); - } - }; - - const svgStyle: CSSProperties = { - display: 'inline-block', - lineHeight: '1em', - color: '#667085', - flexShrink: 0, - verticalAlign: 'text-Top', - fill: 'currentColor', - width: '16px', - height: '16px' - }; - return ( - <> - { - handler.onOpen(); - inputRef.current?.focus(); - }} - onClose={handler.onClose} - > - - - - {value} - - - - - - - inputRef.current?.focus()}> - - { - setInputValue(e.target.value); - }} - autoFocus={true} - border="1px solid #219BF4" - boxShadow="0px 0px 0px 2.4px rgba(51, 112, 255, 0.15)" - borderRadius="4px" - fontSize="12px" - placeholder={inputPlaceholder} - _focus={{ - border: '1px solid #219BF4', - boxShadow: '0px 0px 0px 2.4px rgba(51, 112, 255, 0.15)' - }} - /> - - {selectList - .filter((v) => v.toLowerCase().includes(inputValue.toLowerCase())) - .map((v) => ( - handleDatabaseNameSelect(v)} - > - {v} - - ))} - - {inputValue && !selectList.find((v) => v === inputValue) && ( - - - - - - {supportNewValue - ? `${inputSureToCreate} ${inputValue}` - : inputNotSupportToCreate} - - - )} - - - - - - ); -} - -export default memo(AutoComplete); diff --git a/main/packages/ui/src/components/EditTabs/index.tsx b/main/packages/ui/src/components/EditTabs/index.tsx deleted file mode 100644 index bd7dffd..0000000 --- a/main/packages/ui/src/components/EditTabs/index.tsx +++ /dev/null @@ -1,92 +0,0 @@ -import { useMemo } from 'react'; -import { Box, Grid } from '@chakra-ui/react'; -import type { GridProps } from '@chakra-ui/react'; - -const EditTabs = ({ - list, - size = 'md', - activeId, - onChange, - ...props -}: { - list: { id: T; label: string }[]; - activeId: T; - size?: 'sm' | 'md' | 'lg'; - onChange: (id: T) => void; -} & Omit) => { - const sizeMap = useMemo(() => { - switch (size) { - case 'sm': - return { - fontSize: 'sm', - outP: '3px', - inlineP: 1 - }; - case 'md': - return { - fontSize: 'md', - outP: '4px', - inlineP: 2 - }; - case 'lg': - return { - fontSize: 'lg', - outP: '5px', - inlineP: 3 - }; - } - }, [size]); - const activeIndex = useMemo( - () => list.findIndex((item) => item.id === activeId), - [activeId, list] - ); - return ( - - {list.map((item, i) => ( - { - if (activeId === item.id) return; - onChange(item.id); - }} - > - {{item.label}} - - ))} - - ); -}; - -export default EditTabs; diff --git a/main/packages/ui/src/components/Menu/index.tsx b/main/packages/ui/src/components/Menu/index.tsx deleted file mode 100644 index d607f1f..0000000 --- a/main/packages/ui/src/components/Menu/index.tsx +++ /dev/null @@ -1,56 +0,0 @@ -import React from 'react'; -import { Menu, MenuList, MenuItem, MenuItemProps } from '@chakra-ui/react'; - -interface Props { - width: number; - Button: React.ReactNode; - menuList: { - isActive?: boolean; - child: React.ReactNode; - onClick: () => void; - menuItemStyle?: MenuItemProps; - isDisabled?: boolean; - }[]; -} - -export const SealosMenu = ({ width, Button, menuList }: Props) => { - const menuItemStyles = { - borderRadius: '4px', - display: 'flex', - alignItems: 'center', - _hover: { - backgroundColor: 'rgba(17, 24, 36, 0.05)', - color: 'brightBlue.600' - } - }; - - return ( - - {Button} - - {menuList.map((item, i) => ( - - {item.child} - - ))} - - - ); -}; diff --git a/main/packages/ui/src/components/Message/index.tsx b/main/packages/ui/src/components/Message/index.tsx deleted file mode 100644 index 5b79e94..0000000 --- a/main/packages/ui/src/components/Message/index.tsx +++ /dev/null @@ -1,133 +0,0 @@ -import { AlertStatus, Box, Center, Flex, UseToastOptions, useToast } from '@chakra-ui/react'; -import CloseIcon from '../icons/CloseIcon'; -import GeneralIcon from '../icons/GeneralIcon'; -import SuccessIcon from '../icons/SuccessIcon'; -import WarningIcon from '../icons/WarningIcon'; -interface CustomToastOptions extends UseToastOptions { - infoBoxBg?: string; - errorBoxBg?: string; - successBoxBg?: string; - warningBoxBg?: string; - loadingBoxBg?: string; - - infoIconBg?: string; - infoIconFill?: string; - - errorIconBg?: string; - errorIconFill?: string; - - warningIconBg?: string; - warningIconFill?: string; - - successIconBg?: string; - successIconFill?: string; - - loadingIconBg?: string; - loadingIconFill?: string; -} -export default function useMessage(props?: CustomToastOptions) { - const statusMap: Record = { - info: { - bg: props?.infoIconBg || '#DBF3FF', - icon: , - boxBg: props?.infoBoxBg - }, - error: { - bg: props?.errorIconBg || '#FEE4E2', - icon: , - boxBg: props?.errorBoxBg - }, - success: { - bg: props?.successIconBg || '#D0F5DC', - icon: , - boxBg: props?.successBoxBg - }, - warning: { - bg: props?.warningIconBg || '#FEF0C7', - icon: , - boxBg: props?.warningBoxBg - }, - - loading: { - bg: props?.loadingIconBg || '#FEF0C7', - icon: , - boxBg: props?.loadingBoxBg - } - }; - - const renderStatusIcon = (status: AlertStatus) => { - const { bg, icon } = statusMap[status]; - return ( -
- {icon} -
- ); - }; - - const renderStatusBoxBg = (status: AlertStatus) => { - const { boxBg } = statusMap[status]; - return boxBg; - }; - - const message = useToast({ - position: 'top', - ...props, - render: (props) => { - return ( - - - {renderStatusIcon(props?.status || 'info')} - - {props?.title && ( - - {props?.title} - - )} - {props?.description && ( - - {props?.description} - - )} - - {props?.isClosable && ( -
- -
- )} -
-
- ); - } - }); - - return { - message - }; -} diff --git a/main/packages/ui/src/components/MySlider/index.tsx b/main/packages/ui/src/components/MySlider/index.tsx deleted file mode 100644 index 9aeac26..0000000 --- a/main/packages/ui/src/components/MySlider/index.tsx +++ /dev/null @@ -1,71 +0,0 @@ -import React, { useMemo } from 'react'; -import { - Slider, - SliderTrack, - SliderFilledTrack, - SliderThumb, - SliderMark, - Box -} from '@chakra-ui/react'; - -export const MySlider = ({ - markList, - setVal, - activeVal, - max = 100, - min = 0, - step = 1 -}: { - markList: { - label: string | number; - value: number; - }[]; - activeVal?: number; - setVal: (index: number) => void; - max?: number; - min?: number; - step?: number; -}) => { - const value = useMemo(() => { - const index = markList.findIndex((item) => item.value === activeVal); - return index > -1 ? index : 0; - }, [activeVal, markList]); - - if (min > 0) { - markList = markList.map((item, index) => { - if (index < min) { - return { - ...item, - label: '' - }; - } - return item; - }); - } - - return ( - - {markList.map((item, i) => ( - - - {item.label} - - - ))} - - - - - - ); -}; diff --git a/main/packages/ui/src/components/MyTable/index.tsx b/main/packages/ui/src/components/MyTable/index.tsx deleted file mode 100644 index 7a8e8d5..0000000 --- a/main/packages/ui/src/components/MyTable/index.tsx +++ /dev/null @@ -1,75 +0,0 @@ -import React from 'react'; -import { Box, BoxProps, Grid, Flex } from '@chakra-ui/react'; - -interface Props extends BoxProps { - columns: { - title: string; - dataIndex?: string; - key: string; - render?: (item: any) => JSX.Element; - }[]; - data: any[]; - itemClass?: string; -} - -export const MyTable = ({ columns, data, itemClass = '' }: Props) => { - return ( - <> - - {columns.map((item, i) => ( - - {item.title} - - ))} - - {data.map((item: any, index1) => ( - - {columns.map((col, index2) => ( - - {col.render ? col.render(item) : col.dataIndex ? `${item[col.dataIndex]}` : ''} - - ))} - - ))} - - ); -}; diff --git a/main/packages/ui/src/components/MyTooltip/index.tsx b/main/packages/ui/src/components/MyTooltip/index.tsx deleted file mode 100644 index 9cd9a27..0000000 --- a/main/packages/ui/src/components/MyTooltip/index.tsx +++ /dev/null @@ -1,23 +0,0 @@ -import React from 'react'; -import { Tooltip, TooltipProps } from '@chakra-ui/react'; - -export const MyTooltip = ({ children, ...props }: TooltipProps) => { - return ( - - {children} - - ); -}; diff --git a/main/packages/ui/src/components/RangeInput/index.tsx b/main/packages/ui/src/components/RangeInput/index.tsx deleted file mode 100644 index 6fafa00..0000000 --- a/main/packages/ui/src/components/RangeInput/index.tsx +++ /dev/null @@ -1,90 +0,0 @@ -'use client'; - -import React, { useState } from 'react'; -import { HStack, Input, useNumberInput, IconButton, InputProps } from '@chakra-ui/react'; -import { AddIcon, MinusIcon } from '@chakra-ui/icons'; -import { MyTooltip } from '../MyTooltip'; - -export const RangeInput = ({ - w = 200, - step = 1, - precision = 0, - min = -Infinity, - max = Infinity, - value, - setVal, - hoverText, - inputStyle, - isDisabled = false -}: { - w?: number; - step?: number; - precision?: number; - min?: number; - max?: number; - value: number | ''; - setVal: (val: number) => void; - hoverText?: string; - inputStyle?: InputProps; - isDisabled?: boolean; -}) => { - const { getInputProps, getIncrementButtonProps, getDecrementButtonProps } = useNumberInput({ - focusInputOnChange: false, - step, - min, - max, - precision, - value, - onChange(_, val) { - setVal(val); - } - }); - const inc = getIncrementButtonProps(); - const dec = getDecrementButtonProps(); - const input = getInputProps(); - const [isFocus, setIsFocus] = useState(false); - - const IconStyle = { - variant: 'unstyled' - }; - - return ( - - { - setIsFocus(false); - }} - onFocusCapture={() => { - setIsFocus(true); - }} - > - } - aria-label="minus" - color={+input.value <= min ? 'blackAlpha.400' : 'blackAlpha.700'} - {...dec} - {...IconStyle} - /> - - } - aria-label="add" - color={+input.value >= max ? 'blackAlpha.400' : 'blackAlpha.700'} - {...inc} - {...IconStyle} - /> - - - ); -}; diff --git a/main/packages/ui/src/components/RangeSlider/index.tsx b/main/packages/ui/src/components/RangeSlider/index.tsx deleted file mode 100644 index 02b96fa..0000000 --- a/main/packages/ui/src/components/RangeSlider/index.tsx +++ /dev/null @@ -1,57 +0,0 @@ -import React from 'react'; -import { - RangeSlider, - RangeSliderTrack, - RangeSliderFilledTrack, - RangeSliderThumb, - Box -} from '@chakra-ui/react'; - -export const MyRangeSlider = ({ - value, - max = 100, - min = 0, - step = 1, - setVal -}: { - value: [number, number]; - setVal: (index: [number, number]) => void; - max?: number; - min?: number; - step?: number; -}) => { - const startEndValStyle = { - position: 'absolute' as const, - top: '10px' - }; - - return ( - - - - {min} - - - {max} - - - - - {value[0] === min ? '' : value[0]} - - - {value[1] === max ? '' : value[1]} - - - ); -}; diff --git a/main/packages/ui/src/components/Select/index.tsx b/main/packages/ui/src/components/Select/index.tsx deleted file mode 100644 index fbf7f66..0000000 --- a/main/packages/ui/src/components/Select/index.tsx +++ /dev/null @@ -1,169 +0,0 @@ -'use client'; - -import React, { useRef, forwardRef, useMemo } from 'react'; -import { - Menu, - Box, - MenuList, - MenuItem, - Button, - useDisclosure, - useOutsideClick, - MenuButton, - Flex, - Portal -} from '@chakra-ui/react'; -import type { BoxProps, ButtonProps } from '@chakra-ui/react'; -import { ChevronDownIcon } from '@chakra-ui/icons'; - -interface Props extends ButtonProps { - width?: string; - height?: string; - value?: string; - placeholder?: string; - list: { - label: string | React.ReactNode; - value: string; - }[]; - onchange?: (val: string) => void; - isInvalid?: boolean; - boxStyle?: BoxProps; -} - -const MySelect = ( - { - placeholder, - value, - width = 'auto', - height = '30px', - list, - onchange, - isInvalid, - boxStyle, - ...props - }: Props, - selectRef: any -) => { - const ref = useRef(null); - const SelectRef = useRef(null); - const menuListRef = useRef(null); - const { isOpen, onOpen, onClose } = useDisclosure(); - - useOutsideClick({ - ref: SelectRef, - handler: (event) => { - if (menuListRef.current?.contains(event.target as Node)) return; - onClose(); - } - }); - - const activeMenu = useMemo(() => { - const foundItem = list.find((item) => item.value === value); - if (!foundItem && value) { - return { - label: value, - value: value - }; - } - return foundItem; - }, [list, value]); - - return ( - - { - isOpen ? onClose() : onOpen(); - }} - {...boxStyle} - > - } - width={width} - height={height} - ref={ref} - display={'flex'} - alignItems={'center'} - justifyContent={'center'} - border={'1px solid #E8EBF0'} - borderRadius={'md'} - fontSize={'12px'} - fontWeight={'400'} - variant={'outline'} - _hover={{ - borderColor: 'brightBlue.300', - bg: 'grayModern.50' - }} - _active={{ - transform: '' - }} - {...(isOpen - ? { - boxShadow: '0px 0px 0px 2.4px rgba(33, 155, 244, 0.15)', - borderColor: 'brightBlue.500', - bg: '#FFF' - } - : { - bg: '#F7F8FA', - borderColor: isInvalid ? 'red' : '' - })} - {...props} - > - {activeMenu ? activeMenu.label : placeholder} - - - - { - const w = ref.current?.clientWidth; - if (w) { - return `${w}px !important`; - } - return Array.isArray(width) - ? width.map((item) => `${item} !important`) - : `${width} !important`; - })()} - p={'6px'} - borderRadius={'base'} - border={'1px solid #E8EBF0'} - boxShadow={ - '0px 4px 10px 0px rgba(19, 51, 107, 0.10), 0px 0px 1px 0px rgba(19, 51, 107, 0.10)' - } - zIndex={2000} - overflow={'overlay'} - maxH={'300px'} - > - {list.map((item) => ( - { - if (onchange && value !== item.value) { - onchange(item.value); - } - }} - > - {item.label} - - ))} - - - - - ); -}; - -export default React.memo(forwardRef(MySelect)); diff --git a/main/packages/ui/src/components/Tabs/index.tsx b/main/packages/ui/src/components/Tabs/index.tsx deleted file mode 100644 index 46899ee..0000000 --- a/main/packages/ui/src/components/Tabs/index.tsx +++ /dev/null @@ -1,78 +0,0 @@ -import React, { useMemo } from 'react'; -import { Box, Grid } from '@chakra-ui/react'; -import type { GridProps } from '@chakra-ui/react'; - -// @ts-ignore -interface Props extends GridProps { - list: { id: string; label: string }[]; - activeId: string; - size?: 'sm' | 'md' | 'lg'; - onChange: (id: string) => void; -} - -export const Tabs = ({ list, size = 'md', activeId, onChange, ...props }: Props) => { - const sizeMap = useMemo(() => { - switch (size) { - case 'sm': - return { - fontSize: 'base', - outP: '3px', - inlineP: '4px' - }; - case 'md': - return { - fontSize: 'md', - outP: '4px', - inlineP: '6px' - }; - case 'lg': - return { - fontSize: 'lg', - outP: '5px', - inlineP: 3 - }; - } - }, [size]); - return ( - - {list.map((item) => ( - { - if (activeId === item.id) return; - onChange(item.id); - }} - > - {item.label} - - ))} - - ); -}; diff --git a/main/packages/ui/src/components/Tip/index.tsx b/main/packages/ui/src/components/Tip/index.tsx deleted file mode 100644 index a7524ee..0000000 --- a/main/packages/ui/src/components/Tip/index.tsx +++ /dev/null @@ -1,69 +0,0 @@ -import { BoxProps, Flex } from '@chakra-ui/react'; -import { useMemo } from 'react'; - -interface Props extends BoxProps { - text: string; - icon?: JSX.Element; - theme?: 'blue'; - size?: 'sm' | 'md' | 'lg'; -} - -export const Tip = ({ size = 'md', text, icon, theme, ...props }: Props) => { - const sizeMap = useMemo(() => { - switch (size) { - case 'sm': - return { - fontSize: '12px', - px: 3, - py: 1 - }; - case 'md': - return { - fontSize: '14px', - px: 4, - py: 2 - }; - case 'lg': - return { - fontSize: '16px', - px: 5, - py: 2 - }; - default: - return {}; - } - }, [size]); - - const themeMap = useMemo(() => { - switch (theme) { - case 'blue': - return { - color: '#0884DD', - bg: '#ECF8FF' - }; - default: - return { - color: '#0884DD', - bg: '#ECF8FF' - }; - } - }, [theme]); - - return ( - - {icon ? ( - - {icon} - - ) : null} - {text} - - ); -}; diff --git a/main/packages/ui/src/components/YamlCode/YamlCode.tsx b/main/packages/ui/src/components/YamlCode/YamlCode.tsx deleted file mode 100644 index 60fc119..0000000 --- a/main/packages/ui/src/components/YamlCode/YamlCode.tsx +++ /dev/null @@ -1,52 +0,0 @@ -import { ReactNode, useMemo } from 'react'; -import ReactMarkdown from 'react-markdown'; -import { Light as SyntaxHighlighter } from 'react-syntax-highlighter'; -import { codeTheme } from './hljs'; -import { Box, BoxProps } from '@chakra-ui/react'; -import { ReactMarkdownOptions } from 'react-markdown/lib/react-markdown'; - -type YamlCodeProps = Omit & { markdown: ReactMarkdownOptions }; - -export default function YamlCode(props: YamlCodeProps) { - const { markdown, ...rest } = props; - const { children, components, ...markdownRest } = markdown; - const markdownCode = useMemo(() => '```yaml\n' + children + '```', [children]); - return ( - ': { - h: '100%' - } - }} - {...rest} - children={ - - ) as any) - ) : ( - - {children} - - ); - }, - ...components - }} - /> - } - /> - ); -} diff --git a/main/packages/ui/src/components/YamlCode/hljs.ts b/main/packages/ui/src/components/YamlCode/hljs.ts deleted file mode 100644 index b4e1348..0000000 --- a/main/packages/ui/src/components/YamlCode/hljs.ts +++ /dev/null @@ -1,115 +0,0 @@ -export const codeTheme = { - hljs: { - display: 'block', - overflowX: 'auto', - color: '#2f3337' - }, - linenumber: { - minWidth: '2em' - }, - 'hljs-comment': { - color: '#656e77' - }, - comment: { - color: '#A19F9D' - }, - 'hljs-keyword': { - color: '#015692' - }, - 'hljs-selector-tag': { - color: '#015692' - }, - 'hljs-meta-keyword': { - color: '#015692' - }, - 'hljs-doctag': { - color: '#015692' - }, - 'hljs-section': { - color: '#015692' - }, - 'hljs-selector-class': { - color: '#015692' - }, - 'hljs-meta': { - color: '#015692' - }, - 'hljs-selector-pseudo': { - color: '#015692' - }, - 'hljs-attr': { - color: '#015692' - }, - 'hljs-attribute': { - color: '#803378' - }, - 'hljs-name': { - color: '#b75501' - }, - 'hljs-type': { - color: '#b75501' - }, - 'hljs-number': { - color: '#b75501' - }, - 'hljs-selector-id': { - color: '#b75501' - }, - 'hljs-quote': { - color: '#b75501' - }, - 'hljs-template-tag': { - color: '#b75501' - }, - 'hljs-built_in': { - color: '#b75501' - }, - 'hljs-title': { - color: '#b75501' - }, - 'hljs-literal': { - color: '#b75501' - }, - 'hljs-string': { - color: '#54790d' - }, - 'hljs-regexp': { - color: '#54790d' - }, - 'hljs-symbol': { - color: '#54790d' - }, - 'hljs-variable': { - color: '#54790d' - }, - 'hljs-template-variable': { - color: '#54790d' - }, - 'hljs-link': { - color: '#54790d' - }, - 'hljs-selector-attr': { - color: '#54790d' - }, - 'hljs-meta-string': { - color: '#54790d' - }, - 'hljs-bullet': { - color: '#535a60' - }, - 'hljs-code': { - color: '#535a60' - }, - 'hljs-deletion': { - color: '#c02d2e' - }, - 'hljs-addition': { - color: '#2f6f44' - }, - 'hljs-emphasis': { - fontStyle: 'italic' - }, - 'hljs-strong': { - fontWeight: 'bold' - } -} as const; diff --git a/main/packages/ui/src/components/YamlCode/index.module.scss b/main/packages/ui/src/components/YamlCode/index.module.scss deleted file mode 100644 index 883b64a..0000000 --- a/main/packages/ui/src/components/YamlCode/index.module.scss +++ /dev/null @@ -1,6 +0,0 @@ -.markdown { - height: '100%'; - div { - overflow: visible !important; - } -} diff --git a/main/packages/ui/src/components/YamlCode/index.ts b/main/packages/ui/src/components/YamlCode/index.ts deleted file mode 100644 index df8f563..0000000 --- a/main/packages/ui/src/components/YamlCode/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -import YamlCode from './YamlCode'; -export default YamlCode; diff --git a/main/packages/ui/src/components/icons/AddIcon.tsx b/main/packages/ui/src/components/icons/AddIcon.tsx deleted file mode 100644 index 94ea591..0000000 --- a/main/packages/ui/src/components/icons/AddIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const AddIcon = createIcon({ - displayName: 'AddIcon', - viewBox: '0 0 20 21', - d: 'M9.16663 16.6159V11.6159H4.16663V9.94922H9.16663V4.94922H10.8333V9.94922H15.8333V11.6159H10.8333V16.6159H9.16663Z' -}); -export default AddIcon; diff --git a/main/packages/ui/src/components/icons/ArrowDownSLineIcon.tsx b/main/packages/ui/src/components/icons/ArrowDownSLineIcon.tsx deleted file mode 100644 index 9a287eb..0000000 --- a/main/packages/ui/src/components/icons/ArrowDownSLineIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ArrowDownSLineIcon = createIcon({ - displayName: 'ArrowDownSLineIcon', - viewBox: '0 0 20 20', - d: 'M10.0001 10.9766L14.1251 6.85156L15.3034 8.0299L10.0001 13.3332L4.69678 8.0299L5.87511 6.85156L10.0001 10.9766Z' -}); -export default ArrowDownSLineIcon; diff --git a/main/packages/ui/src/components/icons/ArrowExchangeIcon.tsx b/main/packages/ui/src/components/icons/ArrowExchangeIcon.tsx deleted file mode 100644 index c082982..0000000 --- a/main/packages/ui/src/components/icons/ArrowExchangeIcon.tsx +++ /dev/null @@ -1,19 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ArrowExchangeIcon = createIcon({ - displayName: 'ArrowExchangeIcon', - viewBox: '0 0 16 17', - path: ( - - - - ) -}); -export default ArrowExchangeIcon; diff --git a/main/packages/ui/src/components/icons/BucketIcon.tsx b/main/packages/ui/src/components/icons/BucketIcon.tsx deleted file mode 100644 index caa352a..0000000 --- a/main/packages/ui/src/components/icons/BucketIcon.tsx +++ /dev/null @@ -1,10 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const BucketIcon = createIcon({ - displayName: 'BucketIcon', - viewBox: '0 0 16 16', - d: 'M8 2.5C6.8535 2.5 5.703 2.6485 4.797 2.8905C4.344 3.0115 3.957 3.1385 3.6405 3.328C3.324 3.518 3 3.801 3 4.25C3 4.3615 3.0275 4.4705 3.0625 4.5625C3.1365 4.9435 4.3885 11.4625 4.5155 12.094C4.576 12.3945 4.7675 12.617 4.9845 12.7815C5.201 12.9455 5.4495 13.0685 5.75 13.1715C6.3515 13.379 7.125 13.5 8 13.5C8.875 13.5 9.645 13.379 10.25 13.172C10.5525 13.0685 10.8125 12.949 11.0315 12.781C11.25 12.6135 11.455 12.3925 11.5 12.078C11.51 12.008 11.605 11.4065 11.75 10.6565C11.895 9.9065 12.082 8.9665 12.2655 8.0315C12.6095 6.2715 12.8985 4.76 12.9375 4.5625C12.977 4.46294 12.9981 4.35708 13 4.25C13 3.801 12.676 3.5175 12.3595 3.328C12.043 3.1385 11.656 3.0115 11.203 2.8905C10.297 2.6485 9.1465 2.5 8 2.5ZM8 3.5C9.0625 3.5 10.16 3.633 10.953 3.844C11.3495 3.949 11.66 4.078 11.844 4.1875C11.8945 4.219 11.8985 4.2305 11.922 4.25C11.8985 4.27 11.8945 4.2815 11.8435 4.3125C11.66 4.422 11.3495 4.551 10.9535 4.6565C10.16 4.8665 9.062 5 8 5C6.938 5 5.84 4.867 5.047 4.656C4.6505 4.551 4.34 4.422 4.1565 4.3125C4.1055 4.281 4.1015 4.2695 4.078 4.25C4.1015 4.23 4.1055 4.2185 4.156 4.1875C4.34 4.078 4.6505 3.949 5.047 3.8435C5.84 3.633 6.9375 3.5 8 3.5ZM4.2345 5.4375C4.412 5.5 4.594 5.5545 4.797 5.6095C5.703 5.8515 6.8535 6 8 6C9.1465 6 10.297 5.8515 11.203 5.6095C11.4065 5.5545 11.588 5.5 11.7655 5.4375C11.627 6.1175 11.5195 6.6095 11.2815 7.828C11.164 8.426 11.0725 8.961 10.969 9.5155C10.963 9.5235 10.957 9.5175 10.9065 9.578C10.836 9.662 10.707 9.8045 10.5 9.9375C10.086 10.205 9.338 10.5 8 10.5C6.662 10.5 5.9 10.203 5.4845 9.9375C5.33674 9.8445 5.20489 9.72835 5.094 9.5935L5.015 9.5C4.675 7.746 4.435 6.48 4.234 5.4375H4.2345ZM8 6.5C7.1775 6.5 6.5 7.1775 6.5 8C6.5 8.8225 7.1775 9.5 8 9.5C8.8225 9.5 9.5 8.8225 9.5 8C9.5 7.1775 8.8225 6.5 8 6.5ZM8 7.5C8.2815 7.5 8.5 7.719 8.5 8C8.5 8.2815 8.281 8.5 8 8.5C7.7185 8.5 7.5 8.281 7.5 8C7.5 7.7185 7.719 7.5 8 7.5ZM5.297 10.953C5.8985 11.252 6.756 11.5 8 11.5C9.2285 11.5 10.088 11.2675 10.6875 10.9685C10.6115 11.3475 10.5175 11.797 10.5 11.922C10.49 11.9355 10.463 11.953 10.422 11.9845C10.33 12.0545 10.168 12.156 9.9375 12.2345C9.4765 12.3905 8.783 12.5 8 12.5C7.217 12.5 6.535 12.3925 6.078 12.2345C5.8495 12.156 5.674 12.0585 5.578 11.9845C5.4825 11.91 5.4785 11.875 5.4845 11.906C5.469 11.832 5.3455 11.199 5.297 10.953Z' -}); - -export default BucketIcon; diff --git a/main/packages/ui/src/components/icons/CancelIcon.tsx b/main/packages/ui/src/components/icons/CancelIcon.tsx deleted file mode 100644 index 69e05e1..0000000 --- a/main/packages/ui/src/components/icons/CancelIcon.tsx +++ /dev/null @@ -1,16 +0,0 @@ -'use client'; - -import { Icon } from '@chakra-ui/react'; -export default function CancelIcon(props: Parameters[0]) { - return ( - - - - ); -} diff --git a/main/packages/ui/src/components/icons/ChangeIcon.tsx b/main/packages/ui/src/components/icons/ChangeIcon.tsx deleted file mode 100644 index 1b4ac94..0000000 --- a/main/packages/ui/src/components/icons/ChangeIcon.tsx +++ /dev/null @@ -1,27 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ChangeIcon = createIcon({ - displayName: 'ChangeIcon', - viewBox: '0 0 16 16', - path: ( - - - - - - ) -}); diff --git a/main/packages/ui/src/components/icons/ClearOutlineIcon.tsx b/main/packages/ui/src/components/icons/ClearOutlineIcon.tsx deleted file mode 100644 index d6a5194..0000000 --- a/main/packages/ui/src/components/icons/ClearOutlineIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ClearOutlineIcon = createIcon({ - displayName: 'ClearOutlineIcon', - viewBox: '0 0 16 16', - d: 'M14.1031 13.3375L13.275 8.5625H13.5547C13.7797 8.5625 13.9609 8.38125 13.9609 8.15625V5.15625C13.9609 4.93125 13.7797 4.75 13.5547 4.75H9.71094V1.90625C9.71094 1.68125 9.52969 1.5 9.30469 1.5H6.80469C6.57969 1.5 6.39844 1.68125 6.39844 1.90625V4.75H2.55469C2.32969 4.75 2.14844 4.93125 2.14844 5.15625V8.15625C2.14844 8.38125 2.32969 8.5625 2.55469 8.5625H2.83437L2.00625 13.3375C2.00156 13.3609 2 13.3844 2 13.4062C2 13.6313 2.18125 13.8125 2.40625 13.8125H13.7031C13.7266 13.8125 13.75 13.8109 13.7719 13.8062C13.9938 13.7687 14.1422 13.5578 14.1031 13.3375ZM3.24219 5.84375H7.49219V2.59375H8.61719V5.84375H12.8672V7.46875H3.24219V5.84375ZM10.5547 12.7188V10.2812C10.5547 10.2125 10.4984 10.1562 10.4297 10.1562H9.67969C9.61094 10.1562 9.55469 10.2125 9.55469 10.2812V12.7188H6.55469V10.2812C6.55469 10.2125 6.49844 10.1562 6.42969 10.1562H5.67969C5.61094 10.1562 5.55469 10.2125 5.55469 10.2812V12.7188H3.22344L3.92812 8.65625H12.1797L12.8844 12.7188H10.5547Z' -}); -export default ClearOutlineIcon; diff --git a/main/packages/ui/src/components/icons/CloseIcon.tsx b/main/packages/ui/src/components/icons/CloseIcon.tsx deleted file mode 100644 index ddb31cd..0000000 --- a/main/packages/ui/src/components/icons/CloseIcon.tsx +++ /dev/null @@ -1,22 +0,0 @@ -'use client'; - -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function CloseIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/main/packages/ui/src/components/icons/CopyIcon.tsx b/main/packages/ui/src/components/icons/CopyIcon.tsx deleted file mode 100644 index 09ac602..0000000 --- a/main/packages/ui/src/components/icons/CopyIcon.tsx +++ /dev/null @@ -1,15 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const CopyIcon = createIcon({ - displayName: 'CopyIcon', - viewBox: '0 0 20 21', - path: ( - - ) -}); -export default CopyIcon; diff --git a/main/packages/ui/src/components/icons/CreateFolderIcon.tsx b/main/packages/ui/src/components/icons/CreateFolderIcon.tsx deleted file mode 100644 index a8dad7e..0000000 --- a/main/packages/ui/src/components/icons/CreateFolderIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const CreateFolderIcon = createIcon({ - displayName: 'CreateFolderIcon', - viewBox: '0 0 24 25', - d: 'M15 16.3384C15.2833 16.3384 15.521 16.2424 15.713 16.0504C15.9043 15.859 16 15.6217 16 15.3384V14.3384H17C17.2833 14.3384 17.5207 14.2424 17.712 14.0504C17.904 13.859 18 13.6217 18 13.3384C18 13.055 17.904 12.8174 17.712 12.6254C17.5207 12.434 17.2833 12.3384 17 12.3384H16V11.3384C16 11.055 15.9043 10.8174 15.713 10.6254C15.521 10.434 15.2833 10.3384 15 10.3384C14.7167 10.3384 14.4793 10.434 14.288 10.6254C14.096 10.8174 14 11.055 14 11.3384V12.3384H13C12.7167 12.3384 12.4793 12.434 12.288 12.6254C12.096 12.8174 12 13.055 12 13.3384C12 13.6217 12.096 13.859 12.288 14.0504C12.4793 14.2424 12.7167 14.3384 13 14.3384H14V15.3384C14 15.6217 14.096 15.859 14.288 16.0504C14.4793 16.2424 14.7167 16.3384 15 16.3384ZM4 20.3384C3.45 20.3384 2.97933 20.1427 2.588 19.7514C2.196 19.3594 2 18.8884 2 18.3384V6.33838C2 5.78838 2.196 5.31771 2.588 4.92638C2.97933 4.53438 3.45 4.33838 4 4.33838H9.175C9.44167 4.33838 9.696 4.38838 9.938 4.48838C10.1793 4.58838 10.3917 4.73005 10.575 4.91338L12 6.33838H20C20.55 6.33838 21.021 6.53438 21.413 6.92638C21.8043 7.31771 22 7.78838 22 8.33838V18.3384C22 18.8884 21.8043 19.3594 21.413 19.7514C21.021 20.1427 20.55 20.3384 20 20.3384H4ZM4 6.33838V18.3384H20V8.33838H11.175L9.175 6.33838H4ZM4 6.33838V18.3384V6.33838Z' -}); -export default CreateFolderIcon; diff --git a/main/packages/ui/src/components/icons/CurrencySymbol.tsx b/main/packages/ui/src/components/icons/CurrencySymbol.tsx deleted file mode 100644 index a6d573f..0000000 --- a/main/packages/ui/src/components/icons/CurrencySymbol.tsx +++ /dev/null @@ -1,176 +0,0 @@ -import { Icon, IconProps, Text, TextProps } from '@chakra-ui/react'; - -export default function CurrencySymbol({ - type = 'shellCoin', - shellCoin, - ...props -}: { - shellCoin?: IconProps; - type?: 'shellCoin' | 'cny' | 'usd'; -} & TextProps) { - return type === 'shellCoin' ? ( - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ) : type === 'cny' ? ( - ¥ - ) : ( - $ - ); -} diff --git a/main/packages/ui/src/components/icons/DeleteIcon.tsx b/main/packages/ui/src/components/icons/DeleteIcon.tsx deleted file mode 100644 index 6f5f8c8..0000000 --- a/main/packages/ui/src/components/icons/DeleteIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const DeleteIcon = createIcon({ - displayName: 'DeleteIcon', - viewBox: '0 0 16 16', - d: 'M4.66663 14C4.29996 14 3.98596 13.8693 3.72463 13.608C3.46329 13.3467 3.33285 13.0329 3.33329 12.6667V4C3.14441 4 2.98596 3.936 2.85796 3.808C2.72996 3.68 2.66618 3.52178 2.66663 3.33334C2.66663 3.14445 2.73063 2.986 2.85863 2.858C2.98663 2.73 3.14485 2.66622 3.33329 2.66667H5.99996C5.99996 2.47778 6.06396 2.31934 6.19196 2.19134C6.31996 2.06334 6.47818 1.99956 6.66663 2H9.3333C9.52218 2 9.68063 2.064 9.80863 2.192C9.93663 2.32 10.0004 2.47822 9.99996 2.66667H12.6666C12.8555 2.66667 13.014 2.73067 13.142 2.85867C13.27 2.98667 13.3337 3.14489 13.3333 3.33334C13.3333 3.52222 13.2693 3.68067 13.1413 3.80867C13.0133 3.93667 12.8551 4.00045 12.6666 4V12.6667C12.6666 13.0333 12.536 13.3473 12.2746 13.6087C12.0133 13.87 11.6995 14.0004 11.3333 14H4.66663ZM4.66663 4V12.6667H11.3333V4H4.66663ZM5.99996 10.6667C5.99996 10.8556 6.06396 11.014 6.19196 11.142C6.31996 11.27 6.47818 11.3338 6.66663 11.3333C6.85552 11.3333 7.01396 11.2693 7.14196 11.1413C7.26996 11.0133 7.33374 10.8551 7.33329 10.6667V6C7.33329 5.81111 7.26929 5.65267 7.14129 5.52467C7.01329 5.39667 6.85507 5.33289 6.66663 5.33334C6.47774 5.33334 6.31929 5.39734 6.19129 5.52534C6.06329 5.65334 5.99952 5.81156 5.99996 6V10.6667ZM8.66663 10.6667C8.66663 10.8556 8.73063 11.014 8.85863 11.142C8.98663 11.27 9.14485 11.3338 9.3333 11.3333C9.52218 11.3333 9.68063 11.2693 9.80863 11.1413C9.93663 11.0133 10.0004 10.8551 9.99996 10.6667V6C9.99996 5.81111 9.93596 5.65267 9.80796 5.52467C9.67996 5.39667 9.52174 5.33289 9.3333 5.33334C9.14441 5.33334 8.98596 5.39734 8.85796 5.52534C8.72996 5.65334 8.66618 5.81156 8.66663 6V10.6667Z' -}); -export default DeleteIcon; diff --git a/main/packages/ui/src/components/icons/DetailsMoreIcon.tsx b/main/packages/ui/src/components/icons/DetailsMoreIcon.tsx deleted file mode 100644 index 9cea1cf..0000000 --- a/main/packages/ui/src/components/icons/DetailsMoreIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ListIcon = createIcon({ - displayName: 'ListIcon', - viewBox: '0 0 17 16', - d: 'M1.83333 5.83317C1.83333 5.65636 1.90357 5.48679 2.02859 5.36177C2.15361 5.23674 2.32318 5.1665 2.49999 5.1665H14.5C14.6768 5.1665 14.8464 5.23674 14.9714 5.36177C15.0964 5.48679 15.1667 5.65636 15.1667 5.83317C15.1667 6.00998 15.0964 6.17955 14.9714 6.30457C14.8464 6.4296 14.6768 6.49984 14.5 6.49984H2.49999C2.32318 6.49984 2.15361 6.4296 2.02859 6.30457C1.90357 6.17955 1.83333 6.00998 1.83333 5.83317ZM1.83333 8.49984C1.83333 8.32303 1.90357 8.15346 2.02859 8.02843C2.15361 7.90341 2.32318 7.83317 2.49999 7.83317H14.5C14.6768 7.83317 14.8464 7.90341 14.9714 8.02843C15.0964 8.15346 15.1667 8.32303 15.1667 8.49984C15.1667 8.67665 15.0964 8.84622 14.9714 8.97124C14.8464 9.09627 14.6768 9.1665 14.5 9.1665H2.49999C2.32318 9.1665 2.15361 9.09627 2.02859 8.97124C1.90357 8.84622 1.83333 8.67665 1.83333 8.49984ZM2.49999 10.4998C2.32318 10.4998 2.15361 10.5701 2.02859 10.6951C1.90357 10.8201 1.83333 10.9897 1.83333 11.1665C1.83333 11.3433 1.90357 11.5129 2.02859 11.6379C2.15361 11.7629 2.32318 11.8332 2.49999 11.8332H10.5C10.6768 11.8332 10.8464 11.7629 10.9714 11.6379C11.0964 11.5129 11.1667 11.3433 11.1667 11.1665C11.1667 10.9897 11.0964 10.8201 10.9714 10.6951C10.8464 10.5701 10.6768 10.4998 10.5 10.4998H2.49999Z' -}); -export default ListIcon; diff --git a/main/packages/ui/src/components/icons/DnsIcon.tsx b/main/packages/ui/src/components/icons/DnsIcon.tsx deleted file mode 100644 index 8e7b10b..0000000 --- a/main/packages/ui/src/components/icons/DnsIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const DnsIcon = createIcon({ - displayName: 'DnsIcon', - viewBox: '0 0 16 17', - d: 'M12.6667 10.3384V13.005H3.33333V10.3384H12.6667ZM13.3333 9.00505H2.66667C2.3 9.00505 2 9.30505 2 9.67171V13.6717C2 14.0384 2.3 14.3384 2.66667 14.3384H13.3333C13.7 14.3384 14 14.0384 14 13.6717V9.67171C14 9.30505 13.7 9.00505 13.3333 9.00505ZM4.66667 12.6717C4.12 12.6717 3.66667 12.225 3.66667 11.6717C3.66667 11.1184 4.12 10.6717 4.66667 10.6717C5.21333 10.6717 5.66667 11.1184 5.66667 11.6717C5.66667 12.225 5.22 12.6717 4.66667 12.6717ZM12.6667 3.67171V6.33838H3.33333V3.67171H12.6667ZM13.3333 2.33838H2.66667C2.3 2.33838 2 2.63838 2 3.00505V7.00505C2 7.37171 2.3 7.67171 2.66667 7.67171H13.3333C13.7 7.67171 14 7.37171 14 7.00505V3.00505C14 2.63838 13.7 2.33838 13.3333 2.33838ZM4.66667 6.00505C4.12 6.00505 3.66667 5.55838 3.66667 5.00505C3.66667 4.45171 4.12 4.00505 4.66667 4.00505C5.21333 4.00505 5.66667 4.45838 5.66667 5.00505C5.66667 5.55171 5.22 6.00505 4.66667 6.00505Z' -}); -export default DnsIcon; diff --git a/main/packages/ui/src/components/icons/DocsIcon.tsx b/main/packages/ui/src/components/icons/DocsIcon.tsx deleted file mode 100644 index b123f7d..0000000 --- a/main/packages/ui/src/components/icons/DocsIcon.tsx +++ /dev/null @@ -1,23 +0,0 @@ -'use client'; - -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function DocsIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/main/packages/ui/src/components/icons/DownloadIcon.tsx b/main/packages/ui/src/components/icons/DownloadIcon.tsx deleted file mode 100644 index 5e433d1..0000000 --- a/main/packages/ui/src/components/icons/DownloadIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const DownloadIcon = createIcon({ - displayName: 'DownloadIcon', - viewBox: '0 0 17 17', - d: 'M8.50033 11.833L11.167 9.16634L10.2337 8.23301L9.16699 9.26634V6.49967H7.83366V9.26634L6.76699 8.23301L5.83366 9.16634L8.50033 11.833ZM4.50033 15.1663C4.13366 15.1663 3.81966 15.0357 3.55833 14.7743C3.29699 14.513 3.16655 14.1992 3.16699 13.833V5.83301L7.16699 1.83301H12.5003C12.867 1.83301 13.181 1.96367 13.4423 2.22501C13.7037 2.48634 13.8341 2.80012 13.8337 3.16634V13.833C13.8337 14.1997 13.703 14.5137 13.4417 14.775C13.1803 15.0363 12.8665 15.1668 12.5003 15.1663H4.50033ZM4.50033 13.833H12.5003V3.16634H7.73366L4.50033 6.39967V13.833Z' -}); -export default DownloadIcon; diff --git a/main/packages/ui/src/components/icons/EditIcon.tsx b/main/packages/ui/src/components/icons/EditIcon.tsx deleted file mode 100644 index 3892fbb..0000000 --- a/main/packages/ui/src/components/icons/EditIcon.tsx +++ /dev/null @@ -1,24 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const EditIcon = createIcon({ - displayName: 'EditIcon', - viewBox: '0 0 16 16', - path: ( - - - - - - ) -}); -export default EditIcon; diff --git a/main/packages/ui/src/components/icons/ExchangeIcon.tsx b/main/packages/ui/src/components/icons/ExchangeIcon.tsx deleted file mode 100644 index 00eea35..0000000 --- a/main/packages/ui/src/components/icons/ExchangeIcon.tsx +++ /dev/null @@ -1,21 +0,0 @@ -import { Icon } from '@chakra-ui/react'; -export default function ExchangeIcon(props: Parameters[0]) { - return ( - - - - ); -} diff --git a/main/packages/ui/src/components/icons/ExpandMoreIcon.tsx b/main/packages/ui/src/components/icons/ExpandMoreIcon.tsx deleted file mode 100644 index 6f97f74..0000000 --- a/main/packages/ui/src/components/icons/ExpandMoreIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ExpanMoreIcon = createIcon({ - displayName: 'ExpanMoreIcon', - viewBox: '0 0 16 17', - d: 'M8.00045 10.2673C7.91156 10.2673 7.82823 10.2533 7.75045 10.2253C7.67267 10.1977 7.60045 10.1506 7.53378 10.0839L4.45045 7.0006C4.32823 6.87838 4.27 6.72549 4.27578 6.54194C4.28112 6.35883 4.34489 6.20616 4.46711 6.08394C4.58934 5.96171 4.74489 5.9006 4.93378 5.9006C5.12267 5.9006 5.27823 5.96171 5.40045 6.08394L8.00045 8.68394L10.6171 6.06727C10.7393 5.94505 10.8922 5.8866 11.0758 5.89194C11.2589 5.89771 11.4116 5.96171 11.5338 6.08394C11.656 6.20616 11.7171 6.36171 11.7171 6.5506C11.7171 6.73949 11.656 6.89505 11.5338 7.01727L8.46712 10.0839C8.40045 10.1506 8.32823 10.1977 8.25045 10.2253C8.17267 10.2533 8.08934 10.2673 8.00045 10.2673Z' -}); -export default ExpanMoreIcon; diff --git a/main/packages/ui/src/components/icons/FileIcon.tsx b/main/packages/ui/src/components/icons/FileIcon.tsx deleted file mode 100644 index 28c11ac..0000000 --- a/main/packages/ui/src/components/icons/FileIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const FileIcon = createIcon({ - displayName: 'FileIcon', - viewBox: '0 0 21 21', - d: 'M12.5149 2.00513H5.84819C4.93153 2.00513 4.18986 2.75513 4.18986 3.67179L4.18153 17.0051C4.18153 17.9218 4.92319 18.6718 5.83986 18.6718H15.8482C16.7649 18.6718 17.5149 17.9218 17.5149 17.0051V7.00513L12.5149 2.00513ZM5.84819 17.0051V3.67179H11.6815V7.83846H15.8482V17.0051H5.84819Z' -}); -export default FileIcon; diff --git a/main/packages/ui/src/components/icons/FolderIcon.tsx b/main/packages/ui/src/components/icons/FolderIcon.tsx deleted file mode 100644 index 6ba7889..0000000 --- a/main/packages/ui/src/components/icons/FolderIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const FolderIcon = createIcon({ - displayName: 'FolderIcon', - viewBox: '0 0 21 21', - d: 'M4.18153 17.005C3.7232 17.005 3.33097 16.8419 3.00486 16.5158C2.6782 16.1891 2.51486 15.7966 2.51486 15.3383V5.3383C2.51486 4.87996 2.6782 4.48774 3.00486 4.16163C3.33097 3.83496 3.7232 3.67163 4.18153 3.67163H9.18153L10.8482 5.3383H17.5149C17.9732 5.3383 18.3657 5.50163 18.6924 5.8283C19.0185 6.15441 19.1815 6.54663 19.1815 7.00496V15.3383C19.1815 15.7966 19.0185 16.1891 18.6924 16.5158C18.3657 16.8419 17.9732 17.005 17.5149 17.005H4.18153Z' -}); -export default FolderIcon; diff --git a/main/packages/ui/src/components/icons/GeneralIcon.tsx b/main/packages/ui/src/components/icons/GeneralIcon.tsx deleted file mode 100644 index fc840c8..0000000 --- a/main/packages/ui/src/components/icons/GeneralIcon.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function GeneralIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/main/packages/ui/src/components/icons/GithubIcon.tsx b/main/packages/ui/src/components/icons/GithubIcon.tsx deleted file mode 100644 index fc7bb41..0000000 --- a/main/packages/ui/src/components/icons/GithubIcon.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import { Icon } from '@chakra-ui/react'; -export default function GithubIcon(props: Parameters[0]) { - return ( - - - - ); -} diff --git a/main/packages/ui/src/components/icons/GoogleIcon.tsx b/main/packages/ui/src/components/icons/GoogleIcon.tsx deleted file mode 100644 index 16f6f4d..0000000 --- a/main/packages/ui/src/components/icons/GoogleIcon.tsx +++ /dev/null @@ -1,30 +0,0 @@ -import { Icon } from '@chakra-ui/react'; -export default function GoogleIcon(props: Parameters[0]) { - return ( - - - - - {' '} - - ); -} diff --git a/main/packages/ui/src/components/icons/GroupAdd.tsx b/main/packages/ui/src/components/icons/GroupAdd.tsx deleted file mode 100644 index 09a7109..0000000 --- a/main/packages/ui/src/components/icons/GroupAdd.tsx +++ /dev/null @@ -1,10 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const GroupAddIcon = createIcon({ - displayName: 'GroupAddIcon', - viewBox: '0 0 13 12', - d: 'M6.79004 5.975C7.03171 5.70833 7.21712 5.40417 7.34629 5.0625C7.47546 4.72083 7.54004 4.36667 7.54004 4C7.54004 3.63333 7.47546 3.27917 7.34629 2.9375C7.21712 2.59583 7.03171 2.29167 6.79004 2.025C7.29004 2.09167 7.70671 2.3125 8.04004 2.6875C8.37337 3.0625 8.54004 3.5 8.54004 4C8.54004 4.5 8.37337 4.9375 8.04004 5.3125C7.70671 5.6875 7.29004 5.90833 6.79004 5.975ZM9.54004 10V8.5C9.54004 8.2 9.47337 7.91458 9.34004 7.64375C9.20671 7.37292 9.03171 7.13333 8.81504 6.925C9.24004 7.075 9.63379 7.26875 9.99629 7.50625C10.3588 7.74375 10.54 8.075 10.54 8.5V10H9.54004ZM10.54 6.5V5.5H9.54004V4.5H10.54V3.5H11.54V4.5H12.54V5.5H11.54V6.5H10.54ZM4.54004 6C3.99004 6 3.51921 5.80417 3.12754 5.4125C2.73587 5.02083 2.54004 4.55 2.54004 4C2.54004 3.45 2.73587 2.97917 3.12754 2.5875C3.51921 2.19583 3.99004 2 4.54004 2C5.09004 2 5.56087 2.19583 5.95254 2.5875C6.34421 2.97917 6.54004 3.45 6.54004 4C6.54004 4.55 6.34421 5.02083 5.95254 5.4125C5.56087 5.80417 5.09004 6 4.54004 6ZM0.540039 10V8.6C0.540039 8.31667 0.612956 8.05625 0.758789 7.81875C0.904622 7.58125 1.09837 7.4 1.34004 7.275C1.85671 7.01667 2.38171 6.82292 2.91504 6.69375C3.44837 6.56458 3.99004 6.5 4.54004 6.5C5.09004 6.5 5.63171 6.56458 6.16504 6.69375C6.69837 6.82292 7.22337 7.01667 7.74004 7.275C7.98171 7.4 8.17546 7.58125 8.32129 7.81875C8.46712 8.05625 8.54004 8.31667 8.54004 8.6V10H0.540039ZM4.54004 5C4.81504 5 5.05046 4.90208 5.24629 4.70625C5.44212 4.51042 5.54004 4.275 5.54004 4C5.54004 3.725 5.44212 3.48958 5.24629 3.29375C5.05046 3.09792 4.81504 3 4.54004 3C4.26504 3 4.02962 3.09792 3.83379 3.29375C3.63796 3.48958 3.54004 3.725 3.54004 4C3.54004 4.275 3.63796 4.51042 3.83379 4.70625C4.02962 4.90208 4.26504 5 4.54004 5ZM1.54004 9H7.54004V8.6C7.54004 8.50833 7.51712 8.425 7.47129 8.35C7.42546 8.275 7.36504 8.21667 7.29004 8.175C6.84004 7.95 6.38587 7.78125 5.92754 7.66875C5.46921 7.55625 5.00671 7.5 4.54004 7.5C4.07337 7.5 3.61087 7.55625 3.15254 7.66875C2.69421 7.78125 2.24004 7.95 1.79004 8.175C1.71504 8.21667 1.65462 8.275 1.60879 8.35C1.56296 8.425 1.54004 8.50833 1.54004 8.6V9Z' -}); - -export default GroupAddIcon; diff --git a/main/packages/ui/src/components/icons/InfoCircleIcon.tsx b/main/packages/ui/src/components/icons/InfoCircleIcon.tsx deleted file mode 100644 index 299e69e..0000000 --- a/main/packages/ui/src/components/icons/InfoCircleIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const InfoCircleIcon = createIcon({ - displayName: 'InfoCircleIcon', - viewBox: '0 0 16 16', - d: 'M8.00004 1.33325C6.6815 1.33325 5.39257 1.72425 4.29624 2.45679C3.19991 3.18933 2.34543 4.23052 1.84085 5.4487C1.33626 6.66687 1.20424 8.00731 1.46148 9.30052C1.71871 10.5937 2.35365 11.7816 3.286 12.714C4.21835 13.6463 5.40624 14.2813 6.69944 14.5385C7.99265 14.7957 9.33309 14.6637 10.5513 14.1591C11.7694 13.6545 12.8106 12.8 13.5432 11.7037C14.2757 10.6074 14.6667 9.31846 14.6667 7.99992C14.6648 6.2324 13.9618 4.53784 12.7119 3.28802C11.4621 2.0382 9.76756 1.33519 8.00004 1.33325ZM8.00004 13.3333C6.94521 13.3333 5.91406 13.0205 5.037 12.4344C4.15994 11.8484 3.47635 11.0154 3.07269 10.0409C2.66902 9.06636 2.5634 7.994 2.76919 6.95944C2.97498 5.92487 3.48293 4.97456 4.22881 4.22868C4.97469 3.4828 5.925 2.97485 6.95956 2.76906C7.99413 2.56328 9.06648 2.66889 10.041 3.07256C11.0156 3.47623 11.8485 4.15982 12.4345 5.03688C13.0206 5.91394 13.3334 6.94509 13.3334 7.99992C13.3316 9.41387 12.7691 10.7694 11.7693 11.7692C10.7695 12.769 9.41399 13.3315 8.00004 13.3333ZM8.00004 7.66659C7.82323 7.66659 7.65366 7.73682 7.52864 7.86185C7.40362 7.98687 7.33338 8.15644 7.33338 8.33325V10.3333C7.33338 10.5101 7.40362 10.6796 7.52864 10.8047C7.65366 10.9297 7.82323 10.9999 8.00004 10.9999C8.17686 10.9999 8.34642 10.9297 8.47145 10.8047C8.59647 10.6796 8.66671 10.5101 8.66671 10.3333V8.33325C8.66671 8.15644 8.59647 7.98687 8.47145 7.86185C8.34642 7.73682 8.17686 7.66659 8.00004 7.66659ZM8.00004 4.99992C7.83523 4.99992 7.67411 5.04879 7.53707 5.14036C7.40003 5.23193 7.29322 5.36208 7.23014 5.51435C7.16707 5.66662 7.15057 5.83418 7.18272 5.99583C7.21488 6.15748 7.29424 6.30596 7.41079 6.42251C7.52733 6.53905 7.67582 6.61842 7.83747 6.65057C7.99912 6.68273 8.16668 6.66622 8.31895 6.60315C8.47122 6.54008 8.60137 6.43327 8.69294 6.29623C8.7845 6.15919 8.83338 5.99807 8.83338 5.83325C8.83338 5.61224 8.74558 5.40028 8.5893 5.244C8.43302 5.08772 8.22106 4.99992 8.00004 4.99992Z' -}); -export default InfoCircleIcon; diff --git a/main/packages/ui/src/components/icons/InfoIcon.tsx b/main/packages/ui/src/components/icons/InfoIcon.tsx deleted file mode 100644 index 42642d7..0000000 --- a/main/packages/ui/src/components/icons/InfoIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const InfoIcon = createIcon({ - displayName: 'InfoIcon', - viewBox: '0 0 20 21', - d: 'M5.83333 14.4245H11.6667V12.7578H5.83333V14.4245ZM5.83333 11.0911H14.1667V9.42448H5.83333V11.0911ZM5.83333 7.75781H14.1667V6.09115H5.83333V7.75781ZM4.16667 17.7578C3.70833 17.7578 3.31597 17.5946 2.98958 17.2682C2.66319 16.9418 2.5 16.5495 2.5 16.0911V4.42448C2.5 3.96615 2.66319 3.57378 2.98958 3.2474C3.31597 2.92101 3.70833 2.75781 4.16667 2.75781H15.8333C16.2917 2.75781 16.684 2.92101 17.0104 3.2474C17.3368 3.57378 17.5 3.96615 17.5 4.42448V16.0911C17.5 16.5495 17.3368 16.9418 17.0104 17.2682C16.684 17.5946 16.2917 17.7578 15.8333 17.7578H4.16667ZM4.16667 16.0911H15.8333V4.42448H4.16667V16.0911Z' -}); -export default InfoIcon; diff --git a/main/packages/ui/src/components/icons/LeftArrowIcon.tsx b/main/packages/ui/src/components/icons/LeftArrowIcon.tsx deleted file mode 100644 index 1ddc936..0000000 --- a/main/packages/ui/src/components/icons/LeftArrowIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const LeftArrowIcon = createIcon({ - displayName: 'LeftArrowIcon', - viewBox: '0 0 36 37', - d: 'M21 27.2578L12 18.2578L21 9.25781L23.1 11.3578L16.2 18.2578L23.1 25.1578L21 27.2578Z' -}); -export default LeftArrowIcon; diff --git a/main/packages/ui/src/components/icons/LinkIcon.tsx b/main/packages/ui/src/components/icons/LinkIcon.tsx deleted file mode 100644 index 7306d03..0000000 --- a/main/packages/ui/src/components/icons/LinkIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const LinkIcon = createIcon({ - displayName: 'LinkIcon', - viewBox: '0 0 14 15', - d: 'M10.7124 9.40052L9.88756 8.57568L10.7124 7.75085C11.248 7.2016 11.5456 6.46346 11.5408 5.69633C11.536 4.9292 11.2291 4.19485 10.6867 3.65236C10.1443 3.10987 9.40998 2.80292 8.64285 2.798C7.87572 2.79309 7.13754 3.0906 6.58822 3.6261L5.76222 4.45093L4.93797 3.6261L5.7628 2.80127C6.52862 2.03545 7.56728 1.60522 8.65031 1.60522C9.73333 1.60522 10.772 2.03545 11.5378 2.80127C12.3036 3.56708 12.7338 4.60574 12.7338 5.68877C12.7338 6.77179 12.3036 7.81045 11.5378 8.57627L10.7124 9.40052ZM9.06272 11.0508L8.23789 11.8756C7.8587 12.2548 7.40853 12.5556 6.91309 12.7608C6.41765 12.966 5.88665 13.0716 5.35039 13.0716C4.81413 13.0716 4.28312 12.966 3.78768 12.7608C3.29225 12.5556 2.84208 12.2548 2.46289 11.8756C2.0837 11.4964 1.7829 11.0462 1.57769 10.5508C1.37247 10.0554 1.26685 9.52436 1.26685 8.9881C1.26685 8.45184 1.37247 7.92083 1.57769 7.4254C1.7829 6.92996 2.0837 6.47979 2.46289 6.1006L3.28772 5.27577L4.11314 6.1006L3.28772 6.92602C2.75222 7.47534 2.45471 8.21352 2.45962 8.98065C2.46454 9.74778 2.77149 10.4821 3.31398 11.0245C3.85647 11.5669 4.59082 11.8738 5.35795 11.8786C6.12509 11.8834 6.86322 11.5858 7.41247 11.0502L8.23789 10.2259L9.06272 11.0508ZM8.65031 4.86335L9.47514 5.68818L5.35039 9.81352L4.52555 8.9881L8.64972 4.86393L8.65031 4.86335Z' -}); -export default LinkIcon; diff --git a/main/packages/ui/src/components/icons/ListCheckIcon.tsx b/main/packages/ui/src/components/icons/ListCheckIcon.tsx deleted file mode 100644 index 6f2924e..0000000 --- a/main/packages/ui/src/components/icons/ListCheckIcon.tsx +++ /dev/null @@ -1,18 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; -const ListCheckIcon = createIcon({ - displayName: 'ListCheckIcon', - viewBox: '0 0 24 25', - path: ( - - - - ) -}); -export default ListCheckIcon; diff --git a/main/packages/ui/src/components/icons/ListIcon.tsx b/main/packages/ui/src/components/icons/ListIcon.tsx deleted file mode 100644 index c0a2230..0000000 --- a/main/packages/ui/src/components/icons/ListIcon.tsx +++ /dev/null @@ -1,21 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ListIcon = createIcon({ - displayName: 'ListIcon', - viewBox: '0 0 20 20', - path: ( - - - - - - - - - ) -}); -export default ListIcon; diff --git a/main/packages/ui/src/components/icons/LogoutIcon.tsx b/main/packages/ui/src/components/icons/LogoutIcon.tsx deleted file mode 100644 index bc418c9..0000000 --- a/main/packages/ui/src/components/icons/LogoutIcon.tsx +++ /dev/null @@ -1,22 +0,0 @@ -import { Icon } from '@chakra-ui/react'; -export default function LogoutIcon(props: Parameters[0]) { - return ( - - - - - ); -} diff --git a/main/packages/ui/src/components/icons/MonitorIcon.tsx b/main/packages/ui/src/components/icons/MonitorIcon.tsx deleted file mode 100644 index 8093680..0000000 --- a/main/packages/ui/src/components/icons/MonitorIcon.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function MonitorIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/main/packages/ui/src/components/icons/MoreIcon.tsx b/main/packages/ui/src/components/icons/MoreIcon.tsx deleted file mode 100644 index 818f3eb..0000000 --- a/main/packages/ui/src/components/icons/MoreIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const MoreIcon = createIcon({ - displayName: 'MoreIcon', - viewBox: '0 0 16 16', - d: 'M8 13.3333C7.63333 13.3333 7.31956 13.2028 7.05867 12.942C6.79733 12.6806 6.66667 12.3666 6.66667 12C6.66667 11.6333 6.79733 11.3193 7.05867 11.058C7.31956 10.7971 7.63333 10.6666 8 10.6666C8.36667 10.6666 8.68067 10.7971 8.942 11.058C9.20289 11.3193 9.33333 11.6333 9.33333 12C9.33333 12.3666 9.20289 12.6806 8.942 12.942C8.68067 13.2028 8.36667 13.3333 8 13.3333ZM8 9.33329C7.63333 9.33329 7.31956 9.20263 7.05867 8.94129C6.79733 8.6804 6.66667 8.36663 6.66667 7.99996C6.66667 7.63329 6.79733 7.31929 7.05867 7.05796C7.31956 6.79707 7.63333 6.66663 8 6.66663C8.36667 6.66663 8.68067 6.79707 8.942 7.05796C9.20289 7.31929 9.33333 7.63329 9.33333 7.99996C9.33333 8.36663 9.20289 8.6804 8.942 8.94129C8.68067 9.20263 8.36667 9.33329 8 9.33329ZM8 5.33329C7.63333 5.33329 7.31956 5.20263 7.05867 4.94129C6.79733 4.6804 6.66667 4.36663 6.66667 3.99996C6.66667 3.63329 6.79733 3.31951 7.05867 3.05863C7.31956 2.79729 7.63333 2.66663 8 2.66663C8.36667 2.66663 8.68067 2.79729 8.942 3.05863C9.20289 3.31951 9.33333 3.63329 9.33333 3.99996C9.33333 4.36663 9.20289 4.6804 8.942 4.94129C8.68067 5.20263 8.36667 5.33329 8 5.33329Z' -}); -export default MoreIcon; diff --git a/main/packages/ui/src/components/icons/NotificationIcon.tsx b/main/packages/ui/src/components/icons/NotificationIcon.tsx deleted file mode 100644 index 7e388be..0000000 --- a/main/packages/ui/src/components/icons/NotificationIcon.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function NotificationIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/main/packages/ui/src/components/icons/PortIcon.tsx b/main/packages/ui/src/components/icons/PortIcon.tsx deleted file mode 100644 index f2c1ae3..0000000 --- a/main/packages/ui/src/components/icons/PortIcon.tsx +++ /dev/null @@ -1,34 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const PortIcon = createIcon({ - displayName: 'PortIcon', - viewBox: '0 0 16 16', - path: ( - - - - - - - - ) -}); -export default PortIcon; diff --git a/main/packages/ui/src/components/icons/ProviderIcon.tsx b/main/packages/ui/src/components/icons/ProviderIcon.tsx deleted file mode 100644 index 75d9c85..0000000 --- a/main/packages/ui/src/components/icons/ProviderIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ProviderIcon = createIcon({ - displayName: 'ProviderIcon', - viewBox: '0 0 12 10', - d: 'M3.08073 4.30055e-07H4.91927C5.18285 -8.51064e-06 5.41023 -1.6259e-05 5.59751 0.0152856C5.79519 0.0314361 5.9918 0.0670941 6.18099 0.163491C6.46323 0.307301 6.6927 0.536772 6.83651 0.819015C6.93291 1.0082 6.96856 1.20481 6.98472 1.40249C7.00002 1.58978 7.00001 1.81716 7 2.08074V4L8.91927 4C9.18285 3.99999 9.41023 3.99998 9.59751 4.01529C9.79519 4.03144 9.9918 4.06709 10.181 4.16349C10.4632 4.3073 10.6927 4.53677 10.8365 4.81902C10.9329 5.0082 10.9686 5.20481 10.9847 5.40249C11 5.58977 11 5.81715 11 6.08072V9C11.2761 9 11.5 9.22386 11.5 9.5C11.5 9.77614 11.2761 10 11 10H1C0.723858 10 0.5 9.77614 0.5 9.5C0.5 9.22386 0.723858 9 1 9V2.08073C0.999991 1.81715 0.999983 1.58977 1.01528 1.40249C1.03144 1.20481 1.06709 1.0082 1.16349 0.819015C1.3073 0.536772 1.53677 0.307301 1.81901 0.163491C2.0082 0.0670941 2.20481 0.0314361 2.40249 0.0152856C2.58977 -1.6259e-05 2.81715 -8.51064e-06 3.08073 4.30055e-07ZM2 9H6V2.1C6 1.81172 5.99961 1.62559 5.98804 1.48392C5.97694 1.34809 5.9581 1.29773 5.9455 1.27301C5.89757 1.17892 5.82108 1.10243 5.727 1.0545C5.70227 1.0419 5.65191 1.02306 5.51608 1.01196C5.37441 1.00039 5.18828 1 4.9 1H3.1C2.81172 1 2.62559 1.00039 2.48392 1.01196C2.34809 1.02306 2.29773 1.0419 2.273 1.0545C2.17892 1.10243 2.10243 1.17892 2.0545 1.27301C2.0419 1.29773 2.02306 1.34809 2.01196 1.48392C2.00039 1.62559 2 1.81172 2 2.1V9ZM7 5V9H10V6.1C10 5.81172 9.99961 5.62559 9.98804 5.48392C9.97694 5.34809 9.9581 5.29773 9.9455 5.27301C9.89757 5.17892 9.82108 5.10243 9.727 5.0545C9.70227 5.0419 9.65191 5.02306 9.51608 5.01196C9.37441 5.00039 9.18828 5 8.9 5H7ZM2.75 2.5C2.75 2.22386 2.97386 2 3.25 2H4.75C5.02614 2 5.25 2.22386 5.25 2.5C5.25 2.77614 5.02614 3 4.75 3H3.25C2.97386 3 2.75 2.77614 2.75 2.5ZM2.75 4.5C2.75 4.22386 2.97386 4 3.25 4H4.75C5.02614 4 5.25 4.22386 5.25 4.5C5.25 4.77614 5.02614 5 4.75 5H3.25C2.97386 5 2.75 4.77614 2.75 4.5ZM2.75 6.5C2.75 6.22386 2.97386 6 3.25 6H4.75C5.02614 6 5.25 6.22386 5.25 6.5C5.25 6.77614 5.02614 7 4.75 7H3.25C2.97386 7 2.75 6.77614 2.75 6.5Z' -}); -export default ProviderIcon; diff --git a/main/packages/ui/src/components/icons/RefreshIcon.tsx b/main/packages/ui/src/components/icons/RefreshIcon.tsx deleted file mode 100644 index c49e22a..0000000 --- a/main/packages/ui/src/components/icons/RefreshIcon.tsx +++ /dev/null @@ -1,10 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const RefreshIcon = createIcon({ - displayName: 'RefreshIcon', - viewBox: '0 0 24 24', - d: 'M19.1132 13.2401C18.8967 13.1726 18.6624 13.1935 18.4612 13.2981C18.26 13.4027 18.1084 13.5826 18.0393 13.7985C17.6334 15.0395 16.8421 16.1187 15.7806 16.8789C14.719 17.6392 13.4426 18.0408 12.1369 18.0255C10.5221 18.0439 8.96579 17.4211 7.80941 16.2937C6.65304 15.1663 5.99093 13.6264 5.96829 12.0115C5.99093 10.3967 6.65304 8.85672 7.80941 7.72933C8.96579 6.60194 10.5221 5.97914 12.1369 5.9975C13.5954 5.99398 15.009 6.50165 16.132 7.43227L14.2676 7.12298C14.1559 7.10459 14.0416 7.10848 13.9314 7.13441C13.8212 7.16034 13.7172 7.2078 13.6253 7.27407C13.5335 7.34034 13.4557 7.42411 13.3964 7.52056C13.337 7.61701 13.2974 7.72423 13.2796 7.83607C13.2612 7.9478 13.2651 8.06207 13.291 8.1723C13.317 8.28253 13.3644 8.38654 13.4307 8.47836C13.497 8.57018 13.5807 8.64799 13.6772 8.70733C13.7736 8.76666 13.8809 8.80634 13.9927 8.82409L17.6355 9.42549H17.7815C17.8812 9.42537 17.98 9.40793 18.0736 9.37394C18.1051 9.36199 18.1342 9.34454 18.1596 9.32239C18.2212 9.29948 18.279 9.26764 18.3314 9.22789L18.4087 9.13338C18.4087 9.09042 18.486 9.05606 18.5204 9.00451C18.5548 8.95296 18.5204 8.91859 18.5634 8.88423C18.5871 8.83419 18.6072 8.78251 18.6235 8.72958L19.2678 5.293C19.2893 5.18018 19.2883 5.06423 19.2649 4.9518C19.2415 4.83936 19.1963 4.73262 19.1316 4.63768C19.067 4.54275 18.9843 4.46147 18.8883 4.39849C18.7923 4.33551 18.6848 4.29206 18.5719 4.27062C18.4591 4.24918 18.3432 4.25018 18.2307 4.27355C18.1183 4.29692 18.0116 4.34221 17.9166 4.40683C17.7249 4.53734 17.5929 4.73867 17.5496 4.96653L17.3176 6.21229C15.8794 4.96587 14.0401 4.27958 12.1369 4.27921C10.0664 4.26088 8.07305 5.06472 6.59444 6.51434C5.11582 7.96397 4.27267 9.94096 4.25 12.0115C4.27267 14.0821 5.11582 16.0591 6.59444 17.5087C8.07305 18.9583 10.0664 19.7621 12.1369 19.7438C13.815 19.7696 15.457 19.2559 16.8211 18.2784C18.1853 17.3009 19.1996 15.9113 19.7146 14.314C19.7472 14.204 19.7574 14.0886 19.7447 13.9746C19.732 13.8606 19.6965 13.7503 19.6405 13.6502C19.5844 13.5501 19.5089 13.4622 19.4183 13.3918C19.3278 13.3214 19.224 13.2698 19.1132 13.2401Z' -}); - -export default RefreshIcon; diff --git a/main/packages/ui/src/components/icons/RightArrow.tsx b/main/packages/ui/src/components/icons/RightArrow.tsx deleted file mode 100644 index 0555763..0000000 --- a/main/packages/ui/src/components/icons/RightArrow.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function RightIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/main/packages/ui/src/components/icons/SealosCoin.tsx b/main/packages/ui/src/components/icons/SealosCoin.tsx deleted file mode 100644 index 0e93f7b..0000000 --- a/main/packages/ui/src/components/icons/SealosCoin.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -/** - * @deprecated - */ -export default function SealosCoin(props: IconProps) { - return ( - - - - - - - - - - - ); -} diff --git a/main/packages/ui/src/components/icons/SearchIcon.tsx b/main/packages/ui/src/components/icons/SearchIcon.tsx deleted file mode 100644 index e0d7ba4..0000000 --- a/main/packages/ui/src/components/icons/SearchIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const SearchIcon = createIcon({ - displayName: 'SearchIcon', - viewBox: '0 0 17 17', - d: 'M14.7803 13.865L12.3069 11.4116C13.267 10.2146 13.7319 8.69518 13.6061 7.16585C13.4804 5.63652 12.7734 4.2135 11.6306 3.18941C10.4879 2.16532 8.99615 1.61799 7.46222 1.65996C5.9283 1.70194 4.46876 2.33002 3.3837 3.41508C2.29865 4.50013 1.67056 5.95967 1.62859 7.4936C1.58662 9.02752 2.13395 10.5192 3.15804 11.662C4.18213 12.8048 5.60514 13.5117 7.13448 13.6375C8.66381 13.7633 10.1832 13.2984 11.3803 12.3383L13.8336 14.7916C13.8956 14.8541 13.9693 14.9037 14.0506 14.9376C14.1318 14.9714 14.2189 14.9888 14.3069 14.9888C14.395 14.9888 14.4821 14.9714 14.5633 14.9376C14.6446 14.9037 14.7183 14.8541 14.7803 14.7916C14.9004 14.6673 14.9676 14.5012 14.9676 14.3283C14.9676 14.1554 14.9004 13.9893 14.7803 13.865ZM7.64028 12.3383C6.7173 12.3383 5.81504 12.0646 5.04762 11.5518C4.28019 11.0391 3.68205 10.3102 3.32884 9.45751C2.97563 8.60478 2.88321 7.66647 3.06328 6.76123C3.24334 5.85598 3.6878 5.02446 4.34044 4.37182C4.99309 3.71917 5.82461 3.27471 6.72986 3.09465C7.6351 2.91459 8.57341 3.007 9.42613 3.36021C10.2789 3.71342 11.0077 4.31156 11.5205 5.07899C12.0332 5.84642 12.3069 6.74867 12.3069 7.67165C12.3069 8.90933 11.8153 10.0963 10.9401 10.9715C10.0649 11.8467 8.87795 12.3383 7.64028 12.3383Z' -}); -export default SearchIcon; diff --git a/main/packages/ui/src/components/icons/SettingIcon.tsx b/main/packages/ui/src/components/icons/SettingIcon.tsx deleted file mode 100644 index ba3dd78..0000000 --- a/main/packages/ui/src/components/icons/SettingIcon.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function SettingIcon(props: IconProps) { - return ( - - - - - ); -} diff --git a/main/packages/ui/src/components/icons/SortPolygonDownIcon.tsx b/main/packages/ui/src/components/icons/SortPolygonDownIcon.tsx deleted file mode 100644 index a002b65..0000000 --- a/main/packages/ui/src/components/icons/SortPolygonDownIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const SortPolygonUpIcon = createIcon({ - displayName: 'SortPolygonIcon', - viewBox: '0 0 7 5', - d: 'M3.33873 4.19508C3.61963 4.47761 4.07678 4.47761 4.35768 4.19508L6.63781 1.90173C7.08838 1.44854 6.76739 0.676758 6.12833 0.676758H1.56808C0.929025 0.676758 0.608031 1.44854 1.0586 1.90173L3.33873 4.19508Z' -}); -export default SortPolygonUpIcon; diff --git a/main/packages/ui/src/components/icons/SortPolygonUpIcon.tsx b/main/packages/ui/src/components/icons/SortPolygonUpIcon.tsx deleted file mode 100644 index ca3447e..0000000 --- a/main/packages/ui/src/components/icons/SortPolygonUpIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const SortPolygonUpIcon = createIcon({ - displayName: 'SortPolygonIcon', - viewBox: '0 0 7 5', - d: 'M3.33873 1.15843C3.61963 0.875901 4.07678 0.875902 4.35768 1.15843L6.63781 3.45179C7.08838 3.90497 6.76739 4.67676 6.12833 4.67676H1.56808C0.929025 4.67676 0.608031 3.90497 1.0586 3.45179L3.33873 1.15843Z' -}); -export default SortPolygonUpIcon; diff --git a/main/packages/ui/src/components/icons/StorageIcon.tsx b/main/packages/ui/src/components/icons/StorageIcon.tsx deleted file mode 100644 index a30c1ca..0000000 --- a/main/packages/ui/src/components/icons/StorageIcon.tsx +++ /dev/null @@ -1,20 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const StorageIcon = createIcon({ - displayName: 'StorageIcon', - viewBox: '0 0 40 40', - path: ( - - - - - ) -}); -export default StorageIcon; diff --git a/main/packages/ui/src/components/icons/SuccessIcon.tsx b/main/packages/ui/src/components/icons/SuccessIcon.tsx deleted file mode 100644 index 6b02858..0000000 --- a/main/packages/ui/src/components/icons/SuccessIcon.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function SuccessIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/main/packages/ui/src/components/icons/UploadIcon.tsx b/main/packages/ui/src/components/icons/UploadIcon.tsx deleted file mode 100644 index 17a4611..0000000 --- a/main/packages/ui/src/components/icons/UploadIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const UploadIcon = createIcon({ - displayName: 'UploadIcon', - viewBox: '0 0 24 25', - d: 'M6.5 20.3384C4.98 20.3384 3.68333 19.815 2.61 18.7684C1.53667 17.715 1 16.4317 1 14.9184C1 13.6184 1.39 12.4584 2.17 11.4384C2.95667 10.4184 3.98333 9.76838 5.25 9.48838C5.67 7.95505 6.50333 6.71505 7.75 5.76838C9.00333 4.81505 10.42 4.33838 12 4.33838C13.9533 4.33838 15.6067 5.01838 16.96 6.37838C18.32 7.73171 19 9.38505 19 11.3384C20.1533 11.4717 21.1067 11.9717 21.86 12.8384C22.62 13.6917 23 14.6917 23 15.8384C23 17.0917 22.5633 18.155 21.69 19.0284C20.8167 19.9017 19.7533 20.3384 18.5 20.3384H13C12.4533 20.3384 11.9833 20.1417 11.59 19.7484C11.1967 19.3617 11 18.8917 11 18.3384V13.1884L9.4 14.7384L8 13.3384L12 9.33838L16 13.3384L14.6 14.7384L13 13.1884V18.3384H18.5C19.2 18.3384 19.79 18.095 20.27 17.6084C20.7567 17.1284 21 16.5384 21 15.8384C21 15.1384 20.7567 14.5484 20.27 14.0684C19.79 13.5817 19.2 13.3384 18.5 13.3384H17V11.3384C17 9.95838 16.5133 8.77838 15.54 7.79838C14.5667 6.82505 13.3867 6.33838 12 6.33838C10.62 6.33838 9.44 6.82505 8.46 7.79838C7.48667 8.77838 7 9.95838 7 11.3384H6.5C5.53333 11.3384 4.71 11.6817 4.03 12.3684C3.34333 13.0484 3 13.8717 3 14.8384C3 15.805 3.34333 16.6384 4.03 17.3384C4.71 18.005 5.53333 18.3384 6.5 18.3384H9V20.3384' -}); -export default UploadIcon; diff --git a/main/packages/ui/src/components/icons/VisibilityIcon.tsx b/main/packages/ui/src/components/icons/VisibilityIcon.tsx deleted file mode 100644 index 8d97c46..0000000 --- a/main/packages/ui/src/components/icons/VisibilityIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const VisibityIcon = createIcon({ - displayName: 'VisibityIcon', - viewBox: '0 0 14 15', - d: 'M6.99992 3.8383C9.21075 3.8383 11.1824 5.0808 12.1449 7.04663C11.1824 9.01246 9.21075 10.255 6.99992 10.255C4.78909 10.255 2.81742 9.01246 1.85492 7.04663C2.81742 5.0808 4.78909 3.8383 6.99992 3.8383ZM6.99992 2.67163C4.08325 2.67163 1.59242 4.4858 0.583252 7.04663C1.59242 9.60746 4.08325 11.4216 6.99992 11.4216C9.91659 11.4216 12.4074 9.60746 13.4166 7.04663C12.4074 4.4858 9.91659 2.67163 6.99992 2.67163ZM6.99992 5.5883C7.80492 5.5883 8.45825 6.24163 8.45825 7.04663C8.45825 7.85163 7.80492 8.50496 6.99992 8.50496C6.19492 8.50496 5.54159 7.85163 5.54159 7.04663C5.54159 6.24163 6.19492 5.5883 6.99992 5.5883ZM6.99992 4.42163C5.55325 4.42163 4.37492 5.59996 4.37492 7.04663C4.37492 8.4933 5.55325 9.67163 6.99992 9.67163C8.44659 9.67163 9.62492 8.4933 9.62492 7.04663C9.62492 5.59996 8.44659 4.42163 6.99992 4.42163Z' -}); -export default VisibityIcon; diff --git a/main/packages/ui/src/components/icons/WarnIcon.tsx b/main/packages/ui/src/components/icons/WarnIcon.tsx deleted file mode 100644 index 22bbe64..0000000 --- a/main/packages/ui/src/components/icons/WarnIcon.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function WarnIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/main/packages/ui/src/components/icons/WarnTriangleIcon.tsx b/main/packages/ui/src/components/icons/WarnTriangleIcon.tsx deleted file mode 100644 index bbc82b8..0000000 --- a/main/packages/ui/src/components/icons/WarnTriangleIcon.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function WarnTriangleIcon(props: IconProps) { - return ( - - - - - - - - - - - ); -} diff --git a/main/packages/ui/src/components/icons/WarningIcon.tsx b/main/packages/ui/src/components/icons/WarningIcon.tsx deleted file mode 100644 index 2ad1a77..0000000 --- a/main/packages/ui/src/components/icons/WarningIcon.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function WarningIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/main/packages/ui/src/components/icons/WebHostIcon.tsx b/main/packages/ui/src/components/icons/WebHostIcon.tsx deleted file mode 100644 index d1c64ae..0000000 --- a/main/packages/ui/src/components/icons/WebHostIcon.tsx +++ /dev/null @@ -1,28 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const WebHostIcon = createIcon({ - displayName: 'WebHostIcon', - viewBox: '0 0 24 25', - path: ( - - - - - - ) -}); -export default WebHostIcon; diff --git a/main/packages/ui/src/components/icons/WechatIcon.tsx b/main/packages/ui/src/components/icons/WechatIcon.tsx deleted file mode 100644 index ba02e3c..0000000 --- a/main/packages/ui/src/components/icons/WechatIcon.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import { Icon } from '@chakra-ui/react'; -export default function WechatIcon(props: Parameters[0]) { - return ( - - - - - ); -} diff --git a/main/packages/ui/src/components/icons/line/WarnTriange.tsx b/main/packages/ui/src/components/icons/line/WarnTriange.tsx deleted file mode 100644 index 961e69a..0000000 --- a/main/packages/ui/src/components/icons/line/WarnTriange.tsx +++ /dev/null @@ -1,25 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const WarnTriangeIcon = createIcon({ - displayName: 'WarnTriangeIcon', - viewBox: '0 0 25 24', - path: ( - - - - - - - - - - - ) -}); - -export default WarnTriangeIcon; diff --git a/main/packages/ui/src/components/index.ts b/main/packages/ui/src/components/index.ts deleted file mode 100644 index 2b7a85b..0000000 --- a/main/packages/ui/src/components/index.ts +++ /dev/null @@ -1,125 +0,0 @@ -import CopyIcon from './icons/CopyIcon'; -import WebHostIcon from './icons/WebHostIcon'; -import DownloadIcon from './icons/DownloadIcon'; -import DeleteIcon from './icons/DeleteIcon'; -import AddIcon from './icons/AddIcon'; -import ArrowDownSLineIcon from './icons/ArrowDownSLineIcon'; -import ArrowExchangeIcon from './icons/ArrowExchangeIcon'; -import BucketIcon from './icons/BucketIcon'; -import CreateFolderIcon from './icons/CreateFolderIcon'; -import DnsIcon from './icons/DnsIcon'; -import EditIcon from './icons/EditIcon'; -import ExpanMoreIcon from './icons/ExpandMoreIcon'; -import ExchangeIcon from './icons/ExchangeIcon'; -import FileIcon from './icons/FileIcon'; -import FolderIcon from './icons/FolderIcon'; -import GroupAddIcon from './icons/GroupAdd'; -import InfoCircleIcon from './icons/InfoCircleIcon'; -import InfoIcon from './icons/InfoIcon'; -import LeftArrowIcon from './icons/LeftArrowIcon'; -import RightArrowIcon from './icons/RightArrow'; -import LinkIcon from './icons/LinkIcon'; -import ListCheckIcon from './icons/ListCheckIcon'; -import DetailsMoreIcon from './icons/DetailsMoreIcon'; -import MonitorIcon from './icons/MonitorIcon'; -import MoreIcon from './icons/MoreIcon'; -import RefreshIcon from './icons/RefreshIcon'; -import SearchIcon from './icons/SearchIcon'; -import StorageIcon from './icons/StorageIcon'; -import ClearOutlineIcon from './icons/ClearOutlineIcon'; -import UploadIcon from './icons/UploadIcon'; -import VisibityIcon from './icons/VisibilityIcon'; -import CancelIcon from './icons/CancelIcon'; -import SettingIcon from './icons/SettingIcon'; -import LogoutIcon from './icons/LogoutIcon'; -import GithubIcon from './icons/GithubIcon'; -import GoogleIcon from './icons/GoogleIcon'; -import DocsIcon from './icons/DocsIcon'; -import NotificationIcon from './icons/NotificationIcon'; -import WechatIcon from './icons/WechatIcon'; -import WarnTriangleIcon from './icons/WarnTriangleIcon'; -import ListIcon from './icons/ListIcon'; -import PortIcon from './icons/PortIcon'; -import WarnIcon from './icons/WarnIcon'; -import CloseIcon from './icons/CloseIcon'; -import SortPolygonUpIcon from './icons/SortPolygonUpIcon'; -import SortPolygonDownIcon from './icons/SortPolygonDownIcon'; -import WarningIcon from './icons/WarningIcon'; -import SealosCoin from './icons/SealosCoin'; -import useMessage from './Message/index'; -import EditTabs from './EditTabs'; -import YamlCode from './YamlCode'; -import ProviderIcon from './icons/ProviderIcon'; -import WarnTriangeIcon from './icons/line/WarnTriange'; -import CurrencySymbol from './icons/CurrencySymbol'; - -export { SealosMenu } from './Menu'; -export { Tabs } from './Tabs'; -export { MyRangeSlider } from './RangeSlider'; -export { Tip } from './Tip'; -export { MyTooltip } from './MyTooltip'; -export { RangeInput } from './RangeInput'; -export { MySlider } from './MySlider'; -export { MyTable } from './MyTable'; - -import MySelect from './Select'; -import AutoComplete from './AutoComplete'; - -export { - MySelect, - AutoComplete, - SealosCoin, - WarningIcon, - useMessage, - YamlCode, - EditTabs, - AddIcon, - ArrowDownSLineIcon, - ArrowExchangeIcon, - BucketIcon, - CreateFolderIcon, - ClearOutlineIcon, - CopyIcon, - DeleteIcon, - DnsIcon, - DetailsMoreIcon, - DownloadIcon, - EditIcon, - ExchangeIcon, - ExpanMoreIcon, - CancelIcon, - FileIcon, - FolderIcon, - GroupAddIcon, - WarnTriangleIcon, - GithubIcon, - GoogleIcon, - InfoCircleIcon, - InfoIcon, - LeftArrowIcon, - LinkIcon, - ListCheckIcon, - LogoutIcon, - ListIcon, - MonitorIcon, - MoreIcon, - RefreshIcon, - RightArrowIcon, - SearchIcon, - SettingIcon, - StorageIcon, - UploadIcon, - VisibityIcon, - WechatIcon, - PortIcon, - NotificationIcon, - DocsIcon, - WarnIcon, - CloseIcon, - SortPolygonUpIcon, - SortPolygonDownIcon, - ProviderIcon, - WebHostIcon, - WarnTriangeIcon, - CurrencySymbol -}; diff --git a/main/packages/ui/src/index.ts b/main/packages/ui/src/index.ts deleted file mode 100644 index d0999db..0000000 --- a/main/packages/ui/src/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -export { theme } from './theme'; -export * from './components'; - -export type { ThemeType } from './theme'; diff --git a/main/packages/ui/src/theme/colors.ts b/main/packages/ui/src/theme/colors.ts deleted file mode 100644 index d53d379..0000000 --- a/main/packages/ui/src/theme/colors.ts +++ /dev/null @@ -1,118 +0,0 @@ -const baseColors = { - grayModern: { - '05': 'rgba(17, 24, 36, 0.05)', - 1: 'rgba(17, 24, 36, 0.1)', - 15: 'rgba(17, 24, 36, 0.15)', - 25: '#FBFBFC', - 50: '#F7F8FA', - 100: '#F4F4F7', - 150: '#F0F1F6', - 200: '#E8EBF0', - 250: '#DFE2EA', - 300: '#C4CBD7', - 400: '#8A95A7', - 500: '#667085', - 600: '#485264', - 700: '#383F50', - 800: '#1D2532', - 900: '#111824' - }, - blue: { - 25: '#F9FAFE', - 50: '#F0F4FF', - 100: '#E1EAFF', - 200: '#C5D7FF', - 300: '#94B5FF', - 400: '#5E8FFF', - 500: '#487FFF', - 600: '#3370FF', - 700: '#2B5FD9', - 800: '#2450B5', - 900: '#1D4091' - }, - green: { - 25: '#F9FEFB', - 50: '#EDFBF3', - 100: '#D1FADF', - 200: '#B9F4D1', - 300: '#76E4AA', - 400: '#32D583', - 500: '#12B76A', - 600: '#039855', - 700: '#027A48', - 800: '#05603A', - 900: '#054F31' - }, - red: { - 1: 'rgba(217,45,32,0.1)', - 3: 'rgba(217,45,32,0.3)', - 5: 'rgba(217,45,32,0.5)', - 25: '#FFFBFA', - 50: '#FEF3F2', - 100: '#FEE4E2', - 200: '#FECDCA', - 300: '#FDA29B', - 400: '#F97066', - 500: '#F04438', - 600: '#D92D20', - 700: '#B42318', - 800: '#912018', - 900: '#7A271A' - }, - brightBlue: { - 25: '#F9FDFE', - 50: '#F0FBFF', - 100: '#DBF3FF', - 200: '#BCE7FF', - 300: '#85CCFF', - 400: '#47B2FF', - 500: '#219BF4', - 600: '#0884DD', - 700: '#0770BC', - 800: '#005B9C', - 900: '#004B82' - }, - royalBlue: { - 100: '#E1EAFF', - 700: '#2B5FD9' - }, - yellow: { - 25: '#FFFDFA', - 50: '#FFFAEB', - 100: '#FEF0C7', - 200: '#FEDF89', - 300: '#FEC84B', - 400: '#FDB022', - 500: '#F79009', - 600: '#DC6803', - 700: '#B54708', - 800: '#93370D', - 900: '#7A2E0E' - }, - adora: { - 25: '#FCFCFF', - 50: '#F0EEFF', - 100: '#E4E1FC', - 200: '#D3CAFF', - 300: '#B6A8FC', - 400: '#9E8DFB', - 500: '#8774EE', - 600: '#6F5DD7', - 700: '#5E4EBD', - 800: '#4E4198', - 900: '#42387D' - } -}; - -const otherColors = { - surfaceLow: baseColors.grayModern[50], - surface: baseColors.grayModern[100], - boxShadowBlue: '0px 0px 0px 2.4px rgba(33, 155, 244, 0.15)', - buttonBoxShadow: - '0px 1px 2px 0px rgba(19, 51, 107, 0.05), 0px 0px 1px 0px rgba(19, 51, 107, 0.08)' -}; - -export const colors = { - ...baseColors, - ...otherColors -}; diff --git a/main/packages/ui/src/theme/components/Button.ts b/main/packages/ui/src/theme/components/Button.ts deleted file mode 100644 index 8f5bb06..0000000 --- a/main/packages/ui/src/theme/components/Button.ts +++ /dev/null @@ -1,103 +0,0 @@ -import { defineStyleConfig } from '@chakra-ui/react'; -import { colors as ThemeColors } from '../colors'; - -export const Button = defineStyleConfig({ - sizes: { - xs: {}, - sm: { - fontSize: '12px' - }, - md: { - fontSize: '14px' - }, - lg: {} - }, - variants: { - primary: { - bg: '#3E3B3B', - _hover: { - bg: '#3E3B3B', - _disabled: { - bg: '#3E3B3B' - } - }, - color: '#FEFEFE' - }, - // >>>old - secondary: { - border: '1px solid', - borderColor: 'grayModern.200', - background: 'white_.500', - color: 'grayModern.900', - _hover: { - borderColor: 'blue.600' - } - }, - warn: { - bgColor: 'error.500', - color: 'white_.100' - }, - 'white-bg-icon': { - _hover: { - bgColor: '#9699B41A' - }, - minW: 'unset', - h: 'unset', - p: '4px' - }, - // <<< - solid: { - bg: ThemeColors.grayModern[900], - color: '#FFF', - borderRadius: 'md', - fontWeight: 500, - boxShadow: ThemeColors.buttonBoxShadow, - _hover: { - opacity: '0.9', - bg: ThemeColors.grayModern[900], - _disabled: { - bg: ThemeColors.grayModern[900], - opacity: '0.4' - } - }, - _active: { - bg: '' - } - }, - square: { - borderRadius: '6px', - minW: '30px', - width: '30px', - height: '30px', - p: '0px', - _hover: { - color: 'brightBlue.600', - bg: 'rgba(17, 24, 36, 0.05)' - } - }, - outline: { - bg: '#FFF', - borderRadius: 'md', - fontWeight: 500, - border: '1px solid', - borderColor: 'grayModern.250', - boxShadow: ThemeColors.buttonBoxShadow, - color: 'grayModern.600', - minW: '16px', - minH: '16px', - _hover: { - opacity: '0.9', - bg: 'rgba(33, 155, 244, 0.05)', - color: 'brightBlue.700', - borderColor: 'brightBlue.300' - }, - _active: { - bg: '' - } - } - }, - defaultProps: { - variant: 'solid', - size: 'md' - } -}); diff --git a/main/packages/ui/src/theme/components/Input.ts b/main/packages/ui/src/theme/components/Input.ts deleted file mode 100644 index d706a05..0000000 --- a/main/packages/ui/src/theme/components/Input.ts +++ /dev/null @@ -1,52 +0,0 @@ -import { inputAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; -import { colors } from '../colors'; - -const InputHelper = createMultiStyleConfigHelpers(inputAnatomy.keys); - -export const Input = InputHelper.defineMultiStyleConfig({ - variants: { - outline: { - field: { - width: '300px', - fontSize: '12px', - fontWeight: 400, - height: '32px', - borderRadius: 'md', - border: '1px solid', - borderColor: '#E8EBF0', - bg: colors.grayModern[50], - _focusVisible: { - borderColor: colors.brightBlue[500], - boxShadow: colors.boxShadowBlue, - bg: '#FFF', - color: '#111824' - }, - _disabled: { - color: '#8A95A7', - bg: '#FBFBFC', - _hover: {} - }, - _hover: { - borderColor: colors.brightBlue[300], - bg: colors.grayModern[50] - }, - _invalid: { - bg: '#FFF', - borderColor: '#D92D20', - boxShadow: '0px 0px 0px 2.4px rgba(217, 45, 32, 0.15)' - }, - _placeholder: { - color: '#667085', - fontSize: '12px', - fontWeight: 400, - lineHeight: '16px' - } - } - } - }, - defaultProps: { - size: 'md', - variant: 'outline' - } -}); diff --git a/main/packages/ui/src/theme/components/Modal.ts b/main/packages/ui/src/theme/components/Modal.ts deleted file mode 100644 index a4e9eea..0000000 --- a/main/packages/ui/src/theme/components/Modal.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { modalAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; - -const ModalHelper = createMultiStyleConfigHelpers(modalAnatomy.keys); - -export const Modal = ModalHelper.defineMultiStyleConfig({ - baseStyle: { - header: { - bg: '#FBFBFC', - borderTopRadius: '10px', - borderBottom: '1px solid #F4F4F7', - fontSize: '16px', - color: 'grayModern.900', - fontWeight: '500', - py: '11.5px', - lineHeight: '24px' - }, - closeButton: { - fill: '#111824', - svg: { - width: '12px', - height: '12px' - } - }, - dialog: { - borderRadius: '10px' - }, - body: { - px: '36px', - py: '24px' - }, - footer: { - px: '36px', - pb: '24px', - pt: '0px' - } - } -}); diff --git a/main/packages/ui/src/theme/components/NumberInput.ts b/main/packages/ui/src/theme/components/NumberInput.ts deleted file mode 100644 index 629514c..0000000 --- a/main/packages/ui/src/theme/components/NumberInput.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { numberInputAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; -import { colors } from '../colors'; - -const NumberInputHelper = createMultiStyleConfigHelpers(numberInputAnatomy.keys); - -export const NumberInput = NumberInputHelper.defineMultiStyleConfig({ - baseStyle: { - root: { - borderRadius: 'lg', - borderColor: '#E8EBF0', - bg: colors.grayModern[50], - _hover: { - borderColor: colors.brightBlue[300], - bg: colors.grayModern[50] - } - }, - field: { - // _focusVisible _hover bordercolor doesn't work - borderRadius: 'lg', - bg: colors.grayModern[50] - }, - stepperGroup: { - borderColor: '#E8EBF0' - }, - stepper: { - borderColor: '#E8EBF0' - } - } -}); diff --git a/main/packages/ui/src/theme/components/Select.ts b/main/packages/ui/src/theme/components/Select.ts deleted file mode 100644 index b34c6f6..0000000 --- a/main/packages/ui/src/theme/components/Select.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { selectAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; - -const { definePartsStyle, defineMultiStyleConfig } = createMultiStyleConfigHelpers( - selectAnatomy.keys -); - -export const Select = defineMultiStyleConfig({ - variants: { - secondary: definePartsStyle({ - field: { - borderRadius: '4px', - border: '1px solid', - borderColor: 'grayModern.200', - background: 'white_.500', - color: 'grayModern.900' - } - }) - } -}); diff --git a/main/packages/ui/src/theme/components/Slider.ts b/main/packages/ui/src/theme/components/Slider.ts deleted file mode 100644 index f41b471..0000000 --- a/main/packages/ui/src/theme/components/Slider.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { sliderAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; - -const SliderHelper = createMultiStyleConfigHelpers(sliderAnatomy.keys); - -export const Slider = SliderHelper.defineMultiStyleConfig({ - baseStyle: { - thumb: { - _focusVisible: { - boxShadow: '', - bg: 'grayModern.900' - } - } - } -}); diff --git a/main/packages/ui/src/theme/components/Switch.ts b/main/packages/ui/src/theme/components/Switch.ts deleted file mode 100644 index cb15ff8..0000000 --- a/main/packages/ui/src/theme/components/Switch.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { switchAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; - -const SwitchHelper = createMultiStyleConfigHelpers(switchAnatomy.keys); - -export const Switch = SwitchHelper.defineMultiStyleConfig({ - baseStyle: { - track: { - bg: 'gray.100', - _checked: { - bg: 'gray.700' - } - } - } -}); diff --git a/main/packages/ui/src/theme/components/Tag.ts b/main/packages/ui/src/theme/components/Tag.ts deleted file mode 100644 index 9bdf8df..0000000 --- a/main/packages/ui/src/theme/components/Tag.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { tagAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; - -const TagHelper = createMultiStyleConfigHelpers(tagAnatomy.keys); - -export const Tag = TagHelper.defineMultiStyleConfig({ - baseStyle: { - container: { - borderRadius: 'md', - backgroundColor: 'grayModern.150' - }, - label: { - fontWeight: 500, - fontSize: '12px' - } - } -}); diff --git a/main/packages/ui/src/theme/components/Textarea.ts b/main/packages/ui/src/theme/components/Textarea.ts deleted file mode 100644 index c31e7b8..0000000 --- a/main/packages/ui/src/theme/components/Textarea.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { ComponentStyleConfig } from '@chakra-ui/react'; -import { colors } from '../colors'; - -export const Textarea: ComponentStyleConfig = { - variants: { - outline: { - border: '1px solid', - bg: 'grayModern.50', - borderRadius: 'md', - borderColor: '#E8EBF0', - _focusVisible: { - borderColor: colors.brightBlue[500], - boxShadow: colors.boxShadowBlue, - bg: '#FFF', - color: '#111824' - } - } - }, - defaultProps: { - size: 'md', - variant: 'outline' - } -}; diff --git a/main/packages/ui/src/theme/components/YamlCode.ts b/main/packages/ui/src/theme/components/YamlCode.ts deleted file mode 100644 index d61a03a..0000000 --- a/main/packages/ui/src/theme/components/YamlCode.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineStyleConfig } from '@chakra-ui/react'; - -export const YamlCode = defineStyleConfig({ - baseStyle: () => ({ - height: '100%' - }) -}); diff --git a/main/packages/ui/src/theme/components/index.ts b/main/packages/ui/src/theme/components/index.ts deleted file mode 100644 index 57c0249..0000000 --- a/main/packages/ui/src/theme/components/index.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { Button } from './Button'; -import { Input } from './Input'; -import { Select } from './Select'; -import { Tag } from './Tag'; -import { Switch } from './Switch'; -import { Textarea } from './Textarea'; -import { Slider } from './Slider'; -import { Modal } from './Modal'; -import { NumberInput } from './NumberInput'; - -export const components = { - Button, - Input, - Select, - Tag, - Switch, - Textarea, - Slider, - Modal, - NumberInput -}; - -// export * from './Button'; -// export * from './Input'; -// export * from './Select'; -// export * from './Tag'; -// export * from './Switch'; -// export * from './Textarea'; -// export * from './Slider'; diff --git a/main/packages/ui/src/theme/index.ts b/main/packages/ui/src/theme/index.ts deleted file mode 100644 index 06fd4ea..0000000 --- a/main/packages/ui/src/theme/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { theme } from './theme'; -export type { ThemeType } from './theme'; -export { theme }; -export default theme; diff --git a/main/packages/ui/src/theme/theme.ts b/main/packages/ui/src/theme/theme.ts deleted file mode 100644 index 969fa9a..0000000 --- a/main/packages/ui/src/theme/theme.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { extendTheme } from '@chakra-ui/react'; -import { colors } from './colors'; -import { components } from './components'; - -const _theme = { - colors, - components, - fonts: { - body: '-apple-system, BlinkMacSystemFont, "PingFang SC", "Segoe UI", Helvetica, Arial, "PingFang SC", "Noto Sans SC", sans-serif', - heading: - '-apple-system, BlinkMacSystemFont, "PingFang SC", "Segoe UI", Helvetica, Arial, "PingFang SC", "Noto Sans SC", sans-serif', - mono: 'Menlo, monospace' - }, - fontSizes: { - sm: '10px', - base: '12px', - md: '14px', - lg: '16px', - xl: '18px', - '2xl': '20px' - }, - breakpoints: { - base: '0px', - sm: '640px', - md: '768px', - lg: '1024px', - xl: '1280px', - '2xl': '1536px' - }, - fontWeights: { - bold: 500 - }, - radii: { - xs: '1px', - sm: '2px', - base: '4px', - md: '6px', - lg: '8px', - xl: '12px', - '2xl': '16px' - }, - borders: { - 150: '1px solid #F0F1F6', - 200: '1px solid #E8EBF0', - base: '1px solid #E8EBF0' - } -}; - -export type ThemeType = typeof _theme; - -export const theme = extendTheme(_theme); diff --git a/main/packages/ui/tsconfig.json b/main/packages/ui/tsconfig.json deleted file mode 100644 index 0a3133f..0000000 --- a/main/packages/ui/tsconfig.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "compilerOptions": { - "lib": ["dom", "dom.iterable", "esnext"] - }, - "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"], - "exclude": ["node_modules"], - "extends": "../../tsconfig.web.json" -} diff --git a/main/package.json b/package.json similarity index 70% rename from main/package.json rename to package.json index b9700c7..61ab848 100644 --- a/main/package.json +++ b/package.json @@ -5,13 +5,11 @@ "scripts": { "preinstall": "npx only-allow pnpm", "dev-db": "pnpm -r --filter ./database run dev", - "gen:theme-typings": "pnpm chakra-cli tokens packages/ui/src/theme/theme.ts --out node_modules/.pnpm/node_modules/@chakra-ui/styled-system/dist/theming.types.d.ts", - "postinstall": "pnpm run gen:theme-typings && pnpm run build-packages", - "build-packages": "pnpm -r --filter './packages/*' run build", + "gen:theme-typings": "pnpm chakra-cli tokens database/node_modules/@labring/sealos-chakra-ui/src/theme/theme.ts --out node_modules/.pnpm/node_modules/@chakra-ui/styled-system/dist/theming.types.d.ts", + "postinstall": "pnpm run gen:theme-typings", "build-database": "pnpm --filter ./database run build" }, "workspaces": [ - "./packages/*", "./database" ], "devDependencies": { diff --git a/main/pnpm-lock.yaml b/pnpm-lock.yaml similarity index 96% rename from main/pnpm-lock.yaml rename to pnpm-lock.yaml index 750eddc..0c8748f 100644 --- a/main/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -50,6 +50,9 @@ importers: '@kubernetes/client-node': specifier: ^0.18.1 version: 0.18.1 + '@labring/sealos-chakra-ui': + specifier: 1.0.0 + version: 1.0.0(@types/react@18.3.27)(next@14.2.35)(react-dom@18.3.1)(react@18.3.1) '@labring/sealos-desktop-sdk': specifier: 0.1.24 version: 0.1.24(@kubernetes/client-node@0.18.1) @@ -71,9 +74,6 @@ importers: '@scalar/api-reference-react': specifier: ^0.8.36 version: 0.8.36(axios@1.6.2)(nprogress@0.2.0)(react@18.3.1)(tailwindcss@4.1.18)(typescript@5.2.2) - '@sealos/ui': - specifier: workspace:^ - version: link:../packages/ui '@tanstack/react-query': specifier: ^4.35.3 version: 4.36.1(react-dom@18.3.1)(react@18.3.1) @@ -268,82 +268,6 @@ importers: specifier: ^4.9.1 version: 4.10.1 - packages/ui: - dependencies: - '@chakra-ui/anatomy': - specifier: ^2.2.1 - version: 2.2.2 - '@chakra-ui/icons': - specifier: ^2.1.1 - version: 2.1.1(@chakra-ui/system@2.6.2)(react@18.3.1) - '@chakra-ui/next-js': - specifier: ^2.1.5 - version: 2.2.0(@chakra-ui/react@2.8.2)(@emotion/react@11.11.1)(next@14.2.35)(react@18.3.1) - '@chakra-ui/react': - specifier: ^2.8.1 - version: 2.8.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(@types/react@18.3.27)(framer-motion@10.16.5)(react-dom@18.3.1)(react@18.3.1) - '@chakra-ui/system': - specifier: ^2.6.1 - version: 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.3.1) - '@emotion/react': - specifier: ^11.11.1 - version: 11.11.1(@types/react@18.3.27)(react@18.3.1) - '@emotion/styled': - specifier: ^11.11.0 - version: 11.11.0(@emotion/react@11.11.1)(@types/react@18.3.27)(react@18.3.1) - framer-motion: - specifier: ^10.16.4 - version: 10.16.5(react-dom@18.3.1)(react@18.3.1) - react: - specifier: ^18.0 || ^19.0 || ^19.0.0-rc - version: 18.3.1 - react-dom: - specifier: ^18.0 || ^19.0 || ^19.0.0-rc - version: 18.3.1(react@18.3.1) - react-markdown: - specifier: ^8.0.7 - version: 8.0.7(@types/react@18.3.27)(react@18.3.1) - react-syntax-highlighter: - specifier: ^15.5.0 - version: 15.5.0(react@18.3.1) - rollup-plugin-peer-deps-external: - specifier: ^2.2.4 - version: 2.2.4(rollup@2.79.1) - devDependencies: - '@rollup/plugin-commonjs': - specifier: ^25.0.5 - version: 25.0.7(rollup@2.79.1) - '@rollup/plugin-node-resolve': - specifier: ^15.2.3 - version: 15.2.3(rollup@2.79.1) - '@rollup/plugin-typescript': - specifier: ^11.1.4 - version: 11.1.5(rollup@2.79.1)(tslib@2.6.2)(typescript@5.2.2) - '@types/react': - specifier: 18.3.27 - version: 18.3.27 - '@types/react-syntax-highlighter': - specifier: ^15.5.7 - version: 15.5.10 - rollup: - specifier: 2.79.1 - version: 2.79.1 - rollup-plugin-dts: - specifier: ^4.2.3 - version: 4.2.3(rollup@2.79.1)(typescript@5.2.2) - rollup-plugin-terser: - specifier: ^7.0.2 - version: 7.0.2(rollup@2.79.1) - rollup-plugin-typescript2: - specifier: ^0.36.0 - version: 0.36.0(rollup@2.79.1)(typescript@5.2.2) - tslib: - specifier: ^2.6.2 - version: 2.6.2 - typescript: - specifier: ^5.2.2 - version: 5.2.2 - packages: /@aashutoshrathi/word-wrap@1.2.6: @@ -359,14 +283,6 @@ packages: '@jridgewell/trace-mapping': 0.3.20 dev: true - /@babel/code-frame@7.23.4: - resolution: {integrity: sha512-r1IONyb6Ia+jYR2vvIDhdWdlTGhqbBoFqLTQidzZ4kepUFH15ejXvFHxCVbtl7BOXIudsIubf4E81xeA3h3IXA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/highlight': 7.23.4 - chalk: 2.4.2 - dev: true - /@babel/code-frame@7.27.1: resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} engines: {node: '>=6.9.0'} @@ -726,15 +642,6 @@ packages: '@babel/template': 7.27.2 '@babel/types': 7.28.5 - /@babel/highlight@7.23.4: - resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-validator-identifier': 7.22.20 - chalk: 2.4.2 - js-tokens: 4.0.0 - dev: true - /@babel/parser@7.23.5: resolution: {integrity: sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==} engines: {node: '>=6.0.0'} @@ -3787,15 +3694,6 @@ packages: '@jridgewell/trace-mapping': 0.3.20 dev: true - /@jridgewell/gen-mapping@0.3.8: - resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} - engines: {node: '>=6.0.0'} - dependencies: - '@jridgewell/set-array': 1.2.1 - '@jridgewell/sourcemap-codec': 1.5.0 - '@jridgewell/trace-mapping': 0.3.25 - dev: true - /@jridgewell/remapping@2.3.5: resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} dependencies: @@ -3811,18 +3709,6 @@ packages: engines: {node: '>=6.0.0'} dev: true - /@jridgewell/set-array@1.2.1: - resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} - engines: {node: '>=6.0.0'} - dev: true - - /@jridgewell/source-map@0.3.5: - resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} - dependencies: - '@jridgewell/gen-mapping': 0.3.8 - '@jridgewell/trace-mapping': 0.3.25 - dev: true - /@jridgewell/sourcemap-codec@1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} dev: true @@ -3840,13 +3726,6 @@ packages: '@jridgewell/sourcemap-codec': 1.5.0 dev: true - /@jridgewell/trace-mapping@0.3.25: - resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} - dependencies: - '@jridgewell/resolve-uri': 3.1.1 - '@jridgewell/sourcemap-codec': 1.5.0 - dev: true - /@jridgewell/trace-mapping@0.3.31: resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} dependencies: @@ -3879,6 +3758,30 @@ packages: - utf-8-validate dev: false + /@labring/sealos-chakra-ui@1.0.0(@types/react@18.3.27)(next@14.2.35)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-bYbTn3AV7pAnBFJoz7OZnKLOx4iNO4/JPRoz5ZGp8b61Fx963n85MpC6J5LceVhvlCGmwEdhqpXMrwUk1WpgiQ==} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + '@chakra-ui/anatomy': 2.2.2 + '@chakra-ui/icons': 2.1.1(@chakra-ui/system@2.6.2)(react@18.3.1) + '@chakra-ui/next-js': 2.2.0(@chakra-ui/react@2.8.2)(@emotion/react@11.11.1)(next@14.2.35)(react@18.3.1) + '@chakra-ui/react': 2.8.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(@types/react@18.3.27)(framer-motion@10.16.5)(react-dom@18.3.1)(react@18.3.1) + '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.3.1) + '@emotion/react': 11.11.1(@types/react@18.3.27)(react@18.3.1) + '@emotion/styled': 11.11.0(@emotion/react@11.11.1)(@types/react@18.3.27)(react@18.3.1) + framer-motion: 10.16.5(react-dom@18.3.1)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-markdown: 8.0.7(@types/react@18.3.27)(react@18.3.1) + react-syntax-highlighter: 15.5.0(react@18.3.1) + transitivePeerDependencies: + - '@types/react' + - next + - supports-color + dev: false + /@labring/sealos-desktop-sdk@0.1.24(@kubernetes/client-node@0.18.1): resolution: {integrity: sha512-FMU/OFu/D65kVjSm/Y65vh25TigK+mWAktLf5sjia0iOoSFjzKfGJuWmJ37B8tg47JNAVMZ99bm4mHw/EQ2lBw==} peerDependencies: @@ -4192,85 +4095,6 @@ packages: resolution: {integrity: sha512-8QagwMH3kNCuzD8EWL8R2YPW5e4OrHNSAHRFDdmFqEwEaD/KcNKjVoumo+gP2vW5eKB2UPbM6vTYiGZX0ixLnw==} dev: true - /@rollup/plugin-commonjs@25.0.7(rollup@2.79.1): - resolution: {integrity: sha512-nEvcR+LRjEjsaSsc4x3XZfCCvZIaSMenZu/OiwOKGN2UhQpAYI7ru7czFvyWbErlpoGjnSX3D5Ch5FcMA3kRWQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.68.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - dependencies: - '@rollup/pluginutils': 5.1.0(rollup@2.79.1) - commondir: 1.0.1 - estree-walker: 2.0.2 - glob: 8.1.0 - is-reference: 1.2.1 - magic-string: 0.30.17 - rollup: 2.79.1 - dev: true - - /@rollup/plugin-node-resolve@15.2.3(rollup@2.79.1): - resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.78.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - dependencies: - '@rollup/pluginutils': 5.1.0(rollup@2.79.1) - '@types/resolve': 1.20.2 - deepmerge: 4.3.1 - is-builtin-module: 3.2.1 - is-module: 1.0.0 - resolve: 1.22.8 - rollup: 2.79.1 - dev: true - - /@rollup/plugin-typescript@11.1.5(rollup@2.79.1)(tslib@2.6.2)(typescript@5.2.2): - resolution: {integrity: sha512-rnMHrGBB0IUEv69Q8/JGRD/n4/n6b3nfpufUu26axhUcboUzv/twfZU8fIBbTOphRAe0v8EyxzeDpKXqGHfyDA==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.14.0||^3.0.0||^4.0.0 - tslib: '*' - typescript: '>=3.7.0' - peerDependenciesMeta: - rollup: - optional: true - tslib: - optional: true - dependencies: - '@rollup/pluginutils': 5.1.0(rollup@2.79.1) - resolve: 1.22.8 - rollup: 2.79.1 - tslib: 2.6.2 - typescript: 5.2.2 - dev: true - - /@rollup/pluginutils@4.2.1: - resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} - engines: {node: '>= 8.0.0'} - dependencies: - estree-walker: 2.0.2 - picomatch: 2.3.1 - dev: true - - /@rollup/pluginutils@5.1.0(rollup@2.79.1): - resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - dependencies: - '@types/estree': 1.0.8 - estree-walker: 2.0.2 - picomatch: 2.3.1 - rollup: 2.79.1 - dev: true - /@rollup/rollup-android-arm-eabi@4.53.3: resolution: {integrity: sha512-mRSi+4cBjrRLoaal2PnqH82Wqyb+d3HsPUN/W+WslCXsZsyHa9ZeQQX/pQsZaVIWDkPcpV6jJ+3KLbTbgnwv8w==} cpu: [arm] @@ -5370,10 +5194,6 @@ packages: form-data: 2.5.1 dev: false - /@types/resolve@1.20.2: - resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} - dev: true - /@types/send@0.17.4: resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} dependencies: @@ -5846,12 +5666,6 @@ packages: hasBin: true dev: true - /acorn@8.15.0: - resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} - engines: {node: '>=0.4.0'} - hasBin: true - dev: true - /ajv-draft-04@1.0.0(ajv@8.17.1): resolution: {integrity: sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==} peerDependencies: @@ -6254,12 +6068,6 @@ packages: balanced-match: 1.0.2 concat-map: 0.0.1 - /brace-expansion@2.0.1: - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} - dependencies: - balanced-match: 1.0.2 - dev: true - /braces@3.0.2: resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} engines: {node: '>=8'} @@ -6298,6 +6106,7 @@ packages: /buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + dev: false /buffer@5.7.1: resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} @@ -6306,11 +6115,6 @@ packages: ieee754: 1.2.1 dev: false - /builtin-modules@3.3.0: - resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} - engines: {node: '>=6'} - dev: true - /busboy@1.6.0: resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} engines: {node: '>=10.16.0'} @@ -6590,10 +6394,6 @@ packages: engines: {node: '>=18'} dev: true - /commander@2.20.3: - resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} - dev: true - /commander@7.2.0: resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} engines: {node: '>= 10'} @@ -6604,10 +6404,6 @@ packages: engines: {node: ^12.20.0 || >=14} dev: true - /commondir@1.0.1: - resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} - dev: true - /compute-scroll-into-view@3.0.3: resolution: {integrity: sha512-nadqwNxghAGTamwIqQSG433W6OADZx2vCo3UXHNrzTRHK/htu+7+L0zhjEoaeaQVNAi3YgqWDv8+tzf0hRfR+A==} dev: false @@ -7634,6 +7430,7 @@ packages: /estree-walker@2.0.2: resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} + dev: false /estree-walker@3.0.3: resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} @@ -7774,27 +7571,10 @@ packages: engines: {node: '>=0.10.0'} dev: false - /find-cache-dir@3.3.2: - resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} - engines: {node: '>=8'} - dependencies: - commondir: 1.0.1 - make-dir: 3.1.0 - pkg-dir: 4.2.0 - dev: true - /find-root@1.1.0: resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} dev: false - /find-up@4.1.0: - resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} - engines: {node: '>=8'} - dependencies: - locate-path: 5.0.0 - path-exists: 4.0.0 - dev: true - /find-up@5.0.0: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} @@ -7923,15 +7703,6 @@ packages: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} dev: false - /fs-extra@10.1.0: - resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} - engines: {node: '>=12'} - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.1 - dev: true - /fs-minipass@2.1.0: resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} engines: {node: '>= 8'} @@ -8121,17 +7892,6 @@ packages: once: 1.4.0 path-is-absolute: 1.0.1 - /glob@8.1.0: - resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} - engines: {node: '>=12'} - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 5.1.6 - once: 1.4.0 - dev: true - /globals@11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} @@ -8698,13 +8458,6 @@ packages: engines: {node: '>=4'} dev: false - /is-builtin-module@3.2.1: - resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} - engines: {node: '>=6'} - dependencies: - builtin-modules: 3.3.0 - dev: true - /is-callable@1.2.7: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} @@ -8775,10 +8528,6 @@ packages: resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==} dev: true - /is-module@1.0.0: - resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} - dev: true - /is-negative-zero@2.0.2: resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} engines: {node: '>= 0.4'} @@ -8820,12 +8569,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /is-reference@1.2.1: - resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==} - dependencies: - '@types/estree': 1.0.8 - dev: true - /is-regex@1.1.4: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} engines: {node: '>= 0.4'} @@ -8950,15 +8693,6 @@ packages: set-function-name: 2.0.1 dev: true - /jest-worker@26.6.2: - resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==} - engines: {node: '>= 10.13.0'} - dependencies: - '@types/node': 20.17.32 - merge-stream: 2.0.0 - supports-color: 7.2.0 - dev: true - /jose@4.15.4: resolution: {integrity: sha512-W+oqK4H+r5sITxfxpSU+MMdr/YSWGvgZMQDIsNoBDGGy4i7GBPTtvFKibQzW06n3U3TqHjhvBJsirShsEJ6eeQ==} requiresBuild: true @@ -9056,14 +8790,6 @@ packages: engines: {node: '>=6'} hasBin: true - /jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} - dependencies: - universalify: 2.0.1 - optionalDependencies: - graceful-fs: 4.2.11 - dev: true - /jsonpath-plus@7.2.0: resolution: {integrity: sha512-zBfiUPM5nD0YZSBT/o/fbCUlCcepMIdP0CJZxM1+KgA4f2T206f6VAg9e7mX35+KlMaIc5qXW34f3BnwJ3w+RA==} engines: {node: '>=12.0.0'} @@ -9227,13 +8953,6 @@ packages: json5: 1.0.2 dev: true - /locate-path@5.0.0: - resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} - engines: {node: '>=8'} - dependencies: - p-locate: 4.1.0 - dev: true - /locate-path@6.0.0: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} @@ -9339,6 +9058,7 @@ packages: requiresBuild: true dependencies: yallist: 4.0.0 + dev: false /lucide-react@0.511.0(react@18.3.1): resolution: {integrity: sha512-VK5a2ydJ7xm8GvBeKLS9mu1pVK6ucef9780JVUjw6bAjJL/QXnd4Y0p7SPeOUMC27YhzNCZvm5d/QX0Tp3rc0w==} @@ -9348,31 +9068,11 @@ packages: react: 18.3.1 dev: false - /magic-string@0.26.7: - resolution: {integrity: sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==} - engines: {node: '>=12'} - dependencies: - sourcemap-codec: 1.4.8 - dev: true - - /magic-string@0.30.17: - resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} - dependencies: - '@jridgewell/sourcemap-codec': 1.5.0 - dev: true - /magic-string@0.30.21: resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} dependencies: '@jridgewell/sourcemap-codec': 1.5.5 - /make-dir@3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} - engines: {node: '>=8'} - dependencies: - semver: 6.3.1 - dev: true - /markdown-table@3.0.3: resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} dev: false @@ -10057,13 +9757,6 @@ packages: dependencies: brace-expansion: 1.1.11 - /minimatch@5.1.6: - resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} - engines: {node: '>=10'} - dependencies: - brace-expansion: 2.0.1 - dev: true - /minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} @@ -10458,13 +10151,6 @@ packages: type-check: 0.4.0 dev: true - /p-limit@2.3.0: - resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} - engines: {node: '>=6'} - dependencies: - p-try: 2.2.0 - dev: true - /p-limit@3.1.0: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} engines: {node: '>=10'} @@ -10472,13 +10158,6 @@ packages: yocto-queue: 0.1.0 dev: true - /p-locate@4.1.0: - resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} - engines: {node: '>=8'} - dependencies: - p-limit: 2.3.0 - dev: true - /p-locate@5.0.0: resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} engines: {node: '>=10'} @@ -10486,11 +10165,6 @@ packages: p-limit: 3.1.0 dev: true - /p-try@2.2.0: - resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} - engines: {node: '>=6'} - dev: true - /packrup@0.1.2: resolution: {integrity: sha512-ZcKU7zrr5GlonoS9cxxrb5HVswGnyj6jQvwFBa6p5VFw7G71VAHcUKL5wyZSU/ECtPM/9gacWxy2KFQKt1gMNA==} dev: false @@ -10599,13 +10273,6 @@ packages: pngjs: 7.0.0 dev: true - /pkg-dir@4.2.0: - resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} - engines: {node: '>=8'} - dependencies: - find-up: 4.1.0 - dev: true - /playwright-core@1.59.1: resolution: {integrity: sha512-HBV/RJg81z5BiiZ9yPzIiClYV/QMsDCKUyogwH9p3MCP6IYjUFu/MActgYAvK0oWyV9NlwM3GLBjADyWgydVyg==} engines: {node: '>=18'} @@ -10785,12 +10452,6 @@ packages: - '@vue/composition-api' dev: false - /randombytes@2.1.0: - resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} - dependencies: - safe-buffer: 5.2.1 - dev: true - /rc@1.2.8: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true @@ -11297,63 +10958,6 @@ packages: dependencies: glob: 7.2.3 - /rollup-plugin-dts@4.2.3(rollup@2.79.1)(typescript@5.2.2): - resolution: {integrity: sha512-jlcpItqM2efqfIiKzDB/IKOS9E9fDvbkJSGw5GtK/PqPGS9eC3R3JKyw2VvpTktZA+TNgJRMu1NTv244aTUzzQ==} - engines: {node: '>=v12.22.12'} - peerDependencies: - rollup: ^2.55 - typescript: ^4.1 - dependencies: - magic-string: 0.26.7 - rollup: 2.79.1 - typescript: 5.2.2 - optionalDependencies: - '@babel/code-frame': 7.27.1 - dev: true - - /rollup-plugin-peer-deps-external@2.2.4(rollup@2.79.1): - resolution: {integrity: sha512-AWdukIM1+k5JDdAqV/Cxd+nejvno2FVLVeZ74NKggm3Q5s9cbbcOgUPGdbxPi4BXu7xGaZ8HG12F+thImYu/0g==} - peerDependencies: - rollup: '*' - dependencies: - rollup: 2.79.1 - dev: false - - /rollup-plugin-terser@7.0.2(rollup@2.79.1): - resolution: {integrity: sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==} - deprecated: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-terser - peerDependencies: - rollup: ^2.0.0 - dependencies: - '@babel/code-frame': 7.23.4 - jest-worker: 26.6.2 - rollup: 2.79.1 - serialize-javascript: 4.0.0 - terser: 5.24.0 - dev: true - - /rollup-plugin-typescript2@0.36.0(rollup@2.79.1)(typescript@5.2.2): - resolution: {integrity: sha512-NB2CSQDxSe9+Oe2ahZbf+B4bh7pHwjV5L+RSYpCu7Q5ROuN94F9b6ioWwKfz3ueL3KTtmX4o2MUH2cgHDIEUsw==} - peerDependencies: - rollup: '>=1.26.3' - typescript: '>=2.4.0' - dependencies: - '@rollup/pluginutils': 4.2.1 - find-cache-dir: 3.3.2 - fs-extra: 10.1.0 - rollup: 2.79.1 - semver: 7.5.4 - tslib: 2.6.2 - typescript: 5.2.2 - dev: true - - /rollup@2.79.1: - resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==} - engines: {node: '>=10.0.0'} - hasBin: true - optionalDependencies: - fsevents: 2.3.3 - /rollup@4.53.3: resolution: {integrity: sha512-w8GmOxZfBmKknvdXU1sdM9NHcoQejwF/4mNgj2JuEEdRaHwwF12K7e9eXn1nLZ07ad+du76mkVsyeb2rKGllsA==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} @@ -11425,6 +11029,7 @@ packages: /safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + dev: false /safe-regex-test@1.0.0: resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} @@ -11476,18 +11081,13 @@ packages: hasBin: true dependencies: lru-cache: 6.0.0 + dev: false /semver@7.6.3: resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} engines: {node: '>=10'} hasBin: true - /serialize-javascript@4.0.0: - resolution: {integrity: sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==} - dependencies: - randombytes: 2.1.0 - dev: true - /set-function-length@1.1.1: resolution: {integrity: sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==} engines: {node: '>= 0.4'} @@ -11690,13 +11290,6 @@ packages: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} - /source-map-support@0.5.21: - resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} - dependencies: - buffer-from: 1.1.2 - source-map: 0.6.1 - dev: true - /source-map@0.5.7: resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} engines: {node: '>=0.10.0'} @@ -11707,11 +11300,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /sourcemap-codec@1.4.8: - resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} - deprecated: Please use @jridgewell/sourcemap-codec instead - dev: true - /space-separated-tokens@1.1.5: resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==} dev: false @@ -12060,17 +11648,6 @@ packages: yallist: 4.0.0 dev: false - /terser@5.24.0: - resolution: {integrity: sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==} - engines: {node: '>=10'} - hasBin: true - dependencies: - '@jridgewell/source-map': 0.3.5 - acorn: 8.15.0 - commander: 2.20.3 - source-map-support: 0.5.21 - dev: true - /text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} dev: true @@ -12196,6 +11773,7 @@ packages: /tslib@2.6.2: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} + dev: false /tsutils@3.21.0(typescript@5.2.2): resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} @@ -12488,11 +12066,6 @@ packages: unist-util-visit-parents: 6.0.1 dev: false - /universalify@2.0.1: - resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} - engines: {node: '>= 10.0.0'} - dev: true - /update-browserslist-db@1.2.1(browserslist@4.28.1): resolution: {integrity: sha512-R9NcHbbZ45RoWfTdhn1J9SS7zxNvlddv4YRrHTUaFdtjbmfncfedB45EC9IaqJQ97iAR1GZgOfyRQO+ExIF6EQ==} hasBin: true @@ -13041,6 +12614,7 @@ packages: /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} requiresBuild: true + dev: false /yaml@1.10.2: resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} diff --git a/main/pnpm-workspace.yaml b/pnpm-workspace.yaml similarity index 59% rename from main/pnpm-workspace.yaml rename to pnpm-workspace.yaml index 55dbb73..53da5b2 100644 --- a/main/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,3 +1,2 @@ packages: - - "packages/*" - "database" diff --git a/release-v5.1/.dockerignore b/release-v5.1/.dockerignore deleted file mode 100644 index 06d7da8..0000000 --- a/release-v5.1/.dockerignore +++ /dev/null @@ -1,24 +0,0 @@ -.git -**/.git - -node_modules -**/node_modules - -.next -**/.next - -dist -**/dist - -coverage -**/coverage - -*.log -**/*.log - -.DS_Store -**/.DS_Store - -**/.env -**/.env.* -**/config.yaml diff --git a/release-v5.1/.gitignore b/release-v5.1/.gitignore deleted file mode 100644 index 0af5ede..0000000 --- a/release-v5.1/.gitignore +++ /dev/null @@ -1,10 +0,0 @@ -node_modules/ -.next -.env*.local -next-env.d.ts -packages/gtm/dist/ -!.vscode/ -.claude -.vscode/tasks.json -.agents/ -skills-lock.json diff --git a/release-v5.1/.npmrc b/release-v5.1/.npmrc deleted file mode 100644 index 0fa8500..0000000 --- a/release-v5.1/.npmrc +++ /dev/null @@ -1 +0,0 @@ -git-branch-lockfiles=true \ No newline at end of file diff --git a/release-v5.1/.prettierignore b/release-v5.1/.prettierignore deleted file mode 100644 index 83c6874..0000000 --- a/release-v5.1/.prettierignore +++ /dev/null @@ -1,5 +0,0 @@ -**/dist -**/.vscode -**/.DS_Store -**/node_modules -**/.next \ No newline at end of file diff --git a/release-v5.1/.prettierrc.js b/release-v5.1/.prettierrc.js deleted file mode 100644 index b48f2c3..0000000 --- a/release-v5.1/.prettierrc.js +++ /dev/null @@ -1,20 +0,0 @@ -module.exports = { - printWidth: 100, - tabWidth: 2, - useTabs: false, - semi: true, - singleQuote: true, - quoteProps: 'as-needed', - jsxSingleQuote: false, - trailingComma: 'none', - bracketSpacing: true, - jsxBracketSameLine: false, - arrowParens: 'always', - rangeStart: 0, - rangeEnd: Infinity, - requirePragma: false, - insertPragma: false, - proseWrap: 'preserve', - htmlWhitespaceSensitivity: 'css', - endOfLine: 'lf' -} diff --git a/release-v5.1/Dockerfile b/release-v5.1/Dockerfile deleted file mode 100644 index 558e79f..0000000 --- a/release-v5.1/Dockerfile +++ /dev/null @@ -1,107 +0,0 @@ -# Copyright © 2022 sealos. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -FROM node:20.4.0-alpine AS base -ENV PNPM_HOME="/pnpm" -ENV PATH="$PNPM_HOME:$PATH" -WORKDIR /app - -# Install dependencies only when needed -FROM base AS deps - -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk add --no-cache libc6-compat python3 make g++ && \ - corepack enable && corepack prepare pnpm@8.9.0 --activate - - -# Install dependencies based on the preferred package manager root workspace -COPY pnpm-lock.yaml package.json pnpm-workspace.yaml ./ - -RUN --mount=type=cache,id=pnpm,target=/pnpm/store \ - if [ ! -f pnpm-lock.yaml ]; then \ - echo "Lockfile not found." >&2; \ - exit 1; \ - fi; \ - for attempt in 1 2 3; do \ - if pnpm fetch; then \ - exit 0; \ - fi; \ - if [ "${attempt}" -lt 3 ]; then \ - echo "pnpm fetch failed (attempt ${attempt}/3), retrying..." >&2; \ - sleep $((attempt * 10)); \ - fi; \ - done; \ - exit 1 -COPY ./tsconfig.json ./tsconfig.json -COPY ./tsconfig.deps.json ./tsconfig.deps.json -COPY ./tsconfig.base.json ./tsconfig.base.json -COPY ./tsconfig.web.json ./tsconfig.web.json -COPY ./packages ./packages - -RUN --mount=type=cache,id=pnpm,target=/pnpm/store \ -pnpm -r --offline --filter=./packages/* install \ -&& pnpm -r --filter=./packages/* run build - -FROM deps AS builder - -# COPY --from=deps /app/node_modules ./node_modules -# Next.js collects completely anonymous telemetry data about general usage. -# Learn more here: https://nextjs.org/telemetry -# Uncomment the following line in case you want to disable telemetry during the build. -ENV NEXT_TELEMETRY_DISABLED=1 - -# COPY --from=deps /app/packages ./packages - -ARG name -ARG path - -COPY ${path} ${path} - -RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm --frozen-lockfile --filter=$name install && \ - pnpm --filter=$name run build - -# Production image, copy all the files and run next -FROM base AS runner - -ENV NODE_ENV=production -# Uncomment the following line in case you want to disable telemetry during runtime. -ENV NEXT_TELEMETRY_DISABLED=1 -# Avoid io_uring SQPOLL hangs on affected Linux kernels. -ENV UV_USE_IO_URING=0 - -RUN addgroup --system --gid 1001 nodejs -RUN adduser --system --uid 1001 nextjs - -RUN apk add curl \ - && apk add ca-certificates \ - && update-ca-certificates \ - && apk add --no-cache dumb-init - -ARG name -ARG path - -USER nextjs - -# You only need to copy next.config.js if you are NOT using the default configuration -COPY --from=builder /app/$path/next.config.js ./$path/next.config.js -COPY --from=builder --chown=nextjs:nodejs /app/$path/public ./$path/public -COPY --from=builder --chown=nextjs:nodejs /app/$path/.next/standalone ./ -COPY --from=builder --chown=nextjs:nodejs /app/$path/.next/static ./$path/.next/static - -EXPOSE 3000 - -ENV PORT=3000 - -ENV launchpath=./${path}/server.js - -ENTRYPOINT ["dumb-init", "sh", "-c", "node ${launchpath}"] diff --git a/release-v5.1/README.md b/release-v5.1/README.md deleted file mode 100644 index 2027caf..0000000 --- a/release-v5.1/README.md +++ /dev/null @@ -1,31 +0,0 @@ -# Database workspace - -This source workspace contains the Database application in `database/` and its -local UI components in `packages/ui/`. Shared, driver, GTM, and Desktop SDKs -come from published `@labring` npm packages. The application owns its host-config -store in `database/src/store/hostConfig.ts`. Run commands from this directory. - -## Development - -Use the Node and pnpm versions declared in `package.json`. - -```sh -pnpm install --frozen-lockfile -pnpm dev-db -pnpm build-database -``` - - -## Images and deployment packaging - -```sh -make image-build-database -make image-push-database DOCKER_USERNAME=your-registry IMAGE_TAG=your-tag -bash -n database/deploy/database-frontend-entrypoint.sh -helm lint database/deploy/charts/database-frontend -helm template dbprovider-frontend database/deploy/charts/database-frontend \ - --namespace dbprovider-frontend >/dev/null -``` - -Images target `linux/amd64` and `linux/arm64`. CI and publication details are in -[the repository README](../README.md). diff --git a/release-v5.1/database/.dockerignore b/release-v5.1/database/.dockerignore deleted file mode 100644 index 599da9c..0000000 --- a/release-v5.1/database/.dockerignore +++ /dev/null @@ -1,10 +0,0 @@ -Dockerfile -.dockerignore -node_modules -npm-debug.log -README.md -.next -.git - -.yalc/ -yalc.lock diff --git a/release-v5.1/database/.env.template b/release-v5.1/database/.env.template deleted file mode 100644 index 7e6fbb6..0000000 --- a/release-v5.1/database/.env.template +++ /dev/null @@ -1,5 +0,0 @@ -# Application settings now live in data/config.local.yaml (local development) -# or /app/data/config.yaml (production ConfigMap). See data/config.example.yaml. -# Copy the example and override its cloud/database fields; no application env fallback. -# Development-only mock user; empty disables mocking. Never used in production. -NEXT_PUBLIC_MOCK_USER= diff --git a/release-v5.1/database/.eslintrc.json b/release-v5.1/database/.eslintrc.json deleted file mode 100644 index be661eb..0000000 --- a/release-v5.1/database/.eslintrc.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "extends": "next/core-web-vitals", - "rules": { - "react-hooks/rules-of-hooks": 0 - } -} diff --git a/release-v5.1/database/.gitignore b/release-v5.1/database/.gitignore deleted file mode 100644 index a843727..0000000 --- a/release-v5.1/database/.gitignore +++ /dev/null @@ -1,43 +0,0 @@ -# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. - -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo -next-env.d.ts -/public/trainData/ -/local/ -platform.json -.yalc/ -yalc.lock - -/data/config.local.yaml diff --git a/release-v5.1/database/.prettierignore b/release-v5.1/database/.prettierignore deleted file mode 100644 index ab9a493..0000000 --- a/release-v5.1/database/.prettierignore +++ /dev/null @@ -1,4 +0,0 @@ -dist -.vscode -**/.DS_Store -node_modules diff --git a/release-v5.1/database/.prettierrc.js b/release-v5.1/database/.prettierrc.js deleted file mode 100644 index 48d4890..0000000 --- a/release-v5.1/database/.prettierrc.js +++ /dev/null @@ -1,21 +0,0 @@ -module.exports = { - printWidth: 100, - tabWidth: 2, - useTabs: false, - semi: true, - singleQuote: true, - quoteProps: 'as-needed', - jsxSingleQuote: false, - trailingComma: 'none', - bracketSpacing: true, - jsxBracketSameLine: false, - arrowParens: 'always', - rangeStart: 0, - rangeEnd: Infinity, - requirePragma: false, - insertPragma: false, - proseWrap: 'preserve', - htmlWhitespaceSensitivity: 'css', - endOfLine: 'lf' -}; - \ No newline at end of file diff --git a/release-v5.1/database/.vscode/settings.json b/release-v5.1/database/.vscode/settings.json deleted file mode 100644 index 22694fe..0000000 --- a/release-v5.1/database/.vscode/settings.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "i18n-ally.localesPaths": [ - "public/locales" - ], - "i18n-ally.enabledParsers": [ - "json", - "yaml", - "js", - "ts" - ], - "i18n-ally.keystyle": "nested", - "i18n-ally.sortKeys": true, - "i18n-ally.keepFulfilled": false, - "i18n-ally.sourceLanguage": "en", - "i18n-ally.displayLanguage": "zh", - // "i18n-ally.namespace": true, - "i18n-ally.pathMatcher": "{locale}/{namespaces}.json", - "i18n-ally.extract.targetPickingStrategy": "most-similar-by-key", - "i18n-ally.translate.engines": [ - "google", - ] -} \ No newline at end of file diff --git a/release-v5.1/database/Dockerfile b/release-v5.1/database/Dockerfile deleted file mode 100644 index ac15573..0000000 --- a/release-v5.1/database/Dockerfile +++ /dev/null @@ -1,58 +0,0 @@ -# Install dependencies only when needed -FROM node:current-alpine AS deps -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk add --no-cache libc6-compat && npm install -g pnpm -WORKDIR /app - -# Install dependencies based on the preferred package manager -COPY package.json pnpm-lock.yaml* ./ -RUN \ - [ -f pnpm-lock.yaml ] && pnpm install || \ - (echo "Lockfile not found." && exit 1) - -# Rebuild the source code only when needed -FROM node:current-alpine AS builder -WORKDIR /app -COPY --from=deps /app/node_modules ./node_modules -COPY . . - -# Next.js collects completely anonymous telemetry data about general usage. -# Learn more here: https://nextjs.org/telemetry -# Uncomment the following line in case you want to disable telemetry during the build. -ENV NEXT_TELEMETRY_DISABLED 1 -ENV NEXT_PUBLIC_MOCK_USER '' - -RUN npm install -g pnpm && pnpm run build - -# Production image, copy all the files and run next -FROM node:current-alpine AS runner -WORKDIR /app - -ENV NODE_ENV production -# Uncomment the following line in case you want to disable telemetry during runtime. -ENV NEXT_TELEMETRY_DISABLED 1 - -RUN addgroup --system --gid 1001 nodejs -RUN adduser --system --uid 1001 nextjs - -RUN sed -i 's/https/http/' /etc/apk/repositories -RUN apk add curl \ - && apk add ca-certificates \ - && update-ca-certificates - -# You only need to copy next.config.js if you are NOT using the default configuration -# COPY --from=builder /app/next.config.js ./ -COPY --from=builder /app/public ./public -COPY --from=builder /app/package.json ./package.json -# COPY --from=builder /app/.env* . - -# Automatically leverage output traces to reduce image size -# https://nextjs.org/docs/advanced-features/output-file-tracing -COPY --from=builder --chown=nextjs:nodejs /app/.next/standalone ./ -COPY --from=builder --chown=nextjs:nodejs /app/.next/static ./.next/static - -USER nextjs - -EXPOSE 3000 - -CMD ["node", "server.js"] diff --git a/release-v5.1/database/Makefile b/release-v5.1/database/Makefile deleted file mode 100644 index a15cd80..0000000 --- a/release-v5.1/database/Makefile +++ /dev/null @@ -1,39 +0,0 @@ -SERVICE_NAME=sealos-database -# Image URL to use all building/pushing image targets -IMG ?= $(SERVICE_NAME):latest - -.PHONY: all -all: build - -##@ General - -# The help target prints out all targets with their descriptions organized -# beneath their categories. The categories are represented by '##@' and the -# target descriptions by '##'. The awk commands is responsible for reading the -# entire set of makefiles included in this invocation, looking for lines of the -# file as xyz: ## something, and then pretty-format the target and help. Then, -# if there's a line with ##@ something, that gets pretty-printed as a category. -# More info on the usage of ANSI control characters for terminal formatting: -# https://en.wikipedia.org/wiki/ANSI_escape_code#SGR_parameters -# More info on the awk command: -# http://linuxcommand.org/lc3_adv_awk.php - -.PHONY: help -help: ## Display this help. - @awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n make \033[36m\033[0m\n"} /^[a-zA-Z_0-9-]+:.*?##/ { printf " \033[36m%-15s\033[0m %s\n", $$1, $$2 } /^##@/ { printf "\n\033[1m%s\033[0m\n", substr($$0, 5) } ' $(MAKEFILE_LIST) - -##@ Build - -.PHONY: build -build: ## Build database-frontend binary. - pnpm run build - -.PHONY: run -run: ## Run a dev service from host. - pnpm run start - -.PHONY: docker-build docker-push -docker-build: ## Build both architectures from the workspace root. - $(MAKE) -C .. image-build-database -docker-push: ## Build and publish both architectures from the workspace root. - $(MAKE) -C .. image-push-database diff --git a/release-v5.1/database/deploy/manifests/appcr.yaml.tmpl b/release-v5.1/database/deploy/manifests/appcr.yaml.tmpl deleted file mode 100644 index ddde5f3..0000000 --- a/release-v5.1/database/deploy/manifests/appcr.yaml.tmpl +++ /dev/null @@ -1,19 +0,0 @@ -apiVersion: app.sealos.io/v1 -kind: App -metadata: - name: dbprovider - namespace: app-system -spec: - data: - desc: Database - url: "https://dbprovider.{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }}" - icon: "https://dbprovider.{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }}/logo.svg" - i18n: - zh: - name: 数据库 - zh-Hans: - name: 数据库 - menuData: - name: Database - type: iframe - displayType: normal diff --git a/release-v5.1/database/deploy/manifests/deploy.yaml.tmpl b/release-v5.1/database/deploy/manifests/deploy.yaml.tmpl deleted file mode 100644 index 245d08a..0000000 --- a/release-v5.1/database/deploy/manifests/deploy.yaml.tmpl +++ /dev/null @@ -1,131 +0,0 @@ -apiVersion: v1 -kind: Namespace -metadata: - labels: - app: dbprovider-frontend - name: dbprovider-frontend ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: dbprovider-frontend-config - namespace: dbprovider-frontend -data: - config.yaml: |- - cloud: - domain: "{{ .cloudDomain }}" - desktopDomain: "{{ .cloudDomain }}" - port: "{{ .cloudPort }}" - disableHttps: false - database: - features: - guide: {{ .guideEnabled }} - showDocument: true - fileImport: true - logs: false - kafka: true - managedDb: false - ui: - customScripts: [] - storage: - forcedClassName: "" - maxSize: 300 - components: - monitoring: - url: "{{ .metricsUrl }}" - alerting: - url: "http://database-alert.sealos.svc:8000" - billing: - url: "{{ .billingUrl }}" - logging: - url: "{{ .vlogsBaseUrl }}" - storage: - url: "{{ .minioUrl }}" - port: {{ .minioPort }} - useSSL: true - bucketName: "{{ .minioBucketName }}" - accessKey: "{{ .minioAccessKey }}" - secretKey: "{{ .minioSecretKey }}" - eventAnalysis: - fastGPTKey: "" - migration: - importDataImage: "{{ .migrateFileImage }}" - backup: - enabled: false ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: dbprovider-frontend - namespace: dbprovider-frontend -spec: - replicas: 1 - selector: - matchLabels: - app: dbprovider-frontend - strategy: - type: RollingUpdate - rollingUpdate: - maxUnavailable: 25% - maxSurge: 25% - template: - metadata: - labels: - app: dbprovider-frontend - spec: - serviceAccountName: cluster-version-reader - containers: - - name: dbprovider-frontend - securityContext: - runAsNonRoot: true - runAsUser: 1001 - allowPrivilegeEscalation: false - capabilities: - drop: - - 'ALL' - resources: - limits: - cpu: 2000m - memory: 2048Mi - requests: - cpu: 10m - memory: 128Mi - # do not modify this image, it is used for CI/CD - image: ghcr.io/sealos-apps/database/database-frontend:release-v5.1 - imagePullPolicy: Always - volumeMounts: - - name: dbprovider-frontend-volume - mountPath: /app/data/config.yaml - subPath: config.yaml - affinity: - podAntiAffinity: - preferredDuringSchedulingIgnoredDuringExecution: - - weight: 100 - podAffinityTerm: - labelSelector: - matchExpressions: - - key: "app" - operator: In - values: - - dbprovider-frontend - topologyKey: "kubernetes.io/hostname" - volumes: - - name: dbprovider-frontend-volume - configMap: - name: dbprovider-frontend-config ---- -apiVersion: v1 -kind: Service -metadata: - labels: - app: dbprovider-frontend - name: dbprovider-frontend - namespace: dbprovider-frontend -spec: - ports: - - name: http - port: 3000 - protocol: TCP - targetPort: 3000 - selector: - app: dbprovider-frontend diff --git a/release-v5.1/database/deploy/manifests/ingress.yaml.tmpl b/release-v5.1/database/deploy/manifests/ingress.yaml.tmpl deleted file mode 100644 index efe215f..0000000 --- a/release-v5.1/database/deploy/manifests/ingress.yaml.tmpl +++ /dev/null @@ -1,31 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - annotations: - kubernetes.io/ingress.class: nginx - nginx.ingress.kubernetes.io/configuration-snippet: | - more_clear_headers "X-Frame-Options:"; - more_set_headers "Content-Security-Policy: default-src * blob: data: *.{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} {{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }}; img-src * data: blob: resource: *.{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} {{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }}; connect-src * wss: blob: resource:; style-src 'self' 'unsafe-inline' blob: *.{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} {{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} resource:; script-src 'self' 'unsafe-inline' 'unsafe-eval' blob: *.{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} {{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} resource: *.baidu.com *.bdstatic.com; frame-src 'self' {{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} mailto: tel: weixin: mtt: *.baidu.com; frame-ancestors 'self' https://{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} https://*.{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }}"; - more_set_headers "X-Xss-Protection: 1; mode=block"; - higress.io/response-header-control-remove: X-Frame-Options - higress.io/response-header-control-update: | - Content-Security-Policy "default-src * blob: data: *.{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} {{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }}; img-src * data: blob: resource: *.{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} {{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }}; connect-src * wss: blob: resource:; style-src 'self' 'unsafe-inline' blob: *.{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} {{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} resource:; script-src 'self' 'unsafe-inline' 'unsafe-eval' blob: *.{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} {{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} resource: *.baidu.com *.bdstatic.com; frame-src 'self' {{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} mailto: tel: weixin: mtt: *.baidu.com; frame-ancestors 'self' https://{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }} https://*.{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }}" - X-Xss-Protection "1; mode=block" - name: dbprovider-frontend - namespace: dbprovider-frontend -spec: - rules: - - host: dbprovider.{{ .cloudDomain }} - http: - paths: - - pathType: Prefix - path: / - backend: - service: - name: dbprovider-frontend - port: - number: 3000 - tls: - - hosts: - - dbprovider.{{ .cloudDomain }} - secretName: {{ .certSecretName }} diff --git a/release-v5.1/database/deploy/manifests/rbac.yaml b/release-v5.1/database/deploy/manifests/rbac.yaml deleted file mode 100644 index d2f30d7..0000000 --- a/release-v5.1/database/deploy/manifests/rbac.yaml +++ /dev/null @@ -1,37 +0,0 @@ -apiVersion: v1 -kind: ServiceAccount -metadata: - name: cluster-version-reader - namespace: dbprovider-frontend ---- -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: cluster-version-reader -rules: - - apiGroups: [ 'extensions.kubeblocks.io' ] - resources: [ 'addons' ] - verbs: [ 'get', 'watch', 'list' ] - - apiGroups: ['apps.kubeblocks.io'] - resources: ['clusterversions'] - verbs: ['get', 'watch', 'list'] - - apiGroups: ['dataprotection.kubeblocks.io'] - resources: ['backuprepos'] - verbs: ['get', 'watch', 'list'] - - apiGroups: ['app.sealos.io'] - resources: ['apps'] - resourceNames: ['dataflow'] - verbs: ['get'] ---- -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRoleBinding -metadata: - name: cluster-version-reader-rolebinding -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: cluster-version-reader -subjects: - - kind: ServiceAccount - name: cluster-version-reader - namespace: dbprovider-frontend diff --git a/release-v5.1/database/next-i18next.config.js b/release-v5.1/database/next-i18next.config.js deleted file mode 100644 index 04dfbcc..0000000 --- a/release-v5.1/database/next-i18next.config.js +++ /dev/null @@ -1,14 +0,0 @@ -//next-i18next.config.js -/** - * @type {import('next-i18next').UserConfig} - */ - -module.exports = { - i18n: { - defaultLocale: 'zh', - locales: ['en', 'zh'], - localeDetection: false - }, - defaultNS: 'common', - reloadOnPrerender: process.env.NODE_ENV === 'development' -}; diff --git a/release-v5.1/database/package.json b/release-v5.1/database/package.json deleted file mode 100644 index a45704d..0000000 --- a/release-v5.1/database/package.json +++ /dev/null @@ -1,88 +0,0 @@ -{ - "name": "database", - "private": true, - "version": "0.1.0", - "scripts": { - "dev": "next dev", - "build": "next build", - "start": "next start", - "lint": "next lint", - "typecheck": "tsc --noEmit" - }, - "dependencies": { - "@chakra-ui/anatomy": "^2.2.1", - "@chakra-ui/icons": "^2.1.1", - "@chakra-ui/next-js": "^2.1.5", - "@chakra-ui/react": "^2.8.1", - "@chakra-ui/system": "^2.6.1", - "@emotion/react": "^11.11.1", - "@emotion/styled": "^11.11.0", - "@kubernetes/client-node": "^0.18.1", - "@next/font": "13.5.11", - "@scalar/api-reference-react": "^0.8.36", - "@labring/sealos-driver-sdk": "1.0.0", - "@labring/sealos-gtm-sdk": "1.1.0", - "@sealos/ui": "workspace:^", - "@tanstack/react-query": "^4.35.3", - "@labring/sealos-shared-sdk": "1.0.3", - "@tanstack/react-table": "^8.10.7", - "@tanstack/react-virtual": "^3.10.8", - "ansi_up": "^5.2.1", - "axios": "^1.5.1", - "date-fns": "^3.0.0", - "dayjs": "^1.11.10", - "echarts": "^5.4.3", - "framer-motion": "^10.16.4", - "github-markdown-css": "^5.2.0", - "i18next": "^23.11.5", - "immer": "^10.2.0", - "ini": "^4.1.3", - "js-cookie": "^3.0.5", - "js-yaml": "^4.1.0", - "jszip": "^3.10.1", - "lodash": "^4.17.21", - "lucide-react": "^0.511.0", - "minio": "^7.1.3", - "multer": "1.4.5-lts.1", - "nanoid": "^4.0.2", - "next": "13.5.11", - "next-i18next": "^15.3.0", - "nprogress": "^0.2.0", - "papaparse": "^5.4.1", - "prettier": "^2.8.8", - "react": "18.2.0", - "react-day-picker": "^8.8.2", - "react-dom": "18.2.0", - "react-hook-form": "^7.46.2", - "react-i18next": "^14.1.2", - "react-markdown": "^8.0.7", - "react-syntax-highlighter": "^15.5.0", - "sass": "^1.68.0", - "@labring/sealos-desktop-sdk": "0.1.24", - "sharp": "^0.32.6", - "typescript": "^5.2.2", - "zod": "^4.0.8", - "zod-openapi": "^5.2.0", - "zustand": "^4.4.1", - "picocolors": "^1.1.1", - "@labring/sealos-metrics-sdk": "0.2.0" - }, - "devDependencies": { - "@svgr/webpack": "^6.5.1", - "@types/ini": "^4.1.1", - "@types/js-cookie": "^3.0.4", - "@types/js-yaml": "^4.0.6", - "@types/lodash": "^4.14.199", - "@types/multer": "^1.4.10", - "@types/node": "18.13.0", - "@types/nprogress": "^0.2.1", - "@types/papaparse": "^5.3.15", - "@types/react": "18.2.37", - "@types/react-dom": "18.0.10", - "@types/react-syntax-highlighter": "^15.5.7", - "eslint": "8.33.0", - "eslint-config-next": "13.1.6", - "svg-inline-loader": "^0.8.2", - "webpack-bundle-analyzer": "^4.9.1" - } -} diff --git a/release-v5.1/database/public/favicon.ico b/release-v5.1/database/public/favicon.ico deleted file mode 100644 index beb888d860b9b7bc638fc19c3ead38b64bc03b5c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4286 zcmeH}uTR536vrQ#*c>Q=tVAMlJBdW1kVqu|0unii1c$8b+$0iN62xS2GfT?nOLn0t zyR7XxmXLePXZ`Wsz3=ty_IhRqe3HcUZO=z$$7Xg4+%gBc|84l9wW`2~Xa~3O2r0b5 z9118`=v>H`!36H$0@|81uiyo$8eXgIak0v!oSQ5m;1$|xG>un%v@}CD!_hQX*SI_+ z{s-EA&Y>xI|E`Zwe|-h&b=Q9JI5i-UG~2uB+h;LV*mSDCw{&3eGL5s zed~nsMg8>^sMjm@zu5okYhs&g^?tnrLbmVypXRsC^EDZ(_e;oBn;e?t=@O&oOJI}f z{af8HbkXu-)I(BG&bFq#fCKG6CXj)iVGad&4V?@56r;IojDtS*P^9^vR(hKb%B9)( d)9mowZ1{`ua`;h}vtl|}bd6JPjV;mg_66#Sd^rFB diff --git a/release-v5.1/database/public/guide-image.png b/release-v5.1/database/public/guide-image.png deleted file mode 100644 index 7801f6ea57de3ad7cc9c5c105bfcfd2d3e013725..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34218 zcmV)*K#9MJP) z)(5&Zqr%HByX@Q}N90Ah)bLH^+%{z2aNzW2)ImtUT-Z5|*EaP!SKmruP0 zoO!HM8{l`mZ+M_R;t|4ObsM@zTr%9|Hm)qf5!Dgm57f_NeZ~>dJ%y)-yYhBHeK#JX zfyNTGZ|K6h#E)h!BRqLkAw_)<-wkJ;;A6<=fL7P9-3B_sdMqa+ySwvdc#WR1eWlf8 z7-bo7X6zT~g1)+a^4J2NBwc! zU#WcX;K6kE*$3re5Bp~MvM>8G8NR=G&mMVZsT}!%d`V>dSSY!# zTGxa!uMBZxSeb9q8uo6R+zARM@VdG)blBM0Si8P+;7qYktHVw;m^)_}_B;ha-}jUu zE4ula2M^xmIatXdxb)J?o__h|AAQD;|M=77qaVGztNcO+vlezDO)HC>2GcNMAbNeW zVdx4Rdh01e+z}*>EYXSJ@Jc_@AA96jnO9Dbkmf)!yW{QDade9;%2p6ZIOlwy>F+s? z-h7H5N5#do2Xoc*Lq^K_jsk=zBW&bLT4&_w6mm*rLdmNrm!+cxwUC(+MnGKXe`He^iIRSB7@km!S&5BhB7>sZvL`#k3q+?=+1rsg-jVVn;;Za|6#kE- zu3cGxXA#}yV%j-{k!;XD_wWKf>GaFaq|$8Tlm!j|pl7@rN6Ajr`o(q(+?NE-FZF|f zNnS>Ek*>&Cr<7(LR)^PiEi+>Xjeq12jZV1F__M&EkROqgh#V!4oAAxy5$1JtJvg8I z(wDw09XxpUQ!EoIH@5eD(%ZiKyT9X%G4rYS0^>%-Rq&cYIjV9P#Wr;$HhO5RqjnOs z!Ln}q2_t50oS-o6K(lKfO-^1RX;Sg1Uy1oBLH`oa+RzvDi)B$8!SO%_>G+u!IFLYT zBIiAcgRUnXcr=!PKQ^BYudQ7$50z&#^f@}qpg_q-UJBrfjEd_wFfiDrk;5Jyk#5Fh z--V2$NNiw*?-`G6ykl9Vf5PbXXv4P6jgAqViu!xd<5M?F;Cez1C!h;2YMa!_E~OKE zM9u0(^Ld^Apr=q?2Z51y0GKmQM}y#4J@zmM(-?bX5|S$X;^ zU-_~#uDIf3r7{mfKoKE&Lc?D+A-Us7U@+CszCyx@t{mCMlh6RN0U2-#w~LHf$MaiN ztXGX2C==?Ib2c=gIGMIN+bHIE-HoWw&~MMt&4xQOpP+q$KAD#K9e9Lgbc3J`CKvz|I{I0nFpyh+kJ8RS8;M1}q0 zoCF4w4HkZ{#K0i{yf^2RDjn2!?;3H0Mi_Zz`1v}e=AZ`3TrVT&I%SfdN&V+~D6b-2 zCp{^DbnWbd$Yhp-Moj2?G;cOm?1Smx;IiQ%**fQB5D)6g*sjviu|L&Lp{~>T(xsPP zA}@K#i_ZAI?|br#hU>3Nn*Ds_BOiVL6Q1xrZZdQ0L3^12GBTR%FluKZkA!sr9*ZU& zGt61Z#N=6_z(nVnXnNv05(+MppiYk$O%y~pGE92T(-AoEtbgQy%Bi^%3>MJRI9cd}O(3+F^e=Pc9=*;Xv7PdV_6Ku-ub;RuDlo9;uCV z(Me(hiR8>KMZ%1mm--t0hufk46VV(1hPvLP8Owo2M?d!=fk96}Mvrxwe=~H}HayQM zb(hSX{xd#u)Ye8|9QC{D70CnA25bvY$~F5;Y?GMo2)6`dK%7?Zw9`(LH@@*NW&i#Y zZnt+>di%zUF1ko~BGQ-zNGsGXGC+fpf;0|@bdzDtfOt2!1m7&RXdk!QUInF*K zK%?F0KhRcrocsz(MQv?S9*l1z?#NL`a=IG4pW85OEX9B#Hufz{ofd zyq@AUZGbuU{84pQDK_S4sCXI7-Onq-Uxy3VK#DUUg8WHw6e6%h(wkg&>LpX;h3%0K zP{$P3>N>+uN*=D^qF|x$)Hd>av^6bCZMRHy&q zc^d{SU@I`dbaMs9ILc z2ad`DV~K*2PzJG1CTEWP82ffOa6B2DF|`SK!NwurNhF7%aY5PyjO56h+BF(2GD6PD z!8|*@bA23-fc_KzLf+?9#E&>dq|KrToc*D>jGSC0Gl65zt#MvOAE`M^l%xCj*?Gt| zqQ~wzJiz8OGhSzJ1skR`6?``O5BHn7rTKHbWEn}cI)ME`-}RPAN?oOWBl0Kmk$a3!KGts*EV#B|`o89D2N%V9h`m!(L^5ROLJ2_e&rb(tS#!~>;n z_6=ECVGL}P6Y-^v2kO{(%phdw!#Q1%)mu0)U_g0dT3GpTyhso0ibxwZ13#)r<=kYN zPG$%{;!bI0gsY)RsdY+`*om}DJV8CwH5^m!;IKAsUa;;sCn-^|n7yNJ92d!Q&OU&! z>n2zL-E$;L8w6DPBK;R~yojH8hYpnGAmkTx*6485p88}PlP3DYIdF0$BE5bQPx9n? zURZsjM?4SmC6`>HW#{g-!J3e;;3eZHP;} z!@$T54Nx?xDG)}%HnI{n7A7a4#wRx1Ca_>|aEw^b;nDA7hKCAPoq>pd!$1lgbY2ZE z(b%|sa!hCqP2->fo+TK+^WLQNnU^Dw2h>MF1$x>%1}{njgM10XmnFO=hUR*d~muWoPa0nyQlw| zk@=vBWxzQ!YR~hAK>*Sb8CaLC2K_nu&^8GL2?70P)7YW0-a3A#IM9_~PP_U~eb(>5 zherQJ!pzk12fV7DCXnC9jr@+=97^dzX4B)YL322T4QBq0~ z4^S8~8c8xPXu#^&h#$OUgkzFG$V_Of6Xq-f1r>qt)r=41#W_Rq#>F`d0i(`iX4$rT zND3A&MqiP z-ibN>3F*JJM*>zPd;Q1uQClAJh_2MPWlUYU;5Tkq2E<;r8np@LaI}X@U)a{x)Ef^= zOlyp8zz~dXt0JW~lC4oGP85!bl^qO*V=|1lIwCOKXxPyBB@((!eREVOt^U^js{vB_ z#v|u0GBQ3IYvB+=Z(qjokNZJhBOM~{IB`9=lKfH^W;B`bPC28>dM~))cLddOmSe@I7p+@^cc&HUU~+!G&To>%ErQKpBa&(5hErr5sjA* z3|q{NR$wZFGG$_jC;25ELE{D!=OW}p5i#yF1jevgs>wNyd|>=3C~u4y;Y!R0bLKR@ z=E2FdaPwb$M2CE}C`OPLpb7crvIR15F2F#(jhD?BsUAmpO@LDgT*-q3W6!>7;=sxE z3v}d&uAIY-XyjGK_Tr5}T{R#a(K00J8sfz|sPHc9$-$l^^p|-oJbr2`($RkkDg(k~E=LN?zrT=V8d5n4G zXlgl)C!AN{;oAB?wlAN+BkqqKGS88dcd${3_)zY# zzD-*`@{x}?=B1Px!Qpqu5knhhrZx+~$#lwSu;LT;Tw zt%m(Y^h)3?ksnO6fD%RbN7=<-rpgG=mXSxOh+xc+cE>+5coNiO1Kb2=nVcE$q-iJ8 z&#)zi+9tQlwsoxaBG7*rYx$&o!m9rypHBa&Zybl~8^+Yg8tWr`N5|&^gn+Kdu4HOw zWQ07D*kLiQ>d;xQM7&cDaJYWRuCUY0opw3E>13z5Npuzm1Sgh6R!nisGFvV!6L7H3 z=sfe8&y-V6IYs{SfBw&Ta72YscfRwT%!a$@`n53_Asv^>*;r>JNdoWJGO-OCXsWpaCBo29%Yma!zk7T5Ad}G@j2yJa5 z#OM)c#s_PWPlhUcC+!@vu>r@I+sM{j9|6{5if9Vm01 zcOPOMmdB`Xb{df(WJ8W+jxW#;^D5F64uBjUoD*CbfuSTC6U#<|K9C+~H>m%V0*3}r zWhmGm;rh*Z#b+1jd?H)J4#DvyXp{5GAvpcV@pbyLdt&30K>vkw1jmbY1HI;PJ8>v! zhYEDsHu5U?c{EfdvK!0OcwH1j>yK@$o)KT#YG3D_cb@)&YWe%ZFZ{yN|HB^ku;P3a zG&{P_eeRRSJ}VCWeD<@So&Mxc{zUZe|Nh_qoBrSr{viF*Fa47IyMOoZDlM`yib${E zCyWVcF8%(+U;Kr9(HDIY*Tpdxod5pc|9iRc!VBdtcezWsf7V%NX}g4djcu}xMc;Mw z#b5lz`dMhyvhVng??`Wb>sxF6@vklq{)hkYALOt9`maTQH^cBD&CsUamu=&0JV`JY zHs)k?Z0>;Oisu`@@f*vp-X1)7P=axl&v(4z9r8Wj^F4?s1D`U;L&gU=aUS%vCDp|- z3DD`rjPs*^`YVg?eeZkAC(S#{tNVjFZe+vgrSS{P=l6gA_lrKm0Bsx|;0w}}>3hPl z(L4+BDU@NHpHXiRU+U1|>yL?JlRQjYwClpN~{G-$WH;I zJko%HXAK5MT5y>bGx}O4;#Qn8w5j(1SM4LE6dHe_V5l=L0iLiEv@zxtdvfG(YfvTL zAq(#Tair*oCeMbEDn}Udum07)63u$_S{=|!U;0w{-~ao67sK%bKkx(95pDT>kjjW* z-$-8n`q$fa{_3y(>hx1T^;7cHr#>|gc$@WEWHK@|x6yw2y`vYu_{HiR6AH^}&Q}Ek zz3D|SdXWs7T2Xp+NRNH&W98re+kfl$gflxRg#7rA|F{eeH)*@^qMSc*c8*iH!sGjcpun0!79pM<<^kLuhDS7K=QP zK+e_RkM$BCqJc5yoSSDhTsD;3OuRAJ8jPrpfA@EPw|wYBA8Ov2h3`RcMg9(!ab4HwISecBXYf7m9nU%18lv^m z#`cqj&-8bH_jmGFfAv>Mji@?@&-~2KEc;9b!(LQ==tCb`>Zx8wY=gLuc*SR8I+bQ%6Gr} z-SWqO{Kv-Y+K+xe_0&_-*M9BS%IAE}=O~W!hky8o#YwGL?w)5#U-1=RAz%5GUzxPO z-} z;dK7_=hr$$=RlwQr~mYy%6K$$)4w4aZkE{eQ~5jeC!hPdpIgTAd%yR4@=yQtPldml z@##G+d%y!8khIQ_DV93p_>%VZP2coQ@_C>4c_oXy>Z+?uu-VyEL#6e<^h>`~KJ}?j zrI)o*UXWBTTA{^pWF4)UGe^rknJ{sVo`;0Truzux7e&k0~_T=+F|MTM^Z zR~}TBO?H3m$9}9_>yo|dw%%90*EYl6ahbp8KmYl~$)WMyTAc=!(@#G=sZALI-Soyc zzEOVjH-A$=H{|QT{_Bf8YyWB!G%!{eXe?U-Lw|)vEz`C-7R9GFOxrx~dC!v%e(;0M z(i`xmE|XHm)J+I_5xIwd}{VTWpV!3AJx6%;yKo>F`01?r@kF}S+uKsgAg z1EGFw3C=C;z_Nr>IAi{}bW~GkH83iWgF#9^|MNeuMmebidH?(0UmT8Q9D|@2!=O$n ztLs+8&d@A|IqDs<_6%}_PlRD6m zml}nqJ?&{_c~a$PxSx=oEm{uN`fAwp`rh}xcX6^qHmV0<3cdgRzyJ5ruijUOqx1Wg zx4fnBbhwsZ_=R66bE9?Dfv6$A>s{~4vRVEH{7HH7xW_%N)PKrTo>Br1bufxwGyP#6 z(<@*3$}*n=o}>m^ot!!pZKLz24srONdD&~cU$XF_T^Y}FpZi?-AOGWjB%LR{KYSN; zvL+Kh_=7*F4!zKc9|aB(1N8`ImqBmqiUfEnOD; zx?HUFv~P7fdadO@`lCNu9MF(WCo5BV|D!+pqk>ay#BcxhZkXG)S2n` zVSbY8vRs}zG>_Zhoor*ddjhvqIoaYqB zGdO}mvYOxM*M9U<+h~NX#zL3!AQH@j11reYuxpm2Wg4KU!5Q}VYTtvBXC0%Gp*&It zq>->?MS9QX=VyQRXGQm|%;2K%Tjrxq?G0~uLvbovf0&CR7wX)G?4}q-HJ(HEBR}&q zKT|S2b1>=zHDlCFOXouOAk|5!yh4A4*J>y=1JI>e{Zz-M23H-@z^Br`_NUpb{_KhJ zU$Y&ps~Lyl(mn>cN$RME{m&YeZmstE${w7qBq%7Jp>5G8tvAe58nUEffHm7198(%H zCK+Y4WZbHw+J`zz1$9muTnrI@$yQXKbS!F+6*S9HdDnRzGAy@lKN#@BZXK&;uO?dx z7himFkyC|1ukx@&m(Iih7 z677%8`7l4C4pc$Mr?NH7dC8(w4pe?ED^f?JdO2KIqpSM&C13I-<-4}kzI4?w&p-Q&l5&bqwkx3=SPSR5B6$v}<)J>|oSE0TbNGG+jbd z!9&n}q>p`U`&V04NOb99a7-1cIvveml%B!(6sM)xfExQjVRcEs3~udHPvNO!(nwX8 z2z8H2>lrf*EXo#d%$Z+}BW0tnOM80X`c+3W8up4;jk=CS4ZJ#Pt)~ucq{*Fp(#%Og zmmX|AeOT5j4k(Yu+mp{?S@`Ohv`7_CL6>-pW{p}02UP2*;Zoq z5wyzQ;IIl>U2;<#Mu$2iHEIuk_`|E9s6*212ItE9(N7KNtW2GeEqiGP>W~yPgVKyl zzYhUP&5||yQW`a=(riLOm+@526u)LOMuTQV#yU9KosRygBh&gC&??;ScDLiqpvsQQyY)HXEKA^ePqP-QJ2;lw zP#yK)bZdK+EyJsAblJ_8(G}DY>Gj~W^FSLK_{ivs#5N&3Rfky%+7I}w+p>`- zh|21_5#fhB*_qmjS7*mt9hU(m^4NwP9Ro%l3Lp5u2TF9T%L*#| z8o6l1Gh{<0OHfCnk)s~LR$7?P(;V4T@VG#yF3rJk>Cp^5}IU$Ds5mKBEWkYklUI zIoHAXl>&7_$Uk*bK#Np@R%+p%M^a~D^NI4T%VOggs;p@pt>2@`#-R?%>M59$8Yc-O z{Ayf*|Jit9bg7{?TC6Yqu4Q@;4UjeU2^hk4h`ghc_GFNbUq4Wu;vUa@WJ2Z<+&BvNGOog~+b0DCc&`3cxw6T3EMp+~E$V|EbNGdYMZlTqf0UBG&K9sYjslQIB*a+ zSn!qw?~v^z8;C}|>VP!!(RF4u(&|uj*}!PhtVx}R3a@Uw>XM)?a}4F>Ii%q_W0(4= z8Hh$>8U_90FaBb2K!IQdG-cgT)iroE0D}W6 z%NDwHpi4O!9{khg1BGFkC8>i_(B&Yb8F6dop^i*%>E4!pHz#U+n{glO7P<##m^$Nidd~Wk;Q>f(C+`?df;jkJ3y{`v!hhc^+Sl zFFG%lAz7xT*%mr7vIS^6T$x^L7NelcedG6;a<1gWNw2yjc_ZnNG_bhv| z0}$qHl^(SZy7X>!&4FpQqjl{7hn8vPqk+SfS6+#RKXdj{Cd4meB{1OCQ3b#b0`-Ek zlTrqbt#-r?jA*FzLEUQWp|V>I%aG9^jev`n8#Cc_4vw7Z>N%jTt>$?ce4Zfj#$d~*p1F1BOeE+p7j8LZfM(P^LWax(qyOp zw2nGl-Jh_-4m`%Uz3pwqfa@l_9=gy>=O=&iC+&XeSN8?fq3EWqIs;W!4GQ$y_+-3* z45nlty2PRTD++pgY>Q6+u~8b9$%;Vh5|Zu(>5`nz7ql@ME!VntrDM}Q0d)jge^_Em z$``$_hF5+Ri^ty+l z{c3%ZovLSgAV&|m=yP#;C}H4l(!CFSGy!>tIFgV06VKnUR98;fJ>wbAko(^EzQy_I zcLn_!WPSFAcvqJ9w2cN7>bSIx9*odE(82KX^JCm+4)mnd)%{94d8W2N4ZhBUF0tu; z6t=OYan$`t|Ij879~wIJG^qBk!LZr@)mPmkQu*b&GM=m(=0TlQ*(cJ~6J2^!T6HYi zkM1eyKJU5bo|}+|D6@c@lOi+b=7{ike|28T8-!?ICnFAPYxlu3rl2fye@F*9D&UR7 zT?a$71MvOSDR+B7eB`?H16~!^@>V^O&{!m)4oDr7e%G~j*fVJcNa-NrZk&ZVpkYI> z9DvYeJ_Ws}dlf^bRB6}cKHJbWj;#p);K;Hb zr`3};3TiYc-PL8na#Yq%e(B~s;K@98bc*_2mnW4LHBh=NqM*iZJeAa>y}DVf+2wui zb02j!Sx<@C(Qh5|kR_EeMl-lIi}NZQSYs2X%y6Pw7*Kr$*i! zlftm+U5*OVl33YG8aAc%Vd8SFN5j?7sl!)?rAu-)ZZZhwJkyYwW<3d}8|&&Eb?%3G zMWa(UX@`s{>He24tJ(&+_AxjHJy1{_kp?e%z(HwMN2|Qi0||N@S-VxIq7KOR-PC}p zV^bP66W0t`%hb{6oan~CIy0@S*^TZM4GxGS{Av`m?O^1yp7ydfnhgyGzZ(1C4ImCj z3LKL0Licf07gPoezaHh*qvTY#TE}5Os_?;{z0)>&=z+4bYCKJewt{D?%sJ>G4t30W zs6_dupuwnSr%bnqd-r6htF+9Pc?l1ARNCospX#8_hwe=&=n}r2(Bt4oaq8g+l?6SB zWcsUzCF~H6IVB91z<4{ukI>12+}4KS3XFNhyS23y?j=D##x%F5KH|l`96fZ;>Nk5h zNFUyVe%Z#mtQGqz9bIzCW%-AG==-rj_dB|CMy8Rb3fE|~vpz>*k(U}9bx7hTLx|XB zbFEiTR-V0_CL8`rW@2mcM0>@7Opf}~r9uT=x}!;I)=g>r%^E1uNqCT+if`NubT|}r zNl@#kAx1tK8r=ia({lRkk{Uw=HJ*BEOBH=^HWjZrZ+#vLUk*!i>e6S;mXxRC^C_8W z8}Z4w6cx>tjlJN~Yko0pZ>|`JW`)|99uBa51Y?Ksm*-TM5w%QDxX~Qc?r_`+8a({Z z|M@><_$v-e$2IQhu;M$~)gkM_8{H=u>*qiws(k8A&5SieRAX@-|t6NDTJ@hWw`BM&plU}8G3Pv&<7$!9Z_*8wiOwtgF#Kt2jM z66!;uwp4ETD(&xm?*~?UKqJyhT=JQTMe2o7CZGYNQsbn{99vskjhC(5 z851eQE8?F5XXcsEY6dg(Q_3y7z$gJH5^+-|QQBQ`#TB*8hF7gf8y!^V17&=0qw?MQ z0S!+zP`HVW!i{{_4+}8Hc@}@$y_~i7X?s}61C&wdtI52T zE;vHZk*@IdK%2dAS6C*5WM&+58l5}tUtm<)^hr}+>E?3lOCJojYsQmvjtp^e?sn(` z=fMev#0L^YnwP#-!gT-1#*R7)HpfNlBI0D%=p*^h)UOu`kSE)N!ur5Rr{i`@+pvyH z>tuxG9dWr%y?t}Cg>xWe#G!qo{}G^$TKkmZg90MqX}u;$X51_{Q{T~cWOCvq1NzY) z{UMC-g%Ra8s!2kg6$!HMceukHN_L_rFk??J8H9x(;(NS+sYkxpb6Fjg$vmzl* z90TGEc#X=7OFgbVUgwUx z^q*wEE}^14>;0Y#v+NQ58N@6Fd}ljQ$7psnx-XvZ%ty1yA|1OD^<}&eX_w%D4BMu0 zx|+Qyt!=9VqLXlml&m%)rZJct>>J(pm1jd5xj5LgwGr3*> z(HO1q9vUL#ThAF_z>=X(rg0)K6Ui+{rYk{B?S3ANq2eWDlX=X*kDgPIfd5St3kDMT zAL)SvJWSa;JJwmpBj8&%NC1Ny1pqw8gt*D5R{D5;1N-BE_i#sgs_faRN}G2+g=_R} z!NcUhL&wYH1IHAMuQBd)-OR7)TBIMq(~R?E<0RYF@SOPS_#M#3j=$MYWB%KiQ2&u1 zLiU~I8S4ADVVhu+lDmn;-&7~TbV>$Hu;s8O5+H_ToM2!s8^TH(PiRU$rRK>%#m%kv zkBpxH{)R^^0I7ArY&0d{PcuftzqRFl3^4Z$3ewss6NUuNiD*P&WT%h(Kt4x?IfDS^ z)HhHya3DkB91PA0@e^gCDh?Qw#@IzX$V42?WoQghxlG<*{FOEvYcMydM=KhsvAl`m zh2+BUvizbhO6%-0>kk-03}&kSS%#5Tj?qn0U^El*AjeLt(E%pLrAoQ;u#{_}=wczo1fQItE@*6d4)6NJgp=Pkm>IvghcfFr6jQB|bc1XO z)JNx)(I`S+nfT0xl#RGE3OuI)-=uSm^HSR2!;Uz%s4P)nV)Bz$j-cU(^yiubxu)Ob zoeawfGAQhEG6eZ`Fi@g3$h;-dT|&9_9|4V=aI*mWrTIj z-n51217MpxIyjr4E% z_qt))pMrjI?9n>5bC`g(@-`4KN2^GCqQ}Zb+UNxp0_aIF?i|cJ^SR<1c~T9%wDS!* zn;fn{_PkX{O*Dq%V7`@GTdN1CYlND8WXKU`G|N%ASL+NMd~b{^-XomVF`#^4z2t)iHmc4rinM`43YNl9FOV;+lZ2-U2Bh!e%4}{Oip_1b490y%I$UVj@|kYp<~==OUSfYi8>2yZ%wTJ($PH+?4X4#lt>fw~W%Asy3>a>76ddh_ z0ioebtpgM0_SX1BoMg}3EHKX!kRTS{is74N+=h@LB5-vfoBd+~1UUKr83{azd$QK%O zV@%R&Uqy(Y323PE9N~s>hEAFJjdcR~tcii=#%xM)kk3FH&Km~M>=2pO#P$y4 zHVP`(&NU2UImhut_ZhcAU4jGS$jZjb?2v)bG~O8)Q@vr%{ghQCURyU@TXdEmbkxy= zV-jy%n`j#aXJYc5k>-pspjT?g(rj+l{!yWlckB(%LE)-$kNj_h9>ytzTckC@*v=Vm zR163b90Y=zOgVDkd;)=G8lz~6$B6tDk~3CR<6|biqhl{^^}9v?Imi1=IWW3;8?0Zf z8_AV3Le`GQXunixL!{>2r9B>x(b-wj!M-YP5toH=z`}Ft44gF)iT5CoFJs?T{|QGE zL?P|KtDMQX8C^)Xjn8aW#6y}Z%KfOeECo8ve;sL=o9!UorKTzoe6d|I0teMM+fk*{F*gk+#m=CLn~K5N^p z;LQ-mFO+@j$L?*xk!zfvNMGy|=0BNi7>!%-6hHDS;t9!-<6q7>T86B0BCBjHGhQ5v zHHUF`^&e%N_}c^sm>J~2_@lmxw5L+BZCV|uXmptP7V3ZYj;;39(=*~T^VjhslVid< zC~LBUOm!2`?gCPluLw~8t!rM=kfMOu z#NnX9csgYt%bI8zaDeX4kolyDPMO%auprW03gYhw zj%$;=;bui^lnfwLSiFyI#T&iQuw^f`jWEKPo$?T1)Q#gRWyEWws~g!PJ%Y&nTnX{c z(L#7!AKq^GlY&}+%ST|qa6I@XZ#VzkZ%5{3B*4ip=#3zO#48bL_PFYp(U6EVS!C$k z5Et1Dr~gC)>s2EhTdN0M8^;aT7~na5KpSS=NFPF7Vgrr*laBsFJ>*Y#Kj;2R3hHQw z@3VWM+<&HJW9Wy29Oo3JqZ1@^tncO8mdpu%9fOuP&jF#**Z|OhKx3@KM0rh3VHD~j zqn=P^a&%E2Fd6J99Ye%NzD^mTT_XBi|Kr$QG=^gblqnJ!B9E2G~Sn|PW%NcsY zV?vKgQU!r=2{=la#}x4_!$5jtA-Ql%0LT;MIVqogCXyNCGdq8g34@3{hBhoXtY|_! z;~=bwC;*@1i2#p)Hl8ES3>ss~V@oR|Rofaa?4Jxq^YTcOWxx~a2;gu!o4vsk6ypxg zN)RsLOKaS_0Zpf#lU?k`+HbWl&aEtl>nKo*jD3c=vpSV0L?b&tqYuZ7@`3@ZlVQ-; zYLB85!!SlJOB3V7`7@j50tUndbB|8fY(!W8MVdWC0U54*!6mp%jaVqEG1+S0$ZL_J z0N-4cC(@iqal!<`)fhVQ1_znhL_Bz5N;Kj_B^T`S0q8xI-1Snuxd0%uAxfDJTlFDT=I& zXqDA1{|>*#@rZY*E9UwkRf9%yotVDfDZnbYWK4OyV?CU=W)7JSZZqPo5hu<))v0`} zlaLxG7p-uF`f5WoT6vGz#tU^E9X6gEN9nZ+>nHKn`nLH>z>j8L0^S$=!CoplxUT*~ z{fxR3$t&qiv#h)oyy@SwGIV~;c*Zg14jsa{VQkn(Vx2%jke6s1qWcQC1eYR2C=@Ue z(FPbIkCd!oQX;1!B4I>;j0`3?8Za7^+BW%Rf;zTd${Un-$AAJS-eGdx>dXNjJ5^JX z=KQ^tr@(OvOdrti<}J0(fRzDx$xb^(b7g(Od@;R(Jhd{EA5s8k*ibPdAr^81))&Yo zj-d&-NI`9k&Y4-CTkTsP>Qa!Q;w3id*F~eq7vz_;a>lanzC)X4Sy!Z8vK-rF>?hJ+ zFMOQxS(Cp;%wM;53d7>SOd~BXl+h+EfA4GF}6Q&&DB(7ZejTjFP65T40PQ zguINxQ5N&0wjsrILP_*H<4Lrz(iWV^D;!hK%^LySL&~F|ab#7yjQXcBa}Lkpj7MI)}Ow@Wbgp zjMeEs>KX&_)zOW^iR3(cdz1p4E@%;H9^}QbrWM;_ozQFBK&LtpUwLj4>YI%-lB@B1 zBzuYYz~GEOj9GA;sC$T)X-eeajW?`I&x^%;;V?uGONs4Sx?qrOwm|F zUU%runVcr~lUBjCJ8>x>qxP&DHYGex1vI^NR8-&l{w*Ph5)w*>ARGeZeThm_LY-92=7*U&@r@c#V1&%bA_v(~PAU-#MfzFtR)CI`JH7_Ap@ z7H*FEesuL^Tl{Mp7ceFa7L3ooH4(7?Xw~UTMaWgTD*bnCD(%d0tken5 zA4)kzVqc;*d5jexg{l2GlJe%D_syZS=o6UG36*>t4V#6{0EkJy-y1SK54V@tDnzZe zvdJ_EVNC}~WQq;XM?WD{=d2j1sSxhVtkrEd2OgYU)&dq>RsQU-b@=w$#BNtEUhx3r}SGa8@nWD7TxBrF@X(GQx(Vb2IrsjPd*A509sJO)BMB^ku|}gqNPEL@_-N zfn+nimAYfK6HF8vv=-0yFnPX7Lx_DRqpW&AdTJS(n7Oq{rOvbm_z@yUj+#VhJjJNf zn6B@s{8Mcb%_>8`g{7Y;S@5<=WKQfEQjrkZofdP98e+U{*XU2mRtWr`5UES~B^HS_ zC#9u5BHwRymwEMK8{H6GZdIG?snHJR>EdX_?Zn>xhrnLAus&f^%4DaCmgRkElOMa$ zZYN*zYL~i8s?*!#kJ;h$vam~u06-8Wc<}p4j9{Od9OIb9>G!6UA|`UL__*=Q>BLvg zgEr`2)=H-CZ!@2~wnL@=eEYl`tAMH)a7&4P&oxD~iM(KV%rM@Aa#j-{J86cr-9YP1 z8zaE4Y3pw`4;9m(A{)6RoNW$~Z!QRuE3i$)Q2v=dl5flwoI4TnE)X&91YZX;>&sXC zcrSsUg*r)05X7zFYB6nC67NW*q6tEFVz<2uO}VkNNLM~SlP%yj&c)8`h+Q~Co|1`1 zMmD3_D-^<=Q4wF*BA5TD&EU~NtJ{B+2KcWkGW*q7hq*C1eY|SpZ8yBNEzqxM6Ay># zpU#I3eN}0oHPS)pP;R{%eDjE<5#w7!m$U~Bm|e&hZA?#_>pa4eC)iM({n+woim0CQ zF;#dWHkvkvg*o4g$g?w8%o~h@^T9iM77r@xS6+0URCeut5YOTvRL!%qX|csCJ9AIm&BxkHivc$6&r!s`QK>{u4>rPu z=7!F#AQba`4?zy9_M2J&-(tNHx~E zP+O>D_SrT&9j42jIYp|EdLVwp(xohea0?Z%XOzd=K2 z;K9dKLnL5HVYR0nS+Vk={|m))sQ^I6Z0EW$U#_kROZ-3eCrxO-B60^2>AOclY$2V9 zI83pMvHfuXs^`d@ik8jyiiZr{l9r#{d@+&)05PX_-2txKfx(AB2B%XS1&nhTBBexs zr#x?knl8;?wih~F|I6oeVB=3o*XyCjX3X?Ls}Takfi9ywbjJmxL@j+ek5FJ`@Qg{O!tV zkZ;aBRgte~o_~({`*}+FPq3noUB7*Tbg^N#KAfL#AV?xxBIo#_vG2*D zb2`kXE*&3GR1hUNo$evco1La(p{T5Sq6&6yE7Vj!l>z_G#*=MA^PA$ z)CE~D_kHJROcoPS};Uw@0`aHT!_<>3P|sFLsyWWzgpj!jd0#Yy-{&cX`Yo1U}{ zmuf&}yg;&7svIj?ZKrwmOESvek-94yTGk)uuq!7eGRlDiJx}x_qnec>{d(M4_}kpd zY`+x^gih>;H%#F7C9MA_qdPjWH=;(m;otQ z7TDtMXk>aR*Mk;J6KVOD`61t(jqbc*hp0T#pfQnE-bxm2Y@Gp5t1@LG8g;0qK?!-_ zjuAvmE8vg+%DW7;jy&^$8haegQs$x+7`6-lrD7-2g-1Fgp}|<8nt9W93jc1|R@8RR zLS3Lf;=HItw9Ias5neJZCG| zFLqwpOrKTR0FC>KujeRy#3Vo&sxV<^N%S5u*~u0}xoOC8m!(7TS>JUFSju((x#}6! zdsa#Zsn?X&LemB`9u;nMWff*V0v+C0)i>j~LP7%O8ZOdq6obwu8@${8ZGpGcm(yk% zL79}r1VKTV+?BW?>DJXsWiXDb+IN3vKd9CvzGEO4}_?2kw?-j6V(gNjNjhY3W&J<%CqJ*w zKzBl`6Fax@rQhGmsZ?oS%z1WU*yjF(%VSRq4RlY!>5?TYF2w~9+;4|xQMo=>I-X8KZUT8;_t#I{1ZRvjy-9VHK zo~aI!!&ffCl4rMNxBfjkCqJyLWc%I1RJ5`x`J|%BUaZ^SHyS^(-f(F3HE&5IOPdLa zV2c!gPVjGvb`)0c8gsLpTCr|?ezr>Fx#8p*(VOEm;T9i*2}|ZyMcG2|=LNAIda!d8 z6j7#5+7u>O>7)?S=+Zio>-gYg9 zRNbfy4Pz>Ia@z&Q2 z@1$}H+p3@K7U%`xxzrClYgjO>Nq* z-zF$A8fyk?EVT7X^{tOu!XNJ#FBuU99lq+B<94bAb)g53kdxspy~dC*{dOA#!fVSf zC>t0?5exItp&sr|ZE3KrL zZqG$PhR`{sjO0q>|=1-N2#_zf%WB6i9>}{RV!&?%! z1%p$a+$HX>ylC|$#Wwe7A5Mi#d``R<@b*QAr~&cAmG9FEDg?Hp6uJA%Qa!T&j}vAq zIvl^$*~YBpxno(gm3pUhcg%D5?QSt~@hxM+O`EH*ta2p%_C>?=hPRczw0#Q>zAT}* z*gCHx2d$l~V(<$RSq3}jw$$EEESvv<$GE-QWbw>k1>KDIM~prHJg+DFN!iDK(f1p_ zeqc(yY&F?<;=9)mAa6B<1zlK+7`>!Cqh21%2*;Ue#uF&^(ZkybT5#(5cw8FSsH%S* zShQs#x-JP+{BC{fraFQ=;biXPEm^Q~p)jnV{s5`Jjqox9&SgBpXPQ%k+%~?r0U?(iZV`b3QvNE< z<87c7dR^#o6!Due9A>hl*x9K6Yfhp6Z1TI~AUluzxn+bC_n={4)AOpNt1_eILmghy zf2ox!xMtVHIV`*Kg0^-fDKqQ}yU%+4XGh_1ZAYT=FZea~V*ioc1d0{K`O=|7AnC@F zV6Z;p!a|uD67>2jqdj%9B%H~SXc3j3#!`%)s?sQ_3aqA zC=6J2U2ijWnA7sr#hRfWs{e=XWPB2Muzy_JVGDCb?KD`3J@EiuM>Alsco zH^QTb+O})X!>P=pB=W}1V&Get{!?1~a-aWtT7@-iB1COdPYrV?6a}e<3=-141mo&1HhSN-+Blh~hspmp#1AjlF~C0jvt6*ew|q#&oV4{h;sAnR zh7h;+2mG^|hlx^K=D3<$hoAGt>a%pSzWM`!zk8MnnNX}6BhRzz*#UqDD&5DPn`OAT(ATCKJ{yy}C1wqulvK8qG(ts2OF{LEqW zLE(fdwKUF&0<7){uGgA_-PRFiNv~7wujJRSZ3y}SVc_bx!{LN{VunK=pjIHR8|cP6 z&!;cx;t}?k{q*pKk@MLr4cGUvi^UBmgmRne_l4l3^=43H^cX4YG^zPU+Tdn+wEBlR zr0Wt^O@TLe%XX@%C=WyD;mt`A$7+ph_e#n+7h4~m07Ta}(Y7}4CT~@(D}#8$pIjL- zWE&=v1v_0)o!uT!$D+u1gR&A>#fztR@CU3rnkLFvp1qYol~A%JR{X)aZ$HC zY&2@_sZcsmIkehZ2bB zYb|aYXyKrz372!R$w(i>GQszzS}i zx;u-?KQ>6hQ1SbVJ7kYA*jZYybT-_(lVMTyeZQWk2lo|2f7HXZ%&z}5`DW?=b6{6t|5Ds<$D77u>{+OA&U)%c+<^z zjx6To)_rEea1p|tAZ5_yny-dEvWXoU>V0rhf0>~e*f43e-j1{5tZB-rg<(GYlyo9q zeASBsmx}Y;`+C{ub)mX#R3&lfO4p*bnTGS*LF&SlAr~ohnCvjX;a;7(G&B=n*TZcT zX@o0Cr_XTq?XWVjcat1MB)G>2NhR;w)Ln!}|F;7X^N$l9y@C_k)ohW~cxuC^om$13rg(?64V7$oZ{%;=Jt8W@N1B|pWklRhCYF}CBPHvG z3Bti`!$OpgA@5^}#+BNW2IJWQY%%kCW#3fC`CnaI163Gcjbnl z#}>~?pA7q~MJcCsAP;@k9-ddu+g6vo*d+=?{s$E_UHHkSCk>EE805Ll?G@pObAK#` zF(3Od7d6-=c0FtY*gw&3spGk9FCGK$Iql7ZwjypN&v2=CPOXfcY-}D(eB|rH;evg2 zJh#<*Z;AyCI8@KoOKHFPmRYl1iqboRwnSPR=!7mJ0A<*7XIxKo_Y=#Z5%B#Kd^N!b zDVQrwlg&rc0o2dkCw~4bto`er;y81zw(dUg(P4G>`}an4-QunBZa-g}7SD{J zQ3rf_$0h&PaN@ia&Qq%!%<5-GNmED6PxVyXqY4H zUy@^k!%sfl*e) ziq&{PAiPd?Q1Fwy9wB#hea+j!z|$TxE)d(ql`(+2qlyGBnN}EpJgMxKfzzx$P z9KklO=@Q~LXvPV)f{185#MACJV~V$*nN}6jb~3A4biKhLun>I5rfW~|B6gXK5qB6{ z#3y#iM_ov2*jTxT@v9t))CPpAd?8}@8L87|zkf7yHP<+C&v34hI(O%`!L~jhchI=n zR^+k2yQbK<*4VZf_p7OF5cn2+89k(pFKuzM#s;o%yO&pSwS3q#eIFzk@3wAJ6wUhm zcASKJ^%CaPT}k)HXrg9Pg&t$mL8|AxoQT+^+y3V;0eEznE!a>)C-5I;f^=cBAw?tQ zj1zD;zo>TyyEoe%bV}*?M?9==TTASIqY>CU`}D8Y6EBPA#?ZOj{`I1f8Y`WQHpv-| z?kK&;5y&N5QS2&_#WhS9`om`MRhp4pk7!u0?B5z??EnvgdR8ChhMut;34&11yQ3Up zTDZLDM%H9Ed5Y7o`n5o1#tgqqFW{B7w~VnRgr8i#xQ}U-!Gs zMP1uI$RJ>|n}y-%@K`TAfu`yikGr$Zy9cs^-|_Yn70+XhUhUMAr0?%my}E=K)O<pHibIGG&8I9Ay^C(PLi*BF zQT3`eoWK%~!%r#&+p~pnvs|J{kd;PJ2M>=R`}SbZf!J8Q%*#A0+n7}%^TSLJCJ~{C zCH%Ec3S$xecp}+`E=41xD#L}3^+CnUOnB=BeBa~TWSEuQ7@BRY#ZdEuW^9q4>b{7R% zrarYC)4yo7VRI~Uo9Ecmo!w2fZ3NvclYkG1m6F2{lVV+m55}@wDvLEFFnhA$0PYvr zsBqx6$YT}8xOksXQBFAJ!3NuO!3q60aFB&{CW6I3lnbP<7QS+mSw5#8%30tPM&kuD#G*G9>yBQQ;>l3 zvE0`5eM7g)m6eu9qFFVV{lzdJnPS$V0f2xG+I{VPTK3-LaWr=s_E?#Z8-iBz^m)=mv`>9i_ z4%?f1|8PfH(N_)R9QRzD_i8nk9!nR67Zo{oaL_d7DditDl`f3}dEA$adLFQfyqsn> zeY3&~_G*`&BC$kWpH@1~2J(hlTKqQiE6U?XZcc}j3jOOj2GlNwIl;L8}!bD=k1wVQozH6=3gp-L22uXF+Z38^Bo3j@>DOKnNZ`? z|MsP!{`jUAmVr4{A!?v0nXkkcO!ri_)%+RGRm(#acmWyu$i_-`ZUyU?;qbj)vxXu( z-6pFV#I5f$eYOXD1E3>~fyem(nyN<^a&Vv9;&nBes#XY}+wE@{OvK{_E>tz1ePWed zz8vFS3q2mYIL|i|ty@l9m{jT$D;ods&U3&~sW5-hT;o0#&z;zqV2et1(KT(l1h|q_ ztbq?({UmseX(-V2)SPs2OPVB7w3sY7QZC-L6A=;ml_+Wp1;J>PdF-mUFNB%q`lyqC zx~;;>F_QbkYD*mM>cv{o-SS_$+K35BXd_m|MSgG3%!7r2*fcbHwxw-Pt^#$2)Gz)u zxkk@DxDNkz>Vn}eosaDQV)3&4=~Up$o`3rCXciRdOC!3TYRj!FbNK))o0`|k%f)gLpmM)DO&1nbpUERw>*>Uvr z>$uPzzvmV)jVB28Gug{3@>^Z}ggq(i-)!U8+IQ(leHO)KQN~7Bm_GBg=x{>U>cZB0 zo-3e{frsPlm6!^Eq0~Ybh{>^BQwLe-KpL(i9eE!1Z&*Znbb?D#%J^ph} zGD+4+Nqm}54B={@J5YqV__2o5BZvq8br*|oGEP4p7xVg)*si}Q4qp>;AZT?rI^{Gb z0Zv!MD#Qn=^g5o~yi>QA*%29&FEqM|$FJV3DF4)6HSbAdm)zeL`vL8B?*gd0Ey;ow z+rBX^wzG?3893Uc5WOw7Br>P9cL+hQG+f}W9?n2~`Sm^9a?a$VFZ?^Y0 z8fF>)OR$&xW59+pcm1J+mTcEw_b|HJVWWP!l_dTTqs_v-UO z9=5OLteN_I!Mb4|v~c%OuEz(v+EC`0%G-INySmK02vrJ6$_fwLEDC)B@s))d!NP^_ zX%1p$)+-3z!0g>(38@l~*wm84gASj`k_%^)(4+UC%x@~?)@Z&>*|58JxvsKGxvrb+ z9iN=%L|!M%9|?=TTXWq}jMIgUYQ@EVUWQ9*PomW>_s1f+z@PSY&FSZ16HT%rE2Qg> zd}SO0(7KK5r0XfBSgzQL%j_yHmLGy>d>DD&v!ti7Rh&Nm>AU}Nsx%^*Ztkuz8D&0^ zrmV1Azx23C09XLEd~=kvDN@JqRdut_9k5_o{kitDr$DXJ|1OC&Bfl-1<%l(qr!8 zcBN-?{rQ+72T6HB?^4VvjTi6NiN_uUTPCUXjrCMx!i=z&>-RG<82H`x3I{$LtYU6o zIj1`h|8(<(!zI^4w77UgzcQ>`Jt~A)I>JWoR?*%MFd)K9DuX5V@^JtNeR?#ODCW^_ zSAB^4t@RQ1Lj5X2$LxM|zM@I0tF5GI#XIHjX21Jz3@1;795%7X&_~U1H?d1tPeqx2p zkw2?4nc4i769#OHVOpB9^x+4Y%N}|YbAxHbFL7+#)l?VE8M~hG(_ROsItR?2EPt?w z$jIrpF8pjt)sLl351J`TBeuO>UI?ZCPT}gF*cbFGb(ZJMy~EyxK`#7m#LTBs3va@0 zw)=bp{bk**7pve}EWc%&E%j}jr~CCqnJ{HUm5MyARNcqPd5AGYD%G-p!J8GB=ht<> z2yoE;FWH{Ho50rXB!h4RyDq*VU`hQ`OecK8hj*2(?lTe5egxOvR}YVAJuwa=um|~C zclu_3-EwK&BkJ3bD*dm^C`&k{l(XY5sq4EMXz{jHxEpBD_r{g?AKTtv5gINY9hu>+ z0p-tU1{GbUA`bK07YNq=aGQfWbk zKx}uvE%x=}F%93UFN+C~fsd0hslM8R&w#MoPsdkHciwy8_l3RjoA#B%Olo`FcWS-z zMtHx}kGqxvkh?{~uSu>}ph&lur+SNLdT@YZI;XHHsI1DBfL)}nZ02qBRL>Glfsy8~ zqec@6JpV+#_x%Cypvx`Vm%mdlFZT(zLP6ITIkAccJ$HS;0CA%Jq|Dla6w3tK*}2^8xk z`N8_=J-qigAR(iESVk64`Drld=kCTi*ArWLt_-ZSOVV0{MYgN-+W+bsIbe67S*>C- z-Egf=1Vi<(D5r2lNi>Fi2mR<5OaHZFis;;a|L9sWV|~W(_l0M1T0KJxE!%UKVYd#4 z#B6;Qexs;eh9%+Bp}VkgOkYvGGWY%3S(`q2QW7oEdSoK9`_4nxp-LE?veb@H)s^{B z_Fcm^7*^E+X?hD^INDI=({4J~7i>0EM#UZ{OrE@7_+QcG?y>hRZ=R{RMfmElYqR8i zY-0w#cz77F5$+k9i+_KWV%Gcp=9blAstEXkuN-sZw-gB zLFNE{K)-h21k4gjHzL4Sp5wp|Y#I_e!>w6c4P2u~-^aUe=;V-4PaT18O}$C{Rsul4 z=YDg5tFW^I%VMM-;_tN4$ayvX>wh?SbBx?1wTwffLq;3k6Olj5(8a8A`u5PvQFN*@ z1l2K%4!wfWPU6{Kr(M5yWj@e0Vbw5D^xQoV{^SEpDFYkb7dJsyJ~)A%>;xTLQM2{# zpD&6lgKaL+&*o_&mR>1~5CrN3(sMTBJl%seYnc39y()dmd}dY;^`_iC@$tjWS*O`_ z>^HTice$vCRG%#(V66_~*HLZ=;w_uHRWn8es|fl=a{UAgGkuwtN@Tqhi~YrY zKw&IsH|2S%0+2@aTgYhAkTODVsKqAvF7vTx4lR|VCo2L<9B~zEZH`38 zmO0fMwY?SVEU;(V^nQtTo9up9TC@s?TSvo((38Kx&ESCbq#e&742# zJ5xoT_i7GPAE~@Icxi(0qin@T;ffH=#*~WqBfHRF^;+tl};2kv*5mnwayX&7SJ>-pduU*D)vdaP} zhFdU~`a8o58vJ#WZ5_UuCJC3hCp9~&v24VHo9UQE^ua8K{Z8p9WE+k0n-s#M<3T3R zG7+gIKiN3Ibkb9& zl(#3q^nR77>j0eHg3S97YBX2+y~VFfsr?;xzFU6{%db3Y$zM~-ytqh^(DrEItIt;aSbPUKlWdlb)m&0W>>OL3lX>pU7;3Edc zHpd}SlM@9ob9*r-A%MF^o2os$U*%5`9kd_0LnCrTs~lT~uFm1?*uLvQ-dr7j=bz(B zQw#y$$7`%%Z6*)DMaB5aOh!sbxrbd)6F3!#J`iACO%%he^|ubQAu=Mr)eUae&J``T z!d(au=J^`#3iMs{9_Wf?&z!5^LVLRNy}=kIZ9Ut%!n>ljIQAe$wN7b@voh9npFue><6A(4j!0|vwJC5 z|IfuY+55)rMz+|dhcZh*)R$bA5z$}sgs#I&&_Jb6DyO2bwA=FNDhZ$Mqg=BX*WP{% zQFfT{#fom01o~;s!^M=ydeO+SvqD#7$_h}@mE(}okhEb%n>Ys@6FQUPRZvJ z`8=y)?@k&PoO3oxx^fu2ShfJh2X%q>6T@CYLJ{Ul8zei82r-#x&A#vIc5-metRN5{ zYS@_FrNVtP;60Evf0OrBdz~PS2%o{u9nja0Fx3A#@xbZFG&nd$G{Y#EG|1rZ0mUGD zJg+U3U;1=uGo~dmAyZ^IqS%%{PJ@4lU47TgmclvqA(!46XZ1-V{ajC~mba|=mIYyFl2zq*Xs zs+tfqy_#jXf;rAm1s@a9Z=xN=Xhld_@%h&7a%ep2!TJ8`)x1VXXt`2&;?HWfKN?2g zE%$y0T)xq0&0rWI6fiKSDU8r{7+@L zac>n85)av@@{WGcxcbtbeaJd&ug|uAx^b1NF_()>VLCV84zJjRZ5+zpG;|fQnuHly zDnU=P5#*se#}yT!F(rb5yZu^2su;)zy-3u~xS1<+TOcO$ToGm)tl!@fGkA8j|LcSG z>EbAIU3lEJ4tho&Y-z?LZMIzOHxNZ=_kg@D-t#G%C=R?X}!hv8K4h%W_SrRjbaBl3DA-qAr z9eKSyAdQSe#k1Uye&SSA^HRHphr@^1KOI>q>u;ReDF|r4sYZt1^>NaRx(98>4tsT& zGzBQ!PQmp*vIi_Q`~;?DrKt9m+hsmZSf460_-bdJNQ9nZ*jC~YcE+J-yv#nKEQ5?Q;eP4SiJh$ML zEJRzkkG*jaVfz?ee~%V1A+T!q$Yd}V(ja&47651G9PeV+(@|)XxpxY@(>>2rev9uW z_H{9KCEpG9UX$`l{&f1(iid8!)+m|ZB(W1s0I6B8IizwNlI#CqRk#3DU_ib2Rlq@! zPer;=Q=)RF7)IhUlWCzW?h5Ot4iqsGay5b8o|^~naDFU~BrQJ9;^pf)0dxgj#2yx! z@fUci5XW|R(s9~HGz>M>)zcgKtF(vkEm;a{v>zs}JoHKz=t7#3cf8<)`!b`Zw#LXk z+kA^UBbSH4%UIPlph?!Q$o3E6E>*W&jT>(Tw^EPV;K^X7S^nnX!1(5+vG%)BXnpVu zX6s-;(oUZ_iS~BUQ2tl7^WW3*(-HZlqYi=cGmkZ z((b~X~ELhv)seErmUEMqngGZCndV;c3bs%P7ve4gro>VI-2b)!=c4e3-xI`xI*`u@8vOBU@sk1?=( zpa2EqW_H~ytf}Z>DBiby<`Vxhj))oY+=Vb{=M_PUZd#3X{m6Z7`bBtm1ZKZQ|ED zLQ+4i>}W`I5FJ@cq8n8E%T{ld`s*Nf@z7>UkXBfx{nuArYxDS)B7b=+~Ye%&a6kE5=Y!VY4bZt7jJBB-ADR)sLIE^%8wCtpc zue17NZ}UIF#Uj=F+0UZTD1)2>6?TTU7@x#lqhJUp^&;K8Gf%Ay-HqrDvd>|OD)!xy z@&#>=7=P97iu9Z)&Qu#;M;ZHXy&w4-YcF@XT2k5Qrs(Wg=oC9A_~JE)Mc&PBd0pR5 zOx*9q4Trpvb?>n&3Hx-@_hhLS_$;Ff@Z2g^Gv&|cvRmd1M!pXsW6#g0jm1bMf0OpB z+79h!SOu_48_>8-YIZKNeBJOjCOD;Vu-y|i3=P{;kLP=*nWHtx|B3y@>TfG!KD-zV{b(O}=?$AtBO zr>%*dt{eS-GkqqnU;iOUdRi&jxJ+Bj$AEam_Qkw!R%&vOz27^->b1G@dso5@0ihsP zJQIcYt^s_lWl|A2TQ6ufqd*zF43l(4`N~7hO3Oh9AJ8>}a~Sr<0qUFXAldg$UU{W_ z%5_zUPB#aL1>Lj~$6)-&KrvxN6ws#MmldGIu{qTBaxvotcv3`elE>_AZszcb7_? zyUh_AAesTs+p|7x`Z@pS{!n9%AQeku?jl2d1Dc?np}4! znD=zGiA3lxDu#6ci($ky$ZjfS>g24>YOTg{WajU>l;z|dsIp9)(8GwJLAOP2EskeO-T-KZk2 zFsk^f!PE8hPjIevPHPv;p&`Y4=q$W>HMO;lB4;`1>g&^8Dg$mbs%Gp$d0Bg;kd0$^ zxOl9)AF!Id5ZVc5)lv+z?rP?T3tlmf_MF+;+*T>!kUR=IOU9u_*HqC5<)h&ss`wM)~oe%JFuA&IX`lf z_-fx>tn&Hjry@iKmyZEl;t4}OcGP1T}(9^)P zrO(<&)lw`{@KDL}n>pGAx9Bj(X*kUM0Edg(T`A$>tqy1@^XDhfL_Fw2XDaH7joSd0Go$uVkrfhCRe2cDQ{4<^}wDD zZ#r%EQrD@}Wu?;_wd3h8)mkx^;-Bk->Fr%`)f)294=2M2ZxvMQg=YcbDfX z++wrN&h=eFKG|HDW|PcQ#^e10JBu%zdhs)EHNrmGFROFrY9CdnoH}RAw(kaaTW#^& z+%O5jxO+W(aTh?XcER8^fTyYXP@naRd+4jCwk~UKOX^_X9Prlwy&`;J9M%Si(HSy6{F&srlGWmfM%D=p+t~~=j z3Ax@MPtJfBBC`hV3Y*|-KiKD??x8!%C;(gFL)Or6)#QX;7(SE)cMyaTVZ#eOd+?rQi0u`qen4_8O?x1vD34DSRb#JI(;Xkr4?ak%32^Ff&Ty&>4KPgVTg zo8Tlk_g@X-T14 z3T+#(6P`!DNrgXzh{mfgr1)aCglLvS&4Um7*(cQ(xNP{${2dikR3ftp$LKtS zu>^zypo7l`0GY|%Tgt{JJ>Ssn-O4?8GWSM6$LKrc!)>PH#Ot;cRSSX2Ph(oQ$tkGd zamS4yInQ2?yWoJgp{1Y_wY}F^zkIZKV!ZESxQAS^! z{tl4o8_uSj#5-6snTO6OwE%k=q{AHPmlIZ1jB_W_O%xU;=_ko(A{N-^cDp+swx77W z-4;I-YKfrwt6e|Dny2$tNw6_k3~YaipvOD4pjH$OGZ5-Z9H-7Y$JG<}J{9xwB(M!u zEoysf+)Z(iRa_YHI4mh#2!S^d9u@nx11QAOD7#LI%nn;2^OO$2y#zmoy3Yhh9jti{ z$#HLkSI&TgR)Zf3GQomMX zO4m&BMf6YmLeWYbJlO90gDmgXQr!F6PL@{cvln_re6j3THTp#=2VU|zMO+;FpXV7o zTmseh$ygA)6^IsOBTrt_=|ap+F#}!r92!^PVHenHqH)plRb-hm#C7I_w+bpJrdK(* zMW1PZUW_H0{E@2KbVqn`5qGgasVQ*7YL2v9aI`~%9_}ZX_i=>c0NpQ&`&;JLq)EF_ zOTVq^_$3~ah~e>n!dZkGYBS$lU=4+a-+EKKQIpLtG$%09Zkz}C(cAekRZE!-ZqIq?l_^3L5dV)ZB zY-OtNL&~Lp+ckLz=`2gf7m2q-(j zWw?}5_lM$KyRl6+C&n3%g0{uwI9%4lzKAZQqd2|W-R|~7AL;kD?tb^XUwQM*H~-l+ z*Ie5$re`qH!l+@2p*`buG>SVHnXHR*oro(fj6|oDVJThflyiT#hEhd+8ypK~GRMOu zWyp)UNEziT!V|$xoh{?wzNQQ&>a1NaaT2|G+UWo8(|`D7QRf`U!C=NBwA41$E?Gt; zaR%d->1-JKAL7T1%N!am!QK7tpC$YE?|<=GXPxzdt?fa{W3IX8x+|l@2t9#cQdTKk zgV7w(FKxTj5UrDCEa|&v#G*cX24o8F(E=;cPL~Icw(naCb}FCDi)gG%@k}`(#>xFH zg*n+lI&f@9<0N|bH~Qb!y%qJpW-oRk4xNa##XkXO!cJ%EumJY475r>BJ2lFtI4dfd z(}4pAOoWqB`6IvPpt^;Toj)l=YRtm91=;k7-ohaIpK9zVqZnrM~m-1|hT=ksNQk`2$`%>8G|8!qm|JKm|Q63T*c(*JEdpY`t$FD~e zZiz0F<8qE^D?aI#tUWm)LELa$Jn!FsK)&D$zA&9|!v1Hfud(rL;o#0W=d5QOIdb?Z zmtX$zE3dx#+Aaf*mZ5nEYwA5XT7@{8zHZ4r){UkNmO7?&aL&OxMtEwzrVMdZf64U{ z99D+LehL5Aaqd&)>x_4frd}Vt{@0;%s(fjG3LE{O@1w^DHSBs44(jNC;qyS_J>krS z90xzsQ=5v~IIC-Zh&pI?Qg zb9}TsnR9H%nvch8ZZ`VAzW$$o{`tigZ@~kl;LywUSXD0@`#w7Ta*u<<6uj3B%aeaA zLj4YS%9j&PI5Fvirl*~Dy4>LocT|V@XL`=SmfhSqWdgPxQToOK?>7up&l^6^kPU2L x0~^@D2Kw*;{Tuw!pX*~jcfb4Huk2O){{cFDF`vzsehB~o002ovPDHLkV1fySa})po diff --git a/release-v5.1/database/public/images/apecloud-mysql.svg b/release-v5.1/database/public/images/apecloud-mysql.svg deleted file mode 100644 index b0fc90f..0000000 --- a/release-v5.1/database/public/images/apecloud-mysql.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/public/images/clickhouse.svg b/release-v5.1/database/public/images/clickhouse.svg deleted file mode 100644 index fd711f3..0000000 --- a/release-v5.1/database/public/images/clickhouse.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/release-v5.1/database/public/images/kafka.svg b/release-v5.1/database/public/images/kafka.svg deleted file mode 100644 index 54ea289..0000000 --- a/release-v5.1/database/public/images/kafka.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/public/images/milvus.svg b/release-v5.1/database/public/images/milvus.svg deleted file mode 100644 index 4ad62df..0000000 --- a/release-v5.1/database/public/images/milvus.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/public/images/mongodb.svg b/release-v5.1/database/public/images/mongodb.svg deleted file mode 100644 index f92c67c..0000000 --- a/release-v5.1/database/public/images/mongodb.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/release-v5.1/database/public/images/postgresql.svg b/release-v5.1/database/public/images/postgresql.svg deleted file mode 100644 index d9f1121..0000000 --- a/release-v5.1/database/public/images/postgresql.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/release-v5.1/database/public/images/pulsar.svg b/release-v5.1/database/public/images/pulsar.svg deleted file mode 100644 index 9999f05..0000000 --- a/release-v5.1/database/public/images/pulsar.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/public/images/qdrant.svg b/release-v5.1/database/public/images/qdrant.svg deleted file mode 100644 index 4e442c9..0000000 --- a/release-v5.1/database/public/images/qdrant.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/release-v5.1/database/public/images/redis.svg b/release-v5.1/database/public/images/redis.svg deleted file mode 100644 index 11dc7b1..0000000 --- a/release-v5.1/database/public/images/redis.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/release-v5.1/database/public/images/weaviate.svg b/release-v5.1/database/public/images/weaviate.svg deleted file mode 100644 index a2ddac2..0000000 --- a/release-v5.1/database/public/images/weaviate.svg +++ /dev/null @@ -1,192 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/release-v5.1/database/public/logo.svg b/release-v5.1/database/public/logo.svg deleted file mode 100644 index d265b88..0000000 --- a/release-v5.1/database/public/logo.svg +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/release-v5.1/database/public/redirect.html b/release-v5.1/database/public/redirect.html deleted file mode 100644 index a29f047..0000000 --- a/release-v5.1/database/public/redirect.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - redirect - - - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/api/tools.ts b/release-v5.1/database/src/api/tools.ts deleted file mode 100644 index ff8d6a9..0000000 --- a/release-v5.1/database/src/api/tools.ts +++ /dev/null @@ -1,13 +0,0 @@ -/** - * obj to query - */ -export const obj2Query = (obj: Record) => { - let str = ''; - Object.entries(obj).forEach(([key, val]) => { - if (val) { - str += `${key}=${val}&`; - } - }); - - return str.slice(0, str.length - 1); -}; diff --git a/release-v5.1/database/src/components/BaseTable/SwitchPage.tsx b/release-v5.1/database/src/components/BaseTable/SwitchPage.tsx deleted file mode 100644 index fe1c44d..0000000 --- a/release-v5.1/database/src/components/BaseTable/SwitchPage.tsx +++ /dev/null @@ -1,158 +0,0 @@ -import { Button, ButtonProps, Flex, FlexProps, Text } from '@chakra-ui/react'; -import { useTranslation } from 'next-i18next'; - -import { Icon, IconProps } from '@chakra-ui/react'; - -export function ToLeftIcon(props: IconProps) { - return ( - - - - ); -} - -export function RightFirstIcon(props: IconProps) { - return ( - - - - ); -} - -export function SwitchPage({ - totalPage, - totalItem, - pageSize, - currentPage, - setCurrentPage, - isPreviousData, - ...props -}: { - currentPage: number; - totalPage: number; - totalItem: number; - pageSize: number; - isPreviousData?: boolean; - setCurrentPage: (idx: number) => void; -} & FlexProps) { - const { t } = useTranslation(); - const switchStyle: ButtonProps = { - width: '24px', - height: '24px', - minW: '0', - background: 'grayModern.250', - flexGrow: '0', - borderRadius: 'full', - // variant:'unstyled', - _hover: { - background: 'grayModern.150', - minW: '0' - }, - _disabled: { - borderRadius: 'full', - background: 'grayModern.150', - cursor: 'not-allowed', - minW: '0' - } - }; - return ( - - - {t('Total')}: - - - {totalItem} - - - - - {currentPage} - / - {totalPage} - - - - - {pageSize} - - - /{t('Page')} - - - ); -} diff --git a/release-v5.1/database/src/components/BaseTable/baseTable.tsx b/release-v5.1/database/src/components/BaseTable/baseTable.tsx deleted file mode 100644 index 1ad9e13..0000000 --- a/release-v5.1/database/src/components/BaseTable/baseTable.tsx +++ /dev/null @@ -1,119 +0,0 @@ -import { - HTMLChakraProps, - Spinner, - Table, - TableContainer, - TableContainerProps, - Tbody, - Td, - Th, - Thead, - Tr -} from '@chakra-ui/react'; -import { Column, Table as ReactTable, flexRender } from '@tanstack/react-table'; -import { CSSProperties } from 'react'; - -const getCommonPinningStyles = (column: Column): CSSProperties => { - const isPinned = column.getIsPinned(); - - return { - position: isPinned ? 'sticky' : 'relative', - left: isPinned === 'left' ? 0 : undefined, - right: isPinned === 'right' ? 0 : undefined, - zIndex: isPinned ? 10 : 0 - }; -}; - -const getCommonWidthStyles = (column: Column): CSSProperties => { - const size = column.getSize(); - return size ? { width: `${size}px` } : {}; -}; - -export function BaseTable({ - table, - isLoading, - tdStyle, - ...props -}: { - table: ReactTable; - isLoading: boolean; - tdStyle?: HTMLChakraProps<'td'>; -} & TableContainerProps) { - return ( - - - - {table.getHeaderGroups().map((headers) => { - return ( - - {headers.headers.map((header, i) => { - return ( - - ); - })} - - ); - })} - - - {isLoading ? ( - - - - ) : ( - table.getRowModel().rows.map((item, index) => { - return ( - - {item.getAllCells().map((cell, i) => { - const isPinned = cell.column.getIsPinned(); - return ( - - ); - })} - - ); - }) - )} - -
)} - {...(getCommonWidthStyles(header.column) as HTMLChakraProps<'th'>)} - > - {flexRender(header.column.columnDef.header, header.getContext())} -
- -
)} - {...(getCommonWidthStyles(cell.column) as HTMLChakraProps<'td'>)} - {...tdStyle} - > - {flexRender(cell.column.columnDef.cell, cell.getContext())} -
-
- ); -} diff --git a/release-v5.1/database/src/components/ButtonGroup/index.tsx b/release-v5.1/database/src/components/ButtonGroup/index.tsx deleted file mode 100644 index 00c321f..0000000 --- a/release-v5.1/database/src/components/ButtonGroup/index.tsx +++ /dev/null @@ -1,40 +0,0 @@ -import React from 'react'; -import { Flex, Box } from '@chakra-ui/react'; - -const ButtonGroup = ({ - list -}: { - list: { - label: string; - onclick: () => void; - active: boolean; - }[]; -}) => { - return ( - - {list.map((item) => ( - - {item.label} - - ))} - - ); -}; - -export default ButtonGroup; diff --git a/release-v5.1/database/src/components/CodeBlock/index.tsx b/release-v5.1/database/src/components/CodeBlock/index.tsx deleted file mode 100644 index 5b6d607..0000000 --- a/release-v5.1/database/src/components/CodeBlock/index.tsx +++ /dev/null @@ -1,65 +0,0 @@ -import { useCopyData } from '@/hooks/useCopyData'; -import { Flex, FlexProps, Text } from '@chakra-ui/react'; -import { useTranslation } from 'next-i18next'; -import { useState } from 'react'; -import MyIcon from '../Icon'; - -type CodeBlockProps = { - flexStyle?: FlexProps; - codeList: string[]; -}; - -export default function CodeBlock({ flexStyle, codeList }: CodeBlockProps) { - const { copyData } = useCopyData(); - const [hoveredIndex, setHoveredIndex] = useState(); - const { t } = useTranslation(); - const isCopy = (value: string) => !value?.startsWith('#'); - - if (!codeList) { - return <>; - } - - return ( - - {codeList.map((item, index) => { - return ( - setHoveredIndex(index)} - onMouseLeave={() => setHoveredIndex(null)} - alignItems={'center'} - > - - {index + 1} - - {item} - {isCopy(item) && hoveredIndex === index ? ( - copyData(item)} - /> - ) : ( - <> - )} - - ); - })} - - ); -} diff --git a/release-v5.1/database/src/components/ErrorLog/LogCounts.tsx b/release-v5.1/database/src/components/ErrorLog/LogCounts.tsx deleted file mode 100644 index 5e258da..0000000 --- a/release-v5.1/database/src/components/ErrorLog/LogCounts.tsx +++ /dev/null @@ -1,102 +0,0 @@ -import MyIcon from '@/components/Icon'; -import { Box, Button, Center, Collapse, Flex, Spinner, Text } from '@chakra-ui/react'; -import { useTranslation } from 'next-i18next'; -import { useState } from 'react'; -import dynamic from 'next/dynamic'; -import EmptyChart from '@/components/Icon/icons/emptyChart.svg'; -import { ChevronUp } from 'lucide-react'; - -const LogBarChart = dynamic(() => import('@/components/LogBarChart'), { ssr: false }); - -interface LogCountsProps { - logCountsData?: { logs_total: string; _time: string }[]; - isLogCountsLoading?: boolean; - totalLogs?: number; -} - -export const LogCounts = ({ - logCountsData = [], - isLogCountsLoading = false, - totalLogs = 0 -}: LogCountsProps) => { - const { t } = useTranslation('common'); - const [onOpenChart, setOnOpenChart] = useState(true); - - const processChartData = (rawData: Array<{ _time: string; logs_total: string }>) => { - const sortedData = [...rawData].sort( - (a, b) => new Date(a._time).getTime() - new Date(b._time).getTime() - ); - const xData = sortedData.map((item) => Math.floor(new Date(item._time).getTime() / 1000)); - const yData = sortedData.map((item) => item.logs_total); - - return { - xData, - yData - }; - }; - - return ( - - - - - {/* charts */} - - - {isLogCountsLoading ? ( -
- -
- ) : logCountsData.length > 0 ? ( - - ) : ( -
- - - {t('no_data_available')} - -
- )} -
-
-
- ); -}; diff --git a/release-v5.1/database/src/components/FileSelect/index.tsx b/release-v5.1/database/src/components/FileSelect/index.tsx deleted file mode 100644 index d716a1e..0000000 --- a/release-v5.1/database/src/components/FileSelect/index.tsx +++ /dev/null @@ -1,129 +0,0 @@ -import { useLoading } from '@/hooks/useLoading'; -import { Box, Flex, Icon, Text, type BoxProps } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; -import { useTranslation } from 'next-i18next'; -import { useCallback, useRef, useState } from 'react'; -import MyIcon from '../Icon'; - -interface Props extends BoxProps { - fileExtension: string; - files: File[]; - multiple?: boolean; - setFiles: React.Dispatch>; -} - -const FileSelect = ({ fileExtension, setFiles, multiple = false, files, ...props }: Props) => { - const { Loading: FileSelectLoading } = useLoading(); - const { t } = useTranslation(); - const { message: toast } = useMessage(); - const [isDragging, setIsDragging] = useState(false); - const [selecting, setSelecting] = useState(false); - const SelectFileDom = useRef(null); - - const onSelectFile = useCallback( - async (files: File[]) => { - setSelecting(true); - try { - setFiles(files); - } catch (e) { - console.log('select file error: ', e); - } - setSelecting(false); - }, - - [setFiles] - ); - - return ( - <> - SelectFileDom.current && SelectFileDom.current.click()} - > - - - {t('upload_dump_file')} - - - - { - if (!e.target.files || e.target.files?.length === 0) return; - if (e.target.files.length > 10) { - return toast({ - status: 'warning', - title: t('select_a_maximum_of_10_files') - }); - } - onSelectFile(Array.from(e.target.files)); - }} - /> - - - {files.length > 0 && ( - - {files.map((item) => ( - - - - {item.name} - - { - setFiles((state) => state.filter((file) => file.name !== item.name)); - }} - > - - - - ))} - - )} - - ); -}; - -export default FileSelect; diff --git a/release-v5.1/database/src/components/FormControl/index.tsx b/release-v5.1/database/src/components/FormControl/index.tsx deleted file mode 100644 index 9043502..0000000 --- a/release-v5.1/database/src/components/FormControl/index.tsx +++ /dev/null @@ -1,29 +0,0 @@ -import React, { ReactNode } from 'react'; -import { FormControl, FormErrorMessage } from '@chakra-ui/react'; -import type { FormControlProps } from '@chakra-ui/react'; - -interface Props extends FormControlProps { - errorText?: string; - showError?: boolean; - children: ReactNode; -} - -const MyFormControl = ({ errorText, showError = false, children, ...props }: Props) => { - return ( - - {children} - {showError && !!errorText && ( - - {errorText} - - )} - - ); -}; - -export default MyFormControl; diff --git a/release-v5.1/database/src/components/Icon/icons/add.svg b/release-v5.1/database/src/components/Icon/icons/add.svg deleted file mode 100644 index 261a95d..0000000 --- a/release-v5.1/database/src/components/Icon/icons/add.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/release-v5.1/database/src/components/Icon/icons/analyze.svg b/release-v5.1/database/src/components/Icon/icons/analyze.svg deleted file mode 100644 index 30ce76f..0000000 --- a/release-v5.1/database/src/components/Icon/icons/analyze.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/arrowDown.svg b/release-v5.1/database/src/components/Icon/icons/arrowDown.svg deleted file mode 100644 index 029c097..0000000 --- a/release-v5.1/database/src/components/Icon/icons/arrowDown.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/arrowLeft.svg b/release-v5.1/database/src/components/Icon/icons/arrowLeft.svg deleted file mode 100644 index 13e1ec9..0000000 --- a/release-v5.1/database/src/components/Icon/icons/arrowLeft.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/arrowUp.svg b/release-v5.1/database/src/components/Icon/icons/arrowUp.svg deleted file mode 100644 index b9caedf..0000000 --- a/release-v5.1/database/src/components/Icon/icons/arrowUp.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/backup.svg b/release-v5.1/database/src/components/Icon/icons/backup.svg deleted file mode 100644 index 7422034..0000000 --- a/release-v5.1/database/src/components/Icon/icons/backup.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/release-v5.1/database/src/components/Icon/icons/backupSettings.svg b/release-v5.1/database/src/components/Icon/icons/backupSettings.svg deleted file mode 100644 index 1c399a7..0000000 --- a/release-v5.1/database/src/components/Icon/icons/backupSettings.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/book.svg b/release-v5.1/database/src/components/Icon/icons/book.svg deleted file mode 100644 index fc017e1..0000000 --- a/release-v5.1/database/src/components/Icon/icons/book.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/calendar.svg b/release-v5.1/database/src/components/Icon/icons/calendar.svg deleted file mode 100644 index f864a73..0000000 --- a/release-v5.1/database/src/components/Icon/icons/calendar.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/release-v5.1/database/src/components/Icon/icons/change.svg b/release-v5.1/database/src/components/Icon/icons/change.svg deleted file mode 100644 index 2ffbb98..0000000 --- a/release-v5.1/database/src/components/Icon/icons/change.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/chevron-down.svg b/release-v5.1/database/src/components/Icon/icons/chevron-down.svg deleted file mode 100644 index 5840e8c..0000000 --- a/release-v5.1/database/src/components/Icon/icons/chevron-down.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/config.svg b/release-v5.1/database/src/components/Icon/icons/config.svg deleted file mode 100644 index 37bc601..0000000 --- a/release-v5.1/database/src/components/Icon/icons/config.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/configmap.svg b/release-v5.1/database/src/components/Icon/icons/configmap.svg deleted file mode 100644 index 2f69986..0000000 --- a/release-v5.1/database/src/components/Icon/icons/configmap.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/release-v5.1/database/src/components/Icon/icons/connection.svg b/release-v5.1/database/src/components/Icon/icons/connection.svg deleted file mode 100644 index dc3a8f6..0000000 --- a/release-v5.1/database/src/components/Icon/icons/connection.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/continue.svg b/release-v5.1/database/src/components/Icon/icons/continue.svg deleted file mode 100644 index d38b29e..0000000 --- a/release-v5.1/database/src/components/Icon/icons/continue.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/copy.svg b/release-v5.1/database/src/components/Icon/icons/copy.svg deleted file mode 100644 index f96a456..0000000 --- a/release-v5.1/database/src/components/Icon/icons/copy.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/currency.svg b/release-v5.1/database/src/components/Icon/icons/currency.svg deleted file mode 100644 index 5d4afdf..0000000 --- a/release-v5.1/database/src/components/Icon/icons/currency.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/release-v5.1/database/src/components/Icon/icons/delete.svg b/release-v5.1/database/src/components/Icon/icons/delete.svg deleted file mode 100644 index 7f07bdc..0000000 --- a/release-v5.1/database/src/components/Icon/icons/delete.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/detail.svg b/release-v5.1/database/src/components/Icon/icons/detail.svg deleted file mode 100644 index 63bb1ed..0000000 --- a/release-v5.1/database/src/components/Icon/icons/detail.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/docs.svg b/release-v5.1/database/src/components/Icon/icons/docs.svg deleted file mode 100644 index 027ca87..0000000 --- a/release-v5.1/database/src/components/Icon/icons/docs.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/download.svg b/release-v5.1/database/src/components/Icon/icons/download.svg deleted file mode 100644 index 5591903..0000000 --- a/release-v5.1/database/src/components/Icon/icons/download.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/edit.svg b/release-v5.1/database/src/components/Icon/icons/edit.svg deleted file mode 100644 index 031f0c1..0000000 --- a/release-v5.1/database/src/components/Icon/icons/edit.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/emptyChart.svg b/release-v5.1/database/src/components/Icon/icons/emptyChart.svg deleted file mode 100644 index af039d0..0000000 --- a/release-v5.1/database/src/components/Icon/icons/emptyChart.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/release-v5.1/database/src/components/Icon/icons/error.svg b/release-v5.1/database/src/components/Icon/icons/error.svg deleted file mode 100644 index 4ee6d34..0000000 --- a/release-v5.1/database/src/components/Icon/icons/error.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/release-v5.1/database/src/components/Icon/icons/export.svg b/release-v5.1/database/src/components/Icon/icons/export.svg deleted file mode 100644 index f15d016..0000000 --- a/release-v5.1/database/src/components/Icon/icons/export.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/file.svg b/release-v5.1/database/src/components/Icon/icons/file.svg deleted file mode 100644 index b69a4ae..0000000 --- a/release-v5.1/database/src/components/Icon/icons/file.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/formInfo.svg b/release-v5.1/database/src/components/Icon/icons/formInfo.svg deleted file mode 100644 index a7c39c6..0000000 --- a/release-v5.1/database/src/components/Icon/icons/formInfo.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/gift.svg b/release-v5.1/database/src/components/Icon/icons/gift.svg deleted file mode 100644 index 865d630..0000000 --- a/release-v5.1/database/src/components/Icon/icons/gift.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/help.svg b/release-v5.1/database/src/components/Icon/icons/help.svg deleted file mode 100644 index 29dad63..0000000 --- a/release-v5.1/database/src/components/Icon/icons/help.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/import.svg b/release-v5.1/database/src/components/Icon/icons/import.svg deleted file mode 100644 index 890306b..0000000 --- a/release-v5.1/database/src/components/Icon/icons/import.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/info.svg b/release-v5.1/database/src/components/Icon/icons/info.svg deleted file mode 100644 index ad93c38..0000000 --- a/release-v5.1/database/src/components/Icon/icons/info.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/instance.svg b/release-v5.1/database/src/components/Icon/icons/instance.svg deleted file mode 100644 index 531b58d..0000000 --- a/release-v5.1/database/src/components/Icon/icons/instance.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/loading.svg b/release-v5.1/database/src/components/Icon/icons/loading.svg deleted file mode 100644 index d1aedac..0000000 --- a/release-v5.1/database/src/components/Icon/icons/loading.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/release-v5.1/database/src/components/Icon/icons/log.svg b/release-v5.1/database/src/components/Icon/icons/log.svg deleted file mode 100644 index 798a416..0000000 --- a/release-v5.1/database/src/components/Icon/icons/log.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/logo-linear.svg b/release-v5.1/database/src/components/Icon/icons/logo-linear.svg deleted file mode 100644 index 1e7680f..0000000 --- a/release-v5.1/database/src/components/Icon/icons/logo-linear.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/logo.svg b/release-v5.1/database/src/components/Icon/icons/logo.svg deleted file mode 100644 index 81eb39f..0000000 --- a/release-v5.1/database/src/components/Icon/icons/logo.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/monitor.svg b/release-v5.1/database/src/components/Icon/icons/monitor.svg deleted file mode 100644 index 44aaf7e..0000000 --- a/release-v5.1/database/src/components/Icon/icons/monitor.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/more.svg b/release-v5.1/database/src/components/Icon/icons/more.svg deleted file mode 100644 index bc3ddc9..0000000 --- a/release-v5.1/database/src/components/Icon/icons/more.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/noEvents.svg b/release-v5.1/database/src/components/Icon/icons/noEvents.svg deleted file mode 100644 index 9665a70..0000000 --- a/release-v5.1/database/src/components/Icon/icons/noEvents.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/overview.svg b/release-v5.1/database/src/components/Icon/icons/overview.svg deleted file mode 100644 index 3ff70d3..0000000 --- a/release-v5.1/database/src/components/Icon/icons/overview.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/pause.svg b/release-v5.1/database/src/components/Icon/icons/pause.svg deleted file mode 100644 index 0c7f9ec..0000000 --- a/release-v5.1/database/src/components/Icon/icons/pause.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/plus.svg b/release-v5.1/database/src/components/Icon/icons/plus.svg deleted file mode 100644 index 8945ba3..0000000 --- a/release-v5.1/database/src/components/Icon/icons/plus.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/podList.svg b/release-v5.1/database/src/components/Icon/icons/podList.svg deleted file mode 100644 index 6be85b6..0000000 --- a/release-v5.1/database/src/components/Icon/icons/podList.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/pods.svg b/release-v5.1/database/src/components/Icon/icons/pods.svg deleted file mode 100644 index 7a7ebdc..0000000 --- a/release-v5.1/database/src/components/Icon/icons/pods.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/read.svg b/release-v5.1/database/src/components/Icon/icons/read.svg deleted file mode 100644 index 28c46f8..0000000 --- a/release-v5.1/database/src/components/Icon/icons/read.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/refresh.svg b/release-v5.1/database/src/components/Icon/icons/refresh.svg deleted file mode 100644 index 302e566..0000000 --- a/release-v5.1/database/src/components/Icon/icons/refresh.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/release-v5.1/database/src/components/Icon/icons/restart.svg b/release-v5.1/database/src/components/Icon/icons/restart.svg deleted file mode 100644 index 93cf5ef..0000000 --- a/release-v5.1/database/src/components/Icon/icons/restart.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/restore.svg b/release-v5.1/database/src/components/Icon/icons/restore.svg deleted file mode 100644 index b37a437..0000000 --- a/release-v5.1/database/src/components/Icon/icons/restore.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/search.svg b/release-v5.1/database/src/components/Icon/icons/search.svg deleted file mode 100644 index 67426d9..0000000 --- a/release-v5.1/database/src/components/Icon/icons/search.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/settings.svg b/release-v5.1/database/src/components/Icon/icons/settings.svg deleted file mode 100644 index fa9f203..0000000 --- a/release-v5.1/database/src/components/Icon/icons/settings.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/slider.svg b/release-v5.1/database/src/components/Icon/icons/slider.svg deleted file mode 100644 index ca2fc78..0000000 --- a/release-v5.1/database/src/components/Icon/icons/slider.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/release-v5.1/database/src/components/Icon/icons/start.svg b/release-v5.1/database/src/components/Icon/icons/start.svg deleted file mode 100644 index 8aa2f29..0000000 --- a/release-v5.1/database/src/components/Icon/icons/start.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/statusDetail.svg b/release-v5.1/database/src/components/Icon/icons/statusDetail.svg deleted file mode 100644 index 9716b64..0000000 --- a/release-v5.1/database/src/components/Icon/icons/statusDetail.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/success.svg b/release-v5.1/database/src/components/Icon/icons/success.svg deleted file mode 100644 index 51c1b8f..0000000 --- a/release-v5.1/database/src/components/Icon/icons/success.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/release-v5.1/database/src/components/Icon/icons/target.svg b/release-v5.1/database/src/components/Icon/icons/target.svg deleted file mode 100644 index c9ed559..0000000 --- a/release-v5.1/database/src/components/Icon/icons/target.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/terminal.svg b/release-v5.1/database/src/components/Icon/icons/terminal.svg deleted file mode 100644 index db9147b..0000000 --- a/release-v5.1/database/src/components/Icon/icons/terminal.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/textRecognition.svg b/release-v5.1/database/src/components/Icon/icons/textRecognition.svg deleted file mode 100644 index e5eef17..0000000 --- a/release-v5.1/database/src/components/Icon/icons/textRecognition.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/release-v5.1/database/src/components/Icon/icons/time.svg b/release-v5.1/database/src/components/Icon/icons/time.svg deleted file mode 100644 index 0615803..0000000 --- a/release-v5.1/database/src/components/Icon/icons/time.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/to.svg b/release-v5.1/database/src/components/Icon/icons/to.svg deleted file mode 100644 index af8c21b..0000000 --- a/release-v5.1/database/src/components/Icon/icons/to.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/release-v5.1/database/src/components/Icon/icons/unread.svg b/release-v5.1/database/src/components/Icon/icons/unread.svg deleted file mode 100644 index 9e6a678..0000000 --- a/release-v5.1/database/src/components/Icon/icons/unread.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/upload.svg b/release-v5.1/database/src/components/Icon/icons/upload.svg deleted file mode 100644 index ad7bf16..0000000 --- a/release-v5.1/database/src/components/Icon/icons/upload.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/upperRight.svg b/release-v5.1/database/src/components/Icon/icons/upperRight.svg deleted file mode 100644 index f3299a1..0000000 --- a/release-v5.1/database/src/components/Icon/icons/upperRight.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/warning.svg b/release-v5.1/database/src/components/Icon/icons/warning.svg deleted file mode 100644 index dc84cf1..0000000 --- a/release-v5.1/database/src/components/Icon/icons/warning.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/icons/warningInfo.svg b/release-v5.1/database/src/components/Icon/icons/warningInfo.svg deleted file mode 100644 index 59b5604..0000000 --- a/release-v5.1/database/src/components/Icon/icons/warningInfo.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/release-v5.1/database/src/components/Icon/index.tsx b/release-v5.1/database/src/components/Icon/index.tsx deleted file mode 100644 index 7223ea9..0000000 --- a/release-v5.1/database/src/components/Icon/index.tsx +++ /dev/null @@ -1,85 +0,0 @@ -import React from 'react'; -import type { IconProps } from '@chakra-ui/react'; -import { Icon } from '@chakra-ui/react'; - -export const IconMap = { - more: require('./icons/more.svg').default, - podList: require('./icons/podList.svg').default, - plus: require('./icons/plus.svg').default, - delete: require('./icons/delete.svg').default, - restart: require('./icons/restart.svg').default, - start: require('./icons/start.svg').default, - pause: require('./icons/pause.svg').default, - warningInfo: require('./icons/warningInfo.svg').default, - detail: require('./icons/detail.svg').default, - logo: require('./icons/logo.svg').default, - change: require('./icons/change.svg').default, - formInfo: require('./icons/formInfo.svg').default, - settings: require('./icons/settings.svg').default, - copy: require('./icons/copy.svg').default, - continue: require('./icons/continue.svg').default, - noEvents: require('./icons/noEvents.svg').default, - warning: require('./icons/warning.svg').default, - analyze: require('./icons/analyze.svg').default, - terminal: require('./icons/terminal.svg').default, - log: require('./icons/log.svg').default, - statusDetail: require('./icons/statusDetail.svg').default, - read: require('./icons/read.svg').default, - unread: require('./icons/unread.svg').default, - connection: require('./icons/connection.svg').default, - info: require('./icons/info.svg').default, - restore: require('./icons/restore.svg').default, - download: require('./icons/download.svg').default, - loading: require('./icons/loading.svg').default, - success: require('./icons/success.svg').default, - error: require('./icons/error.svg').default, - currency: require('./icons/currency.svg').default, - upperRight: require('./icons/upperRight.svg').default, - arrowUp: require('./icons/arrowUp.svg').default, - search: require('./icons/search.svg').default, - edit: require('./icons/edit.svg').default, - book: require('./icons/book.svg').default, - export: require('./icons/export.svg').default, - pods: require('./icons/pods.svg').default, - upload: require('./icons/upload.svg').default, - target: require('./icons/target.svg').default, - gift: require('./icons/gift.svg').default, - time: require('./icons/time.svg').default, - help: require('./icons/help.svg').default, - backup: require('./icons/backup.svg').default, - instance: require('./icons/instance.svg').default, - import: require('./icons/import.svg').default, - file: require('./icons/file.svg').default, - config: require('./icons/config.svg').default, - backupSettings: require('./icons/backupSettings.svg').default, - monitor: require('./icons/monitor.svg').default, - logoLinear: require('./icons/logo-linear.svg').default, - arrowDown: require('./icons/arrowDown.svg').default, - docs: require('./icons/docs.svg').default, - chevronDown: require('./icons/chevron-down.svg').default, - overview: require('./icons/overview.svg').default, - textRecognition: require('./icons/textRecognition.svg').default, - add: require('./icons/add.svg').default, - configmap: require('./icons/configmap.svg').default, - slider: require('./icons/slider.svg').default -}; - -const MyIcon = ({ - name, - w = 'auto', - h = 'auto', - ...props -}: { name: keyof typeof IconMap } & IconProps) => { - return IconMap[name] ? ( - - ) : null; -}; - -export default MyIcon; diff --git a/release-v5.1/database/src/components/LogBarChart/index.tsx b/release-v5.1/database/src/components/LogBarChart/index.tsx deleted file mode 100644 index 6014394..0000000 --- a/release-v5.1/database/src/components/LogBarChart/index.tsx +++ /dev/null @@ -1,250 +0,0 @@ -import dayjs from 'dayjs'; -import * as echarts from 'echarts'; -import React, { useEffect, useMemo, useRef } from 'react'; -import { useGlobalStore } from '@/store/global'; - -const map = { - blue: { - backgroundColor: { - type: 'linear', - x: 0, - y: 0, - x2: 0, - y2: 1, - colorStops: [ - { - offset: 0, - color: 'rgba(3, 190, 232, 0.42)' - }, - { - offset: 1, - color: 'rgba(0, 182, 240, 0)' - } - ], - global: false - }, - lineColor: '#85CCFF' - }, - deepBlue: { - backgroundColor: { - type: 'linear', - x: 0, - y: 0, - x2: 0, - y2: 1, - colorStops: [ - { - offset: 0, - color: 'rgba(47, 112, 237, 0.42)' - }, - { - offset: 1, - color: 'rgba(94, 159, 235, 0)' - } - ], - global: false - }, - lineColor: '#3293EC' - }, - purple: { - backgroundColor: { - type: 'linear', - x: 0, - y: 0, - x2: 0, - y2: 1, - colorStops: [ - { - offset: 0, - color: 'rgba(211, 190, 255, 0.42)' // 0% 处的颜色 - }, - { - offset: 1, - color: 'rgba(52, 60, 255, 0)' - } - ], - global: false // 缺省为 false - }, - lineColor: '#8172D8' - }, - green: { - backgroundColor: { - type: 'linear', - x: 0, - y: 0, - x2: 0, - y2: 1, - colorStops: [ - { - offset: 0, - color: 'rgba(4, 209, 148, 0.42)' // 0% 处的颜色 - }, - { - offset: 1, - color: 'rgba(19, 217, 181, 0)' - } - ], - global: false - }, - lineColor: '#00A9A6', - max: 100 - } -}; - -export interface MonitorDataResult { - xData: number[]; - yData: string[]; -} - -const LogBarChart = ({ - type, - data, - isShowLabel = false, - visible = true -}: { - type: 'blue' | 'deepBlue' | 'green' | 'purple'; - data?: MonitorDataResult; - isShowLabel?: boolean; - visible?: boolean; -}) => { - const { screenWidth } = useGlobalStore(); - const xData = useMemo( - () => - data?.xData?.map((time) => dayjs(time * 1000).format('MM-DD HH:mm')) || new Array(30).fill(0), - [data?.xData] - ); - const yData = data?.yData || new Array(30).fill(''); - - const Dom = useRef(null); - const myChart = useRef(); - const resizeObserver = useRef(); - - const optionStyle = useMemo( - () => ({ - itemStyle: { - color: '#93C5FD' - }, - emphasis: { - itemStyle: { - color: '#93C5FD' - } - } - }), - [] - ); - - const option = useRef({ - xAxis: { - type: 'category', - data: xData, - boundaryGap: true, - axisLine: { - lineStyle: { - color: '#E8EBF0' - } - }, - axisLabel: { - color: '#667085' - } - }, - yAxis: { - type: 'value', - splitNumber: 3, - splitLine: { - lineStyle: { - type: 'dashed', - color: '#E4E7EC' - } - } - }, - series: [ - { - data: yData, - type: 'bar', - animationDuration: 300, - barWidth: '90%', - ...optionStyle - } - ], - grid: { - left: 0, - right: 0, - bottom: 0, - top: 5, - containLabel: true - }, - tooltip: { - trigger: 'axis', - axisPointer: { - type: 'line' - }, - formatter: (params: any[]) => { - const axisValue = params[0]?.axisValue; - return `${axisValue} ${params[0]?.value || 0}`; - } - } - }); - - // init chart - useEffect(() => { - if (!Dom.current || myChart?.current?.getOption() || !visible) return; - myChart.current = echarts.init(Dom.current); - myChart.current && myChart.current.setOption(option.current); - }, [Dom, visible]); - - // data changed, update - useEffect(() => { - if (!myChart.current || !myChart?.current?.getOption() || !visible) return; - option.current.xAxis.data = xData; - option.current.series[0].data = yData; - myChart.current.setOption(option.current); - }, [xData, yData, visible]); - - // type changed, update - useEffect(() => { - if (!myChart.current || !myChart?.current?.getOption()) return; - option.current.series[0] = { - ...option.current.series[0], - ...optionStyle - }; - myChart.current.setOption(option.current); - }, [optionStyle]); - - // resize chart - useEffect(() => { - if (!myChart.current || !myChart.current.getOption()) return; - myChart.current.resize(); - }, [screenWidth]); - - useEffect(() => { - if (!Dom.current || !visible) return; - - resizeObserver.current = new ResizeObserver((entries) => { - const entry = entries[0]; - if (entry?.contentRect && myChart.current) { - if (entry.contentRect.width > 0 && entry.contentRect.height > 0) { - myChart.current.resize(); - } - } - }); - - resizeObserver.current.observe(Dom.current); - - return () => { - resizeObserver.current?.disconnect(); - }; - }, [visible]); - - useEffect(() => { - return () => { - if (myChart.current) { - myChart.current.dispose(); - } - resizeObserver.current?.disconnect(); - }; - }, []); - - return
; -}; - -export default LogBarChart; diff --git a/release-v5.1/database/src/components/MonitorChart/index.tsx b/release-v5.1/database/src/components/MonitorChart/index.tsx deleted file mode 100644 index 1f18cbe..0000000 --- a/release-v5.1/database/src/components/MonitorChart/index.tsx +++ /dev/null @@ -1,163 +0,0 @@ -import React, { useEffect, useMemo, useRef } from 'react'; -import * as echarts from 'echarts'; -import { useGlobalStore } from '@/store/global'; -import dayjs from 'dayjs'; -import { LineStyleMap } from '@/constants/monitor'; -import { Flex } from '@chakra-ui/react'; - -type MonitorChart = { - data: { - xData: string[]; - yData: { - name: string; - type: string; - data: number[]; - lineStyleType?: string; - }[]; - }; - type?: 'blue' | 'deepBlue' | 'green' | 'purple'; - title: string; - yAxisLabelFormatter?: (value: number) => string; - yDataFormatter?: (values: number[]) => number[]; - unit?: string; -}; - -const MonitorChart = ({ - type, - data, - title, - yAxisLabelFormatter, - yDataFormatter, - unit -}: MonitorChart) => { - const { screenWidth } = useGlobalStore(); - const chartDom = useRef(null); - const myChart = useRef(); - - const option = useMemo( - () => ({ - tooltip: { - trigger: 'axis', - formatter: (params: any) => { - let axisValue = params[0]?.axisValue; - const content = params - .map( - (item: any) => - `${item?.marker} ${item?.seriesName}   ${ - item?.value - }${unit ? unit : ''}
` - ) - .join(''); - const str = axisValue + '
' + content; - return str; - }, - // @ts-ignore - position: (point, params, dom, rect, size) => { - let xPos = point[0]; - let yPos = point[1] + 10; - let chartWidth = size.viewSize[0]; - let chartHeight = size.viewSize[1]; - let tooltipWidth = dom.offsetWidth; - let tooltipHeight = dom.offsetHeight; - - if (xPos + tooltipWidth > chartWidth) { - xPos = xPos - tooltipWidth; - } - - if (xPos < 0) { - xPos = 0; - } - - return [xPos, yPos]; - } - }, - grid: { - left: '0', - bottom: '4px', - top: '10px', - right: '0', - containLabel: true - }, - xAxis: { - show: true, - type: 'category', - offset: 4, - boundaryGap: false, - axisLabel: { - interval: 10, - textStyle: { - color: '#667085' - } - }, - axisTick: { - show: false - }, - axisLine: { - lineStyle: { - color: 'rgba(0, 0, 0, 0)' - } - }, - data: data?.xData?.map((time) => dayjs(parseFloat(time) * 1000).format('HH:mm')) - }, - yAxis: { - type: 'value', - splitNumber: 2, - boundaryGap: false, - axisLabel: { - formatter: yAxisLabelFormatter - } - }, - series: data?.yData?.map((item, index) => { - return { - name: item.name, - data: item.data, - type: 'line', - // smooth: true, - showSymbol: false, - animationDuration: 300, - animationEasingUpdate: 'linear', - areaStyle: { - color: LineStyleMap[index % LineStyleMap.length].backgroundColor - }, - lineStyle: { - width: '1', - color: LineStyleMap[index % LineStyleMap.length].lineColor, - type: item?.lineStyleType || 'solid' - }, - itemStyle: { - width: 1.5, - color: LineStyleMap[index % LineStyleMap.length].lineColor - }, - emphasis: { - // highlight - disabled: true - } - }; - }) - }), - [data?.xData, data?.yData] - ); - - // init chart - useEffect(() => { - if (!chartDom.current || myChart?.current?.getOption()) return; - myChart.current = echarts.init(chartDom.current); - myChart.current && myChart.current.setOption(option); - }, [chartDom, option]); - - // data changed, update - useEffect(() => { - if (!myChart.current || !myChart?.current?.getOption()) return; - myChart.current.setOption(option); - }, [data, option]); - - // resize chart - useEffect(() => { - if (!myChart.current || !myChart.current.getOption()) return; - myChart.current.resize(); - }, [screenWidth]); - - return ; -}; - -export default MonitorChart; diff --git a/release-v5.1/database/src/components/MyTooltip/index.tsx b/release-v5.1/database/src/components/MyTooltip/index.tsx deleted file mode 100644 index d51261c..0000000 --- a/release-v5.1/database/src/components/MyTooltip/index.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import React from 'react'; -import { Tooltip, TooltipProps } from '@chakra-ui/react'; - -const MyTooltip = ({ children, ...props }: TooltipProps) => { - return ( - - {children} - - ); -}; - -export default MyTooltip; diff --git a/release-v5.1/database/src/components/RangeDate/index.tsx b/release-v5.1/database/src/components/RangeDate/index.tsx deleted file mode 100644 index fb4047c..0000000 --- a/release-v5.1/database/src/components/RangeDate/index.tsx +++ /dev/null @@ -1,60 +0,0 @@ -import { CalendarIcon } from '@chakra-ui/icons'; -import { Box, Button, Popover, PopoverContent, PopoverTrigger, useTheme } from '@chakra-ui/react'; -import { format } from 'date-fns'; -import { useState } from 'react'; -import { DateRange, DayPicker } from 'react-day-picker'; -import 'react-day-picker/dist/style.css'; - -export default function RangeDate({ - isDisabled = false, - defaultRange = { from: new Date(), to: new Date() } -}: { - isDisabled?: boolean; - defaultRange?: DateRange; -}) { - const [selectedRange, setSelectedRange] = useState(defaultRange); - - const onClose = () => {}; - - return ( - - - - - - { - if (e) { - setSelectedRange(e); - } else { - setSelectedRange((state) => ({ - from: state.from, - to: state.from - })); - } - }} - /> - - - ); -} diff --git a/release-v5.1/database/src/components/RangeDate/style.module.scss b/release-v5.1/database/src/components/RangeDate/style.module.scss deleted file mode 100644 index e69de29..0000000 diff --git a/release-v5.1/database/src/components/RangeSlider/index.tsx b/release-v5.1/database/src/components/RangeSlider/index.tsx deleted file mode 100644 index 20a33dd..0000000 --- a/release-v5.1/database/src/components/RangeSlider/index.tsx +++ /dev/null @@ -1,84 +0,0 @@ -import React, { useState } from 'react'; -import { - RangeSlider, - RangeSliderTrack, - RangeSliderFilledTrack, - RangeSliderThumb, - Box -} from '@chakra-ui/react'; - -const MyRangeSlider = ({ - value, - max = 100, - min = 0, - step = 1, - setVal -}: { - value: [number, number]; - setVal: (index: [number, number]) => void; - max?: number; - min?: number; - step?: number; -}) => { - const startEndPointStyle = { - content: '""', - borderRadius: '8px', - width: '8px', - height: '8px', - backgroundColor: '#ffffff', - border: '2px solid #D7DBE2', - position: 'absolute', - zIndex: 1, - top: 0, - transform: 'translateY(-4px)' - }; - - const startEndValStyle = { - position: 'absolute' as const, - top: '10px' - }; - - return ( - - - - {min} - - - {max} - - - - - {value[0] === min ? '' : value[0]} - - - {value[1] === max ? '' : value[1]} - - - ); -}; - -export default MyRangeSlider; diff --git a/release-v5.1/database/src/components/Textarea/TagTextarea.tsx b/release-v5.1/database/src/components/Textarea/TagTextarea.tsx deleted file mode 100644 index 1dfa13b..0000000 --- a/release-v5.1/database/src/components/Textarea/TagTextarea.tsx +++ /dev/null @@ -1,112 +0,0 @@ -import { Box, BoxProps, Flex, Input, Tag, TagCloseButton, TagLabel } from '@chakra-ui/react'; -import { useMessage } from '@sealos/ui'; -import { useTranslation } from 'next-i18next'; -import { useCallback, useRef, useState } from 'react'; - -type Props = BoxProps & { defaultValues: string[]; onUpdate: (e: string[]) => void }; - -const TagTextarea = ({ defaultValues, onUpdate, ...props }: Props) => { - const InputRef = useRef(null); - const { t } = useTranslation(); - const { message: toast } = useMessage(); - const [focus, setFocus] = useState(false); - const [tags, setTags] = useState(defaultValues); - - const onUpdateValue = useCallback( - (value?: string, type: 'create' | 'delete' = 'create') => { - setFocus(false); - if (type === 'create') { - if (!value || !InputRef.current?.value) { - return; - } - if (tags.includes(value)) { - return toast({ - status: 'info', - title: t('common.input.Repeat Value'), - position: 'top', - duration: 2000 - }); - } - setTags([...tags, value]); - onUpdate([...tags, value]); - InputRef.current.value = ''; - } else { - if (tags.length === 0) { - return toast({ - status: 'info', - title: t('common.input.No Elements to Delete'), - position: 'top', - duration: 2000 - }); - } - // Delete the last element - tags.pop(); - setTags(tags); - onUpdate(tags); - } - }, - [onUpdate, t, tags, toast] - ); - - return ( - { - if (!focus) { - InputRef.current?.focus(); - setFocus(true); - } - }} - > - - {tags.map((tag, i) => ( - e.stopPropagation()}> - {tag} - { - const val = tags.filter((_, index) => index !== i); - setTags(val); - onUpdate(val); - }} - /> - - ))} - { - const value = e.target.value; - onUpdateValue(value); - }} - onKeyDown={(e) => { - if (e.keyCode === 13) { - e.preventDefault(); - onUpdateValue(InputRef.current?.value); - } - if (e.keyCode === 8 && InputRef.current?.value === '') { - e.preventDefault(); - onUpdateValue(InputRef.current?.value, 'delete'); - } - }} - /> - - - ); -}; - -export default TagTextarea; diff --git a/release-v5.1/database/src/components/Tip/index.tsx b/release-v5.1/database/src/components/Tip/index.tsx deleted file mode 100644 index ef8c63c..0000000 --- a/release-v5.1/database/src/components/Tip/index.tsx +++ /dev/null @@ -1,67 +0,0 @@ -import React, { useMemo } from 'react'; -import { BoxProps, Flex, Box } from '@chakra-ui/react'; -import { useTranslation } from 'next-i18next'; -import { I18nCommonKey } from '@/types/i18next'; - -interface Props extends BoxProps { - text: I18nCommonKey; - icon?: JSX.Element; - theme?: 'blue'; - size?: 'sm' | 'md' | 'lg'; -} - -const Tip = ({ size = 'md', text, icon, theme, ...props }: Props) => { - const { t } = useTranslation(); - - const sizeMap = useMemo(() => { - switch (size) { - case 'sm': - return { - fontSize: '12px', - px: 3, - py: 1 - }; - case 'md': - return { - fontSize: '14px', - px: 4, - py: 2 - }; - case 'lg': - return { - fontSize: '16px', - px: 5, - py: 2 - }; - default: - return {}; - } - }, [size]); - const themeMap = useMemo(() => { - switch (theme) { - case 'blue': - return { - color: '#0884DD', - bg: '#ECF8FF' - }; - default: - return { - color: '#0884DD', - bg: '#ECF8FF' - }; - } - }, [theme]); - - return ( - - {icon ? ( - - {icon} - - ) : null} - {t(text)} - - ); -}; - -export default Tip; diff --git a/release-v5.1/database/src/components/YamlCode/hljs.ts b/release-v5.1/database/src/components/YamlCode/hljs.ts deleted file mode 100644 index 796b2e0..0000000 --- a/release-v5.1/database/src/components/YamlCode/hljs.ts +++ /dev/null @@ -1,121 +0,0 @@ -export const codeTheme = { - hljs: { - display: 'block', - overflowX: 'auto', - color: '#2f3337' - }, - linenumber: { - minWidth: '2em' - }, - 'hljs-comment': { - color: '#656e77' - }, - comment: { - color: '#A19F9D' - }, - 'hljs-keyword': { - color: '#0770BC' - }, - 'hljs-selector-tag': { - color: '#0770BC' - }, - 'hljs-meta-keyword': { - color: '#0770BC' - }, - 'hljs-doctag': { - color: '#0770BC' - }, - 'hljs-section': { - color: '#0770BC' - }, - 'hljs-selector-class': { - color: '#0770BC' - }, - 'hljs-meta': { - color: '#0770BC' - }, - 'hljs-selector-pseudo': { - color: '#0770BC' - }, - 'hljs-attr': { - color: '#0770BC' - }, - 'hljs-attribute': { - color: '#803378' - }, - 'hljs-name': { - color: '#b75501' - }, - 'hljs-type': { - color: '#b75501' - }, - 'hljs-number': { - color: '#b75501' - }, - 'hljs-selector-id': { - color: '#b75501' - }, - 'hljs-quote': { - color: '#b75501' - }, - 'hljs-template-tag': { - color: '#b75501' - }, - 'hljs-built_in': { - color: '#b75501' - }, - 'hljs-title': { - color: '#b75501' - }, - 'hljs-literal': { - color: '#b75501' - }, - 'hljs-string': { - color: '#9E53C1' - }, - 'hljs-regexp': { - color: '#9E53C1' - }, - 'hljs-symbol': { - color: '#9E53C1' - }, - 'hljs-variable': { - color: '#9E53C1' - }, - 'hljs-template-variable': { - color: '#9E53C1' - }, - 'hljs-link': { - color: '#9E53C1' - }, - 'hljs-selector-attr': { - color: '#9E53C1' - }, - 'hljs-meta-string': { - color: '#9E53C1' - }, - 'hljs-bullet': { - color: '#535a60' - }, - 'hljs-code': { - color: '#535a60' - }, - 'hljs-deletion': { - color: '#c02d2e' - }, - 'hljs-addition': { - color: '#2f6f44' - }, - 'hljs-emphasis': { - fontStyle: 'italic' - }, - 'hljs-strong': { - fontWeight: 'bold' - }, - '-webkit-touch-callout': 'none' /* iOS Safari */, - '-webkit-user-select': 'none' /* Safari */, - '-khtml-user-select': 'none' /* Konqueror HTML */, - '-moz-user-select': 'none' /* Old versions of Firefox */, - '-ms-user-select': 'none' /* Internet Explorer/Edge */, - 'user-select': 'none' /* Non-prefixed version, currently supported by Chrome, Opera and Firefox */ -}; diff --git a/release-v5.1/database/src/components/YamlCode/index.module.scss b/release-v5.1/database/src/components/YamlCode/index.module.scss deleted file mode 100644 index 883b64a..0000000 --- a/release-v5.1/database/src/components/YamlCode/index.module.scss +++ /dev/null @@ -1,6 +0,0 @@ -.markdown { - height: '100%'; - div { - overflow: visible !important; - } -} diff --git a/release-v5.1/database/src/components/YamlCode/index.tsx b/release-v5.1/database/src/components/YamlCode/index.tsx deleted file mode 100644 index b42655b..0000000 --- a/release-v5.1/database/src/components/YamlCode/index.tsx +++ /dev/null @@ -1,46 +0,0 @@ -import { useMemo } from 'react'; -import ReactMarkdown from 'react-markdown'; -import SyntaxHighlighter from 'react-syntax-highlighter'; -import { codeTheme } from './hljs'; -import styles from './index.module.scss'; - -type TMarkDown = { - content: string; - [key: string]: any; -}; - -const YamlCode = ({ content, ...props }: TMarkDown) => { - const code = useMemo(() => '```yaml\n' + content + '```', [content]); - - return ( - - ) : ( - - {children} - - ); - } - }} - /> - ); -}; - -export default YamlCode; diff --git a/release-v5.1/database/src/config.ts b/release-v5.1/database/src/config.ts deleted file mode 100644 index 7603016..0000000 --- a/release-v5.1/database/src/config.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { AppConfig } from './types/config'; - -/** - * Get the global application configuration. - * Should only be used on the server side. - */ -export function Config(): Readonly { - if (typeof window !== 'undefined') { - throw new Error('[App Config] App config should only exist on the server side.'); - } - - const cfg = globalThis.__APP_CONFIG__; - if (!cfg) { - console.error('[App Config] config not initialized, this should not happen in normal flow.'); - process.exit(1); - } - - return cfg; -} diff --git a/release-v5.1/database/src/constants/dataflow.ts b/release-v5.1/database/src/constants/dataflow.ts deleted file mode 100644 index 88a55d0..0000000 --- a/release-v5.1/database/src/constants/dataflow.ts +++ /dev/null @@ -1,9 +0,0 @@ -export const DATAFLOW_APP_KEY = 'system-dataflow'; - -export const DATAFLOW_SUPPORTED_TYPES = new Set([ - 'postgresql', - 'apecloud-mysql', - 'mongodb', - 'redis', - 'clickhouse' -]); diff --git a/release-v5.1/database/src/constants/monitor.ts b/release-v5.1/database/src/constants/monitor.ts deleted file mode 100644 index 81429fa..0000000 --- a/release-v5.1/database/src/constants/monitor.ts +++ /dev/null @@ -1,34 +0,0 @@ -export const LineStyleMap = [ - { - backgroundColor: 'rgba(209, 244, 255, 0.3)', - lineColor: '#11B6FC' - }, - { - backgroundColor: 'rgba(255, 221, 252, 0.3)', - lineColor: '#8774EE' - }, - { - backgroundColor: 'rgba(254, 206, 255, 0.3)', - lineColor: '#C172E7' - }, - { - backgroundColor: 'rgba(199, 255, 248, 0.3)', - lineColor: '#13C4B9' - }, - { - backgroundColor: 'rgba(255, 224, 235, 0.3)', - lineColor: '#FF81AE' - }, - { - backgroundColor: 'rgba(255, 238, 231, 0.3)', - lineColor: '#FB6514' - }, - { - backgroundColor: 'rgba(255, 224, 224, 0.05)', - lineColor: '#F04438' - }, - { - backgroundColor: 'rgba(241, 255, 185, 0.3)', - lineColor: '#E7D435' - } -]; diff --git a/release-v5.1/database/src/hooks/driver.tsx b/release-v5.1/database/src/hooks/driver.tsx deleted file mode 100644 index 6bb54be..0000000 --- a/release-v5.1/database/src/hooks/driver.tsx +++ /dev/null @@ -1,364 +0,0 @@ -import { useGuideStore } from '@/store/guide'; -import { Flex, Text, Box, Center, Image } from '@chakra-ui/react'; -import { driver } from '@labring/sealos-driver-sdk'; -import { Config } from '@labring/sealos-driver-sdk/src/config'; -import { track } from '@labring/sealos-gtm-sdk'; -import { CircleCheckBig, X } from 'lucide-react'; -import { TFunction } from 'next-i18next'; -import { sealosApp } from '@labring/sealos-desktop-sdk/app'; - -let currentDriver: any = null; - -export function startDriver(config: Config) { - if (currentDriver) { - currentDriver.destroy(); - currentDriver = null; - } - - if (!useGuideStore.getState().startTimeMs) { - useGuideStore.setState({ - startTimeMs: Date.now() - }); - } - - const driverObj = driver(config); - currentDriver = driverObj; - driverObj.drive(); - - return driverObj; -} - -export const applistDriverObj = (t: TFunction, nextStep?: () => void): Config => ({ - onPopoverRender() { - useGuideStore.setState({ - startTimeMs: Date.now() - }); - }, - - showProgress: true, - allowClose: false, - allowClickMaskNextStep: false, - isShowButtons: false, - allowKeyboardControl: false, - disableActiveInteraction: false, - overlayColor: 'transparent', - - steps: [ - { - element: '.create-app-btn', - popover: { - side: 'left', - align: 'start', - borderRadius: '12px 12px 12px 12px', - - PopoverBody: ( - - - - {t('driver.access_database')} - - { - track('guide_exit', { - module: 'guide', - guide_name: 'database', - duration_seconds: - (Date.now() - (useGuideStore.getState().startTimeMs ?? Date.now())) / 1000, - progress_step: 2 - }); - - startDriver(quitGuideDriverObj(t)); - }} - > - - - - - {t('driver.define_settings')} - - - - 2/4 - -
{ - currentDriver.destroy(); - currentDriver = null; - nextStep && nextStep(); - }} - > - {t('driver.next')} -
-
-
- ) - } - } - ], - onHighlightStarted: (element) => { - const el = element as any; - if (el) { - // 保存原始样式以便稍后恢复 - el._originalBorderRadius = el.style.borderRadius; - el._originalBorder = el.style.border; - el._originalOutline = el.style.outline; - - // 应用新的边框样式 - el.style.borderRadius = '8px'; - el.style.outline = '2px solid #1C4EF5'; - el.style.outlineOffset = '2px'; - - el.addEventListener( - 'click', - () => { - if (currentDriver) { - currentDriver.destroy(); - currentDriver = null; - } - }, - { once: true } - ); - } - }, - onDeselected: (element?: Element) => { - if (element) { - const el = element as any; - el.style.borderRadius = el._originalBorderRadius || ''; - el.style.border = el._originalBorder || ''; - el.style.outline = ''; - el.style.outlineOffset = ''; - } - }, - onHighlighted: (element?: Element) => { - const event = new Event('resize'); - window.dispatchEvent(event); - }, - onDestroyed: () => { - useGuideStore.getState().setApplistCompleted(true); - } -}); - -export const detailDriverObj = (t: TFunction): Config => ({ - showProgress: true, - allowClose: false, - allowClickMaskNextStep: true, - isShowButtons: false, - allowKeyboardControl: false, - disableActiveInteraction: true, - overlayColor: 'transparent', - - steps: [ - { - element: '#network-detail', - popover: { - side: 'right', - align: 'center', - borderRadius: '12px 12px 12px 12px', - PopoverBody: ( - - - - {t('driver.manage_database')} - - { - track('guide_exit', { - module: 'guide', - guide_name: 'database', - duration_seconds: - (Date.now() - (useGuideStore.getState().startTimeMs ?? Date.now())) / 1000, - progress_step: 4 - }); - startDriver(quitGuideDriverObj(t)); - }} - > - - - - - {t('driver.connection_details')} - - - {t('driver.click_anywhere')} - - - - 4/4 - -
{ - track('guide_complete', { - module: 'guide', - guide_name: 'database', - duration_seconds: - (Date.now() - (useGuideStore.getState().startTimeMs ?? Date.now())) / 1000 - }); - - startDriver(quitGuideDriverObj(t)); - }} - > - {t('driver.next')} -
-
-
- ) - } - } - ], - onHighlightStarted: (element) => { - const el = element as any; - if (el) { - el.style.borderRadius = '8px'; - el.style.border = '1.5px solid #1C4EF5'; - - el.addEventListener( - 'click', - (e: any) => { - if (currentDriver) { - currentDriver.destroy(); - currentDriver = null; - } - }, - { once: true } - ); - } - }, - onHighlighted: (element?: Element) => { - const event = new Event('resize'); - window.dispatchEvent(event); - }, - onDeselected: (element?: Element) => { - if (element) { - const el = element as any; - el.style.borderRadius = ''; - el.style.border = ''; - } - }, - onDestroyed: () => { - console.log('onDestroyed detailDriverObj'); - useGuideStore.getState().setDetailCompleted(true); - startDriver(quitGuideDriverObj(t)); - } -}); - -export const quitGuideDriverObj = (t: TFunction, nextStep?: () => void): Config => ({ - showProgress: false, - allowClose: false, - allowClickMaskNextStep: false, - isShowButtons: false, - allowKeyboardControl: false, - disableActiveInteraction: true, - overlayColor: 'transparent', - - steps: [ - { - popover: { - side: 'bottom', - align: 'end', - PopoverBody: ( - - - - - - - - {t('driver.still_here')} - - - {t('driver.find_guide_tip')} - - guide - -
{ - if (currentDriver) { - currentDriver.destroy(); - currentDriver = null; - } - window.location.href = '/'; - }} - > - {t('driver.create_db')} -
-
{ - if (currentDriver) { - currentDriver.destroy(); - currentDriver = null; - } - sealosApp.runEvents('quitGuide', { - appKey: 'system-dbprovider', - pathname: '/', - messageData: { type: 'InternalAppCall', action: 'quitGuide' } - }); - }} - > - {t('driver.quit_guide')} -
-
-
- ) - } - } - ], - onHighlightStarted: (element) => { - const el = element as any; - if (el) { - el._originalBorderRadius = el.style.borderRadius; - el._originalBorder = el.style.border; - el.style.borderRadius = '8px'; - el.style.border = '1.5px solid #1C4EF5'; - } - }, - onDeselected: (element?: Element) => { - if (element) { - const el = element as any; - el.style.borderRadius = el._originalBorderRadius || ''; - el.style.border = el._originalBorder || ''; - } - }, - onDestroyed: () => { - console.log('onDestroyed quitGuideDriverObj'); - useGuideStore.getState().resetGuideState(true); - } -}); diff --git a/release-v5.1/database/src/hooks/useClientSideValue.tsx b/release-v5.1/database/src/hooks/useClientSideValue.tsx deleted file mode 100644 index d8de567..0000000 --- a/release-v5.1/database/src/hooks/useClientSideValue.tsx +++ /dev/null @@ -1,11 +0,0 @@ -import { useEffect, useState } from 'react'; - -export function useClientSideValue(defaultValue: boolean): boolean { - const [isClient, setIsClient] = useState(false); - - useEffect(() => { - setIsClient(true); - }, []); - - return isClient ? defaultValue : false; -} diff --git a/release-v5.1/database/src/hooks/useConfirm.tsx b/release-v5.1/database/src/hooks/useConfirm.tsx deleted file mode 100644 index 4b763e5..0000000 --- a/release-v5.1/database/src/hooks/useConfirm.tsx +++ /dev/null @@ -1,82 +0,0 @@ -import { useCallback, useRef } from 'react'; -import { - AlertDialog, - AlertDialogBody, - AlertDialogFooter, - AlertDialogHeader, - AlertDialogContent, - AlertDialogOverlay, - useDisclosure, - Button -} from '@chakra-ui/react'; -import { useTranslation } from 'next-i18next'; -import { I18nCommonKey } from '@/types/i18next'; - -export const useConfirm = ({ - title = 'prompt', - content, - confirmText = 'confirm' -}: { - title?: I18nCommonKey; - content: I18nCommonKey; - confirmText?: I18nCommonKey; -}) => { - const { isOpen, onOpen, onClose } = useDisclosure(); - const { t } = useTranslation(); - const cancelRef = useRef(null); - const confirmCb = useRef(); - const cancelCb = useRef(); - - return { - openConfirm: useCallback( - (confirm?: any, cancel?: any) => { - return function () { - onOpen(); - confirmCb.current = confirm; - cancelCb.current = cancel; - }; - }, - [onOpen] - ), - ConfirmChild: useCallback( - () => ( - - - - - {t(title)} - - - -
-
- - - - - -
-
-
- ), - [confirmText, content, isOpen, onClose, t, title] - ) - }; -}; diff --git a/release-v5.1/database/src/hooks/useLoading.tsx b/release-v5.1/database/src/hooks/useLoading.tsx deleted file mode 100644 index 6e3af10..0000000 --- a/release-v5.1/database/src/hooks/useLoading.tsx +++ /dev/null @@ -1,40 +0,0 @@ -import { useState, useCallback } from 'react'; -import { Spinner, Flex } from '@chakra-ui/react'; - -export const useLoading = (props?: { defaultLoading: boolean }) => { - const [isLoading, setIsLoading] = useState(props?.defaultLoading || false); - - const Loading = useCallback( - ({ loading, fixed = true }: { loading?: boolean; fixed?: boolean }): JSX.Element | null => { - return ( - - - - ); - }, - [isLoading] - ); - - return { - isLoading, - setIsLoading, - Loading - }; -}; diff --git a/release-v5.1/database/src/hooks/useScreen.ts b/release-v5.1/database/src/hooks/useScreen.ts deleted file mode 100644 index 79af2c5..0000000 --- a/release-v5.1/database/src/hooks/useScreen.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { useState, useEffect } from 'react'; -import { throttle } from 'lodash'; - -export function useScreen() { - const [screenWidth, setScreenWidth] = useState(1440); - - useEffect(() => { - const resize = throttle(() => { - const w = document.documentElement.clientWidth; - setScreenWidth(w); - }, 300); - window.addEventListener('resize', resize); - - const w = document.documentElement.clientWidth; - setScreenWidth(w); - - return () => { - window.removeEventListener('resize', resize); - }; - }, []); - - return { - screenWidth - }; -} diff --git a/release-v5.1/database/src/instrumentation.ts b/release-v5.1/database/src/instrumentation.ts deleted file mode 100644 index 4938497..0000000 --- a/release-v5.1/database/src/instrumentation.ts +++ /dev/null @@ -1,30 +0,0 @@ -export async function register() { - if (process.env.NEXT_RUNTIME === 'nodejs') { - const { readFileSync } = await import('fs'); - const { readConfig, mountToGlobalThis, prettyPrintErrors } = await import( - '@labring/sealos-shared-sdk/server/config' - ); - const { AppConfigSchema } = await import('./types/config'); - - const configPath = - process.env.NODE_ENV === 'development' ? 'data/config.local.yaml' : '/app/data/config.yaml'; - - try { - const configText = readFileSync(configPath, 'utf-8'); - const result = await readConfig(configText, AppConfigSchema as any); - - if (result.error) { - console.error('[Instrumentation Hook] Configuration validation failed:'); - console.error(prettyPrintErrors(result.error.details)); - process.exit(1); - } - - mountToGlobalThis('__APP_CONFIG__', result.data); - console.log('[Instrumentation Hook] Configuration loaded.'); - } catch (err) { - // nosemgrep: unsafe-formatstring - console.error(`[Instrumentation Hook] Failed to load config file from ${configPath}:`, err); - process.exit(1); - } - } -} diff --git a/release-v5.1/database/src/pages/404.tsx b/release-v5.1/database/src/pages/404.tsx deleted file mode 100644 index 71e1506..0000000 --- a/release-v5.1/database/src/pages/404.tsx +++ /dev/null @@ -1,13 +0,0 @@ -import React, { useEffect } from 'react'; -import { useRouter } from 'next/router'; - -const NonePage = () => { - const router = useRouter(); - useEffect(() => { - router.push('/dbs'); - }, [router]); - - return
; -}; - -export default NonePage; diff --git a/release-v5.1/database/src/pages/_document.tsx b/release-v5.1/database/src/pages/_document.tsx deleted file mode 100644 index 196bb12..0000000 --- a/release-v5.1/database/src/pages/_document.tsx +++ /dev/null @@ -1,21 +0,0 @@ -import { Html, Head, Main, NextScript } from 'next/document'; - -export default function Document() { - return ( - - - - - - - - - - - -
- - - - ); -} diff --git a/release-v5.1/database/src/pages/db/detail/components/Migrate/empty.module.scss b/release-v5.1/database/src/pages/db/detail/components/Migrate/empty.module.scss deleted file mode 100644 index 6f8eed0..0000000 --- a/release-v5.1/database/src/pages/db/detail/components/Migrate/empty.module.scss +++ /dev/null @@ -1,6 +0,0 @@ -.empty { - width: 100%; - height: 100%; - background-color: #fff; - user-select: none; -} diff --git a/release-v5.1/database/src/pages/db/detail/components/Migrate/empty.tsx b/release-v5.1/database/src/pages/db/detail/components/Migrate/empty.tsx deleted file mode 100644 index 38c3098..0000000 --- a/release-v5.1/database/src/pages/db/detail/components/Migrate/empty.tsx +++ /dev/null @@ -1,23 +0,0 @@ -import React from 'react'; -import { Box } from '@chakra-ui/react'; -import styles from './empty.module.scss'; -import MyIcon from '@/components/Icon'; -import { useTranslation } from 'next-i18next'; - -const Empty = () => { - const { t } = useTranslation(); - return ( - - - {t('no_logs_for_now')} - - ); -}; - -export default Empty; diff --git a/release-v5.1/database/src/pages/db/detail/components/StopBackupModal.tsx b/release-v5.1/database/src/pages/db/detail/components/StopBackupModal.tsx deleted file mode 100644 index a455861..0000000 --- a/release-v5.1/database/src/pages/db/detail/components/StopBackupModal.tsx +++ /dev/null @@ -1,133 +0,0 @@ -import { useTranslation } from 'next-i18next'; -import { useRef } from 'react'; -import { - Box, - Flex, - AlertDialog, - AlertDialogBody, - AlertDialogContent, - AlertDialogFooter, - AlertDialogHeader, - AlertDialogOverlay, - Alert, - AlertIcon, - Badge, - Button, - CloseButton, - HStack, - Image, - Text, - VStack -} from '@chakra-ui/react'; - -const StopBackupModal = ({ - isOpen, - onClose, - onConfirm, - onCancel, - dbName -}: { - isOpen: boolean; - onClose: () => void; - onConfirm: () => void; - onCancel: () => void; - dbName: string; -}) => { - const { t } = useTranslation(); - const cancelRef = useRef(null); - - return ( - - - - - - {t('backups.stop_backup')} - - - - - - - - - - {t('backups.stop_backup_tip')} - - - - - - - Database} - /> - - - - Database - - - {t('backups.db_backup_running')} - - - - - {t('backups.backup_running')} - - - - - - - - - - - - - - - ); -}; - -export default StopBackupModal; diff --git a/release-v5.1/database/src/pages/db/detail/components/empty.module.scss b/release-v5.1/database/src/pages/db/detail/components/empty.module.scss deleted file mode 100644 index 6f8eed0..0000000 --- a/release-v5.1/database/src/pages/db/detail/components/empty.module.scss +++ /dev/null @@ -1,6 +0,0 @@ -.empty { - width: 100%; - height: 100%; - background-color: #fff; - user-select: none; -} diff --git a/release-v5.1/database/src/pages/db/detail/components/empty.tsx b/release-v5.1/database/src/pages/db/detail/components/empty.tsx deleted file mode 100644 index 38c3098..0000000 --- a/release-v5.1/database/src/pages/db/detail/components/empty.tsx +++ /dev/null @@ -1,23 +0,0 @@ -import React from 'react'; -import { Box } from '@chakra-ui/react'; -import styles from './empty.module.scss'; -import MyIcon from '@/components/Icon'; -import { useTranslation } from 'next-i18next'; - -const Empty = () => { - const { t } = useTranslation(); - return ( - - - {t('no_logs_for_now')} - - ); -}; - -export default Empty; diff --git a/release-v5.1/database/src/pages/db/detail/index.module.scss b/release-v5.1/database/src/pages/db/detail/index.module.scss deleted file mode 100644 index cd35731..0000000 --- a/release-v5.1/database/src/pages/db/detail/index.module.scss +++ /dev/null @@ -1,55 +0,0 @@ -.logs { - ::-webkit-scrollbar { - width: 10px; - height: 10px; - border-radius: 2px; - } - ::-webkit-scrollbar-track { - border-radius: 2px; - } - ::-webkit-scrollbar-thumb { - background: #bfbfbf; - border-radius: 2px; - } - ::-webkit-scrollbar-thumb:hover { - background: #999; - } -} - -.analysesAnimation::after { - display: inline-block; - content: ''; - width: 4px; - height: 14px; - transform: translate(4px, 2px) scaleY(1.3); - background-color: var(--chakra-colors-chakra-body-text); - animation: blink 0.6s infinite; -} -.textEllipsis { - text-overflow: ellipsis; - white-space: nowrap; - overflow: hidden; -} - -@keyframes blink { - from, - to { - opacity: 0; - } - 50% { - opacity: 1; - } -} - -.load { - animation: loading linear 1s infinite; -} - -@keyframes loading { - 0% { - transform: rotate(0deg); - } - 100% { - transform: rotate(360deg); - } -} diff --git a/release-v5.1/database/src/pages/db/edit/components/index.module.scss b/release-v5.1/database/src/pages/db/edit/components/index.module.scss deleted file mode 100644 index 9000ac3..0000000 --- a/release-v5.1/database/src/pages/db/edit/components/index.module.scss +++ /dev/null @@ -1,49 +0,0 @@ -.codeBox { - .code { - height: 100%; - div { - background-color: transparent !important; - padding: 0 5px 0 0 !important; - } - * { - word-wrap: break-all !important; - } - } -} - -.deleteIcon svg { - fill: #8f949a; - &:hover { - fill: #d92a2a; - } -} - -.formSecondTitle { - color: #333333; - font-size: 16px; - font-weight: bold; - margin-bottom: 10px; -} -.textEllipsis { - text-overflow: ellipsis; - white-space: nowrap; - overflow: hidden; -} -.table { - border-radius: 2px; - overflow: hidden; - table-layout: fixed; - width: 100%; - - th { - border: 1px solid #eff0f1; - text-align: left; - padding: 8px; - user-select: all; - font-weight: 500; - } - - tr:nth-child(even) { - background-color: #fbfbfc; - } -} diff --git a/release-v5.1/database/src/pages/db/edit/index.module.scss b/release-v5.1/database/src/pages/db/edit/index.module.scss deleted file mode 100644 index 9cc41be..0000000 --- a/release-v5.1/database/src/pages/db/edit/index.module.scss +++ /dev/null @@ -1,3 +0,0 @@ -.appEdit { - $bgColor: #f7f8fa; -} diff --git a/release-v5.1/database/src/pages/db/migrate/components/index.module.scss b/release-v5.1/database/src/pages/db/migrate/components/index.module.scss deleted file mode 100644 index 9000ac3..0000000 --- a/release-v5.1/database/src/pages/db/migrate/components/index.module.scss +++ /dev/null @@ -1,49 +0,0 @@ -.codeBox { - .code { - height: 100%; - div { - background-color: transparent !important; - padding: 0 5px 0 0 !important; - } - * { - word-wrap: break-all !important; - } - } -} - -.deleteIcon svg { - fill: #8f949a; - &:hover { - fill: #d92a2a; - } -} - -.formSecondTitle { - color: #333333; - font-size: 16px; - font-weight: bold; - margin-bottom: 10px; -} -.textEllipsis { - text-overflow: ellipsis; - white-space: nowrap; - overflow: hidden; -} -.table { - border-radius: 2px; - overflow: hidden; - table-layout: fixed; - width: 100%; - - th { - border: 1px solid #eff0f1; - text-align: left; - padding: 8px; - user-select: all; - font-weight: 500; - } - - tr:nth-child(even) { - background-color: #fbfbfc; - } -} diff --git a/release-v5.1/database/src/pages/db/migrate/index.module.scss b/release-v5.1/database/src/pages/db/migrate/index.module.scss deleted file mode 100644 index 9cc41be..0000000 --- a/release-v5.1/database/src/pages/db/migrate/index.module.scss +++ /dev/null @@ -1,3 +0,0 @@ -.appEdit { - $bgColor: #f7f8fa; -} diff --git a/release-v5.1/database/src/pages/dbs/components/empty.module.scss b/release-v5.1/database/src/pages/dbs/components/empty.module.scss deleted file mode 100644 index 16f608d..0000000 --- a/release-v5.1/database/src/pages/dbs/components/empty.module.scss +++ /dev/null @@ -1,11 +0,0 @@ -.empty { - width: 100vw; - height: 100vh; - background-color: #fff; - user-select: none; - - .antBtn { - margin-top: 40px; - width: 155px; - } -} diff --git a/release-v5.1/database/src/pages/dbs/index.module.scss b/release-v5.1/database/src/pages/dbs/index.module.scss deleted file mode 100644 index e69de29..0000000 diff --git a/release-v5.1/database/src/services/kubernet.ts b/release-v5.1/database/src/services/kubernet.ts deleted file mode 100644 index 1990ffd..0000000 --- a/release-v5.1/database/src/services/kubernet.ts +++ /dev/null @@ -1,9 +0,0 @@ -export interface ApiResp { - code: number; - message: string; - data?: T; -} - -const isApiResp = (x: any): x is ApiResp => - typeof x.code === 'number' && typeof x.message === 'string'; -export { isApiResp }; diff --git a/release-v5.1/database/src/store/global.ts b/release-v5.1/database/src/store/global.ts deleted file mode 100644 index c638165..0000000 --- a/release-v5.1/database/src/store/global.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { create } from 'zustand'; -import { devtools } from 'zustand/middleware'; -import { immer } from 'zustand/middleware/immer'; - -type State = { - screenWidth: number; - setScreenWidth: (e: number) => void; - loading: boolean; - setLoading: (val: boolean) => void; - lastRoute: string; - setLastRoute: (val: string) => void; -}; - -export const useGlobalStore = create()( - devtools( - immer((set, get) => ({ - screenWidth: 1440, - setScreenWidth(e: number) { - set((state) => { - state.screenWidth = e; - }); - }, - loading: false, - setLoading(val: boolean) { - set((state) => { - state.loading = val; - }); - }, - lastRoute: '/', - setLastRoute(val) { - set((state) => { - state.lastRoute = val; - }); - } - })) - ) -); diff --git a/release-v5.1/database/src/store/guide.ts b/release-v5.1/database/src/store/guide.ts deleted file mode 100644 index b62eb8b..0000000 --- a/release-v5.1/database/src/store/guide.ts +++ /dev/null @@ -1,48 +0,0 @@ -import { create } from 'zustand'; -import { persist, createJSONStorage } from 'zustand/middleware'; - -interface GuideState { - applistCompleted: boolean; - createCompleted: boolean; - detailCompleted: boolean; - appName: string; - startTimeMs: number | null; - _hasHydrated: boolean; - setCreateCompleted: (completed: boolean) => void; - setDetailCompleted: (completed: boolean) => void; - setApplistCompleted: (completed: boolean) => void; - resetGuideState: (completed: boolean) => void; - setAppName: (name: string) => void; - setHasHydrated: (state: boolean) => void; -} - -export const useGuideStore = create()( - persist( - (set) => ({ - applistCompleted: true, - createCompleted: true, - detailCompleted: true, - appName: '', - startTimeMs: null, - _hasHydrated: false, - setCreateCompleted: (completed) => set({ createCompleted: completed }), - setDetailCompleted: (completed) => set({ detailCompleted: completed }), - setApplistCompleted: (completed) => set({ applistCompleted: completed }), - resetGuideState: (completed) => - set({ - createCompleted: completed, - detailCompleted: completed, - applistCompleted: completed - }), - setAppName: (name) => set({ appName: name }), - setHasHydrated: (state) => set({ _hasHydrated: state }) - }), - { - name: 'user-guide', - storage: createJSONStorage(() => sessionStorage), - onRehydrateStorage: () => (state) => { - state?.setHasHydrated(true); - } - } - ) -); diff --git a/release-v5.1/database/src/store/hostConfig.ts b/release-v5.1/database/src/store/hostConfig.ts deleted file mode 100644 index 8e05adb..0000000 --- a/release-v5.1/database/src/store/hostConfig.ts +++ /dev/null @@ -1,36 +0,0 @@ -import type { HostConfig } from '@labring/sealos-desktop-sdk'; -import { create } from 'zustand'; - -type HostConfigState = { - currencySymbol: NonNullable; - subscriptionEnabled: boolean; - loadHostConfig: (getHostConfig: () => Promise) => Promise; -}; - -// One request per page lifetime, including concurrent callers and React effect replays. -// Host settings are intentionally kept in memory, never persisted in browser storage. -export const createHostConfigStore = () => { - let request: Promise | undefined; - return create((set) => ({ - currencySymbol: 'shellCoin', - subscriptionEnabled: true, - loadHostConfig: (getHostConfig) => { - if (!request) { - request = Promise.resolve() - .then(getHostConfig) - .then((config) => { - set({ - currencySymbol: config.currencySymbol ?? 'shellCoin', - subscriptionEnabled: config.features.subscription - }); - }) - .catch(() => { - set({ currencySymbol: 'shellCoin', subscriptionEnabled: true }); - }); - } - return request; - } - })); -}; - -export const useHostConfigStore = createHostConfigStore(); diff --git a/release-v5.1/database/src/styles/global.scss b/release-v5.1/database/src/styles/global.scss deleted file mode 100644 index ea3942b..0000000 --- a/release-v5.1/database/src/styles/global.scss +++ /dev/null @@ -1,34 +0,0 @@ -// date picker -div.rdp { - --rdp-cell-size: 30px; - --rdp-accent-color: black; - --rdp-background-color: #f4f6f8; - --rdp-outline: 2px solid var(--rdp-accent-color); - --rdp-outline-selected: 2px solid rgba(0, 0, 0, 0.75); - margin: 12px 16px 8px 16px; -} - -button.rdp-button_reset.rdp-button.rdp-day { - border-radius: 6px; -} - -button.rdp-day_today { - background-color: #dbf3ff; - color: #0884dd; -} - -button.rdp-button.rdp-day.rdp-day_range_middle { - border-radius: 0px; - background-color: #f4f4f7; - color: #111824; -} - -button.rdp-button.rdp-day.rdp-day_range_start { - background-color: #111824; - color: white; -} - -button.rdp-button.rdp-day.rdp-day_range_end { - background-color: #111824; - color: white; -} diff --git a/release-v5.1/database/src/styles/reset.scss b/release-v5.1/database/src/styles/reset.scss deleted file mode 100644 index 2ff8ed3..0000000 --- a/release-v5.1/database/src/styles/reset.scss +++ /dev/null @@ -1,191 +0,0 @@ -@import './global.scss'; - -body, -h1, -h2, -h3, -h4, -hr, -p, -blockquote, -dl, -dt, -dd, -ul, -ol, -li, -pre, -form, -fieldset, -legend, -button, -input, -textarea, -th, -td { - margin: 0; -} -body, -button, -input, -select, -textarea { - font: - 12px/1.5tahoma, - arial, - \5b8b\4f53; -} -// h1, h2, h3, h4, h5, h6{ font-size:100%; } -address, -cite, -dfn, -em, -var { - font-style: normal; -} - -small { - font-size: 12px; -} -ul, -ol { - list-style: none; - padding: 0; -} -a { - text-decoration: none; -} -a:hover { - text-decoration: underline; -} -sup { - vertical-align: text-top; -} -sub { - vertical-align: text-bottom; -} -legend { - color: #000; -} -fieldset, -img { - border: 0; -} -button, -input, -select, -textarea { - font-size: 100%; -} -table { - border-collapse: collapse; - border-spacing: 0; -} - -* { - box-sizing: border-box; -} - -.icon { - width: 1em; - height: 1em; - vertical-align: -0.15em; - fill: currentColor; - overflow: hidden; -} - -input::placeholder, -textarea::placeholder { - color: var(--chakra-colors-blackAlpha-400); -} - -#__next { - height: 100%; -} - -::-webkit-scrollbar, -::-webkit-scrollbar { - width: 8px; - height: 8px; - border-radius: 8px; -} -::-webkit-scrollbar-track, -::-webkit-scrollbar-track { - background: transparent !important; - border-radius: 2px; -} -::-webkit-scrollbar-thumb, -::-webkit-scrollbar-thumb { - background: rgba(189, 193, 197, 1) !important; - border-radius: 2px; -} -::-webkit-scrollbar-thumb:hover, -::-webkit-scrollbar-thumb:hover { - background: rgba(189, 193, 197, 1) !important; -} - -div { - &::-webkit-scrollbar-thumb, - &::-webkit-scrollbar-thumb { - background: transparent !important; - border-radius: 2px; - transition: 1s; - } - &:hover { - &::-webkit-scrollbar-thumb, - &::-webkit-scrollbar-thumb { - background: rgba(189, 193, 197, 0.5) !important; - } - &::-webkit-scrollbar-thumb:hover, - &::-webkit-scrollbar-thumb:hover { - background: rgba(189, 193, 197, 1) !important; - } - } -} - -#driver-popover-content { - border: none; - padding: 0px; - border-radius: 20px; - max-width: fit-content; - // position: absolute; - // top: 0px; - // left: 0px; -} - -.driver-popover-arrow-side-left { - border-right-color: transparent !important; - border-bottom-color: transparent !important; - border-top-color: transparent !important; - border-left-color: #2563eb !important; -} - -.driver-popover-arrow-side-right { - border-left-color: transparent !important; - border-bottom-color: transparent !important; - border-top-color: transparent !important; - border-right-color: #2563eb !important; -} - -.driver-popover-arrow-side-top { - border-right-color: transparent !important; - border-bottom-color: transparent !important; - border-left-color: transparent !important; - border-top-color: #2563eb !important; -} - -.driver-popover-arrow-side-bottom { - border-left-color: transparent !important; - border-top-color: transparent !important; - border-right-color: transparent !important; - border-bottom-color: #2563eb !important; -} - -.emp { - color: #f79009; -} - -/* Disable the scrolling of parent element if it has an active element*/ -:not(body):has(> .driver-active-element) { - overflow: visible !important; -} diff --git a/release-v5.1/database/src/types/apis/backup/delete-backup.ts b/release-v5.1/database/src/types/apis/backup/delete-backup.ts deleted file mode 100644 index b75dca3..0000000 --- a/release-v5.1/database/src/types/apis/backup/delete-backup.ts +++ /dev/null @@ -1,11 +0,0 @@ -import * as z from 'zod'; - -export const queryParams = z.object({ - backupName: z.string().min(1, 'Backup name is required') -}); - -export const response = z.object({ - code: z.number(), - message: z.string(), - data: z.any().optional() -}); diff --git a/release-v5.1/database/src/types/apis/database/delete-database.ts b/release-v5.1/database/src/types/apis/database/delete-database.ts deleted file mode 100644 index 72a3637..0000000 --- a/release-v5.1/database/src/types/apis/database/delete-database.ts +++ /dev/null @@ -1,10 +0,0 @@ -import * as z from 'zod'; - -export const pathParams = z.object({ - databaseName: z.string() -}); - -export const response = z.object({ - code: z.number(), - message: z.string() -}); diff --git a/release-v5.1/database/src/types/apis/database/pause-database.ts b/release-v5.1/database/src/types/apis/database/pause-database.ts deleted file mode 100644 index 72a3637..0000000 --- a/release-v5.1/database/src/types/apis/database/pause-database.ts +++ /dev/null @@ -1,10 +0,0 @@ -import * as z from 'zod'; - -export const pathParams = z.object({ - databaseName: z.string() -}); - -export const response = z.object({ - code: z.number(), - message: z.string() -}); diff --git a/release-v5.1/database/src/types/apis/database/start-database.ts b/release-v5.1/database/src/types/apis/database/start-database.ts deleted file mode 100644 index 72a3637..0000000 --- a/release-v5.1/database/src/types/apis/database/start-database.ts +++ /dev/null @@ -1,10 +0,0 @@ -import * as z from 'zod'; - -export const pathParams = z.object({ - databaseName: z.string() -}); - -export const response = z.object({ - code: z.number(), - message: z.string() -}); diff --git a/release-v5.1/database/src/types/apis/database/update-database.ts b/release-v5.1/database/src/types/apis/database/update-database.ts deleted file mode 100644 index 8308d9e..0000000 --- a/release-v5.1/database/src/types/apis/database/update-database.ts +++ /dev/null @@ -1,70 +0,0 @@ -import z from 'zod'; - -// Define schemas -export const pathParams = z.object({ - databaseName: z.string() -}); - -export const body = z.object({ - resource: z.object({ - cpu: z.number().optional(), - memory: z.number().optional(), - storage: z.number().optional(), - replicas: z.number().optional() - }) -}); - -// 响应Schema与创建接口保持一致 -export const response = z.object({ - code: z.number(), - message: z.string(), - data: z - .object({ - // 数据库基本信息 - id: z.string().optional(), - name: z.string().optional(), - dbType: z.string().optional(), - dbVersion: z.string().optional(), - status: z.string().optional(), - createTime: z.string().optional(), - - // 资源信息 - 与创建接口格式一致 - resource: z.object({ - cpu: z.number(), - memory: z.number(), - storage: z.number(), - replicas: z.number() - }), - - // 单个实例资源 - cpu: z.number(), - memory: z.number(), - storage: z.number(), - - // 总资源 - totalResource: z.object({ - cpu: z.number(), - memory: z.number(), - storage: z.number() - }), - totalCpu: z.number(), - totalMemory: z.number(), - totalStorage: z.number(), - - // 更新操作信息 - operations: z - .object({ - verticalScaling: z.boolean(), - horizontalScaling: z.boolean(), - volumeExpansion: z.boolean() - }) - .optional(), - - // 更新时间 - updatedAt: z.string().optional(), - - // 操作请求 - opsRequests: z.array(z.any()).optional() - }) - .optional() -}); diff --git a/release-v5.1/database/src/types/apis/network/disable-public-access.ts b/release-v5.1/database/src/types/apis/network/disable-public-access.ts deleted file mode 100644 index 0ca18ba..0000000 --- a/release-v5.1/database/src/types/apis/network/disable-public-access.ts +++ /dev/null @@ -1,17 +0,0 @@ -import * as z from 'zod'; -export const queryParams = z.object({ - databaseName: z.string().min(1, 'Database name is required') -}); - -export const response = z.object({ - code: z.number(), - message: z.string(), - data: z - .object({ - dbName: z.string(), - serviceName: z.string(), - operation: z.literal('disable-public-access'), - deletedAt: z.string() - }) - .optional() -}); diff --git a/release-v5.1/database/src/types/apis/network/enable-public-access.ts b/release-v5.1/database/src/types/apis/network/enable-public-access.ts deleted file mode 100644 index 8375cb0..0000000 --- a/release-v5.1/database/src/types/apis/network/enable-public-access.ts +++ /dev/null @@ -1,17 +0,0 @@ -import * as z from 'zod'; - -export const body = z.object({}).optional(); - -export const response = z.object({ - code: z.number(), - message: z.string(), - data: z - .object({ - dbName: z.string(), - serviceName: z.string(), - operation: z.literal('enable-public-access'), - nodePort: z.number().optional(), - createdAt: z.string() - }) - .optional() -}); diff --git a/release-v5.1/database/src/types/apis/v2alpha/backup/delete-backup.ts b/release-v5.1/database/src/types/apis/v2alpha/backup/delete-backup.ts deleted file mode 100644 index 8dc437f..0000000 --- a/release-v5.1/database/src/types/apis/v2alpha/backup/delete-backup.ts +++ /dev/null @@ -1,5 +0,0 @@ -import * as z from 'zod'; - -export const queryParams = z.object({ - backupName: z.string().min(1, 'Backup name is required') -}); diff --git a/release-v5.1/database/src/types/apis/v2alpha/database/delete-database.ts b/release-v5.1/database/src/types/apis/v2alpha/database/delete-database.ts deleted file mode 100644 index de634dc..0000000 --- a/release-v5.1/database/src/types/apis/v2alpha/database/delete-database.ts +++ /dev/null @@ -1,5 +0,0 @@ -import * as z from 'zod'; - -export const pathParams = z.object({ - databaseName: z.string() -}); diff --git a/release-v5.1/database/src/types/apis/v2alpha/database/pause-database.ts b/release-v5.1/database/src/types/apis/v2alpha/database/pause-database.ts deleted file mode 100644 index de634dc..0000000 --- a/release-v5.1/database/src/types/apis/v2alpha/database/pause-database.ts +++ /dev/null @@ -1,5 +0,0 @@ -import * as z from 'zod'; - -export const pathParams = z.object({ - databaseName: z.string() -}); diff --git a/release-v5.1/database/src/types/apis/v2alpha/database/restart-database.ts b/release-v5.1/database/src/types/apis/v2alpha/database/restart-database.ts deleted file mode 100644 index de634dc..0000000 --- a/release-v5.1/database/src/types/apis/v2alpha/database/restart-database.ts +++ /dev/null @@ -1,5 +0,0 @@ -import * as z from 'zod'; - -export const pathParams = z.object({ - databaseName: z.string() -}); diff --git a/release-v5.1/database/src/types/apis/v2alpha/database/start-database.ts b/release-v5.1/database/src/types/apis/v2alpha/database/start-database.ts deleted file mode 100644 index de634dc..0000000 --- a/release-v5.1/database/src/types/apis/v2alpha/database/start-database.ts +++ /dev/null @@ -1,5 +0,0 @@ -import * as z from 'zod'; - -export const pathParams = z.object({ - databaseName: z.string() -}); diff --git a/release-v5.1/database/src/types/apis/v2alpha/database/update-database.ts b/release-v5.1/database/src/types/apis/v2alpha/database/update-database.ts deleted file mode 100644 index c7f13e6..0000000 --- a/release-v5.1/database/src/types/apis/v2alpha/database/update-database.ts +++ /dev/null @@ -1,68 +0,0 @@ -import z from 'zod'; - -// Define schemas -export const pathParams = z.object({ - databaseName: z.string() -}); - -export const body = z.object({ - quota: z.object({ - cpu: z.number().optional(), - memory: z.number().optional(), - storage: z.number().optional(), - replicas: z.number().optional() - }) -}); - -// 响应Schema与创建接口保持一致 -export const response = z.object({ - data: z - .object({ - // 数据库基本信息 - id: z.string().optional(), - name: z.string().optional(), - dbType: z.string().optional(), - dbVersion: z.string().optional(), - status: z.string().optional(), - createTime: z.string().optional(), - - // 资源信息 - 与创建接口格式一致 - quota: z.object({ - cpu: z.number(), - memory: z.number(), - storage: z.number(), - replicas: z.number() - }), - - // 单个实例资源 - cpu: z.number(), - memory: z.number(), - storage: z.number(), - - // 总资源 - totalResource: z.object({ - cpu: z.number(), - memory: z.number(), - storage: z.number() - }), - totalCpu: z.number(), - totalMemory: z.number(), - totalStorage: z.number(), - - // 更新操作信息 - operations: z - .object({ - verticalScaling: z.boolean(), - horizontalScaling: z.boolean(), - volumeExpansion: z.boolean() - }) - .optional(), - - // 更新时间 - updatedAt: z.string().optional(), - - // 操作请求 - opsRequests: z.array(z.any()).optional() - }) - .optional() -}); diff --git a/release-v5.1/database/src/types/apis/v2alpha/network/disable-public-access.ts b/release-v5.1/database/src/types/apis/v2alpha/network/disable-public-access.ts deleted file mode 100644 index 55ba06f..0000000 --- a/release-v5.1/database/src/types/apis/v2alpha/network/disable-public-access.ts +++ /dev/null @@ -1,15 +0,0 @@ -import * as z from 'zod'; -export const queryParams = z.object({ - databaseName: z.string().min(1, 'Database name is required') -}); - -export const response = z.object({ - data: z - .object({ - dbName: z.string(), - serviceName: z.string(), - operation: z.literal('disable-public-access'), - deletedAt: z.string() - }) - .optional() -}); diff --git a/release-v5.1/database/src/types/apis/v2alpha/network/enable-public-access.ts b/release-v5.1/database/src/types/apis/v2alpha/network/enable-public-access.ts deleted file mode 100644 index b8ca318..0000000 --- a/release-v5.1/database/src/types/apis/v2alpha/network/enable-public-access.ts +++ /dev/null @@ -1,15 +0,0 @@ -import * as z from 'zod'; - -export const body = z.object({}).optional(); - -export const response = z.object({ - data: z - .object({ - dbName: z.string(), - serviceName: z.string(), - operation: z.literal('enable-public-access'), - nodePort: z.number().optional(), - createdAt: z.string() - }) - .optional() -}); diff --git a/release-v5.1/database/src/types/config.ts b/release-v5.1/database/src/types/config.ts deleted file mode 100644 index 640a720..0000000 --- a/release-v5.1/database/src/types/config.ts +++ /dev/null @@ -1,65 +0,0 @@ -import { z } from 'zod'; - -// Canonical server-side release-v5.1 configuration. -export const AppConfigSchema = z.strictObject({ - cloud: z.strictObject({ - domain: z.string(), - desktopDomain: z.string(), - port: z.string(), - disableHttps: z.boolean() - }), - database: z.strictObject({ - features: z.strictObject({ - guide: z.boolean(), - showDocument: z.boolean(), - fileImport: z.boolean(), - logs: z.boolean(), - kafka: z.boolean(), - managedDb: z.boolean() - }), - ui: z.strictObject({ - customScripts: z.array(z.record(z.string(), z.string())) - }), - storage: z.strictObject({ - forcedClassName: z.string(), - maxSize: z.number().int().positive() - }), - components: z.strictObject({ - monitoring: z.strictObject({ - url: z.string() - }), - alerting: z.strictObject({ - url: z.string() - }), - billing: z.strictObject({ - url: z.string() - }), - logging: z.strictObject({ - url: z.string() - }), - storage: z.strictObject({ - url: z.string(), - port: z.number().int().positive(), - useSSL: z.boolean(), - bucketName: z.string(), - accessKey: z.string(), - secretKey: z.string() - }), - eventAnalysis: z.strictObject({ - fastGPTKey: z.string() - }) - }), - migration: z.strictObject({ - importDataImage: z.string() - }), - backup: z.strictObject({ - enabled: z.boolean() - }) - }) -}); - -export type AppConfig = z.infer; - -declare global { - var __APP_CONFIG__: AppConfig | undefined; -} diff --git a/release-v5.1/database/src/types/i18next.d.ts b/release-v5.1/database/src/types/i18next.d.ts deleted file mode 100644 index f42b7f1..0000000 --- a/release-v5.1/database/src/types/i18next.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -import 'i18next'; -import common from '../../public/locales/zh/common.json'; - -export interface I18nNamespaces { - common: typeof common; -} - -export type I18nNsType = (keyof I18nNamespaces)[]; - -export type NestedKeyOf = { - [Key in keyof ObjectType & (string | number)]: ObjectType[Key] extends object - ? `${Key}.${NestedKeyOf}` - : `${Key}`; -}[keyof ObjectType & (string | number)]; - -export type ParseKeys = { - [K in Ns]: `${K}:${NestedKeyOf}`; -}[Ns]; - -export type I18nKeyFunction = { - (key: Key): Key; -}; - -export type I18nCommonKey = NestedKeyOf; - -declare module 'i18next' { - interface CustomTypeOptions { - returnNull: false; - defaultNS: ['common']; - resources: I18nNamespaces; - } -} diff --git a/release-v5.1/database/src/types/index.d.ts b/release-v5.1/database/src/types/index.d.ts deleted file mode 100644 index 799f587..0000000 --- a/release-v5.1/database/src/types/index.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -export type QueryType = { - name: string; -}; - -export interface YamlItemType { - filename: string; - value: string; -} diff --git a/release-v5.1/database/src/types/monitor.d.ts b/release-v5.1/database/src/types/monitor.d.ts deleted file mode 100644 index a67143d..0000000 --- a/release-v5.1/database/src/types/monitor.d.ts +++ /dev/null @@ -1,84 +0,0 @@ -import { I18nCommonKey } from './i18next'; - -export interface MonitorDBResult { - status: string; - data: { - resultType: string; - result: { - metric: { - app_kubernetes_io_instance: string; - app_kubernetes_io_managed_by: string; - app_kubernetes_io_name: string; - apps_kubeblocks_io_component_name: string; - datname: string; - instance: string; - job: string; - namespace: string; - node: string; - pod: string; - server: string; - service: string; - __name__: string; - state?: string; - command?: string; - database?: string; - db: string; - type?: string; - cmd?: string; - persistentvolumeclaim?: string; - }; - value: [number, string]; - values: [[number, string]]; - }[]; - }; -} - -export type MonitorQueryKey = { - Mongodb_DocumentOperations: string; - Mongodb_QueryOperations: string; - Mongodb_PageFaults: string; - Redis_CommandLatency: string; - Redis_KeyEvictions: string; - Redis_HitsRatio: string; - Disk_Used: string; - Disk_Capacity: string; - cpu: string; - memory: string; - disk: string; -}; - -export type AdapterData = Partial<{ - [key in keyof MonitorQueryKey]: (data: MonitorDBResult) => { - xData: number[]; - yData: { name: string; data: number[] }[]; - }; -}>; - -export type ChartTemplateProps = { - dbName: string; - dbType: string; - apiUrl: string; - chartTitle: I18nCommonKey; - isShowLegend?: boolean; - db?: DBDetailType; - queryKey?: keyof MonitorQueryKey; - yAxisLabelFormatter?: (value: number) => string; - unit?: string; -}; - -export type MonitorChartList = ChartTemplateProps & { - monitorType: string; - isShowDB?: string[]; -}; - -export type MonitorChartDataResult = { - xData: number[]; - yData: { - name: string | undefined; - data: number[]; - }[]; -}; - -export type AdapterChartDataType = { - [key: string]: (data: MonitorDBResult) => MonitorChartDataResult; -}; diff --git a/release-v5.1/database/src/types/response.ts b/release-v5.1/database/src/types/response.ts deleted file mode 100644 index 66c63a0..0000000 --- a/release-v5.1/database/src/types/response.ts +++ /dev/null @@ -1,34 +0,0 @@ -export enum ResponseCode { - SUCCESS = 200, - BAD_REQUEST = 400, - UNAUTHORIZED = 401, - FORBIDDEN = 403, - NOT_FOUND = 404, - SERVER_ERROR = 500, - - BALANCE_NOT_ENOUGH = 40001, - FORBIDDEN_CREATE_APP = 40003, - APP_ALREADY_EXISTS = 40009 -} - -export const ResponseMessages: Record = { - [ResponseCode.SUCCESS]: 'Success', - [ResponseCode.BAD_REQUEST]: 'Invalid request parameters', - [ResponseCode.UNAUTHORIZED]: 'Unauthorized, please login again', - [ResponseCode.FORBIDDEN]: 'Insufficient permissions', - [ResponseCode.NOT_FOUND]: 'Requested resource not found', - [ResponseCode.SERVER_ERROR]: 'Server error', - [ResponseCode.BALANCE_NOT_ENOUGH]: - 'Almost there! You need additional credits for this deployment.', - [ResponseCode.FORBIDDEN_CREATE_APP]: - 'You do not have sufficient permissions to create an application in the current workspace. Please contact the owner of the workspace to request the necessary permissions.', - [ResponseCode.APP_ALREADY_EXISTS]: - 'App name already exists. Please use a different name or check your app list.' -}; - -export interface ApiResponse { - code: number; - message: string; - data?: T; - error?: any; -} diff --git a/release-v5.1/database/src/types/schemas/logs.ts b/release-v5.1/database/src/types/schemas/logs.ts deleted file mode 100644 index f6a8efe..0000000 --- a/release-v5.1/database/src/types/schemas/logs.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { z } from 'zod'; - -const baseLogEntrySchema = z.object({ - timestamp: z.string(), - level: z.string(), - content: z.string() -}); - -export const logResultSchema = z.object({ - logs: z.array(baseLogEntrySchema), - metadata: z.object({ - total: z.number(), - page: z.number(), - pageSize: z.number(), - processingTime: z.string(), - hasMore: z.boolean() - }) -}); - -export const logFileItemSchema = z.object({ - name: z.string(), - path: z.string(), - dir: z.string(), - kind: z.string(), - attr: z.string(), - hardLinks: z.number(), - owner: z.string(), - group: z.string(), - size: z.number(), - updateTime: z.date(), - linkTo: z.string().optional(), - processed: z.boolean().optional() -}); diff --git a/release-v5.1/database/src/types/schemas/monitor.ts b/release-v5.1/database/src/types/schemas/monitor.ts deleted file mode 100644 index c075be4..0000000 --- a/release-v5.1/database/src/types/schemas/monitor.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { z } from 'zod'; - -export const MonitorChartDataResultSchema = z.object({ - xData: z.array(z.number()), - yData: z.array( - z.object({ - name: z.string().optional(), - data: z.array(z.number()) - }) - ) -}); diff --git a/release-v5.1/database/src/types/schemas/v2alpha/logs.ts b/release-v5.1/database/src/types/schemas/v2alpha/logs.ts deleted file mode 100644 index f6a8efe..0000000 --- a/release-v5.1/database/src/types/schemas/v2alpha/logs.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { z } from 'zod'; - -const baseLogEntrySchema = z.object({ - timestamp: z.string(), - level: z.string(), - content: z.string() -}); - -export const logResultSchema = z.object({ - logs: z.array(baseLogEntrySchema), - metadata: z.object({ - total: z.number(), - page: z.number(), - pageSize: z.number(), - processingTime: z.string(), - hasMore: z.boolean() - }) -}); - -export const logFileItemSchema = z.object({ - name: z.string(), - path: z.string(), - dir: z.string(), - kind: z.string(), - attr: z.string(), - hardLinks: z.number(), - owner: z.string(), - group: z.string(), - size: z.number(), - updateTime: z.date(), - linkTo: z.string().optional(), - processed: z.boolean().optional() -}); diff --git a/release-v5.1/database/src/types/schemas/v2alpha/monitor.ts b/release-v5.1/database/src/types/schemas/v2alpha/monitor.ts deleted file mode 100644 index c075be4..0000000 --- a/release-v5.1/database/src/types/schemas/v2alpha/monitor.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { z } from 'zod'; - -export const MonitorChartDataResultSchema = z.object({ - xData: z.array(z.number()), - yData: z.array( - z.object({ - name: z.string().optional(), - data: z.array(z.number()) - }) - ) -}); diff --git a/release-v5.1/database/src/types/v2alpha/error.ts b/release-v5.1/database/src/types/v2alpha/error.ts deleted file mode 100644 index db19fde..0000000 --- a/release-v5.1/database/src/types/v2alpha/error.ts +++ /dev/null @@ -1,524 +0,0 @@ -import { z } from 'zod'; -import { NextApiResponse } from 'next'; -import { - ErrorType, - ErrorCode, - buildErrorBody, - buildValidationErrorBody -} from '@labring/sealos-shared-sdk/server/v2alpha'; - -export { ErrorType, ErrorCode, buildErrorBody, buildValidationErrorBody }; -export type { - ErrorTypeValue, - ErrorCodeType, - ApiErrorResponse -} from '@labring/sealos-shared-sdk/server/v2alpha'; - -import type { ErrorTypeValue, ErrorCodeType } from '@labring/sealos-shared-sdk/server/v2alpha'; - -// ============================================================================ -// OpenAPI schemas — local, built with this provider's zod (v4 + zod-openapi v5) -// Uses .describe() style (zod-openapi v5 reads native zod .describe()) -// Cannot be shared: zod schemas are zod-version-bound -// ============================================================================ - -const ValidationFieldIssue = z.object({ - field: z.string().describe('Field path using dot/bracket notation, e.g. "resource.cpu"'), - message: z.string().describe('Validation error message for this field') -}); - -export const ErrorResponseSchema = z.object({ - error: z.object({ - type: z - .enum(Object.values(ErrorType) as [ErrorTypeValue, ...ErrorTypeValue[]]) - .describe('High-level error type for categorization (e.g. "validation_error")'), - code: z - .enum(Object.values(ErrorCode) as [ErrorCodeType, ...ErrorCodeType[]]) - .describe( - 'Specific error code for programmatic handling and i18n (e.g. "INVALID_PARAMETER")' - ), - message: z.string().describe('Human-readable error message'), - details: z - .union([z.array(z.object({ field: z.string(), message: z.string() })), z.string()]) - .optional() - .describe( - 'Extra context. For INVALID_PARAMETER: Array<{ field, message }>. For operation/internal errors: raw error string. Omitted for other codes.' - ) - }) -}); - -// Code → type mapping for 400 (per design doc) -const ERROR_400_CODE_TO_TYPE: Record = { - [ErrorCode.INVALID_PARAMETER]: ErrorType.VALIDATION_ERROR, - [ErrorCode.INVALID_VALUE]: ErrorType.VALIDATION_ERROR, - [ErrorCode.UNSUPPORTED_OPERATION]: ErrorType.CLIENT_ERROR, - [ErrorCode.STORAGE_REQUIRES_STATEFULSET]: ErrorType.CLIENT_ERROR -}; - -export type Error400Code = - | typeof ErrorCode.INVALID_PARAMETER - | typeof ErrorCode.INVALID_VALUE - | typeof ErrorCode.UNSUPPORTED_OPERATION - | typeof ErrorCode.STORAGE_REQUIRES_STATEFULSET; - -/** - * Create a 400 error schema. Each endpoint passes the codes it can return. - */ -export function createError400Schema(codes: readonly [Error400Code, ...Error400Code[]]) { - const uniqueTypes = [...new Set(codes.map((c) => ERROR_400_CODE_TO_TYPE[c]))] as [ - ErrorTypeValue, - ...ErrorTypeValue[] - ]; - return z.object({ - error: z - .object({ - type: z.enum(uniqueTypes).describe('High-level error type for categorization'), - code: z - .enum(codes as [ErrorCodeType, ...ErrorCodeType[]]) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z - .union([z.array(ValidationFieldIssue), z.string()]) - .optional() - .describe( - 'For INVALID_PARAMETER: Array<{ field, message }>. For INVALID_VALUE: optional string. Omitted for other codes.' - ) - }) - .describe('Structured error object containing type, code, message, and optional details') - }); -} - -/** Create 401 error schema. */ -export function createError401Schema() { - return z.object({ - error: z - .object({ - type: z - .literal(ErrorType.AUTHENTICATION_ERROR) - .describe('High-level error type for categorization'), - code: z - .literal(ErrorCode.AUTHENTICATION_REQUIRED) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z - .string() - .optional() - .describe('Typically omitted. May contain additional context in edge cases.') - }) - .describe('Structured error object containing type, code, message, and optional details') - }); -} - -export type Error403Code = - | typeof ErrorCode.PERMISSION_DENIED - | typeof ErrorCode.INSUFFICIENT_BALANCE; - -/** - * Create a 403 error schema. Each endpoint passes the codes it can return. - */ -export function createError403Schema(codes: readonly [Error403Code, ...Error403Code[]]) { - return z.object({ - error: z - .object({ - type: z - .literal(ErrorType.AUTHORIZATION_ERROR) - .describe('High-level error type for categorization'), - code: z - .enum(codes as [ErrorCodeType, ...ErrorCodeType[]]) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z - .string() - .optional() - .describe('Typically omitted. May contain additional context in edge cases.') - }) - .describe('Structured error object containing type, code, message, and optional details') - }); -} - -/** Create 404 error schema. */ -export function createError404Schema() { - return z.object({ - error: z - .object({ - type: z - .literal(ErrorType.RESOURCE_ERROR) - .describe('High-level error type for categorization'), - code: z - .literal(ErrorCode.NOT_FOUND) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z - .string() - .optional() - .describe('Typically omitted. May contain additional context in edge cases.') - }) - .describe('Structured error object containing type, code, message, and optional details') - }); -} - -export type Error409Code = typeof ErrorCode.ALREADY_EXISTS | typeof ErrorCode.CONFLICT; - -/** - * Create a 409 error schema. Each endpoint passes the codes it can return. - */ -export function createError409Schema(codes: readonly [Error409Code, ...Error409Code[]]) { - return z.object({ - error: z - .object({ - type: z - .literal(ErrorType.RESOURCE_ERROR) - .describe('High-level error type for categorization'), - code: z - .enum(codes as [ErrorCodeType, ...ErrorCodeType[]]) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z - .string() - .optional() - .describe('Typically omitted. May contain additional context in edge cases.') - }) - .describe('Structured error object containing type, code, message, and optional details') - }); -} - -const ERROR_500_CODE_TO_TYPE: Record = { - [ErrorCode.KUBERNETES_ERROR]: ErrorType.OPERATION_ERROR, - [ErrorCode.STORAGE_UPDATE_FAILED]: ErrorType.OPERATION_ERROR, - [ErrorCode.OPERATION_FAILED]: ErrorType.OPERATION_ERROR, - [ErrorCode.INTERNAL_ERROR]: ErrorType.INTERNAL_ERROR -}; - -export type Error500Code = - | typeof ErrorCode.KUBERNETES_ERROR - | typeof ErrorCode.STORAGE_UPDATE_FAILED - | typeof ErrorCode.OPERATION_FAILED - | typeof ErrorCode.INTERNAL_ERROR; - -/** - * Create a 500 error schema. Each endpoint passes the codes it can return. - */ -export function createError500Schema(codes: readonly [Error500Code, ...Error500Code[]]) { - const uniqueTypes = [...new Set(codes.map((c) => ERROR_500_CODE_TO_TYPE[c]))] as [ - ErrorTypeValue, - ...ErrorTypeValue[] - ]; - return z.object({ - error: z - .object({ - type: z.enum(uniqueTypes).describe('High-level error type for categorization'), - code: z - .enum(codes as [ErrorCodeType, ...ErrorCodeType[]]) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z - .string() - .optional() - .describe('Raw error string from the underlying system, for troubleshooting.') - }) - .describe('Structured error object containing type, code, message, and optional details') - }); -} - -/** Create 503 error schema. */ -export function createError503Schema() { - return z.object({ - error: z - .object({ - type: z - .literal(ErrorType.INTERNAL_ERROR) - .describe('High-level error type for categorization'), - code: z - .literal(ErrorCode.SERVICE_UNAVAILABLE) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z - .string() - .optional() - .describe('Raw connection error from the underlying system (e.g. ECONNREFUSED).') - }) - .describe('Structured error object containing type, code, message, and optional details') - }); -} - -const ERROR_DESCRIBE = - 'Structured error object containing type, code, message, and optional details'; - -export const Error400Schema = z.object({ - error: z - .object({ - type: z - .enum([ErrorType.VALIDATION_ERROR, ErrorType.CLIENT_ERROR]) - .describe('High-level error type for categorization'), - code: z - .enum([ - ErrorCode.INVALID_PARAMETER, - ErrorCode.INVALID_VALUE, - ErrorCode.UNSUPPORTED_OPERATION, - ErrorCode.STORAGE_REQUIRES_STATEFULSET - ]) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z - .union([z.array(ValidationFieldIssue), z.string()]) - .optional() - .describe( - 'For INVALID_PARAMETER: Array<{ field, message }>. For INVALID_VALUE: optional string. Omitted for other codes.' - ) - }) - .describe(ERROR_DESCRIBE) -}); - -export const Error401Schema = z.object({ - error: z - .object({ - type: z - .literal(ErrorType.AUTHENTICATION_ERROR) - .describe('High-level error type for categorization'), - code: z - .literal(ErrorCode.AUTHENTICATION_REQUIRED) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z - .string() - .optional() - .describe('Typically omitted. May contain additional context in edge cases.') - }) - .describe(ERROR_DESCRIBE) -}); - -export const Error403Schema = z.object({ - error: z - .object({ - type: z - .literal(ErrorType.AUTHORIZATION_ERROR) - .describe('High-level error type for categorization'), - code: z - .enum([ErrorCode.PERMISSION_DENIED, ErrorCode.INSUFFICIENT_BALANCE]) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z - .string() - .optional() - .describe('Typically omitted. May contain additional context in edge cases.') - }) - .describe(ERROR_DESCRIBE) -}); - -export const Error404Schema = z.object({ - error: z - .object({ - type: z - .literal(ErrorType.RESOURCE_ERROR) - .describe('High-level error type for categorization'), - code: z - .literal(ErrorCode.NOT_FOUND) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z - .string() - .optional() - .describe('Typically omitted. May contain additional context in edge cases.') - }) - .describe(ERROR_DESCRIBE) -}); - -export const Error405Schema = z.object({ - error: z - .object({ - type: z.literal(ErrorType.CLIENT_ERROR).describe('High-level error type for categorization'), - code: z - .literal(ErrorCode.METHOD_NOT_ALLOWED) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z.string().optional().describe('Typically omitted.') - }) - .describe(ERROR_DESCRIBE) -}); - -export const Error409Schema = z.object({ - error: z - .object({ - type: z - .literal(ErrorType.RESOURCE_ERROR) - .describe('High-level error type for categorization'), - code: z - .enum([ErrorCode.ALREADY_EXISTS, ErrorCode.CONFLICT]) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z - .string() - .optional() - .describe('Typically omitted. May contain additional context in edge cases.') - }) - .describe(ERROR_DESCRIBE) -}); - -export const Error500Schema = z.object({ - error: z - .object({ - type: z - .enum([ErrorType.OPERATION_ERROR, ErrorType.INTERNAL_ERROR]) - .describe('High-level error type for categorization'), - code: z - .enum([ - ErrorCode.KUBERNETES_ERROR, - ErrorCode.STORAGE_UPDATE_FAILED, - ErrorCode.OPERATION_FAILED, - ErrorCode.INTERNAL_ERROR - ]) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z - .string() - .optional() - .describe('Raw error string from the underlying system, for troubleshooting.') - }) - .describe(ERROR_DESCRIBE) -}); - -export const Error503Schema = z.object({ - error: z - .object({ - type: z - .literal(ErrorType.INTERNAL_ERROR) - .describe('High-level error type for categorization'), - code: z - .literal(ErrorCode.SERVICE_UNAVAILABLE) - .describe('Specific error code for programmatic handling and i18n'), - message: z.string().describe('Human-readable error message'), - details: z - .string() - .optional() - .describe('Raw error string from the underlying system, for troubleshooting.') - }) - .describe(ERROR_DESCRIBE) -}); - -// ============================================================================ -// OpenAPI helper — local, each provider defines its own -// ============================================================================ - -export function createErrorExample( - type: ErrorTypeValue, - code: ErrorCodeType, - message: string, - details?: unknown -) { - return { - error: { - type, - code, - message, - ...(details !== undefined && { details }) - } - }; -} - -// ============================================================================ -// Pages Router thin wrappers (Next.js pages/api/) -// ============================================================================ - -/** - * Send a standardized error response (Pages Router). - * - * @example - * sendError(res, { - * status: 404, - * type: ErrorType.RESOURCE_ERROR, - * code: ErrorCode.NOT_FOUND, - * message: 'Database "my-db" not found.' - * }); - */ -export function sendError( - res: NextApiResponse, - config: { - status: number; - type: ErrorTypeValue; - code: ErrorCodeType; - message: string; - details?: unknown; - } -): void { - res.status(config.status).json(buildErrorBody(config as any)); -} - -/** - * Send a validation error response (Pages Router). - * Transforms ZodError issues into { field, message }[] format per API contract. - * - * @example - * sendValidationError(res, zodError, 'Request body validation failed.'); - */ -export function sendValidationError( - res: NextApiResponse, - error: { issues: Array<{ path: Array; message: string }> }, - message: string = 'Validation failed' -): void { - res.status(400).json(buildValidationErrorBody(error, message)); -} - -/** - * Translate a raw Kubernetes API error into a v2alpha error response. - * Replaces the `jsonRes(res, handleK8sError(err))` pattern. - * - * Mapping: - * TCP connection failure (ECONNREFUSED / ETIMEDOUT / ENOTFOUND / ECONNRESET) - * → HTTP 503 SERVICE_UNAVAILABLE - * K8s 403 + "account balance less than 0" → HTTP 403 INSUFFICIENT_BALANCE - * K8s 403 (other) → HTTP 403 PERMISSION_DENIED - * K8s 409 + "already exists" → HTTP 409 ALREADY_EXISTS - * everything else → HTTP 500 KUBERNETES_ERROR - */ -export function sendK8sError(res: NextApiResponse, err: any): void { - const NETWORK_ERROR_CODES = ['ECONNREFUSED', 'ETIMEDOUT', 'ENOTFOUND', 'ECONNRESET']; - if (err?.code && NETWORK_ERROR_CODES.includes(err.code)) { - return sendError(res, { - status: 503, - type: ErrorType.INTERNAL_ERROR, - code: ErrorCode.SERVICE_UNAVAILABLE, - message: 'The Kubernetes cluster is temporarily unreachable.', - details: err.message - }); - } - - const body = err?.body ?? err; - - if (body?.kind === 'Status' && body?.apiVersion === 'v1') { - if (body.code === 403) { - const isBalance = - typeof body.message === 'string' && body.message.includes('account balance less than 0'); - return sendError(res, { - status: 403, - type: ErrorType.AUTHORIZATION_ERROR, - code: isBalance ? ErrorCode.INSUFFICIENT_BALANCE : ErrorCode.PERMISSION_DENIED, - message: isBalance - ? 'Insufficient balance to perform this operation.' - : 'Insufficient permissions to perform this operation.', - details: body.message - }); - } - - if (body.code === 409) { - const isAlreadyExists = - typeof body.message === 'string' && body.message.includes('already exists'); - return sendError(res, { - status: 409, - type: ErrorType.RESOURCE_ERROR, - code: isAlreadyExists ? ErrorCode.ALREADY_EXISTS : ErrorCode.CONFLICT, - message: isAlreadyExists - ? 'Resource already exists.' - : 'A conflicting operation is already in progress.', - details: body.message - }); - } - } - - return sendError(res, { - status: 500, - type: ErrorType.OPERATION_ERROR, - code: ErrorCode.KUBERNETES_ERROR, - message: 'A Kubernetes API call failed.', - details: body?.message ?? String(err) - }); -} diff --git a/release-v5.1/database/src/utils/cookieUtils.ts b/release-v5.1/database/src/utils/cookieUtils.ts deleted file mode 100644 index be69f2a..0000000 --- a/release-v5.1/database/src/utils/cookieUtils.ts +++ /dev/null @@ -1,15 +0,0 @@ -import Cookies from 'js-cookie'; - -export const LANG_KEY = 'NEXT_LOCALE'; - -export const setLangStore = (value: string) => { - return Cookies.set(LANG_KEY, value, { expires: 30, sameSite: 'None', secure: true }); -}; - -export const getLangStore = () => { - return Cookies.get(LANG_KEY); -}; - -export const removeLangStore = () => { - Cookies.remove(LANG_KEY); -}; diff --git a/release-v5.1/database/src/utils/i18n-client.ts b/release-v5.1/database/src/utils/i18n-client.ts deleted file mode 100644 index f43ed9c..0000000 --- a/release-v5.1/database/src/utils/i18n-client.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { t as T_ } from 'i18next'; -import { useTranslation } from 'next-i18next'; - -export type keyword = Exclude< - Parameters[0], - string | TemplateStringsArray | string[] ->[number]; - -export function assembleTranslate(key: Array, language: string) { - const { t } = useTranslation(); - return key.map((item) => t(item)).join(language === 'en' ? ' ' : ''); -} diff --git a/release-v5.1/database/src/utils/i18n.ts b/release-v5.1/database/src/utils/i18n.ts deleted file mode 100644 index b0d70a2..0000000 --- a/release-v5.1/database/src/utils/i18n.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { serverSideTranslations } from 'next-i18next/serverSideTranslations'; -import { LANG_KEY } from './cookieUtils'; - -export const serviceSideProps = (content: any) => { - return serverSideTranslations( - content.req.cookies[LANG_KEY] || 'zh', - ['common'], - null, - content.locales - ); -}; diff --git a/release-v5.1/database/src/utils/kubeFileSystem.ts b/release-v5.1/database/src/utils/kubeFileSystem.ts deleted file mode 100644 index c77b5f5..0000000 --- a/release-v5.1/database/src/utils/kubeFileSystem.ts +++ /dev/null @@ -1,476 +0,0 @@ -import { PassThrough, Readable, Writable } from 'stream'; -import * as k8s from '@kubernetes/client-node'; -import dayjs from 'dayjs'; -import utc from 'dayjs/plugin/utc'; -import timezone from 'dayjs/plugin/timezone'; - -dayjs.extend(utc); -dayjs.extend(timezone); - -export type TFile = { - name: string; - path: string; - dir: string; - kind: string; - attr: string; - hardLinks: number; - owner: string; - group: string; - size: number; - updateTime: Date; - linkTo?: string; - processed?: boolean; -}; - -export class KubeFileSystem { - private readonly k8sExec: k8s.Exec; - - constructor(k8sExec: k8s.Exec) { - this.k8sExec = k8sExec; - } - - async execCommand( - namespace: string, - podName: string, - containerName: string, - command: string[], - freeOnceStdError: boolean | undefined = true, - stdin: Readable | null = null, - stdout: Writable | null = null - ): Promise { - const stderr = new PassThrough(); - let chunks = Buffer.alloc(0); - - if (!stdout) { - stdout = new PassThrough(); - stdout.on('data', (chunk) => { - chunks = Buffer.concat([chunks, chunk]); - }); - } - - const free = () => { - stderr.removeAllListeners(); - stdout?.removeAllListeners(); - stdin?.removeAllListeners(); - }; - - try { - const ws = await this.k8sExec.exec( - namespace, - podName, - containerName, - command, - stdout, - stderr, - stdin, - false - ); - - return await new Promise((resolve, reject) => { - // Add WebSocket error handling - ws?.on('error', (error: any) => { - free(); - const errorMessage = error?.message || error?.toString() || 'Unknown error'; - reject(new Error(`WebSocket error: ${errorMessage}`)); - }); - - stdout?.on('error', (error) => { - console.error(error.toString()); - if (freeOnceStdError) { - free(); - reject(new Error(`Output stream error: ${error.message}`)); - } - }); - - stderr?.on('data', (error) => { - console.error(error.toString()); - if (freeOnceStdError) { - free(); - reject(new Error(`Command execution error: ${error.toString()}`)); - } else { - chunks = Buffer.concat([chunks, error]); - } - }); - - stdout?.on('end', () => { - free(); - resolve(chunks.toString()); - }); - - if (stdin) { - stdin.on('end', () => { - free(); - }); - } - }) - .catch((error) => { - throw error; - }) - .finally(free); - } catch (error: any) { - free(); - throw new Error(`Command execution failed: ${error.message || 'Unknown error'}`); - } - } - - async getPodTimezone(namespace: string, podName: string, containerName: string): Promise { - try { - const dateOutput = await this.execCommand(namespace, podName, containerName, ['date', '+%z']); - const offset = dateOutput.trim(); - if (offset) { - return this.getTimezoneFromOffset(offset); - } - } catch (error) { - console.log('Failed to get timezone offset using date command:', error); - } - - try { - const timezoneFile = await this.execCommand(namespace, podName, containerName, [ - 'cat', - '/etc/timezone' - ]); - if (timezoneFile.trim()) { - return timezoneFile.trim(); - } - } catch (error) {} - - try { - const localtimeLink = await this.execCommand(namespace, podName, containerName, [ - 'readlink', - '-f', - '/etc/localtime' - ]); - const match = localtimeLink.match(/zoneinfo\/(.+)$/); - if (match) { - return match[1]; - } - } catch (error) {} - - return 'Etc/UTC'; - } - - async ls({ - namespace, - podName, - containerName, - path, - showHidden = false - }: { - namespace: string; - podName: string; - containerName: string; - path: string; - showHidden: boolean; - }) { - let output: string; - let isCompatibleMode = false; - try { - output = await this.execCommand(namespace, podName, containerName, [ - 'ls', - showHidden ? '-laQ' : '-lQ', - '--color=never', - '--full-time', - path - ]); - } catch (error) { - if (typeof error === 'string' && error.includes('ls: unrecognized option: full-time')) { - isCompatibleMode = true; - output = await this.execCommand(namespace, podName, containerName, [ - 'ls', - showHidden ? '-laQ' : '-lQ', - '--color=never', - '-e', - path - ]); - } else { - throw error; - } - } - const lines: string[] = output.split('\n').filter((v) => v.length > 3); - - const directories: TFile[] = []; - const files: TFile[] = []; - const symlinks: TFile[] = []; - - const podTimezone = await this.getPodTimezone(namespace, podName, containerName); - - lines.forEach((line) => { - const parts = line.split('"'); - const name = parts[1]; - - if (!name || name === '.' || name === '..') return; - - const attrs = parts[0].split(' ').filter((v) => !!v); - - const file: TFile = { - name: name, - path: (name.startsWith('/') ? '' : path + '/') + name, - dir: path, - kind: line[0], - attr: attrs[0], - hardLinks: parseInt(attrs[1]), - owner: attrs[2], - group: attrs[3], - size: parseInt(attrs[4]), - updateTime: this.convertToUTC(attrs.slice(5, 7).join(' '), podTimezone) - }; - - if (isCompatibleMode) { - file.updateTime = this.convertToUTC(attrs.slice(5, 10).join(' '), podTimezone); - } - - if (file.kind === 'c') { - if (isCompatibleMode) { - file.updateTime = this.convertToUTC(attrs.slice(7, 11).join(' '), podTimezone); - } else { - file.updateTime = this.convertToUTC(attrs.slice(6, 8).join(' '), podTimezone); - } - file.size = parseInt(attrs[5]); - } - if (file.kind === 'l') { - file.linkTo = parts[3]; - symlinks.push(file); - } - if (file.kind === 'd') { - directories.push(file); - } else { - if (file.kind !== 't' && file.kind !== '') { - files.push(file); - } - } - }); - - if (symlinks.length > 0) { - const command = ['ls', '-ldQ', '--color=never']; - - try { - symlinks.forEach((symlink) => { - let linkTo = symlink.linkTo!; - if (linkTo[0] !== '/') { - linkTo = (symlink.dir === '/' ? '' : symlink.dir) + '/' + linkTo; - } - symlink.linkTo = linkTo; - command.push(linkTo); - }); - } catch (error) { - } finally { - const output = await this.execCommand(namespace, podName, containerName, command); - const lines = output.split('\n').filter((v) => !!v); - - try { - for (const line of lines) { - if (line && line.includes('command terminated with non-zero exit code')) { - const parts = line.split('"'); - try { - symlinks.map((symlink) => { - if (symlink.linkTo === parts[1] && !symlink.processed) { - symlink.processed = true; - symlink.kind = line[0]; - if (symlink.kind === 'd') { - directories.push(symlink); - } - } - }); - } catch (error) {} - } - } - } catch (error) {} - } - } - - directories.sort((a, b) => (a.name > b.name ? 1 : -1)); - - return { - directories: directories, - files: files - }; - } - - async mv({ - namespace, - podName, - containerName, - from, - to - }: { - namespace: string; - podName: string; - containerName: string; - from: string; - to: string; - }) { - return await this.execCommand(namespace, podName, containerName, ['mv', from, to]); - } - - async rm({ - namespace, - podName, - containerName, - path - }: { - namespace: string; - podName: string; - containerName: string; - path: string; - }) { - return await this.execCommand(namespace, podName, containerName, ['rm', '-rf', path]); - } - - async download({ - namespace, - podName, - containerName, - path, - stdout - }: { - namespace: string; - podName: string; - containerName: string; - path: string; - stdout: Writable; - }) { - return await this.execCommand( - namespace, - podName, - containerName, - ['dd', `if=${path}`, 'status=none'], - true, - null, - stdout - ); - } - - async mkdir({ - namespace, - podName, - containerName, - path - }: { - namespace: string; - podName: string; - containerName: string; - path: string; - }) { - return await this.execCommand(namespace, podName, containerName, ['mkdir', path]); - } - - async touch({ - namespace, - podName, - containerName, - path - }: { - namespace: string; - podName: string; - containerName: string; - path: string; - }) { - return await this.execCommand(namespace, podName, containerName, ['touch', path]); - } - - async upload({ - namespace, - podName, - containerName, - path, - file - }: { - namespace: string; - podName: string; - containerName: string; - path: string; - file: PassThrough; - }): Promise { - const result = await this.execCommand( - namespace, - podName, - containerName, - ['sh', '-c', `dd of=${path} status=none bs=32767; :`], - true, - file - ); - return result; - } - - async md5sum({ - namespace, - podName, - containerName, - path - }: { - namespace: string; - podName: string; - containerName: string; - path: string; - }) { - return await this.execCommand(namespace, podName, containerName, ['md5sum', path]); - } - - getTimezoneFromOffset(offset: string): string { - const hours = parseInt(offset.slice(1, 3)); - const sign = offset.startsWith('-') ? '+' : '-'; - return `Etc/GMT${sign}${hours}`; - } - - convertToUTC(dateString: string, timezone: string): Date { - dateString = dateString.trim(); - timezone = timezone.trim(); - - if (timezone === 'Etc/UTC') { - timezone = 'UTC'; - } - - const dt = dayjs.tz(dateString, timezone).utc(); - - if (!dt.isValid()) { - console.error(`Failed to parse date: "${dateString}" with timezone "${timezone}"`); - return new Date(); - } - - return dt.toDate(); - } -} - -export class Command { - private text: Array = []; - - public echo(newText: string) { - this.text.push(`echo "${newText}"`); - } - - public newLine() { - if (!this.text[this.text.length - 1].endsWith('\n')) { - this.text[this.text.length - 1] += '\n'; - } - } - - // with new line - public add(newText: string | string[]) { - if (Array.isArray(newText)) { - newText.forEach((item) => { - this.add(item); - }); - } else { - this.text.push(newText); - } - } - - // without new line - public push(newText: string | string[]) { - if (Array.isArray(newText)) { - newText.forEach((item) => { - this.push(item); - }); - return; - } - if (this.text.at(-1) === undefined) { - this.text.push(newText); - return; - } - this.text[this.text.length - 1] += ' ' + newText; - } - - public get() { - return ['/bin/sh', '-c', this.text.join(' && ')]; - } -} diff --git a/release-v5.1/database/src/utils/timeRange.ts b/release-v5.1/database/src/utils/timeRange.ts deleted file mode 100644 index c94a4d7..0000000 --- a/release-v5.1/database/src/utils/timeRange.ts +++ /dev/null @@ -1,73 +0,0 @@ -import { subHours, subDays, subMinutes, subMonths } from 'date-fns'; - -type TimeUnit = 'h' | 'm' | 'd' | 'M'; - -interface TimeRange { - startTime: Date; - endTime: Date; -} - -/** - * Parse time range string - * @param range Time range string, e.g. "1h", "7d", "30m", "1M" - * @param endTime End time, defaults to current time - * @returns Object containing start and end time - */ -export function parseTimeRange(range: string, endTime: Date = new Date()): TimeRange { - const match = range.match(/^(\d+)([hmdM])$/i); - if (!match) { - throw new Error('Invalid time range format. Supported formats: 1h, 7d, 30m, 1M'); - } - - const value = parseInt(match[1], 10); - const unit = match[2].toLowerCase() as TimeUnit; - - let startTime: Date; - switch (unit) { - case 'h': - startTime = subHours(endTime, value); - break; - case 'm': - startTime = subMinutes(endTime, value); - break; - case 'd': - startTime = subDays(endTime, value); - break; - case 'M': - startTime = subMonths(endTime, value); - break; - default: - throw new Error('Unsupported time unit'); - } - - return { - startTime, - endTime - }; -} - -/** - * Convert time range to string format - * @param startTime Start time - * @param endTime End time - * @returns Time range string, e.g. "1h", "7d" - */ -export function formatTimeRange(startTime: Date, endTime: Date): string { - const diffMs = endTime.getTime() - startTime.getTime(); - const diffMinutes = Math.round(diffMs / (1000 * 60)); - const diffHours = Math.round(diffMs / (1000 * 60 * 60)); - const diffDays = Math.round(diffMs / (1000 * 60 * 60 * 24)); - const diffMonths = Math.round(diffMs / (1000 * 60 * 60 * 24 * 30)); - - if (diffMinutes < 60) { - return `${diffMinutes}m`; - } else if (diffHours < 24) { - return `${diffHours}h`; - } else if (diffDays === 1) { - return '24h'; - } else if (diffDays < 30) { - return `${diffDays}d`; - } else { - return `${diffMonths}M`; - } -} diff --git a/release-v5.1/database/tsconfig.json b/release-v5.1/database/tsconfig.json deleted file mode 100644 index 4e6ad73..0000000 --- a/release-v5.1/database/tsconfig.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "compilerOptions": { - "lib": ["dom", "dom.iterable", "esnext"], - "baseUrl": ".", - "paths": { - "@/*": ["./src/*"] - } - }, - "include": ["next-env.d.ts", "src/**/*.ts", "src/**/*.tsx"], - "extends": "../tsconfig.web.json" -} diff --git a/release-v5.1/package.json b/release-v5.1/package.json deleted file mode 100644 index f5fd33d..0000000 --- a/release-v5.1/package.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "name": "database-workspace", - "private": true, - "version": "0.1.0", - "scripts": { - "preinstall": "npx only-allow pnpm", - "dev-db": "pnpm -r --filter ./database run dev", - "gen:theme-typings": "pnpm chakra-cli tokens packages/ui/src/theme/theme.ts --out node_modules/.pnpm/node_modules/@chakra-ui/styled-system/dist/theming.types.d.ts", - "postinstall": "pnpm run gen:theme-typings && pnpm run build-packages", - "build-packages": "pnpm -r --filter './packages/*' run build", - "build-database": "pnpm --filter ./database run build" - }, - "workspaces": [ - "./packages/*", - "./database" - ], - "devDependencies": { - "@chakra-ui/cli": "^2.4.1", - "husky": "^9.1.4", - "lint-staged": "^15.2.9", - "prettier": "^2.8.8" - }, - "dependencies": { - "@chakra-ui/anatomy": "^2.2.1", - "@chakra-ui/icons": "^2.1.1", - "@chakra-ui/next-js": "^2.1.5", - "@chakra-ui/react": "^2.8.1", - "@chakra-ui/system": "^2.6.1", - "@emotion/react": "^11.11.1", - "@emotion/styled": "^11.11.0", - "framer-motion": "^10.16.4", - "i18next": "^23.11.5", - "next-i18next": "^15.3.0", - "react-i18next": "^14.1.2", - "typescript": "^5.2.2" - }, - "pnpm": { - "overrides": { - "react": "18.2.0", - "react-dom": "18.2.0" - }, - "supportedArchitectures": { - "os": [ - "win32", - "darwin", - "current", - "linuxmusl" - ], - "cpu": [ - "x64", - "arm64" - ], - "libc": [ - "musl" - ] - } - }, - "packageManager": "pnpm@8.9.0", - "engines": { - "node": "20.4.0", - "pnpm": "8.9.0" - } -} diff --git a/release-v5.1/packages/ui/.eslintrc.json b/release-v5.1/packages/ui/.eslintrc.json deleted file mode 100644 index bffb357..0000000 --- a/release-v5.1/packages/ui/.eslintrc.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "next/core-web-vitals" -} diff --git a/release-v5.1/packages/ui/package.json b/release-v5.1/packages/ui/package.json deleted file mode 100644 index 8129e50..0000000 --- a/release-v5.1/packages/ui/package.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "@sealos/ui", - "version": "1.0.0", - "description": "", - "main": "./src/index.ts", - "src": "./src", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1", - "dev": "next dev", - "build": "exit 0" - }, - "keywords": [], - "author": "", - "license": "ISC", - "dependencies": { - "react": "^18.2.0", - "react-dom": "^18.2.0", - "react-markdown": "^8.0.7", - "react-syntax-highlighter": "^15.5.0", - "rollup-plugin-peer-deps-external": "^2.2.4" - }, - "devDependencies": { - "@rollup/plugin-commonjs": "^25.0.5", - "@rollup/plugin-node-resolve": "^15.2.3", - "@rollup/plugin-typescript": "^11.1.4", - "@types/react": "^18.2.37", - "@types/react-syntax-highlighter": "^15.5.7", - "rollup": "2.79.1", - "rollup-plugin-dts": "^4.2.3", - "rollup-plugin-terser": "^7.0.2", - "rollup-plugin-typescript2": "^0.36.0", - "tslib": "^2.6.2", - "typescript": "^5.2.2" - } -} \ No newline at end of file diff --git a/release-v5.1/packages/ui/rollup.config.js b/release-v5.1/packages/ui/rollup.config.js deleted file mode 100644 index a2df194..0000000 --- a/release-v5.1/packages/ui/rollup.config.js +++ /dev/null @@ -1,32 +0,0 @@ -// rollup.config.js - -import peerDepsExternal from 'rollup-plugin-peer-deps-external'; -import resolve from '@rollup/plugin-node-resolve'; -import commonjs from '@rollup/plugin-commonjs'; -import { terser } from 'rollup-plugin-terser'; -import typescript from 'rollup-plugin-typescript2'; - -export default { - //entry point - input: './src/index.ts', - preserveModules: true, - - //output directory - output: [ - { - dir: './dist/esm/', - format: 'esm', - sourcemap: true, - exports: 'auto' - } - ], - - //plugins - plugins: [ - peerDepsExternal(), - resolve(), - commonjs(), - typescript({ useTsconfigDeclarationDir: true }), - terser() - ] -}; diff --git a/release-v5.1/packages/ui/src/components/AutoComplete/index.tsx b/release-v5.1/packages/ui/src/components/AutoComplete/index.tsx deleted file mode 100644 index d1f53b6..0000000 --- a/release-v5.1/packages/ui/src/components/AutoComplete/index.tsx +++ /dev/null @@ -1,180 +0,0 @@ -'use client'; - -import { - Box, - Flex, - HStack, - Input, - Popover, - PopoverBody, - PopoverContent, - PopoverTrigger, - useDisclosure, - VStack, - Text -} from '@chakra-ui/react'; -import { CSSProperties, memo, useRef, useState } from 'react'; - -function AutoComplete({ - selectList, - value, - setValue, - supportNewValue = true, - inputPlaceholder = 'Search or create...', - inputSureToCreate = 'Create', - inputNotSupportToCreate = 'Not support' -}: { - selectList: string[]; - value: string; - setValue: (value: any) => void; - supportNewValue?: boolean; - inputPlaceholder?: string; // When there is no input in the Input box, prompt text - inputSureToCreate?: string; // When the Input box has content and it is a new resource that does not exist, prompt text - inputNotSupportToCreate?: string; // When the Input box has input content, but does not support creating new content, prompt text -}) { - const [inputValue, setInputValue] = useState(''); - const inputRef = useRef(null); - - const handleDatabaseNameSelect = (databasename: string) => { - setInputValue(databasename); - setValue(databasename); - handler.onClose(); - }; - const handler = useDisclosure(); - - const handleCreateDatabaseName = () => { - if (supportNewValue) { - setValue(inputValue); - handler.onClose(); - } - }; - - const svgStyle: CSSProperties = { - display: 'inline-block', - lineHeight: '1em', - color: '#667085', - flexShrink: 0, - verticalAlign: 'text-Top', - fill: 'currentColor', - width: '16px', - height: '16px' - }; - return ( - <> - { - handler.onOpen(); - inputRef.current?.focus(); - }} - onClose={handler.onClose} - > - - - - {value} - - - - - - - inputRef.current?.focus()}> - - { - setInputValue(e.target.value); - }} - autoFocus={true} - border="1px solid #219BF4" - boxShadow="0px 0px 0px 2.4px rgba(51, 112, 255, 0.15)" - borderRadius="4px" - fontSize="12px" - placeholder={inputPlaceholder} - _focus={{ - border: '1px solid #219BF4', - boxShadow: '0px 0px 0px 2.4px rgba(51, 112, 255, 0.15)' - }} - /> - - {selectList - .filter((v) => v.toLowerCase().includes(inputValue.toLowerCase())) - .map((v) => ( - handleDatabaseNameSelect(v)} - > - {v} - - ))} - - {inputValue && !selectList.find((v) => v === inputValue) && ( - - - - - - {supportNewValue - ? `${inputSureToCreate} ${inputValue}` - : inputNotSupportToCreate} - - - )} - - - - - - ); -} - -export default memo(AutoComplete); diff --git a/release-v5.1/packages/ui/src/components/EditTabs/index.tsx b/release-v5.1/packages/ui/src/components/EditTabs/index.tsx deleted file mode 100644 index bd7dffd..0000000 --- a/release-v5.1/packages/ui/src/components/EditTabs/index.tsx +++ /dev/null @@ -1,92 +0,0 @@ -import { useMemo } from 'react'; -import { Box, Grid } from '@chakra-ui/react'; -import type { GridProps } from '@chakra-ui/react'; - -const EditTabs = ({ - list, - size = 'md', - activeId, - onChange, - ...props -}: { - list: { id: T; label: string }[]; - activeId: T; - size?: 'sm' | 'md' | 'lg'; - onChange: (id: T) => void; -} & Omit) => { - const sizeMap = useMemo(() => { - switch (size) { - case 'sm': - return { - fontSize: 'sm', - outP: '3px', - inlineP: 1 - }; - case 'md': - return { - fontSize: 'md', - outP: '4px', - inlineP: 2 - }; - case 'lg': - return { - fontSize: 'lg', - outP: '5px', - inlineP: 3 - }; - } - }, [size]); - const activeIndex = useMemo( - () => list.findIndex((item) => item.id === activeId), - [activeId, list] - ); - return ( - - {list.map((item, i) => ( - { - if (activeId === item.id) return; - onChange(item.id); - }} - > - {{item.label}} - - ))} - - ); -}; - -export default EditTabs; diff --git a/release-v5.1/packages/ui/src/components/Menu/index.tsx b/release-v5.1/packages/ui/src/components/Menu/index.tsx deleted file mode 100644 index d607f1f..0000000 --- a/release-v5.1/packages/ui/src/components/Menu/index.tsx +++ /dev/null @@ -1,56 +0,0 @@ -import React from 'react'; -import { Menu, MenuList, MenuItem, MenuItemProps } from '@chakra-ui/react'; - -interface Props { - width: number; - Button: React.ReactNode; - menuList: { - isActive?: boolean; - child: React.ReactNode; - onClick: () => void; - menuItemStyle?: MenuItemProps; - isDisabled?: boolean; - }[]; -} - -export const SealosMenu = ({ width, Button, menuList }: Props) => { - const menuItemStyles = { - borderRadius: '4px', - display: 'flex', - alignItems: 'center', - _hover: { - backgroundColor: 'rgba(17, 24, 36, 0.05)', - color: 'brightBlue.600' - } - }; - - return ( - - {Button} - - {menuList.map((item, i) => ( - - {item.child} - - ))} - - - ); -}; diff --git a/release-v5.1/packages/ui/src/components/Message/index.tsx b/release-v5.1/packages/ui/src/components/Message/index.tsx deleted file mode 100644 index 5b79e94..0000000 --- a/release-v5.1/packages/ui/src/components/Message/index.tsx +++ /dev/null @@ -1,133 +0,0 @@ -import { AlertStatus, Box, Center, Flex, UseToastOptions, useToast } from '@chakra-ui/react'; -import CloseIcon from '../icons/CloseIcon'; -import GeneralIcon from '../icons/GeneralIcon'; -import SuccessIcon from '../icons/SuccessIcon'; -import WarningIcon from '../icons/WarningIcon'; -interface CustomToastOptions extends UseToastOptions { - infoBoxBg?: string; - errorBoxBg?: string; - successBoxBg?: string; - warningBoxBg?: string; - loadingBoxBg?: string; - - infoIconBg?: string; - infoIconFill?: string; - - errorIconBg?: string; - errorIconFill?: string; - - warningIconBg?: string; - warningIconFill?: string; - - successIconBg?: string; - successIconFill?: string; - - loadingIconBg?: string; - loadingIconFill?: string; -} -export default function useMessage(props?: CustomToastOptions) { - const statusMap: Record = { - info: { - bg: props?.infoIconBg || '#DBF3FF', - icon: , - boxBg: props?.infoBoxBg - }, - error: { - bg: props?.errorIconBg || '#FEE4E2', - icon: , - boxBg: props?.errorBoxBg - }, - success: { - bg: props?.successIconBg || '#D0F5DC', - icon: , - boxBg: props?.successBoxBg - }, - warning: { - bg: props?.warningIconBg || '#FEF0C7', - icon: , - boxBg: props?.warningBoxBg - }, - - loading: { - bg: props?.loadingIconBg || '#FEF0C7', - icon: , - boxBg: props?.loadingBoxBg - } - }; - - const renderStatusIcon = (status: AlertStatus) => { - const { bg, icon } = statusMap[status]; - return ( -
- {icon} -
- ); - }; - - const renderStatusBoxBg = (status: AlertStatus) => { - const { boxBg } = statusMap[status]; - return boxBg; - }; - - const message = useToast({ - position: 'top', - ...props, - render: (props) => { - return ( - - - {renderStatusIcon(props?.status || 'info')} - - {props?.title && ( - - {props?.title} - - )} - {props?.description && ( - - {props?.description} - - )} - - {props?.isClosable && ( -
- -
- )} -
-
- ); - } - }); - - return { - message - }; -} diff --git a/release-v5.1/packages/ui/src/components/MySlider/index.tsx b/release-v5.1/packages/ui/src/components/MySlider/index.tsx deleted file mode 100644 index 9aeac26..0000000 --- a/release-v5.1/packages/ui/src/components/MySlider/index.tsx +++ /dev/null @@ -1,71 +0,0 @@ -import React, { useMemo } from 'react'; -import { - Slider, - SliderTrack, - SliderFilledTrack, - SliderThumb, - SliderMark, - Box -} from '@chakra-ui/react'; - -export const MySlider = ({ - markList, - setVal, - activeVal, - max = 100, - min = 0, - step = 1 -}: { - markList: { - label: string | number; - value: number; - }[]; - activeVal?: number; - setVal: (index: number) => void; - max?: number; - min?: number; - step?: number; -}) => { - const value = useMemo(() => { - const index = markList.findIndex((item) => item.value === activeVal); - return index > -1 ? index : 0; - }, [activeVal, markList]); - - if (min > 0) { - markList = markList.map((item, index) => { - if (index < min) { - return { - ...item, - label: '' - }; - } - return item; - }); - } - - return ( - - {markList.map((item, i) => ( - - - {item.label} - - - ))} - - - - - - ); -}; diff --git a/release-v5.1/packages/ui/src/components/MyTable/index.tsx b/release-v5.1/packages/ui/src/components/MyTable/index.tsx deleted file mode 100644 index 7a8e8d5..0000000 --- a/release-v5.1/packages/ui/src/components/MyTable/index.tsx +++ /dev/null @@ -1,75 +0,0 @@ -import React from 'react'; -import { Box, BoxProps, Grid, Flex } from '@chakra-ui/react'; - -interface Props extends BoxProps { - columns: { - title: string; - dataIndex?: string; - key: string; - render?: (item: any) => JSX.Element; - }[]; - data: any[]; - itemClass?: string; -} - -export const MyTable = ({ columns, data, itemClass = '' }: Props) => { - return ( - <> - - {columns.map((item, i) => ( - - {item.title} - - ))} - - {data.map((item: any, index1) => ( - - {columns.map((col, index2) => ( - - {col.render ? col.render(item) : col.dataIndex ? `${item[col.dataIndex]}` : ''} - - ))} - - ))} - - ); -}; diff --git a/release-v5.1/packages/ui/src/components/MyTooltip/index.tsx b/release-v5.1/packages/ui/src/components/MyTooltip/index.tsx deleted file mode 100644 index 9cd9a27..0000000 --- a/release-v5.1/packages/ui/src/components/MyTooltip/index.tsx +++ /dev/null @@ -1,23 +0,0 @@ -import React from 'react'; -import { Tooltip, TooltipProps } from '@chakra-ui/react'; - -export const MyTooltip = ({ children, ...props }: TooltipProps) => { - return ( - - {children} - - ); -}; diff --git a/release-v5.1/packages/ui/src/components/RangeInput/index.tsx b/release-v5.1/packages/ui/src/components/RangeInput/index.tsx deleted file mode 100644 index 6fafa00..0000000 --- a/release-v5.1/packages/ui/src/components/RangeInput/index.tsx +++ /dev/null @@ -1,90 +0,0 @@ -'use client'; - -import React, { useState } from 'react'; -import { HStack, Input, useNumberInput, IconButton, InputProps } from '@chakra-ui/react'; -import { AddIcon, MinusIcon } from '@chakra-ui/icons'; -import { MyTooltip } from '../MyTooltip'; - -export const RangeInput = ({ - w = 200, - step = 1, - precision = 0, - min = -Infinity, - max = Infinity, - value, - setVal, - hoverText, - inputStyle, - isDisabled = false -}: { - w?: number; - step?: number; - precision?: number; - min?: number; - max?: number; - value: number | ''; - setVal: (val: number) => void; - hoverText?: string; - inputStyle?: InputProps; - isDisabled?: boolean; -}) => { - const { getInputProps, getIncrementButtonProps, getDecrementButtonProps } = useNumberInput({ - focusInputOnChange: false, - step, - min, - max, - precision, - value, - onChange(_, val) { - setVal(val); - } - }); - const inc = getIncrementButtonProps(); - const dec = getDecrementButtonProps(); - const input = getInputProps(); - const [isFocus, setIsFocus] = useState(false); - - const IconStyle = { - variant: 'unstyled' - }; - - return ( - - { - setIsFocus(false); - }} - onFocusCapture={() => { - setIsFocus(true); - }} - > - } - aria-label="minus" - color={+input.value <= min ? 'blackAlpha.400' : 'blackAlpha.700'} - {...dec} - {...IconStyle} - /> - - } - aria-label="add" - color={+input.value >= max ? 'blackAlpha.400' : 'blackAlpha.700'} - {...inc} - {...IconStyle} - /> - - - ); -}; diff --git a/release-v5.1/packages/ui/src/components/RangeSlider/index.tsx b/release-v5.1/packages/ui/src/components/RangeSlider/index.tsx deleted file mode 100644 index 02b96fa..0000000 --- a/release-v5.1/packages/ui/src/components/RangeSlider/index.tsx +++ /dev/null @@ -1,57 +0,0 @@ -import React from 'react'; -import { - RangeSlider, - RangeSliderTrack, - RangeSliderFilledTrack, - RangeSliderThumb, - Box -} from '@chakra-ui/react'; - -export const MyRangeSlider = ({ - value, - max = 100, - min = 0, - step = 1, - setVal -}: { - value: [number, number]; - setVal: (index: [number, number]) => void; - max?: number; - min?: number; - step?: number; -}) => { - const startEndValStyle = { - position: 'absolute' as const, - top: '10px' - }; - - return ( - - - - {min} - - - {max} - - - - - {value[0] === min ? '' : value[0]} - - - {value[1] === max ? '' : value[1]} - - - ); -}; diff --git a/release-v5.1/packages/ui/src/components/Select/index.tsx b/release-v5.1/packages/ui/src/components/Select/index.tsx deleted file mode 100644 index a07ad47..0000000 --- a/release-v5.1/packages/ui/src/components/Select/index.tsx +++ /dev/null @@ -1,176 +0,0 @@ -'use client'; - -import React, { useRef, forwardRef, useMemo } from 'react'; -import { - Menu, - Box, - MenuList, - MenuItem, - Button, - useDisclosure, - useOutsideClick, - MenuButton, - Flex, - Portal -} from '@chakra-ui/react'; -import type { BoxProps, ButtonProps, MenuListProps, MenuProps } from '@chakra-ui/react'; -import { ChevronDownIcon } from '@chakra-ui/icons'; - -interface Props extends ButtonProps { - width?: string; - height?: string; - value?: string; - placeholder?: string; - list: { - label: string | React.ReactNode; - value: string; - }[]; - onchange?: (val: string) => void; - isInvalid?: boolean; - boxStyle?: BoxProps; - menuProps?: Omit; - menuListProps?: MenuListProps; - menuListPortal?: boolean; -} - -const MySelect = ( - { - placeholder, - value, - width = 'auto', - height = '30px', - list, - onchange, - isInvalid, - boxStyle, - menuProps, - menuListProps, - menuListPortal, - ...props - }: Props, - selectRef: any -) => { - const ref = useRef(null); - const SelectRef = useRef(null); - const { isOpen, onOpen, onClose } = useDisclosure(); - - useOutsideClick({ - ref: SelectRef, - handler: () => { - if (menuListPortal) return; - onClose(); - } - }); - - const activeMenu = useMemo(() => { - const foundItem = list.find((item) => item.value === value); - if (!foundItem && value) { - return { - label: value, - value: value - }; - } - return foundItem; - }, [list, value]); - - const menuList = ( - { - const w = ref.current?.clientWidth; - if (w) { - return `${w}px !important`; - } - return Array.isArray(width) - ? width.map((item) => `${item} !important`) - : `${width} !important`; - })()} - p={'6px'} - borderRadius={'base'} - border={'1px solid #E8EBF0'} - boxShadow={ - '0px 4px 10px 0px rgba(19, 51, 107, 0.10), 0px 0px 1px 0px rgba(19, 51, 107, 0.10)' - } - zIndex={99} - overflow={'overlay'} - maxH={'300px'} - {...menuListProps} - > - {list.map((item) => ( - { - if (onchange && value !== item.value) { - onchange(item.value); - } - }} - > - {item.label} - - ))} - - ); - - return ( - - { - isOpen ? onClose() : onOpen(); - }} - {...boxStyle} - > - } - width={width} - height={height} - ref={ref} - display={'flex'} - alignItems={'center'} - justifyContent={'center'} - border={'1px solid #E8EBF0'} - borderRadius={'md'} - fontSize={'12px'} - fontWeight={'400'} - variant={'outline'} - _hover={{ - borderColor: 'brightBlue.300', - bg: 'grayModern.50' - }} - _active={{ - transform: '' - }} - {...(isOpen - ? { - boxShadow: '0px 0px 0px 2.4px rgba(33, 155, 244, 0.15)', - borderColor: 'brightBlue.500', - bg: '#FFF' - } - : { - bg: '#F7F8FA', - borderColor: isInvalid ? 'red' : '' - })} - {...props} - > - {activeMenu ? activeMenu.label : placeholder} - - - {menuListPortal ? {menuList} : menuList} - - - ); -}; - -export default React.memo(forwardRef(MySelect)); diff --git a/release-v5.1/packages/ui/src/components/Tabs/index.tsx b/release-v5.1/packages/ui/src/components/Tabs/index.tsx deleted file mode 100644 index 46899ee..0000000 --- a/release-v5.1/packages/ui/src/components/Tabs/index.tsx +++ /dev/null @@ -1,78 +0,0 @@ -import React, { useMemo } from 'react'; -import { Box, Grid } from '@chakra-ui/react'; -import type { GridProps } from '@chakra-ui/react'; - -// @ts-ignore -interface Props extends GridProps { - list: { id: string; label: string }[]; - activeId: string; - size?: 'sm' | 'md' | 'lg'; - onChange: (id: string) => void; -} - -export const Tabs = ({ list, size = 'md', activeId, onChange, ...props }: Props) => { - const sizeMap = useMemo(() => { - switch (size) { - case 'sm': - return { - fontSize: 'base', - outP: '3px', - inlineP: '4px' - }; - case 'md': - return { - fontSize: 'md', - outP: '4px', - inlineP: '6px' - }; - case 'lg': - return { - fontSize: 'lg', - outP: '5px', - inlineP: 3 - }; - } - }, [size]); - return ( - - {list.map((item) => ( - { - if (activeId === item.id) return; - onChange(item.id); - }} - > - {item.label} - - ))} - - ); -}; diff --git a/release-v5.1/packages/ui/src/components/Tip/index.tsx b/release-v5.1/packages/ui/src/components/Tip/index.tsx deleted file mode 100644 index a7524ee..0000000 --- a/release-v5.1/packages/ui/src/components/Tip/index.tsx +++ /dev/null @@ -1,69 +0,0 @@ -import { BoxProps, Flex } from '@chakra-ui/react'; -import { useMemo } from 'react'; - -interface Props extends BoxProps { - text: string; - icon?: JSX.Element; - theme?: 'blue'; - size?: 'sm' | 'md' | 'lg'; -} - -export const Tip = ({ size = 'md', text, icon, theme, ...props }: Props) => { - const sizeMap = useMemo(() => { - switch (size) { - case 'sm': - return { - fontSize: '12px', - px: 3, - py: 1 - }; - case 'md': - return { - fontSize: '14px', - px: 4, - py: 2 - }; - case 'lg': - return { - fontSize: '16px', - px: 5, - py: 2 - }; - default: - return {}; - } - }, [size]); - - const themeMap = useMemo(() => { - switch (theme) { - case 'blue': - return { - color: '#0884DD', - bg: '#ECF8FF' - }; - default: - return { - color: '#0884DD', - bg: '#ECF8FF' - }; - } - }, [theme]); - - return ( - - {icon ? ( - - {icon} - - ) : null} - {text} - - ); -}; diff --git a/release-v5.1/packages/ui/src/components/YamlCode/YamlCode.tsx b/release-v5.1/packages/ui/src/components/YamlCode/YamlCode.tsx deleted file mode 100644 index 60fc119..0000000 --- a/release-v5.1/packages/ui/src/components/YamlCode/YamlCode.tsx +++ /dev/null @@ -1,52 +0,0 @@ -import { ReactNode, useMemo } from 'react'; -import ReactMarkdown from 'react-markdown'; -import { Light as SyntaxHighlighter } from 'react-syntax-highlighter'; -import { codeTheme } from './hljs'; -import { Box, BoxProps } from '@chakra-ui/react'; -import { ReactMarkdownOptions } from 'react-markdown/lib/react-markdown'; - -type YamlCodeProps = Omit & { markdown: ReactMarkdownOptions }; - -export default function YamlCode(props: YamlCodeProps) { - const { markdown, ...rest } = props; - const { children, components, ...markdownRest } = markdown; - const markdownCode = useMemo(() => '```yaml\n' + children + '```', [children]); - return ( - ': { - h: '100%' - } - }} - {...rest} - children={ - - ) as any) - ) : ( - - {children} - - ); - }, - ...components - }} - /> - } - /> - ); -} diff --git a/release-v5.1/packages/ui/src/components/YamlCode/hljs.ts b/release-v5.1/packages/ui/src/components/YamlCode/hljs.ts deleted file mode 100644 index b4e1348..0000000 --- a/release-v5.1/packages/ui/src/components/YamlCode/hljs.ts +++ /dev/null @@ -1,115 +0,0 @@ -export const codeTheme = { - hljs: { - display: 'block', - overflowX: 'auto', - color: '#2f3337' - }, - linenumber: { - minWidth: '2em' - }, - 'hljs-comment': { - color: '#656e77' - }, - comment: { - color: '#A19F9D' - }, - 'hljs-keyword': { - color: '#015692' - }, - 'hljs-selector-tag': { - color: '#015692' - }, - 'hljs-meta-keyword': { - color: '#015692' - }, - 'hljs-doctag': { - color: '#015692' - }, - 'hljs-section': { - color: '#015692' - }, - 'hljs-selector-class': { - color: '#015692' - }, - 'hljs-meta': { - color: '#015692' - }, - 'hljs-selector-pseudo': { - color: '#015692' - }, - 'hljs-attr': { - color: '#015692' - }, - 'hljs-attribute': { - color: '#803378' - }, - 'hljs-name': { - color: '#b75501' - }, - 'hljs-type': { - color: '#b75501' - }, - 'hljs-number': { - color: '#b75501' - }, - 'hljs-selector-id': { - color: '#b75501' - }, - 'hljs-quote': { - color: '#b75501' - }, - 'hljs-template-tag': { - color: '#b75501' - }, - 'hljs-built_in': { - color: '#b75501' - }, - 'hljs-title': { - color: '#b75501' - }, - 'hljs-literal': { - color: '#b75501' - }, - 'hljs-string': { - color: '#54790d' - }, - 'hljs-regexp': { - color: '#54790d' - }, - 'hljs-symbol': { - color: '#54790d' - }, - 'hljs-variable': { - color: '#54790d' - }, - 'hljs-template-variable': { - color: '#54790d' - }, - 'hljs-link': { - color: '#54790d' - }, - 'hljs-selector-attr': { - color: '#54790d' - }, - 'hljs-meta-string': { - color: '#54790d' - }, - 'hljs-bullet': { - color: '#535a60' - }, - 'hljs-code': { - color: '#535a60' - }, - 'hljs-deletion': { - color: '#c02d2e' - }, - 'hljs-addition': { - color: '#2f6f44' - }, - 'hljs-emphasis': { - fontStyle: 'italic' - }, - 'hljs-strong': { - fontWeight: 'bold' - } -} as const; diff --git a/release-v5.1/packages/ui/src/components/YamlCode/index.module.scss b/release-v5.1/packages/ui/src/components/YamlCode/index.module.scss deleted file mode 100644 index 883b64a..0000000 --- a/release-v5.1/packages/ui/src/components/YamlCode/index.module.scss +++ /dev/null @@ -1,6 +0,0 @@ -.markdown { - height: '100%'; - div { - overflow: visible !important; - } -} diff --git a/release-v5.1/packages/ui/src/components/YamlCode/index.ts b/release-v5.1/packages/ui/src/components/YamlCode/index.ts deleted file mode 100644 index df8f563..0000000 --- a/release-v5.1/packages/ui/src/components/YamlCode/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -import YamlCode from './YamlCode'; -export default YamlCode; diff --git a/release-v5.1/packages/ui/src/components/icons/AddIcon.tsx b/release-v5.1/packages/ui/src/components/icons/AddIcon.tsx deleted file mode 100644 index 94ea591..0000000 --- a/release-v5.1/packages/ui/src/components/icons/AddIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const AddIcon = createIcon({ - displayName: 'AddIcon', - viewBox: '0 0 20 21', - d: 'M9.16663 16.6159V11.6159H4.16663V9.94922H9.16663V4.94922H10.8333V9.94922H15.8333V11.6159H10.8333V16.6159H9.16663Z' -}); -export default AddIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/ArrowDownSLineIcon.tsx b/release-v5.1/packages/ui/src/components/icons/ArrowDownSLineIcon.tsx deleted file mode 100644 index 9a287eb..0000000 --- a/release-v5.1/packages/ui/src/components/icons/ArrowDownSLineIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ArrowDownSLineIcon = createIcon({ - displayName: 'ArrowDownSLineIcon', - viewBox: '0 0 20 20', - d: 'M10.0001 10.9766L14.1251 6.85156L15.3034 8.0299L10.0001 13.3332L4.69678 8.0299L5.87511 6.85156L10.0001 10.9766Z' -}); -export default ArrowDownSLineIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/ArrowExchangeIcon.tsx b/release-v5.1/packages/ui/src/components/icons/ArrowExchangeIcon.tsx deleted file mode 100644 index c082982..0000000 --- a/release-v5.1/packages/ui/src/components/icons/ArrowExchangeIcon.tsx +++ /dev/null @@ -1,19 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ArrowExchangeIcon = createIcon({ - displayName: 'ArrowExchangeIcon', - viewBox: '0 0 16 17', - path: ( - - - - ) -}); -export default ArrowExchangeIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/BucketIcon.tsx b/release-v5.1/packages/ui/src/components/icons/BucketIcon.tsx deleted file mode 100644 index caa352a..0000000 --- a/release-v5.1/packages/ui/src/components/icons/BucketIcon.tsx +++ /dev/null @@ -1,10 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const BucketIcon = createIcon({ - displayName: 'BucketIcon', - viewBox: '0 0 16 16', - d: 'M8 2.5C6.8535 2.5 5.703 2.6485 4.797 2.8905C4.344 3.0115 3.957 3.1385 3.6405 3.328C3.324 3.518 3 3.801 3 4.25C3 4.3615 3.0275 4.4705 3.0625 4.5625C3.1365 4.9435 4.3885 11.4625 4.5155 12.094C4.576 12.3945 4.7675 12.617 4.9845 12.7815C5.201 12.9455 5.4495 13.0685 5.75 13.1715C6.3515 13.379 7.125 13.5 8 13.5C8.875 13.5 9.645 13.379 10.25 13.172C10.5525 13.0685 10.8125 12.949 11.0315 12.781C11.25 12.6135 11.455 12.3925 11.5 12.078C11.51 12.008 11.605 11.4065 11.75 10.6565C11.895 9.9065 12.082 8.9665 12.2655 8.0315C12.6095 6.2715 12.8985 4.76 12.9375 4.5625C12.977 4.46294 12.9981 4.35708 13 4.25C13 3.801 12.676 3.5175 12.3595 3.328C12.043 3.1385 11.656 3.0115 11.203 2.8905C10.297 2.6485 9.1465 2.5 8 2.5ZM8 3.5C9.0625 3.5 10.16 3.633 10.953 3.844C11.3495 3.949 11.66 4.078 11.844 4.1875C11.8945 4.219 11.8985 4.2305 11.922 4.25C11.8985 4.27 11.8945 4.2815 11.8435 4.3125C11.66 4.422 11.3495 4.551 10.9535 4.6565C10.16 4.8665 9.062 5 8 5C6.938 5 5.84 4.867 5.047 4.656C4.6505 4.551 4.34 4.422 4.1565 4.3125C4.1055 4.281 4.1015 4.2695 4.078 4.25C4.1015 4.23 4.1055 4.2185 4.156 4.1875C4.34 4.078 4.6505 3.949 5.047 3.8435C5.84 3.633 6.9375 3.5 8 3.5ZM4.2345 5.4375C4.412 5.5 4.594 5.5545 4.797 5.6095C5.703 5.8515 6.8535 6 8 6C9.1465 6 10.297 5.8515 11.203 5.6095C11.4065 5.5545 11.588 5.5 11.7655 5.4375C11.627 6.1175 11.5195 6.6095 11.2815 7.828C11.164 8.426 11.0725 8.961 10.969 9.5155C10.963 9.5235 10.957 9.5175 10.9065 9.578C10.836 9.662 10.707 9.8045 10.5 9.9375C10.086 10.205 9.338 10.5 8 10.5C6.662 10.5 5.9 10.203 5.4845 9.9375C5.33674 9.8445 5.20489 9.72835 5.094 9.5935L5.015 9.5C4.675 7.746 4.435 6.48 4.234 5.4375H4.2345ZM8 6.5C7.1775 6.5 6.5 7.1775 6.5 8C6.5 8.8225 7.1775 9.5 8 9.5C8.8225 9.5 9.5 8.8225 9.5 8C9.5 7.1775 8.8225 6.5 8 6.5ZM8 7.5C8.2815 7.5 8.5 7.719 8.5 8C8.5 8.2815 8.281 8.5 8 8.5C7.7185 8.5 7.5 8.281 7.5 8C7.5 7.7185 7.719 7.5 8 7.5ZM5.297 10.953C5.8985 11.252 6.756 11.5 8 11.5C9.2285 11.5 10.088 11.2675 10.6875 10.9685C10.6115 11.3475 10.5175 11.797 10.5 11.922C10.49 11.9355 10.463 11.953 10.422 11.9845C10.33 12.0545 10.168 12.156 9.9375 12.2345C9.4765 12.3905 8.783 12.5 8 12.5C7.217 12.5 6.535 12.3925 6.078 12.2345C5.8495 12.156 5.674 12.0585 5.578 11.9845C5.4825 11.91 5.4785 11.875 5.4845 11.906C5.469 11.832 5.3455 11.199 5.297 10.953Z' -}); - -export default BucketIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/CancelIcon.tsx b/release-v5.1/packages/ui/src/components/icons/CancelIcon.tsx deleted file mode 100644 index 69e05e1..0000000 --- a/release-v5.1/packages/ui/src/components/icons/CancelIcon.tsx +++ /dev/null @@ -1,16 +0,0 @@ -'use client'; - -import { Icon } from '@chakra-ui/react'; -export default function CancelIcon(props: Parameters[0]) { - return ( - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/ChangeIcon.tsx b/release-v5.1/packages/ui/src/components/icons/ChangeIcon.tsx deleted file mode 100644 index 1b4ac94..0000000 --- a/release-v5.1/packages/ui/src/components/icons/ChangeIcon.tsx +++ /dev/null @@ -1,27 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ChangeIcon = createIcon({ - displayName: 'ChangeIcon', - viewBox: '0 0 16 16', - path: ( - - - - - - ) -}); diff --git a/release-v5.1/packages/ui/src/components/icons/ClearOutlineIcon.tsx b/release-v5.1/packages/ui/src/components/icons/ClearOutlineIcon.tsx deleted file mode 100644 index d6a5194..0000000 --- a/release-v5.1/packages/ui/src/components/icons/ClearOutlineIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ClearOutlineIcon = createIcon({ - displayName: 'ClearOutlineIcon', - viewBox: '0 0 16 16', - d: 'M14.1031 13.3375L13.275 8.5625H13.5547C13.7797 8.5625 13.9609 8.38125 13.9609 8.15625V5.15625C13.9609 4.93125 13.7797 4.75 13.5547 4.75H9.71094V1.90625C9.71094 1.68125 9.52969 1.5 9.30469 1.5H6.80469C6.57969 1.5 6.39844 1.68125 6.39844 1.90625V4.75H2.55469C2.32969 4.75 2.14844 4.93125 2.14844 5.15625V8.15625C2.14844 8.38125 2.32969 8.5625 2.55469 8.5625H2.83437L2.00625 13.3375C2.00156 13.3609 2 13.3844 2 13.4062C2 13.6313 2.18125 13.8125 2.40625 13.8125H13.7031C13.7266 13.8125 13.75 13.8109 13.7719 13.8062C13.9938 13.7687 14.1422 13.5578 14.1031 13.3375ZM3.24219 5.84375H7.49219V2.59375H8.61719V5.84375H12.8672V7.46875H3.24219V5.84375ZM10.5547 12.7188V10.2812C10.5547 10.2125 10.4984 10.1562 10.4297 10.1562H9.67969C9.61094 10.1562 9.55469 10.2125 9.55469 10.2812V12.7188H6.55469V10.2812C6.55469 10.2125 6.49844 10.1562 6.42969 10.1562H5.67969C5.61094 10.1562 5.55469 10.2125 5.55469 10.2812V12.7188H3.22344L3.92812 8.65625H12.1797L12.8844 12.7188H10.5547Z' -}); -export default ClearOutlineIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/CloseIcon.tsx b/release-v5.1/packages/ui/src/components/icons/CloseIcon.tsx deleted file mode 100644 index ddb31cd..0000000 --- a/release-v5.1/packages/ui/src/components/icons/CloseIcon.tsx +++ /dev/null @@ -1,22 +0,0 @@ -'use client'; - -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function CloseIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/CopyIcon.tsx b/release-v5.1/packages/ui/src/components/icons/CopyIcon.tsx deleted file mode 100644 index 09ac602..0000000 --- a/release-v5.1/packages/ui/src/components/icons/CopyIcon.tsx +++ /dev/null @@ -1,15 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const CopyIcon = createIcon({ - displayName: 'CopyIcon', - viewBox: '0 0 20 21', - path: ( - - ) -}); -export default CopyIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/CreateFolderIcon.tsx b/release-v5.1/packages/ui/src/components/icons/CreateFolderIcon.tsx deleted file mode 100644 index a8dad7e..0000000 --- a/release-v5.1/packages/ui/src/components/icons/CreateFolderIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const CreateFolderIcon = createIcon({ - displayName: 'CreateFolderIcon', - viewBox: '0 0 24 25', - d: 'M15 16.3384C15.2833 16.3384 15.521 16.2424 15.713 16.0504C15.9043 15.859 16 15.6217 16 15.3384V14.3384H17C17.2833 14.3384 17.5207 14.2424 17.712 14.0504C17.904 13.859 18 13.6217 18 13.3384C18 13.055 17.904 12.8174 17.712 12.6254C17.5207 12.434 17.2833 12.3384 17 12.3384H16V11.3384C16 11.055 15.9043 10.8174 15.713 10.6254C15.521 10.434 15.2833 10.3384 15 10.3384C14.7167 10.3384 14.4793 10.434 14.288 10.6254C14.096 10.8174 14 11.055 14 11.3384V12.3384H13C12.7167 12.3384 12.4793 12.434 12.288 12.6254C12.096 12.8174 12 13.055 12 13.3384C12 13.6217 12.096 13.859 12.288 14.0504C12.4793 14.2424 12.7167 14.3384 13 14.3384H14V15.3384C14 15.6217 14.096 15.859 14.288 16.0504C14.4793 16.2424 14.7167 16.3384 15 16.3384ZM4 20.3384C3.45 20.3384 2.97933 20.1427 2.588 19.7514C2.196 19.3594 2 18.8884 2 18.3384V6.33838C2 5.78838 2.196 5.31771 2.588 4.92638C2.97933 4.53438 3.45 4.33838 4 4.33838H9.175C9.44167 4.33838 9.696 4.38838 9.938 4.48838C10.1793 4.58838 10.3917 4.73005 10.575 4.91338L12 6.33838H20C20.55 6.33838 21.021 6.53438 21.413 6.92638C21.8043 7.31771 22 7.78838 22 8.33838V18.3384C22 18.8884 21.8043 19.3594 21.413 19.7514C21.021 20.1427 20.55 20.3384 20 20.3384H4ZM4 6.33838V18.3384H20V8.33838H11.175L9.175 6.33838H4ZM4 6.33838V18.3384V6.33838Z' -}); -export default CreateFolderIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/CurrencySymbol.tsx b/release-v5.1/packages/ui/src/components/icons/CurrencySymbol.tsx deleted file mode 100644 index a6d573f..0000000 --- a/release-v5.1/packages/ui/src/components/icons/CurrencySymbol.tsx +++ /dev/null @@ -1,176 +0,0 @@ -import { Icon, IconProps, Text, TextProps } from '@chakra-ui/react'; - -export default function CurrencySymbol({ - type = 'shellCoin', - shellCoin, - ...props -}: { - shellCoin?: IconProps; - type?: 'shellCoin' | 'cny' | 'usd'; -} & TextProps) { - return type === 'shellCoin' ? ( - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ) : type === 'cny' ? ( - ¥ - ) : ( - $ - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/DeleteIcon.tsx b/release-v5.1/packages/ui/src/components/icons/DeleteIcon.tsx deleted file mode 100644 index 6f5f8c8..0000000 --- a/release-v5.1/packages/ui/src/components/icons/DeleteIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const DeleteIcon = createIcon({ - displayName: 'DeleteIcon', - viewBox: '0 0 16 16', - d: 'M4.66663 14C4.29996 14 3.98596 13.8693 3.72463 13.608C3.46329 13.3467 3.33285 13.0329 3.33329 12.6667V4C3.14441 4 2.98596 3.936 2.85796 3.808C2.72996 3.68 2.66618 3.52178 2.66663 3.33334C2.66663 3.14445 2.73063 2.986 2.85863 2.858C2.98663 2.73 3.14485 2.66622 3.33329 2.66667H5.99996C5.99996 2.47778 6.06396 2.31934 6.19196 2.19134C6.31996 2.06334 6.47818 1.99956 6.66663 2H9.3333C9.52218 2 9.68063 2.064 9.80863 2.192C9.93663 2.32 10.0004 2.47822 9.99996 2.66667H12.6666C12.8555 2.66667 13.014 2.73067 13.142 2.85867C13.27 2.98667 13.3337 3.14489 13.3333 3.33334C13.3333 3.52222 13.2693 3.68067 13.1413 3.80867C13.0133 3.93667 12.8551 4.00045 12.6666 4V12.6667C12.6666 13.0333 12.536 13.3473 12.2746 13.6087C12.0133 13.87 11.6995 14.0004 11.3333 14H4.66663ZM4.66663 4V12.6667H11.3333V4H4.66663ZM5.99996 10.6667C5.99996 10.8556 6.06396 11.014 6.19196 11.142C6.31996 11.27 6.47818 11.3338 6.66663 11.3333C6.85552 11.3333 7.01396 11.2693 7.14196 11.1413C7.26996 11.0133 7.33374 10.8551 7.33329 10.6667V6C7.33329 5.81111 7.26929 5.65267 7.14129 5.52467C7.01329 5.39667 6.85507 5.33289 6.66663 5.33334C6.47774 5.33334 6.31929 5.39734 6.19129 5.52534C6.06329 5.65334 5.99952 5.81156 5.99996 6V10.6667ZM8.66663 10.6667C8.66663 10.8556 8.73063 11.014 8.85863 11.142C8.98663 11.27 9.14485 11.3338 9.3333 11.3333C9.52218 11.3333 9.68063 11.2693 9.80863 11.1413C9.93663 11.0133 10.0004 10.8551 9.99996 10.6667V6C9.99996 5.81111 9.93596 5.65267 9.80796 5.52467C9.67996 5.39667 9.52174 5.33289 9.3333 5.33334C9.14441 5.33334 8.98596 5.39734 8.85796 5.52534C8.72996 5.65334 8.66618 5.81156 8.66663 6V10.6667Z' -}); -export default DeleteIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/DetailsMoreIcon.tsx b/release-v5.1/packages/ui/src/components/icons/DetailsMoreIcon.tsx deleted file mode 100644 index 9cea1cf..0000000 --- a/release-v5.1/packages/ui/src/components/icons/DetailsMoreIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ListIcon = createIcon({ - displayName: 'ListIcon', - viewBox: '0 0 17 16', - d: 'M1.83333 5.83317C1.83333 5.65636 1.90357 5.48679 2.02859 5.36177C2.15361 5.23674 2.32318 5.1665 2.49999 5.1665H14.5C14.6768 5.1665 14.8464 5.23674 14.9714 5.36177C15.0964 5.48679 15.1667 5.65636 15.1667 5.83317C15.1667 6.00998 15.0964 6.17955 14.9714 6.30457C14.8464 6.4296 14.6768 6.49984 14.5 6.49984H2.49999C2.32318 6.49984 2.15361 6.4296 2.02859 6.30457C1.90357 6.17955 1.83333 6.00998 1.83333 5.83317ZM1.83333 8.49984C1.83333 8.32303 1.90357 8.15346 2.02859 8.02843C2.15361 7.90341 2.32318 7.83317 2.49999 7.83317H14.5C14.6768 7.83317 14.8464 7.90341 14.9714 8.02843C15.0964 8.15346 15.1667 8.32303 15.1667 8.49984C15.1667 8.67665 15.0964 8.84622 14.9714 8.97124C14.8464 9.09627 14.6768 9.1665 14.5 9.1665H2.49999C2.32318 9.1665 2.15361 9.09627 2.02859 8.97124C1.90357 8.84622 1.83333 8.67665 1.83333 8.49984ZM2.49999 10.4998C2.32318 10.4998 2.15361 10.5701 2.02859 10.6951C1.90357 10.8201 1.83333 10.9897 1.83333 11.1665C1.83333 11.3433 1.90357 11.5129 2.02859 11.6379C2.15361 11.7629 2.32318 11.8332 2.49999 11.8332H10.5C10.6768 11.8332 10.8464 11.7629 10.9714 11.6379C11.0964 11.5129 11.1667 11.3433 11.1667 11.1665C11.1667 10.9897 11.0964 10.8201 10.9714 10.6951C10.8464 10.5701 10.6768 10.4998 10.5 10.4998H2.49999Z' -}); -export default ListIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/DnsIcon.tsx b/release-v5.1/packages/ui/src/components/icons/DnsIcon.tsx deleted file mode 100644 index 8e7b10b..0000000 --- a/release-v5.1/packages/ui/src/components/icons/DnsIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const DnsIcon = createIcon({ - displayName: 'DnsIcon', - viewBox: '0 0 16 17', - d: 'M12.6667 10.3384V13.005H3.33333V10.3384H12.6667ZM13.3333 9.00505H2.66667C2.3 9.00505 2 9.30505 2 9.67171V13.6717C2 14.0384 2.3 14.3384 2.66667 14.3384H13.3333C13.7 14.3384 14 14.0384 14 13.6717V9.67171C14 9.30505 13.7 9.00505 13.3333 9.00505ZM4.66667 12.6717C4.12 12.6717 3.66667 12.225 3.66667 11.6717C3.66667 11.1184 4.12 10.6717 4.66667 10.6717C5.21333 10.6717 5.66667 11.1184 5.66667 11.6717C5.66667 12.225 5.22 12.6717 4.66667 12.6717ZM12.6667 3.67171V6.33838H3.33333V3.67171H12.6667ZM13.3333 2.33838H2.66667C2.3 2.33838 2 2.63838 2 3.00505V7.00505C2 7.37171 2.3 7.67171 2.66667 7.67171H13.3333C13.7 7.67171 14 7.37171 14 7.00505V3.00505C14 2.63838 13.7 2.33838 13.3333 2.33838ZM4.66667 6.00505C4.12 6.00505 3.66667 5.55838 3.66667 5.00505C3.66667 4.45171 4.12 4.00505 4.66667 4.00505C5.21333 4.00505 5.66667 4.45838 5.66667 5.00505C5.66667 5.55171 5.22 6.00505 4.66667 6.00505Z' -}); -export default DnsIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/DocsIcon.tsx b/release-v5.1/packages/ui/src/components/icons/DocsIcon.tsx deleted file mode 100644 index b123f7d..0000000 --- a/release-v5.1/packages/ui/src/components/icons/DocsIcon.tsx +++ /dev/null @@ -1,23 +0,0 @@ -'use client'; - -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function DocsIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/DownloadIcon.tsx b/release-v5.1/packages/ui/src/components/icons/DownloadIcon.tsx deleted file mode 100644 index 5e433d1..0000000 --- a/release-v5.1/packages/ui/src/components/icons/DownloadIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const DownloadIcon = createIcon({ - displayName: 'DownloadIcon', - viewBox: '0 0 17 17', - d: 'M8.50033 11.833L11.167 9.16634L10.2337 8.23301L9.16699 9.26634V6.49967H7.83366V9.26634L6.76699 8.23301L5.83366 9.16634L8.50033 11.833ZM4.50033 15.1663C4.13366 15.1663 3.81966 15.0357 3.55833 14.7743C3.29699 14.513 3.16655 14.1992 3.16699 13.833V5.83301L7.16699 1.83301H12.5003C12.867 1.83301 13.181 1.96367 13.4423 2.22501C13.7037 2.48634 13.8341 2.80012 13.8337 3.16634V13.833C13.8337 14.1997 13.703 14.5137 13.4417 14.775C13.1803 15.0363 12.8665 15.1668 12.5003 15.1663H4.50033ZM4.50033 13.833H12.5003V3.16634H7.73366L4.50033 6.39967V13.833Z' -}); -export default DownloadIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/EditIcon.tsx b/release-v5.1/packages/ui/src/components/icons/EditIcon.tsx deleted file mode 100644 index 3892fbb..0000000 --- a/release-v5.1/packages/ui/src/components/icons/EditIcon.tsx +++ /dev/null @@ -1,24 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const EditIcon = createIcon({ - displayName: 'EditIcon', - viewBox: '0 0 16 16', - path: ( - - - - - - ) -}); -export default EditIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/ExchangeIcon.tsx b/release-v5.1/packages/ui/src/components/icons/ExchangeIcon.tsx deleted file mode 100644 index 00eea35..0000000 --- a/release-v5.1/packages/ui/src/components/icons/ExchangeIcon.tsx +++ /dev/null @@ -1,21 +0,0 @@ -import { Icon } from '@chakra-ui/react'; -export default function ExchangeIcon(props: Parameters[0]) { - return ( - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/ExpandMoreIcon.tsx b/release-v5.1/packages/ui/src/components/icons/ExpandMoreIcon.tsx deleted file mode 100644 index 6f97f74..0000000 --- a/release-v5.1/packages/ui/src/components/icons/ExpandMoreIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ExpanMoreIcon = createIcon({ - displayName: 'ExpanMoreIcon', - viewBox: '0 0 16 17', - d: 'M8.00045 10.2673C7.91156 10.2673 7.82823 10.2533 7.75045 10.2253C7.67267 10.1977 7.60045 10.1506 7.53378 10.0839L4.45045 7.0006C4.32823 6.87838 4.27 6.72549 4.27578 6.54194C4.28112 6.35883 4.34489 6.20616 4.46711 6.08394C4.58934 5.96171 4.74489 5.9006 4.93378 5.9006C5.12267 5.9006 5.27823 5.96171 5.40045 6.08394L8.00045 8.68394L10.6171 6.06727C10.7393 5.94505 10.8922 5.8866 11.0758 5.89194C11.2589 5.89771 11.4116 5.96171 11.5338 6.08394C11.656 6.20616 11.7171 6.36171 11.7171 6.5506C11.7171 6.73949 11.656 6.89505 11.5338 7.01727L8.46712 10.0839C8.40045 10.1506 8.32823 10.1977 8.25045 10.2253C8.17267 10.2533 8.08934 10.2673 8.00045 10.2673Z' -}); -export default ExpanMoreIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/FileIcon.tsx b/release-v5.1/packages/ui/src/components/icons/FileIcon.tsx deleted file mode 100644 index 28c11ac..0000000 --- a/release-v5.1/packages/ui/src/components/icons/FileIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const FileIcon = createIcon({ - displayName: 'FileIcon', - viewBox: '0 0 21 21', - d: 'M12.5149 2.00513H5.84819C4.93153 2.00513 4.18986 2.75513 4.18986 3.67179L4.18153 17.0051C4.18153 17.9218 4.92319 18.6718 5.83986 18.6718H15.8482C16.7649 18.6718 17.5149 17.9218 17.5149 17.0051V7.00513L12.5149 2.00513ZM5.84819 17.0051V3.67179H11.6815V7.83846H15.8482V17.0051H5.84819Z' -}); -export default FileIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/FolderIcon.tsx b/release-v5.1/packages/ui/src/components/icons/FolderIcon.tsx deleted file mode 100644 index 6ba7889..0000000 --- a/release-v5.1/packages/ui/src/components/icons/FolderIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const FolderIcon = createIcon({ - displayName: 'FolderIcon', - viewBox: '0 0 21 21', - d: 'M4.18153 17.005C3.7232 17.005 3.33097 16.8419 3.00486 16.5158C2.6782 16.1891 2.51486 15.7966 2.51486 15.3383V5.3383C2.51486 4.87996 2.6782 4.48774 3.00486 4.16163C3.33097 3.83496 3.7232 3.67163 4.18153 3.67163H9.18153L10.8482 5.3383H17.5149C17.9732 5.3383 18.3657 5.50163 18.6924 5.8283C19.0185 6.15441 19.1815 6.54663 19.1815 7.00496V15.3383C19.1815 15.7966 19.0185 16.1891 18.6924 16.5158C18.3657 16.8419 17.9732 17.005 17.5149 17.005H4.18153Z' -}); -export default FolderIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/GeneralIcon.tsx b/release-v5.1/packages/ui/src/components/icons/GeneralIcon.tsx deleted file mode 100644 index fc840c8..0000000 --- a/release-v5.1/packages/ui/src/components/icons/GeneralIcon.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function GeneralIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/GithubIcon.tsx b/release-v5.1/packages/ui/src/components/icons/GithubIcon.tsx deleted file mode 100644 index fc7bb41..0000000 --- a/release-v5.1/packages/ui/src/components/icons/GithubIcon.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import { Icon } from '@chakra-ui/react'; -export default function GithubIcon(props: Parameters[0]) { - return ( - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/GoogleIcon.tsx b/release-v5.1/packages/ui/src/components/icons/GoogleIcon.tsx deleted file mode 100644 index 16f6f4d..0000000 --- a/release-v5.1/packages/ui/src/components/icons/GoogleIcon.tsx +++ /dev/null @@ -1,30 +0,0 @@ -import { Icon } from '@chakra-ui/react'; -export default function GoogleIcon(props: Parameters[0]) { - return ( - - - - - {' '} - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/GroupAdd.tsx b/release-v5.1/packages/ui/src/components/icons/GroupAdd.tsx deleted file mode 100644 index 09a7109..0000000 --- a/release-v5.1/packages/ui/src/components/icons/GroupAdd.tsx +++ /dev/null @@ -1,10 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const GroupAddIcon = createIcon({ - displayName: 'GroupAddIcon', - viewBox: '0 0 13 12', - d: 'M6.79004 5.975C7.03171 5.70833 7.21712 5.40417 7.34629 5.0625C7.47546 4.72083 7.54004 4.36667 7.54004 4C7.54004 3.63333 7.47546 3.27917 7.34629 2.9375C7.21712 2.59583 7.03171 2.29167 6.79004 2.025C7.29004 2.09167 7.70671 2.3125 8.04004 2.6875C8.37337 3.0625 8.54004 3.5 8.54004 4C8.54004 4.5 8.37337 4.9375 8.04004 5.3125C7.70671 5.6875 7.29004 5.90833 6.79004 5.975ZM9.54004 10V8.5C9.54004 8.2 9.47337 7.91458 9.34004 7.64375C9.20671 7.37292 9.03171 7.13333 8.81504 6.925C9.24004 7.075 9.63379 7.26875 9.99629 7.50625C10.3588 7.74375 10.54 8.075 10.54 8.5V10H9.54004ZM10.54 6.5V5.5H9.54004V4.5H10.54V3.5H11.54V4.5H12.54V5.5H11.54V6.5H10.54ZM4.54004 6C3.99004 6 3.51921 5.80417 3.12754 5.4125C2.73587 5.02083 2.54004 4.55 2.54004 4C2.54004 3.45 2.73587 2.97917 3.12754 2.5875C3.51921 2.19583 3.99004 2 4.54004 2C5.09004 2 5.56087 2.19583 5.95254 2.5875C6.34421 2.97917 6.54004 3.45 6.54004 4C6.54004 4.55 6.34421 5.02083 5.95254 5.4125C5.56087 5.80417 5.09004 6 4.54004 6ZM0.540039 10V8.6C0.540039 8.31667 0.612956 8.05625 0.758789 7.81875C0.904622 7.58125 1.09837 7.4 1.34004 7.275C1.85671 7.01667 2.38171 6.82292 2.91504 6.69375C3.44837 6.56458 3.99004 6.5 4.54004 6.5C5.09004 6.5 5.63171 6.56458 6.16504 6.69375C6.69837 6.82292 7.22337 7.01667 7.74004 7.275C7.98171 7.4 8.17546 7.58125 8.32129 7.81875C8.46712 8.05625 8.54004 8.31667 8.54004 8.6V10H0.540039ZM4.54004 5C4.81504 5 5.05046 4.90208 5.24629 4.70625C5.44212 4.51042 5.54004 4.275 5.54004 4C5.54004 3.725 5.44212 3.48958 5.24629 3.29375C5.05046 3.09792 4.81504 3 4.54004 3C4.26504 3 4.02962 3.09792 3.83379 3.29375C3.63796 3.48958 3.54004 3.725 3.54004 4C3.54004 4.275 3.63796 4.51042 3.83379 4.70625C4.02962 4.90208 4.26504 5 4.54004 5ZM1.54004 9H7.54004V8.6C7.54004 8.50833 7.51712 8.425 7.47129 8.35C7.42546 8.275 7.36504 8.21667 7.29004 8.175C6.84004 7.95 6.38587 7.78125 5.92754 7.66875C5.46921 7.55625 5.00671 7.5 4.54004 7.5C4.07337 7.5 3.61087 7.55625 3.15254 7.66875C2.69421 7.78125 2.24004 7.95 1.79004 8.175C1.71504 8.21667 1.65462 8.275 1.60879 8.35C1.56296 8.425 1.54004 8.50833 1.54004 8.6V9Z' -}); - -export default GroupAddIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/InfoCircleIcon.tsx b/release-v5.1/packages/ui/src/components/icons/InfoCircleIcon.tsx deleted file mode 100644 index 299e69e..0000000 --- a/release-v5.1/packages/ui/src/components/icons/InfoCircleIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const InfoCircleIcon = createIcon({ - displayName: 'InfoCircleIcon', - viewBox: '0 0 16 16', - d: 'M8.00004 1.33325C6.6815 1.33325 5.39257 1.72425 4.29624 2.45679C3.19991 3.18933 2.34543 4.23052 1.84085 5.4487C1.33626 6.66687 1.20424 8.00731 1.46148 9.30052C1.71871 10.5937 2.35365 11.7816 3.286 12.714C4.21835 13.6463 5.40624 14.2813 6.69944 14.5385C7.99265 14.7957 9.33309 14.6637 10.5513 14.1591C11.7694 13.6545 12.8106 12.8 13.5432 11.7037C14.2757 10.6074 14.6667 9.31846 14.6667 7.99992C14.6648 6.2324 13.9618 4.53784 12.7119 3.28802C11.4621 2.0382 9.76756 1.33519 8.00004 1.33325ZM8.00004 13.3333C6.94521 13.3333 5.91406 13.0205 5.037 12.4344C4.15994 11.8484 3.47635 11.0154 3.07269 10.0409C2.66902 9.06636 2.5634 7.994 2.76919 6.95944C2.97498 5.92487 3.48293 4.97456 4.22881 4.22868C4.97469 3.4828 5.925 2.97485 6.95956 2.76906C7.99413 2.56328 9.06648 2.66889 10.041 3.07256C11.0156 3.47623 11.8485 4.15982 12.4345 5.03688C13.0206 5.91394 13.3334 6.94509 13.3334 7.99992C13.3316 9.41387 12.7691 10.7694 11.7693 11.7692C10.7695 12.769 9.41399 13.3315 8.00004 13.3333ZM8.00004 7.66659C7.82323 7.66659 7.65366 7.73682 7.52864 7.86185C7.40362 7.98687 7.33338 8.15644 7.33338 8.33325V10.3333C7.33338 10.5101 7.40362 10.6796 7.52864 10.8047C7.65366 10.9297 7.82323 10.9999 8.00004 10.9999C8.17686 10.9999 8.34642 10.9297 8.47145 10.8047C8.59647 10.6796 8.66671 10.5101 8.66671 10.3333V8.33325C8.66671 8.15644 8.59647 7.98687 8.47145 7.86185C8.34642 7.73682 8.17686 7.66659 8.00004 7.66659ZM8.00004 4.99992C7.83523 4.99992 7.67411 5.04879 7.53707 5.14036C7.40003 5.23193 7.29322 5.36208 7.23014 5.51435C7.16707 5.66662 7.15057 5.83418 7.18272 5.99583C7.21488 6.15748 7.29424 6.30596 7.41079 6.42251C7.52733 6.53905 7.67582 6.61842 7.83747 6.65057C7.99912 6.68273 8.16668 6.66622 8.31895 6.60315C8.47122 6.54008 8.60137 6.43327 8.69294 6.29623C8.7845 6.15919 8.83338 5.99807 8.83338 5.83325C8.83338 5.61224 8.74558 5.40028 8.5893 5.244C8.43302 5.08772 8.22106 4.99992 8.00004 4.99992Z' -}); -export default InfoCircleIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/InfoIcon.tsx b/release-v5.1/packages/ui/src/components/icons/InfoIcon.tsx deleted file mode 100644 index 42642d7..0000000 --- a/release-v5.1/packages/ui/src/components/icons/InfoIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const InfoIcon = createIcon({ - displayName: 'InfoIcon', - viewBox: '0 0 20 21', - d: 'M5.83333 14.4245H11.6667V12.7578H5.83333V14.4245ZM5.83333 11.0911H14.1667V9.42448H5.83333V11.0911ZM5.83333 7.75781H14.1667V6.09115H5.83333V7.75781ZM4.16667 17.7578C3.70833 17.7578 3.31597 17.5946 2.98958 17.2682C2.66319 16.9418 2.5 16.5495 2.5 16.0911V4.42448C2.5 3.96615 2.66319 3.57378 2.98958 3.2474C3.31597 2.92101 3.70833 2.75781 4.16667 2.75781H15.8333C16.2917 2.75781 16.684 2.92101 17.0104 3.2474C17.3368 3.57378 17.5 3.96615 17.5 4.42448V16.0911C17.5 16.5495 17.3368 16.9418 17.0104 17.2682C16.684 17.5946 16.2917 17.7578 15.8333 17.7578H4.16667ZM4.16667 16.0911H15.8333V4.42448H4.16667V16.0911Z' -}); -export default InfoIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/LeftArrowIcon.tsx b/release-v5.1/packages/ui/src/components/icons/LeftArrowIcon.tsx deleted file mode 100644 index 1ddc936..0000000 --- a/release-v5.1/packages/ui/src/components/icons/LeftArrowIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const LeftArrowIcon = createIcon({ - displayName: 'LeftArrowIcon', - viewBox: '0 0 36 37', - d: 'M21 27.2578L12 18.2578L21 9.25781L23.1 11.3578L16.2 18.2578L23.1 25.1578L21 27.2578Z' -}); -export default LeftArrowIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/LinkIcon.tsx b/release-v5.1/packages/ui/src/components/icons/LinkIcon.tsx deleted file mode 100644 index 7306d03..0000000 --- a/release-v5.1/packages/ui/src/components/icons/LinkIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const LinkIcon = createIcon({ - displayName: 'LinkIcon', - viewBox: '0 0 14 15', - d: 'M10.7124 9.40052L9.88756 8.57568L10.7124 7.75085C11.248 7.2016 11.5456 6.46346 11.5408 5.69633C11.536 4.9292 11.2291 4.19485 10.6867 3.65236C10.1443 3.10987 9.40998 2.80292 8.64285 2.798C7.87572 2.79309 7.13754 3.0906 6.58822 3.6261L5.76222 4.45093L4.93797 3.6261L5.7628 2.80127C6.52862 2.03545 7.56728 1.60522 8.65031 1.60522C9.73333 1.60522 10.772 2.03545 11.5378 2.80127C12.3036 3.56708 12.7338 4.60574 12.7338 5.68877C12.7338 6.77179 12.3036 7.81045 11.5378 8.57627L10.7124 9.40052ZM9.06272 11.0508L8.23789 11.8756C7.8587 12.2548 7.40853 12.5556 6.91309 12.7608C6.41765 12.966 5.88665 13.0716 5.35039 13.0716C4.81413 13.0716 4.28312 12.966 3.78768 12.7608C3.29225 12.5556 2.84208 12.2548 2.46289 11.8756C2.0837 11.4964 1.7829 11.0462 1.57769 10.5508C1.37247 10.0554 1.26685 9.52436 1.26685 8.9881C1.26685 8.45184 1.37247 7.92083 1.57769 7.4254C1.7829 6.92996 2.0837 6.47979 2.46289 6.1006L3.28772 5.27577L4.11314 6.1006L3.28772 6.92602C2.75222 7.47534 2.45471 8.21352 2.45962 8.98065C2.46454 9.74778 2.77149 10.4821 3.31398 11.0245C3.85647 11.5669 4.59082 11.8738 5.35795 11.8786C6.12509 11.8834 6.86322 11.5858 7.41247 11.0502L8.23789 10.2259L9.06272 11.0508ZM8.65031 4.86335L9.47514 5.68818L5.35039 9.81352L4.52555 8.9881L8.64972 4.86393L8.65031 4.86335Z' -}); -export default LinkIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/ListCheckIcon.tsx b/release-v5.1/packages/ui/src/components/icons/ListCheckIcon.tsx deleted file mode 100644 index 6f2924e..0000000 --- a/release-v5.1/packages/ui/src/components/icons/ListCheckIcon.tsx +++ /dev/null @@ -1,18 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; -const ListCheckIcon = createIcon({ - displayName: 'ListCheckIcon', - viewBox: '0 0 24 25', - path: ( - - - - ) -}); -export default ListCheckIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/ListIcon.tsx b/release-v5.1/packages/ui/src/components/icons/ListIcon.tsx deleted file mode 100644 index c0a2230..0000000 --- a/release-v5.1/packages/ui/src/components/icons/ListIcon.tsx +++ /dev/null @@ -1,21 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ListIcon = createIcon({ - displayName: 'ListIcon', - viewBox: '0 0 20 20', - path: ( - - - - - - - - - ) -}); -export default ListIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/LogoutIcon.tsx b/release-v5.1/packages/ui/src/components/icons/LogoutIcon.tsx deleted file mode 100644 index bc418c9..0000000 --- a/release-v5.1/packages/ui/src/components/icons/LogoutIcon.tsx +++ /dev/null @@ -1,22 +0,0 @@ -import { Icon } from '@chakra-ui/react'; -export default function LogoutIcon(props: Parameters[0]) { - return ( - - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/MonitorIcon.tsx b/release-v5.1/packages/ui/src/components/icons/MonitorIcon.tsx deleted file mode 100644 index 8093680..0000000 --- a/release-v5.1/packages/ui/src/components/icons/MonitorIcon.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function MonitorIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/MoreIcon.tsx b/release-v5.1/packages/ui/src/components/icons/MoreIcon.tsx deleted file mode 100644 index 818f3eb..0000000 --- a/release-v5.1/packages/ui/src/components/icons/MoreIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const MoreIcon = createIcon({ - displayName: 'MoreIcon', - viewBox: '0 0 16 16', - d: 'M8 13.3333C7.63333 13.3333 7.31956 13.2028 7.05867 12.942C6.79733 12.6806 6.66667 12.3666 6.66667 12C6.66667 11.6333 6.79733 11.3193 7.05867 11.058C7.31956 10.7971 7.63333 10.6666 8 10.6666C8.36667 10.6666 8.68067 10.7971 8.942 11.058C9.20289 11.3193 9.33333 11.6333 9.33333 12C9.33333 12.3666 9.20289 12.6806 8.942 12.942C8.68067 13.2028 8.36667 13.3333 8 13.3333ZM8 9.33329C7.63333 9.33329 7.31956 9.20263 7.05867 8.94129C6.79733 8.6804 6.66667 8.36663 6.66667 7.99996C6.66667 7.63329 6.79733 7.31929 7.05867 7.05796C7.31956 6.79707 7.63333 6.66663 8 6.66663C8.36667 6.66663 8.68067 6.79707 8.942 7.05796C9.20289 7.31929 9.33333 7.63329 9.33333 7.99996C9.33333 8.36663 9.20289 8.6804 8.942 8.94129C8.68067 9.20263 8.36667 9.33329 8 9.33329ZM8 5.33329C7.63333 5.33329 7.31956 5.20263 7.05867 4.94129C6.79733 4.6804 6.66667 4.36663 6.66667 3.99996C6.66667 3.63329 6.79733 3.31951 7.05867 3.05863C7.31956 2.79729 7.63333 2.66663 8 2.66663C8.36667 2.66663 8.68067 2.79729 8.942 3.05863C9.20289 3.31951 9.33333 3.63329 9.33333 3.99996C9.33333 4.36663 9.20289 4.6804 8.942 4.94129C8.68067 5.20263 8.36667 5.33329 8 5.33329Z' -}); -export default MoreIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/NotificationIcon.tsx b/release-v5.1/packages/ui/src/components/icons/NotificationIcon.tsx deleted file mode 100644 index 7e388be..0000000 --- a/release-v5.1/packages/ui/src/components/icons/NotificationIcon.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function NotificationIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/PortIcon.tsx b/release-v5.1/packages/ui/src/components/icons/PortIcon.tsx deleted file mode 100644 index f2c1ae3..0000000 --- a/release-v5.1/packages/ui/src/components/icons/PortIcon.tsx +++ /dev/null @@ -1,34 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const PortIcon = createIcon({ - displayName: 'PortIcon', - viewBox: '0 0 16 16', - path: ( - - - - - - - - ) -}); -export default PortIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/ProviderIcon.tsx b/release-v5.1/packages/ui/src/components/icons/ProviderIcon.tsx deleted file mode 100644 index 75d9c85..0000000 --- a/release-v5.1/packages/ui/src/components/icons/ProviderIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const ProviderIcon = createIcon({ - displayName: 'ProviderIcon', - viewBox: '0 0 12 10', - d: 'M3.08073 4.30055e-07H4.91927C5.18285 -8.51064e-06 5.41023 -1.6259e-05 5.59751 0.0152856C5.79519 0.0314361 5.9918 0.0670941 6.18099 0.163491C6.46323 0.307301 6.6927 0.536772 6.83651 0.819015C6.93291 1.0082 6.96856 1.20481 6.98472 1.40249C7.00002 1.58978 7.00001 1.81716 7 2.08074V4L8.91927 4C9.18285 3.99999 9.41023 3.99998 9.59751 4.01529C9.79519 4.03144 9.9918 4.06709 10.181 4.16349C10.4632 4.3073 10.6927 4.53677 10.8365 4.81902C10.9329 5.0082 10.9686 5.20481 10.9847 5.40249C11 5.58977 11 5.81715 11 6.08072V9C11.2761 9 11.5 9.22386 11.5 9.5C11.5 9.77614 11.2761 10 11 10H1C0.723858 10 0.5 9.77614 0.5 9.5C0.5 9.22386 0.723858 9 1 9V2.08073C0.999991 1.81715 0.999983 1.58977 1.01528 1.40249C1.03144 1.20481 1.06709 1.0082 1.16349 0.819015C1.3073 0.536772 1.53677 0.307301 1.81901 0.163491C2.0082 0.0670941 2.20481 0.0314361 2.40249 0.0152856C2.58977 -1.6259e-05 2.81715 -8.51064e-06 3.08073 4.30055e-07ZM2 9H6V2.1C6 1.81172 5.99961 1.62559 5.98804 1.48392C5.97694 1.34809 5.9581 1.29773 5.9455 1.27301C5.89757 1.17892 5.82108 1.10243 5.727 1.0545C5.70227 1.0419 5.65191 1.02306 5.51608 1.01196C5.37441 1.00039 5.18828 1 4.9 1H3.1C2.81172 1 2.62559 1.00039 2.48392 1.01196C2.34809 1.02306 2.29773 1.0419 2.273 1.0545C2.17892 1.10243 2.10243 1.17892 2.0545 1.27301C2.0419 1.29773 2.02306 1.34809 2.01196 1.48392C2.00039 1.62559 2 1.81172 2 2.1V9ZM7 5V9H10V6.1C10 5.81172 9.99961 5.62559 9.98804 5.48392C9.97694 5.34809 9.9581 5.29773 9.9455 5.27301C9.89757 5.17892 9.82108 5.10243 9.727 5.0545C9.70227 5.0419 9.65191 5.02306 9.51608 5.01196C9.37441 5.00039 9.18828 5 8.9 5H7ZM2.75 2.5C2.75 2.22386 2.97386 2 3.25 2H4.75C5.02614 2 5.25 2.22386 5.25 2.5C5.25 2.77614 5.02614 3 4.75 3H3.25C2.97386 3 2.75 2.77614 2.75 2.5ZM2.75 4.5C2.75 4.22386 2.97386 4 3.25 4H4.75C5.02614 4 5.25 4.22386 5.25 4.5C5.25 4.77614 5.02614 5 4.75 5H3.25C2.97386 5 2.75 4.77614 2.75 4.5ZM2.75 6.5C2.75 6.22386 2.97386 6 3.25 6H4.75C5.02614 6 5.25 6.22386 5.25 6.5C5.25 6.77614 5.02614 7 4.75 7H3.25C2.97386 7 2.75 6.77614 2.75 6.5Z' -}); -export default ProviderIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/RefreshIcon.tsx b/release-v5.1/packages/ui/src/components/icons/RefreshIcon.tsx deleted file mode 100644 index c49e22a..0000000 --- a/release-v5.1/packages/ui/src/components/icons/RefreshIcon.tsx +++ /dev/null @@ -1,10 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const RefreshIcon = createIcon({ - displayName: 'RefreshIcon', - viewBox: '0 0 24 24', - d: 'M19.1132 13.2401C18.8967 13.1726 18.6624 13.1935 18.4612 13.2981C18.26 13.4027 18.1084 13.5826 18.0393 13.7985C17.6334 15.0395 16.8421 16.1187 15.7806 16.8789C14.719 17.6392 13.4426 18.0408 12.1369 18.0255C10.5221 18.0439 8.96579 17.4211 7.80941 16.2937C6.65304 15.1663 5.99093 13.6264 5.96829 12.0115C5.99093 10.3967 6.65304 8.85672 7.80941 7.72933C8.96579 6.60194 10.5221 5.97914 12.1369 5.9975C13.5954 5.99398 15.009 6.50165 16.132 7.43227L14.2676 7.12298C14.1559 7.10459 14.0416 7.10848 13.9314 7.13441C13.8212 7.16034 13.7172 7.2078 13.6253 7.27407C13.5335 7.34034 13.4557 7.42411 13.3964 7.52056C13.337 7.61701 13.2974 7.72423 13.2796 7.83607C13.2612 7.9478 13.2651 8.06207 13.291 8.1723C13.317 8.28253 13.3644 8.38654 13.4307 8.47836C13.497 8.57018 13.5807 8.64799 13.6772 8.70733C13.7736 8.76666 13.8809 8.80634 13.9927 8.82409L17.6355 9.42549H17.7815C17.8812 9.42537 17.98 9.40793 18.0736 9.37394C18.1051 9.36199 18.1342 9.34454 18.1596 9.32239C18.2212 9.29948 18.279 9.26764 18.3314 9.22789L18.4087 9.13338C18.4087 9.09042 18.486 9.05606 18.5204 9.00451C18.5548 8.95296 18.5204 8.91859 18.5634 8.88423C18.5871 8.83419 18.6072 8.78251 18.6235 8.72958L19.2678 5.293C19.2893 5.18018 19.2883 5.06423 19.2649 4.9518C19.2415 4.83936 19.1963 4.73262 19.1316 4.63768C19.067 4.54275 18.9843 4.46147 18.8883 4.39849C18.7923 4.33551 18.6848 4.29206 18.5719 4.27062C18.4591 4.24918 18.3432 4.25018 18.2307 4.27355C18.1183 4.29692 18.0116 4.34221 17.9166 4.40683C17.7249 4.53734 17.5929 4.73867 17.5496 4.96653L17.3176 6.21229C15.8794 4.96587 14.0401 4.27958 12.1369 4.27921C10.0664 4.26088 8.07305 5.06472 6.59444 6.51434C5.11582 7.96397 4.27267 9.94096 4.25 12.0115C4.27267 14.0821 5.11582 16.0591 6.59444 17.5087C8.07305 18.9583 10.0664 19.7621 12.1369 19.7438C13.815 19.7696 15.457 19.2559 16.8211 18.2784C18.1853 17.3009 19.1996 15.9113 19.7146 14.314C19.7472 14.204 19.7574 14.0886 19.7447 13.9746C19.732 13.8606 19.6965 13.7503 19.6405 13.6502C19.5844 13.5501 19.5089 13.4622 19.4183 13.3918C19.3278 13.3214 19.224 13.2698 19.1132 13.2401Z' -}); - -export default RefreshIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/RightArrow.tsx b/release-v5.1/packages/ui/src/components/icons/RightArrow.tsx deleted file mode 100644 index 0555763..0000000 --- a/release-v5.1/packages/ui/src/components/icons/RightArrow.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function RightIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/SealosCoin.tsx b/release-v5.1/packages/ui/src/components/icons/SealosCoin.tsx deleted file mode 100644 index 0e93f7b..0000000 --- a/release-v5.1/packages/ui/src/components/icons/SealosCoin.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -/** - * @deprecated - */ -export default function SealosCoin(props: IconProps) { - return ( - - - - - - - - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/SearchIcon.tsx b/release-v5.1/packages/ui/src/components/icons/SearchIcon.tsx deleted file mode 100644 index e0d7ba4..0000000 --- a/release-v5.1/packages/ui/src/components/icons/SearchIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const SearchIcon = createIcon({ - displayName: 'SearchIcon', - viewBox: '0 0 17 17', - d: 'M14.7803 13.865L12.3069 11.4116C13.267 10.2146 13.7319 8.69518 13.6061 7.16585C13.4804 5.63652 12.7734 4.2135 11.6306 3.18941C10.4879 2.16532 8.99615 1.61799 7.46222 1.65996C5.9283 1.70194 4.46876 2.33002 3.3837 3.41508C2.29865 4.50013 1.67056 5.95967 1.62859 7.4936C1.58662 9.02752 2.13395 10.5192 3.15804 11.662C4.18213 12.8048 5.60514 13.5117 7.13448 13.6375C8.66381 13.7633 10.1832 13.2984 11.3803 12.3383L13.8336 14.7916C13.8956 14.8541 13.9693 14.9037 14.0506 14.9376C14.1318 14.9714 14.2189 14.9888 14.3069 14.9888C14.395 14.9888 14.4821 14.9714 14.5633 14.9376C14.6446 14.9037 14.7183 14.8541 14.7803 14.7916C14.9004 14.6673 14.9676 14.5012 14.9676 14.3283C14.9676 14.1554 14.9004 13.9893 14.7803 13.865ZM7.64028 12.3383C6.7173 12.3383 5.81504 12.0646 5.04762 11.5518C4.28019 11.0391 3.68205 10.3102 3.32884 9.45751C2.97563 8.60478 2.88321 7.66647 3.06328 6.76123C3.24334 5.85598 3.6878 5.02446 4.34044 4.37182C4.99309 3.71917 5.82461 3.27471 6.72986 3.09465C7.6351 2.91459 8.57341 3.007 9.42613 3.36021C10.2789 3.71342 11.0077 4.31156 11.5205 5.07899C12.0332 5.84642 12.3069 6.74867 12.3069 7.67165C12.3069 8.90933 11.8153 10.0963 10.9401 10.9715C10.0649 11.8467 8.87795 12.3383 7.64028 12.3383Z' -}); -export default SearchIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/SettingIcon.tsx b/release-v5.1/packages/ui/src/components/icons/SettingIcon.tsx deleted file mode 100644 index ba3dd78..0000000 --- a/release-v5.1/packages/ui/src/components/icons/SettingIcon.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function SettingIcon(props: IconProps) { - return ( - - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/SortPolygonDownIcon.tsx b/release-v5.1/packages/ui/src/components/icons/SortPolygonDownIcon.tsx deleted file mode 100644 index a002b65..0000000 --- a/release-v5.1/packages/ui/src/components/icons/SortPolygonDownIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const SortPolygonUpIcon = createIcon({ - displayName: 'SortPolygonIcon', - viewBox: '0 0 7 5', - d: 'M3.33873 4.19508C3.61963 4.47761 4.07678 4.47761 4.35768 4.19508L6.63781 1.90173C7.08838 1.44854 6.76739 0.676758 6.12833 0.676758H1.56808C0.929025 0.676758 0.608031 1.44854 1.0586 1.90173L3.33873 4.19508Z' -}); -export default SortPolygonUpIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/SortPolygonUpIcon.tsx b/release-v5.1/packages/ui/src/components/icons/SortPolygonUpIcon.tsx deleted file mode 100644 index ca3447e..0000000 --- a/release-v5.1/packages/ui/src/components/icons/SortPolygonUpIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const SortPolygonUpIcon = createIcon({ - displayName: 'SortPolygonIcon', - viewBox: '0 0 7 5', - d: 'M3.33873 1.15843C3.61963 0.875901 4.07678 0.875902 4.35768 1.15843L6.63781 3.45179C7.08838 3.90497 6.76739 4.67676 6.12833 4.67676H1.56808C0.929025 4.67676 0.608031 3.90497 1.0586 3.45179L3.33873 1.15843Z' -}); -export default SortPolygonUpIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/StorageIcon.tsx b/release-v5.1/packages/ui/src/components/icons/StorageIcon.tsx deleted file mode 100644 index a30c1ca..0000000 --- a/release-v5.1/packages/ui/src/components/icons/StorageIcon.tsx +++ /dev/null @@ -1,20 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const StorageIcon = createIcon({ - displayName: 'StorageIcon', - viewBox: '0 0 40 40', - path: ( - - - - - ) -}); -export default StorageIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/SuccessIcon.tsx b/release-v5.1/packages/ui/src/components/icons/SuccessIcon.tsx deleted file mode 100644 index 6b02858..0000000 --- a/release-v5.1/packages/ui/src/components/icons/SuccessIcon.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function SuccessIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/UploadIcon.tsx b/release-v5.1/packages/ui/src/components/icons/UploadIcon.tsx deleted file mode 100644 index 17a4611..0000000 --- a/release-v5.1/packages/ui/src/components/icons/UploadIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const UploadIcon = createIcon({ - displayName: 'UploadIcon', - viewBox: '0 0 24 25', - d: 'M6.5 20.3384C4.98 20.3384 3.68333 19.815 2.61 18.7684C1.53667 17.715 1 16.4317 1 14.9184C1 13.6184 1.39 12.4584 2.17 11.4384C2.95667 10.4184 3.98333 9.76838 5.25 9.48838C5.67 7.95505 6.50333 6.71505 7.75 5.76838C9.00333 4.81505 10.42 4.33838 12 4.33838C13.9533 4.33838 15.6067 5.01838 16.96 6.37838C18.32 7.73171 19 9.38505 19 11.3384C20.1533 11.4717 21.1067 11.9717 21.86 12.8384C22.62 13.6917 23 14.6917 23 15.8384C23 17.0917 22.5633 18.155 21.69 19.0284C20.8167 19.9017 19.7533 20.3384 18.5 20.3384H13C12.4533 20.3384 11.9833 20.1417 11.59 19.7484C11.1967 19.3617 11 18.8917 11 18.3384V13.1884L9.4 14.7384L8 13.3384L12 9.33838L16 13.3384L14.6 14.7384L13 13.1884V18.3384H18.5C19.2 18.3384 19.79 18.095 20.27 17.6084C20.7567 17.1284 21 16.5384 21 15.8384C21 15.1384 20.7567 14.5484 20.27 14.0684C19.79 13.5817 19.2 13.3384 18.5 13.3384H17V11.3384C17 9.95838 16.5133 8.77838 15.54 7.79838C14.5667 6.82505 13.3867 6.33838 12 6.33838C10.62 6.33838 9.44 6.82505 8.46 7.79838C7.48667 8.77838 7 9.95838 7 11.3384H6.5C5.53333 11.3384 4.71 11.6817 4.03 12.3684C3.34333 13.0484 3 13.8717 3 14.8384C3 15.805 3.34333 16.6384 4.03 17.3384C4.71 18.005 5.53333 18.3384 6.5 18.3384H9V20.3384' -}); -export default UploadIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/VisibilityIcon.tsx b/release-v5.1/packages/ui/src/components/icons/VisibilityIcon.tsx deleted file mode 100644 index 8d97c46..0000000 --- a/release-v5.1/packages/ui/src/components/icons/VisibilityIcon.tsx +++ /dev/null @@ -1,9 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const VisibityIcon = createIcon({ - displayName: 'VisibityIcon', - viewBox: '0 0 14 15', - d: 'M6.99992 3.8383C9.21075 3.8383 11.1824 5.0808 12.1449 7.04663C11.1824 9.01246 9.21075 10.255 6.99992 10.255C4.78909 10.255 2.81742 9.01246 1.85492 7.04663C2.81742 5.0808 4.78909 3.8383 6.99992 3.8383ZM6.99992 2.67163C4.08325 2.67163 1.59242 4.4858 0.583252 7.04663C1.59242 9.60746 4.08325 11.4216 6.99992 11.4216C9.91659 11.4216 12.4074 9.60746 13.4166 7.04663C12.4074 4.4858 9.91659 2.67163 6.99992 2.67163ZM6.99992 5.5883C7.80492 5.5883 8.45825 6.24163 8.45825 7.04663C8.45825 7.85163 7.80492 8.50496 6.99992 8.50496C6.19492 8.50496 5.54159 7.85163 5.54159 7.04663C5.54159 6.24163 6.19492 5.5883 6.99992 5.5883ZM6.99992 4.42163C5.55325 4.42163 4.37492 5.59996 4.37492 7.04663C4.37492 8.4933 5.55325 9.67163 6.99992 9.67163C8.44659 9.67163 9.62492 8.4933 9.62492 7.04663C9.62492 5.59996 8.44659 4.42163 6.99992 4.42163Z' -}); -export default VisibityIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/WarnIcon.tsx b/release-v5.1/packages/ui/src/components/icons/WarnIcon.tsx deleted file mode 100644 index 22bbe64..0000000 --- a/release-v5.1/packages/ui/src/components/icons/WarnIcon.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function WarnIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/WarnTriangleIcon.tsx b/release-v5.1/packages/ui/src/components/icons/WarnTriangleIcon.tsx deleted file mode 100644 index bbc82b8..0000000 --- a/release-v5.1/packages/ui/src/components/icons/WarnTriangleIcon.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function WarnTriangleIcon(props: IconProps) { - return ( - - - - - - - - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/WarningIcon.tsx b/release-v5.1/packages/ui/src/components/icons/WarningIcon.tsx deleted file mode 100644 index 2ad1a77..0000000 --- a/release-v5.1/packages/ui/src/components/icons/WarningIcon.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import { Icon, IconProps } from '@chakra-ui/react'; - -export default function WarningIcon(props: IconProps) { - return ( - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/WebHostIcon.tsx b/release-v5.1/packages/ui/src/components/icons/WebHostIcon.tsx deleted file mode 100644 index d1c64ae..0000000 --- a/release-v5.1/packages/ui/src/components/icons/WebHostIcon.tsx +++ /dev/null @@ -1,28 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const WebHostIcon = createIcon({ - displayName: 'WebHostIcon', - viewBox: '0 0 24 25', - path: ( - - - - - - ) -}); -export default WebHostIcon; diff --git a/release-v5.1/packages/ui/src/components/icons/WechatIcon.tsx b/release-v5.1/packages/ui/src/components/icons/WechatIcon.tsx deleted file mode 100644 index ba02e3c..0000000 --- a/release-v5.1/packages/ui/src/components/icons/WechatIcon.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import { Icon } from '@chakra-ui/react'; -export default function WechatIcon(props: Parameters[0]) { - return ( - - - - - ); -} diff --git a/release-v5.1/packages/ui/src/components/icons/line/WarnTriange.tsx b/release-v5.1/packages/ui/src/components/icons/line/WarnTriange.tsx deleted file mode 100644 index 961e69a..0000000 --- a/release-v5.1/packages/ui/src/components/icons/line/WarnTriange.tsx +++ /dev/null @@ -1,25 +0,0 @@ -'use client'; -import { createIcon } from '@chakra-ui/react'; - -const WarnTriangeIcon = createIcon({ - displayName: 'WarnTriangeIcon', - viewBox: '0 0 25 24', - path: ( - - - - - - - - - - - ) -}); - -export default WarnTriangeIcon; diff --git a/release-v5.1/packages/ui/src/components/index.ts b/release-v5.1/packages/ui/src/components/index.ts deleted file mode 100644 index 2b7a85b..0000000 --- a/release-v5.1/packages/ui/src/components/index.ts +++ /dev/null @@ -1,125 +0,0 @@ -import CopyIcon from './icons/CopyIcon'; -import WebHostIcon from './icons/WebHostIcon'; -import DownloadIcon from './icons/DownloadIcon'; -import DeleteIcon from './icons/DeleteIcon'; -import AddIcon from './icons/AddIcon'; -import ArrowDownSLineIcon from './icons/ArrowDownSLineIcon'; -import ArrowExchangeIcon from './icons/ArrowExchangeIcon'; -import BucketIcon from './icons/BucketIcon'; -import CreateFolderIcon from './icons/CreateFolderIcon'; -import DnsIcon from './icons/DnsIcon'; -import EditIcon from './icons/EditIcon'; -import ExpanMoreIcon from './icons/ExpandMoreIcon'; -import ExchangeIcon from './icons/ExchangeIcon'; -import FileIcon from './icons/FileIcon'; -import FolderIcon from './icons/FolderIcon'; -import GroupAddIcon from './icons/GroupAdd'; -import InfoCircleIcon from './icons/InfoCircleIcon'; -import InfoIcon from './icons/InfoIcon'; -import LeftArrowIcon from './icons/LeftArrowIcon'; -import RightArrowIcon from './icons/RightArrow'; -import LinkIcon from './icons/LinkIcon'; -import ListCheckIcon from './icons/ListCheckIcon'; -import DetailsMoreIcon from './icons/DetailsMoreIcon'; -import MonitorIcon from './icons/MonitorIcon'; -import MoreIcon from './icons/MoreIcon'; -import RefreshIcon from './icons/RefreshIcon'; -import SearchIcon from './icons/SearchIcon'; -import StorageIcon from './icons/StorageIcon'; -import ClearOutlineIcon from './icons/ClearOutlineIcon'; -import UploadIcon from './icons/UploadIcon'; -import VisibityIcon from './icons/VisibilityIcon'; -import CancelIcon from './icons/CancelIcon'; -import SettingIcon from './icons/SettingIcon'; -import LogoutIcon from './icons/LogoutIcon'; -import GithubIcon from './icons/GithubIcon'; -import GoogleIcon from './icons/GoogleIcon'; -import DocsIcon from './icons/DocsIcon'; -import NotificationIcon from './icons/NotificationIcon'; -import WechatIcon from './icons/WechatIcon'; -import WarnTriangleIcon from './icons/WarnTriangleIcon'; -import ListIcon from './icons/ListIcon'; -import PortIcon from './icons/PortIcon'; -import WarnIcon from './icons/WarnIcon'; -import CloseIcon from './icons/CloseIcon'; -import SortPolygonUpIcon from './icons/SortPolygonUpIcon'; -import SortPolygonDownIcon from './icons/SortPolygonDownIcon'; -import WarningIcon from './icons/WarningIcon'; -import SealosCoin from './icons/SealosCoin'; -import useMessage from './Message/index'; -import EditTabs from './EditTabs'; -import YamlCode from './YamlCode'; -import ProviderIcon from './icons/ProviderIcon'; -import WarnTriangeIcon from './icons/line/WarnTriange'; -import CurrencySymbol from './icons/CurrencySymbol'; - -export { SealosMenu } from './Menu'; -export { Tabs } from './Tabs'; -export { MyRangeSlider } from './RangeSlider'; -export { Tip } from './Tip'; -export { MyTooltip } from './MyTooltip'; -export { RangeInput } from './RangeInput'; -export { MySlider } from './MySlider'; -export { MyTable } from './MyTable'; - -import MySelect from './Select'; -import AutoComplete from './AutoComplete'; - -export { - MySelect, - AutoComplete, - SealosCoin, - WarningIcon, - useMessage, - YamlCode, - EditTabs, - AddIcon, - ArrowDownSLineIcon, - ArrowExchangeIcon, - BucketIcon, - CreateFolderIcon, - ClearOutlineIcon, - CopyIcon, - DeleteIcon, - DnsIcon, - DetailsMoreIcon, - DownloadIcon, - EditIcon, - ExchangeIcon, - ExpanMoreIcon, - CancelIcon, - FileIcon, - FolderIcon, - GroupAddIcon, - WarnTriangleIcon, - GithubIcon, - GoogleIcon, - InfoCircleIcon, - InfoIcon, - LeftArrowIcon, - LinkIcon, - ListCheckIcon, - LogoutIcon, - ListIcon, - MonitorIcon, - MoreIcon, - RefreshIcon, - RightArrowIcon, - SearchIcon, - SettingIcon, - StorageIcon, - UploadIcon, - VisibityIcon, - WechatIcon, - PortIcon, - NotificationIcon, - DocsIcon, - WarnIcon, - CloseIcon, - SortPolygonUpIcon, - SortPolygonDownIcon, - ProviderIcon, - WebHostIcon, - WarnTriangeIcon, - CurrencySymbol -}; diff --git a/release-v5.1/packages/ui/src/index.ts b/release-v5.1/packages/ui/src/index.ts deleted file mode 100644 index d0999db..0000000 --- a/release-v5.1/packages/ui/src/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -export { theme } from './theme'; -export * from './components'; - -export type { ThemeType } from './theme'; diff --git a/release-v5.1/packages/ui/src/theme/colors.ts b/release-v5.1/packages/ui/src/theme/colors.ts deleted file mode 100644 index d53d379..0000000 --- a/release-v5.1/packages/ui/src/theme/colors.ts +++ /dev/null @@ -1,118 +0,0 @@ -const baseColors = { - grayModern: { - '05': 'rgba(17, 24, 36, 0.05)', - 1: 'rgba(17, 24, 36, 0.1)', - 15: 'rgba(17, 24, 36, 0.15)', - 25: '#FBFBFC', - 50: '#F7F8FA', - 100: '#F4F4F7', - 150: '#F0F1F6', - 200: '#E8EBF0', - 250: '#DFE2EA', - 300: '#C4CBD7', - 400: '#8A95A7', - 500: '#667085', - 600: '#485264', - 700: '#383F50', - 800: '#1D2532', - 900: '#111824' - }, - blue: { - 25: '#F9FAFE', - 50: '#F0F4FF', - 100: '#E1EAFF', - 200: '#C5D7FF', - 300: '#94B5FF', - 400: '#5E8FFF', - 500: '#487FFF', - 600: '#3370FF', - 700: '#2B5FD9', - 800: '#2450B5', - 900: '#1D4091' - }, - green: { - 25: '#F9FEFB', - 50: '#EDFBF3', - 100: '#D1FADF', - 200: '#B9F4D1', - 300: '#76E4AA', - 400: '#32D583', - 500: '#12B76A', - 600: '#039855', - 700: '#027A48', - 800: '#05603A', - 900: '#054F31' - }, - red: { - 1: 'rgba(217,45,32,0.1)', - 3: 'rgba(217,45,32,0.3)', - 5: 'rgba(217,45,32,0.5)', - 25: '#FFFBFA', - 50: '#FEF3F2', - 100: '#FEE4E2', - 200: '#FECDCA', - 300: '#FDA29B', - 400: '#F97066', - 500: '#F04438', - 600: '#D92D20', - 700: '#B42318', - 800: '#912018', - 900: '#7A271A' - }, - brightBlue: { - 25: '#F9FDFE', - 50: '#F0FBFF', - 100: '#DBF3FF', - 200: '#BCE7FF', - 300: '#85CCFF', - 400: '#47B2FF', - 500: '#219BF4', - 600: '#0884DD', - 700: '#0770BC', - 800: '#005B9C', - 900: '#004B82' - }, - royalBlue: { - 100: '#E1EAFF', - 700: '#2B5FD9' - }, - yellow: { - 25: '#FFFDFA', - 50: '#FFFAEB', - 100: '#FEF0C7', - 200: '#FEDF89', - 300: '#FEC84B', - 400: '#FDB022', - 500: '#F79009', - 600: '#DC6803', - 700: '#B54708', - 800: '#93370D', - 900: '#7A2E0E' - }, - adora: { - 25: '#FCFCFF', - 50: '#F0EEFF', - 100: '#E4E1FC', - 200: '#D3CAFF', - 300: '#B6A8FC', - 400: '#9E8DFB', - 500: '#8774EE', - 600: '#6F5DD7', - 700: '#5E4EBD', - 800: '#4E4198', - 900: '#42387D' - } -}; - -const otherColors = { - surfaceLow: baseColors.grayModern[50], - surface: baseColors.grayModern[100], - boxShadowBlue: '0px 0px 0px 2.4px rgba(33, 155, 244, 0.15)', - buttonBoxShadow: - '0px 1px 2px 0px rgba(19, 51, 107, 0.05), 0px 0px 1px 0px rgba(19, 51, 107, 0.08)' -}; - -export const colors = { - ...baseColors, - ...otherColors -}; diff --git a/release-v5.1/packages/ui/src/theme/components/Button.ts b/release-v5.1/packages/ui/src/theme/components/Button.ts deleted file mode 100644 index 8f5bb06..0000000 --- a/release-v5.1/packages/ui/src/theme/components/Button.ts +++ /dev/null @@ -1,103 +0,0 @@ -import { defineStyleConfig } from '@chakra-ui/react'; -import { colors as ThemeColors } from '../colors'; - -export const Button = defineStyleConfig({ - sizes: { - xs: {}, - sm: { - fontSize: '12px' - }, - md: { - fontSize: '14px' - }, - lg: {} - }, - variants: { - primary: { - bg: '#3E3B3B', - _hover: { - bg: '#3E3B3B', - _disabled: { - bg: '#3E3B3B' - } - }, - color: '#FEFEFE' - }, - // >>>old - secondary: { - border: '1px solid', - borderColor: 'grayModern.200', - background: 'white_.500', - color: 'grayModern.900', - _hover: { - borderColor: 'blue.600' - } - }, - warn: { - bgColor: 'error.500', - color: 'white_.100' - }, - 'white-bg-icon': { - _hover: { - bgColor: '#9699B41A' - }, - minW: 'unset', - h: 'unset', - p: '4px' - }, - // <<< - solid: { - bg: ThemeColors.grayModern[900], - color: '#FFF', - borderRadius: 'md', - fontWeight: 500, - boxShadow: ThemeColors.buttonBoxShadow, - _hover: { - opacity: '0.9', - bg: ThemeColors.grayModern[900], - _disabled: { - bg: ThemeColors.grayModern[900], - opacity: '0.4' - } - }, - _active: { - bg: '' - } - }, - square: { - borderRadius: '6px', - minW: '30px', - width: '30px', - height: '30px', - p: '0px', - _hover: { - color: 'brightBlue.600', - bg: 'rgba(17, 24, 36, 0.05)' - } - }, - outline: { - bg: '#FFF', - borderRadius: 'md', - fontWeight: 500, - border: '1px solid', - borderColor: 'grayModern.250', - boxShadow: ThemeColors.buttonBoxShadow, - color: 'grayModern.600', - minW: '16px', - minH: '16px', - _hover: { - opacity: '0.9', - bg: 'rgba(33, 155, 244, 0.05)', - color: 'brightBlue.700', - borderColor: 'brightBlue.300' - }, - _active: { - bg: '' - } - } - }, - defaultProps: { - variant: 'solid', - size: 'md' - } -}); diff --git a/release-v5.1/packages/ui/src/theme/components/Input.ts b/release-v5.1/packages/ui/src/theme/components/Input.ts deleted file mode 100644 index d706a05..0000000 --- a/release-v5.1/packages/ui/src/theme/components/Input.ts +++ /dev/null @@ -1,52 +0,0 @@ -import { inputAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; -import { colors } from '../colors'; - -const InputHelper = createMultiStyleConfigHelpers(inputAnatomy.keys); - -export const Input = InputHelper.defineMultiStyleConfig({ - variants: { - outline: { - field: { - width: '300px', - fontSize: '12px', - fontWeight: 400, - height: '32px', - borderRadius: 'md', - border: '1px solid', - borderColor: '#E8EBF0', - bg: colors.grayModern[50], - _focusVisible: { - borderColor: colors.brightBlue[500], - boxShadow: colors.boxShadowBlue, - bg: '#FFF', - color: '#111824' - }, - _disabled: { - color: '#8A95A7', - bg: '#FBFBFC', - _hover: {} - }, - _hover: { - borderColor: colors.brightBlue[300], - bg: colors.grayModern[50] - }, - _invalid: { - bg: '#FFF', - borderColor: '#D92D20', - boxShadow: '0px 0px 0px 2.4px rgba(217, 45, 32, 0.15)' - }, - _placeholder: { - color: '#667085', - fontSize: '12px', - fontWeight: 400, - lineHeight: '16px' - } - } - } - }, - defaultProps: { - size: 'md', - variant: 'outline' - } -}); diff --git a/release-v5.1/packages/ui/src/theme/components/Modal.ts b/release-v5.1/packages/ui/src/theme/components/Modal.ts deleted file mode 100644 index a4e9eea..0000000 --- a/release-v5.1/packages/ui/src/theme/components/Modal.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { modalAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; - -const ModalHelper = createMultiStyleConfigHelpers(modalAnatomy.keys); - -export const Modal = ModalHelper.defineMultiStyleConfig({ - baseStyle: { - header: { - bg: '#FBFBFC', - borderTopRadius: '10px', - borderBottom: '1px solid #F4F4F7', - fontSize: '16px', - color: 'grayModern.900', - fontWeight: '500', - py: '11.5px', - lineHeight: '24px' - }, - closeButton: { - fill: '#111824', - svg: { - width: '12px', - height: '12px' - } - }, - dialog: { - borderRadius: '10px' - }, - body: { - px: '36px', - py: '24px' - }, - footer: { - px: '36px', - pb: '24px', - pt: '0px' - } - } -}); diff --git a/release-v5.1/packages/ui/src/theme/components/NumberInput.ts b/release-v5.1/packages/ui/src/theme/components/NumberInput.ts deleted file mode 100644 index 629514c..0000000 --- a/release-v5.1/packages/ui/src/theme/components/NumberInput.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { numberInputAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; -import { colors } from '../colors'; - -const NumberInputHelper = createMultiStyleConfigHelpers(numberInputAnatomy.keys); - -export const NumberInput = NumberInputHelper.defineMultiStyleConfig({ - baseStyle: { - root: { - borderRadius: 'lg', - borderColor: '#E8EBF0', - bg: colors.grayModern[50], - _hover: { - borderColor: colors.brightBlue[300], - bg: colors.grayModern[50] - } - }, - field: { - // _focusVisible _hover bordercolor doesn't work - borderRadius: 'lg', - bg: colors.grayModern[50] - }, - stepperGroup: { - borderColor: '#E8EBF0' - }, - stepper: { - borderColor: '#E8EBF0' - } - } -}); diff --git a/release-v5.1/packages/ui/src/theme/components/Select.ts b/release-v5.1/packages/ui/src/theme/components/Select.ts deleted file mode 100644 index b34c6f6..0000000 --- a/release-v5.1/packages/ui/src/theme/components/Select.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { selectAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; - -const { definePartsStyle, defineMultiStyleConfig } = createMultiStyleConfigHelpers( - selectAnatomy.keys -); - -export const Select = defineMultiStyleConfig({ - variants: { - secondary: definePartsStyle({ - field: { - borderRadius: '4px', - border: '1px solid', - borderColor: 'grayModern.200', - background: 'white_.500', - color: 'grayModern.900' - } - }) - } -}); diff --git a/release-v5.1/packages/ui/src/theme/components/Slider.ts b/release-v5.1/packages/ui/src/theme/components/Slider.ts deleted file mode 100644 index f41b471..0000000 --- a/release-v5.1/packages/ui/src/theme/components/Slider.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { sliderAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; - -const SliderHelper = createMultiStyleConfigHelpers(sliderAnatomy.keys); - -export const Slider = SliderHelper.defineMultiStyleConfig({ - baseStyle: { - thumb: { - _focusVisible: { - boxShadow: '', - bg: 'grayModern.900' - } - } - } -}); diff --git a/release-v5.1/packages/ui/src/theme/components/Switch.ts b/release-v5.1/packages/ui/src/theme/components/Switch.ts deleted file mode 100644 index cb15ff8..0000000 --- a/release-v5.1/packages/ui/src/theme/components/Switch.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { switchAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; - -const SwitchHelper = createMultiStyleConfigHelpers(switchAnatomy.keys); - -export const Switch = SwitchHelper.defineMultiStyleConfig({ - baseStyle: { - track: { - bg: 'gray.100', - _checked: { - bg: 'gray.700' - } - } - } -}); diff --git a/release-v5.1/packages/ui/src/theme/components/Tag.ts b/release-v5.1/packages/ui/src/theme/components/Tag.ts deleted file mode 100644 index 9bdf8df..0000000 --- a/release-v5.1/packages/ui/src/theme/components/Tag.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { tagAnatomy } from '@chakra-ui/anatomy'; -import { createMultiStyleConfigHelpers } from '@chakra-ui/react'; - -const TagHelper = createMultiStyleConfigHelpers(tagAnatomy.keys); - -export const Tag = TagHelper.defineMultiStyleConfig({ - baseStyle: { - container: { - borderRadius: 'md', - backgroundColor: 'grayModern.150' - }, - label: { - fontWeight: 500, - fontSize: '12px' - } - } -}); diff --git a/release-v5.1/packages/ui/src/theme/components/Textarea.ts b/release-v5.1/packages/ui/src/theme/components/Textarea.ts deleted file mode 100644 index c31e7b8..0000000 --- a/release-v5.1/packages/ui/src/theme/components/Textarea.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { ComponentStyleConfig } from '@chakra-ui/react'; -import { colors } from '../colors'; - -export const Textarea: ComponentStyleConfig = { - variants: { - outline: { - border: '1px solid', - bg: 'grayModern.50', - borderRadius: 'md', - borderColor: '#E8EBF0', - _focusVisible: { - borderColor: colors.brightBlue[500], - boxShadow: colors.boxShadowBlue, - bg: '#FFF', - color: '#111824' - } - } - }, - defaultProps: { - size: 'md', - variant: 'outline' - } -}; diff --git a/release-v5.1/packages/ui/src/theme/components/YamlCode.ts b/release-v5.1/packages/ui/src/theme/components/YamlCode.ts deleted file mode 100644 index d61a03a..0000000 --- a/release-v5.1/packages/ui/src/theme/components/YamlCode.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineStyleConfig } from '@chakra-ui/react'; - -export const YamlCode = defineStyleConfig({ - baseStyle: () => ({ - height: '100%' - }) -}); diff --git a/release-v5.1/packages/ui/src/theme/components/index.ts b/release-v5.1/packages/ui/src/theme/components/index.ts deleted file mode 100644 index 57c0249..0000000 --- a/release-v5.1/packages/ui/src/theme/components/index.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { Button } from './Button'; -import { Input } from './Input'; -import { Select } from './Select'; -import { Tag } from './Tag'; -import { Switch } from './Switch'; -import { Textarea } from './Textarea'; -import { Slider } from './Slider'; -import { Modal } from './Modal'; -import { NumberInput } from './NumberInput'; - -export const components = { - Button, - Input, - Select, - Tag, - Switch, - Textarea, - Slider, - Modal, - NumberInput -}; - -// export * from './Button'; -// export * from './Input'; -// export * from './Select'; -// export * from './Tag'; -// export * from './Switch'; -// export * from './Textarea'; -// export * from './Slider'; diff --git a/release-v5.1/packages/ui/src/theme/index.ts b/release-v5.1/packages/ui/src/theme/index.ts deleted file mode 100644 index 06fd4ea..0000000 --- a/release-v5.1/packages/ui/src/theme/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { theme } from './theme'; -export type { ThemeType } from './theme'; -export { theme }; -export default theme; diff --git a/release-v5.1/packages/ui/src/theme/theme.ts b/release-v5.1/packages/ui/src/theme/theme.ts deleted file mode 100644 index 969fa9a..0000000 --- a/release-v5.1/packages/ui/src/theme/theme.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { extendTheme } from '@chakra-ui/react'; -import { colors } from './colors'; -import { components } from './components'; - -const _theme = { - colors, - components, - fonts: { - body: '-apple-system, BlinkMacSystemFont, "PingFang SC", "Segoe UI", Helvetica, Arial, "PingFang SC", "Noto Sans SC", sans-serif', - heading: - '-apple-system, BlinkMacSystemFont, "PingFang SC", "Segoe UI", Helvetica, Arial, "PingFang SC", "Noto Sans SC", sans-serif', - mono: 'Menlo, monospace' - }, - fontSizes: { - sm: '10px', - base: '12px', - md: '14px', - lg: '16px', - xl: '18px', - '2xl': '20px' - }, - breakpoints: { - base: '0px', - sm: '640px', - md: '768px', - lg: '1024px', - xl: '1280px', - '2xl': '1536px' - }, - fontWeights: { - bold: 500 - }, - radii: { - xs: '1px', - sm: '2px', - base: '4px', - md: '6px', - lg: '8px', - xl: '12px', - '2xl': '16px' - }, - borders: { - 150: '1px solid #F0F1F6', - 200: '1px solid #E8EBF0', - base: '1px solid #E8EBF0' - } -}; - -export type ThemeType = typeof _theme; - -export const theme = extendTheme(_theme); diff --git a/release-v5.1/packages/ui/tsconfig.json b/release-v5.1/packages/ui/tsconfig.json deleted file mode 100644 index 0a3133f..0000000 --- a/release-v5.1/packages/ui/tsconfig.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "compilerOptions": { - "lib": ["dom", "dom.iterable", "esnext"] - }, - "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"], - "exclude": ["node_modules"], - "extends": "../../tsconfig.web.json" -} diff --git a/release-v5.1/pnpm-lock.yaml b/release-v5.1/pnpm-lock.yaml deleted file mode 100644 index c8557be..0000000 --- a/release-v5.1/pnpm-lock.yaml +++ /dev/null @@ -1,12067 +0,0 @@ -lockfileVersion: '6.0' - -settings: - autoInstallPeers: true - excludeLinksFromLockfile: false - -overrides: - react: 18.2.0 - react-dom: 18.2.0 - -importers: - - .: - dependencies: - '@chakra-ui/anatomy': - specifier: ^2.2.1 - version: 2.2.2 - '@chakra-ui/icons': - specifier: ^2.1.1 - version: 2.1.1(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/next-js': - specifier: ^2.1.5 - version: 2.2.0(@chakra-ui/react@2.8.2)(@emotion/react@11.11.1)(next@13.5.11)(react@18.2.0) - '@chakra-ui/react': - specifier: ^2.8.1 - version: 2.8.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(@types/react@18.2.37)(framer-motion@10.16.5)(react-dom@18.2.0)(react@18.2.0) - '@chakra-ui/system': - specifier: ^2.6.1 - version: 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - '@emotion/react': - specifier: ^11.11.1 - version: 11.11.1(@types/react@18.2.37)(react@18.2.0) - '@emotion/styled': - specifier: ^11.11.0 - version: 11.11.0(@emotion/react@11.11.1)(@types/react@18.2.37)(react@18.2.0) - framer-motion: - specifier: ^10.16.4 - version: 10.16.5(react-dom@18.2.0)(react@18.2.0) - i18next: - specifier: ^23.11.5 - version: 23.12.1 - next-i18next: - specifier: ^15.3.0 - version: 15.3.0(i18next@23.12.1)(next@13.5.11)(react-i18next@14.1.2)(react@18.2.0) - react-i18next: - specifier: ^14.1.2 - version: 14.1.2(i18next@23.12.1)(react-dom@18.2.0)(react@18.2.0) - typescript: - specifier: ^5.2.2 - version: 5.2.2 - devDependencies: - '@chakra-ui/cli': - specifier: ^2.4.1 - version: 2.4.1 - husky: - specifier: ^9.1.4 - version: 9.1.4 - lint-staged: - specifier: ^15.2.9 - version: 15.2.9 - prettier: - specifier: ^2.8.8 - version: 2.8.8 - - database: - dependencies: - '@chakra-ui/anatomy': - specifier: ^2.2.1 - version: 2.2.2 - '@chakra-ui/icons': - specifier: ^2.1.1 - version: 2.1.1(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/next-js': - specifier: ^2.1.5 - version: 2.2.0(@chakra-ui/react@2.8.2)(@emotion/react@11.11.1)(next@13.5.11)(react@18.2.0) - '@chakra-ui/react': - specifier: ^2.8.1 - version: 2.8.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(@types/react@18.2.37)(framer-motion@10.16.5)(react-dom@18.2.0)(react@18.2.0) - '@chakra-ui/system': - specifier: ^2.6.1 - version: 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - '@emotion/react': - specifier: ^11.11.1 - version: 11.11.1(@types/react@18.2.37)(react@18.2.0) - '@emotion/styled': - specifier: ^11.11.0 - version: 11.11.0(@emotion/react@11.11.1)(@types/react@18.2.37)(react@18.2.0) - '@kubernetes/client-node': - specifier: ^0.18.1 - version: 0.18.1 - '@labring/sealos-desktop-sdk': - specifier: 0.1.24 - version: 0.1.24(@kubernetes/client-node@0.18.1) - '@labring/sealos-driver-sdk': - specifier: 1.0.0 - version: 1.0.0(react-dom@18.2.0)(react@18.2.0) - '@labring/sealos-gtm-sdk': - specifier: 1.1.0 - version: 1.1.0(next@13.5.11)(react-dom@18.2.0)(react@18.2.0) - '@labring/sealos-metrics-sdk': - specifier: 0.2.0 - version: 0.2.0(@kubernetes/client-node@0.18.1) - '@labring/sealos-shared-sdk': - specifier: 1.0.3 - version: 1.0.3(@chakra-ui/icons@2.1.1)(@chakra-ui/react@2.8.2)(@labring/sealos-desktop-sdk@0.1.24)(@tanstack/react-query@4.36.1)(immer@10.2.0)(js-yaml@4.1.0)(lucide-react@0.511.0)(picocolors@1.1.1)(react-dom@18.2.0)(react@18.2.0)(zod@4.0.14)(zustand@4.4.7) - '@next/font': - specifier: 13.5.11 - version: 13.5.11 - '@scalar/api-reference-react': - specifier: ^0.8.36 - version: 0.8.70(axios@1.6.2)(nprogress@0.2.0)(react@18.2.0)(tailwindcss@4.1.12)(typescript@5.2.2) - '@sealos/ui': - specifier: workspace:^ - version: link:../packages/ui - '@tanstack/react-query': - specifier: ^4.35.3 - version: 4.36.1(react-dom@18.2.0)(react@18.2.0) - '@tanstack/react-table': - specifier: ^8.10.7 - version: 8.10.7(react-dom@18.2.0)(react@18.2.0) - '@tanstack/react-virtual': - specifier: ^3.10.8 - version: 3.10.8(react-dom@18.2.0)(react@18.2.0) - ansi_up: - specifier: ^5.2.1 - version: 5.2.1 - axios: - specifier: ^1.5.1 - version: 1.6.2 - date-fns: - specifier: ^3.0.0 - version: 3.6.0 - dayjs: - specifier: ^1.11.10 - version: 1.11.10 - echarts: - specifier: ^5.4.3 - version: 5.4.3 - framer-motion: - specifier: ^10.16.4 - version: 10.16.5(react-dom@18.2.0)(react@18.2.0) - github-markdown-css: - specifier: ^5.2.0 - version: 5.4.0 - i18next: - specifier: ^23.11.5 - version: 23.12.1 - immer: - specifier: ^10.2.0 - version: 10.2.0 - ini: - specifier: ^4.1.3 - version: 4.1.3 - js-cookie: - specifier: ^3.0.5 - version: 3.0.5 - js-yaml: - specifier: ^4.1.0 - version: 4.1.0 - jszip: - specifier: ^3.10.1 - version: 3.10.1 - lodash: - specifier: ^4.17.21 - version: 4.17.21 - lucide-react: - specifier: ^0.511.0 - version: 0.511.0(react@18.2.0) - minio: - specifier: ^7.1.3 - version: 7.1.3 - multer: - specifier: 1.4.5-lts.1 - version: 1.4.5-lts.1 - nanoid: - specifier: ^4.0.2 - version: 4.0.2 - next: - specifier: 13.5.11 - version: 13.5.11(@babel/core@7.23.5)(react-dom@18.2.0)(react@18.2.0)(sass@1.69.5) - next-i18next: - specifier: ^15.3.0 - version: 15.3.0(i18next@23.12.1)(next@13.5.11)(react-i18next@14.1.2)(react@18.2.0) - nprogress: - specifier: ^0.2.0 - version: 0.2.0 - papaparse: - specifier: ^5.4.1 - version: 5.4.1 - picocolors: - specifier: ^1.1.1 - version: 1.1.1 - prettier: - specifier: ^2.8.8 - version: 2.8.8 - react: - specifier: 18.2.0 - version: 18.2.0 - react-day-picker: - specifier: ^8.8.2 - version: 8.9.1(date-fns@3.6.0)(react@18.2.0) - react-dom: - specifier: 18.2.0 - version: 18.2.0(react@18.2.0) - react-hook-form: - specifier: ^7.46.2 - version: 7.48.2(react@18.2.0) - react-i18next: - specifier: ^14.1.2 - version: 14.1.2(i18next@23.12.1)(react-dom@18.2.0)(react@18.2.0) - react-markdown: - specifier: ^8.0.7 - version: 8.0.7(@types/react@18.2.37)(react@18.2.0) - react-syntax-highlighter: - specifier: ^15.5.0 - version: 15.5.0(react@18.2.0) - sass: - specifier: ^1.68.0 - version: 1.69.5 - sharp: - specifier: ^0.32.6 - version: 0.32.6 - typescript: - specifier: ^5.2.2 - version: 5.2.2 - zod: - specifier: ^4.0.8 - version: 4.0.14 - zod-openapi: - specifier: ^5.2.0 - version: 5.3.0(zod@4.0.14) - zustand: - specifier: ^4.4.1 - version: 4.4.7(@types/react@18.2.37)(immer@10.2.0)(react@18.2.0) - devDependencies: - '@svgr/webpack': - specifier: ^6.5.1 - version: 6.5.1 - '@types/ini': - specifier: ^4.1.1 - version: 4.1.1 - '@types/js-cookie': - specifier: ^3.0.4 - version: 3.0.6 - '@types/js-yaml': - specifier: ^4.0.6 - version: 4.0.9 - '@types/lodash': - specifier: ^4.14.199 - version: 4.14.202 - '@types/multer': - specifier: ^1.4.10 - version: 1.4.11 - '@types/node': - specifier: 18.13.0 - version: 18.13.0 - '@types/nprogress': - specifier: ^0.2.1 - version: 0.2.3 - '@types/papaparse': - specifier: ^5.3.15 - version: 5.3.15 - '@types/react': - specifier: 18.2.37 - version: 18.2.37 - '@types/react-dom': - specifier: 18.0.10 - version: 18.0.10 - '@types/react-syntax-highlighter': - specifier: ^15.5.7 - version: 15.5.10 - eslint: - specifier: 8.33.0 - version: 8.33.0 - eslint-config-next: - specifier: 13.1.6 - version: 13.1.6(eslint@8.33.0)(typescript@5.2.2) - svg-inline-loader: - specifier: ^0.8.2 - version: 0.8.2 - webpack-bundle-analyzer: - specifier: ^4.9.1 - version: 4.10.1 - - packages/ui: - dependencies: - react: - specifier: 18.2.0 - version: 18.2.0 - react-dom: - specifier: 18.2.0 - version: 18.2.0(react@18.2.0) - react-markdown: - specifier: ^8.0.7 - version: 8.0.7(@types/react@18.2.37)(react@18.2.0) - react-syntax-highlighter: - specifier: ^15.5.0 - version: 15.5.0(react@18.2.0) - rollup-plugin-peer-deps-external: - specifier: ^2.2.4 - version: 2.2.4(rollup@2.79.1) - devDependencies: - '@rollup/plugin-commonjs': - specifier: ^25.0.5 - version: 25.0.7(rollup@2.79.1) - '@rollup/plugin-node-resolve': - specifier: ^15.2.3 - version: 15.2.3(rollup@2.79.1) - '@rollup/plugin-typescript': - specifier: ^11.1.4 - version: 11.1.5(rollup@2.79.1)(tslib@2.6.2)(typescript@5.2.2) - '@types/react': - specifier: ^18.2.37 - version: 18.2.37 - '@types/react-syntax-highlighter': - specifier: ^15.5.7 - version: 15.5.10 - rollup: - specifier: 2.79.1 - version: 2.79.1 - rollup-plugin-dts: - specifier: ^4.2.3 - version: 4.2.3(rollup@2.79.1)(typescript@5.2.2) - rollup-plugin-terser: - specifier: ^7.0.2 - version: 7.0.2(rollup@2.79.1) - rollup-plugin-typescript2: - specifier: ^0.36.0 - version: 0.36.0(rollup@2.79.1)(typescript@5.2.2) - tslib: - specifier: ^2.6.2 - version: 2.6.2 - typescript: - specifier: ^5.2.2 - version: 5.2.2 - -packages: - - /@aashutoshrathi/word-wrap@1.2.6: - resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} - engines: {node: '>=0.10.0'} - dev: true - - /@ai-sdk/gateway@3.0.13(zod@4.3.6): - resolution: {integrity: sha512-g7nE4PFtngOZNZSy1lOPpkC+FAiHxqBJXqyRMEG7NUrEVZlz5goBdtHg1YgWRJIX776JTXAmbOI5JreAKVAsVA==} - engines: {node: '>=18'} - peerDependencies: - zod: ^3.25.76 || ^4.1.8 - dependencies: - '@ai-sdk/provider': 3.0.2 - '@ai-sdk/provider-utils': 4.0.5(zod@4.3.6) - '@vercel/oidc': 3.1.0 - zod: 4.3.6 - dev: false - - /@ai-sdk/provider-utils@4.0.5(zod@4.3.6): - resolution: {integrity: sha512-Ow/X/SEkeExTTc1x+nYLB9ZHK2WUId8+9TlkamAx7Tl9vxU+cKzWx2dwjgMHeCN6twrgwkLrrtqckQeO4mxgVA==} - engines: {node: '>=18'} - peerDependencies: - zod: ^3.25.76 || ^4.1.8 - dependencies: - '@ai-sdk/provider': 3.0.2 - '@standard-schema/spec': 1.1.0 - eventsource-parser: 3.0.6 - zod: 4.3.6 - dev: false - - /@ai-sdk/provider@3.0.2: - resolution: {integrity: sha512-HrEmNt/BH/hkQ7zpi2o6N3k1ZR1QTb7z85WYhYygiTxOQuaml4CMtHCWRbric5WPU+RNsYI7r1EpyVQMKO1pYw==} - engines: {node: '>=18'} - dependencies: - json-schema: 0.4.0 - dev: false - - /@ai-sdk/vue@3.0.33(vue@3.5.30)(zod@4.3.6): - resolution: {integrity: sha512-czM9Js3a7f+Eo35gjEYEeJYUoPvMg5Dfi4bOLyDBghLqn0gaVg8yTmTaSuHCg+3K/+1xPjyXd4+2XcQIohWWiQ==} - engines: {node: '>=18'} - peerDependencies: - vue: ^3.3.4 - dependencies: - '@ai-sdk/provider-utils': 4.0.5(zod@4.3.6) - ai: 6.0.33(zod@4.3.6) - swrv: 1.1.0(vue@3.5.30) - vue: 3.5.30(typescript@5.2.2) - transitivePeerDependencies: - - zod - dev: false - - /@ampproject/remapping@2.2.1: - resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} - engines: {node: '>=6.0.0'} - dependencies: - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.20 - - /@babel/code-frame@7.23.4: - resolution: {integrity: sha512-r1IONyb6Ia+jYR2vvIDhdWdlTGhqbBoFqLTQidzZ4kepUFH15ejXvFHxCVbtl7BOXIudsIubf4E81xeA3h3IXA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/highlight': 7.23.4 - chalk: 2.4.2 - dev: true - - /@babel/code-frame@7.23.5: - resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/highlight': 7.23.4 - chalk: 2.4.2 - - /@babel/compat-data@7.23.3: - resolution: {integrity: sha512-BmR4bWbDIoFJmJ9z2cZ8Gmm2MXgEDgjdWgpKmKWUt54UGFJdlj31ECtbaDvCG/qVdG3AQ1SfpZEs01lUFbzLOQ==} - engines: {node: '>=6.9.0'} - - /@babel/core@7.23.5: - resolution: {integrity: sha512-Cwc2XjUrG4ilcfOw4wBAK+enbdgwAcAJCfGUItPBKR7Mjw4aEfAFYrLxeRp4jWgtNIKn3n2AlBOfwwafl+42/g==} - engines: {node: '>=6.9.0'} - dependencies: - '@ampproject/remapping': 2.2.1 - '@babel/code-frame': 7.23.5 - '@babel/generator': 7.23.5 - '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.5) - '@babel/helpers': 7.23.5 - '@babel/parser': 7.23.5 - '@babel/template': 7.22.15 - '@babel/traverse': 7.23.5 - '@babel/types': 7.23.5 - convert-source-map: 2.0.0 - debug: 4.4.1 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - /@babel/generator@7.23.5: - resolution: {integrity: sha512-BPssCHrBD+0YrxviOa3QzpqwhNIXKEtOa2jQrm4FlmkC2apYgRnQcmPWiGZDlGxiNtltnUFolMe8497Esry+jA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.5 - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.20 - jsesc: 2.5.2 - - /@babel/helper-annotate-as-pure@7.22.5: - resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.5 - dev: true - - /@babel/helper-builder-binary-assignment-operator-visitor@7.22.15: - resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.5 - dev: true - - /@babel/helper-compilation-targets@7.22.15: - resolution: {integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/compat-data': 7.23.3 - '@babel/helper-validator-option': 7.22.15 - browserslist: 4.23.0 - lru-cache: 5.1.1 - semver: 6.3.1 - - /@babel/helper-create-class-features-plugin@7.22.15(@babel/core@7.23.5): - resolution: {integrity: sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-member-expression-to-functions': 7.23.0 - '@babel/helper-optimise-call-expression': 7.22.5 - '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.5) - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - semver: 6.3.1 - dev: true - - /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.23.5): - resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-annotate-as-pure': 7.22.5 - regexpu-core: 5.3.2 - semver: 6.3.1 - dev: true - - /@babel/helper-define-polyfill-provider@0.4.3(@babel/core@7.23.5): - resolution: {integrity: sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - debug: 4.4.1 - lodash.debounce: 4.0.8 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - dev: true - - /@babel/helper-environment-visitor@7.22.20: - resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} - engines: {node: '>=6.9.0'} - - /@babel/helper-function-name@7.23.0: - resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/template': 7.22.15 - '@babel/types': 7.23.5 - - /@babel/helper-hoist-variables@7.22.5: - resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.5 - - /@babel/helper-member-expression-to-functions@7.23.0: - resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.5 - dev: true - - /@babel/helper-module-imports@7.22.15: - resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.5 - - /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-simple-access': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.20 - - /@babel/helper-optimise-call-expression@7.22.5: - resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.5 - dev: true - - /@babel/helper-plugin-utils@7.22.5: - resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} - engines: {node: '>=6.9.0'} - dev: true - - /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.23.5): - resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-wrap-function': 7.22.20 - dev: true - - /@babel/helper-replace-supers@7.22.20(@babel/core@7.23.5): - resolution: {integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-member-expression-to-functions': 7.23.0 - '@babel/helper-optimise-call-expression': 7.22.5 - dev: true - - /@babel/helper-simple-access@7.22.5: - resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.5 - - /@babel/helper-skip-transparent-expression-wrappers@7.22.5: - resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.5 - dev: true - - /@babel/helper-split-export-declaration@7.22.6: - resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.5 - - /@babel/helper-string-parser@7.23.4: - resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} - engines: {node: '>=6.9.0'} - - /@babel/helper-string-parser@7.27.1: - resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} - engines: {node: '>=6.9.0'} - dev: false - - /@babel/helper-validator-identifier@7.22.20: - resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} - engines: {node: '>=6.9.0'} - - /@babel/helper-validator-identifier@7.28.5: - resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} - engines: {node: '>=6.9.0'} - dev: false - - /@babel/helper-validator-option@7.22.15: - resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==} - engines: {node: '>=6.9.0'} - - /@babel/helper-wrap-function@7.22.20: - resolution: {integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-function-name': 7.23.0 - '@babel/template': 7.22.15 - '@babel/types': 7.23.5 - dev: true - - /@babel/helpers@7.23.5: - resolution: {integrity: sha512-oO7us8FzTEsG3U6ag9MfdF1iA/7Z6dz+MtFhifZk8C8o453rGJFFWUP1t+ULM9TUIAzC9uxXEiXjOiVMyd7QPg==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/template': 7.22.15 - '@babel/traverse': 7.23.5 - '@babel/types': 7.23.5 - transitivePeerDependencies: - - supports-color - - /@babel/highlight@7.23.4: - resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-validator-identifier': 7.22.20 - chalk: 2.4.2 - js-tokens: 4.0.0 - - /@babel/parser@7.23.5: - resolution: {integrity: sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==} - engines: {node: '>=6.0.0'} - hasBin: true - dependencies: - '@babel/types': 7.23.5 - - /@babel/parser@7.29.2: - resolution: {integrity: sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==} - engines: {node: '>=6.0.0'} - hasBin: true - dependencies: - '@babel/types': 7.29.0 - dev: false - - /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.13.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.23.5) - dev: true - - /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-XaJak1qcityzrX0/IU5nKHb34VaibwP3saKqG6a/tppelgllOH13LUann4ZCIBcVOeE6H18K4Vx9QKkVww3z/w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.5): - resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - dev: true - - /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.23.5): - resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.23.5): - resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.23.5): - resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.23.5): - resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.23.5): - resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-import-assertions@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-import-attributes@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.5): - resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.23.5): - resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-jsx@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.23.5): - resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.23.5): - resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.23.5): - resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.23.5): - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.23.5): - resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.23.5): - resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.23.5): - resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.23.5): - resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-typescript@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.23.5): - resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-arrow-functions@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-async-generator-functions@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-efdkfPhHYTtn0G6n2ddrESE91fgXxjlqLsnUtPWnJs4a4mZIbUaK7ffqKIIUKXSHwcDvaCVX6GXkaJJFqtX7jw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.5) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-async-to-generator@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-block-scoped-functions@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-block-scoping@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-class-static-block@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.12.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-classes@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-FGEQmugvAEu2QtgtU0uTASXevfLMFfBeVCIIdcQhn/uBQsMTjBajdnAtanQlOcuihWh10PZ7+HWvc7NtBwP74w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-optimise-call-expression': 7.22.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.5) - '@babel/helper-split-export-declaration': 7.22.6 - globals: 11.12.0 - dev: true - - /@babel/plugin-transform-computed-properties@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/template': 7.22.15 - dev: true - - /@babel/plugin-transform-destructuring@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-dotall-regex@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-duplicate-keys@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-dynamic-import@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-exponentiation-operator@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-export-namespace-from@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-for-of@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-X8jSm8X1CMwxmK878qsUGJRmbysKNbdpTv/O1/v0LuY/ZkZrng5WYiekYSdg9m09OTmDDUWeEDsTE+17WYbAZw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-function-name@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-json-strings@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-literals@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-logical-assignment-operators@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-member-expression-literals@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-modules-amd@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-simple-access': 7.22.5 - dev: true - - /@babel/plugin-transform-modules-systemjs@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-ZxyKGTkF9xT9YJuKQRo19ewf3pXpopuYQd8cDXqNzc3mUNbOME0RKMoZxviQk74hwzfQsEe66dE92MaZbdHKNQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-identifier': 7.22.20 - dev: true - - /@babel/plugin-transform-modules-umd@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.23.5): - resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-new-target@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-nullish-coalescing-operator@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-numeric-separator@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-object-rest-spread@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-9x9K1YyeQVw0iOXJlIzwm8ltobIIv7j2iLyP2jIhEbqPRQ7ScNgwQufU2I0Gq11VjyG4gI4yMXt2VFags+1N3g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/compat-data': 7.23.3 - '@babel/core': 7.23.5 - '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.5) - '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-object-super@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-optional-catch-binding@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-optional-chaining@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-parameters@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-private-methods@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-private-property-in-object@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-property-literals@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-react-constant-elements@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-zP0QKq/p6O42OL94udMgSfKXyse4RyJ0JqbQ34zDAONWjyrEsghYEyTSK5FIpmXmCpB55SHokL1cRRKHv8L2Qw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-react-display-name@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-GnvhtVfA2OAtzdX58FJxU19rhoGeQzyVndw3GgtdECQvQFXPEZIOVULHVZGAYmOgmqjXpVpfocAbSjh99V/Fqw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-react-jsx-development@7.22.5(@babel/core@7.23.5): - resolution: {integrity: sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-react-jsx@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.23.5) - '@babel/types': 7.23.5 - dev: true - - /@babel/plugin-transform-react-pure-annotations@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-qMFdSS+TUhB7Q/3HVPnEdYJDQIk57jkntAwSuz9xfSE4n+3I+vHYCli3HoHawN1Z3RfCz/y1zXA/JXjG6cVImQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-regenerator@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - regenerator-transform: 0.15.2 - dev: true - - /@babel/plugin-transform-reserved-words@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-shorthand-properties@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-spread@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - dev: true - - /@babel/plugin-transform-sticky-regex@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-typeof-symbol@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-typescript@7.23.4(@babel/core@7.23.5): - resolution: {integrity: sha512-39hCCOl+YUAyMOu6B9SmUTiHUU0t/CxJNUmY3qRdJujbqi+lrQcL11ysYUsAvFWPBdhihrv1z0oRG84Yr3dODQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.23.5) - dev: true - - /@babel/plugin-transform-unicode-escapes@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-unicode-property-regex@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-unicode-regex@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/plugin-transform-unicode-sets-regex@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.5) - '@babel/helper-plugin-utils': 7.22.5 - dev: true - - /@babel/preset-env@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-ovzGc2uuyNfNAs/jyjIGxS8arOHS5FENZaNn4rtE7UdKMMkqHCvboHfcuhWLZNX5cB44QfcGNWjaevxMzzMf+Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/compat-data': 7.23.3 - '@babel/core': 7.23.5 - '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.22.15 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.5) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.5) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.5) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.5) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.5) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.5) - '@babel/plugin-syntax-import-assertions': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-syntax-import-attributes': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.5) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.5) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.5) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.5) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.5) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.5) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.5) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.5) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.5) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.5) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.23.5) - '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-async-generator-functions': 7.23.4(@babel/core@7.23.5) - '@babel/plugin-transform-async-to-generator': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-block-scoped-functions': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-block-scoping': 7.23.4(@babel/core@7.23.5) - '@babel/plugin-transform-class-properties': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-class-static-block': 7.23.4(@babel/core@7.23.5) - '@babel/plugin-transform-classes': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-computed-properties': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-destructuring': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-dotall-regex': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-duplicate-keys': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-dynamic-import': 7.23.4(@babel/core@7.23.5) - '@babel/plugin-transform-exponentiation-operator': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-export-namespace-from': 7.23.4(@babel/core@7.23.5) - '@babel/plugin-transform-for-of': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-function-name': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-json-strings': 7.23.4(@babel/core@7.23.5) - '@babel/plugin-transform-literals': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-logical-assignment-operators': 7.23.4(@babel/core@7.23.5) - '@babel/plugin-transform-member-expression-literals': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-modules-amd': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-modules-systemjs': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-modules-umd': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.23.5) - '@babel/plugin-transform-new-target': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-nullish-coalescing-operator': 7.23.4(@babel/core@7.23.5) - '@babel/plugin-transform-numeric-separator': 7.23.4(@babel/core@7.23.5) - '@babel/plugin-transform-object-rest-spread': 7.23.4(@babel/core@7.23.5) - '@babel/plugin-transform-object-super': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-optional-catch-binding': 7.23.4(@babel/core@7.23.5) - '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.23.5) - '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-private-methods': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-private-property-in-object': 7.23.4(@babel/core@7.23.5) - '@babel/plugin-transform-property-literals': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-regenerator': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-reserved-words': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-shorthand-properties': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-spread': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-sticky-regex': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-template-literals': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-typeof-symbol': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-unicode-escapes': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-unicode-property-regex': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-unicode-regex': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-unicode-sets-regex': 7.23.3(@babel/core@7.23.5) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.23.5) - babel-plugin-polyfill-corejs2: 0.4.6(@babel/core@7.23.5) - babel-plugin-polyfill-corejs3: 0.8.6(@babel/core@7.23.5) - babel-plugin-polyfill-regenerator: 0.5.3(@babel/core@7.23.5) - core-js-compat: 3.33.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - dev: true - - /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.23.5): - resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} - peerDependencies: - '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/types': 7.23.5 - esutils: 2.0.3 - dev: true - - /@babel/preset-react@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-tbkHOS9axH6Ysf2OUEqoSZ6T3Fa2SrNH6WTWSPBboxKzdxNc9qOICeLXkNG0ZEwbQ1HY8liwOce4aN/Ceyuq6w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.22.15 - '@babel/plugin-transform-react-display-name': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.23.5) - '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.23.5) - '@babel/plugin-transform-react-pure-annotations': 7.23.3(@babel/core@7.23.5) - dev: true - - /@babel/preset-typescript@7.23.3(@babel/core@7.23.5): - resolution: {integrity: sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.22.15 - '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.5) - '@babel/plugin-transform-typescript': 7.23.4(@babel/core@7.23.5) - dev: true - - /@babel/regjsgen@0.8.0: - resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} - dev: true - - /@babel/runtime@7.24.0: - resolution: {integrity: sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw==} - engines: {node: '>=6.9.0'} - dependencies: - regenerator-runtime: 0.14.0 - dev: false - - /@babel/runtime@7.26.0: - resolution: {integrity: sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==} - engines: {node: '>=6.9.0'} - dependencies: - regenerator-runtime: 0.14.0 - - /@babel/template@7.22.15: - resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.23.5 - '@babel/parser': 7.23.5 - '@babel/types': 7.23.5 - - /@babel/traverse@7.23.5: - resolution: {integrity: sha512-czx7Xy5a6sapWWRx61m1Ke1Ra4vczu1mCTtJam5zRTBOonfdJ+S/B6HYmGYu3fJtr8GGET3si6IhgWVBhJ/m8w==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.23.5 - '@babel/generator': 7.23.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.23.5 - '@babel/types': 7.23.5 - debug: 4.4.1 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - /@babel/types@7.23.5: - resolution: {integrity: sha512-ON5kSOJwVO6xXVRTvOI0eOnWe7VdUcIpsovGo9U/Br4Ie4UVFQTboO2cYnDhAGU6Fp+UxSiT+pMft0SMHfuq6w==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-string-parser': 7.23.4 - '@babel/helper-validator-identifier': 7.22.20 - to-fast-properties: 2.0.0 - - /@babel/types@7.29.0: - resolution: {integrity: sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-string-parser': 7.27.1 - '@babel/helper-validator-identifier': 7.28.5 - dev: false - - /@chakra-ui/accordion@2.3.1(@chakra-ui/system@2.6.2)(framer-motion@10.16.5)(react@18.2.0): - resolution: {integrity: sha512-FSXRm8iClFyU+gVaXisOSEw0/4Q+qZbFRiuhIAkVU6Boj0FxAMrlo9a8AV5TuF77rgaHytCdHk0Ng+cyUijrag==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - framer-motion: '>=4.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/descendant': 3.1.0(react@18.2.0) - '@chakra-ui/icon': 3.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-controllable-state': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - '@chakra-ui/transition': 2.1.0(framer-motion@10.16.5)(react@18.2.0) - framer-motion: 10.16.5(react-dom@18.2.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/alert@2.2.2(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-jHg4LYMRNOJH830ViLuicjb3F+v6iriE/2G5T+Sd0Hna04nukNJ1MxUmBPE+vI22me2dIflfelu2v9wdB6Pojw==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/icon': 3.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/spinner': 2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/anatomy@2.2.2: - resolution: {integrity: sha512-MV6D4VLRIHr4PkW4zMyqfrNS1mPlCTiCXwvYGtDFQYr+xHFfonhAuf9WjsSc0nyp2m0OdkSLnzmVKkZFLo25Tg==} - dev: false - - /@chakra-ui/avatar@2.3.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-8gKSyLfygnaotbJbDMHDiJoF38OHXUYVme4gGxZ1fLnQEdPVEaIWfH+NndIjOM0z8S+YEFnT9KyGMUtvPrBk3g==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/image': 2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/react-children-utils': 2.0.6(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/breadcrumb@2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-4cWCG24flYBxjruRi4RJREWTGF74L/KzI2CognAW/d/zWR0CjiScuJhf37Am3LFbCySP6WSoyBOtTIoTA4yLEA==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/react-children-utils': 2.0.6(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/breakpoint-utils@2.0.8: - resolution: {integrity: sha512-Pq32MlEX9fwb5j5xx8s18zJMARNHlQZH2VH1RZgfgRDpp7DcEgtRW5AInfN5CfqdHLO1dGxA7I3MqEuL5JnIsA==} - dependencies: - '@chakra-ui/shared-utils': 2.0.5 - dev: false - - /@chakra-ui/button@2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-95CplwlRKmmUXkdEp/21VkEWgnwcx2TOBG6NfYlsuLBDHSLlo5FKIiE2oSi4zXc4TLcopGcWPNcm/NDaSC5pvA==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/spinner': 2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/card@2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-xUB/k5MURj4CtPAhdSoXZidUbm8j3hci9vnc+eZJVDqhDOShNlD6QeniQNRPRys4lWAQLCbFcrwL29C8naDi6g==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/checkbox@2.3.2(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-85g38JIXMEv6M+AcyIGLh7igNtfpAN6KGQFYxY9tBj0eWvWk4NKQxvqqyVta0bSAyIl1rixNIIezNpNWk2iO4g==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/form-control': 2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-types': 2.0.7(react@18.2.0) - '@chakra-ui/react-use-callback-ref': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-controllable-state': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-safe-layout-effect': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-update-effect': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - '@chakra-ui/visually-hidden': 2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@zag-js/focus-visible': 0.16.0 - react: 18.2.0 - dev: false - - /@chakra-ui/cli@2.4.1: - resolution: {integrity: sha512-GZZuHUA1cXJWpmYNiVTLPihvY4VhIssRl+AXgw/0IbeodTMop3jWlIioPKLAQeXu5CwvRA6iESyGjnu1V8Zykg==} - hasBin: true - dependencies: - chokidar: 3.5.3 - cli-check-node: 1.3.4 - cli-handle-unhandled: 1.1.1 - cli-welcome: 2.2.2 - commander: 9.5.0 - esbuild: 0.17.19 - prettier: 2.8.8 - dev: true - - /@chakra-ui/clickable@2.1.0(react@18.2.0): - resolution: {integrity: sha512-flRA/ClPUGPYabu+/GLREZVZr9j2uyyazCAUHAdrTUEdDYCr31SVGhgh7dgKdtq23bOvAQJpIJjw/0Bs0WvbXw==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - react: 18.2.0 - dev: false - - /@chakra-ui/close-button@2.1.1(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-gnpENKOanKexswSVpVz7ojZEALl2x5qjLYNqSQGbxz+aP9sOXPfUS56ebyBrre7T7exuWGiFeRwnM0oVeGPaiw==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/icon': 3.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/color-mode@2.2.0(react@18.2.0): - resolution: {integrity: sha512-niTEA8PALtMWRI9wJ4LL0CSBDo8NBfLNp4GD6/0hstcm3IlbBHTVKxN6HwSaoNYfphDQLxCjT4yG+0BJA5tFpg==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/react-use-safe-layout-effect': 2.1.0(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/control-box@2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-gVrRDyXFdMd8E7rulL0SKeoljkLQiPITFnsyMO8EFHNZ+AHt5wK4LIguYVEq88APqAGZGfHFWXr79RYrNiE3Mg==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/counter@2.1.0(react@18.2.0): - resolution: {integrity: sha512-s6hZAEcWT5zzjNz2JIWUBzRubo9la/oof1W7EKZVVfPYHERnl5e16FmBC79Yfq8p09LQ+aqFKm/etYoJMMgghw==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/number-utils': 2.0.7 - '@chakra-ui/react-use-callback-ref': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - react: 18.2.0 - dev: false - - /@chakra-ui/css-reset@2.3.0(@emotion/react@11.11.1)(react@18.2.0): - resolution: {integrity: sha512-cQwwBy5O0jzvl0K7PLTLgp8ijqLPKyuEMiDXwYzl95seD3AoeuoCLyzZcJtVqaUZ573PiBdAbY/IlZcwDOItWg==} - peerDependencies: - '@emotion/react': '>=10.0.35' - react: 18.2.0 - dependencies: - '@emotion/react': 11.11.1(@types/react@18.2.37)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/descendant@3.1.0(react@18.2.0): - resolution: {integrity: sha512-VxCIAir08g5w27klLyi7PVo8BxhW4tgU/lxQyujkmi4zx7hT9ZdrcQLAted/dAa+aSIZ14S1oV0Q9lGjsAdxUQ==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/dom-utils@2.1.0: - resolution: {integrity: sha512-ZmF2qRa1QZ0CMLU8M1zCfmw29DmPNtfjR9iTo74U5FPr3i1aoAh7fbJ4qAlZ197Xw9eAW28tvzQuoVWeL5C7fQ==} - dev: false - - /@chakra-ui/editable@3.1.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-j2JLrUL9wgg4YA6jLlbU88370eCRyor7DZQD9lzpY95tSOXpTljeg3uF9eOmDnCs6fxp3zDWIfkgMm/ExhcGTg==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-types': 2.0.7(react@18.2.0) - '@chakra-ui/react-use-callback-ref': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-controllable-state': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-focus-on-pointer-down': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-safe-layout-effect': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-update-effect': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/event-utils@2.0.8: - resolution: {integrity: sha512-IGM/yGUHS+8TOQrZGpAKOJl/xGBrmRYJrmbHfUE7zrG3PpQyXvbLDP1M+RggkCFVgHlJi2wpYIf0QtQlU0XZfw==} - dev: false - - /@chakra-ui/focus-lock@2.1.0(@types/react@18.2.37)(react@18.2.0): - resolution: {integrity: sha512-EmGx4PhWGjm4dpjRqM4Aa+rCWBxP+Rq8Uc/nAVnD4YVqkEhBkrPTpui2lnjsuxqNaZ24fIAZ10cF1hlpemte/w==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/dom-utils': 2.1.0 - react: 18.2.0 - react-focus-lock: 2.9.6(@types/react@18.2.37)(react@18.2.0) - transitivePeerDependencies: - - '@types/react' - dev: false - - /@chakra-ui/form-control@2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-wehLC1t4fafCVJ2RvJQT2jyqsAwX7KymmiGqBu7nQoQz8ApTkGABWpo/QwDh3F/dBLrouHDoOvGmYTqft3Mirw==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/icon': 3.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-types': 2.0.7(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/hooks@2.2.1(react@18.2.0): - resolution: {integrity: sha512-RQbTnzl6b1tBjbDPf9zGRo9rf/pQMholsOudTxjy4i9GfTfz6kgp5ValGjQm2z7ng6Z31N1cnjZ1AlSzQ//ZfQ==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/react-utils': 2.0.12(react@18.2.0) - '@chakra-ui/utils': 2.0.15 - compute-scroll-into-view: 3.0.3 - copy-to-clipboard: 3.3.3 - react: 18.2.0 - dev: false - - /@chakra-ui/icon@3.2.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-xxjGLvlX2Ys4H0iHrI16t74rG9EBcpFvJ3Y3B7KMQTrnW34Kf7Da/UC8J67Gtx85mTHW020ml85SVPKORWNNKQ==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/icons@2.1.1(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-3p30hdo4LlRZTT5CwoAJq3G9fHI0wDc0pBaMHj4SUn0yomO+RcDRlzhdXqdr5cVnzax44sqXJVnf3oQG0eI+4g==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/icon': 3.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/image@2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-bskumBYKLiLMySIWDGcz0+D9Th0jPvmX6xnRMs4o92tT3Od/bW26lahmV2a2Op2ItXeCmRMY+XxJH5Gy1i46VA==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/react-use-safe-layout-effect': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/input@2.1.2(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-GiBbb3EqAA8Ph43yGa6Mc+kUPjh4Spmxp1Pkelr8qtudpc3p2PJOOebLpd90mcqw8UePPa+l6YhhPtp6o0irhw==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/form-control': 2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/object-utils': 2.1.0 - '@chakra-ui/react-children-utils': 2.0.6(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/layout@2.3.1(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-nXuZ6WRbq0WdgnRgLw+QuxWAHuhDtVX8ElWqcTK+cSMFg/52eVP47czYBE5F35YhnoW2XBwfNoNgZ7+e8Z01Rg==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/breakpoint-utils': 2.0.8 - '@chakra-ui/icon': 3.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/object-utils': 2.1.0 - '@chakra-ui/react-children-utils': 2.0.6(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/lazy-utils@2.0.5: - resolution: {integrity: sha512-UULqw7FBvcckQk2n3iPO56TMJvDsNv0FKZI6PlUNJVaGsPbsYxK/8IQ60vZgaTVPtVcjY6BE+y6zg8u9HOqpyg==} - dev: false - - /@chakra-ui/live-region@2.1.0(react@18.2.0): - resolution: {integrity: sha512-ZOxFXwtaLIsXjqnszYYrVuswBhnIHHP+XIgK1vC6DePKtyK590Wg+0J0slDwThUAd4MSSIUa/nNX84x1GMphWw==} - peerDependencies: - react: 18.2.0 - dependencies: - react: 18.2.0 - dev: false - - /@chakra-ui/media-query@3.3.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-IsTGgFLoICVoPRp9ykOgqmdMotJG0CnPsKvGQeSFOB/dZfIujdVb14TYxDU4+MURXry1MhJ7LzZhv+Ml7cr8/g==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/breakpoint-utils': 2.0.8 - '@chakra-ui/react-env': 3.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/menu@2.2.1(@chakra-ui/system@2.6.2)(framer-motion@10.16.5)(react@18.2.0): - resolution: {integrity: sha512-lJS7XEObzJxsOwWQh7yfG4H8FzFPRP5hVPN/CL+JzytEINCSBvsCDHrYPQGp7jzpCi8vnTqQQGQe0f8dwnXd2g==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - framer-motion: '>=4.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/clickable': 2.1.0(react@18.2.0) - '@chakra-ui/descendant': 3.1.0(react@18.2.0) - '@chakra-ui/lazy-utils': 2.0.5 - '@chakra-ui/popper': 3.1.0(react@18.2.0) - '@chakra-ui/react-children-utils': 2.0.6(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-animation-state': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-controllable-state': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-disclosure': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-focus-effect': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-outside-click': 2.2.0(react@18.2.0) - '@chakra-ui/react-use-update-effect': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - '@chakra-ui/transition': 2.1.0(framer-motion@10.16.5)(react@18.2.0) - framer-motion: 10.16.5(react-dom@18.2.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/modal@2.3.1(@chakra-ui/system@2.6.2)(@types/react@18.2.37)(framer-motion@10.16.5)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-TQv1ZaiJMZN+rR9DK0snx/OPwmtaGH1HbZtlYt4W4s6CzyK541fxLRTjIXfEzIGpvNW+b6VFuFjbcR78p4DEoQ==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - framer-motion: '>=4.0.0' - react: 18.2.0 - react-dom: 18.2.0 - dependencies: - '@chakra-ui/close-button': 2.1.1(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/focus-lock': 2.1.0(@types/react@18.2.37)(react@18.2.0) - '@chakra-ui/portal': 2.1.0(react-dom@18.2.0)(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-types': 2.0.7(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - '@chakra-ui/transition': 2.1.0(framer-motion@10.16.5)(react@18.2.0) - aria-hidden: 1.2.4 - framer-motion: 10.16.5(react-dom@18.2.0)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-remove-scroll: 2.7.1(@types/react@18.2.37)(react@18.2.0) - transitivePeerDependencies: - - '@types/react' - dev: false - - /@chakra-ui/next-js@2.2.0(@chakra-ui/react@2.8.2)(@emotion/react@11.11.1)(next@13.5.11)(react@18.2.0): - resolution: {integrity: sha512-brCz0UEOlImX4Np2jDIaljZJkW6kiDSuXG5erxvYjZlklLhmti1zj0o1sSjt5yff1xndfgHoOJb+BYG5wx+vDg==} - peerDependencies: - '@chakra-ui/react': '>=2.4.0' - '@emotion/react': '>=11' - next: '>=13' - react: 18.2.0 - dependencies: - '@chakra-ui/react': 2.8.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(@types/react@18.2.37)(framer-motion@10.16.5)(react-dom@18.2.0)(react@18.2.0) - '@emotion/cache': 11.11.0 - '@emotion/react': 11.11.1(@types/react@18.2.37)(react@18.2.0) - next: 13.5.11(@babel/core@7.23.5)(react-dom@18.2.0)(react@18.2.0)(sass@1.69.5) - react: 18.2.0 - dev: false - - /@chakra-ui/number-input@2.1.2(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-pfOdX02sqUN0qC2ysuvgVDiws7xZ20XDIlcNhva55Jgm095xjm8eVdIBfNm3SFbSUNxyXvLTW/YQanX74tKmuA==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/counter': 2.1.0(react@18.2.0) - '@chakra-ui/form-control': 2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/icon': 3.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-types': 2.0.7(react@18.2.0) - '@chakra-ui/react-use-callback-ref': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-event-listener': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-interval': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-safe-layout-effect': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-update-effect': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/number-utils@2.0.7: - resolution: {integrity: sha512-yOGxBjXNvLTBvQyhMDqGU0Oj26s91mbAlqKHiuw737AXHt0aPllOthVUqQMeaYLwLCjGMg0jtI7JReRzyi94Dg==} - dev: false - - /@chakra-ui/object-utils@2.1.0: - resolution: {integrity: sha512-tgIZOgLHaoti5PYGPTwK3t/cqtcycW0owaiOXoZOcpwwX/vlVb+H1jFsQyWiiwQVPt9RkoSLtxzXamx+aHH+bQ==} - dev: false - - /@chakra-ui/pin-input@2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-x4vBqLStDxJFMt+jdAHHS8jbh294O53CPQJoL4g228P513rHylV/uPscYUHrVJXRxsHfRztQO9k45jjTYaPRMw==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/descendant': 3.1.0(react@18.2.0) - '@chakra-ui/react-children-utils': 2.0.6(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-controllable-state': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/popover@2.2.1(@chakra-ui/system@2.6.2)(framer-motion@10.16.5)(react@18.2.0): - resolution: {integrity: sha512-K+2ai2dD0ljvJnlrzesCDT9mNzLifE3noGKZ3QwLqd/K34Ym1W/0aL1ERSynrcG78NKoXS54SdEzkhCZ4Gn/Zg==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - framer-motion: '>=4.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/close-button': 2.1.1(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/lazy-utils': 2.0.5 - '@chakra-ui/popper': 3.1.0(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-types': 2.0.7(react@18.2.0) - '@chakra-ui/react-use-animation-state': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-disclosure': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-focus-effect': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-focus-on-pointer-down': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - framer-motion: 10.16.5(react-dom@18.2.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/popper@3.1.0(react@18.2.0): - resolution: {integrity: sha512-ciDdpdYbeFG7og6/6J8lkTFxsSvwTdMLFkpVylAF6VNC22jssiWfquj2eyD4rJnzkRFPvIWJq8hvbfhsm+AjSg==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/react-types': 2.0.7(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@popperjs/core': 2.11.8 - react: 18.2.0 - dev: false - - /@chakra-ui/portal@2.1.0(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-9q9KWf6SArEcIq1gGofNcFPSWEyl+MfJjEUg/un1SMlQjaROOh3zYr+6JAwvcORiX7tyHosnmWC3d3wI2aPSQg==} - peerDependencies: - react: 18.2.0 - react-dom: 18.2.0 - dependencies: - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-safe-layout-effect': 2.1.0(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - - /@chakra-ui/progress@2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-qUXuKbuhN60EzDD9mHR7B67D7p/ZqNS2Aze4Pbl1qGGZfulPW0PY8Rof32qDtttDQBkzQIzFGE8d9QpAemToIQ==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/provider@2.4.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-w0Tef5ZCJK1mlJorcSjItCSbyvVuqpvyWdxZiVQmE6fvSJR83wZof42ux0+sfWD+I7rHSfj+f9nzhNaEWClysw==} - peerDependencies: - '@emotion/react': ^11.0.0 - '@emotion/styled': ^11.0.0 - react: 18.2.0 - react-dom: 18.2.0 - dependencies: - '@chakra-ui/css-reset': 2.3.0(@emotion/react@11.11.1)(react@18.2.0) - '@chakra-ui/portal': 2.1.0(react-dom@18.2.0)(react@18.2.0) - '@chakra-ui/react-env': 3.1.0(react@18.2.0) - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - '@chakra-ui/utils': 2.0.15 - '@emotion/react': 11.11.1(@types/react@18.2.37)(react@18.2.0) - '@emotion/styled': 11.11.0(@emotion/react@11.11.1)(@types/react@18.2.37)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - - /@chakra-ui/radio@2.1.2(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-n10M46wJrMGbonaghvSRnZ9ToTv/q76Szz284gv4QUWvyljQACcGrXIONUnQ3BIwbOfkRqSk7Xl/JgZtVfll+w==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/form-control': 2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-types': 2.0.7(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - '@zag-js/focus-visible': 0.16.0 - react: 18.2.0 - dev: false - - /@chakra-ui/react-children-utils@2.0.6(react@18.2.0): - resolution: {integrity: sha512-QVR2RC7QsOsbWwEnq9YduhpqSFnZGvjjGREV8ygKi8ADhXh93C8azLECCUVgRJF2Wc+So1fgxmjLcbZfY2VmBA==} - peerDependencies: - react: 18.2.0 - dependencies: - react: 18.2.0 - dev: false - - /@chakra-ui/react-context@2.1.0(react@18.2.0): - resolution: {integrity: sha512-iahyStvzQ4AOwKwdPReLGfDesGG+vWJfEsn0X/NoGph/SkN+HXtv2sCfYFFR9k7bb+Kvc6YfpLlSuLvKMHi2+w==} - peerDependencies: - react: 18.2.0 - dependencies: - react: 18.2.0 - dev: false - - /@chakra-ui/react-env@3.1.0(react@18.2.0): - resolution: {integrity: sha512-Vr96GV2LNBth3+IKzr/rq1IcnkXv+MLmwjQH6C8BRtn3sNskgDFD5vLkVXcEhagzZMCh8FR3V/bzZPojBOyNhw==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/react-use-safe-layout-effect': 2.1.0(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/react-types@2.0.7(react@18.2.0): - resolution: {integrity: sha512-12zv2qIZ8EHwiytggtGvo4iLT0APris7T0qaAWqzpUGS0cdUtR8W+V1BJ5Ocq+7tA6dzQ/7+w5hmXih61TuhWQ==} - peerDependencies: - react: 18.2.0 - dependencies: - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-animation-state@2.1.0(react@18.2.0): - resolution: {integrity: sha512-CFZkQU3gmDBwhqy0vC1ryf90BVHxVN8cTLpSyCpdmExUEtSEInSCGMydj2fvn7QXsz/za8JNdO2xxgJwxpLMtg==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/dom-utils': 2.1.0 - '@chakra-ui/react-use-event-listener': 2.1.0(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-callback-ref@2.1.0(react@18.2.0): - resolution: {integrity: sha512-efnJrBtGDa4YaxDzDE90EnKD3Vkh5a1t3w7PhnRQmsphLy3g2UieasoKTlT2Hn118TwDjIv5ZjHJW6HbzXA9wQ==} - peerDependencies: - react: 18.2.0 - dependencies: - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-controllable-state@2.1.0(react@18.2.0): - resolution: {integrity: sha512-QR/8fKNokxZUs4PfxjXuwl0fj/d71WPrmLJvEpCTkHjnzu7LnYvzoe2wB867IdooQJL0G1zBxl0Dq+6W1P3jpg==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/react-use-callback-ref': 2.1.0(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-disclosure@2.1.0(react@18.2.0): - resolution: {integrity: sha512-Ax4pmxA9LBGMyEZJhhUZobg9C0t3qFE4jVF1tGBsrLDcdBeLR9fwOogIPY9Hf0/wqSlAryAimICbr5hkpa5GSw==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/react-use-callback-ref': 2.1.0(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-event-listener@2.1.0(react@18.2.0): - resolution: {integrity: sha512-U5greryDLS8ISP69DKDsYcsXRtAdnTQT+jjIlRYZ49K/XhUR/AqVZCK5BkR1spTDmO9H8SPhgeNKI70ODuDU/Q==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/react-use-callback-ref': 2.1.0(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-focus-effect@2.1.0(react@18.2.0): - resolution: {integrity: sha512-xzVboNy7J64xveLcxTIJ3jv+lUJKDwRM7Szwn9tNzUIPD94O3qwjV7DDCUzN2490nSYDF4OBMt/wuDBtaR3kUQ==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/dom-utils': 2.1.0 - '@chakra-ui/react-use-event-listener': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-safe-layout-effect': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-update-effect': 2.1.0(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-focus-on-pointer-down@2.1.0(react@18.2.0): - resolution: {integrity: sha512-2jzrUZ+aiCG/cfanrolsnSMDykCAbv9EK/4iUyZno6BYb3vziucmvgKuoXbMPAzWNtwUwtuMhkby8rc61Ue+Lg==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/react-use-event-listener': 2.1.0(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-interval@2.1.0(react@18.2.0): - resolution: {integrity: sha512-8iWj+I/+A0J08pgEXP1J1flcvhLBHkk0ln7ZvGIyXiEyM6XagOTJpwNhiu+Bmk59t3HoV/VyvyJTa+44sEApuw==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/react-use-callback-ref': 2.1.0(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-latest-ref@2.1.0(react@18.2.0): - resolution: {integrity: sha512-m0kxuIYqoYB0va9Z2aW4xP/5b7BzlDeWwyXCH6QpT2PpW3/281L3hLCm1G0eOUcdVlayqrQqOeD6Mglq+5/xoQ==} - peerDependencies: - react: 18.2.0 - dependencies: - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-merge-refs@2.1.0(react@18.2.0): - resolution: {integrity: sha512-lERa6AWF1cjEtWSGjxWTaSMvneccnAVH4V4ozh8SYiN9fSPZLlSG3kNxfNzdFvMEhM7dnP60vynF7WjGdTgQbQ==} - peerDependencies: - react: 18.2.0 - dependencies: - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-outside-click@2.2.0(react@18.2.0): - resolution: {integrity: sha512-PNX+s/JEaMneijbgAM4iFL+f3m1ga9+6QK0E5Yh4s8KZJQ/bLwZzdhMz8J/+mL+XEXQ5J0N8ivZN28B82N1kNw==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/react-use-callback-ref': 2.1.0(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-pan-event@2.1.0(react@18.2.0): - resolution: {integrity: sha512-xmL2qOHiXqfcj0q7ZK5s9UjTh4Gz0/gL9jcWPA6GVf+A0Od5imEDa/Vz+533yQKWiNSm1QGrIj0eJAokc7O4fg==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/event-utils': 2.0.8 - '@chakra-ui/react-use-latest-ref': 2.1.0(react@18.2.0) - framesync: 6.1.2 - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-previous@2.1.0(react@18.2.0): - resolution: {integrity: sha512-pjxGwue1hX8AFcmjZ2XfrQtIJgqbTF3Qs1Dy3d1krC77dEsiCUbQ9GzOBfDc8pfd60DrB5N2tg5JyHbypqh0Sg==} - peerDependencies: - react: 18.2.0 - dependencies: - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-safe-layout-effect@2.1.0(react@18.2.0): - resolution: {integrity: sha512-Knbrrx/bcPwVS1TorFdzrK/zWA8yuU/eaXDkNj24IrKoRlQrSBFarcgAEzlCHtzuhufP3OULPkELTzz91b0tCw==} - peerDependencies: - react: 18.2.0 - dependencies: - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-size@2.1.0(react@18.2.0): - resolution: {integrity: sha512-tbLqrQhbnqOjzTaMlYytp7wY8BW1JpL78iG7Ru1DlV4EWGiAmXFGvtnEt9HftU0NJ0aJyjgymkxfVGI55/1Z4A==} - peerDependencies: - react: 18.2.0 - dependencies: - '@zag-js/element-size': 0.10.5 - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-timeout@2.1.0(react@18.2.0): - resolution: {integrity: sha512-cFN0sobKMM9hXUhyCofx3/Mjlzah6ADaEl/AXl5Y+GawB5rgedgAcu2ErAgarEkwvsKdP6c68CKjQ9dmTQlJxQ==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/react-use-callback-ref': 2.1.0(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/react-use-update-effect@2.1.0(react@18.2.0): - resolution: {integrity: sha512-ND4Q23tETaR2Qd3zwCKYOOS1dfssojPLJMLvUtUbW5M9uW1ejYWgGUobeAiOVfSplownG8QYMmHTP86p/v0lbA==} - peerDependencies: - react: 18.2.0 - dependencies: - react: 18.2.0 - dev: false - - /@chakra-ui/react-utils@2.0.12(react@18.2.0): - resolution: {integrity: sha512-GbSfVb283+YA3kA8w8xWmzbjNWk14uhNpntnipHCftBibl0lxtQ9YqMFQLwuFOO0U2gYVocszqqDWX+XNKq9hw==} - peerDependencies: - react: 18.2.0 - dependencies: - '@chakra-ui/utils': 2.0.15 - react: 18.2.0 - dev: false - - /@chakra-ui/react@2.8.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(@types/react@18.2.37)(framer-motion@10.16.5)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-Hn0moyxxyCDKuR9ywYpqgX8dvjqwu9ArwpIb9wHNYjnODETjLwazgNIliCVBRcJvysGRiV51U2/JtJVrpeCjUQ==} - peerDependencies: - '@emotion/react': ^11.0.0 - '@emotion/styled': ^11.0.0 - framer-motion: '>=4.0.0' - react: 18.2.0 - react-dom: 18.2.0 - dependencies: - '@chakra-ui/accordion': 2.3.1(@chakra-ui/system@2.6.2)(framer-motion@10.16.5)(react@18.2.0) - '@chakra-ui/alert': 2.2.2(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/avatar': 2.3.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/breadcrumb': 2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/button': 2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/card': 2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/checkbox': 2.3.2(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/close-button': 2.1.1(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/control-box': 2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/counter': 2.1.0(react@18.2.0) - '@chakra-ui/css-reset': 2.3.0(@emotion/react@11.11.1)(react@18.2.0) - '@chakra-ui/editable': 3.1.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/focus-lock': 2.1.0(@types/react@18.2.37)(react@18.2.0) - '@chakra-ui/form-control': 2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/hooks': 2.2.1(react@18.2.0) - '@chakra-ui/icon': 3.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/image': 2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/input': 2.1.2(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/layout': 2.3.1(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/live-region': 2.1.0(react@18.2.0) - '@chakra-ui/media-query': 3.3.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/menu': 2.2.1(@chakra-ui/system@2.6.2)(framer-motion@10.16.5)(react@18.2.0) - '@chakra-ui/modal': 2.3.1(@chakra-ui/system@2.6.2)(@types/react@18.2.37)(framer-motion@10.16.5)(react-dom@18.2.0)(react@18.2.0) - '@chakra-ui/number-input': 2.1.2(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/pin-input': 2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/popover': 2.2.1(@chakra-ui/system@2.6.2)(framer-motion@10.16.5)(react@18.2.0) - '@chakra-ui/popper': 3.1.0(react@18.2.0) - '@chakra-ui/portal': 2.1.0(react-dom@18.2.0)(react@18.2.0) - '@chakra-ui/progress': 2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/provider': 2.4.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react-dom@18.2.0)(react@18.2.0) - '@chakra-ui/radio': 2.1.2(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/react-env': 3.1.0(react@18.2.0) - '@chakra-ui/select': 2.1.2(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/skeleton': 2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/skip-nav': 2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/slider': 2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/spinner': 2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/stat': 2.1.1(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/stepper': 2.3.1(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/styled-system': 2.9.2 - '@chakra-ui/switch': 2.1.2(@chakra-ui/system@2.6.2)(framer-motion@10.16.5)(react@18.2.0) - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - '@chakra-ui/table': 2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/tabs': 3.0.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/tag': 3.1.1(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/textarea': 2.1.2(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/theme': 3.3.1(@chakra-ui/styled-system@2.9.2) - '@chakra-ui/theme-utils': 2.0.21 - '@chakra-ui/toast': 7.0.2(@chakra-ui/system@2.6.2)(framer-motion@10.16.5)(react-dom@18.2.0)(react@18.2.0) - '@chakra-ui/tooltip': 2.3.1(@chakra-ui/system@2.6.2)(framer-motion@10.16.5)(react-dom@18.2.0)(react@18.2.0) - '@chakra-ui/transition': 2.1.0(framer-motion@10.16.5)(react@18.2.0) - '@chakra-ui/utils': 2.0.15 - '@chakra-ui/visually-hidden': 2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@emotion/react': 11.11.1(@types/react@18.2.37)(react@18.2.0) - '@emotion/styled': 11.11.0(@emotion/react@11.11.1)(@types/react@18.2.37)(react@18.2.0) - framer-motion: 10.16.5(react-dom@18.2.0)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - transitivePeerDependencies: - - '@types/react' - dev: false - - /@chakra-ui/select@2.1.2(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-ZwCb7LqKCVLJhru3DXvKXpZ7Pbu1TDZ7N0PdQ0Zj1oyVLJyrpef1u9HR5u0amOpqcH++Ugt0f5JSmirjNlctjA==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/form-control': 2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/shared-utils@2.0.5: - resolution: {integrity: sha512-4/Wur0FqDov7Y0nCXl7HbHzCg4aq86h+SXdoUeuCMD3dSj7dpsVnStLYhng1vxvlbUnLpdF4oz5Myt3i/a7N3Q==} - dev: false - - /@chakra-ui/skeleton@2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-JNRuMPpdZGd6zFVKjVQ0iusu3tXAdI29n4ZENYwAJEMf/fN0l12sVeirOxkJ7oEL0yOx2AgEYFSKdbcAgfUsAQ==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/media-query': 3.3.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/react-use-previous': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/skip-nav@2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-Hk+FG+vadBSH0/7hwp9LJnLjkO0RPGnx7gBJWI4/SpoJf3e4tZlWYtwGj0toYY4aGKl93jVghuwGbDBEMoHDug==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/slider@2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-lUOBcLMCnFZiA/s2NONXhELJh6sY5WtbRykPtclGfynqqOo47lwWJx+VP7xaeuhDOPcWSSecWc9Y1BfPOCz9cQ==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/number-utils': 2.0.7 - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-types': 2.0.7(react@18.2.0) - '@chakra-ui/react-use-callback-ref': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-controllable-state': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-latest-ref': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-pan-event': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-size': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-update-effect': 2.1.0(react@18.2.0) - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/spinner@2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-hczbnoXt+MMv/d3gE+hjQhmkzLiKuoTo42YhUG7Bs9OSv2lg1fZHW1fGNRFP3wTi6OIbD044U1P9HK+AOgFH3g==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/stat@2.1.1(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-LDn0d/LXQNbAn2KaR3F1zivsZCewY4Jsy1qShmfBMKwn6rI8yVlbvu6SiA3OpHS0FhxbsZxQI6HefEoIgtqY6Q==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/icon': 3.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/stepper@2.3.1(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-ky77lZbW60zYkSXhYz7kbItUpAQfEdycT0Q4bkHLxfqbuiGMf8OmgZOQkOB9uM4v0zPwy2HXhe0vq4Dd0xa55Q==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/icon': 3.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/styled-system@2.9.2: - resolution: {integrity: sha512-To/Z92oHpIE+4nk11uVMWqo2GGRS86coeMmjxtpnErmWRdLcp1WVCVRAvn+ZwpLiNR+reWFr2FFqJRsREuZdAg==} - dependencies: - '@chakra-ui/shared-utils': 2.0.5 - csstype: 3.2.3 - lodash.mergewith: 4.6.2 - dev: false - - /@chakra-ui/switch@2.1.2(@chakra-ui/system@2.6.2)(framer-motion@10.16.5)(react@18.2.0): - resolution: {integrity: sha512-pgmi/CC+E1v31FcnQhsSGjJnOE2OcND4cKPyTE+0F+bmGm48Q/b5UmKD9Y+CmZsrt/7V3h8KNczowupfuBfIHA==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - framer-motion: '>=4.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/checkbox': 2.3.2(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - framer-motion: 10.16.5(react-dom@18.2.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/system@2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0): - resolution: {integrity: sha512-EGtpoEjLrUu4W1fHD+a62XR+hzC5YfsWm+6lO0Kybcga3yYEij9beegO0jZgug27V+Rf7vns95VPVP6mFd/DEQ==} - peerDependencies: - '@emotion/react': ^11.0.0 - '@emotion/styled': ^11.0.0 - react: 18.2.0 - dependencies: - '@chakra-ui/color-mode': 2.2.0(react@18.2.0) - '@chakra-ui/object-utils': 2.1.0 - '@chakra-ui/react-utils': 2.0.12(react@18.2.0) - '@chakra-ui/styled-system': 2.9.2 - '@chakra-ui/theme-utils': 2.0.21 - '@chakra-ui/utils': 2.0.15 - '@emotion/react': 11.11.1(@types/react@18.2.37)(react@18.2.0) - '@emotion/styled': 11.11.0(@emotion/react@11.11.1)(@types/react@18.2.37)(react@18.2.0) - react: 18.2.0 - react-fast-compare: 3.2.2 - dev: false - - /@chakra-ui/table@2.1.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-o5OrjoHCh5uCLdiUb0Oc0vq9rIAeHSIRScc2ExTC9Qg/uVZl2ygLrjToCaKfaaKl1oQexIeAcZDKvPG8tVkHyQ==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/tabs@3.0.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-6Mlclp8L9lqXmsGWF5q5gmemZXOiOYuh0SGT/7PgJVNPz3LXREXlXg2an4MBUD8W5oTkduCX+3KTMCwRrVrDYw==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/clickable': 2.1.0(react@18.2.0) - '@chakra-ui/descendant': 3.1.0(react@18.2.0) - '@chakra-ui/lazy-utils': 2.0.5 - '@chakra-ui/react-children-utils': 2.0.6(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-controllable-state': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-safe-layout-effect': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/tag@3.1.1(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-Bdel79Dv86Hnge2PKOU+t8H28nm/7Y3cKd4Kfk9k3lOpUh4+nkSGe58dhRzht59lEqa4N9waCgQiBdkydjvBXQ==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/icon': 3.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/textarea@2.1.2(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-ip7tvklVCZUb2fOHDb23qPy/Fr2mzDOGdkrpbNi50hDCiV4hFX02jdQJdi3ydHZUyVgZVBKPOJ+lT9i7sKA2wA==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/form-control': 2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/theme-tools@2.1.2(@chakra-ui/styled-system@2.9.2): - resolution: {integrity: sha512-Qdj8ajF9kxY4gLrq7gA+Azp8CtFHGO9tWMN2wfF9aQNgG9AuMhPrUzMq9AMQ0MXiYcgNq/FD3eegB43nHVmXVA==} - peerDependencies: - '@chakra-ui/styled-system': '>=2.0.0' - dependencies: - '@chakra-ui/anatomy': 2.2.2 - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/styled-system': 2.9.2 - color2k: 2.0.2 - dev: false - - /@chakra-ui/theme-utils@2.0.21: - resolution: {integrity: sha512-FjH5LJbT794r0+VSCXB3lT4aubI24bLLRWB+CuRKHijRvsOg717bRdUN/N1fEmEpFnRVrbewttWh/OQs0EWpWw==} - dependencies: - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/styled-system': 2.9.2 - '@chakra-ui/theme': 3.3.1(@chakra-ui/styled-system@2.9.2) - lodash.mergewith: 4.6.2 - dev: false - - /@chakra-ui/theme@3.3.1(@chakra-ui/styled-system@2.9.2): - resolution: {integrity: sha512-Hft/VaT8GYnItGCBbgWd75ICrIrIFrR7lVOhV/dQnqtfGqsVDlrztbSErvMkoPKt0UgAkd9/o44jmZ6X4U2nZQ==} - peerDependencies: - '@chakra-ui/styled-system': '>=2.8.0' - dependencies: - '@chakra-ui/anatomy': 2.2.2 - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/styled-system': 2.9.2 - '@chakra-ui/theme-tools': 2.1.2(@chakra-ui/styled-system@2.9.2) - dev: false - - /@chakra-ui/toast@7.0.2(@chakra-ui/system@2.6.2)(framer-motion@10.16.5)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-yvRP8jFKRs/YnkuE41BVTq9nB2v/KDRmje9u6dgDmE5+1bFt3bwjdf9gVbif4u5Ve7F7BGk5E093ARRVtvLvXA==} - peerDependencies: - '@chakra-ui/system': 2.6.2 - framer-motion: '>=4.0.0' - react: 18.2.0 - react-dom: 18.2.0 - dependencies: - '@chakra-ui/alert': 2.2.2(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/close-button': 2.1.1(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/portal': 2.1.0(react-dom@18.2.0)(react@18.2.0) - '@chakra-ui/react-context': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-timeout': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-update-effect': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/styled-system': 2.9.2 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - '@chakra-ui/theme': 3.3.1(@chakra-ui/styled-system@2.9.2) - framer-motion: 10.16.5(react-dom@18.2.0)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - - /@chakra-ui/tooltip@2.3.1(@chakra-ui/system@2.6.2)(framer-motion@10.16.5)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-Rh39GBn/bL4kZpuEMPPRwYNnccRCL+w9OqamWHIB3Qboxs6h8cOyXfIdGxjo72lvhu1QI/a4KFqkM3St+WfC0A==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - framer-motion: '>=4.0.0' - react: 18.2.0 - react-dom: 18.2.0 - dependencies: - '@chakra-ui/dom-utils': 2.1.0 - '@chakra-ui/popper': 3.1.0(react@18.2.0) - '@chakra-ui/portal': 2.1.0(react-dom@18.2.0)(react@18.2.0) - '@chakra-ui/react-types': 2.0.7(react@18.2.0) - '@chakra-ui/react-use-disclosure': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-event-listener': 2.1.0(react@18.2.0) - '@chakra-ui/react-use-merge-refs': 2.1.0(react@18.2.0) - '@chakra-ui/shared-utils': 2.0.5 - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - framer-motion: 10.16.5(react-dom@18.2.0)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - - /@chakra-ui/transition@2.1.0(framer-motion@10.16.5)(react@18.2.0): - resolution: {integrity: sha512-orkT6T/Dt+/+kVwJNy7zwJ+U2xAZ3EU7M3XCs45RBvUnZDr/u9vdmaM/3D/rOpmQJWgQBwKPJleUXrYWUagEDQ==} - peerDependencies: - framer-motion: '>=4.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/shared-utils': 2.0.5 - framer-motion: 10.16.5(react-dom@18.2.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@chakra-ui/utils@2.0.15: - resolution: {integrity: sha512-El4+jL0WSaYYs+rJbuYFDbjmfCcfGDmRY95GO4xwzit6YAPZBLcR65rOEwLps+XWluZTy1xdMrusg/hW0c1aAA==} - dependencies: - '@types/lodash.mergewith': 4.6.7 - css-box-model: 1.2.1 - framesync: 6.1.2 - lodash.mergewith: 4.6.2 - dev: false - - /@chakra-ui/visually-hidden@2.2.0(@chakra-ui/system@2.6.2)(react@18.2.0): - resolution: {integrity: sha512-KmKDg01SrQ7VbTD3+cPWf/UfpF5MSwm3v7MWi0n5t8HnnadT13MF0MJCDSXbBWnzLv1ZKJ6zlyAOeARWX+DpjQ==} - peerDependencies: - '@chakra-ui/system': '>=2.0.0' - react: 18.2.0 - dependencies: - '@chakra-ui/system': 2.6.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(react@18.2.0) - react: 18.2.0 - dev: false - - /@codemirror/autocomplete@6.18.6: - resolution: {integrity: sha512-PHHBXFomUs5DF+9tCOM/UoW6XQ4R44lLNNhRaW9PKPTU0D7lIjRg3ElxaJnTwsl/oHiR93WSXDBrekhoUGCPtg==} - dependencies: - '@codemirror/language': 6.11.0 - '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.6 - '@lezer/common': 1.2.3 - dev: false - - /@codemirror/commands@6.8.1: - resolution: {integrity: sha512-KlGVYufHMQzxbdQONiLyGQDUW0itrLZwq3CcY7xpv9ZLRHqzkBSoteocBHtMCoY7/Ci4xhzSrToIeLg7FxHuaw==} - dependencies: - '@codemirror/language': 6.11.0 - '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.6 - '@lezer/common': 1.2.3 - dev: false - - /@codemirror/lang-css@6.3.1: - resolution: {integrity: sha512-kr5fwBGiGtmz6l0LSJIbno9QrifNMUusivHbnA1H6Dmqy4HZFte3UAICix1VuKo0lMPKQr2rqB+0BkKi/S3Ejg==} - dependencies: - '@codemirror/autocomplete': 6.18.6 - '@codemirror/language': 6.11.0 - '@codemirror/state': 6.5.2 - '@lezer/common': 1.2.3 - '@lezer/css': 1.1.11 - dev: false - - /@codemirror/lang-html@6.4.9: - resolution: {integrity: sha512-aQv37pIMSlueybId/2PVSP6NPnmurFDVmZwzc7jszd2KAF8qd4VBbvNYPXWQq90WIARjsdVkPbw29pszmHws3Q==} - dependencies: - '@codemirror/autocomplete': 6.18.6 - '@codemirror/lang-css': 6.3.1 - '@codemirror/lang-javascript': 6.2.3 - '@codemirror/language': 6.11.0 - '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.6 - '@lezer/common': 1.2.3 - '@lezer/css': 1.1.11 - '@lezer/html': 1.3.10 - dev: false - - /@codemirror/lang-javascript@6.2.3: - resolution: {integrity: sha512-8PR3vIWg7pSu7ur8A07pGiYHgy3hHj+mRYRCSG8q+mPIrl0F02rgpGv+DsQTHRTc30rydOsf5PZ7yjKFg2Ackw==} - dependencies: - '@codemirror/autocomplete': 6.18.6 - '@codemirror/language': 6.11.0 - '@codemirror/lint': 6.8.5 - '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.6 - '@lezer/common': 1.2.3 - '@lezer/javascript': 1.5.1 - dev: false - - /@codemirror/lang-json@6.0.1: - resolution: {integrity: sha512-+T1flHdgpqDDlJZ2Lkil/rLiRy684WMLc74xUnjJH48GQdfJo/pudlTRreZmKwzP8/tGdKf83wlbAdOCzlJOGQ==} - dependencies: - '@codemirror/language': 6.11.0 - '@lezer/json': 1.0.3 - dev: false - - /@codemirror/lang-xml@6.1.0: - resolution: {integrity: sha512-3z0blhicHLfwi2UgkZYRPioSgVTo9PV5GP5ducFH6FaHy0IAJRg+ixj5gTR1gnT/glAIC8xv4w2VL1LoZfs+Jg==} - dependencies: - '@codemirror/autocomplete': 6.18.6 - '@codemirror/language': 6.11.0 - '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.6 - '@lezer/common': 1.2.3 - '@lezer/xml': 1.0.6 - dev: false - - /@codemirror/lang-yaml@6.1.2: - resolution: {integrity: sha512-dxrfG8w5Ce/QbT7YID7mWZFKhdhsaTNOYjOkSIMt1qmC4VQnXSDSYVHHHn8k6kJUfIhtLo8t1JJgltlxWdsITw==} - dependencies: - '@codemirror/autocomplete': 6.18.6 - '@codemirror/language': 6.11.0 - '@codemirror/state': 6.5.2 - '@lezer/common': 1.2.3 - '@lezer/highlight': 1.2.1 - '@lezer/lr': 1.4.2 - '@lezer/yaml': 1.0.3 - dev: false - - /@codemirror/language@6.11.0: - resolution: {integrity: sha512-A7+f++LodNNc1wGgoRDTt78cOwWm9KVezApgjOMp1W4hM0898nsqBXwF+sbePE7ZRcjN7Sa1Z5m2oN27XkmEjQ==} - dependencies: - '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.6 - '@lezer/common': 1.2.3 - '@lezer/highlight': 1.2.1 - '@lezer/lr': 1.4.2 - style-mod: 4.1.2 - dev: false - - /@codemirror/lint@6.8.5: - resolution: {integrity: sha512-s3n3KisH7dx3vsoeGMxsbRAgKe4O1vbrnKBClm99PU0fWxmxsx5rR2PfqQgIt+2MMJBHbiJ5rfIdLYfB9NNvsA==} - dependencies: - '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.6 - crelt: 1.0.6 - dev: false - - /@codemirror/state@6.5.2: - resolution: {integrity: sha512-FVqsPqtPWKVVL3dPSxy8wEF/ymIEuVzF1PK3VbUgrxXpJUSHQWWZz4JMToquRxnkw+36LTamCZG2iua2Ptq0fA==} - dependencies: - '@marijn/find-cluster-break': 1.0.2 - dev: false - - /@codemirror/view@6.36.6: - resolution: {integrity: sha512-uxugGLet+Nzp0Jcit8Hn3LypM8ioMLKTsdf8FRoT3HWvZtb9GhaWMe0Cc15rz90Ljab4YFJiAulmIVB74OY0IQ==} - dependencies: - '@codemirror/state': 6.5.2 - style-mod: 4.1.2 - w3c-keyname: 2.2.8 - dev: false - - /@discoveryjs/json-ext@0.5.7: - resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} - engines: {node: '>=10.0.0'} - dev: true - - /@emotion/babel-plugin@11.11.0: - resolution: {integrity: sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==} - dependencies: - '@babel/helper-module-imports': 7.22.15 - '@babel/runtime': 7.26.0 - '@emotion/hash': 0.9.1 - '@emotion/memoize': 0.8.1 - '@emotion/serialize': 1.1.2 - babel-plugin-macros: 3.1.0 - convert-source-map: 1.9.0 - escape-string-regexp: 4.0.0 - find-root: 1.1.0 - source-map: 0.5.7 - stylis: 4.2.0 - dev: false - - /@emotion/cache@11.11.0: - resolution: {integrity: sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==} - dependencies: - '@emotion/memoize': 0.8.1 - '@emotion/sheet': 1.2.2 - '@emotion/utils': 1.2.1 - '@emotion/weak-memoize': 0.3.1 - stylis: 4.2.0 - dev: false - - /@emotion/cache@11.14.0: - resolution: {integrity: sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==} - dependencies: - '@emotion/memoize': 0.9.0 - '@emotion/sheet': 1.4.0 - '@emotion/utils': 1.4.2 - '@emotion/weak-memoize': 0.4.0 - stylis: 4.2.0 - dev: false - - /@emotion/hash@0.9.1: - resolution: {integrity: sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==} - dev: false - - /@emotion/is-prop-valid@0.8.8: - resolution: {integrity: sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==} - requiresBuild: true - dependencies: - '@emotion/memoize': 0.7.4 - dev: false - optional: true - - /@emotion/is-prop-valid@1.2.1: - resolution: {integrity: sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==} - dependencies: - '@emotion/memoize': 0.8.1 - dev: false - - /@emotion/memoize@0.7.4: - resolution: {integrity: sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==} - requiresBuild: true - dev: false - optional: true - - /@emotion/memoize@0.8.1: - resolution: {integrity: sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==} - dev: false - - /@emotion/memoize@0.9.0: - resolution: {integrity: sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==} - dev: false - - /@emotion/react@11.11.1(@types/react@18.2.37)(react@18.2.0): - resolution: {integrity: sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA==} - peerDependencies: - '@types/react': '*' - react: 18.2.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@babel/runtime': 7.26.0 - '@emotion/babel-plugin': 11.11.0 - '@emotion/cache': 11.14.0 - '@emotion/serialize': 1.1.2 - '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@18.2.0) - '@emotion/utils': 1.4.2 - '@emotion/weak-memoize': 0.3.1 - '@types/react': 18.2.37 - hoist-non-react-statics: 3.3.2 - react: 18.2.0 - dev: false - - /@emotion/serialize@1.1.2: - resolution: {integrity: sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA==} - dependencies: - '@emotion/hash': 0.9.1 - '@emotion/memoize': 0.8.1 - '@emotion/unitless': 0.8.1 - '@emotion/utils': 1.4.2 - csstype: 3.2.3 - dev: false - - /@emotion/sheet@1.2.2: - resolution: {integrity: sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==} - dev: false - - /@emotion/sheet@1.4.0: - resolution: {integrity: sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==} - dev: false - - /@emotion/styled@11.11.0(@emotion/react@11.11.1)(@types/react@18.2.37)(react@18.2.0): - resolution: {integrity: sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==} - peerDependencies: - '@emotion/react': ^11.0.0-rc.0 - '@types/react': '*' - react: 18.2.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@babel/runtime': 7.24.0 - '@emotion/babel-plugin': 11.11.0 - '@emotion/is-prop-valid': 1.2.1 - '@emotion/react': 11.11.1(@types/react@18.2.37)(react@18.2.0) - '@emotion/serialize': 1.1.2 - '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@18.2.0) - '@emotion/utils': 1.2.1 - '@types/react': 18.2.37 - react: 18.2.0 - dev: false - - /@emotion/unitless@0.8.1: - resolution: {integrity: sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==} - dev: false - - /@emotion/use-insertion-effect-with-fallbacks@1.0.1(react@18.2.0): - resolution: {integrity: sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==} - peerDependencies: - react: 18.2.0 - dependencies: - react: 18.2.0 - dev: false - - /@emotion/utils@1.2.1: - resolution: {integrity: sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==} - dev: false - - /@emotion/utils@1.4.2: - resolution: {integrity: sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==} - dev: false - - /@emotion/weak-memoize@0.3.1: - resolution: {integrity: sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==} - dev: false - - /@emotion/weak-memoize@0.4.0: - resolution: {integrity: sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==} - dev: false - - /@esbuild/android-arm64@0.17.19: - resolution: {integrity: sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - requiresBuild: true - dev: true - optional: true - - /@esbuild/android-arm@0.17.19: - resolution: {integrity: sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - requiresBuild: true - dev: true - optional: true - - /@esbuild/android-x64@0.17.19: - resolution: {integrity: sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - requiresBuild: true - dev: true - optional: true - - /@esbuild/darwin-arm64@0.17.19: - resolution: {integrity: sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - /@esbuild/darwin-x64@0.17.19: - resolution: {integrity: sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - /@esbuild/freebsd-arm64@0.17.19: - resolution: {integrity: sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - requiresBuild: true - dev: true - optional: true - - /@esbuild/freebsd-x64@0.17.19: - resolution: {integrity: sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-arm64@0.17.19: - resolution: {integrity: sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-arm@0.17.19: - resolution: {integrity: sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-ia32@0.17.19: - resolution: {integrity: sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-loong64@0.17.19: - resolution: {integrity: sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-mips64el@0.17.19: - resolution: {integrity: sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-ppc64@0.17.19: - resolution: {integrity: sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-riscv64@0.17.19: - resolution: {integrity: sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-s390x@0.17.19: - resolution: {integrity: sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-x64@0.17.19: - resolution: {integrity: sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/netbsd-x64@0.17.19: - resolution: {integrity: sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - requiresBuild: true - dev: true - optional: true - - /@esbuild/openbsd-x64@0.17.19: - resolution: {integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - requiresBuild: true - dev: true - optional: true - - /@esbuild/sunos-x64@0.17.19: - resolution: {integrity: sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - requiresBuild: true - dev: true - optional: true - - /@esbuild/win32-arm64@0.17.19: - resolution: {integrity: sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /@esbuild/win32-ia32@0.17.19: - resolution: {integrity: sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /@esbuild/win32-x64@0.17.19: - resolution: {integrity: sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /@eslint/eslintrc@1.4.1: - resolution: {integrity: sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - ajv: 6.12.6 - debug: 4.4.1 - espree: 9.6.1 - globals: 13.23.0 - ignore: 5.3.2 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - dev: true - - /@floating-ui/core@1.7.5: - resolution: {integrity: sha512-1Ih4WTWyw0+lKyFMcBHGbb5U5FtuHJuujoyyr5zTaWS5EYMeT6Jb2AuDeftsCsEuchO+mM2ij5+q9crhydzLhQ==} - dependencies: - '@floating-ui/utils': 0.2.11 - dev: false - - /@floating-ui/dom@1.7.6: - resolution: {integrity: sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==} - dependencies: - '@floating-ui/core': 1.7.5 - '@floating-ui/utils': 0.2.11 - dev: false - - /@floating-ui/utils@0.2.10: - resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==} - dev: false - - /@floating-ui/utils@0.2.11: - resolution: {integrity: sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg==} - dev: false - - /@floating-ui/vue@1.1.9(vue@3.5.30): - resolution: {integrity: sha512-BfNqNW6KA83Nexspgb9DZuz578R7HT8MZw1CfK9I6Ah4QReNWEJsXWHN+SdmOVLNGmTPDi+fDT535Df5PzMLbQ==} - dependencies: - '@floating-ui/dom': 1.7.6 - '@floating-ui/utils': 0.2.11 - vue-demi: 0.14.10(vue@3.5.30) - transitivePeerDependencies: - - '@vue/composition-api' - - vue - dev: false - - /@headlessui/tailwindcss@0.2.2(tailwindcss@4.1.12): - resolution: {integrity: sha512-xNe42KjdyA4kfUKLLPGzME9zkH7Q3rOZ5huFihWNWOQFxnItxPB3/67yBI8/qBfY8nwBRx5GHn4VprsoluVMGw==} - engines: {node: '>=10'} - peerDependencies: - tailwindcss: ^3.0 || ^4.0 - dependencies: - tailwindcss: 4.1.12 - dev: false - - /@headlessui/vue@1.7.23(vue@3.5.30): - resolution: {integrity: sha512-JzdCNqurrtuu0YW6QaDtR2PIYCKPUWq28csDyMvN4zmGccmE7lz40Is6hc3LA4HFeCI7sekZ/PQMTNmn9I/4Wg==} - engines: {node: '>=10'} - peerDependencies: - vue: ^3.2.0 - dependencies: - '@tanstack/vue-virtual': 3.13.6(vue@3.5.30) - vue: 3.5.30(typescript@5.2.2) - dev: false - - /@humanwhocodes/config-array@0.11.13: - resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==} - engines: {node: '>=10.10.0'} - dependencies: - '@humanwhocodes/object-schema': 2.0.1 - debug: 4.3.4 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - dev: true - - /@humanwhocodes/module-importer@1.0.1: - resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} - engines: {node: '>=12.22'} - dev: true - - /@humanwhocodes/object-schema@2.0.1: - resolution: {integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==} - dev: true - - /@internationalized/date@3.8.0: - resolution: {integrity: sha512-J51AJ0fEL68hE4CwGPa6E0PO6JDaVLd8aln48xFCSy7CZkZc96dGEGmLs2OEEbBxcsVZtfrqkXJwI2/MSG8yKw==} - dependencies: - '@swc/helpers': 0.5.5 - dev: false - - /@internationalized/number@3.6.1: - resolution: {integrity: sha512-UVsb4bCwbL944E0SX50CHFtWEeZ2uB5VozZ5yDXJdq6iPZsZO5p+bjVMZh2GxHf4Bs/7xtDCcPwEa2NU9DaG/g==} - dependencies: - '@swc/helpers': 0.5.5 - dev: false - - /@jridgewell/gen-mapping@0.3.3: - resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} - engines: {node: '>=6.0.0'} - dependencies: - '@jridgewell/set-array': 1.1.2 - '@jridgewell/sourcemap-codec': 1.5.5 - '@jridgewell/trace-mapping': 0.3.20 - - /@jridgewell/gen-mapping@0.3.8: - resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} - engines: {node: '>=6.0.0'} - dependencies: - '@jridgewell/set-array': 1.2.1 - '@jridgewell/sourcemap-codec': 1.5.5 - '@jridgewell/trace-mapping': 0.3.25 - dev: true - - /@jridgewell/resolve-uri@3.1.1: - resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} - engines: {node: '>=6.0.0'} - - /@jridgewell/set-array@1.1.2: - resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} - engines: {node: '>=6.0.0'} - - /@jridgewell/set-array@1.2.1: - resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} - engines: {node: '>=6.0.0'} - dev: true - - /@jridgewell/source-map@0.3.5: - resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} - dependencies: - '@jridgewell/gen-mapping': 0.3.8 - '@jridgewell/trace-mapping': 0.3.25 - dev: true - - /@jridgewell/sourcemap-codec@1.5.0: - resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} - dev: true - - /@jridgewell/sourcemap-codec@1.5.5: - resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} - - /@jridgewell/trace-mapping@0.3.20: - resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==} - dependencies: - '@jridgewell/resolve-uri': 3.1.1 - '@jridgewell/sourcemap-codec': 1.5.5 - - /@jridgewell/trace-mapping@0.3.25: - resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} - dependencies: - '@jridgewell/resolve-uri': 3.1.1 - '@jridgewell/sourcemap-codec': 1.5.5 - dev: true - - /@kubernetes/client-node@0.18.1: - resolution: {integrity: sha512-F3JiK9iZnbh81O/da1tD0h8fQMi/MDttWc/JydyUVnjPEom55wVfnpl4zQ/sWD4uKB8FlxYRPiLwV2ZXB+xPKw==} - dependencies: - '@types/js-yaml': 4.0.9 - '@types/node': 18.15.11 - '@types/request': 2.48.12 - '@types/ws': 8.5.10 - byline: 5.0.0 - isomorphic-ws: 5.0.0(ws@8.14.2) - js-yaml: 4.1.0 - jsonpath-plus: 7.2.0 - request: 2.88.2 - rfc4648: 1.5.3 - stream-buffers: 3.0.2 - tar: 6.2.0 - tmp-promise: 3.0.3 - tslib: 2.6.2 - underscore: 1.13.6 - ws: 8.14.2 - optionalDependencies: - openid-client: 5.6.1 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - - /@labring/sealos-desktop-sdk@0.1.24(@kubernetes/client-node@0.18.1): - resolution: {integrity: sha512-FMU/OFu/D65kVjSm/Y65vh25TigK+mWAktLf5sjia0iOoSFjzKfGJuWmJ37B8tg47JNAVMZ99bm4mHw/EQ2lBw==} - peerDependencies: - '@kubernetes/client-node': ^0.18.1 - dependencies: - '@kubernetes/client-node': 0.18.1 - axios: 1.7.7 - dayjs: 1.11.10 - js-cookie: 3.0.5 - js-yaml: 4.1.0 - uuid: 9.0.1 - transitivePeerDependencies: - - debug - dev: false - - /@labring/sealos-driver-sdk@1.0.0(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-Ykbto+eS+Xn/iwXKQnWVsBBhD50R9UlURmwJ6jhxoMekcXDm7BZ3EVWG66iUUpTVk17wh3k3FYMz/7/JyEdwDg==} - peerDependencies: - react: 18.2.0 - react-dom: 18.2.0 - dependencies: - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - - /@labring/sealos-gtm-sdk@1.1.0(next@13.5.11)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-FN3LnqHnBu9A15KCOISbdEY6ZNJuNN/2L+ey3DpsXyMXej7vgenJ4yS6/OGXIzAI2/aYrJwNAF+jxtITX5RB5Q==} - peerDependencies: - next: '>=13.5.11' - react: 18.2.0 - react-dom: 18.2.0 - peerDependenciesMeta: - next: - optional: true - react: - optional: true - dependencies: - next: 13.5.11(@babel/core@7.23.5)(react-dom@18.2.0)(react@18.2.0)(sass@1.69.5) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - - /@labring/sealos-metrics-sdk@0.2.0(@kubernetes/client-node@0.18.1): - resolution: {integrity: sha512-19h+9trBz2aRJqC6VFfnXFfvkNpOC2hu/IvdU+uasr88ohlwHzb+eY7L9IZrJAqPK7gqWmJsX569pbwC6hBv7w==} - engines: {node: '>=20'} - peerDependencies: - '@kubernetes/client-node': ^0.18.1 || ^0.21.0 - dependencies: - '@kubernetes/client-node': 0.18.1 - axios: 1.7.7 - dayjs: 1.11.10 - transitivePeerDependencies: - - debug - dev: false - - /@labring/sealos-shared-sdk@1.0.3(@chakra-ui/icons@2.1.1)(@chakra-ui/react@2.8.2)(@labring/sealos-desktop-sdk@0.1.24)(@tanstack/react-query@4.36.1)(immer@10.2.0)(js-yaml@4.1.0)(lucide-react@0.511.0)(picocolors@1.1.1)(react-dom@18.2.0)(react@18.2.0)(zod@4.0.14)(zustand@4.4.7): - resolution: {integrity: sha512-TKeRkO0/yWsbefqK4llrRMVtgy01FmnPKUBwsXHtSTaszDHUN3VZtaCUiodMtU3VvOYi0Oz6MhU61Ztw8CSYvA==} - peerDependencies: - '@chakra-ui/icons': ^2 - '@chakra-ui/react': ^2 - '@labring/sealos-desktop-sdk': ^0.1.24 - '@tanstack/react-query': ^4 - immer: ^10 - js-yaml: ^4.1.0 - lucide-react: '>=0.460.0' - picocolors: ^1.1.1 - react: 18.2.0 - react-dom: 18.2.0 - zod: ^3 || ^4 - zustand: ^4 || ^5 - peerDependenciesMeta: - '@chakra-ui/icons': - optional: true - '@chakra-ui/react': - optional: true - dependencies: - '@chakra-ui/icons': 2.1.1(@chakra-ui/system@2.6.2)(react@18.2.0) - '@chakra-ui/react': 2.8.2(@emotion/react@11.11.1)(@emotion/styled@11.11.0)(@types/react@18.2.37)(framer-motion@10.16.5)(react-dom@18.2.0)(react@18.2.0) - '@labring/sealos-desktop-sdk': 0.1.24(@kubernetes/client-node@0.18.1) - '@tanstack/react-query': 4.36.1(react-dom@18.2.0)(react@18.2.0) - immer: 10.2.0 - js-yaml: 4.1.0 - lucide-react: 0.511.0(react@18.2.0) - picocolors: 1.1.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - zod: 4.0.14 - zustand: 4.4.7(@types/react@18.2.37)(immer@10.2.0)(react@18.2.0) - dev: false - - /@lezer/common@1.2.3: - resolution: {integrity: sha512-w7ojc8ejBqr2REPsWxJjrMFsA/ysDCFICn8zEOR9mrqzOu2amhITYuLD8ag6XZf0CFXDrhKqw7+tW8cX66NaDA==} - dev: false - - /@lezer/css@1.1.11: - resolution: {integrity: sha512-FuAnusbLBl1SEAtfN8NdShxYJiESKw9LAFysfea1T96jD3ydBn12oYjaSG1a04BQRIUd93/0D8e5CV1cUMkmQg==} - dependencies: - '@lezer/common': 1.2.3 - '@lezer/highlight': 1.2.1 - '@lezer/lr': 1.4.2 - dev: false - - /@lezer/highlight@1.2.1: - resolution: {integrity: sha512-Z5duk4RN/3zuVO7Jq0pGLJ3qynpxUVsh7IbUbGj88+uV2ApSAn6kWg2au3iJb+0Zi7kKtqffIESgNcRXWZWmSA==} - dependencies: - '@lezer/common': 1.2.3 - dev: false - - /@lezer/html@1.3.10: - resolution: {integrity: sha512-dqpT8nISx/p9Do3AchvYGV3qYc4/rKr3IBZxlHmpIKam56P47RSHkSF5f13Vu9hebS1jM0HmtJIwLbWz1VIY6w==} - dependencies: - '@lezer/common': 1.2.3 - '@lezer/highlight': 1.2.1 - '@lezer/lr': 1.4.2 - dev: false - - /@lezer/javascript@1.5.1: - resolution: {integrity: sha512-ATOImjeVJuvgm3JQ/bpo2Tmv55HSScE2MTPnKRMRIPx2cLhHGyX2VnqpHhtIV1tVzIjZDbcWQm+NCTF40ggZVw==} - dependencies: - '@lezer/common': 1.2.3 - '@lezer/highlight': 1.2.1 - '@lezer/lr': 1.4.2 - dev: false - - /@lezer/json@1.0.3: - resolution: {integrity: sha512-BP9KzdF9Y35PDpv04r0VeSTKDeox5vVr3efE7eBbx3r4s3oNLfunchejZhjArmeieBH+nVOpgIiBJpEAv8ilqQ==} - dependencies: - '@lezer/common': 1.2.3 - '@lezer/highlight': 1.2.1 - '@lezer/lr': 1.4.2 - dev: false - - /@lezer/lr@1.4.2: - resolution: {integrity: sha512-pu0K1jCIdnQ12aWNaAVU5bzi7Bd1w54J3ECgANPmYLtQKP0HBj2cE/5coBD66MT10xbtIuUr7tg0Shbsvk0mDA==} - dependencies: - '@lezer/common': 1.2.3 - dev: false - - /@lezer/xml@1.0.6: - resolution: {integrity: sha512-CdDwirL0OEaStFue/66ZmFSeppuL6Dwjlk8qk153mSQwiSH/Dlri4GNymrNWnUmPl2Um7QfV1FO9KFUyX3Twww==} - dependencies: - '@lezer/common': 1.2.3 - '@lezer/highlight': 1.2.1 - '@lezer/lr': 1.4.2 - dev: false - - /@lezer/yaml@1.0.3: - resolution: {integrity: sha512-GuBLekbw9jDBDhGur82nuwkxKQ+a3W5H0GfaAthDXcAu+XdpS43VlnxA9E9hllkpSP5ellRDKjLLj7Lu9Wr6xA==} - dependencies: - '@lezer/common': 1.2.3 - '@lezer/highlight': 1.2.1 - '@lezer/lr': 1.4.2 - dev: false - - /@marijn/find-cluster-break@1.0.2: - resolution: {integrity: sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==} - dev: false - - /@next/env@13.5.11: - resolution: {integrity: sha512-fbb2C7HChgM7CemdCY+y3N1n8pcTKdqtQLbC7/EQtPdLvlMUT9JX/dBYl8MMZAtYG4uVMyPFHXckb68q/NRwqg==} - dev: false - - /@next/eslint-plugin-next@13.1.6: - resolution: {integrity: sha512-o7cauUYsXjzSJkay8wKjpKJf2uLzlggCsGUkPu3lP09Pv97jYlekTC20KJrjQKmSv5DXV0R/uks2ZXhqjNkqAw==} - dependencies: - glob: 7.1.7 - dev: true - - /@next/font@13.5.11: - resolution: {integrity: sha512-C4fRIb3O0Dh/Wi8hE1lkHDKmR5leUfe4fG+wfuRX8p3PPeduvJYMcU/Wq5eU3XEl2XqMeOuVbLCd2DAH/8Er2Q==} - dev: false - - /@next/swc-darwin-arm64@13.5.9: - resolution: {integrity: sha512-pVyd8/1y1l5atQRvOaLOvfbmRwefxLhqQOzYo/M7FQ5eaRwA1+wuCn7t39VwEgDd7Aw1+AIWwd+MURXUeXhwDw==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [darwin] - requiresBuild: true - dev: false - optional: true - - /@next/swc-darwin-x64@13.5.9: - resolution: {integrity: sha512-DwdeJqP7v8wmoyTWPbPVodTwCybBZa02xjSJ6YQFIFZFZ7dFgrieKW4Eo0GoIcOJq5+JxkQyejmI+8zwDp3pwA==} - engines: {node: '>= 10'} - cpu: [x64] - os: [darwin] - requiresBuild: true - dev: false - optional: true - - /@next/swc-linux-arm64-gnu@13.5.9: - resolution: {integrity: sha512-wdQsKsIsGSNdFojvjW3Ozrh8Q00+GqL3wTaMjDkQxVtRbAqfFBtrLPO0IuWChVUP2UeuQcHpVeUvu0YgOP00+g==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - libc: [glibc] - requiresBuild: true - dev: false - optional: true - - /@next/swc-linux-arm64-musl@13.5.9: - resolution: {integrity: sha512-6VpS+bodQqzOeCwGxoimlRoosiWlSc0C224I7SQWJZoyJuT1ChNCo+45QQH+/GtbR/s7nhaUqmiHdzZC9TXnXA==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - libc: [musl] - requiresBuild: true - dev: false - optional: true - - /@next/swc-linux-x64-gnu@13.5.9: - resolution: {integrity: sha512-XxG3yj61WDd28NA8gFASIR+2viQaYZEFQagEodhI/R49gXWnYhiflTeeEmCn7Vgnxa/OfK81h1gvhUZ66lozpw==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - libc: [glibc] - requiresBuild: true - dev: false - optional: true - - /@next/swc-linux-x64-musl@13.5.9: - resolution: {integrity: sha512-/dnscWqfO3+U8asd+Fc6dwL2l9AZDl7eKtPNKW8mKLh4Y4wOpjJiamhe8Dx+D+Oq0GYVjuW0WwjIxYWVozt2bA==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - libc: [musl] - requiresBuild: true - dev: false - optional: true - - /@next/swc-win32-arm64-msvc@13.5.9: - resolution: {integrity: sha512-T/iPnyurOK5a4HRUcxAlss8uzoEf5h9tkd+W2dSWAfzxv8WLKlUgbfk+DH43JY3Gc2xK5URLuXrxDZ2mGfk/jw==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [win32] - requiresBuild: true - dev: false - optional: true - - /@next/swc-win32-ia32-msvc@13.5.9: - resolution: {integrity: sha512-BLiPKJomaPrTAb7ykjA0LPcuuNMLDVK177Z1xe0nAem33+9FIayU4k/OWrtSn9SAJW/U60+1hoey5z+KCHdRLQ==} - engines: {node: '>= 10'} - cpu: [ia32] - os: [win32] - requiresBuild: true - dev: false - optional: true - - /@next/swc-win32-x64-msvc@13.5.9: - resolution: {integrity: sha512-/72/dZfjXXNY/u+n8gqZDjI6rxKMpYsgBBYNZKWOQw0BpBF7WCnPflRy3ZtvQ2+IYI3ZH2bPyj7K+6a6wNk90Q==} - engines: {node: '>= 10'} - cpu: [x64] - os: [win32] - requiresBuild: true - dev: false - optional: true - - /@nodelib/fs.scandir@2.1.5: - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} - dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 - dev: true - - /@nodelib/fs.stat@2.0.5: - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} - dev: true - - /@nodelib/fs.walk@1.2.8: - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} - dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.15.0 - dev: true - - /@opentelemetry/api@1.9.0: - resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==} - engines: {node: '>=8.0.0'} - dev: false - - /@phosphor-icons/core@2.1.1: - resolution: {integrity: sha512-v4ARvrip4qBCImOE5rmPUylOEK4iiED9ZyKjcvzuezqMaiRASCHKcRIuvvxL/twvLpkfnEODCOJp5dM4eZilxQ==} - dev: false - - /@polka/url@1.0.0-next.23: - resolution: {integrity: sha512-C16M+IYz0rgRhWZdCmK+h58JMv8vijAA61gmz2rspCSwKwzBebpdcsiUmwrtJRdphuY30i6BSLEOP8ppbNLyLg==} - dev: true - - /@popperjs/core@2.11.8: - resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} - dev: false - - /@replit/codemirror-css-color-picker@6.3.0(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.6): - resolution: {integrity: sha512-19biDANghUm7Fz7L1SNMIhK48tagaWuCOHj4oPPxc7hxPGkTVY2lU/jVZ8tsbTKQPVG7BO2CBDzs7CBwb20t4A==} - peerDependencies: - '@codemirror/language': ^6.0.0 - '@codemirror/state': ^6.0.0 - '@codemirror/view': ^6.0.0 - dependencies: - '@codemirror/language': 6.11.0 - '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.6 - dev: false - - /@rollup/plugin-commonjs@25.0.7(rollup@2.79.1): - resolution: {integrity: sha512-nEvcR+LRjEjsaSsc4x3XZfCCvZIaSMenZu/OiwOKGN2UhQpAYI7ru7czFvyWbErlpoGjnSX3D5Ch5FcMA3kRWQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.68.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - dependencies: - '@rollup/pluginutils': 5.1.0(rollup@2.79.1) - commondir: 1.0.1 - estree-walker: 2.0.2 - glob: 8.1.0 - is-reference: 1.2.1 - magic-string: 0.30.17 - rollup: 2.79.1 - dev: true - - /@rollup/plugin-node-resolve@15.2.3(rollup@2.79.1): - resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.78.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - dependencies: - '@rollup/pluginutils': 5.1.0(rollup@2.79.1) - '@types/resolve': 1.20.2 - deepmerge: 4.3.1 - is-builtin-module: 3.2.1 - is-module: 1.0.0 - resolve: 1.22.8 - rollup: 2.79.1 - dev: true - - /@rollup/plugin-typescript@11.1.5(rollup@2.79.1)(tslib@2.6.2)(typescript@5.2.2): - resolution: {integrity: sha512-rnMHrGBB0IUEv69Q8/JGRD/n4/n6b3nfpufUu26axhUcboUzv/twfZU8fIBbTOphRAe0v8EyxzeDpKXqGHfyDA==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.14.0||^3.0.0||^4.0.0 - tslib: '*' - typescript: '>=3.7.0' - peerDependenciesMeta: - rollup: - optional: true - tslib: - optional: true - dependencies: - '@rollup/pluginutils': 5.1.0(rollup@2.79.1) - resolve: 1.22.8 - rollup: 2.79.1 - tslib: 2.6.2 - typescript: 5.2.2 - dev: true - - /@rollup/pluginutils@4.2.1: - resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} - engines: {node: '>= 8.0.0'} - dependencies: - estree-walker: 2.0.2 - picomatch: 2.3.1 - dev: true - - /@rollup/pluginutils@5.1.0(rollup@2.79.1): - resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - dependencies: - '@types/estree': 1.0.5 - estree-walker: 2.0.2 - picomatch: 2.3.1 - rollup: 2.79.1 - dev: true - - /@rtsao/scc@1.1.0: - resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} - dev: true - - /@rushstack/eslint-patch@1.6.0: - resolution: {integrity: sha512-2/U3GXA6YiPYQDLGwtGlnNgKYBSwCFIHf8Y9LUY5VATHdtbLlU0Y1R3QoBnT0aB4qv/BEiVVsj7LJXoQCgJ2vA==} - dev: true - - /@scalar/agent-chat@0.7.3(axios@1.6.2)(nprogress@0.2.0)(tailwindcss@4.1.12)(typescript@5.2.2): - resolution: {integrity: sha512-r8lF7vHm0Oee8y3MgYTEOKfJF8WwdiApLICuzcqKLt0YayEURiSMB36J1SPtzISO7t66WbFi3xru8MdOa3FmUw==} - engines: {node: '>=20'} - dependencies: - '@ai-sdk/vue': 3.0.33(vue@3.5.30)(zod@4.3.6) - '@scalar/api-client': 2.31.3(axios@1.6.2)(nprogress@0.2.0)(tailwindcss@4.1.12)(typescript@5.2.2) - '@scalar/components': 0.19.15(typescript@5.2.2) - '@scalar/helpers': 0.2.18 - '@scalar/icons': 0.5.3(typescript@5.2.2) - '@scalar/json-magic': 0.11.7 - '@scalar/openapi-types': 0.5.4 - '@scalar/themes': 0.14.3 - '@scalar/types': 0.6.10 - '@scalar/use-toasts': 0.9.1(typescript@5.2.2) - '@scalar/workspace-store': 0.35.3(typescript@5.2.2) - '@vueuse/core': 13.9.0(vue@3.5.30) - ai: 6.0.33(zod@4.3.6) - neverpanic: 0.0.5(typescript@5.2.2) - truncate-json: 3.0.1 - vue: 3.5.30(typescript@5.2.2) - whatwg-mimetype: 4.0.0 - zod: 4.3.6 - transitivePeerDependencies: - - '@vue/composition-api' - - async-validator - - axios - - change-case - - drauu - - idb-keyval - - jwt-decode - - nprogress - - qrcode - - sortablejs - - supports-color - - tailwindcss - - typescript - - universal-cookie - dev: false - - /@scalar/analytics-client@1.0.1: - resolution: {integrity: sha512-ai4DJuxsNLUEgJIlYDE3n8/oF47M31Rgjz3LxbefzejxE8LiidUud/fcEzMYtdxqJYi3ketzhSbTWK0o6gg4mQ==} - engines: {node: '>=20'} - dependencies: - zod: 4.3.6 - dev: false - - /@scalar/api-client@2.31.3(axios@1.6.2)(nprogress@0.2.0)(tailwindcss@4.1.12)(typescript@5.2.2): - resolution: {integrity: sha512-Qyy7C6Vt+9GHA4hOSdn2E0DkXB/6EjyCuqW9Vn063Wg8PIlkNAyOkszZtDtDUc0KI+c4J1iwCUVelrZr5lrnwQ==} - engines: {node: '>=20'} - dependencies: - '@headlessui/tailwindcss': 0.2.2(tailwindcss@4.1.12) - '@headlessui/vue': 1.7.23(vue@3.5.30) - '@scalar/analytics-client': 1.0.1 - '@scalar/components': 0.19.15(typescript@5.2.2) - '@scalar/draggable': 0.3.0(typescript@5.2.2) - '@scalar/helpers': 0.2.18 - '@scalar/icons': 0.5.3(typescript@5.2.2) - '@scalar/import': 0.4.55 - '@scalar/json-magic': 0.11.7 - '@scalar/oas-utils': 0.8.3(typescript@5.2.2) - '@scalar/object-utils': 1.2.32 - '@scalar/openapi-parser': 0.24.17 - '@scalar/openapi-types': 0.5.4 - '@scalar/postman-to-openapi': 0.4.10 - '@scalar/sidebar': 0.7.46(typescript@5.2.2) - '@scalar/snippetz': 0.6.19 - '@scalar/themes': 0.14.3 - '@scalar/typebox': 0.1.3 - '@scalar/types': 0.6.10 - '@scalar/use-codemirror': 0.13.50(typescript@5.2.2) - '@scalar/use-hooks': 0.3.7(typescript@5.2.2) - '@scalar/use-toasts': 0.9.1(typescript@5.2.2) - '@scalar/workspace-store': 0.35.3(typescript@5.2.2) - '@types/har-format': 1.2.16 - '@vueuse/core': 13.9.0(vue@3.5.30) - '@vueuse/integrations': 13.9.0(axios@1.6.2)(focus-trap@7.6.4)(fuse.js@7.1.0)(nprogress@0.2.0)(vue@3.5.30) - focus-trap: 7.6.4 - fuse.js: 7.1.0 - js-base64: 3.7.8 - microdiff: 1.5.0 - nanoid: 5.1.7 - pretty-bytes: 7.1.0 - pretty-ms: 9.3.0 - shell-quote: 1.8.2 - type-fest: 5.4.4 - vue: 3.5.30(typescript@5.2.2) - vue-router: 4.6.2(vue@3.5.30) - whatwg-mimetype: 4.0.0 - yaml: 2.8.2 - zod: 4.3.6 - transitivePeerDependencies: - - '@vue/composition-api' - - async-validator - - axios - - change-case - - drauu - - idb-keyval - - jwt-decode - - nprogress - - qrcode - - sortablejs - - supports-color - - tailwindcss - - typescript - - universal-cookie - dev: false - - /@scalar/api-reference-react@0.8.70(axios@1.6.2)(nprogress@0.2.0)(react@18.2.0)(tailwindcss@4.1.12)(typescript@5.2.2): - resolution: {integrity: sha512-J65Qfb6/rSPGQ5JlVRPXR5JKdb4SE3tHTne4SoUaIbXooFIQnHxMO7TIEzEZl8PZecmZ7WZbQvDwuXydZccgKA==} - engines: {node: '>=20'} - peerDependencies: - react: 18.2.0 - dependencies: - '@scalar/api-reference': 1.46.4(axios@1.6.2)(nprogress@0.2.0)(tailwindcss@4.1.12)(typescript@5.2.2) - '@scalar/types': 0.6.10 - react: 18.2.0 - transitivePeerDependencies: - - '@vue/composition-api' - - async-validator - - axios - - change-case - - drauu - - idb-keyval - - jwt-decode - - nprogress - - qrcode - - sortablejs - - supports-color - - tailwindcss - - typescript - - universal-cookie - dev: false - - /@scalar/api-reference@1.46.4(axios@1.6.2)(nprogress@0.2.0)(tailwindcss@4.1.12)(typescript@5.2.2): - resolution: {integrity: sha512-EpCcOG15Ry8DKNs/f5AdRA97s1B5kGPekzANpnK0j1IpyU4Sb/mfdyfB00WC+vUo7hfc4BFRSkkiPa5SSM7fng==} - engines: {node: '>=20'} - dependencies: - '@headlessui/vue': 1.7.23(vue@3.5.30) - '@scalar/agent-chat': 0.7.3(axios@1.6.2)(nprogress@0.2.0)(tailwindcss@4.1.12)(typescript@5.2.2) - '@scalar/api-client': 2.31.3(axios@1.6.2)(nprogress@0.2.0)(tailwindcss@4.1.12)(typescript@5.2.2) - '@scalar/code-highlight': 0.2.4 - '@scalar/components': 0.19.15(typescript@5.2.2) - '@scalar/helpers': 0.2.18 - '@scalar/icons': 0.5.3(typescript@5.2.2) - '@scalar/oas-utils': 0.8.3(typescript@5.2.2) - '@scalar/openapi-parser': 0.24.17 - '@scalar/openapi-types': 0.5.4 - '@scalar/sidebar': 0.7.46(typescript@5.2.2) - '@scalar/snippetz': 0.6.19 - '@scalar/themes': 0.14.3 - '@scalar/types': 0.6.10 - '@scalar/use-hooks': 0.3.7(typescript@5.2.2) - '@scalar/use-toasts': 0.9.1(typescript@5.2.2) - '@scalar/workspace-store': 0.35.3(typescript@5.2.2) - '@unhead/vue': 2.1.12(vue@3.5.30) - '@vueuse/core': 13.9.0(vue@3.5.30) - fuse.js: 7.1.0 - github-slugger: 2.0.0 - microdiff: 1.5.0 - nanoid: 5.1.7 - vue: 3.5.30(typescript@5.2.2) - transitivePeerDependencies: - - '@vue/composition-api' - - async-validator - - axios - - change-case - - drauu - - idb-keyval - - jwt-decode - - nprogress - - qrcode - - sortablejs - - supports-color - - tailwindcss - - typescript - - universal-cookie - dev: false - - /@scalar/code-highlight@0.2.4: - resolution: {integrity: sha512-sF9kpxyeh+jwh0ZpXias9UrPBbZf0zgY8Y2nlQqYAwVdGbFdO/bIzjKTi9vWCkKS78NsBfz7rLnJsQ+UP/11rA==} - engines: {node: '>=20'} - dependencies: - hast-util-to-text: 4.0.2 - highlight.js: 11.11.1 - highlightjs-curl: 1.3.0 - lowlight: 3.3.0 - rehype-external-links: 3.0.0 - rehype-format: 5.0.1 - rehype-parse: 9.0.1 - rehype-raw: 7.0.0 - rehype-sanitize: 6.0.0 - rehype-stringify: 10.0.1 - remark-gfm: 4.0.1 - remark-parse: 11.0.0 - remark-rehype: 11.1.2 - remark-stringify: 11.0.0 - unified: 11.0.4 - unist-util-visit: 5.0.0 - transitivePeerDependencies: - - supports-color - dev: false - - /@scalar/components@0.19.15(typescript@5.2.2): - resolution: {integrity: sha512-oYK5zJarMJ5HvNGJsr6/Y7lz9TPy6Q+g3bQ1PxbaGURcKItXWlR+Yki1kZQ1A6/3b1XpBoMkMUHYp1bBOPW4KQ==} - engines: {node: '>=20'} - dependencies: - '@floating-ui/utils': 0.2.10 - '@floating-ui/vue': 1.1.9(vue@3.5.30) - '@headlessui/vue': 1.7.23(vue@3.5.30) - '@scalar/code-highlight': 0.2.4 - '@scalar/helpers': 0.2.18 - '@scalar/icons': 0.5.3(typescript@5.2.2) - '@scalar/oas-utils': 0.8.3(typescript@5.2.2) - '@scalar/themes': 0.14.3 - '@scalar/use-hooks': 0.3.7(typescript@5.2.2) - '@vueuse/core': 13.9.0(vue@3.5.30) - cva: 1.0.0-beta.4(typescript@5.2.2) - nanoid: 5.1.7 - pretty-bytes: 7.1.0 - radix-vue: 1.9.17(vue@3.5.30) - vue: 3.5.30(typescript@5.2.2) - vue-component-type-helpers: 3.2.6 - transitivePeerDependencies: - - '@vue/composition-api' - - supports-color - - typescript - dev: false - - /@scalar/draggable@0.3.0(typescript@5.2.2): - resolution: {integrity: sha512-T/79XY5HGNo9Lte7wlnrH393zjiulom4HuwW4u8RtaafWxIdtXykD2+TgiO0KTreyzCrWyWrESqiqKKJMe2nKg==} - engines: {node: '>=20'} - dependencies: - vue: 3.5.30(typescript@5.2.2) - transitivePeerDependencies: - - typescript - dev: false - - /@scalar/helpers@0.2.18: - resolution: {integrity: sha512-w1d4tpNEVZ293oB2BAgLrS0kVPUtG3eByNmOCJA5eK9vcT4D3cmsGtWjUaaqit0BQCsBFHK51rasGvSWnApYTw==} - engines: {node: '>=20'} - dev: false - - /@scalar/icons@0.5.3(typescript@5.2.2): - resolution: {integrity: sha512-W9W4dWM9UL75+CLPgQEhds+cJVBeLaKrcUnlguV7CGzcBkdV+u6bZVeqDgiUn5o9j1zZChkoXULSfU/a605csg==} - engines: {node: '>=20'} - dependencies: - '@phosphor-icons/core': 2.1.1 - '@types/node': 22.19.15 - chalk: 5.4.1 - vue: 3.5.30(typescript@5.2.2) - transitivePeerDependencies: - - typescript - dev: false - - /@scalar/import@0.4.55: - resolution: {integrity: sha512-XCn7OwoFNWkEpIJHYMuoUvtR5gLtaKf8AXrcHVVNmQG5TcAd+PfzSYCYwNcRtPEmaBKIyt5Vc5zsgPS8wTFyBw==} - engines: {node: '>=20'} - dependencies: - '@scalar/helpers': 0.2.18 - yaml: 2.8.2 - dev: false - - /@scalar/json-magic@0.11.7: - resolution: {integrity: sha512-GVz9E0vXu+ecypkdn0biK1gbQVkK4QTTX1Hq3eMgxlLQC91wwiqWfCqwfhuX0LRu+Z5OmYhLhufDJEEh56rVgA==} - engines: {node: '>=20'} - dependencies: - '@scalar/helpers': 0.2.18 - pathe: 2.0.3 - yaml: 2.8.2 - dev: false - - /@scalar/oas-utils@0.8.3(typescript@5.2.2): - resolution: {integrity: sha512-FQLZzY+c1tOkXsYtht3MyFJMpLqymhnUvrd7uk0FI659JAu5bDtcasJ1ZM2MbqALS0n7ta1u417ADEagTugPWQ==} - engines: {node: '>=20'} - dependencies: - '@scalar/helpers': 0.2.18 - '@scalar/json-magic': 0.11.7 - '@scalar/object-utils': 1.2.32 - '@scalar/openapi-types': 0.5.4 - '@scalar/themes': 0.14.3 - '@scalar/types': 0.6.10 - '@scalar/workspace-store': 0.35.3(typescript@5.2.2) - flatted: 3.3.3 - github-slugger: 2.0.0 - type-fest: 5.4.4 - vue: 3.5.30(typescript@5.2.2) - yaml: 2.8.2 - zod: 4.3.6 - transitivePeerDependencies: - - supports-color - - typescript - dev: false - - /@scalar/object-utils@1.2.32: - resolution: {integrity: sha512-t3qTaI2Jd4xhXS42KTS9VqKJ4YENxLidemy+E9Y1voJmVScG+A9qHn4LSkXUrS2sYhOGuwERjxRZr2P7zgCMqA==} - engines: {node: '>=20'} - dependencies: - '@scalar/helpers': 0.2.18 - flatted: 3.3.3 - just-clone: 6.2.0 - ts-deepmerge: 7.0.3 - dev: false - - /@scalar/openapi-parser@0.24.17: - resolution: {integrity: sha512-aM9UVrzlMreC3X/sZbyj+7XDZmat3ecGC3RpU8dqEO/HIH+CEX0xMLuP+41DhePCYg5+9TtDomSfWuMq4x1Z1A==} - engines: {node: '>=20'} - dependencies: - '@scalar/helpers': 0.2.18 - '@scalar/json-magic': 0.11.7 - '@scalar/openapi-types': 0.5.4 - '@scalar/openapi-upgrader': 0.1.11 - ajv: 8.17.1 - ajv-draft-04: 1.0.0(ajv@8.17.1) - ajv-formats: 3.0.1(ajv@8.17.1) - jsonpointer: 5.0.1 - leven: 4.0.0 - yaml: 2.8.2 - dev: false - - /@scalar/openapi-types@0.5.4: - resolution: {integrity: sha512-2pEbhprh8lLGDfUI6mNm9EV104pjb3+aJsXrFaqfgOSre7r6NlgM5HcSbsLjzDAnTikjJhJ3IMal1Rz8WVwiOw==} - engines: {node: '>=20'} - dependencies: - zod: 4.3.6 - dev: false - - /@scalar/openapi-upgrader@0.1.11: - resolution: {integrity: sha512-ngJcHGoCHmpWgYtNy08vmzFfLdQEkMpvaCQqNPPMNKq0QEXOv89e/rn+TZJZgPnRlY7fDIoIhn9lNgr+azBW+w==} - engines: {node: '>=20'} - dependencies: - '@scalar/openapi-types': 0.5.4 - dev: false - - /@scalar/postman-to-openapi@0.4.10: - resolution: {integrity: sha512-s7TECz1DLSXggRYEEVjoBXLxY3nKCU9n4zA7FxRywxsG485qmr2gMHqU5plFJDC59RUxcIOo+V+LbOpKo1EQUQ==} - engines: {node: '>=20'} - dependencies: - '@scalar/helpers': 0.2.18 - '@scalar/openapi-types': 0.5.4 - dev: false - - /@scalar/sidebar@0.7.46(typescript@5.2.2): - resolution: {integrity: sha512-80+28tW2qM0mH1v/dAZu1DMmv8nj/Rz88PDW4fRY8yMP6xoNi8IpKhnFJ4dnGOBMqu7/2VsOAIGADLVA6ZC4jw==} - engines: {node: '>=20'} - dependencies: - '@scalar/components': 0.19.15(typescript@5.2.2) - '@scalar/helpers': 0.2.18 - '@scalar/icons': 0.5.3(typescript@5.2.2) - '@scalar/themes': 0.14.3 - '@scalar/use-hooks': 0.3.7(typescript@5.2.2) - '@scalar/workspace-store': 0.35.3(typescript@5.2.2) - vue: 3.5.30(typescript@5.2.2) - transitivePeerDependencies: - - '@vue/composition-api' - - supports-color - - typescript - dev: false - - /@scalar/snippetz@0.6.19: - resolution: {integrity: sha512-eWZiCFrv2ExTgYBytSOmXbnY5zVSXRV0tGjFGtDL6ovv9TZIjOrIi0CVg6NLgcs9I1XHAYpE0JlWKQnQ+dGQYw==} - engines: {node: '>=20'} - dependencies: - '@scalar/types': 0.6.10 - js-base64: 3.7.8 - stringify-object: 6.0.0 - dev: false - - /@scalar/themes@0.14.3: - resolution: {integrity: sha512-QZpuopwlXSX2e4sxYSSQEm3CzanPzlNIhUONVaZQOo0wUSfyaC1V4QTGMigSPzdo505ouZNyh80bR0Glmn4fag==} - engines: {node: '>=20'} - dependencies: - nanoid: 5.1.7 - dev: false - - /@scalar/typebox@0.1.3: - resolution: {integrity: sha512-lU055AUccECZMIfGA0z/C1StYmboAYIPJLDFBzOO81yXBi35Pxdq+I4fWX6iUZ8qcoHneiLGk9jAUM1rA93iEg==} - dev: false - - /@scalar/types@0.6.10: - resolution: {integrity: sha512-fZkelRwcEeAhsn4c0wjYXWrzSzLaEyfxTn/eazXJ4XfCIsgJTQyK0FD8mnOBZJ2vEIbtT2E1mBKnCbDxrJIlxA==} - engines: {node: '>=20'} - dependencies: - '@scalar/helpers': 0.2.18 - nanoid: 5.1.7 - type-fest: 5.4.4 - zod: 4.3.6 - dev: false - - /@scalar/use-codemirror@0.13.50(typescript@5.2.2): - resolution: {integrity: sha512-KaX8bixOz4sMy5a9XzjH03ffo6n905ol850bT8YRqBuPaTXoxq3M/Z0MipxvCRL+SQ/U07QiwJQnCO3jnXd+xQ==} - engines: {node: '>=20'} - dependencies: - '@codemirror/autocomplete': 6.18.6 - '@codemirror/commands': 6.8.1 - '@codemirror/lang-css': 6.3.1 - '@codemirror/lang-html': 6.4.9 - '@codemirror/lang-json': 6.0.1 - '@codemirror/lang-xml': 6.1.0 - '@codemirror/lang-yaml': 6.1.2 - '@codemirror/language': 6.11.0 - '@codemirror/lint': 6.8.5 - '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.6 - '@lezer/common': 1.2.3 - '@lezer/highlight': 1.2.1 - '@replit/codemirror-css-color-picker': 6.3.0(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.6) - '@scalar/components': 0.19.15(typescript@5.2.2) - vue: 3.5.30(typescript@5.2.2) - transitivePeerDependencies: - - '@vue/composition-api' - - supports-color - - typescript - dev: false - - /@scalar/use-hooks@0.3.7(typescript@5.2.2): - resolution: {integrity: sha512-fhFRYKtGyCOPaLwDRHGaw5XZ3LY+ptCpcPON51r1sGXCl3O1joB2rBTkcXuh2E04uMB5vsko/71hxhWJZxSnGg==} - engines: {node: '>=20'} - dependencies: - '@scalar/use-toasts': 0.9.1(typescript@5.2.2) - '@vueuse/core': 13.9.0(vue@3.5.30) - cva: 1.0.0-beta.2(typescript@5.2.2) - tailwind-merge: 3.4.0 - vue: 3.5.30(typescript@5.2.2) - zod: 4.3.6 - transitivePeerDependencies: - - typescript - dev: false - - /@scalar/use-toasts@0.9.1(typescript@5.2.2): - resolution: {integrity: sha512-t8QoQO4ZWekiSdJ2O7C+PbXfv7x2fmhv3C7t/iITdNpOyLv4jAhlELGpxQHkWsU0ZwRrLU8e+rV0jJcKWE6vYA==} - engines: {node: '>=20'} - dependencies: - vue: 3.5.30(typescript@5.2.2) - vue-sonner: 1.3.2 - transitivePeerDependencies: - - typescript - dev: false - - /@scalar/workspace-store@0.35.3(typescript@5.2.2): - resolution: {integrity: sha512-q/ZKiNQ+PSKiNO/2EGFJn1/+Hp75IN+E2KWyx9etS0YLLFNiW3IaKXB3sCX8hMZ8z7Tf+EL718ejrs9+Rvc92A==} - engines: {node: '>=18'} - dependencies: - '@scalar/code-highlight': 0.2.4 - '@scalar/helpers': 0.2.18 - '@scalar/json-magic': 0.11.7 - '@scalar/object-utils': 1.2.32 - '@scalar/openapi-upgrader': 0.1.11 - '@scalar/snippetz': 0.6.19 - '@scalar/typebox': 0.1.3 - '@scalar/types': 0.6.10 - github-slugger: 2.0.0 - type-fest: 5.4.4 - vue: 3.5.30(typescript@5.2.2) - yaml: 2.8.2 - transitivePeerDependencies: - - supports-color - - typescript - dev: false - - /@standard-schema/spec@1.1.0: - resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} - dev: false - - /@svgr/babel-plugin-add-jsx-attribute@6.5.1(@babel/core@7.23.5): - resolution: {integrity: sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - dev: true - - /@svgr/babel-plugin-remove-jsx-attribute@8.0.0(@babel/core@7.23.5): - resolution: {integrity: sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==} - engines: {node: '>=14'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - dev: true - - /@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0(@babel/core@7.23.5): - resolution: {integrity: sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==} - engines: {node: '>=14'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - dev: true - - /@svgr/babel-plugin-replace-jsx-attribute-value@6.5.1(@babel/core@7.23.5): - resolution: {integrity: sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - dev: true - - /@svgr/babel-plugin-svg-dynamic-title@6.5.1(@babel/core@7.23.5): - resolution: {integrity: sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - dev: true - - /@svgr/babel-plugin-svg-em-dimensions@6.5.1(@babel/core@7.23.5): - resolution: {integrity: sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - dev: true - - /@svgr/babel-plugin-transform-react-native-svg@6.5.1(@babel/core@7.23.5): - resolution: {integrity: sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - dev: true - - /@svgr/babel-plugin-transform-svg-component@6.5.1(@babel/core@7.23.5): - resolution: {integrity: sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==} - engines: {node: '>=12'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - dev: true - - /@svgr/babel-preset@6.5.1(@babel/core@7.23.5): - resolution: {integrity: sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.5 - '@svgr/babel-plugin-add-jsx-attribute': 6.5.1(@babel/core@7.23.5) - '@svgr/babel-plugin-remove-jsx-attribute': 8.0.0(@babel/core@7.23.5) - '@svgr/babel-plugin-remove-jsx-empty-expression': 8.0.0(@babel/core@7.23.5) - '@svgr/babel-plugin-replace-jsx-attribute-value': 6.5.1(@babel/core@7.23.5) - '@svgr/babel-plugin-svg-dynamic-title': 6.5.1(@babel/core@7.23.5) - '@svgr/babel-plugin-svg-em-dimensions': 6.5.1(@babel/core@7.23.5) - '@svgr/babel-plugin-transform-react-native-svg': 6.5.1(@babel/core@7.23.5) - '@svgr/babel-plugin-transform-svg-component': 6.5.1(@babel/core@7.23.5) - dev: true - - /@svgr/core@6.5.1: - resolution: {integrity: sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==} - engines: {node: '>=10'} - dependencies: - '@babel/core': 7.23.5 - '@svgr/babel-preset': 6.5.1(@babel/core@7.23.5) - '@svgr/plugin-jsx': 6.5.1(@svgr/core@6.5.1) - camelcase: 6.3.0 - cosmiconfig: 7.1.0 - transitivePeerDependencies: - - supports-color - dev: true - - /@svgr/hast-util-to-babel-ast@6.5.1: - resolution: {integrity: sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==} - engines: {node: '>=10'} - dependencies: - '@babel/types': 7.23.5 - entities: 4.5.0 - dev: true - - /@svgr/plugin-jsx@6.5.1(@svgr/core@6.5.1): - resolution: {integrity: sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==} - engines: {node: '>=10'} - peerDependencies: - '@svgr/core': ^6.0.0 - dependencies: - '@babel/core': 7.23.5 - '@svgr/babel-preset': 6.5.1(@babel/core@7.23.5) - '@svgr/core': 6.5.1 - '@svgr/hast-util-to-babel-ast': 6.5.1 - svg-parser: 2.0.4 - transitivePeerDependencies: - - supports-color - dev: true - - /@svgr/plugin-svgo@6.5.1(@svgr/core@6.5.1): - resolution: {integrity: sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==} - engines: {node: '>=10'} - peerDependencies: - '@svgr/core': '*' - dependencies: - '@svgr/core': 6.5.1 - cosmiconfig: 7.1.0 - deepmerge: 4.3.1 - svgo: 2.8.0 - dev: true - - /@svgr/webpack@6.5.1: - resolution: {integrity: sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==} - engines: {node: '>=10'} - dependencies: - '@babel/core': 7.23.5 - '@babel/plugin-transform-react-constant-elements': 7.23.3(@babel/core@7.23.5) - '@babel/preset-env': 7.23.3(@babel/core@7.23.5) - '@babel/preset-react': 7.23.3(@babel/core@7.23.5) - '@babel/preset-typescript': 7.23.3(@babel/core@7.23.5) - '@svgr/core': 6.5.1 - '@svgr/plugin-jsx': 6.5.1(@svgr/core@6.5.1) - '@svgr/plugin-svgo': 6.5.1(@svgr/core@6.5.1) - transitivePeerDependencies: - - supports-color - dev: true - - /@swc/counter@0.1.3: - resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} - dev: false - - /@swc/helpers@0.5.2: - resolution: {integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==} - dependencies: - tslib: 2.6.2 - dev: false - - /@swc/helpers@0.5.5: - resolution: {integrity: sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==} - dependencies: - '@swc/counter': 0.1.3 - tslib: 2.6.2 - dev: false - - /@tanstack/query-core@4.36.1: - resolution: {integrity: sha512-DJSilV5+ytBP1FbFcEJovv4rnnm/CokuVvrBEtW/Va9DvuJ3HksbXUJEpI0aV1KtuL4ZoO9AVE6PyNLzF7tLeA==} - dev: false - - /@tanstack/react-query@4.36.1(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-y7ySVHFyyQblPl3J3eQBWpXZkliroki3ARnBKsdJchlgt7yJLRDUcf4B8soufgiYt3pEQIkBWBx1N9/ZPIeUWw==} - peerDependencies: - react: 18.2.0 - react-dom: 18.2.0 - react-native: '*' - peerDependenciesMeta: - react-dom: - optional: true - react-native: - optional: true - dependencies: - '@tanstack/query-core': 4.36.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - use-sync-external-store: 1.2.0(react@18.2.0) - dev: false - - /@tanstack/react-table@8.10.7(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-bXhjA7xsTcsW8JPTTYlUg/FuBpn8MNjiEPhkNhIGCUR6iRQM2+WEco4OBpvDeVcR9SE+bmWLzdfiY7bCbCSVuA==} - engines: {node: '>=12'} - peerDependencies: - react: 18.2.0 - react-dom: 18.2.0 - dependencies: - '@tanstack/table-core': 8.10.7 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - - /@tanstack/react-virtual@3.10.8(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-VbzbVGSsZlQktyLrP5nxE+vE1ZR+U0NFAWPbJLoG2+DKPwd2D7dVICTVIIaYlJqX1ZCEnYDbaOpmMwbsyhBoIA==} - peerDependencies: - react: 18.2.0 - react-dom: 18.2.0 - dependencies: - '@tanstack/virtual-core': 3.10.8 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - - /@tanstack/table-core@8.10.7: - resolution: {integrity: sha512-KQk5OMg5OH6rmbHZxuNROvdI+hKDIUxANaHlV+dPlNN7ED3qYQ/WkpY2qlXww1SIdeMlkIhpN/2L00rof0fXFw==} - engines: {node: '>=12'} - dev: false - - /@tanstack/virtual-core@3.10.8: - resolution: {integrity: sha512-PBu00mtt95jbKFi6Llk9aik8bnR3tR/oQP1o3TSi+iG//+Q2RTIzCEgKkHG8BB86kxMNW6O8wku+Lmi+QFR6jA==} - dev: false - - /@tanstack/virtual-core@3.13.6: - resolution: {integrity: sha512-cnQUeWnhNP8tJ4WsGcYiX24Gjkc9ALstLbHcBj1t3E7EimN6n6kHH+DPV4PpDnuw00NApQp+ViojMj1GRdwYQg==} - dev: false - - /@tanstack/vue-virtual@3.13.6(vue@3.5.30): - resolution: {integrity: sha512-GYdZ3SJBQPzgxhuCE2fvpiH46qzHiVx5XzBSdtESgiqh4poj8UgckjGWYEhxaBbcVt1oLzh1m3Ql4TyH32TOzQ==} - peerDependencies: - vue: ^2.7.0 || ^3.0.0 - dependencies: - '@tanstack/virtual-core': 3.13.6 - vue: 3.5.30(typescript@5.2.2) - dev: false - - /@trysound/sax@0.2.0: - resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} - engines: {node: '>=10.13.0'} - dev: true - - /@types/body-parser@1.19.5: - resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} - dependencies: - '@types/connect': 3.4.38 - '@types/node': 20.17.32 - dev: true - - /@types/caseless@0.12.5: - resolution: {integrity: sha512-hWtVTC2q7hc7xZ/RLbxapMvDMgUnDvKvMOpKal4DrMyfGBUfB1oKaZlIRr6mJL+If3bAP6sV/QneGzF6tJjZDg==} - dev: false - - /@types/connect@3.4.38: - resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} - dependencies: - '@types/node': 20.17.32 - dev: true - - /@types/debug@4.1.12: - resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} - dependencies: - '@types/ms': 0.7.34 - dev: false - - /@types/estree@1.0.5: - resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} - dev: true - - /@types/estree@1.0.8: - resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} - dev: true - - /@types/express-serve-static-core@4.17.41: - resolution: {integrity: sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==} - dependencies: - '@types/node': 20.17.32 - '@types/qs': 6.9.10 - '@types/range-parser': 1.2.7 - '@types/send': 0.17.4 - dev: true - - /@types/express@4.17.21: - resolution: {integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==} - dependencies: - '@types/body-parser': 1.19.5 - '@types/express-serve-static-core': 4.17.41 - '@types/qs': 6.9.10 - '@types/serve-static': 1.15.5 - dev: true - - /@types/har-format@1.2.16: - resolution: {integrity: sha512-fluxdy7ryD3MV6h8pTfTYpy/xQzCFC7m89nOH9y94cNqJ1mDIDPut7MnRHI3F6qRmh/cT2fUjG1MLdCNb4hE9A==} - dev: false - - /@types/hast@2.3.8: - resolution: {integrity: sha512-aMIqAlFd2wTIDZuvLbhUT+TGvMxrNC8ECUIVtH6xxy0sQLs3iu6NO8Kp/VT5je7i5ufnebXzdV1dNDMnvaH6IQ==} - dependencies: - '@types/unist': 2.0.10 - dev: false - - /@types/hast@3.0.4: - resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} - dependencies: - '@types/unist': 3.0.2 - dev: false - - /@types/hoist-non-react-statics@3.3.5: - resolution: {integrity: sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==} - dependencies: - '@types/react': 18.2.37 - hoist-non-react-statics: 3.3.2 - dev: false - - /@types/http-errors@2.0.4: - resolution: {integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==} - dev: true - - /@types/ini@4.1.1: - resolution: {integrity: sha512-MIyNUZipBTbyUNnhvuXJTY7B6qNI78meck9Jbv3wk0OgNwRyOOVEKDutAkOs1snB/tx0FafyR6/SN4Ps0hZPeg==} - dev: true - - /@types/js-cookie@3.0.6: - resolution: {integrity: sha512-wkw9yd1kEXOPnvEeEV1Go1MmxtBJL0RR79aOTAApecWFVu7w0NNXNqhcWgvw2YgZDYadliXkl14pa3WXw5jlCQ==} - dev: true - - /@types/js-yaml@4.0.9: - resolution: {integrity: sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==} - - /@types/json5@0.0.29: - resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} - dev: true - - /@types/lodash.mergewith@4.6.7: - resolution: {integrity: sha512-3m+lkO5CLRRYU0fhGRp7zbsGi6+BZj0uTVSwvcKU+nSlhjA9/QRNfuSGnD2mX6hQA7ZbmcCkzk5h4ZYGOtk14A==} - dependencies: - '@types/lodash': 4.14.202 - dev: false - - /@types/lodash@4.14.202: - resolution: {integrity: sha512-OvlIYQK9tNneDlS0VN54LLd5uiPCBOp7gS5Z0f1mjoJYBrtStzgmJBxONW3U6OZqdtNzZPmn9BS/7WI7BFFcFQ==} - - /@types/mdast@3.0.15: - resolution: {integrity: sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==} - dependencies: - '@types/unist': 2.0.10 - dev: false - - /@types/mdast@4.0.3: - resolution: {integrity: sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==} - dependencies: - '@types/unist': 3.0.2 - dev: false - - /@types/mime@1.3.5: - resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} - dev: true - - /@types/mime@3.0.4: - resolution: {integrity: sha512-iJt33IQnVRkqeqC7PzBHPTC6fDlRNRW8vjrgqtScAhrmMwe8c4Eo7+fUGTa+XdWrpEgpyKWMYmi2dIwMAYRzPw==} - dev: true - - /@types/ms@0.7.34: - resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} - dev: false - - /@types/multer@1.4.11: - resolution: {integrity: sha512-svK240gr6LVWvv3YGyhLlA+6LRRWA4mnGIU7RcNmgjBYFl6665wcXrRfxGp5tEPVHUNm5FMcmq7too9bxCwX/w==} - dependencies: - '@types/express': 4.17.21 - dev: true - - /@types/node@18.13.0: - resolution: {integrity: sha512-gC3TazRzGoOnoKAhUx+Q0t8S9Tzs74z7m0ipwGpSqQrleP14hKxP4/JUeEQcD3W1/aIpnWl8pHowI7WokuZpXg==} - dev: true - - /@types/node@18.15.11: - resolution: {integrity: sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==} - dev: false - - /@types/node@20.17.32: - resolution: {integrity: sha512-zeMXFn8zQ+UkjK4ws0RiOC9EWByyW1CcVmLe+2rQocXRsGEDxUCwPEIVgpsGcLHS/P8JkT0oa3839BRABS0oPw==} - dependencies: - undici-types: 6.19.8 - - /@types/node@22.19.15: - resolution: {integrity: sha512-F0R/h2+dsy5wJAUe3tAU6oqa2qbWY5TpNfL/RGmo1y38hiyO1w3x2jPtt76wmuaJI4DQnOBu21cNXQ2STIUUWg==} - dependencies: - undici-types: 6.21.0 - dev: false - - /@types/nprogress@0.2.3: - resolution: {integrity: sha512-k7kRA033QNtC+gLc4VPlfnue58CM1iQLgn1IMAU8VPHGOj7oIHPp9UlhedEnD/Gl8evoCjwkZjlBORtZ3JByUA==} - dev: true - - /@types/papaparse@5.3.15: - resolution: {integrity: sha512-JHe6vF6x/8Z85nCX4yFdDslN11d+1pr12E526X8WAfhadOeaOTx5AuIkvDKIBopfvlzpzkdMx4YyvSKCM9oqtw==} - dependencies: - '@types/node': 20.17.32 - dev: true - - /@types/parse-json@4.0.2: - resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} - - /@types/prop-types@15.7.11: - resolution: {integrity: sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==} - - /@types/qs@6.9.10: - resolution: {integrity: sha512-3Gnx08Ns1sEoCrWssEgTSJs/rsT2vhGP+Ja9cnnk9k4ALxinORlQneLXFeFKOTJMOeZUFD1s7w+w2AphTpvzZw==} - dev: true - - /@types/range-parser@1.2.7: - resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} - dev: true - - /@types/react-dom@18.0.10: - resolution: {integrity: sha512-E42GW/JA4Qv15wQdqJq8DL4JhNpB3prJgjgapN3qJT9K2zO5IIAQh4VXvCEDupoqAwnz0cY4RlXeC/ajX5SFHg==} - dependencies: - '@types/react': 18.2.37 - dev: true - - /@types/react-syntax-highlighter@15.5.10: - resolution: {integrity: sha512-Vf8nNkGHnjwK37b2wDs92zJSAWS2Mb57NcYHgajCNssHeTNEixvjINnXJkKdY0V0/eLrYkPP1xDKvNmYIr4HIg==} - dependencies: - '@types/react': 18.2.37 - dev: true - - /@types/react@18.2.37: - resolution: {integrity: sha512-RGAYMi2bhRgEXT3f4B92WTohopH6bIXw05FuGlmJEnv/omEn190+QYEIYxIAuIBdKgboYYdVved2p1AxZVQnaw==} - dependencies: - '@types/prop-types': 15.7.11 - '@types/scheduler': 0.16.8 - csstype: 3.2.3 - - /@types/request@2.48.12: - resolution: {integrity: sha512-G3sY+NpsA9jnwm0ixhAFQSJ3Q9JkpLZpJbI3GMv0mIAT0y3mRabYeINzal5WOChIiaTEGQYlHOKgkaM9EisWHw==} - dependencies: - '@types/caseless': 0.12.5 - '@types/node': 20.17.32 - '@types/tough-cookie': 4.0.5 - form-data: 2.5.1 - dev: false - - /@types/resolve@1.20.2: - resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} - dev: true - - /@types/scheduler@0.16.8: - resolution: {integrity: sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==} - - /@types/send@0.17.4: - resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} - dependencies: - '@types/mime': 1.3.5 - '@types/node': 20.17.32 - dev: true - - /@types/serve-static@1.15.5: - resolution: {integrity: sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==} - dependencies: - '@types/http-errors': 2.0.4 - '@types/mime': 3.0.4 - '@types/node': 20.17.32 - dev: true - - /@types/tough-cookie@4.0.5: - resolution: {integrity: sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==} - dev: false - - /@types/unist@2.0.10: - resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==} - dev: false - - /@types/unist@3.0.2: - resolution: {integrity: sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==} - dev: false - - /@types/web-bluetooth@0.0.20: - resolution: {integrity: sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==} - dev: false - - /@types/web-bluetooth@0.0.21: - resolution: {integrity: sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==} - dev: false - - /@types/ws@8.5.10: - resolution: {integrity: sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==} - dependencies: - '@types/node': 20.17.32 - dev: false - - /@typescript-eslint/parser@5.62.0(eslint@8.33.0)(typescript@5.2.2): - resolution: {integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.2.2) - debug: 4.4.1 - eslint: 8.33.0 - typescript: 5.2.2 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/scope-manager@5.62.0: - resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 - dev: true - - /@typescript-eslint/types@5.62.0: - resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - - /@typescript-eslint/typescript-estree@5.62.0(typescript@5.2.2): - resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 - debug: 4.4.1 - globby: 11.1.0 - is-glob: 4.0.3 - semver: 7.6.3 - tsutils: 3.21.0(typescript@5.2.2) - typescript: 5.2.2 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/visitor-keys@5.62.0: - resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - '@typescript-eslint/types': 5.62.0 - eslint-visitor-keys: 3.4.3 - dev: true - - /@ungap/structured-clone@1.2.0: - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - dev: false - - /@unhead/vue@2.1.12(vue@3.5.30): - resolution: {integrity: sha512-zEWqg0nZM8acpuTZE40wkeUl8AhIe0tU0OkilVi1D4fmVjACrwoh5HP6aNqJ8kUnKsoy6D+R3Vi/O+fmdNGO7g==} - peerDependencies: - vue: '>=3.5.18' - dependencies: - hookable: 6.1.0 - unhead: 2.1.12 - vue: 3.5.30(typescript@5.2.2) - dev: false - - /@vercel/oidc@3.1.0: - resolution: {integrity: sha512-Fw28YZpRnA3cAHHDlkt7xQHiJ0fcL+NRcIqsocZQUSmbzeIKRpwttJjik5ZGanXP+vlA4SbTg+AbA3bP363l+w==} - engines: {node: '>= 20'} - dev: false - - /@vue/compiler-core@3.5.30: - resolution: {integrity: sha512-s3DfdZkcu/qExZ+td75015ljzHc6vE+30cFMGRPROYjqkroYI5NV2X1yAMX9UeyBNWB9MxCfPcsjpLS11nzkkw==} - dependencies: - '@babel/parser': 7.29.2 - '@vue/shared': 3.5.30 - entities: 7.0.1 - estree-walker: 2.0.2 - source-map-js: 1.2.1 - dev: false - - /@vue/compiler-dom@3.5.30: - resolution: {integrity: sha512-eCFYESUEVYHhiMuK4SQTldO3RYxyMR/UQL4KdGD1Yrkfdx4m/HYuZ9jSfPdA+nWJY34VWndiYdW/wZXyiPEB9g==} - dependencies: - '@vue/compiler-core': 3.5.30 - '@vue/shared': 3.5.30 - dev: false - - /@vue/compiler-sfc@3.5.30: - resolution: {integrity: sha512-LqmFPDn89dtU9vI3wHJnwaV6GfTRD87AjWpTWpyrdVOObVtjIuSeZr181z5C4PmVx/V3j2p+0f7edFKGRMpQ5A==} - dependencies: - '@babel/parser': 7.29.2 - '@vue/compiler-core': 3.5.30 - '@vue/compiler-dom': 3.5.30 - '@vue/compiler-ssr': 3.5.30 - '@vue/shared': 3.5.30 - estree-walker: 2.0.2 - magic-string: 0.30.21 - postcss: 8.5.8 - source-map-js: 1.2.1 - dev: false - - /@vue/compiler-ssr@3.5.30: - resolution: {integrity: sha512-NsYK6OMTnx109PSL2IAyf62JP6EUdk4Dmj6AkWcJGBvN0dQoMYtVekAmdqgTtWQgEJo+Okstbf/1p7qZr5H+bA==} - dependencies: - '@vue/compiler-dom': 3.5.30 - '@vue/shared': 3.5.30 - dev: false - - /@vue/devtools-api@6.6.4: - resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==} - dev: false - - /@vue/reactivity@3.5.30: - resolution: {integrity: sha512-179YNgKATuwj9gB+66snskRDOitDiuOZqkYia7mHKJaidOMo/WJxHKF8DuGc4V4XbYTJANlfEKb0yxTQotnx4Q==} - dependencies: - '@vue/shared': 3.5.30 - dev: false - - /@vue/runtime-core@3.5.30: - resolution: {integrity: sha512-e0Z+8PQsUTdwV8TtEsLzUM7SzC7lQwYKePydb7K2ZnmS6jjND+WJXkmmfh/swYzRyfP1EY3fpdesyYoymCzYfg==} - dependencies: - '@vue/reactivity': 3.5.30 - '@vue/shared': 3.5.30 - dev: false - - /@vue/runtime-dom@3.5.30: - resolution: {integrity: sha512-2UIGakjU4WSQ0T4iwDEW0W7vQj6n7AFn7taqZ9Cvm0Q/RA2FFOziLESrDL4GmtI1wV3jXg5nMoJSYO66egDUBw==} - dependencies: - '@vue/reactivity': 3.5.30 - '@vue/runtime-core': 3.5.30 - '@vue/shared': 3.5.30 - csstype: 3.2.3 - dev: false - - /@vue/server-renderer@3.5.30(vue@3.5.30): - resolution: {integrity: sha512-v+R34icapydRwbZRD0sXwtHqrQJv38JuMB4JxbOxd8NEpGLny7cncMp53W9UH/zo4j8eDHjQ1dEJXwzFQknjtQ==} - peerDependencies: - vue: 3.5.30 - dependencies: - '@vue/compiler-ssr': 3.5.30 - '@vue/shared': 3.5.30 - vue: 3.5.30(typescript@5.2.2) - dev: false - - /@vue/shared@3.5.30: - resolution: {integrity: sha512-YXgQ7JjaO18NeK2K9VTbDHaFy62WrObMa6XERNfNOkAhD1F1oDSf3ZJ7K6GqabZ0BvSDHajp8qfS5Sa2I9n8uQ==} - dev: false - - /@vueuse/core@10.11.1(vue@3.5.30): - resolution: {integrity: sha512-guoy26JQktXPcz+0n3GukWIy/JDNKti9v6VEMu6kV2sYBsWuGiTU8OWdg+ADfUbHg3/3DlqySDe7JmdHrktiww==} - dependencies: - '@types/web-bluetooth': 0.0.20 - '@vueuse/metadata': 10.11.1 - '@vueuse/shared': 10.11.1(vue@3.5.30) - vue-demi: 0.14.10(vue@3.5.30) - transitivePeerDependencies: - - '@vue/composition-api' - - vue - dev: false - - /@vueuse/core@13.9.0(vue@3.5.30): - resolution: {integrity: sha512-ts3regBQyURfCE2BcytLqzm8+MmLlo5Ln/KLoxDVcsZ2gzIwVNnQpQOL/UKV8alUqjSZOlpFZcRNsLRqj+OzyA==} - peerDependencies: - vue: ^3.5.0 - dependencies: - '@types/web-bluetooth': 0.0.21 - '@vueuse/metadata': 13.9.0 - '@vueuse/shared': 13.9.0(vue@3.5.30) - vue: 3.5.30(typescript@5.2.2) - dev: false - - /@vueuse/integrations@13.9.0(axios@1.6.2)(focus-trap@7.6.4)(fuse.js@7.1.0)(nprogress@0.2.0)(vue@3.5.30): - resolution: {integrity: sha512-SDobKBbPIOe0cVL7QxMzGkuUGHvWTdihi9zOrrWaWUgFKe15cwEcwfWmgrcNzjT6kHnNmWuTajPHoIzUjYNYYQ==} - peerDependencies: - async-validator: ^4 - axios: ^1 - change-case: ^5 - drauu: ^0.4 - focus-trap: ^7 - fuse.js: ^7 - idb-keyval: ^6 - jwt-decode: ^4 - nprogress: ^0.2 - qrcode: ^1.5 - sortablejs: ^1 - universal-cookie: ^7 || ^8 - vue: ^3.5.0 - peerDependenciesMeta: - async-validator: - optional: true - axios: - optional: true - change-case: - optional: true - drauu: - optional: true - focus-trap: - optional: true - fuse.js: - optional: true - idb-keyval: - optional: true - jwt-decode: - optional: true - nprogress: - optional: true - qrcode: - optional: true - sortablejs: - optional: true - universal-cookie: - optional: true - dependencies: - '@vueuse/core': 13.9.0(vue@3.5.30) - '@vueuse/shared': 13.9.0(vue@3.5.30) - axios: 1.6.2 - focus-trap: 7.6.4 - fuse.js: 7.1.0 - nprogress: 0.2.0 - vue: 3.5.30(typescript@5.2.2) - dev: false - - /@vueuse/metadata@10.11.1: - resolution: {integrity: sha512-IGa5FXd003Ug1qAZmyE8wF3sJ81xGLSqTqtQ6jaVfkeZ4i5kS2mwQF61yhVqojRnenVew5PldLyRgvdl4YYuSw==} - dev: false - - /@vueuse/metadata@13.9.0: - resolution: {integrity: sha512-1AFRvuiGphfF7yWixZa0KwjYH8ulyjDCC0aFgrGRz8+P4kvDFSdXLVfTk5xAN9wEuD1J6z4/myMoYbnHoX07zg==} - dev: false - - /@vueuse/shared@10.11.1(vue@3.5.30): - resolution: {integrity: sha512-LHpC8711VFZlDaYUXEBbFBCQ7GS3dVU9mjOhhMhXP6txTV4EhYQg/KGnQuvt/sPAtoUKq7VVUnL6mVtFoL42sA==} - dependencies: - vue-demi: 0.14.10(vue@3.5.30) - transitivePeerDependencies: - - '@vue/composition-api' - - vue - dev: false - - /@vueuse/shared@13.9.0(vue@3.5.30): - resolution: {integrity: sha512-e89uuTLMh0U5cZ9iDpEI2senqPGfbPRTHM/0AaQkcxnpqjkZqDYP8rpfm7edOz8s+pOCOROEy1PIveSW8+fL5g==} - peerDependencies: - vue: ^3.5.0 - dependencies: - vue: 3.5.30(typescript@5.2.2) - dev: false - - /@zag-js/dom-query@0.16.0: - resolution: {integrity: sha512-Oqhd6+biWyKnhKwFFuZrrf6lxBz2tX2pRQe6grUnYwO6HJ8BcbqZomy2lpOdr+3itlaUqx+Ywj5E5ZZDr/LBfQ==} - dev: false - - /@zag-js/element-size@0.10.5: - resolution: {integrity: sha512-uQre5IidULANvVkNOBQ1tfgwTQcGl4hliPSe69Fct1VfYb2Fd0jdAcGzqQgPhfrXFpR62MxLPB7erxJ/ngtL8w==} - dev: false - - /@zag-js/focus-visible@0.16.0: - resolution: {integrity: sha512-a7U/HSopvQbrDU4GLerpqiMcHKEkQkNPeDZJWz38cw/6Upunh41GjHetq5TB84hxyCaDzJ6q2nEdNoBQfC0FKA==} - dependencies: - '@zag-js/dom-query': 0.16.0 - dev: false - - /@zxing/text-encoding@0.9.0: - resolution: {integrity: sha512-U/4aVJ2mxI0aDNI8Uq0wEhMgY+u4CNtEb0om3+y3+niDAsoTCOB33UF0sxpzqzdqXLqmvc+vZyAt4O8pPdfkwA==} - requiresBuild: true - dev: false - optional: true - - /acorn-jsx@5.3.2(acorn@8.11.2): - resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - dependencies: - acorn: 8.11.2 - dev: true - - /acorn-walk@8.3.0: - resolution: {integrity: sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==} - engines: {node: '>=0.4.0'} - dev: true - - /acorn@8.11.2: - resolution: {integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==} - engines: {node: '>=0.4.0'} - hasBin: true - dev: true - - /acorn@8.15.0: - resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} - engines: {node: '>=0.4.0'} - hasBin: true - dev: true - - /ai@6.0.33(zod@4.3.6): - resolution: {integrity: sha512-bVokbmy2E2QF6Efl+5hOJx5MRWoacZ/CZY/y1E+VcewknvGlgaiCzMu8Xgddz6ArFJjiMFNUPHKxAhIePE4rmg==} - engines: {node: '>=18'} - peerDependencies: - zod: ^3.25.76 || ^4.1.8 - dependencies: - '@ai-sdk/gateway': 3.0.13(zod@4.3.6) - '@ai-sdk/provider': 3.0.2 - '@ai-sdk/provider-utils': 4.0.5(zod@4.3.6) - '@opentelemetry/api': 1.9.0 - zod: 4.3.6 - dev: false - - /ajv-draft-04@1.0.0(ajv@8.17.1): - resolution: {integrity: sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==} - peerDependencies: - ajv: ^8.5.0 - peerDependenciesMeta: - ajv: - optional: true - dependencies: - ajv: 8.17.1 - dev: false - - /ajv-formats@3.0.1(ajv@8.17.1): - resolution: {integrity: sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==} - peerDependencies: - ajv: ^8.0.0 - peerDependenciesMeta: - ajv: - optional: true - dependencies: - ajv: 8.17.1 - dev: false - - /ajv@6.12.6: - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} - dependencies: - fast-deep-equal: 3.1.3 - fast-json-stable-stringify: 2.1.0 - json-schema-traverse: 0.4.1 - uri-js: 4.4.1 - - /ajv@8.17.1: - resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} - dependencies: - fast-deep-equal: 3.1.3 - fast-uri: 3.0.6 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - dev: false - - /ansi-escapes@7.0.0: - resolution: {integrity: sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw==} - engines: {node: '>=18'} - dependencies: - environment: 1.1.0 - dev: true - - /ansi-regex@5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} - engines: {node: '>=8'} - dev: true - - /ansi-regex@6.0.1: - resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} - engines: {node: '>=12'} - dev: true - - /ansi-styles@3.2.1: - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} - engines: {node: '>=4'} - dependencies: - color-convert: 1.9.3 - - /ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} - dependencies: - color-convert: 2.0.1 - dev: true - - /ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} - engines: {node: '>=12'} - dev: true - - /ansi_up@5.2.1: - resolution: {integrity: sha512-5bz5T/7FRmlxA37zDXhG6cAwlcZtfnmNLDJra66EEIT3kYlw5aPJdbkJEhm59D6kA4Wi5ict6u6IDYHJaQlH+g==} - dev: false - - /anymatch@3.1.3: - resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} - engines: {node: '>= 8'} - dependencies: - normalize-path: 3.0.0 - picomatch: 2.3.1 - - /append-field@1.0.0: - resolution: {integrity: sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==} - dev: false - - /argparse@2.0.1: - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - - /aria-hidden@1.2.4: - resolution: {integrity: sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==} - engines: {node: '>=10'} - dependencies: - tslib: 2.6.2 - dev: false - - /aria-query@5.3.0: - resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} - dependencies: - dequal: 2.0.3 - dev: true - - /array-buffer-byte-length@1.0.0: - resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} - dependencies: - call-bind: 1.0.7 - is-array-buffer: 3.0.2 - dev: true - - /array-buffer-byte-length@1.0.1: - resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - is-array-buffer: 3.0.4 - dev: true - - /array-includes@3.1.7: - resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - get-intrinsic: 1.2.2 - is-string: 1.0.7 - dev: true - - /array-includes@3.1.8: - resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-object-atoms: 1.1.1 - get-intrinsic: 1.3.0 - is-string: 1.0.7 - dev: true - - /array-union@2.1.0: - resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} - engines: {node: '>=8'} - dev: true - - /array.prototype.findlastindex@1.2.5: - resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - es-object-atoms: 1.1.1 - es-shim-unscopables: 1.0.2 - dev: true - - /array.prototype.flat@1.3.2: - resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-shim-unscopables: 1.0.2 - dev: true - - /array.prototype.flatmap@1.3.2: - resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-shim-unscopables: 1.0.2 - dev: true - - /array.prototype.tosorted@1.1.2: - resolution: {integrity: sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - es-shim-unscopables: 1.0.2 - get-intrinsic: 1.2.2 - dev: true - - /arraybuffer.prototype.slice@1.0.2: - resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==} - engines: {node: '>= 0.4'} - dependencies: - array-buffer-byte-length: 1.0.1 - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.3 - get-intrinsic: 1.3.0 - is-array-buffer: 3.0.4 - is-shared-array-buffer: 1.0.3 - dev: true - - /arraybuffer.prototype.slice@1.0.3: - resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} - engines: {node: '>= 0.4'} - dependencies: - array-buffer-byte-length: 1.0.1 - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - get-intrinsic: 1.3.0 - is-array-buffer: 3.0.4 - is-shared-array-buffer: 1.0.3 - dev: true - - /asn1@0.2.6: - resolution: {integrity: sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==} - dependencies: - safer-buffer: 2.1.2 - dev: false - - /assert-plus@1.0.0: - resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==} - engines: {node: '>=0.8'} - dev: false - - /ast-types-flow@0.0.8: - resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} - dev: true - - /async@3.2.5: - resolution: {integrity: sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==} - dev: false - - /asynciterator.prototype@1.0.0: - resolution: {integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==} - dependencies: - has-symbols: 1.0.3 - dev: true - - /asynckit@0.4.0: - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - dev: false - - /available-typed-arrays@1.0.5: - resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} - engines: {node: '>= 0.4'} - - /available-typed-arrays@1.0.7: - resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} - engines: {node: '>= 0.4'} - dependencies: - possible-typed-array-names: 1.0.0 - - /aws-sign2@0.7.0: - resolution: {integrity: sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==} - dev: false - - /aws4@1.12.0: - resolution: {integrity: sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==} - dev: false - - /axe-core@4.7.0: - resolution: {integrity: sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==} - engines: {node: '>=4'} - dev: true - - /axios@1.6.2: - resolution: {integrity: sha512-7i24Ri4pmDRfJTR7LDBhsOTtcm+9kjX5WiY1X3wIisx6G9So3pfMkEiU7emUBe46oceVImccTEM3k6C5dbVW8A==} - dependencies: - follow-redirects: 1.15.3 - form-data: 4.0.0 - proxy-from-env: 1.1.0 - transitivePeerDependencies: - - debug - dev: false - - /axios@1.7.7: - resolution: {integrity: sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==} - dependencies: - follow-redirects: 1.15.6 - form-data: 4.0.0 - proxy-from-env: 1.1.0 - transitivePeerDependencies: - - debug - dev: false - - /axobject-query@3.2.1: - resolution: {integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==} - dependencies: - dequal: 2.0.3 - dev: true - - /b4a@1.6.4: - resolution: {integrity: sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==} - dev: false - - /babel-plugin-macros@3.1.0: - resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} - engines: {node: '>=10', npm: '>=6'} - dependencies: - '@babel/runtime': 7.26.0 - cosmiconfig: 7.1.0 - resolve: 1.22.8 - dev: false - - /babel-plugin-polyfill-corejs2@0.4.6(@babel/core@7.23.5): - resolution: {integrity: sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - dependencies: - '@babel/compat-data': 7.23.3 - '@babel/core': 7.23.5 - '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.5) - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - dev: true - - /babel-plugin-polyfill-corejs3@0.8.6(@babel/core@7.23.5): - resolution: {integrity: sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.5) - core-js-compat: 3.33.3 - transitivePeerDependencies: - - supports-color - dev: true - - /babel-plugin-polyfill-regenerator@0.5.3(@babel/core@7.23.5): - resolution: {integrity: sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - dependencies: - '@babel/core': 7.23.5 - '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.5) - transitivePeerDependencies: - - supports-color - dev: true - - /bail@2.0.2: - resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} - dev: false - - /balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - - /base64-js@1.5.1: - resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - dev: false - - /bcrypt-pbkdf@1.0.2: - resolution: {integrity: sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==} - dependencies: - tweetnacl: 0.14.5 - dev: false - - /big.js@5.2.2: - resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} - dev: true - - /binary-extensions@2.2.0: - resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} - engines: {node: '>=8'} - - /bl@4.1.0: - resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} - dependencies: - buffer: 5.7.1 - inherits: 2.0.4 - readable-stream: 3.6.2 - dev: false - - /block-stream2@2.1.0: - resolution: {integrity: sha512-suhjmLI57Ewpmq00qaygS8UgEq2ly2PCItenIyhMqVjo4t4pGzqMvfgJuX8iWTeSDdfSSqS6j38fL4ToNL7Pfg==} - dependencies: - readable-stream: 3.6.2 - dev: false - - /boolbase@1.0.0: - resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} - dev: true - - /brace-expansion@1.1.11: - resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} - dependencies: - balanced-match: 1.0.2 - concat-map: 0.0.1 - - /brace-expansion@2.0.1: - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} - dependencies: - balanced-match: 1.0.2 - dev: true - - /braces@3.0.2: - resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} - engines: {node: '>=8'} - dependencies: - fill-range: 7.0.1 - - /braces@3.0.3: - resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} - engines: {node: '>=8'} - dependencies: - fill-range: 7.1.1 - dev: true - - /browser-or-node@2.1.1: - resolution: {integrity: sha512-8CVjaLJGuSKMVTxJ2DpBl5XnlNDiT4cQFeuCJJrvJmts9YrTZDizTX7PjC2s6W4x+MBGZeEY6dGMrF04/6Hgqg==} - dev: false - - /browserslist@4.23.0: - resolution: {integrity: sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - dependencies: - caniuse-lite: 1.0.30001594 - electron-to-chromium: 1.4.692 - node-releases: 2.0.14 - update-browserslist-db: 1.0.13(browserslist@4.23.0) - - /buffer-crc32@0.2.13: - resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} - dev: false - - /buffer-from@1.1.2: - resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - - /buffer@5.7.1: - resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} - dependencies: - base64-js: 1.5.1 - ieee754: 1.2.1 - dev: false - - /builtin-modules@3.3.0: - resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} - engines: {node: '>=6'} - dev: true - - /busboy@1.6.0: - resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} - engines: {node: '>=10.16.0'} - dependencies: - streamsearch: 1.1.0 - dev: false - - /byline@5.0.0: - resolution: {integrity: sha512-s6webAy+R4SR8XVuJWt2V2rGvhnrhxN+9S15GNuTK3wKPOXFF6RNc+8ug2XhH+2s4f+uudG4kUVYmYOQWL2g0Q==} - engines: {node: '>=0.10.0'} - dev: false - - /call-bind-apply-helpers@1.0.2: - resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} - engines: {node: '>= 0.4'} - dependencies: - es-errors: 1.3.0 - function-bind: 1.1.2 - - /call-bind@1.0.5: - resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==} - dependencies: - function-bind: 1.1.2 - get-intrinsic: 1.2.4 - set-function-length: 1.1.1 - dev: true - - /call-bind@1.0.7: - resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} - engines: {node: '>= 0.4'} - dependencies: - es-define-property: 1.0.1 - es-errors: 1.3.0 - function-bind: 1.1.2 - get-intrinsic: 1.3.0 - set-function-length: 1.2.2 - - /call-bind@1.0.8: - resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} - engines: {node: '>= 0.4'} - dependencies: - call-bind-apply-helpers: 1.0.2 - es-define-property: 1.0.1 - get-intrinsic: 1.3.0 - set-function-length: 1.2.2 - - /call-bound@1.0.4: - resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind-apply-helpers: 1.0.2 - get-intrinsic: 1.3.0 - - /callsites@3.1.0: - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} - engines: {node: '>=6'} - - /camelcase@6.3.0: - resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} - engines: {node: '>=10'} - dev: true - - /caniuse-lite@1.0.30001594: - resolution: {integrity: sha512-VblSX6nYqyJVs8DKFMldE2IVCJjZ225LW00ydtUWwh5hk9IfkTOffO6r8gJNsH0qqqeAF8KrbMYA2VEwTlGW5g==} - - /caseless@0.12.0: - resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} - dev: false - - /ccount@2.0.1: - resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} - dev: false - - /chalk@2.4.2: - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} - engines: {node: '>=4'} - dependencies: - ansi-styles: 3.2.1 - escape-string-regexp: 1.0.5 - supports-color: 5.5.0 - - /chalk@3.0.0: - resolution: {integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==} - engines: {node: '>=8'} - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - dev: true - - /chalk@4.1.2: - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - dev: true - - /chalk@5.3.0: - resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} - engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - dev: true - - /chalk@5.4.1: - resolution: {integrity: sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==} - engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - dev: false - - /character-entities-html4@2.1.0: - resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} - dev: false - - /character-entities-legacy@1.1.4: - resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==} - dev: false - - /character-entities-legacy@3.0.0: - resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} - dev: false - - /character-entities@1.2.4: - resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==} - dev: false - - /character-entities@2.0.2: - resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} - dev: false - - /character-reference-invalid@1.1.4: - resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==} - dev: false - - /chokidar@3.5.3: - resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} - engines: {node: '>= 8.10.0'} - dependencies: - anymatch: 3.1.3 - braces: 3.0.2 - glob-parent: 5.1.2 - is-binary-path: 2.1.0 - is-glob: 4.0.3 - normalize-path: 3.0.0 - readdirp: 3.6.0 - optionalDependencies: - fsevents: 2.3.3 - - /chownr@1.1.4: - resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} - dev: false - - /chownr@2.0.0: - resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} - engines: {node: '>=10'} - dev: false - - /clear-any-console@1.16.2: - resolution: {integrity: sha512-OL/7wZpNy9x0GBSzz3poWja84Nr7iaH8aYNsJ5Uet2BVLj6Lm1zvWpZN/yH46Vv3ae7YfHmLLMmfHj911fshJg==} - dev: true - - /cli-check-node@1.3.4: - resolution: {integrity: sha512-iLGgQXm82iP8eH3R67qbOWs5qqUOLmNnMy5Lzl/RybcMh3y+H2zWU5POzuQ6oDUOdz4XWuxcFhP75szqd6frLg==} - dependencies: - chalk: 3.0.0 - log-symbols: 3.0.0 - dev: true - - /cli-cursor@5.0.0: - resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} - engines: {node: '>=18'} - dependencies: - restore-cursor: 5.1.0 - dev: true - - /cli-handle-error@4.4.0: - resolution: {integrity: sha512-RyBCnKlc7xVr79cKb9RfBq+4fjwQeX8HKeNzIPnI/W+DWWIUUKh2ur576DpwJ3kZt2UGHlIAOF7N9txy+mgZsA==} - dependencies: - chalk: 3.0.0 - log-symbols: 3.0.0 - dev: true - - /cli-handle-unhandled@1.1.1: - resolution: {integrity: sha512-Em91mJvU7VdgT2MxQpyY633vW1tDzRjPDbii6ZjEBHHLLh0xDoVkFt/wjvi9nSvJcz9rJmvtJSK8KL/hvF0Stg==} - dependencies: - cli-handle-error: 4.4.0 - dev: true - - /cli-truncate@4.0.0: - resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==} - engines: {node: '>=18'} - dependencies: - slice-ansi: 5.0.0 - string-width: 7.2.0 - dev: true - - /cli-welcome@2.2.2: - resolution: {integrity: sha512-LgDGS0TW4nIf8v81wpuZzfOEDPcy68u0jKR0Fy5IaWftqdminI6FoDiMFt1mjPylqKGNv/wFsZ7fCs93IeDMIw==} - dependencies: - chalk: 2.4.2 - clear-any-console: 1.16.2 - prettier: 2.8.8 - dev: true - - /client-only@0.0.1: - resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} - dev: false - - /clsx@2.1.1: - resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} - engines: {node: '>=6'} - dev: false - - /color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} - dependencies: - color-name: 1.1.3 - - /color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} - engines: {node: '>=7.0.0'} - dependencies: - color-name: 1.1.4 - - /color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - - /color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - - /color-string@1.9.1: - resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} - dependencies: - color-name: 1.1.4 - simple-swizzle: 0.2.2 - dev: false - - /color2k@2.0.2: - resolution: {integrity: sha512-kJhwH5nAwb34tmyuqq/lgjEKzlFXn1U99NlnB6Ws4qVaERcRUYeYP1cBw6BJ4vxaWStAUEef4WMr7WjOCnBt8w==} - dev: false - - /color@4.2.3: - resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} - engines: {node: '>=12.5.0'} - dependencies: - color-convert: 2.0.1 - color-string: 1.9.1 - dev: false - - /colorette@2.0.20: - resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} - dev: true - - /combined-stream@1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} - engines: {node: '>= 0.8'} - dependencies: - delayed-stream: 1.0.0 - dev: false - - /comma-separated-tokens@1.0.8: - resolution: {integrity: sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==} - dev: false - - /comma-separated-tokens@2.0.3: - resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} - dev: false - - /commander@12.1.0: - resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} - engines: {node: '>=18'} - dev: true - - /commander@2.20.3: - resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} - dev: true - - /commander@7.2.0: - resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} - engines: {node: '>= 10'} - dev: true - - /commander@9.5.0: - resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==} - engines: {node: ^12.20.0 || >=14} - dev: true - - /commondir@1.0.1: - resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} - dev: true - - /compute-scroll-into-view@3.0.3: - resolution: {integrity: sha512-nadqwNxghAGTamwIqQSG433W6OADZx2vCo3UXHNrzTRHK/htu+7+L0zhjEoaeaQVNAi3YgqWDv8+tzf0hRfR+A==} - dev: false - - /concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - - /concat-stream@1.6.2: - resolution: {integrity: sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==} - engines: {'0': node >= 0.8} - dependencies: - buffer-from: 1.1.2 - inherits: 2.0.4 - readable-stream: 2.3.8 - typedarray: 0.0.6 - dev: false - - /convert-hrtime@5.0.0: - resolution: {integrity: sha512-lOETlkIeYSJWcbbcvjRKGxVMXJR+8+OQb/mTPbA4ObPMytYIsUbuOE0Jzy60hjARYszq1id0j8KgVhC+WGZVTg==} - engines: {node: '>=12'} - dev: false - - /convert-source-map@1.9.0: - resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} - dev: false - - /convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - - /copy-to-clipboard@3.3.3: - resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==} - dependencies: - toggle-selection: 1.0.6 - dev: false - - /core-js-compat@3.33.3: - resolution: {integrity: sha512-cNzGqFsh3Ot+529GIXacjTJ7kegdt5fPXxCBVS1G0iaZpuo/tBz399ymceLJveQhFFZ8qThHiP3fzuoQjKN2ow==} - dependencies: - browserslist: 4.23.0 - dev: true - - /core-js@3.33.3: - resolution: {integrity: sha512-lo0kOocUlLKmm6kv/FswQL8zbkH7mVsLJ/FULClOhv8WRVmKLVcs6XPNQAzstfeJTCHMyButEwG+z1kHxHoDZw==} - requiresBuild: true - dev: false - - /core-util-is@1.0.2: - resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==} - dev: false - - /core-util-is@1.0.3: - resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} - dev: false - - /cosmiconfig@7.1.0: - resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} - engines: {node: '>=10'} - dependencies: - '@types/parse-json': 4.0.2 - import-fresh: 3.3.0 - parse-json: 5.2.0 - path-type: 4.0.0 - yaml: 1.10.2 - - /crelt@1.0.6: - resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==} - dev: false - - /cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} - engines: {node: '>= 8'} - dependencies: - path-key: 3.1.1 - shebang-command: 2.0.0 - which: 2.0.2 - dev: true - - /cross-spawn@7.0.6: - resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} - engines: {node: '>= 8'} - dependencies: - path-key: 3.1.1 - shebang-command: 2.0.0 - which: 2.0.2 - dev: true - - /css-box-model@1.2.1: - resolution: {integrity: sha512-a7Vr4Q/kd/aw96bnJG332W9V9LkJO69JRcaCYDUqjp6/z0w6VcZjgAcTbgFxEPfBgdnAwlh3iwu+hLopa+flJw==} - dependencies: - tiny-invariant: 1.3.1 - dev: false - - /css-select@4.3.0: - resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==} - dependencies: - boolbase: 1.0.0 - css-what: 6.1.0 - domhandler: 4.3.1 - domutils: 2.8.0 - nth-check: 2.1.1 - dev: true - - /css-tree@1.1.3: - resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} - engines: {node: '>=8.0.0'} - dependencies: - mdn-data: 2.0.14 - source-map: 0.6.1 - dev: true - - /css-what@6.1.0: - resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} - engines: {node: '>= 6'} - dev: true - - /csso@4.2.0: - resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==} - engines: {node: '>=8.0.0'} - dependencies: - css-tree: 1.1.3 - dev: true - - /csstype@3.2.3: - resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} - - /cva@1.0.0-beta.2(typescript@5.2.2): - resolution: {integrity: sha512-dqcOFe247I5pKxfuzqfq3seLL5iMYsTgo40Uw7+pKZAntPgFtR7Tmy59P5IVIq/XgB0NQWoIvYDt9TwHkuK8Cg==} - peerDependencies: - typescript: '>= 4.5.5 < 6' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - clsx: 2.1.1 - typescript: 5.2.2 - dev: false - - /cva@1.0.0-beta.4(typescript@5.2.2): - resolution: {integrity: sha512-F/JS9hScapq4DBVQXcK85l9U91M6ePeXoBMSp7vypzShoefUBxjQTo3g3935PUHgQd+IW77DjbPRIxugy4/GCQ==} - peerDependencies: - typescript: '>= 4.5.5' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - clsx: 2.1.1 - typescript: 5.2.2 - dev: false - - /damerau-levenshtein@1.0.8: - resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} - dev: true - - /dashdash@1.14.1: - resolution: {integrity: sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==} - engines: {node: '>=0.10'} - dependencies: - assert-plus: 1.0.0 - dev: false - - /data-view-buffer@1.0.1: - resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - es-errors: 1.3.0 - is-data-view: 1.0.1 - dev: true - - /data-view-byte-length@1.0.1: - resolution: {integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - es-errors: 1.3.0 - is-data-view: 1.0.1 - dev: true - - /data-view-byte-offset@1.0.0: - resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - es-errors: 1.3.0 - is-data-view: 1.0.1 - dev: true - - /date-fns@3.6.0: - resolution: {integrity: sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==} - dev: false - - /dayjs@1.11.10: - resolution: {integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==} - dev: false - - /debounce@1.2.1: - resolution: {integrity: sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==} - dev: true - - /debug@3.2.7: - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - dependencies: - ms: 2.1.3 - dev: true - - /debug@4.3.4: - resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - dependencies: - ms: 2.1.2 - dev: true - - /debug@4.3.6: - resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - dependencies: - ms: 2.1.2 - dev: true - - /debug@4.4.1: - resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - dependencies: - ms: 2.1.3 - - /decode-named-character-reference@1.0.2: - resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} - dependencies: - character-entities: 2.0.2 - dev: false - - /decode-uri-component@0.2.2: - resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==} - engines: {node: '>=0.10'} - dev: false - - /decompress-response@6.0.0: - resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} - engines: {node: '>=10'} - dependencies: - mimic-response: 3.1.0 - dev: false - - /deep-extend@0.6.0: - resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} - engines: {node: '>=4.0.0'} - dev: false - - /deep-is@0.1.4: - resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} - dev: true - - /deepmerge@4.3.1: - resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} - engines: {node: '>=0.10.0'} - dev: true - - /define-data-property@1.1.1: - resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} - engines: {node: '>= 0.4'} - dependencies: - get-intrinsic: 1.3.0 - gopd: 1.2.0 - has-property-descriptors: 1.0.2 - dev: true - - /define-data-property@1.1.4: - resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} - engines: {node: '>= 0.4'} - dependencies: - es-define-property: 1.0.1 - es-errors: 1.3.0 - gopd: 1.2.0 - - /define-properties@1.2.1: - resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} - engines: {node: '>= 0.4'} - dependencies: - define-data-property: 1.1.1 - has-property-descriptors: 1.0.2 - object-keys: 1.1.1 - dev: true - - /defu@6.1.4: - resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} - dev: false - - /delayed-stream@1.0.0: - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} - engines: {node: '>=0.4.0'} - dev: false - - /dequal@2.0.3: - resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} - engines: {node: '>=6'} - - /detect-libc@2.0.2: - resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==} - engines: {node: '>=8'} - dev: false - - /detect-node-es@1.1.0: - resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} - dev: false - - /devlop@1.1.0: - resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} - dependencies: - dequal: 2.0.3 - dev: false - - /diff@5.1.0: - resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} - engines: {node: '>=0.3.1'} - dev: false - - /dir-glob@3.0.1: - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} - engines: {node: '>=8'} - dependencies: - path-type: 4.0.0 - dev: true - - /doctrine@2.1.0: - resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} - engines: {node: '>=0.10.0'} - dependencies: - esutils: 2.0.3 - dev: true - - /doctrine@3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} - dependencies: - esutils: 2.0.3 - dev: true - - /dom-serializer@1.4.1: - resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} - dependencies: - domelementtype: 2.3.0 - domhandler: 4.3.1 - entities: 2.2.0 - dev: true - - /domelementtype@2.3.0: - resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} - dev: true - - /domhandler@4.3.1: - resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==} - engines: {node: '>= 4'} - dependencies: - domelementtype: 2.3.0 - dev: true - - /domutils@2.8.0: - resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} - dependencies: - dom-serializer: 1.4.1 - domelementtype: 2.3.0 - domhandler: 4.3.1 - dev: true - - /dunder-proto@1.0.1: - resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} - engines: {node: '>= 0.4'} - dependencies: - call-bind-apply-helpers: 1.0.2 - es-errors: 1.3.0 - gopd: 1.2.0 - - /duplexer@0.1.2: - resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} - dev: true - - /ecc-jsbn@0.1.2: - resolution: {integrity: sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==} - dependencies: - jsbn: 0.1.1 - safer-buffer: 2.1.2 - dev: false - - /echarts@5.4.3: - resolution: {integrity: sha512-mYKxLxhzy6zyTi/FaEbJMOZU1ULGEQHaeIeuMR5L+JnJTpz+YR03mnnpBhbR4+UYJAgiXgpyTVLffPAjOTLkZA==} - dependencies: - tslib: 2.3.0 - zrender: 5.4.4 - dev: false - - /electron-to-chromium@1.4.692: - resolution: {integrity: sha512-d5rZRka9n2Y3MkWRN74IoAsxR0HK3yaAt7T50e3iT9VZmCCQDT3geXUO5ZRMhDToa1pkCeQXuNo+0g+NfDOVPA==} - - /emoji-regex@10.3.0: - resolution: {integrity: sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==} - dev: true - - /emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - dev: true - - /emojis-list@3.0.0: - resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==} - engines: {node: '>= 4'} - dev: true - - /end-of-stream@1.4.4: - resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} - dependencies: - once: 1.4.0 - dev: false - - /enhanced-resolve@5.18.1: - resolution: {integrity: sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==} - engines: {node: '>=10.13.0'} - dependencies: - graceful-fs: 4.2.11 - tapable: 2.2.1 - dev: true - - /entities@2.2.0: - resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} - dev: true - - /entities@4.5.0: - resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} - engines: {node: '>=0.12'} - - /entities@7.0.1: - resolution: {integrity: sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==} - engines: {node: '>=0.12'} - dev: false - - /environment@1.1.0: - resolution: {integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==} - engines: {node: '>=18'} - dev: true - - /error-ex@1.3.2: - resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} - dependencies: - is-arrayish: 0.2.1 - - /es-abstract@1.22.3: - resolution: {integrity: sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==} - engines: {node: '>= 0.4'} - dependencies: - array-buffer-byte-length: 1.0.0 - arraybuffer.prototype.slice: 1.0.2 - available-typed-arrays: 1.0.5 - call-bind: 1.0.7 - es-set-tostringtag: 2.0.2 - es-to-primitive: 1.2.1 - function.prototype.name: 1.1.6 - get-intrinsic: 1.2.4 - get-symbol-description: 1.0.0 - globalthis: 1.0.3 - gopd: 1.0.1 - has-property-descriptors: 1.0.1 - has-proto: 1.0.1 - has-symbols: 1.0.3 - hasown: 2.0.2 - internal-slot: 1.0.6 - is-array-buffer: 3.0.2 - is-callable: 1.2.7 - is-negative-zero: 2.0.2 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 - is-string: 1.0.7 - is-typed-array: 1.1.12 - is-weakref: 1.0.2 - object-inspect: 1.13.1 - object-keys: 1.1.1 - object.assign: 4.1.4 - regexp.prototype.flags: 1.5.1 - safe-array-concat: 1.0.1 - safe-regex-test: 1.0.0 - string.prototype.trim: 1.2.8 - string.prototype.trimend: 1.0.8 - string.prototype.trimstart: 1.0.7 - typed-array-buffer: 1.0.0 - typed-array-byte-length: 1.0.0 - typed-array-byte-offset: 1.0.0 - typed-array-length: 1.0.4 - unbox-primitive: 1.0.2 - which-typed-array: 1.1.13 - dev: true - - /es-abstract@1.23.3: - resolution: {integrity: sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==} - engines: {node: '>= 0.4'} - dependencies: - array-buffer-byte-length: 1.0.1 - arraybuffer.prototype.slice: 1.0.3 - available-typed-arrays: 1.0.7 - call-bind: 1.0.7 - data-view-buffer: 1.0.1 - data-view-byte-length: 1.0.1 - data-view-byte-offset: 1.0.0 - es-define-property: 1.0.1 - es-errors: 1.3.0 - es-object-atoms: 1.1.1 - es-set-tostringtag: 2.0.3 - es-to-primitive: 1.2.1 - function.prototype.name: 1.1.6 - get-intrinsic: 1.3.0 - get-symbol-description: 1.0.2 - globalthis: 1.0.4 - gopd: 1.2.0 - has-property-descriptors: 1.0.2 - has-proto: 1.0.3 - has-symbols: 1.1.0 - hasown: 2.0.2 - internal-slot: 1.0.7 - is-array-buffer: 3.0.4 - is-callable: 1.2.7 - is-data-view: 1.0.1 - is-negative-zero: 2.0.3 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.3 - is-string: 1.0.7 - is-typed-array: 1.1.13 - is-weakref: 1.0.2 - object-inspect: 1.13.4 - object-keys: 1.1.1 - object.assign: 4.1.5 - regexp.prototype.flags: 1.5.3 - safe-array-concat: 1.1.2 - safe-regex-test: 1.0.3 - string.prototype.trim: 1.2.9 - string.prototype.trimend: 1.0.8 - string.prototype.trimstart: 1.0.8 - typed-array-buffer: 1.0.2 - typed-array-byte-length: 1.0.1 - typed-array-byte-offset: 1.0.2 - typed-array-length: 1.0.6 - unbox-primitive: 1.0.2 - which-typed-array: 1.1.15 - dev: true - - /es-define-property@1.0.1: - resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} - engines: {node: '>= 0.4'} - - /es-errors@1.3.0: - resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} - engines: {node: '>= 0.4'} - - /es-iterator-helpers@1.0.15: - resolution: {integrity: sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==} - dependencies: - asynciterator.prototype: 1.0.0 - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - es-set-tostringtag: 2.0.2 - function-bind: 1.1.2 - get-intrinsic: 1.2.2 - globalthis: 1.0.3 - has-property-descriptors: 1.0.1 - has-proto: 1.0.1 - has-symbols: 1.0.3 - internal-slot: 1.0.6 - iterator.prototype: 1.1.2 - safe-array-concat: 1.0.1 - dev: true - - /es-object-atoms@1.1.1: - resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} - engines: {node: '>= 0.4'} - dependencies: - es-errors: 1.3.0 - - /es-set-tostringtag@2.0.2: - resolution: {integrity: sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==} - engines: {node: '>= 0.4'} - dependencies: - get-intrinsic: 1.2.4 - has-tostringtag: 1.0.0 - hasown: 2.0.2 - dev: true - - /es-set-tostringtag@2.0.3: - resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==} - engines: {node: '>= 0.4'} - dependencies: - get-intrinsic: 1.3.0 - has-tostringtag: 1.0.2 - hasown: 2.0.2 - dev: true - - /es-shim-unscopables@1.0.2: - resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} - dependencies: - hasown: 2.0.2 - dev: true - - /es-to-primitive@1.2.1: - resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} - engines: {node: '>= 0.4'} - dependencies: - is-callable: 1.2.7 - is-date-object: 1.0.5 - is-symbol: 1.0.4 - dev: true - - /esbuild@0.17.19: - resolution: {integrity: sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==} - engines: {node: '>=12'} - hasBin: true - requiresBuild: true - optionalDependencies: - '@esbuild/android-arm': 0.17.19 - '@esbuild/android-arm64': 0.17.19 - '@esbuild/android-x64': 0.17.19 - '@esbuild/darwin-arm64': 0.17.19 - '@esbuild/darwin-x64': 0.17.19 - '@esbuild/freebsd-arm64': 0.17.19 - '@esbuild/freebsd-x64': 0.17.19 - '@esbuild/linux-arm': 0.17.19 - '@esbuild/linux-arm64': 0.17.19 - '@esbuild/linux-ia32': 0.17.19 - '@esbuild/linux-loong64': 0.17.19 - '@esbuild/linux-mips64el': 0.17.19 - '@esbuild/linux-ppc64': 0.17.19 - '@esbuild/linux-riscv64': 0.17.19 - '@esbuild/linux-s390x': 0.17.19 - '@esbuild/linux-x64': 0.17.19 - '@esbuild/netbsd-x64': 0.17.19 - '@esbuild/openbsd-x64': 0.17.19 - '@esbuild/sunos-x64': 0.17.19 - '@esbuild/win32-arm64': 0.17.19 - '@esbuild/win32-ia32': 0.17.19 - '@esbuild/win32-x64': 0.17.19 - dev: true - - /escalade@3.1.1: - resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} - engines: {node: '>=6'} - - /escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} - - /escape-string-regexp@4.0.0: - resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} - engines: {node: '>=10'} - - /escape-string-regexp@5.0.0: - resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} - engines: {node: '>=12'} - dev: false - - /eslint-config-next@13.1.6(eslint@8.33.0)(typescript@5.2.2): - resolution: {integrity: sha512-0cg7h5wztg/SoLAlxljZ0ZPUQ7i6QKqRiP4M2+MgTZtxWwNKb2JSwNc18nJ6/kXBI6xYvPraTbQSIhAuVw6czw==} - peerDependencies: - eslint: ^7.23.0 || ^8.0.0 - typescript: '>=3.3.1' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@next/eslint-plugin-next': 13.1.6 - '@rushstack/eslint-patch': 1.6.0 - '@typescript-eslint/parser': 5.62.0(eslint@8.33.0)(typescript@5.2.2) - eslint: 8.33.0 - eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.33.0) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.33.0) - eslint-plugin-jsx-a11y: 6.8.0(eslint@8.33.0) - eslint-plugin-react: 7.33.2(eslint@8.33.0) - eslint-plugin-react-hooks: 4.6.0(eslint@8.33.0) - typescript: 5.2.2 - transitivePeerDependencies: - - eslint-import-resolver-webpack - - supports-color - dev: true - - /eslint-import-resolver-node@0.3.9: - resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} - dependencies: - debug: 3.2.7 - is-core-module: 2.15.1 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - dev: true - - /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.33.0): - resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==} - engines: {node: ^14.18.0 || >=16.0.0} - peerDependencies: - eslint: '*' - eslint-plugin-import: '*' - dependencies: - debug: 4.4.1 - enhanced-resolve: 5.18.1 - eslint: 8.33.0 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.33.0) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.33.0) - fast-glob: 3.3.2 - get-tsconfig: 4.7.2 - is-core-module: 2.15.1 - is-glob: 4.0.3 - transitivePeerDependencies: - - '@typescript-eslint/parser' - - eslint-import-resolver-node - - eslint-import-resolver-webpack - - supports-color - dev: true - - /eslint-module-utils@2.12.0(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.33.0): - resolution: {integrity: sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: '*' - eslint-import-resolver-node: '*' - eslint-import-resolver-typescript: '*' - eslint-import-resolver-webpack: '*' - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - eslint: - optional: true - eslint-import-resolver-node: - optional: true - eslint-import-resolver-typescript: - optional: true - eslint-import-resolver-webpack: - optional: true - dependencies: - '@typescript-eslint/parser': 5.62.0(eslint@8.33.0)(typescript@5.2.2) - debug: 3.2.7 - eslint: 8.33.0 - eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.33.0) - transitivePeerDependencies: - - supports-color - dev: true - - /eslint-plugin-import@2.31.0(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.33.0): - resolution: {integrity: sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - dependencies: - '@rtsao/scc': 1.1.0 - '@typescript-eslint/parser': 5.62.0(eslint@8.33.0)(typescript@5.2.2) - array-includes: 3.1.8 - array.prototype.findlastindex: 1.2.5 - array.prototype.flat: 1.3.2 - array.prototype.flatmap: 1.3.2 - debug: 3.2.7 - doctrine: 2.1.0 - eslint: 8.33.0 - eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.33.0) - hasown: 2.0.2 - is-core-module: 2.15.1 - is-glob: 4.0.3 - minimatch: 3.1.2 - object.fromentries: 2.0.8 - object.groupby: 1.0.3 - object.values: 1.2.0 - semver: 6.3.1 - string.prototype.trimend: 1.0.8 - tsconfig-paths: 3.15.0 - transitivePeerDependencies: - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack - - supports-color - dev: true - - /eslint-plugin-jsx-a11y@6.8.0(eslint@8.33.0): - resolution: {integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==} - engines: {node: '>=4.0'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - dependencies: - '@babel/runtime': 7.26.0 - aria-query: 5.3.0 - array-includes: 3.1.7 - array.prototype.flatmap: 1.3.2 - ast-types-flow: 0.0.8 - axe-core: 4.7.0 - axobject-query: 3.2.1 - damerau-levenshtein: 1.0.8 - emoji-regex: 9.2.2 - es-iterator-helpers: 1.0.15 - eslint: 8.33.0 - hasown: 2.0.0 - jsx-ast-utils: 3.3.5 - language-tags: 1.0.9 - minimatch: 3.1.2 - object.entries: 1.1.7 - object.fromentries: 2.0.7 - dev: true - - /eslint-plugin-react-hooks@4.6.0(eslint@8.33.0): - resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} - engines: {node: '>=10'} - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - dependencies: - eslint: 8.33.0 - dev: true - - /eslint-plugin-react@7.33.2(eslint@8.33.0): - resolution: {integrity: sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==} - engines: {node: '>=4'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - dependencies: - array-includes: 3.1.7 - array.prototype.flatmap: 1.3.2 - array.prototype.tosorted: 1.1.2 - doctrine: 2.1.0 - es-iterator-helpers: 1.0.15 - eslint: 8.33.0 - estraverse: 5.3.0 - jsx-ast-utils: 3.3.5 - minimatch: 3.1.2 - object.entries: 1.1.7 - object.fromentries: 2.0.7 - object.hasown: 1.1.3 - object.values: 1.1.7 - prop-types: 15.8.1 - resolve: 2.0.0-next.5 - semver: 6.3.1 - string.prototype.matchall: 4.0.10 - dev: true - - /eslint-scope@7.2.2: - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - esrecurse: 4.3.0 - estraverse: 5.3.0 - dev: true - - /eslint-utils@3.0.0(eslint@8.33.0): - resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} - engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} - peerDependencies: - eslint: '>=5' - dependencies: - eslint: 8.33.0 - eslint-visitor-keys: 2.1.0 - dev: true - - /eslint-visitor-keys@2.1.0: - resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} - engines: {node: '>=10'} - dev: true - - /eslint-visitor-keys@3.4.3: - resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - - /eslint@8.33.0: - resolution: {integrity: sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - hasBin: true - dependencies: - '@eslint/eslintrc': 1.4.1 - '@humanwhocodes/config-array': 0.11.13 - '@humanwhocodes/module-importer': 1.0.1 - '@nodelib/fs.walk': 1.2.8 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.4 - doctrine: 3.0.0 - escape-string-regexp: 4.0.0 - eslint-scope: 7.2.2 - eslint-utils: 3.0.0(eslint@8.33.0) - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 - esquery: 1.5.0 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 - find-up: 5.0.0 - glob-parent: 6.0.2 - globals: 13.23.0 - grapheme-splitter: 1.0.4 - ignore: 5.3.0 - import-fresh: 3.3.0 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - is-path-inside: 3.0.3 - js-sdsl: 4.4.2 - js-yaml: 4.1.0 - json-stable-stringify-without-jsonify: 1.0.1 - levn: 0.4.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 - natural-compare: 1.4.0 - optionator: 0.9.3 - regexpp: 3.2.0 - strip-ansi: 6.0.1 - strip-json-comments: 3.1.1 - text-table: 0.2.0 - transitivePeerDependencies: - - supports-color - dev: true - - /espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - acorn: 8.11.2 - acorn-jsx: 5.3.2(acorn@8.11.2) - eslint-visitor-keys: 3.4.3 - dev: true - - /esquery@1.5.0: - resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} - engines: {node: '>=0.10'} - dependencies: - estraverse: 5.3.0 - dev: true - - /esrecurse@4.3.0: - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} - engines: {node: '>=4.0'} - dependencies: - estraverse: 5.3.0 - dev: true - - /estraverse@5.3.0: - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} - engines: {node: '>=4.0'} - dev: true - - /estree-walker@2.0.2: - resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} - - /esutils@2.0.3: - resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} - engines: {node: '>=0.10.0'} - dev: true - - /eventemitter3@5.0.1: - resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} - dev: true - - /eventsource-parser@3.0.6: - resolution: {integrity: sha512-Vo1ab+QXPzZ4tCa8SwIHJFaSzy4R6SHf7BY79rFBDf0idraZWAkYrDjDj8uWaSm3S2TK+hJ7/t1CEmZ7jXw+pg==} - engines: {node: '>=18.0.0'} - dev: false - - /execa@8.0.1: - resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} - engines: {node: '>=16.17'} - dependencies: - cross-spawn: 7.0.6 - get-stream: 8.0.1 - human-signals: 5.0.0 - is-stream: 3.0.0 - merge-stream: 2.0.0 - npm-run-path: 5.3.0 - onetime: 6.0.0 - signal-exit: 4.1.0 - strip-final-newline: 3.0.0 - dev: true - - /expand-template@2.0.3: - resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} - engines: {node: '>=6'} - dev: false - - /extend@3.0.2: - resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} - dev: false - - /extsprintf@1.3.0: - resolution: {integrity: sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==} - engines: {'0': node >=0.6.0} - dev: false - - /extsprintf@1.4.1: - resolution: {integrity: sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==} - engines: {'0': node >=0.6.0} - dev: false - - /fast-deep-equal@3.1.3: - resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - - /fast-fifo@1.3.2: - resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==} - dev: false - - /fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} - engines: {node: '>=8.6.0'} - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.5 - dev: true - - /fast-json-stable-stringify@2.1.0: - resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - - /fast-levenshtein@2.0.6: - resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} - dev: true - - /fast-uri@3.0.6: - resolution: {integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==} - dev: false - - /fast-xml-parser@4.3.2: - resolution: {integrity: sha512-rmrXUXwbJedoXkStenj1kkljNF7ugn5ZjR9FJcwmCfcCbtOMDghPajbc+Tck6vE6F5XsDmx+Pr2le9fw8+pXBg==} - hasBin: true - dependencies: - strnum: 1.0.5 - dev: false - - /fastq@1.15.0: - resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} - dependencies: - reusify: 1.0.4 - dev: true - - /fault@1.0.4: - resolution: {integrity: sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==} - dependencies: - format: 0.2.2 - dev: false - - /file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} - dependencies: - flat-cache: 3.2.0 - dev: true - - /fill-range@7.0.1: - resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} - engines: {node: '>=8'} - dependencies: - to-regex-range: 5.0.1 - - /fill-range@7.1.1: - resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} - engines: {node: '>=8'} - dependencies: - to-regex-range: 5.0.1 - dev: true - - /filter-obj@1.1.0: - resolution: {integrity: sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==} - engines: {node: '>=0.10.0'} - dev: false - - /find-cache-dir@3.3.2: - resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} - engines: {node: '>=8'} - dependencies: - commondir: 1.0.1 - make-dir: 3.1.0 - pkg-dir: 4.2.0 - dev: true - - /find-root@1.1.0: - resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} - dev: false - - /find-up@4.1.0: - resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} - engines: {node: '>=8'} - dependencies: - locate-path: 5.0.0 - path-exists: 4.0.0 - dev: true - - /find-up@5.0.0: - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} - engines: {node: '>=10'} - dependencies: - locate-path: 6.0.0 - path-exists: 4.0.0 - dev: true - - /flat-cache@3.2.0: - resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} - engines: {node: ^10.12.0 || >=12.0.0} - dependencies: - flatted: 3.2.9 - keyv: 4.5.4 - rimraf: 3.0.2 - dev: true - - /flatted@3.2.9: - resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} - dev: true - - /flatted@3.3.3: - resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} - dev: false - - /focus-lock@1.0.0: - resolution: {integrity: sha512-a8Ge6cdKh9za/GZR/qtigTAk7SrGore56EFcoMshClsh7FLk1zwszc/ltuMfKhx56qeuyL/jWQ4J4axou0iJ9w==} - engines: {node: '>=10'} - dependencies: - tslib: 2.6.2 - dev: false - - /focus-trap@7.6.4: - resolution: {integrity: sha512-xx560wGBk7seZ6y933idtjJQc1l+ck+pI3sKvhKozdBV1dRZoKhkW5xoCaFv9tQiX5RH1xfSxjuNu6g+lmN/gw==} - dependencies: - tabbable: 6.2.0 - dev: false - - /follow-redirects@1.15.3: - resolution: {integrity: sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==} - engines: {node: '>=4.0'} - peerDependencies: - debug: '*' - peerDependenciesMeta: - debug: - optional: true - dev: false - - /follow-redirects@1.15.6: - resolution: {integrity: sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==} - engines: {node: '>=4.0'} - peerDependencies: - debug: '*' - peerDependenciesMeta: - debug: - optional: true - dev: false - - /for-each@0.3.3: - resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} - dependencies: - is-callable: 1.2.7 - - /for-each@0.3.5: - resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} - engines: {node: '>= 0.4'} - dependencies: - is-callable: 1.2.7 - - /forever-agent@0.6.1: - resolution: {integrity: sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==} - dev: false - - /form-data@2.3.3: - resolution: {integrity: sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==} - engines: {node: '>= 0.12'} - dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - mime-types: 2.1.35 - dev: false - - /form-data@2.5.1: - resolution: {integrity: sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==} - engines: {node: '>= 0.12'} - dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - mime-types: 2.1.35 - dev: false - - /form-data@4.0.0: - resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} - engines: {node: '>= 6'} - dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - mime-types: 2.1.35 - dev: false - - /format@0.2.2: - resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} - engines: {node: '>=0.4.x'} - dev: false - - /framer-motion@10.16.5(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-GEzVjOYP2MIpV9bT/GbhcsBNoImG3/2X3O/xVNWmktkv9MdJ7P/44zELm/7Fjb+O3v39SmKFnoDQB32giThzpg==} - peerDependencies: - react: 18.2.0 - react-dom: 18.2.0 - peerDependenciesMeta: - react: - optional: true - react-dom: - optional: true - dependencies: - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - tslib: 2.6.2 - optionalDependencies: - '@emotion/is-prop-valid': 0.8.8 - dev: false - - /framesync@6.1.2: - resolution: {integrity: sha512-jBTqhX6KaQVDyus8muwZbBeGGP0XgujBRbQ7gM7BRdS3CadCZIHiawyzYLnafYcvZIh5j8WE7cxZKFn7dXhu9g==} - dependencies: - tslib: 2.4.0 - dev: false - - /fs-constants@1.0.0: - resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} - dev: false - - /fs-extra@10.1.0: - resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} - engines: {node: '>=12'} - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.1 - dev: true - - /fs-minipass@2.1.0: - resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} - engines: {node: '>= 8'} - dependencies: - minipass: 3.3.6 - dev: false - - /fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - - /fsevents@2.3.3: - resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - requiresBuild: true - optional: true - - /function-bind@1.1.2: - resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - - /function-timeout@1.0.2: - resolution: {integrity: sha512-939eZS4gJ3htTHAldmyyuzlrD58P03fHG49v2JfFXbV6OhvZKRC9j2yAtdHw/zrp2zXHuv05zMIy40F0ge7spA==} - engines: {node: '>=18'} - dev: false - - /function.prototype.name@1.1.6: - resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.3 - functions-have-names: 1.2.3 - dev: true - - /functions-have-names@1.2.3: - resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} - dev: true - - /fuse.js@7.1.0: - resolution: {integrity: sha512-trLf4SzuuUxfusZADLINj+dE8clK1frKdmqiJNb1Es75fmI5oY6X2mxLVUciLLjxqw/xr72Dhy+lER6dGd02FQ==} - engines: {node: '>=10'} - dev: false - - /gensync@1.0.0-beta.2: - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} - engines: {node: '>=6.9.0'} - - /get-east-asian-width@1.2.0: - resolution: {integrity: sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==} - engines: {node: '>=18'} - dev: true - - /get-intrinsic@1.2.2: - resolution: {integrity: sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==} - dependencies: - function-bind: 1.1.2 - has-proto: 1.0.1 - has-symbols: 1.0.3 - hasown: 2.0.2 - dev: true - - /get-intrinsic@1.2.4: - resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==} - engines: {node: '>= 0.4'} - dependencies: - es-errors: 1.3.0 - function-bind: 1.1.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 - hasown: 2.0.2 - dev: true - - /get-intrinsic@1.3.0: - resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind-apply-helpers: 1.0.2 - es-define-property: 1.0.1 - es-errors: 1.3.0 - es-object-atoms: 1.1.1 - function-bind: 1.1.2 - get-proto: 1.0.1 - gopd: 1.2.0 - has-symbols: 1.1.0 - hasown: 2.0.2 - math-intrinsics: 1.1.0 - - /get-nonce@1.0.1: - resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==} - engines: {node: '>=6'} - dev: false - - /get-own-enumerable-keys@1.0.0: - resolution: {integrity: sha512-PKsK2FSrQCyxcGHsGrLDcK0lx+0Ke+6e8KFFozA9/fIQLhQzPaRvJFdcz7+Axg3jUH/Mq+NI4xa5u/UT2tQskA==} - engines: {node: '>=14.16'} - dev: false - - /get-proto@1.0.1: - resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} - engines: {node: '>= 0.4'} - dependencies: - dunder-proto: 1.0.1 - es-object-atoms: 1.1.1 - - /get-stream@8.0.1: - resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} - engines: {node: '>=16'} - dev: true - - /get-symbol-description@1.0.0: - resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - get-intrinsic: 1.3.0 - dev: true - - /get-symbol-description@1.0.2: - resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - es-errors: 1.3.0 - get-intrinsic: 1.3.0 - dev: true - - /get-tsconfig@4.7.2: - resolution: {integrity: sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==} - dependencies: - resolve-pkg-maps: 1.0.0 - dev: true - - /getpass@0.1.7: - resolution: {integrity: sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==} - dependencies: - assert-plus: 1.0.0 - dev: false - - /github-from-package@0.0.0: - resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} - dev: false - - /github-markdown-css@5.4.0: - resolution: {integrity: sha512-eJhoFp9fiZ290h0vWrU5MmW0A2eeB81Lv/3ZkdtKrylJvtWi71ezGrxCcw1P2fVr82s3NvBX66SoDCN1pWLadw==} - engines: {node: '>=10'} - dev: false - - /github-slugger@2.0.0: - resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} - dev: false - - /glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} - dependencies: - is-glob: 4.0.3 - - /glob-parent@6.0.2: - resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} - engines: {node: '>=10.13.0'} - dependencies: - is-glob: 4.0.3 - dev: true - - /glob-to-regexp@0.4.1: - resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} - dev: false - - /glob@7.1.7: - resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==} - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 - dev: true - - /glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} - deprecated: Glob versions prior to v9 are no longer supported - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 - - /glob@8.1.0: - resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} - engines: {node: '>=12'} - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 5.1.6 - once: 1.4.0 - dev: true - - /globals@11.12.0: - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} - engines: {node: '>=4'} - - /globals@13.23.0: - resolution: {integrity: sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==} - engines: {node: '>=8'} - dependencies: - type-fest: 0.20.2 - dev: true - - /globalthis@1.0.3: - resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} - engines: {node: '>= 0.4'} - dependencies: - define-properties: 1.2.1 - dev: true - - /globalthis@1.0.4: - resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} - engines: {node: '>= 0.4'} - dependencies: - define-properties: 1.2.1 - gopd: 1.0.1 - dev: true - - /globby@11.1.0: - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} - engines: {node: '>=10'} - dependencies: - array-union: 2.1.0 - dir-glob: 3.0.1 - fast-glob: 3.3.2 - ignore: 5.3.0 - merge2: 1.4.1 - slash: 3.0.0 - dev: true - - /gopd@1.0.1: - resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} - dependencies: - get-intrinsic: 1.3.0 - dev: true - - /gopd@1.2.0: - resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} - engines: {node: '>= 0.4'} - - /graceful-fs@4.2.11: - resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - - /grapheme-splitter@1.0.4: - resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} - dev: true - - /guess-json-indent@3.0.1: - resolution: {integrity: sha512-LWZ3Vr8BG7DHE3TzPYFqkhjNRw4vYgFSsv2nfMuHklAlOfiy54/EwiDQuQfFVLxENCVv20wpbjfTayooQHrEhQ==} - engines: {node: '>=18.18.0'} - dev: false - - /gzip-size@6.0.0: - resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==} - engines: {node: '>=10'} - dependencies: - duplexer: 0.1.2 - dev: true - - /har-schema@2.0.0: - resolution: {integrity: sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==} - engines: {node: '>=4'} - dev: false - - /har-validator@5.1.5: - resolution: {integrity: sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==} - engines: {node: '>=6'} - deprecated: this library is no longer supported - dependencies: - ajv: 6.12.6 - har-schema: 2.0.0 - dev: false - - /has-bigints@1.0.2: - resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} - dev: true - - /has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} - - /has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} - dev: true - - /has-property-descriptors@1.0.1: - resolution: {integrity: sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==} - dependencies: - get-intrinsic: 1.2.4 - dev: true - - /has-property-descriptors@1.0.2: - resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} - dependencies: - es-define-property: 1.0.1 - - /has-proto@1.0.1: - resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} - engines: {node: '>= 0.4'} - dev: true - - /has-proto@1.0.3: - resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==} - engines: {node: '>= 0.4'} - dev: true - - /has-symbols@1.0.3: - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} - engines: {node: '>= 0.4'} - dev: true - - /has-symbols@1.1.0: - resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} - engines: {node: '>= 0.4'} - - /has-tostringtag@1.0.0: - resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} - engines: {node: '>= 0.4'} - dependencies: - has-symbols: 1.1.0 - - /has-tostringtag@1.0.2: - resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} - engines: {node: '>= 0.4'} - dependencies: - has-symbols: 1.1.0 - - /hasown@2.0.0: - resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} - engines: {node: '>= 0.4'} - dependencies: - function-bind: 1.1.2 - dev: true - - /hasown@2.0.2: - resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} - engines: {node: '>= 0.4'} - dependencies: - function-bind: 1.1.2 - - /hast-util-embedded@3.0.0: - resolution: {integrity: sha512-naH8sld4Pe2ep03qqULEtvYr7EjrLK2QHY8KJR6RJkTUjPGObe1vnx585uzem2hGra+s1q08DZZpfgDVYRbaXA==} - dependencies: - '@types/hast': 3.0.4 - hast-util-is-element: 3.0.0 - dev: false - - /hast-util-format@1.1.0: - resolution: {integrity: sha512-yY1UDz6bC9rDvCWHpx12aIBGRG7krurX0p0Fm6pT547LwDIZZiNr8a+IHDogorAdreULSEzP82Nlv5SZkHZcjA==} - dependencies: - '@types/hast': 3.0.4 - hast-util-embedded: 3.0.0 - hast-util-minify-whitespace: 1.0.1 - hast-util-phrasing: 3.0.1 - hast-util-whitespace: 3.0.0 - html-whitespace-sensitive-tag-names: 3.0.1 - unist-util-visit-parents: 6.0.1 - dev: false - - /hast-util-from-html@2.0.3: - resolution: {integrity: sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==} - dependencies: - '@types/hast': 3.0.4 - devlop: 1.1.0 - hast-util-from-parse5: 8.0.3 - parse5: 7.1.2 - vfile: 6.0.1 - vfile-message: 4.0.2 - dev: false - - /hast-util-from-parse5@8.0.3: - resolution: {integrity: sha512-3kxEVkEKt0zvcZ3hCRYI8rqrgwtlIOFMWkbclACvjlDw8Li9S2hk/d51OI0nr/gIpdMHNepwgOKqZ/sy0Clpyg==} - dependencies: - '@types/hast': 3.0.4 - '@types/unist': 3.0.2 - devlop: 1.1.0 - hastscript: 9.0.1 - property-information: 7.0.0 - vfile: 6.0.1 - vfile-location: 5.0.3 - web-namespaces: 2.0.1 - dev: false - - /hast-util-has-property@3.0.0: - resolution: {integrity: sha512-MNilsvEKLFpV604hwfhVStK0usFY/QmM5zX16bo7EjnAEGofr5YyI37kzopBlZJkHD4t887i+q/C8/tr5Q94cA==} - dependencies: - '@types/hast': 3.0.4 - dev: false - - /hast-util-is-body-ok-link@3.0.1: - resolution: {integrity: sha512-0qpnzOBLztXHbHQenVB8uNuxTnm/QBFUOmdOSsEn7GnBtyY07+ENTWVFBAnXd/zEgd9/SUG3lRY7hSIBWRgGpQ==} - dependencies: - '@types/hast': 3.0.4 - dev: false - - /hast-util-is-element@3.0.0: - resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==} - dependencies: - '@types/hast': 3.0.4 - dev: false - - /hast-util-minify-whitespace@1.0.1: - resolution: {integrity: sha512-L96fPOVpnclQE0xzdWb/D12VT5FabA7SnZOUMtL1DbXmYiHJMXZvFkIZfiMmTCNJHUeO2K9UYNXoVyfz+QHuOw==} - dependencies: - '@types/hast': 3.0.4 - hast-util-embedded: 3.0.0 - hast-util-is-element: 3.0.0 - hast-util-whitespace: 3.0.0 - unist-util-is: 6.0.0 - dev: false - - /hast-util-parse-selector@2.2.5: - resolution: {integrity: sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==} - dev: false - - /hast-util-parse-selector@4.0.0: - resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} - dependencies: - '@types/hast': 3.0.4 - dev: false - - /hast-util-phrasing@3.0.1: - resolution: {integrity: sha512-6h60VfI3uBQUxHqTyMymMZnEbNl1XmEGtOxxKYL7stY2o601COo62AWAYBQR9lZbYXYSBoxag8UpPRXK+9fqSQ==} - dependencies: - '@types/hast': 3.0.4 - hast-util-embedded: 3.0.0 - hast-util-has-property: 3.0.0 - hast-util-is-body-ok-link: 3.0.1 - hast-util-is-element: 3.0.0 - dev: false - - /hast-util-raw@9.1.0: - resolution: {integrity: sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==} - dependencies: - '@types/hast': 3.0.4 - '@types/unist': 3.0.2 - '@ungap/structured-clone': 1.2.0 - hast-util-from-parse5: 8.0.3 - hast-util-to-parse5: 8.0.0 - html-void-elements: 3.0.0 - mdast-util-to-hast: 13.2.0 - parse5: 7.1.2 - unist-util-position: 5.0.0 - unist-util-visit: 5.0.0 - vfile: 6.0.1 - web-namespaces: 2.0.1 - zwitch: 2.0.4 - dev: false - - /hast-util-sanitize@5.0.2: - resolution: {integrity: sha512-3yTWghByc50aGS7JlGhk61SPenfE/p1oaFeNwkOOyrscaOkMGrcW9+Cy/QAIOBpZxP1yqDIzFMR0+Np0i0+usg==} - dependencies: - '@types/hast': 3.0.4 - '@ungap/structured-clone': 1.2.0 - unist-util-position: 5.0.0 - dev: false - - /hast-util-to-html@9.0.5: - resolution: {integrity: sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==} - dependencies: - '@types/hast': 3.0.4 - '@types/unist': 3.0.2 - ccount: 2.0.1 - comma-separated-tokens: 2.0.3 - hast-util-whitespace: 3.0.0 - html-void-elements: 3.0.0 - mdast-util-to-hast: 13.2.0 - property-information: 7.0.0 - space-separated-tokens: 2.0.2 - stringify-entities: 4.0.4 - zwitch: 2.0.4 - dev: false - - /hast-util-to-parse5@8.0.0: - resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} - dependencies: - '@types/hast': 3.0.4 - comma-separated-tokens: 2.0.3 - devlop: 1.1.0 - property-information: 6.4.0 - space-separated-tokens: 2.0.2 - web-namespaces: 2.0.1 - zwitch: 2.0.4 - dev: false - - /hast-util-to-text@4.0.2: - resolution: {integrity: sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==} - dependencies: - '@types/hast': 3.0.4 - '@types/unist': 3.0.2 - hast-util-is-element: 3.0.0 - unist-util-find-after: 5.0.0 - dev: false - - /hast-util-whitespace@2.0.1: - resolution: {integrity: sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==} - dev: false - - /hast-util-whitespace@3.0.0: - resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} - dependencies: - '@types/hast': 3.0.4 - dev: false - - /hastscript@6.0.0: - resolution: {integrity: sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==} - dependencies: - '@types/hast': 2.3.8 - comma-separated-tokens: 1.0.8 - hast-util-parse-selector: 2.2.5 - property-information: 5.6.0 - space-separated-tokens: 1.1.5 - dev: false - - /hastscript@9.0.1: - resolution: {integrity: sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==} - dependencies: - '@types/hast': 3.0.4 - comma-separated-tokens: 2.0.3 - hast-util-parse-selector: 4.0.0 - property-information: 7.0.0 - space-separated-tokens: 2.0.2 - dev: false - - /highlight.js@10.7.3: - resolution: {integrity: sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==} - dev: false - - /highlight.js@11.11.1: - resolution: {integrity: sha512-Xwwo44whKBVCYoliBQwaPvtd/2tYFkRQtXDWj1nackaV2JPXx3L0+Jvd8/qCJ2p+ML0/XVkJ2q+Mr+UVdpJK5w==} - engines: {node: '>=12.0.0'} - dev: false - - /highlightjs-curl@1.3.0: - resolution: {integrity: sha512-50UEfZq1KR0Lfk2Tr6xb/MUIZH3h10oNC0OTy9g7WELcs5Fgy/mKN1vEhuKTkKbdo8vr5F9GXstu2eLhApfQ3A==} - dev: false - - /hoist-non-react-statics@3.3.2: - resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} - dependencies: - react-is: 16.13.1 - dev: false - - /hookable@6.1.0: - resolution: {integrity: sha512-ZoKZSJgu8voGK2geJS+6YtYjvIzu9AOM/KZXsBxr83uhLL++e9pEv/dlgwgy3dvHg06kTz6JOh1hk3C8Ceiymw==} - dev: false - - /html-escaper@2.0.2: - resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} - dev: true - - /html-parse-stringify@3.0.1: - resolution: {integrity: sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==} - dependencies: - void-elements: 3.1.0 - dev: false - - /html-void-elements@3.0.0: - resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} - dev: false - - /html-whitespace-sensitive-tag-names@3.0.1: - resolution: {integrity: sha512-q+310vW8zmymYHALr1da4HyXUQ0zgiIwIicEfotYPWGN0OJVEN/58IJ3A4GBYcEq3LGAZqKb+ugvP0GNB9CEAA==} - dev: false - - /http-signature@1.2.0: - resolution: {integrity: sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==} - engines: {node: '>=0.8', npm: '>=1.3.7'} - dependencies: - assert-plus: 1.0.0 - jsprim: 1.4.2 - sshpk: 1.18.0 - dev: false - - /human-signals@5.0.0: - resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} - engines: {node: '>=16.17.0'} - dev: true - - /husky@9.1.4: - resolution: {integrity: sha512-bho94YyReb4JV7LYWRWxZ/xr6TtOTt8cMfmQ39MQYJ7f/YE268s3GdghGwi+y4zAeqewE5zYLvuhV0M0ijsDEA==} - engines: {node: '>=18'} - hasBin: true - dev: true - - /i18next-fs-backend@2.3.1: - resolution: {integrity: sha512-tvfXskmG/9o+TJ5Fxu54sSO5OkY6d+uMn+K6JiUGLJrwxAVfer+8V3nU8jq3ts9Pe5lXJv4b1N7foIjJ8Iy2Gg==} - dev: false - - /i18next@23.12.1: - resolution: {integrity: sha512-l4y291ZGRgUhKuqVSiqyuU2DDzxKStlIWSaoNBR4grYmh0X+pRYbFpTMs3CnJ5ECKbOI8sQcJ3PbTUfLgPRaMA==} - dependencies: - '@babel/runtime': 7.26.0 - dev: false - - /identifier-regex@1.0.1: - resolution: {integrity: sha512-ZrYyM0sozNPZlvBvE7Oq9Bn44n0qKGrYu5sQ0JzMUnjIhpgWYE2JB6aBoFwEYdPjqj7jPyxXTMJiHDOxDfd8yw==} - engines: {node: '>=18'} - dependencies: - reserved-identifiers: 1.2.0 - dev: false - - /ieee754@1.2.1: - resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} - dev: false - - /ignore@5.3.0: - resolution: {integrity: sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==} - engines: {node: '>= 4'} - dev: true - - /ignore@5.3.2: - resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} - engines: {node: '>= 4'} - dev: true - - /immediate@3.0.6: - resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==} - dev: false - - /immer@10.2.0: - resolution: {integrity: sha512-d/+XTN3zfODyjr89gM3mPq1WNX2B8pYsu7eORitdwyA2sBubnTl3laYlBk4sXY5FUa5qTZGBDPJICVbvqzjlbw==} - dev: false - - /immutable@4.3.4: - resolution: {integrity: sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==} - dev: false - - /import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} - engines: {node: '>=6'} - dependencies: - parent-module: 1.0.1 - resolve-from: 4.0.0 - - /imurmurhash@0.1.4: - resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} - engines: {node: '>=0.8.19'} - dev: true - - /inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} - dependencies: - once: 1.4.0 - wrappy: 1.0.2 - - /inherits@2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - - /ini@1.3.8: - resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} - dev: false - - /ini@4.1.3: - resolution: {integrity: sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dev: false - - /inline-style-parser@0.1.1: - resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==} - dev: false - - /internal-slot@1.0.6: - resolution: {integrity: sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==} - engines: {node: '>= 0.4'} - dependencies: - get-intrinsic: 1.2.4 - hasown: 2.0.2 - side-channel: 1.0.4 - dev: true - - /internal-slot@1.0.7: - resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} - engines: {node: '>= 0.4'} - dependencies: - es-errors: 1.3.0 - hasown: 2.0.2 - side-channel: 1.1.0 - dev: true - - /ipaddr.js@2.1.0: - resolution: {integrity: sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ==} - engines: {node: '>= 10'} - dev: false - - /is-absolute-url@4.0.1: - resolution: {integrity: sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: false - - /is-alphabetical@1.0.4: - resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==} - dev: false - - /is-alphanumerical@1.0.4: - resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==} - dependencies: - is-alphabetical: 1.0.4 - is-decimal: 1.0.4 - dev: false - - /is-arguments@1.1.1: - resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - has-tostringtag: 1.0.0 - dev: false - - /is-array-buffer@3.0.2: - resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} - dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.3.0 - is-typed-array: 1.1.12 - dev: true - - /is-array-buffer@3.0.4: - resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - get-intrinsic: 1.3.0 - dev: true - - /is-arrayish@0.2.1: - resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} - - /is-arrayish@0.3.2: - resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} - dev: false - - /is-async-function@2.0.0: - resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} - engines: {node: '>= 0.4'} - dependencies: - has-tostringtag: 1.0.2 - dev: true - - /is-bigint@1.0.4: - resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} - dependencies: - has-bigints: 1.0.2 - dev: true - - /is-binary-path@2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} - dependencies: - binary-extensions: 2.2.0 - - /is-boolean-object@1.1.2: - resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - has-tostringtag: 1.0.2 - dev: true - - /is-buffer@2.0.5: - resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} - engines: {node: '>=4'} - dev: false - - /is-builtin-module@3.2.1: - resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} - engines: {node: '>=6'} - dependencies: - builtin-modules: 3.3.0 - dev: true - - /is-callable@1.2.7: - resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} - engines: {node: '>= 0.4'} - - /is-core-module@2.15.1: - resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==} - engines: {node: '>= 0.4'} - dependencies: - hasown: 2.0.2 - - /is-data-view@1.0.1: - resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==} - engines: {node: '>= 0.4'} - dependencies: - is-typed-array: 1.1.15 - dev: true - - /is-date-object@1.0.5: - resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} - engines: {node: '>= 0.4'} - dependencies: - has-tostringtag: 1.0.0 - dev: true - - /is-decimal@1.0.4: - resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==} - dev: false - - /is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} - - /is-finalizationregistry@1.0.2: - resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} - dependencies: - call-bind: 1.0.7 - dev: true - - /is-fullwidth-code-point@4.0.0: - resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} - engines: {node: '>=12'} - dev: true - - /is-fullwidth-code-point@5.0.0: - resolution: {integrity: sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==} - engines: {node: '>=18'} - dependencies: - get-east-asian-width: 1.2.0 - dev: true - - /is-generator-function@1.0.10: - resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} - engines: {node: '>= 0.4'} - dependencies: - has-tostringtag: 1.0.0 - - /is-glob@4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} - engines: {node: '>=0.10.0'} - dependencies: - is-extglob: 2.1.1 - - /is-hexadecimal@1.0.4: - resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==} - dev: false - - /is-identifier@1.0.1: - resolution: {integrity: sha512-HQ5v4rEJ7REUV54bCd2l5FaD299SGDEn2UPoVXaTHAyGviLq2menVUD2udi3trQ32uvB6LdAh/0ck2EuizrtpA==} - engines: {node: '>=18'} - dependencies: - identifier-regex: 1.0.1 - super-regex: 1.1.0 - dev: false - - /is-map@2.0.2: - resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==} - dev: true - - /is-module@1.0.0: - resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} - dev: true - - /is-negative-zero@2.0.2: - resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} - engines: {node: '>= 0.4'} - dev: true - - /is-negative-zero@2.0.3: - resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} - engines: {node: '>= 0.4'} - dev: true - - /is-number-object@1.0.7: - resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} - engines: {node: '>= 0.4'} - dependencies: - has-tostringtag: 1.0.2 - dev: true - - /is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} - - /is-obj@3.0.0: - resolution: {integrity: sha512-IlsXEHOjtKhpN8r/tRFj2nDyTmHvcfNeu/nrRIcXE17ROeatXchkojffa1SpdqW4cr/Fj6QkEf/Gn4zf6KKvEQ==} - engines: {node: '>=12'} - dev: false - - /is-path-inside@3.0.3: - resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} - engines: {node: '>=8'} - dev: true - - /is-plain-obj@4.1.0: - resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} - engines: {node: '>=12'} - dev: false - - /is-plain-object@5.0.0: - resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} - engines: {node: '>=0.10.0'} - dev: true - - /is-reference@1.2.1: - resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==} - dependencies: - '@types/estree': 1.0.8 - dev: true - - /is-regex@1.1.4: - resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - has-tostringtag: 1.0.2 - dev: true - - /is-regexp@3.1.0: - resolution: {integrity: sha512-rbku49cWloU5bSMI+zaRaXdQHXnthP6DZ/vLnfdSKyL4zUzuWnomtOEiZZOd+ioQ+avFo/qau3KPTc7Fjy1uPA==} - engines: {node: '>=12'} - dev: false - - /is-set@2.0.2: - resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} - dev: true - - /is-shared-array-buffer@1.0.2: - resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} - dependencies: - call-bind: 1.0.7 - dev: true - - /is-shared-array-buffer@1.0.3: - resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - dev: true - - /is-stream@3.0.0: - resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: true - - /is-string@1.0.7: - resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} - engines: {node: '>= 0.4'} - dependencies: - has-tostringtag: 1.0.2 - dev: true - - /is-symbol@1.0.4: - resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} - engines: {node: '>= 0.4'} - dependencies: - has-symbols: 1.1.0 - dev: true - - /is-typed-array@1.1.12: - resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} - engines: {node: '>= 0.4'} - dependencies: - which-typed-array: 1.1.19 - - /is-typed-array@1.1.13: - resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==} - engines: {node: '>= 0.4'} - dependencies: - which-typed-array: 1.1.19 - dev: true - - /is-typed-array@1.1.15: - resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} - engines: {node: '>= 0.4'} - dependencies: - which-typed-array: 1.1.19 - dev: true - - /is-typedarray@1.0.0: - resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} - dev: false - - /is-weakmap@2.0.1: - resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} - dev: true - - /is-weakref@1.0.2: - resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} - dependencies: - call-bind: 1.0.8 - dev: true - - /is-weakset@2.0.2: - resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==} - dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.3.0 - dev: true - - /isarray@1.0.0: - resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} - dev: false - - /isarray@2.0.5: - resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} - dev: true - - /isexe@2.0.0: - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - dev: true - - /isomorphic-ws@5.0.0(ws@8.14.2): - resolution: {integrity: sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw==} - peerDependencies: - ws: '*' - dependencies: - ws: 8.14.2 - dev: false - - /isstream@0.1.2: - resolution: {integrity: sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==} - dev: false - - /iterator.prototype@1.1.2: - resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==} - dependencies: - define-properties: 1.2.1 - get-intrinsic: 1.2.4 - has-symbols: 1.0.3 - reflect.getprototypeof: 1.0.4 - set-function-name: 2.0.1 - dev: true - - /jest-worker@26.6.2: - resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==} - engines: {node: '>= 10.13.0'} - dependencies: - '@types/node': 20.17.32 - merge-stream: 2.0.0 - supports-color: 7.2.0 - dev: true - - /jose@4.15.4: - resolution: {integrity: sha512-W+oqK4H+r5sITxfxpSU+MMdr/YSWGvgZMQDIsNoBDGGy4i7GBPTtvFKibQzW06n3U3TqHjhvBJsirShsEJ6eeQ==} - requiresBuild: true - dev: false - optional: true - - /js-base64@3.7.8: - resolution: {integrity: sha512-hNngCeKxIUQiEUN3GPJOkz4wF/YvdUdbNL9hsBcMQTkKzboD7T/q3OYOuuPZLUE6dBxSGpwhk5mwuDud7JVAow==} - dev: false - - /js-cookie@3.0.5: - resolution: {integrity: sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==} - engines: {node: '>=14'} - dev: false - - /js-sdsl@4.4.2: - resolution: {integrity: sha512-dwXFwByc/ajSV6m5bcKAPwe4yDDF6D614pxmIi5odytzxRlwqF6nwoiCek80Ixc7Cvma5awClxrzFtxCQvcM8w==} - dev: true - - /js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - - /js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} - hasBin: true - dependencies: - argparse: 2.0.1 - - /jsbn@0.1.1: - resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==} - dev: false - - /jsesc@0.5.0: - resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} - hasBin: true - dev: true - - /jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} - hasBin: true - - /json-buffer@3.0.1: - resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} - dev: true - - /json-parse-even-better-errors@2.3.1: - resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} - - /json-schema-traverse@0.4.1: - resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} - - /json-schema-traverse@1.0.0: - resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} - dev: false - - /json-schema@0.4.0: - resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} - dev: false - - /json-stable-stringify-without-jsonify@1.0.1: - resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} - dev: true - - /json-stream@1.0.0: - resolution: {integrity: sha512-H/ZGY0nIAg3QcOwE1QN/rK/Fa7gJn7Ii5obwp6zyPO4xiPNwpIMjqy2gwjBEGqzkF/vSWEIBQCBuN19hYiL6Qg==} - dev: false - - /json-stringify-safe@5.0.1: - resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} - dev: false - - /json5@1.0.2: - resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} - hasBin: true - dependencies: - minimist: 1.2.8 - dev: true - - /json5@2.2.3: - resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} - engines: {node: '>=6'} - hasBin: true - - /jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} - dependencies: - universalify: 2.0.1 - optionalDependencies: - graceful-fs: 4.2.11 - dev: true - - /jsonpath-plus@7.2.0: - resolution: {integrity: sha512-zBfiUPM5nD0YZSBT/o/fbCUlCcepMIdP0CJZxM1+KgA4f2T206f6VAg9e7mX35+KlMaIc5qXW34f3BnwJ3w+RA==} - engines: {node: '>=12.0.0'} - dev: false - - /jsonpointer@5.0.1: - resolution: {integrity: sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==} - engines: {node: '>=0.10.0'} - dev: false - - /jsprim@1.4.2: - resolution: {integrity: sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==} - engines: {node: '>=0.6.0'} - dependencies: - assert-plus: 1.0.0 - extsprintf: 1.3.0 - json-schema: 0.4.0 - verror: 1.10.0 - dev: false - - /jsx-ast-utils@3.3.5: - resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} - engines: {node: '>=4.0'} - dependencies: - array-includes: 3.1.8 - array.prototype.flat: 1.3.2 - object.assign: 4.1.4 - object.values: 1.2.0 - dev: true - - /jszip@3.10.1: - resolution: {integrity: sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==} - dependencies: - lie: 3.3.0 - pako: 1.0.11 - readable-stream: 2.3.8 - setimmediate: 1.0.5 - dev: false - - /just-clone@6.2.0: - resolution: {integrity: sha512-1IynUYEc/HAwxhi3WDpIpxJbZpMCvvrrmZVqvj9EhpvbH8lls7HhdhiByjL7DkAaWlLIzpC0Xc/VPvy/UxLNjA==} - dev: false - - /keyv@4.5.4: - resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} - dependencies: - json-buffer: 3.0.1 - dev: true - - /kleur@4.1.5: - resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} - engines: {node: '>=6'} - dev: false - - /language-subtag-registry@0.3.22: - resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} - dev: true - - /language-tags@1.0.9: - resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} - engines: {node: '>=0.10'} - dependencies: - language-subtag-registry: 0.3.22 - dev: true - - /leven@4.0.0: - resolution: {integrity: sha512-puehA3YKku3osqPlNuzGDUHq8WpwXupUg1V6NXdV38G+gr+gkBwFC8g1b/+YcIvp8gnqVIus+eJCH/eGsRmJNw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: false - - /levn@0.4.1: - resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} - engines: {node: '>= 0.8.0'} - dependencies: - prelude-ls: 1.2.1 - type-check: 0.4.0 - dev: true - - /lie@3.3.0: - resolution: {integrity: sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==} - dependencies: - immediate: 3.0.6 - dev: false - - /lilconfig@3.1.2: - resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==} - engines: {node: '>=14'} - dev: true - - /lines-and-columns@1.2.4: - resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - - /lint-staged@15.2.9: - resolution: {integrity: sha512-BZAt8Lk3sEnxw7tfxM7jeZlPRuT4M68O0/CwZhhaw6eeWu0Lz5eERE3m386InivXB64fp/mDID452h48tvKlRQ==} - engines: {node: '>=18.12.0'} - hasBin: true - dependencies: - chalk: 5.3.0 - commander: 12.1.0 - debug: 4.3.6 - execa: 8.0.1 - lilconfig: 3.1.2 - listr2: 8.2.4 - micromatch: 4.0.7 - pidtree: 0.6.0 - string-argv: 0.3.2 - yaml: 2.5.0 - transitivePeerDependencies: - - supports-color - dev: true - - /listr2@8.2.4: - resolution: {integrity: sha512-opevsywziHd3zHCVQGAj8zu+Z3yHNkkoYhWIGnq54RrCVwLz0MozotJEDnKsIBLvkfLGN6BLOyAeRrYI0pKA4g==} - engines: {node: '>=18.0.0'} - dependencies: - cli-truncate: 4.0.0 - colorette: 2.0.20 - eventemitter3: 5.0.1 - log-update: 6.1.0 - rfdc: 1.4.1 - wrap-ansi: 9.0.0 - dev: true - - /loader-utils@1.4.2: - resolution: {integrity: sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==} - engines: {node: '>=4.0.0'} - dependencies: - big.js: 5.2.2 - emojis-list: 3.0.0 - json5: 1.0.2 - dev: true - - /locate-path@5.0.0: - resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} - engines: {node: '>=8'} - dependencies: - p-locate: 4.1.0 - dev: true - - /locate-path@6.0.0: - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} - engines: {node: '>=10'} - dependencies: - p-locate: 5.0.0 - dev: true - - /lodash.debounce@4.0.8: - resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} - dev: true - - /lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - dev: true - - /lodash.mergewith@4.6.2: - resolution: {integrity: sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==} - dev: false - - /lodash@4.17.21: - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - dev: false - - /log-symbols@3.0.0: - resolution: {integrity: sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==} - engines: {node: '>=8'} - dependencies: - chalk: 2.4.2 - dev: true - - /log-update@6.1.0: - resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==} - engines: {node: '>=18'} - dependencies: - ansi-escapes: 7.0.0 - cli-cursor: 5.0.0 - slice-ansi: 7.1.0 - strip-ansi: 7.1.0 - wrap-ansi: 9.0.0 - dev: true - - /longest-streak@3.1.0: - resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} - dev: false - - /loose-envify@1.4.0: - resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} - hasBin: true - dependencies: - js-tokens: 4.0.0 - - /lowlight@1.20.0: - resolution: {integrity: sha512-8Ktj+prEb1RoCPkEOrPMYUN/nCggB7qAWe3a7OpMjWQkh3l2RD5wKRQ+o8Q8YuI9RG/xs95waaI/E6ym/7NsTw==} - dependencies: - fault: 1.0.4 - highlight.js: 10.7.3 - dev: false - - /lowlight@3.3.0: - resolution: {integrity: sha512-0JNhgFoPvP6U6lE/UdVsSq99tn6DhjjpAj5MxG49ewd2mOBVtwWYIT8ClyABhq198aXXODMU6Ox8DrGy/CpTZQ==} - dependencies: - '@types/hast': 3.0.4 - devlop: 1.1.0 - highlight.js: 11.11.1 - dev: false - - /lru-cache@5.1.1: - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} - dependencies: - yallist: 3.1.1 - - /lru-cache@6.0.0: - resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} - engines: {node: '>=10'} - requiresBuild: true - dependencies: - yallist: 4.0.0 - - /lucide-react@0.511.0(react@18.2.0): - resolution: {integrity: sha512-VK5a2ydJ7xm8GvBeKLS9mu1pVK6ucef9780JVUjw6bAjJL/QXnd4Y0p7SPeOUMC27YhzNCZvm5d/QX0Tp3rc0w==} - peerDependencies: - react: 18.2.0 - dependencies: - react: 18.2.0 - dev: false - - /magic-string@0.26.7: - resolution: {integrity: sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==} - engines: {node: '>=12'} - dependencies: - sourcemap-codec: 1.4.8 - dev: true - - /magic-string@0.30.17: - resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} - dependencies: - '@jridgewell/sourcemap-codec': 1.5.0 - dev: true - - /magic-string@0.30.21: - resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} - dependencies: - '@jridgewell/sourcemap-codec': 1.5.5 - dev: false - - /make-asynchronous@1.1.0: - resolution: {integrity: sha512-ayF7iT+44LXdxJLTrTd3TLQpFDDvPCBxXxbv+pMUSuHA5Q8zyAfwkRP6aHHwNVFBUFWtxAHqwNJxF8vMZLAbVg==} - engines: {node: '>=18'} - dependencies: - p-event: 6.0.1 - type-fest: 4.40.1 - web-worker: 1.5.0 - dev: false - - /make-dir@3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} - engines: {node: '>=8'} - dependencies: - semver: 6.3.1 - dev: true - - /markdown-table@3.0.3: - resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} - dev: false - - /math-intrinsics@1.1.0: - resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} - engines: {node: '>= 0.4'} - - /mdast-util-definitions@5.1.2: - resolution: {integrity: sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==} - dependencies: - '@types/mdast': 3.0.15 - '@types/unist': 2.0.10 - unist-util-visit: 4.1.2 - dev: false - - /mdast-util-find-and-replace@3.0.1: - resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==} - dependencies: - '@types/mdast': 4.0.3 - escape-string-regexp: 5.0.0 - unist-util-is: 6.0.0 - unist-util-visit-parents: 6.0.1 - dev: false - - /mdast-util-from-markdown@1.3.1: - resolution: {integrity: sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==} - dependencies: - '@types/mdast': 3.0.15 - '@types/unist': 2.0.10 - decode-named-character-reference: 1.0.2 - mdast-util-to-string: 3.2.0 - micromark: 3.2.0 - micromark-util-decode-numeric-character-reference: 1.1.0 - micromark-util-decode-string: 1.1.0 - micromark-util-normalize-identifier: 1.1.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - unist-util-stringify-position: 3.0.3 - uvu: 0.5.6 - transitivePeerDependencies: - - supports-color - dev: false - - /mdast-util-from-markdown@2.0.2: - resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==} - dependencies: - '@types/mdast': 4.0.3 - '@types/unist': 3.0.2 - decode-named-character-reference: 1.0.2 - devlop: 1.1.0 - mdast-util-to-string: 4.0.0 - micromark: 4.0.2 - micromark-util-decode-numeric-character-reference: 2.0.2 - micromark-util-decode-string: 2.0.1 - micromark-util-normalize-identifier: 2.0.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - unist-util-stringify-position: 4.0.0 - transitivePeerDependencies: - - supports-color - dev: false - - /mdast-util-gfm-autolink-literal@2.0.1: - resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==} - dependencies: - '@types/mdast': 4.0.3 - ccount: 2.0.1 - devlop: 1.1.0 - mdast-util-find-and-replace: 3.0.1 - micromark-util-character: 2.1.1 - dev: false - - /mdast-util-gfm-footnote@2.1.0: - resolution: {integrity: sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==} - dependencies: - '@types/mdast': 4.0.3 - devlop: 1.1.0 - mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.2 - micromark-util-normalize-identifier: 2.0.1 - transitivePeerDependencies: - - supports-color - dev: false - - /mdast-util-gfm-strikethrough@2.0.0: - resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} - dependencies: - '@types/mdast': 4.0.3 - mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.2 - transitivePeerDependencies: - - supports-color - dev: false - - /mdast-util-gfm-table@2.0.0: - resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} - dependencies: - '@types/mdast': 4.0.3 - devlop: 1.1.0 - markdown-table: 3.0.3 - mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.2 - transitivePeerDependencies: - - supports-color - dev: false - - /mdast-util-gfm-task-list-item@2.0.0: - resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} - dependencies: - '@types/mdast': 4.0.3 - devlop: 1.1.0 - mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.2 - transitivePeerDependencies: - - supports-color - dev: false - - /mdast-util-gfm@3.1.0: - resolution: {integrity: sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==} - dependencies: - mdast-util-from-markdown: 2.0.2 - mdast-util-gfm-autolink-literal: 2.0.1 - mdast-util-gfm-footnote: 2.1.0 - mdast-util-gfm-strikethrough: 2.0.0 - mdast-util-gfm-table: 2.0.0 - mdast-util-gfm-task-list-item: 2.0.0 - mdast-util-to-markdown: 2.1.2 - transitivePeerDependencies: - - supports-color - dev: false - - /mdast-util-phrasing@4.1.0: - resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} - dependencies: - '@types/mdast': 4.0.3 - unist-util-is: 6.0.0 - dev: false - - /mdast-util-to-hast@12.3.0: - resolution: {integrity: sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==} - dependencies: - '@types/hast': 2.3.8 - '@types/mdast': 3.0.15 - mdast-util-definitions: 5.1.2 - micromark-util-sanitize-uri: 1.2.0 - trim-lines: 3.0.1 - unist-util-generated: 2.0.1 - unist-util-position: 4.0.4 - unist-util-visit: 4.1.2 - dev: false - - /mdast-util-to-hast@13.2.0: - resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==} - dependencies: - '@types/hast': 3.0.4 - '@types/mdast': 4.0.3 - '@ungap/structured-clone': 1.2.0 - devlop: 1.1.0 - micromark-util-sanitize-uri: 2.0.1 - trim-lines: 3.0.1 - unist-util-position: 5.0.0 - unist-util-visit: 5.0.0 - vfile: 6.0.1 - dev: false - - /mdast-util-to-markdown@2.1.2: - resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==} - dependencies: - '@types/mdast': 4.0.3 - '@types/unist': 3.0.2 - longest-streak: 3.1.0 - mdast-util-phrasing: 4.1.0 - mdast-util-to-string: 4.0.0 - micromark-util-classify-character: 2.0.1 - micromark-util-decode-string: 2.0.1 - unist-util-visit: 5.0.0 - zwitch: 2.0.4 - dev: false - - /mdast-util-to-string@3.2.0: - resolution: {integrity: sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==} - dependencies: - '@types/mdast': 3.0.15 - dev: false - - /mdast-util-to-string@4.0.0: - resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} - dependencies: - '@types/mdast': 4.0.3 - dev: false - - /mdn-data@2.0.14: - resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} - dev: true - - /media-typer@0.3.0: - resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} - engines: {node: '>= 0.6'} - dev: false - - /merge-stream@2.0.0: - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - dev: true - - /merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - dev: true - - /microdiff@1.5.0: - resolution: {integrity: sha512-Drq+/THMvDdzRYrK0oxJmOKiC24ayUV8ahrt8l3oRK51PWt6gdtrIGrlIH3pT/lFh1z93FbAcidtsHcWbnRz8Q==} - dev: false - - /micromark-core-commonmark@1.1.0: - resolution: {integrity: sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==} - dependencies: - decode-named-character-reference: 1.0.2 - micromark-factory-destination: 1.1.0 - micromark-factory-label: 1.1.0 - micromark-factory-space: 1.1.0 - micromark-factory-title: 1.1.0 - micromark-factory-whitespace: 1.1.0 - micromark-util-character: 1.2.0 - micromark-util-chunked: 1.1.0 - micromark-util-classify-character: 1.1.0 - micromark-util-html-tag-name: 1.2.0 - micromark-util-normalize-identifier: 1.1.0 - micromark-util-resolve-all: 1.1.0 - micromark-util-subtokenize: 1.1.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - uvu: 0.5.6 - dev: false - - /micromark-core-commonmark@2.0.3: - resolution: {integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==} - dependencies: - decode-named-character-reference: 1.0.2 - devlop: 1.1.0 - micromark-factory-destination: 2.0.1 - micromark-factory-label: 2.0.1 - micromark-factory-space: 2.0.1 - micromark-factory-title: 2.0.1 - micromark-factory-whitespace: 2.0.1 - micromark-util-character: 2.1.1 - micromark-util-chunked: 2.0.1 - micromark-util-classify-character: 2.0.1 - micromark-util-html-tag-name: 2.0.1 - micromark-util-normalize-identifier: 2.0.1 - micromark-util-resolve-all: 2.0.1 - micromark-util-subtokenize: 2.1.0 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-extension-gfm-autolink-literal@2.1.0: - resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==} - dependencies: - micromark-util-character: 2.1.1 - micromark-util-sanitize-uri: 2.0.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-extension-gfm-footnote@2.1.0: - resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==} - dependencies: - devlop: 1.1.0 - micromark-core-commonmark: 2.0.3 - micromark-factory-space: 2.0.1 - micromark-util-character: 2.1.1 - micromark-util-normalize-identifier: 2.0.1 - micromark-util-sanitize-uri: 2.0.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-extension-gfm-strikethrough@2.1.0: - resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==} - dependencies: - devlop: 1.1.0 - micromark-util-chunked: 2.0.1 - micromark-util-classify-character: 2.0.1 - micromark-util-resolve-all: 2.0.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-extension-gfm-table@2.1.1: - resolution: {integrity: sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==} - dependencies: - devlop: 1.1.0 - micromark-factory-space: 2.0.1 - micromark-util-character: 2.1.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-extension-gfm-tagfilter@2.0.0: - resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} - dependencies: - micromark-util-types: 2.0.2 - dev: false - - /micromark-extension-gfm-task-list-item@2.1.0: - resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==} - dependencies: - devlop: 1.1.0 - micromark-factory-space: 2.0.1 - micromark-util-character: 2.1.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-extension-gfm@3.0.0: - resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} - dependencies: - micromark-extension-gfm-autolink-literal: 2.1.0 - micromark-extension-gfm-footnote: 2.1.0 - micromark-extension-gfm-strikethrough: 2.1.0 - micromark-extension-gfm-table: 2.1.1 - micromark-extension-gfm-tagfilter: 2.0.0 - micromark-extension-gfm-task-list-item: 2.1.0 - micromark-util-combine-extensions: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-factory-destination@1.1.0: - resolution: {integrity: sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==} - dependencies: - micromark-util-character: 1.2.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - dev: false - - /micromark-factory-destination@2.0.1: - resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==} - dependencies: - micromark-util-character: 2.1.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-factory-label@1.1.0: - resolution: {integrity: sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==} - dependencies: - micromark-util-character: 1.2.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - uvu: 0.5.6 - dev: false - - /micromark-factory-label@2.0.1: - resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==} - dependencies: - devlop: 1.1.0 - micromark-util-character: 2.1.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-factory-space@1.1.0: - resolution: {integrity: sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==} - dependencies: - micromark-util-character: 1.2.0 - micromark-util-types: 1.1.0 - dev: false - - /micromark-factory-space@2.0.1: - resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==} - dependencies: - micromark-util-character: 2.1.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-factory-title@1.1.0: - resolution: {integrity: sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==} - dependencies: - micromark-factory-space: 1.1.0 - micromark-util-character: 1.2.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - dev: false - - /micromark-factory-title@2.0.1: - resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==} - dependencies: - micromark-factory-space: 2.0.1 - micromark-util-character: 2.1.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-factory-whitespace@1.1.0: - resolution: {integrity: sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==} - dependencies: - micromark-factory-space: 1.1.0 - micromark-util-character: 1.2.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - dev: false - - /micromark-factory-whitespace@2.0.1: - resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==} - dependencies: - micromark-factory-space: 2.0.1 - micromark-util-character: 2.1.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-util-character@1.2.0: - resolution: {integrity: sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==} - dependencies: - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - dev: false - - /micromark-util-character@2.1.1: - resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==} - dependencies: - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-util-chunked@1.1.0: - resolution: {integrity: sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==} - dependencies: - micromark-util-symbol: 1.1.0 - dev: false - - /micromark-util-chunked@2.0.1: - resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==} - dependencies: - micromark-util-symbol: 2.0.1 - dev: false - - /micromark-util-classify-character@1.1.0: - resolution: {integrity: sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==} - dependencies: - micromark-util-character: 1.2.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - dev: false - - /micromark-util-classify-character@2.0.1: - resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==} - dependencies: - micromark-util-character: 2.1.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-util-combine-extensions@1.1.0: - resolution: {integrity: sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==} - dependencies: - micromark-util-chunked: 1.1.0 - micromark-util-types: 1.1.0 - dev: false - - /micromark-util-combine-extensions@2.0.1: - resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==} - dependencies: - micromark-util-chunked: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-util-decode-numeric-character-reference@1.1.0: - resolution: {integrity: sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==} - dependencies: - micromark-util-symbol: 1.1.0 - dev: false - - /micromark-util-decode-numeric-character-reference@2.0.2: - resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==} - dependencies: - micromark-util-symbol: 2.0.1 - dev: false - - /micromark-util-decode-string@1.1.0: - resolution: {integrity: sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==} - dependencies: - decode-named-character-reference: 1.0.2 - micromark-util-character: 1.2.0 - micromark-util-decode-numeric-character-reference: 1.1.0 - micromark-util-symbol: 1.1.0 - dev: false - - /micromark-util-decode-string@2.0.1: - resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==} - dependencies: - decode-named-character-reference: 1.0.2 - micromark-util-character: 2.1.1 - micromark-util-decode-numeric-character-reference: 2.0.2 - micromark-util-symbol: 2.0.1 - dev: false - - /micromark-util-encode@1.1.0: - resolution: {integrity: sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==} - dev: false - - /micromark-util-encode@2.0.1: - resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==} - dev: false - - /micromark-util-html-tag-name@1.2.0: - resolution: {integrity: sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==} - dev: false - - /micromark-util-html-tag-name@2.0.1: - resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==} - dev: false - - /micromark-util-normalize-identifier@1.1.0: - resolution: {integrity: sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==} - dependencies: - micromark-util-symbol: 1.1.0 - dev: false - - /micromark-util-normalize-identifier@2.0.1: - resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==} - dependencies: - micromark-util-symbol: 2.0.1 - dev: false - - /micromark-util-resolve-all@1.1.0: - resolution: {integrity: sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==} - dependencies: - micromark-util-types: 1.1.0 - dev: false - - /micromark-util-resolve-all@2.0.1: - resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==} - dependencies: - micromark-util-types: 2.0.2 - dev: false - - /micromark-util-sanitize-uri@1.2.0: - resolution: {integrity: sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==} - dependencies: - micromark-util-character: 1.2.0 - micromark-util-encode: 1.1.0 - micromark-util-symbol: 1.1.0 - dev: false - - /micromark-util-sanitize-uri@2.0.1: - resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} - dependencies: - micromark-util-character: 2.1.1 - micromark-util-encode: 2.0.1 - micromark-util-symbol: 2.0.1 - dev: false - - /micromark-util-subtokenize@1.1.0: - resolution: {integrity: sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==} - dependencies: - micromark-util-chunked: 1.1.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - uvu: 0.5.6 - dev: false - - /micromark-util-subtokenize@2.1.0: - resolution: {integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==} - dependencies: - devlop: 1.1.0 - micromark-util-chunked: 2.0.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - dev: false - - /micromark-util-symbol@1.1.0: - resolution: {integrity: sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==} - dev: false - - /micromark-util-symbol@2.0.1: - resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} - dev: false - - /micromark-util-types@1.1.0: - resolution: {integrity: sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==} - dev: false - - /micromark-util-types@2.0.2: - resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==} - dev: false - - /micromark@3.2.0: - resolution: {integrity: sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==} - dependencies: - '@types/debug': 4.1.12 - debug: 4.4.1 - decode-named-character-reference: 1.0.2 - micromark-core-commonmark: 1.1.0 - micromark-factory-space: 1.1.0 - micromark-util-character: 1.2.0 - micromark-util-chunked: 1.1.0 - micromark-util-combine-extensions: 1.1.0 - micromark-util-decode-numeric-character-reference: 1.1.0 - micromark-util-encode: 1.1.0 - micromark-util-normalize-identifier: 1.1.0 - micromark-util-resolve-all: 1.1.0 - micromark-util-sanitize-uri: 1.2.0 - micromark-util-subtokenize: 1.1.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - uvu: 0.5.6 - transitivePeerDependencies: - - supports-color - dev: false - - /micromark@4.0.2: - resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==} - dependencies: - '@types/debug': 4.1.12 - debug: 4.4.1 - decode-named-character-reference: 1.0.2 - devlop: 1.1.0 - micromark-core-commonmark: 2.0.3 - micromark-factory-space: 2.0.1 - micromark-util-character: 2.1.1 - micromark-util-chunked: 2.0.1 - micromark-util-combine-extensions: 2.0.1 - micromark-util-decode-numeric-character-reference: 2.0.2 - micromark-util-encode: 2.0.1 - micromark-util-normalize-identifier: 2.0.1 - micromark-util-resolve-all: 2.0.1 - micromark-util-sanitize-uri: 2.0.1 - micromark-util-subtokenize: 2.1.0 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - transitivePeerDependencies: - - supports-color - dev: false - - /micromatch@4.0.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} - engines: {node: '>=8.6'} - dependencies: - braces: 3.0.3 - picomatch: 2.3.1 - dev: true - - /micromatch@4.0.7: - resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} - engines: {node: '>=8.6'} - dependencies: - braces: 3.0.3 - picomatch: 2.3.1 - dev: true - - /mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} - dev: false - - /mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} - dependencies: - mime-db: 1.52.0 - dev: false - - /mimic-fn@4.0.0: - resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} - engines: {node: '>=12'} - dev: true - - /mimic-function@5.0.1: - resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} - engines: {node: '>=18'} - dev: true - - /mimic-response@3.1.0: - resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} - engines: {node: '>=10'} - dev: false - - /minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} - dependencies: - brace-expansion: 1.1.11 - - /minimatch@5.1.6: - resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} - engines: {node: '>=10'} - dependencies: - brace-expansion: 2.0.1 - dev: true - - /minimist@1.2.8: - resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - - /minio@7.1.3: - resolution: {integrity: sha512-xPrLjWkTT5E7H7VnzOjF//xBp9I40jYB4aWhb2xTFopXXfw+Wo82DDWngdUju7Doy3Wk7R8C4LAgwhLHHnf0wA==} - engines: {node: ^16 || ^18 || >=20} - dependencies: - async: 3.2.5 - block-stream2: 2.1.0 - browser-or-node: 2.1.1 - buffer-crc32: 0.2.13 - fast-xml-parser: 4.3.2 - ipaddr.js: 2.1.0 - json-stream: 1.0.0 - lodash: 4.17.21 - mime-types: 2.1.35 - query-string: 7.1.3 - through2: 4.0.2 - web-encoding: 1.1.5 - xml: 1.0.1 - xml2js: 0.5.0 - dev: false - - /minipass@3.3.6: - resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} - engines: {node: '>=8'} - dependencies: - yallist: 4.0.0 - dev: false - - /minipass@5.0.0: - resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} - engines: {node: '>=8'} - dev: false - - /minizlib@2.1.2: - resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} - engines: {node: '>= 8'} - dependencies: - minipass: 3.3.6 - yallist: 4.0.0 - dev: false - - /mkdirp-classic@0.5.3: - resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} - dev: false - - /mkdirp@0.5.6: - resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} - hasBin: true - dependencies: - minimist: 1.2.8 - dev: false - - /mkdirp@1.0.4: - resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} - engines: {node: '>=10'} - hasBin: true - dev: false - - /mri@1.2.0: - resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} - engines: {node: '>=4'} - dev: false - - /mrmime@1.0.1: - resolution: {integrity: sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==} - engines: {node: '>=10'} - dev: true - - /ms@2.1.2: - resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} - dev: true - - /ms@2.1.3: - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - - /multer@1.4.5-lts.1: - resolution: {integrity: sha512-ywPWvcDMeH+z9gQq5qYHCCy+ethsk4goepZ45GLD63fOu0YcNecQxi64nDs3qluZB+murG3/D4dJ7+dGctcCQQ==} - engines: {node: '>= 6.0.0'} - dependencies: - append-field: 1.0.0 - busboy: 1.6.0 - concat-stream: 1.6.2 - mkdirp: 0.5.6 - object-assign: 4.1.1 - type-is: 1.6.18 - xtend: 4.0.2 - dev: false - - /nanoid@3.3.11: - resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - dev: false - - /nanoid@3.3.7: - resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - dev: false - - /nanoid@4.0.2: - resolution: {integrity: sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw==} - engines: {node: ^14 || ^16 || >=18} - hasBin: true - dev: false - - /nanoid@5.1.7: - resolution: {integrity: sha512-ua3NDgISf6jdwezAheMOk4mbE1LXjm1DfMUDMuJf4AqxLFK3ccGpgWizwa5YV7Yz9EpXwEaWoRXSb/BnV0t5dQ==} - engines: {node: ^18 || >=20} - hasBin: true - dev: false - - /napi-build-utils@1.0.2: - resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} - dev: false - - /natural-compare@1.4.0: - resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - dev: true - - /neverpanic@0.0.5(typescript@5.2.2): - resolution: {integrity: sha512-daO+ijOQG8g2BXaAwpETa0GUvlIAfqC+1/CUdLp2Ga8qwDaUyHIieX/SM0yZoPBf7k92deq4DO7tZOWWeL063Q==} - peerDependencies: - typescript: '5' - dependencies: - typescript: 5.2.2 - dev: false - - /next-i18next@15.3.0(i18next@23.12.1)(next@13.5.11)(react-i18next@14.1.2)(react@18.2.0): - resolution: {integrity: sha512-bq7Cc9XJFcmGOCLnyEtHaeJ3+JJNsI/8Pkj9BaHAnhm4sZ9vNNC4ZsaqYnlRZ7VH5ypSo73fEqLK935jLsmCvQ==} - engines: {node: '>=14'} - peerDependencies: - i18next: '>= 23.7.13' - next: '>= 12.0.0' - react: 18.2.0 - react-i18next: '>= 13.5.0' - dependencies: - '@babel/runtime': 7.24.0 - '@types/hoist-non-react-statics': 3.3.5 - core-js: 3.33.3 - hoist-non-react-statics: 3.3.2 - i18next: 23.12.1 - i18next-fs-backend: 2.3.1 - next: 13.5.11(@babel/core@7.23.5)(react-dom@18.2.0)(react@18.2.0)(sass@1.69.5) - react: 18.2.0 - react-i18next: 14.1.2(i18next@23.12.1)(react-dom@18.2.0)(react@18.2.0) - dev: false - - /next@13.5.11(@babel/core@7.23.5)(react-dom@18.2.0)(react@18.2.0)(sass@1.69.5): - resolution: {integrity: sha512-WUPJ6WbAX9tdC86kGTu92qkrRdgRqVrY++nwM+shmWQwmyxt4zhZfR59moXSI4N8GDYCBY3lIAqhzjDd4rTC8Q==} - engines: {node: '>=16.14.0'} - hasBin: true - peerDependencies: - '@opentelemetry/api': ^1.1.0 - react: 18.2.0 - react-dom: 18.2.0 - sass: ^1.3.0 - peerDependenciesMeta: - '@opentelemetry/api': - optional: true - sass: - optional: true - dependencies: - '@next/env': 13.5.11 - '@swc/helpers': 0.5.2 - busboy: 1.6.0 - caniuse-lite: 1.0.30001594 - postcss: 8.4.31 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - sass: 1.69.5 - styled-jsx: 5.1.1(@babel/core@7.23.5)(react@18.2.0) - watchpack: 2.4.0 - optionalDependencies: - '@next/swc-darwin-arm64': 13.5.9 - '@next/swc-darwin-x64': 13.5.9 - '@next/swc-linux-arm64-gnu': 13.5.9 - '@next/swc-linux-arm64-musl': 13.5.9 - '@next/swc-linux-x64-gnu': 13.5.9 - '@next/swc-linux-x64-musl': 13.5.9 - '@next/swc-win32-arm64-msvc': 13.5.9 - '@next/swc-win32-ia32-msvc': 13.5.9 - '@next/swc-win32-x64-msvc': 13.5.9 - transitivePeerDependencies: - - '@babel/core' - - babel-plugin-macros - dev: false - - /node-abi@3.54.0: - resolution: {integrity: sha512-p7eGEiQil0YUV3ItH4/tBb781L5impVmmx2E9FRKF7d18XXzp4PGT2tdYMFY6wQqgxD0IwNZOiSJ0/K0fSi/OA==} - engines: {node: '>=10'} - dependencies: - semver: 7.6.3 - dev: false - - /node-addon-api@6.1.0: - resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==} - dev: false - - /node-releases@2.0.14: - resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} - - /normalize-path@3.0.0: - resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} - engines: {node: '>=0.10.0'} - - /npm-run-path@5.3.0: - resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dependencies: - path-key: 4.0.0 - dev: true - - /nprogress@0.2.0: - resolution: {integrity: sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==} - dev: false - - /nth-check@2.1.1: - resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} - dependencies: - boolbase: 1.0.0 - dev: true - - /oauth-sign@0.9.0: - resolution: {integrity: sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==} - dev: false - - /object-assign@4.1.1: - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} - engines: {node: '>=0.10.0'} - - /object-hash@2.2.0: - resolution: {integrity: sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==} - engines: {node: '>= 6'} - requiresBuild: true - dev: false - optional: true - - /object-inspect@1.13.1: - resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} - dev: true - - /object-inspect@1.13.4: - resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} - engines: {node: '>= 0.4'} - dev: true - - /object-keys@1.1.1: - resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} - engines: {node: '>= 0.4'} - dev: true - - /object.assign@4.1.4: - resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - has-symbols: 1.0.3 - object-keys: 1.1.1 - dev: true - - /object.assign@4.1.5: - resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - has-symbols: 1.1.0 - object-keys: 1.1.1 - dev: true - - /object.entries@1.1.7: - resolution: {integrity: sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - dev: true - - /object.fromentries@2.0.7: - resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - dev: true - - /object.fromentries@2.0.8: - resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-object-atoms: 1.1.1 - dev: true - - /object.groupby@1.0.3: - resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.3 - dev: true - - /object.hasown@1.1.3: - resolution: {integrity: sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==} - dependencies: - define-properties: 1.2.1 - es-abstract: 1.22.3 - dev: true - - /object.values@1.1.7: - resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - dev: true - - /object.values@1.2.0: - resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-object-atoms: 1.1.1 - dev: true - - /oidc-token-hash@5.0.3: - resolution: {integrity: sha512-IF4PcGgzAr6XXSff26Sk/+P4KZFJVuHAJZj3wgO3vX2bMdNVp/QXTP3P7CEm9V1IdG8lDLY3HhiqpsE/nOwpPw==} - engines: {node: ^10.13.0 || >=12.0.0} - requiresBuild: true - dev: false - optional: true - - /once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - dependencies: - wrappy: 1.0.2 - - /onetime@6.0.0: - resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} - engines: {node: '>=12'} - dependencies: - mimic-fn: 4.0.0 - dev: true - - /onetime@7.0.0: - resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} - engines: {node: '>=18'} - dependencies: - mimic-function: 5.0.1 - dev: true - - /opener@1.5.2: - resolution: {integrity: sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==} - hasBin: true - dev: true - - /openid-client@5.6.1: - resolution: {integrity: sha512-PtrWsY+dXg6y8mtMPyL/namZSYVz8pjXz3yJiBNZsEdCnu9miHLB4ELVC85WvneMKo2Rg62Ay7NkuCpM0bgiLQ==} - requiresBuild: true - dependencies: - jose: 4.15.4 - lru-cache: 6.0.0 - object-hash: 2.2.0 - oidc-token-hash: 5.0.3 - dev: false - optional: true - - /optionator@0.9.3: - resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} - engines: {node: '>= 0.8.0'} - dependencies: - '@aashutoshrathi/word-wrap': 1.2.6 - deep-is: 0.1.4 - fast-levenshtein: 2.0.6 - levn: 0.4.1 - prelude-ls: 1.2.1 - type-check: 0.4.0 - dev: true - - /p-event@6.0.1: - resolution: {integrity: sha512-Q6Bekk5wpzW5qIyUP4gdMEujObYstZl6DMMOSenwBvV0BlE5LkDwkjs5yHbZmdCEq2o4RJx4tE1vwxFVf2FG1w==} - engines: {node: '>=16.17'} - dependencies: - p-timeout: 6.1.4 - dev: false - - /p-limit@2.3.0: - resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} - engines: {node: '>=6'} - dependencies: - p-try: 2.2.0 - dev: true - - /p-limit@3.1.0: - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} - engines: {node: '>=10'} - dependencies: - yocto-queue: 0.1.0 - dev: true - - /p-locate@4.1.0: - resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} - engines: {node: '>=8'} - dependencies: - p-limit: 2.3.0 - dev: true - - /p-locate@5.0.0: - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} - engines: {node: '>=10'} - dependencies: - p-limit: 3.1.0 - dev: true - - /p-timeout@6.1.4: - resolution: {integrity: sha512-MyIV3ZA/PmyBN/ud8vV9XzwTrNtR4jFrObymZYnZqMmW0zA8Z17vnT0rBgFE/TlohB+YCHqXMgZzb3Csp49vqg==} - engines: {node: '>=14.16'} - dev: false - - /p-try@2.2.0: - resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} - engines: {node: '>=6'} - dev: true - - /pako@1.0.11: - resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==} - dev: false - - /papaparse@5.4.1: - resolution: {integrity: sha512-HipMsgJkZu8br23pW15uvo6sib6wne/4woLZPlFf3rpDyMe9ywEXUsuD7+6K9PRkJlVT51j/sCOYDKGGS3ZJrw==} - dev: false - - /parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} - dependencies: - callsites: 3.1.0 - - /parse-entities@2.0.0: - resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==} - dependencies: - character-entities: 1.2.4 - character-entities-legacy: 1.1.4 - character-reference-invalid: 1.1.4 - is-alphanumerical: 1.0.4 - is-decimal: 1.0.4 - is-hexadecimal: 1.0.4 - dev: false - - /parse-json@5.2.0: - resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} - engines: {node: '>=8'} - dependencies: - '@babel/code-frame': 7.23.5 - error-ex: 1.3.2 - json-parse-even-better-errors: 2.3.1 - lines-and-columns: 1.2.4 - - /parse-ms@4.0.0: - resolution: {integrity: sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==} - engines: {node: '>=18'} - dev: false - - /parse5@7.1.2: - resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} - dependencies: - entities: 4.5.0 - dev: false - - /path-exists@4.0.0: - resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} - engines: {node: '>=8'} - dev: true - - /path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} - engines: {node: '>=0.10.0'} - - /path-key@3.1.1: - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} - engines: {node: '>=8'} - dev: true - - /path-key@4.0.0: - resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} - engines: {node: '>=12'} - dev: true - - /path-parse@1.0.7: - resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - - /path-type@4.0.0: - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} - engines: {node: '>=8'} - - /pathe@2.0.3: - resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} - dev: false - - /performance-now@2.1.0: - resolution: {integrity: sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==} - dev: false - - /picocolors@1.1.1: - resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} - - /picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} - engines: {node: '>=8.6'} - - /pidtree@0.6.0: - resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} - engines: {node: '>=0.10'} - hasBin: true - dev: true - - /pkg-dir@4.2.0: - resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} - engines: {node: '>=8'} - dependencies: - find-up: 4.1.0 - dev: true - - /possible-typed-array-names@1.0.0: - resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} - engines: {node: '>= 0.4'} - - /postcss@8.4.31: - resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} - engines: {node: ^10 || ^12 || >=14} - dependencies: - nanoid: 3.3.7 - picocolors: 1.1.1 - source-map-js: 1.0.2 - dev: false - - /postcss@8.5.8: - resolution: {integrity: sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==} - engines: {node: ^10 || ^12 || >=14} - dependencies: - nanoid: 3.3.11 - picocolors: 1.1.1 - source-map-js: 1.2.1 - dev: false - - /prebuild-install@7.1.1: - resolution: {integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==} - engines: {node: '>=10'} - hasBin: true - dependencies: - detect-libc: 2.0.2 - expand-template: 2.0.3 - github-from-package: 0.0.0 - minimist: 1.2.8 - mkdirp-classic: 0.5.3 - napi-build-utils: 1.0.2 - node-abi: 3.54.0 - pump: 3.0.0 - rc: 1.2.8 - simple-get: 4.0.1 - tar-fs: 2.1.1 - tunnel-agent: 0.6.0 - dev: false - - /prelude-ls@1.2.1: - resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} - engines: {node: '>= 0.8.0'} - dev: true - - /prettier@2.8.8: - resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} - engines: {node: '>=10.13.0'} - hasBin: true - - /pretty-bytes@7.1.0: - resolution: {integrity: sha512-nODzvTiYVRGRqAOvE84Vk5JDPyyxsVk0/fbA/bq7RqlnhksGpset09XTxbpvLTIjoaF7K8Z8DG8yHtKGTPSYRw==} - engines: {node: '>=20'} - dev: false - - /pretty-ms@9.3.0: - resolution: {integrity: sha512-gjVS5hOP+M3wMm5nmNOucbIrqudzs9v/57bWRHQWLYklXqoXKrVfYW2W9+glfGsqtPgpiz5WwyEEB+ksXIx3gQ==} - engines: {node: '>=18'} - dependencies: - parse-ms: 4.0.0 - dev: false - - /prismjs@1.27.0: - resolution: {integrity: sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA==} - engines: {node: '>=6'} - dev: false - - /prismjs@1.29.0: - resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} - engines: {node: '>=6'} - dev: false - - /process-nextick-args@2.0.1: - resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} - dev: false - - /prop-types@15.8.1: - resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - react-is: 16.13.1 - - /property-information@5.6.0: - resolution: {integrity: sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==} - dependencies: - xtend: 4.0.2 - dev: false - - /property-information@6.4.0: - resolution: {integrity: sha512-9t5qARVofg2xQqKtytzt+lZ4d1Qvj8t5B8fEwXK6qOfgRLgH/b13QlgEyDh033NOS31nXeFbYv7CLUDG1CeifQ==} - dev: false - - /property-information@7.0.0: - resolution: {integrity: sha512-7D/qOz/+Y4X/rzSB6jKxKUsQnphO046ei8qxG59mtM3RG3DHgTK81HrxrmoDVINJb8NKT5ZsRbwHvQ6B68Iyhg==} - dev: false - - /proxy-from-env@1.1.0: - resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} - dev: false - - /psl@1.9.0: - resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} - dev: false - - /pump@3.0.0: - resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} - dependencies: - end-of-stream: 1.4.4 - once: 1.4.0 - dev: false - - /punycode@2.3.1: - resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} - engines: {node: '>=6'} - - /qs@6.5.3: - resolution: {integrity: sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==} - engines: {node: '>=0.6'} - dev: false - - /query-string@7.1.3: - resolution: {integrity: sha512-hh2WYhq4fi8+b+/2Kg9CEge4fDPvHS534aOOvOZeQ3+Vf2mCFsaFBYj0i+iXcAq6I9Vzp5fjMFBlONvayDC1qg==} - engines: {node: '>=6'} - dependencies: - decode-uri-component: 0.2.2 - filter-obj: 1.1.0 - split-on-first: 1.1.0 - strict-uri-encode: 2.0.0 - dev: false - - /queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - dev: true - - /queue-tick@1.0.1: - resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==} - dev: false - - /radix-vue@1.9.17(vue@3.5.30): - resolution: {integrity: sha512-mVCu7I2vXt1L2IUYHTt0sZMz7s1K2ZtqKeTIxG3yC5mMFfLBG4FtE1FDeRMpDd+Hhg/ybi9+iXmAP1ISREndoQ==} - peerDependencies: - vue: '>= 3.2.0' - dependencies: - '@floating-ui/dom': 1.7.6 - '@floating-ui/vue': 1.1.9(vue@3.5.30) - '@internationalized/date': 3.8.0 - '@internationalized/number': 3.6.1 - '@tanstack/vue-virtual': 3.13.6(vue@3.5.30) - '@vueuse/core': 10.11.1(vue@3.5.30) - '@vueuse/shared': 10.11.1(vue@3.5.30) - aria-hidden: 1.2.4 - defu: 6.1.4 - fast-deep-equal: 3.1.3 - nanoid: 5.1.7 - vue: 3.5.30(typescript@5.2.2) - transitivePeerDependencies: - - '@vue/composition-api' - dev: false - - /randombytes@2.1.0: - resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} - dependencies: - safe-buffer: 5.2.1 - dev: true - - /rc@1.2.8: - resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} - hasBin: true - dependencies: - deep-extend: 0.6.0 - ini: 1.3.8 - minimist: 1.2.8 - strip-json-comments: 2.0.1 - dev: false - - /react-clientside-effect@1.2.6(react@18.2.0): - resolution: {integrity: sha512-XGGGRQAKY+q25Lz9a/4EPqom7WRjz3z9R2k4jhVKA/puQFH/5Nt27vFZYql4m4NVNdUvX8PS3O7r/Zzm7cjUlg==} - peerDependencies: - react: 18.2.0 - dependencies: - '@babel/runtime': 7.26.0 - react: 18.2.0 - dev: false - - /react-day-picker@8.9.1(date-fns@3.6.0)(react@18.2.0): - resolution: {integrity: sha512-W0SPApKIsYq+XCtfGeMYDoU0KbsG3wfkYtlw8l+vZp6KoBXGOlhzBUp4tNx1XiwiOZwhfdGOlj7NGSCKGSlg5Q==} - peerDependencies: - date-fns: ^2.28.0 - react: 18.2.0 - dependencies: - date-fns: 3.6.0 - react: 18.2.0 - dev: false - - /react-dom@18.2.0(react@18.2.0): - resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} - peerDependencies: - react: 18.2.0 - dependencies: - loose-envify: 1.4.0 - react: 18.2.0 - scheduler: 0.23.2 - dev: false - - /react-fast-compare@3.2.2: - resolution: {integrity: sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==} - dev: false - - /react-focus-lock@2.9.6(@types/react@18.2.37)(react@18.2.0): - resolution: {integrity: sha512-B7gYnCjHNrNYwY2juS71dHbf0+UpXXojt02svxybj8N5bxceAkzPChKEncHuratjUHkIFNCn06k2qj1DRlzTug==} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: 18.2.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@babel/runtime': 7.26.0 - '@types/react': 18.2.37 - focus-lock: 1.0.0 - prop-types: 15.8.1 - react: 18.2.0 - react-clientside-effect: 1.2.6(react@18.2.0) - use-callback-ref: 1.3.0(@types/react@18.2.37)(react@18.2.0) - use-sidecar: 1.1.2(@types/react@18.2.37)(react@18.2.0) - dev: false - - /react-hook-form@7.48.2(react@18.2.0): - resolution: {integrity: sha512-H0T2InFQb1hX7qKtDIZmvpU1Xfn/bdahWBN1fH19gSe4bBEqTfmlr7H3XWTaVtiK4/tpPaI1F3355GPMZYge+A==} - engines: {node: '>=12.22.0'} - peerDependencies: - react: 18.2.0 - dependencies: - react: 18.2.0 - dev: false - - /react-i18next@14.1.2(i18next@23.12.1)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-FSIcJy6oauJbGEXfhUgVeLzvWBhIBIS+/9c6Lj4niwKZyGaGb4V4vUbATXSlsHJDXXB+ociNxqFNiFuV1gmoqg==} - peerDependencies: - i18next: '>= 23.2.3' - react: 18.2.0 - react-dom: '*' - react-native: '*' - peerDependenciesMeta: - react-dom: - optional: true - react-native: - optional: true - dependencies: - '@babel/runtime': 7.24.0 - html-parse-stringify: 3.0.1 - i18next: 23.12.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - - /react-is@16.13.1: - resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - - /react-is@18.2.0: - resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} - dev: false - - /react-markdown@8.0.7(@types/react@18.2.37)(react@18.2.0): - resolution: {integrity: sha512-bvWbzG4MtOU62XqBx3Xx+zB2raaFFsq4mYiAzfjXJMEz2sixgeAfraA3tvzULF02ZdOMUOKTBFFaZJDDrq+BJQ==} - peerDependencies: - '@types/react': '>=16' - react: 18.2.0 - dependencies: - '@types/hast': 2.3.8 - '@types/prop-types': 15.7.11 - '@types/react': 18.2.37 - '@types/unist': 2.0.10 - comma-separated-tokens: 2.0.3 - hast-util-whitespace: 2.0.1 - prop-types: 15.8.1 - property-information: 6.4.0 - react: 18.2.0 - react-is: 18.2.0 - remark-parse: 10.0.2 - remark-rehype: 10.1.0 - space-separated-tokens: 2.0.2 - style-to-object: 0.4.4 - unified: 10.1.2 - unist-util-visit: 4.1.2 - vfile: 5.3.7 - transitivePeerDependencies: - - supports-color - dev: false - - /react-remove-scroll-bar@2.3.8(@types/react@18.2.37)(react@18.2.0): - resolution: {integrity: sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': '*' - react: 18.2.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@types/react': 18.2.37 - react: 18.2.0 - react-style-singleton: 2.2.3(@types/react@18.2.37)(react@18.2.0) - tslib: 2.6.2 - dev: false - - /react-remove-scroll@2.7.1(@types/react@18.2.37)(react@18.2.0): - resolution: {integrity: sha512-HpMh8+oahmIdOuS5aFKKY6Pyog+FNaZV/XyJOq7b4YFwsFHe5yYfdbIalI4k3vU2nSDql7YskmUseHsRrJqIPA==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': '*' - react: 18.2.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@types/react': 18.2.37 - react: 18.2.0 - react-remove-scroll-bar: 2.3.8(@types/react@18.2.37)(react@18.2.0) - react-style-singleton: 2.2.3(@types/react@18.2.37)(react@18.2.0) - tslib: 2.6.2 - use-callback-ref: 1.3.3(@types/react@18.2.37)(react@18.2.0) - use-sidecar: 1.1.3(@types/react@18.2.37)(react@18.2.0) - dev: false - - /react-style-singleton@2.2.3(@types/react@18.2.37)(react@18.2.0): - resolution: {integrity: sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': '*' - react: 18.2.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@types/react': 18.2.37 - get-nonce: 1.0.1 - react: 18.2.0 - tslib: 2.6.2 - dev: false - - /react-syntax-highlighter@15.5.0(react@18.2.0): - resolution: {integrity: sha512-+zq2myprEnQmH5yw6Gqc8lD55QHnpKaU8TOcFeC/Lg/MQSs8UknEA0JC4nTZGFAXC2J2Hyj/ijJ7NlabyPi2gg==} - peerDependencies: - react: 18.2.0 - dependencies: - '@babel/runtime': 7.26.0 - highlight.js: 10.7.3 - lowlight: 1.20.0 - prismjs: 1.29.0 - react: 18.2.0 - refractor: 3.6.0 - dev: false - - /react@18.2.0: - resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} - engines: {node: '>=0.10.0'} - dependencies: - loose-envify: 1.4.0 - dev: false - - /readable-stream@2.3.8: - resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} - dependencies: - core-util-is: 1.0.3 - inherits: 2.0.4 - isarray: 1.0.0 - process-nextick-args: 2.0.1 - safe-buffer: 5.1.2 - string_decoder: 1.1.1 - util-deprecate: 1.0.2 - dev: false - - /readable-stream@3.6.2: - resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} - engines: {node: '>= 6'} - dependencies: - inherits: 2.0.4 - string_decoder: 1.3.0 - util-deprecate: 1.0.2 - dev: false - - /readdirp@3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} - engines: {node: '>=8.10.0'} - dependencies: - picomatch: 2.3.1 - - /reflect.getprototypeof@1.0.4: - resolution: {integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - get-intrinsic: 1.3.0 - globalthis: 1.0.4 - which-builtin-type: 1.1.3 - dev: true - - /refractor@3.6.0: - resolution: {integrity: sha512-MY9W41IOWxxk31o+YvFCNyNzdkc9M20NoZK5vq6jkv4I/uh2zkWcfudj0Q1fovjUQJrNewS9NMzeTtqPf+n5EA==} - dependencies: - hastscript: 6.0.0 - parse-entities: 2.0.0 - prismjs: 1.27.0 - dev: false - - /regenerate-unicode-properties@10.1.1: - resolution: {integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==} - engines: {node: '>=4'} - dependencies: - regenerate: 1.4.2 - dev: true - - /regenerate@1.4.2: - resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} - dev: true - - /regenerator-runtime@0.14.0: - resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} - - /regenerator-transform@0.15.2: - resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} - dependencies: - '@babel/runtime': 7.26.0 - dev: true - - /regexp.prototype.flags@1.5.1: - resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - set-function-name: 2.0.1 - dev: true - - /regexp.prototype.flags@1.5.3: - resolution: {integrity: sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-errors: 1.3.0 - set-function-name: 2.0.2 - dev: true - - /regexpp@3.2.0: - resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} - engines: {node: '>=8'} - dev: true - - /regexpu-core@5.3.2: - resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==} - engines: {node: '>=4'} - dependencies: - '@babel/regjsgen': 0.8.0 - regenerate: 1.4.2 - regenerate-unicode-properties: 10.1.1 - regjsparser: 0.9.1 - unicode-match-property-ecmascript: 2.0.0 - unicode-match-property-value-ecmascript: 2.1.0 - dev: true - - /regjsparser@0.9.1: - resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} - hasBin: true - dependencies: - jsesc: 0.5.0 - dev: true - - /rehype-external-links@3.0.0: - resolution: {integrity: sha512-yp+e5N9V3C6bwBeAC4n796kc86M4gJCdlVhiMTxIrJG5UHDMh+PJANf9heqORJbt1nrCbDwIlAZKjANIaVBbvw==} - dependencies: - '@types/hast': 3.0.4 - '@ungap/structured-clone': 1.2.0 - hast-util-is-element: 3.0.0 - is-absolute-url: 4.0.1 - space-separated-tokens: 2.0.2 - unist-util-visit: 5.0.0 - dev: false - - /rehype-format@5.0.1: - resolution: {integrity: sha512-zvmVru9uB0josBVpr946OR8ui7nJEdzZobwLOOqHb/OOD88W0Vk2SqLwoVOj0fM6IPCCO6TaV9CvQvJMWwukFQ==} - dependencies: - '@types/hast': 3.0.4 - hast-util-format: 1.1.0 - dev: false - - /rehype-parse@9.0.1: - resolution: {integrity: sha512-ksCzCD0Fgfh7trPDxr2rSylbwq9iYDkSn8TCDmEJ49ljEUBxDVCzCHv7QNzZOfODanX4+bWQ4WZqLCRWYLfhag==} - dependencies: - '@types/hast': 3.0.4 - hast-util-from-html: 2.0.3 - unified: 11.0.4 - dev: false - - /rehype-raw@7.0.0: - resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} - dependencies: - '@types/hast': 3.0.4 - hast-util-raw: 9.1.0 - vfile: 6.0.1 - dev: false - - /rehype-sanitize@6.0.0: - resolution: {integrity: sha512-CsnhKNsyI8Tub6L4sm5ZFsme4puGfc6pYylvXo1AeqaGbjOYyzNv3qZPwvs0oMJ39eryyeOdmxwUIo94IpEhqg==} - dependencies: - '@types/hast': 3.0.4 - hast-util-sanitize: 5.0.2 - dev: false - - /rehype-stringify@10.0.1: - resolution: {integrity: sha512-k9ecfXHmIPuFVI61B9DeLPN0qFHfawM6RsuX48hoqlaKSF61RskNjSm1lI8PhBEM0MRdLxVVm4WmTqJQccH9mA==} - dependencies: - '@types/hast': 3.0.4 - hast-util-to-html: 9.0.5 - unified: 11.0.4 - dev: false - - /remark-gfm@4.0.1: - resolution: {integrity: sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg==} - dependencies: - '@types/mdast': 4.0.3 - mdast-util-gfm: 3.1.0 - micromark-extension-gfm: 3.0.0 - remark-parse: 11.0.0 - remark-stringify: 11.0.0 - unified: 11.0.4 - transitivePeerDependencies: - - supports-color - dev: false - - /remark-parse@10.0.2: - resolution: {integrity: sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==} - dependencies: - '@types/mdast': 3.0.15 - mdast-util-from-markdown: 1.3.1 - unified: 10.1.2 - transitivePeerDependencies: - - supports-color - dev: false - - /remark-parse@11.0.0: - resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} - dependencies: - '@types/mdast': 4.0.3 - mdast-util-from-markdown: 2.0.2 - micromark-util-types: 2.0.2 - unified: 11.0.4 - transitivePeerDependencies: - - supports-color - dev: false - - /remark-rehype@10.1.0: - resolution: {integrity: sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==} - dependencies: - '@types/hast': 2.3.8 - '@types/mdast': 3.0.15 - mdast-util-to-hast: 12.3.0 - unified: 10.1.2 - dev: false - - /remark-rehype@11.1.2: - resolution: {integrity: sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw==} - dependencies: - '@types/hast': 3.0.4 - '@types/mdast': 4.0.3 - mdast-util-to-hast: 13.2.0 - unified: 11.0.4 - vfile: 6.0.1 - dev: false - - /remark-stringify@11.0.0: - resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} - dependencies: - '@types/mdast': 4.0.3 - mdast-util-to-markdown: 2.1.2 - unified: 11.0.4 - dev: false - - /request@2.88.2: - resolution: {integrity: sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==} - engines: {node: '>= 6'} - deprecated: request has been deprecated, see https://github.com/request/request/issues/3142 - dependencies: - aws-sign2: 0.7.0 - aws4: 1.12.0 - caseless: 0.12.0 - combined-stream: 1.0.8 - extend: 3.0.2 - forever-agent: 0.6.1 - form-data: 2.3.3 - har-validator: 5.1.5 - http-signature: 1.2.0 - is-typedarray: 1.0.0 - isstream: 0.1.2 - json-stringify-safe: 5.0.1 - mime-types: 2.1.35 - oauth-sign: 0.9.0 - performance-now: 2.1.0 - qs: 6.5.3 - safe-buffer: 5.2.1 - tough-cookie: 2.5.0 - tunnel-agent: 0.6.0 - uuid: 3.4.0 - dev: false - - /require-from-string@2.0.2: - resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} - engines: {node: '>=0.10.0'} - dev: false - - /reserved-identifiers@1.2.0: - resolution: {integrity: sha512-yE7KUfFvaBFzGPs5H3Ops1RevfUEsDc5Iz65rOwWg4lE8HJSYtle77uul3+573457oHvBKuHYDl/xqUkKpEEdw==} - engines: {node: '>=18'} - dev: false - - /resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} - - /resolve-pkg-maps@1.0.0: - resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} - dev: true - - /resolve@1.22.8: - resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} - hasBin: true - dependencies: - is-core-module: 2.15.1 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - - /resolve@2.0.0-next.5: - resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} - hasBin: true - dependencies: - is-core-module: 2.15.1 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - dev: true - - /restore-cursor@5.1.0: - resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} - engines: {node: '>=18'} - dependencies: - onetime: 7.0.0 - signal-exit: 4.1.0 - dev: true - - /reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - dev: true - - /rfc4648@1.5.3: - resolution: {integrity: sha512-MjOWxM065+WswwnmNONOT+bD1nXzY9Km6u3kzvnx8F8/HXGZdz3T6e6vZJ8Q/RIMUSp/nxqjH3GwvJDy8ijeQQ==} - dev: false - - /rfdc@1.4.1: - resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} - dev: true - - /rimraf@3.0.2: - resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} - deprecated: Rimraf versions prior to v4 are no longer supported - hasBin: true - dependencies: - glob: 7.2.3 - - /rollup-plugin-dts@4.2.3(rollup@2.79.1)(typescript@5.2.2): - resolution: {integrity: sha512-jlcpItqM2efqfIiKzDB/IKOS9E9fDvbkJSGw5GtK/PqPGS9eC3R3JKyw2VvpTktZA+TNgJRMu1NTv244aTUzzQ==} - engines: {node: '>=v12.22.12'} - peerDependencies: - rollup: ^2.55 - typescript: ^4.1 - dependencies: - magic-string: 0.26.7 - rollup: 2.79.1 - typescript: 5.2.2 - optionalDependencies: - '@babel/code-frame': 7.23.5 - dev: true - - /rollup-plugin-peer-deps-external@2.2.4(rollup@2.79.1): - resolution: {integrity: sha512-AWdukIM1+k5JDdAqV/Cxd+nejvno2FVLVeZ74NKggm3Q5s9cbbcOgUPGdbxPi4BXu7xGaZ8HG12F+thImYu/0g==} - peerDependencies: - rollup: '*' - dependencies: - rollup: 2.79.1 - dev: false - - /rollup-plugin-terser@7.0.2(rollup@2.79.1): - resolution: {integrity: sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==} - deprecated: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-terser - peerDependencies: - rollup: ^2.0.0 - dependencies: - '@babel/code-frame': 7.23.4 - jest-worker: 26.6.2 - rollup: 2.79.1 - serialize-javascript: 4.0.0 - terser: 5.24.0 - dev: true - - /rollup-plugin-typescript2@0.36.0(rollup@2.79.1)(typescript@5.2.2): - resolution: {integrity: sha512-NB2CSQDxSe9+Oe2ahZbf+B4bh7pHwjV5L+RSYpCu7Q5ROuN94F9b6ioWwKfz3ueL3KTtmX4o2MUH2cgHDIEUsw==} - peerDependencies: - rollup: '>=1.26.3' - typescript: '>=2.4.0' - dependencies: - '@rollup/pluginutils': 4.2.1 - find-cache-dir: 3.3.2 - fs-extra: 10.1.0 - rollup: 2.79.1 - semver: 7.5.4 - tslib: 2.6.2 - typescript: 5.2.2 - dev: true - - /rollup@2.79.1: - resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==} - engines: {node: '>=10.0.0'} - hasBin: true - optionalDependencies: - fsevents: 2.3.3 - - /run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} - dependencies: - queue-microtask: 1.2.3 - dev: true - - /sade@1.8.1: - resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} - engines: {node: '>=6'} - dependencies: - mri: 1.2.0 - dev: false - - /safe-array-concat@1.0.1: - resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} - engines: {node: '>=0.4'} - dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 - has-symbols: 1.0.3 - isarray: 2.0.5 - dev: true - - /safe-array-concat@1.1.2: - resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==} - engines: {node: '>=0.4'} - dependencies: - call-bind: 1.0.8 - get-intrinsic: 1.3.0 - has-symbols: 1.1.0 - isarray: 2.0.5 - dev: true - - /safe-buffer@5.1.2: - resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} - dev: false - - /safe-buffer@5.2.1: - resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - - /safe-regex-test@1.0.0: - resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} - dependencies: - call-bind: 1.0.8 - get-intrinsic: 1.3.0 - is-regex: 1.1.4 - dev: true - - /safe-regex-test@1.0.3: - resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - es-errors: 1.3.0 - is-regex: 1.1.4 - dev: true - - /safer-buffer@2.1.2: - resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - dev: false - - /sass@1.69.5: - resolution: {integrity: sha512-qg2+UCJibLr2LCVOt3OlPhr/dqVHWOa9XtZf2OjbLs/T4VPSJ00udtgJxH3neXZm+QqX8B+3cU7RaLqp1iVfcQ==} - engines: {node: '>=14.0.0'} - hasBin: true - dependencies: - chokidar: 3.5.3 - immutable: 4.3.4 - source-map-js: 1.0.2 - dev: false - - /sax@1.3.0: - resolution: {integrity: sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==} - dev: false - - /scheduler@0.23.2: - resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} - dependencies: - loose-envify: 1.4.0 - dev: false - - /semver@6.3.1: - resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} - hasBin: true - - /semver@7.5.4: - resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} - engines: {node: '>=10'} - hasBin: true - dependencies: - lru-cache: 6.0.0 - - /semver@7.6.3: - resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} - engines: {node: '>=10'} - hasBin: true - - /serialize-javascript@4.0.0: - resolution: {integrity: sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==} - dependencies: - randombytes: 2.1.0 - dev: true - - /set-function-length@1.1.1: - resolution: {integrity: sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==} - engines: {node: '>= 0.4'} - dependencies: - define-data-property: 1.1.4 - get-intrinsic: 1.3.0 - gopd: 1.2.0 - has-property-descriptors: 1.0.2 - dev: true - - /set-function-length@1.2.2: - resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} - engines: {node: '>= 0.4'} - dependencies: - define-data-property: 1.1.4 - es-errors: 1.3.0 - function-bind: 1.1.2 - get-intrinsic: 1.3.0 - gopd: 1.2.0 - has-property-descriptors: 1.0.2 - - /set-function-name@2.0.1: - resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} - engines: {node: '>= 0.4'} - dependencies: - define-data-property: 1.1.1 - functions-have-names: 1.2.3 - has-property-descriptors: 1.0.1 - dev: true - - /set-function-name@2.0.2: - resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} - engines: {node: '>= 0.4'} - dependencies: - define-data-property: 1.1.4 - es-errors: 1.3.0 - functions-have-names: 1.2.3 - has-property-descriptors: 1.0.2 - dev: true - - /setimmediate@1.0.5: - resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} - dev: false - - /sharp@0.32.6: - resolution: {integrity: sha512-KyLTWwgcR9Oe4d9HwCwNM2l7+J0dUQwn/yf7S0EnTtb0eVS4RxO0eUSvxPtzT4F3SY+C4K6fqdv/DO27sJ/v/w==} - engines: {node: '>=14.15.0'} - requiresBuild: true - dependencies: - color: 4.2.3 - detect-libc: 2.0.2 - node-addon-api: 6.1.0 - prebuild-install: 7.1.1 - semver: 7.5.4 - simple-get: 4.0.1 - tar-fs: 3.0.4 - tunnel-agent: 0.6.0 - dev: false - - /shebang-command@2.0.0: - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} - engines: {node: '>=8'} - dependencies: - shebang-regex: 3.0.0 - dev: true - - /shebang-regex@3.0.0: - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} - engines: {node: '>=8'} - dev: true - - /shell-quote@1.8.2: - resolution: {integrity: sha512-AzqKpGKjrj7EM6rKVQEPpB288oCfnrEIuyoT9cyF4nmGa7V8Zk6f7RRqYisX8X9m+Q7bd632aZW4ky7EhbQztA==} - engines: {node: '>= 0.4'} - dev: false - - /side-channel-list@1.0.0: - resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} - engines: {node: '>= 0.4'} - dependencies: - es-errors: 1.3.0 - object-inspect: 1.13.4 - dev: true - - /side-channel-map@1.0.1: - resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} - engines: {node: '>= 0.4'} - dependencies: - call-bound: 1.0.4 - es-errors: 1.3.0 - get-intrinsic: 1.3.0 - object-inspect: 1.13.4 - dev: true - - /side-channel-weakmap@1.0.2: - resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} - engines: {node: '>= 0.4'} - dependencies: - call-bound: 1.0.4 - es-errors: 1.3.0 - get-intrinsic: 1.3.0 - object-inspect: 1.13.4 - side-channel-map: 1.0.1 - dev: true - - /side-channel@1.0.4: - resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} - dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 - object-inspect: 1.13.1 - dev: true - - /side-channel@1.1.0: - resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} - engines: {node: '>= 0.4'} - dependencies: - es-errors: 1.3.0 - object-inspect: 1.13.4 - side-channel-list: 1.0.0 - side-channel-map: 1.0.1 - side-channel-weakmap: 1.0.2 - dev: true - - /signal-exit@4.1.0: - resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} - engines: {node: '>=14'} - dev: true - - /simple-concat@1.0.1: - resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} - dev: false - - /simple-get@4.0.1: - resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} - dependencies: - decompress-response: 6.0.0 - once: 1.4.0 - simple-concat: 1.0.1 - dev: false - - /simple-html-tokenizer@0.1.1: - resolution: {integrity: sha512-Mc/gH3RvlKvB/gkp9XwgDKEWrSYyefIJPGG8Jk1suZms/rISdUuVEMx5O1WBnTWaScvxXDvGJrZQWblUmQHjkQ==} - dev: true - - /simple-swizzle@0.2.2: - resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} - dependencies: - is-arrayish: 0.3.2 - dev: false - - /sirv@2.0.3: - resolution: {integrity: sha512-O9jm9BsID1P+0HOi81VpXPoDxYP374pkOLzACAoyUQ/3OUVndNpsz6wMnY2z+yOxzbllCKZrM+9QrWsv4THnyA==} - engines: {node: '>= 10'} - dependencies: - '@polka/url': 1.0.0-next.23 - mrmime: 1.0.1 - totalist: 3.0.1 - dev: true - - /slash@3.0.0: - resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} - engines: {node: '>=8'} - dev: true - - /slice-ansi@5.0.0: - resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} - engines: {node: '>=12'} - dependencies: - ansi-styles: 6.2.1 - is-fullwidth-code-point: 4.0.0 - dev: true - - /slice-ansi@7.1.0: - resolution: {integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==} - engines: {node: '>=18'} - dependencies: - ansi-styles: 6.2.1 - is-fullwidth-code-point: 5.0.0 - dev: true - - /source-map-js@1.0.2: - resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} - engines: {node: '>=0.10.0'} - dev: false - - /source-map-js@1.2.1: - resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} - engines: {node: '>=0.10.0'} - dev: false - - /source-map-support@0.5.21: - resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} - dependencies: - buffer-from: 1.1.2 - source-map: 0.6.1 - dev: true - - /source-map@0.5.7: - resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} - engines: {node: '>=0.10.0'} - dev: false - - /source-map@0.6.1: - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} - engines: {node: '>=0.10.0'} - dev: true - - /sourcemap-codec@1.4.8: - resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} - deprecated: Please use @jridgewell/sourcemap-codec instead - dev: true - - /space-separated-tokens@1.1.5: - resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==} - dev: false - - /space-separated-tokens@2.0.2: - resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} - dev: false - - /split-on-first@1.1.0: - resolution: {integrity: sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==} - engines: {node: '>=6'} - dev: false - - /sshpk@1.18.0: - resolution: {integrity: sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==} - engines: {node: '>=0.10.0'} - hasBin: true - dependencies: - asn1: 0.2.6 - assert-plus: 1.0.0 - bcrypt-pbkdf: 1.0.2 - dashdash: 1.14.1 - ecc-jsbn: 0.1.2 - getpass: 0.1.7 - jsbn: 0.1.1 - safer-buffer: 2.1.2 - tweetnacl: 0.14.5 - dev: false - - /stable@0.1.8: - resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} - deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' - dev: true - - /stream-buffers@3.0.2: - resolution: {integrity: sha512-DQi1h8VEBA/lURbSwFtEHnSTb9s2/pwLEaFuNhXwy1Dx3Sa0lOuYT2yNUr4/j2fs8oCAMANtrZ5OrPZtyVs3MQ==} - engines: {node: '>= 0.10.0'} - dev: false - - /streamsearch@1.1.0: - resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} - engines: {node: '>=10.0.0'} - dev: false - - /streamx@2.15.6: - resolution: {integrity: sha512-q+vQL4AAz+FdfT137VF69Cc/APqUbxy+MDOImRrMvchJpigHj9GksgDU2LYbO9rx7RX6osWgxJB2WxhYv4SZAw==} - dependencies: - fast-fifo: 1.3.2 - queue-tick: 1.0.1 - dev: false - - /strict-uri-encode@2.0.0: - resolution: {integrity: sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==} - engines: {node: '>=4'} - dev: false - - /string-argv@0.3.2: - resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} - engines: {node: '>=0.6.19'} - dev: true - - /string-byte-length@3.0.1: - resolution: {integrity: sha512-yJ8vP0HMwZ54CcA8S8mKoXbkezpZHANFtmafFo8lGxZThCQcAwRHjdFabuSLgOzxj9OFJcmssmiAvmcOK4O2Hw==} - engines: {node: '>=18.18.0'} - dev: false - - /string-byte-slice@3.0.1: - resolution: {integrity: sha512-GWv2K4lYyd2+AhmKH3BV+OVx62xDX+99rSLfKpaqFiQU7uOMaUY1tDjdrRD4gsrCr9lTyjMgjna7tZcCOw+Smg==} - engines: {node: '>=18.18.0'} - dev: false - - /string-width@7.2.0: - resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==} - engines: {node: '>=18'} - dependencies: - emoji-regex: 10.3.0 - get-east-asian-width: 1.2.0 - strip-ansi: 7.1.0 - dev: true - - /string.prototype.matchall@4.0.10: - resolution: {integrity: sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - get-intrinsic: 1.2.2 - has-symbols: 1.0.3 - internal-slot: 1.0.6 - regexp.prototype.flags: 1.5.1 - set-function-name: 2.0.1 - side-channel: 1.0.4 - dev: true - - /string.prototype.trim@1.2.8: - resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.3 - dev: true - - /string.prototype.trim@1.2.9: - resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-object-atoms: 1.1.1 - dev: true - - /string.prototype.trimend@1.0.8: - resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-object-atoms: 1.1.1 - dev: true - - /string.prototype.trimstart@1.0.7: - resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-abstract: 1.23.3 - dev: true - - /string.prototype.trimstart@1.0.8: - resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - define-properties: 1.2.1 - es-object-atoms: 1.1.1 - dev: true - - /string_decoder@1.1.1: - resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} - dependencies: - safe-buffer: 5.1.2 - dev: false - - /string_decoder@1.3.0: - resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} - dependencies: - safe-buffer: 5.2.1 - dev: false - - /stringify-entities@4.0.4: - resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} - dependencies: - character-entities-html4: 2.1.0 - character-entities-legacy: 3.0.0 - dev: false - - /stringify-object@6.0.0: - resolution: {integrity: sha512-6f94vIED6vmJJfh3lyVsVWxCYSfI5uM+16ntED/Ql37XIyV6kj0mRAAiTeMMc/QLYIaizC3bUprQ8pQnDDrKfA==} - engines: {node: '>=20'} - dependencies: - get-own-enumerable-keys: 1.0.0 - is-identifier: 1.0.1 - is-obj: 3.0.0 - is-regexp: 3.1.0 - dev: false - - /strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} - dependencies: - ansi-regex: 5.0.1 - dev: true - - /strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} - dependencies: - ansi-regex: 6.0.1 - dev: true - - /strip-bom@3.0.0: - resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} - engines: {node: '>=4'} - dev: true - - /strip-final-newline@3.0.0: - resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} - engines: {node: '>=12'} - dev: true - - /strip-json-comments@2.0.1: - resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} - engines: {node: '>=0.10.0'} - dev: false - - /strip-json-comments@3.1.1: - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} - engines: {node: '>=8'} - dev: true - - /strnum@1.0.5: - resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==} - dev: false - - /style-mod@4.1.2: - resolution: {integrity: sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==} - dev: false - - /style-to-object@0.4.4: - resolution: {integrity: sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==} - dependencies: - inline-style-parser: 0.1.1 - dev: false - - /styled-jsx@5.1.1(@babel/core@7.23.5)(react@18.2.0): - resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} - engines: {node: '>= 12.0.0'} - peerDependencies: - '@babel/core': '*' - babel-plugin-macros: '*' - react: 18.2.0 - peerDependenciesMeta: - '@babel/core': - optional: true - babel-plugin-macros: - optional: true - dependencies: - '@babel/core': 7.23.5 - client-only: 0.0.1 - react: 18.2.0 - dev: false - - /stylis@4.2.0: - resolution: {integrity: sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==} - dev: false - - /super-regex@1.1.0: - resolution: {integrity: sha512-WHkws2ZflZe41zj6AolvvmaTrWds/VuyeYr9iPVv/oQeaIoVxMKaushfFWpOGDT+GuBrM/sVqF8KUCYQlSSTdQ==} - engines: {node: '>=18'} - dependencies: - function-timeout: 1.0.2 - make-asynchronous: 1.1.0 - time-span: 5.1.0 - dev: false - - /supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} - dependencies: - has-flag: 3.0.0 - - /supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} - dependencies: - has-flag: 4.0.0 - dev: true - - /supports-preserve-symlinks-flag@1.0.0: - resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} - engines: {node: '>= 0.4'} - - /svg-inline-loader@0.8.2: - resolution: {integrity: sha512-kbrcEh5n5JkypaSC152eGfGcnT4lkR0eSfvefaUJkLqgGjRQJyKDvvEE/CCv5aTSdfXuc+N98w16iAojhShI3g==} - dependencies: - loader-utils: 1.4.2 - object-assign: 4.1.1 - simple-html-tokenizer: 0.1.1 - dev: true - - /svg-parser@2.0.4: - resolution: {integrity: sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==} - dev: true - - /svgo@2.8.0: - resolution: {integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==} - engines: {node: '>=10.13.0'} - hasBin: true - dependencies: - '@trysound/sax': 0.2.0 - commander: 7.2.0 - css-select: 4.3.0 - css-tree: 1.1.3 - csso: 4.2.0 - picocolors: 1.1.1 - stable: 0.1.8 - dev: true - - /swrv@1.1.0(vue@3.5.30): - resolution: {integrity: sha512-pjllRDr2s0iTwiE5Isvip51dZGR7GjLH1gCSVyE8bQnbAx6xackXsFdojau+1O5u98yHF5V73HQGOFxKUXO9gQ==} - peerDependencies: - vue: '>=3.2.26 < 4' - dependencies: - vue: 3.5.30(typescript@5.2.2) - dev: false - - /tabbable@6.2.0: - resolution: {integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==} - dev: false - - /tagged-tag@1.0.0: - resolution: {integrity: sha512-yEFYrVhod+hdNyx7g5Bnkkb0G6si8HJurOoOEgC8B/O0uXLHlaey/65KRv6cuWBNhBgHKAROVpc7QyYqE5gFng==} - engines: {node: '>=20'} - dev: false - - /tailwind-merge@3.4.0: - resolution: {integrity: sha512-uSaO4gnW+b3Y2aWoWfFpX62vn2sR3skfhbjsEnaBI81WD1wBLlHZe5sWf0AqjksNdYTbGBEd0UasQMT3SNV15g==} - dev: false - - /tailwindcss@4.1.12: - resolution: {integrity: sha512-DzFtxOi+7NsFf7DBtI3BJsynR+0Yp6etH+nRPTbpWnS2pZBaSksv/JGctNwSWzbFjp0vxSqknaUylseZqMDGrA==} - dev: false - - /tapable@2.2.1: - resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} - engines: {node: '>=6'} - dev: true - - /tar-fs@2.1.1: - resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} - dependencies: - chownr: 1.1.4 - mkdirp-classic: 0.5.3 - pump: 3.0.0 - tar-stream: 2.2.0 - dev: false - - /tar-fs@3.0.4: - resolution: {integrity: sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==} - dependencies: - mkdirp-classic: 0.5.3 - pump: 3.0.0 - tar-stream: 3.1.6 - dev: false - - /tar-stream@2.2.0: - resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} - engines: {node: '>=6'} - dependencies: - bl: 4.1.0 - end-of-stream: 1.4.4 - fs-constants: 1.0.0 - inherits: 2.0.4 - readable-stream: 3.6.2 - dev: false - - /tar-stream@3.1.6: - resolution: {integrity: sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==} - dependencies: - b4a: 1.6.4 - fast-fifo: 1.3.2 - streamx: 2.15.6 - dev: false - - /tar@6.2.0: - resolution: {integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==} - engines: {node: '>=10'} - dependencies: - chownr: 2.0.0 - fs-minipass: 2.1.0 - minipass: 5.0.0 - minizlib: 2.1.2 - mkdirp: 1.0.4 - yallist: 4.0.0 - dev: false - - /terser@5.24.0: - resolution: {integrity: sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==} - engines: {node: '>=10'} - hasBin: true - dependencies: - '@jridgewell/source-map': 0.3.5 - acorn: 8.15.0 - commander: 2.20.3 - source-map-support: 0.5.21 - dev: true - - /text-table@0.2.0: - resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} - dev: true - - /through2@4.0.2: - resolution: {integrity: sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==} - dependencies: - readable-stream: 3.6.2 - dev: false - - /time-span@5.1.0: - resolution: {integrity: sha512-75voc/9G4rDIJleOo4jPvN4/YC4GRZrY8yy1uU4lwrB3XEQbWve8zXoO5No4eFrGcTAMYyoY67p8jRQdtA1HbA==} - engines: {node: '>=12'} - dependencies: - convert-hrtime: 5.0.0 - dev: false - - /tiny-invariant@1.3.1: - resolution: {integrity: sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==} - dev: false - - /tmp-promise@3.0.3: - resolution: {integrity: sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==} - dependencies: - tmp: 0.2.1 - dev: false - - /tmp@0.2.1: - resolution: {integrity: sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==} - engines: {node: '>=8.17.0'} - dependencies: - rimraf: 3.0.2 - dev: false - - /to-fast-properties@2.0.0: - resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} - engines: {node: '>=4'} - - /to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} - dependencies: - is-number: 7.0.0 - - /toggle-selection@1.0.6: - resolution: {integrity: sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==} - dev: false - - /totalist@3.0.1: - resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} - engines: {node: '>=6'} - dev: true - - /tough-cookie@2.5.0: - resolution: {integrity: sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==} - engines: {node: '>=0.8'} - dependencies: - psl: 1.9.0 - punycode: 2.3.1 - dev: false - - /trim-lines@3.0.1: - resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} - dev: false - - /trough@2.1.0: - resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==} - dev: false - - /truncate-json@3.0.1: - resolution: {integrity: sha512-QVsbr1WhGLq2F0oDyYbqtOXcf3gcnL8C9H5EX8bBwAr8ZWvWGJzukpPrDrWgJMrNtgDbo74BIjI4kJu3q2xQWw==} - engines: {node: '>=18.18.0'} - dependencies: - guess-json-indent: 3.0.1 - string-byte-length: 3.0.1 - string-byte-slice: 3.0.1 - dev: false - - /ts-deepmerge@7.0.3: - resolution: {integrity: sha512-Du/ZW2RfwV/D4cmA5rXafYjBQVuvu4qGiEEla4EmEHVHgRdx68Gftx7i66jn2bzHPwSVZY36Ae6OuDn9el4ZKA==} - engines: {node: '>=14.13.1'} - dev: false - - /tsconfig-paths@3.15.0: - resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} - dependencies: - '@types/json5': 0.0.29 - json5: 1.0.2 - minimist: 1.2.8 - strip-bom: 3.0.0 - dev: true - - /tslib@1.14.1: - resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} - dev: true - - /tslib@2.3.0: - resolution: {integrity: sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==} - dev: false - - /tslib@2.4.0: - resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} - dev: false - - /tslib@2.6.2: - resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} - - /tsutils@3.21.0(typescript@5.2.2): - resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} - engines: {node: '>= 6'} - peerDependencies: - typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' - dependencies: - tslib: 1.14.1 - typescript: 5.2.2 - dev: true - - /tunnel-agent@0.6.0: - resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} - dependencies: - safe-buffer: 5.2.1 - dev: false - - /tweetnacl@0.14.5: - resolution: {integrity: sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==} - dev: false - - /type-check@0.4.0: - resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} - engines: {node: '>= 0.8.0'} - dependencies: - prelude-ls: 1.2.1 - dev: true - - /type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} - dev: true - - /type-fest@4.40.1: - resolution: {integrity: sha512-9YvLNnORDpI+vghLU/Nf+zSv0kL47KbVJ1o3sKgoTefl6i+zebxbiDQWoe/oWWqPhIgQdRZRT1KA9sCPL810SA==} - engines: {node: '>=16'} - dev: false - - /type-fest@5.4.4: - resolution: {integrity: sha512-JnTrzGu+zPV3aXIUhnyWJj4z/wigMsdYajGLIYakqyOW1nPllzXEJee0QQbHj+CTIQtXGlAjuK0UY+2xTyjVAw==} - engines: {node: '>=20'} - dependencies: - tagged-tag: 1.0.0 - dev: false - - /type-is@1.6.18: - resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} - engines: {node: '>= 0.6'} - dependencies: - media-typer: 0.3.0 - mime-types: 2.1.35 - dev: false - - /typed-array-buffer@1.0.0: - resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - get-intrinsic: 1.3.0 - is-typed-array: 1.1.15 - dev: true - - /typed-array-buffer@1.0.2: - resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - es-errors: 1.3.0 - is-typed-array: 1.1.15 - dev: true - - /typed-array-byte-length@1.0.0: - resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - for-each: 0.3.3 - has-proto: 1.0.3 - is-typed-array: 1.1.15 - dev: true - - /typed-array-byte-length@1.0.1: - resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - for-each: 0.3.5 - gopd: 1.2.0 - has-proto: 1.0.3 - is-typed-array: 1.1.15 - dev: true - - /typed-array-byte-offset@1.0.0: - resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} - engines: {node: '>= 0.4'} - dependencies: - available-typed-arrays: 1.0.7 - call-bind: 1.0.8 - for-each: 0.3.3 - has-proto: 1.0.3 - is-typed-array: 1.1.15 - dev: true - - /typed-array-byte-offset@1.0.2: - resolution: {integrity: sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==} - engines: {node: '>= 0.4'} - dependencies: - available-typed-arrays: 1.0.7 - call-bind: 1.0.8 - for-each: 0.3.5 - gopd: 1.2.0 - has-proto: 1.0.3 - is-typed-array: 1.1.15 - dev: true - - /typed-array-length@1.0.4: - resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} - dependencies: - call-bind: 1.0.8 - for-each: 0.3.3 - is-typed-array: 1.1.15 - dev: true - - /typed-array-length@1.0.6: - resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.8 - for-each: 0.3.5 - gopd: 1.2.0 - has-proto: 1.0.3 - is-typed-array: 1.1.15 - possible-typed-array-names: 1.0.0 - dev: true - - /typedarray@0.0.6: - resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} - dev: false - - /typescript@5.2.2: - resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==} - engines: {node: '>=14.17'} - hasBin: true - - /unbox-primitive@1.0.2: - resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} - dependencies: - call-bind: 1.0.8 - has-bigints: 1.0.2 - has-symbols: 1.1.0 - which-boxed-primitive: 1.0.2 - dev: true - - /underscore@1.13.6: - resolution: {integrity: sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==} - dev: false - - /undici-types@6.19.8: - resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} - - /undici-types@6.21.0: - resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} - dev: false - - /unhead@2.1.12: - resolution: {integrity: sha512-iTHdWD9ztTunOErtfUFk6Wr11BxvzumcYJ0CzaSCBUOEtg+DUZ9+gnE99i8QkLFT2q1rZD48BYYGXpOZVDLYkA==} - dependencies: - hookable: 6.1.0 - dev: false - - /unicode-canonical-property-names-ecmascript@2.0.0: - resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} - engines: {node: '>=4'} - dev: true - - /unicode-match-property-ecmascript@2.0.0: - resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} - engines: {node: '>=4'} - dependencies: - unicode-canonical-property-names-ecmascript: 2.0.0 - unicode-property-aliases-ecmascript: 2.1.0 - dev: true - - /unicode-match-property-value-ecmascript@2.1.0: - resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==} - engines: {node: '>=4'} - dev: true - - /unicode-property-aliases-ecmascript@2.1.0: - resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} - engines: {node: '>=4'} - dev: true - - /unified@10.1.2: - resolution: {integrity: sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==} - dependencies: - '@types/unist': 2.0.10 - bail: 2.0.2 - extend: 3.0.2 - is-buffer: 2.0.5 - is-plain-obj: 4.1.0 - trough: 2.1.0 - vfile: 5.3.7 - dev: false - - /unified@11.0.4: - resolution: {integrity: sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==} - dependencies: - '@types/unist': 3.0.2 - bail: 2.0.2 - devlop: 1.1.0 - extend: 3.0.2 - is-plain-obj: 4.1.0 - trough: 2.1.0 - vfile: 6.0.1 - dev: false - - /unist-util-find-after@5.0.0: - resolution: {integrity: sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==} - dependencies: - '@types/unist': 3.0.2 - unist-util-is: 6.0.0 - dev: false - - /unist-util-generated@2.0.1: - resolution: {integrity: sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==} - dev: false - - /unist-util-is@5.2.1: - resolution: {integrity: sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==} - dependencies: - '@types/unist': 2.0.10 - dev: false - - /unist-util-is@6.0.0: - resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} - dependencies: - '@types/unist': 3.0.2 - dev: false - - /unist-util-position@4.0.4: - resolution: {integrity: sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==} - dependencies: - '@types/unist': 2.0.10 - dev: false - - /unist-util-position@5.0.0: - resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} - dependencies: - '@types/unist': 3.0.2 - dev: false - - /unist-util-stringify-position@3.0.3: - resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==} - dependencies: - '@types/unist': 2.0.10 - dev: false - - /unist-util-stringify-position@4.0.0: - resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} - dependencies: - '@types/unist': 3.0.2 - dev: false - - /unist-util-visit-parents@5.1.3: - resolution: {integrity: sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==} - dependencies: - '@types/unist': 2.0.10 - unist-util-is: 5.2.1 - dev: false - - /unist-util-visit-parents@6.0.1: - resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} - dependencies: - '@types/unist': 3.0.2 - unist-util-is: 6.0.0 - dev: false - - /unist-util-visit@4.1.2: - resolution: {integrity: sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==} - dependencies: - '@types/unist': 2.0.10 - unist-util-is: 5.2.1 - unist-util-visit-parents: 5.1.3 - dev: false - - /unist-util-visit@5.0.0: - resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} - dependencies: - '@types/unist': 3.0.2 - unist-util-is: 6.0.0 - unist-util-visit-parents: 6.0.1 - dev: false - - /universalify@2.0.1: - resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} - engines: {node: '>= 10.0.0'} - dev: true - - /update-browserslist-db@1.0.13(browserslist@4.23.0): - resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - dependencies: - browserslist: 4.23.0 - escalade: 3.1.1 - picocolors: 1.1.1 - - /uri-js@4.4.1: - resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} - dependencies: - punycode: 2.3.1 - - /use-callback-ref@1.3.0(@types/react@18.2.37)(react@18.2.0): - resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: 18.2.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@types/react': 18.2.37 - react: 18.2.0 - tslib: 2.6.2 - dev: false - - /use-callback-ref@1.3.3(@types/react@18.2.37)(react@18.2.0): - resolution: {integrity: sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': '*' - react: 18.2.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@types/react': 18.2.37 - react: 18.2.0 - tslib: 2.6.2 - dev: false - - /use-sidecar@1.1.2(@types/react@18.2.37)(react@18.2.0): - resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0 - react: 18.2.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@types/react': 18.2.37 - detect-node-es: 1.1.0 - react: 18.2.0 - tslib: 2.6.2 - dev: false - - /use-sidecar@1.1.3(@types/react@18.2.37)(react@18.2.0): - resolution: {integrity: sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': '*' - react: 18.2.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@types/react': 18.2.37 - detect-node-es: 1.1.0 - react: 18.2.0 - tslib: 2.6.2 - dev: false - - /use-sync-external-store@1.2.0(react@18.2.0): - resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==} - peerDependencies: - react: 18.2.0 - dependencies: - react: 18.2.0 - dev: false - - /util-deprecate@1.0.2: - resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - dev: false - - /util@0.12.5: - resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==} - dependencies: - inherits: 2.0.4 - is-arguments: 1.1.1 - is-generator-function: 1.0.10 - is-typed-array: 1.1.12 - which-typed-array: 1.1.13 - dev: false - - /uuid@3.4.0: - resolution: {integrity: sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==} - deprecated: uuid@10 and below is no longer supported. For ESM codebases, update to uuid@latest. For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028). - hasBin: true - dev: false - - /uuid@9.0.1: - resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} - deprecated: uuid@10 and below is no longer supported. For ESM codebases, update to uuid@latest. For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028). - hasBin: true - dev: false - - /uvu@0.5.6: - resolution: {integrity: sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==} - engines: {node: '>=8'} - hasBin: true - dependencies: - dequal: 2.0.3 - diff: 5.1.0 - kleur: 4.1.5 - sade: 1.8.1 - dev: false - - /verror@1.10.0: - resolution: {integrity: sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==} - engines: {'0': node >=0.6.0} - dependencies: - assert-plus: 1.0.0 - core-util-is: 1.0.2 - extsprintf: 1.4.1 - dev: false - - /vfile-location@5.0.3: - resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==} - dependencies: - '@types/unist': 3.0.2 - vfile: 6.0.1 - dev: false - - /vfile-message@3.1.4: - resolution: {integrity: sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==} - dependencies: - '@types/unist': 2.0.10 - unist-util-stringify-position: 3.0.3 - dev: false - - /vfile-message@4.0.2: - resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} - dependencies: - '@types/unist': 3.0.2 - unist-util-stringify-position: 4.0.0 - dev: false - - /vfile@5.3.7: - resolution: {integrity: sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==} - dependencies: - '@types/unist': 2.0.10 - is-buffer: 2.0.5 - unist-util-stringify-position: 3.0.3 - vfile-message: 3.1.4 - dev: false - - /vfile@6.0.1: - resolution: {integrity: sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==} - dependencies: - '@types/unist': 3.0.2 - unist-util-stringify-position: 4.0.0 - vfile-message: 4.0.2 - dev: false - - /void-elements@3.1.0: - resolution: {integrity: sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==} - engines: {node: '>=0.10.0'} - dev: false - - /vue-component-type-helpers@3.2.6: - resolution: {integrity: sha512-O02tnvIfOQVmnvoWwuSydwRoHjZVt8UEBR+2p4rT35p8GAy5VTlWP8o5qXfJR/GWCN0nVZoYWsVUvx2jwgdBmQ==} - dev: false - - /vue-demi@0.14.10(vue@3.5.30): - resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==} - engines: {node: '>=12'} - hasBin: true - requiresBuild: true - peerDependencies: - '@vue/composition-api': ^1.0.0-rc.1 - vue: ^3.0.0-0 || ^2.6.0 - peerDependenciesMeta: - '@vue/composition-api': - optional: true - dependencies: - vue: 3.5.30(typescript@5.2.2) - dev: false - - /vue-router@4.6.2(vue@3.5.30): - resolution: {integrity: sha512-my83mxQKXyCms9EegBXZldehOihxBjgSjZqrZwgg4vBacNGl0oBCO+xT//wgOYpLV1RW93ZfqxrjTozd+82nbA==} - peerDependencies: - vue: ^3.5.0 - dependencies: - '@vue/devtools-api': 6.6.4 - vue: 3.5.30(typescript@5.2.2) - dev: false - - /vue-sonner@1.3.2: - resolution: {integrity: sha512-UbZ48E9VIya3ToiRHAZUbodKute/z/M1iT8/3fU8zEbwBRE11AKuHikssv18LMk2gTTr6eMQT4qf6JoLHWuj/A==} - dev: false - - /vue@3.5.30(typescript@5.2.2): - resolution: {integrity: sha512-hTHLc6VNZyzzEH/l7PFGjpcTvUgiaPK5mdLkbjrTeWSRcEfxFrv56g/XckIYlE9ckuobsdwqd5mk2g1sBkMewg==} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@vue/compiler-dom': 3.5.30 - '@vue/compiler-sfc': 3.5.30 - '@vue/runtime-dom': 3.5.30 - '@vue/server-renderer': 3.5.30(vue@3.5.30) - '@vue/shared': 3.5.30 - typescript: 5.2.2 - dev: false - - /w3c-keyname@2.2.8: - resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==} - dev: false - - /watchpack@2.4.0: - resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} - engines: {node: '>=10.13.0'} - dependencies: - glob-to-regexp: 0.4.1 - graceful-fs: 4.2.11 - dev: false - - /web-encoding@1.1.5: - resolution: {integrity: sha512-HYLeVCdJ0+lBYV2FvNZmv3HJ2Nt0QYXqZojk3d9FJOLkwnuhzM9tmamh8d7HPM8QqjKH8DeHkFTx+CFlWpZZDA==} - dependencies: - util: 0.12.5 - optionalDependencies: - '@zxing/text-encoding': 0.9.0 - dev: false - - /web-namespaces@2.0.1: - resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==} - dev: false - - /web-worker@1.5.0: - resolution: {integrity: sha512-RiMReJrTAiA+mBjGONMnjVDP2u3p9R1vkcGz6gDIrOMT3oGuYwX2WRMYI9ipkphSuE5XKEhydbhNEJh4NY9mlw==} - dev: false - - /webpack-bundle-analyzer@4.10.1: - resolution: {integrity: sha512-s3P7pgexgT/HTUSYgxJyn28A+99mmLq4HsJepMPzu0R8ImJc52QNqaFYW1Z2z2uIb1/J3eYgaAWVpaC+v/1aAQ==} - engines: {node: '>= 10.13.0'} - hasBin: true - dependencies: - '@discoveryjs/json-ext': 0.5.7 - acorn: 8.11.2 - acorn-walk: 8.3.0 - commander: 7.2.0 - debounce: 1.2.1 - escape-string-regexp: 4.0.0 - gzip-size: 6.0.0 - html-escaper: 2.0.2 - is-plain-object: 5.0.0 - opener: 1.5.2 - picocolors: 1.1.1 - sirv: 2.0.3 - ws: 7.5.9 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: true - - /whatwg-mimetype@4.0.0: - resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} - engines: {node: '>=18'} - dev: false - - /which-boxed-primitive@1.0.2: - resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} - dependencies: - is-bigint: 1.0.4 - is-boolean-object: 1.1.2 - is-number-object: 1.0.7 - is-string: 1.0.7 - is-symbol: 1.0.4 - dev: true - - /which-builtin-type@1.1.3: - resolution: {integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==} - engines: {node: '>= 0.4'} - dependencies: - function.prototype.name: 1.1.6 - has-tostringtag: 1.0.2 - is-async-function: 2.0.0 - is-date-object: 1.0.5 - is-finalizationregistry: 1.0.2 - is-generator-function: 1.0.10 - is-regex: 1.1.4 - is-weakref: 1.0.2 - isarray: 2.0.5 - which-boxed-primitive: 1.0.2 - which-collection: 1.0.1 - which-typed-array: 1.1.15 - dev: true - - /which-collection@1.0.1: - resolution: {integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==} - dependencies: - is-map: 2.0.2 - is-set: 2.0.2 - is-weakmap: 2.0.1 - is-weakset: 2.0.2 - dev: true - - /which-typed-array@1.1.13: - resolution: {integrity: sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==} - engines: {node: '>= 0.4'} - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.7 - for-each: 0.3.3 - gopd: 1.2.0 - has-tostringtag: 1.0.0 - - /which-typed-array@1.1.15: - resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==} - engines: {node: '>= 0.4'} - dependencies: - available-typed-arrays: 1.0.7 - call-bind: 1.0.8 - for-each: 0.3.5 - gopd: 1.2.0 - has-tostringtag: 1.0.2 - dev: true - - /which-typed-array@1.1.19: - resolution: {integrity: sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==} - engines: {node: '>= 0.4'} - dependencies: - available-typed-arrays: 1.0.7 - call-bind: 1.0.8 - call-bound: 1.0.4 - for-each: 0.3.5 - get-proto: 1.0.1 - gopd: 1.2.0 - has-tostringtag: 1.0.2 - - /which@2.0.2: - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} - engines: {node: '>= 8'} - hasBin: true - dependencies: - isexe: 2.0.0 - dev: true - - /wrap-ansi@9.0.0: - resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==} - engines: {node: '>=18'} - dependencies: - ansi-styles: 6.2.1 - string-width: 7.2.0 - strip-ansi: 7.1.0 - dev: true - - /wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - - /ws@7.5.9: - resolution: {integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==} - engines: {node: '>=8.3.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - dev: true - - /ws@8.14.2: - resolution: {integrity: sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: '>=5.0.2' - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - dev: false - - /xml2js@0.5.0: - resolution: {integrity: sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==} - engines: {node: '>=4.0.0'} - dependencies: - sax: 1.3.0 - xmlbuilder: 11.0.1 - dev: false - - /xml@1.0.1: - resolution: {integrity: sha512-huCv9IH9Tcf95zuYCsQraZtWnJvBtLVE0QHMOs8bWyZAFZNDcYjsPq1nEx8jKA9y+Beo9v+7OBPRisQTjinQMw==} - dev: false - - /xmlbuilder@11.0.1: - resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==} - engines: {node: '>=4.0'} - dev: false - - /xtend@4.0.2: - resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} - engines: {node: '>=0.4'} - dev: false - - /yallist@3.1.1: - resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - - /yallist@4.0.0: - resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - requiresBuild: true - - /yaml@1.10.2: - resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} - engines: {node: '>= 6'} - - /yaml@2.5.0: - resolution: {integrity: sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==} - engines: {node: '>= 14'} - hasBin: true - dev: true - - /yaml@2.8.2: - resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==} - engines: {node: '>= 14.6'} - hasBin: true - dev: false - - /yocto-queue@0.1.0: - resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} - engines: {node: '>=10'} - dev: true - - /zod-openapi@5.3.0(zod@4.0.14): - resolution: {integrity: sha512-hv3DU37kV39v0MEiQ0vcL06NLS9bTHTb7FNtuFk2zhuATsi+UNcNN6y03z7qbI9NdC6LJS+Knk5shOSCUMwsDQ==} - engines: {node: '>=20'} - peerDependencies: - zod: ^3.25.74 || ^4.0.0 - dependencies: - zod: 4.0.14 - dev: false - - /zod@4.0.14: - resolution: {integrity: sha512-nGFJTnJN6cM2v9kXL+SOBq3AtjQby3Mv5ySGFof5UGRHrRioSJ5iG680cYNjE/yWk671nROcpPj4hAS8nyLhSw==} - dev: false - - /zod@4.3.6: - resolution: {integrity: sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg==} - dev: false - - /zrender@5.4.4: - resolution: {integrity: sha512-0VxCNJ7AGOMCWeHVyTrGzUgrK4asT4ml9PEkeGirAkKNYXYzoPJCLvmyfdoOXcjTHPs10OZVMfD1Rwg16AZyYw==} - dependencies: - tslib: 2.3.0 - dev: false - - /zustand@4.4.7(@types/react@18.2.37)(immer@10.2.0)(react@18.2.0): - resolution: {integrity: sha512-QFJWJMdlETcI69paJwhSMJz7PPWjVP8Sjhclxmxmxv/RYI7ZOvR5BHX+ktH0we9gTWQMxcne8q1OY8xxz604gw==} - engines: {node: '>=12.7.0'} - peerDependencies: - '@types/react': '>=16.8' - immer: '>=9.0' - react: 18.2.0 - peerDependenciesMeta: - '@types/react': - optional: true - immer: - optional: true - react: - optional: true - dependencies: - '@types/react': 18.2.37 - immer: 10.2.0 - react: 18.2.0 - use-sync-external-store: 1.2.0(react@18.2.0) - dev: false - - /zwitch@2.0.4: - resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} - dev: false diff --git a/release-v5.1/pnpm-workspace.yaml b/release-v5.1/pnpm-workspace.yaml deleted file mode 100644 index 55dbb73..0000000 --- a/release-v5.1/pnpm-workspace.yaml +++ /dev/null @@ -1,3 +0,0 @@ -packages: - - "packages/*" - - "database" diff --git a/release-v5.1/tsconfig.base.json b/release-v5.1/tsconfig.base.json deleted file mode 100644 index e7c73a3..0000000 --- a/release-v5.1/tsconfig.base.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "compilerOptions": { - "target": "es2022", - "module": "esnext", - "noEmit": true, - "moduleResolution": "node", - "isolatedModules": true, - "allowJs": true, - "strict": true, - "skipLibCheck": true, - "forceConsistentCasingInFileNames": true, - "resolveJsonModule": true, - "allowSyntheticDefaultImports": true, - "esModuleInterop": true, - "removeComments": true - }, - "exclude": ["**/node_modules"] -} diff --git a/release-v5.1/tsconfig.deps.json b/release-v5.1/tsconfig.deps.json deleted file mode 100644 index 8c8dfce..0000000 --- a/release-v5.1/tsconfig.deps.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "extends": "./tsconfig.base.json", - "compilerOptions": { - "noEmitOnError": true - } -} diff --git a/release-v5.1/tsconfig.json b/release-v5.1/tsconfig.json deleted file mode 100644 index 6b76857..0000000 --- a/release-v5.1/tsconfig.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "references": [ - { "path": "./tsconfig.base.json" }, - { "path": "./tsconfig.deps.json" }, - { "path": "./tsconfig.web.json" } - ] -} diff --git a/release-v5.1/tsconfig.web.json b/release-v5.1/tsconfig.web.json deleted file mode 100644 index 09f11ae..0000000 --- a/release-v5.1/tsconfig.web.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.base.json", - "compilerOptions": { - "jsx": "preserve", - "incremental": true, - "skipLibCheck": true - } -} diff --git a/scripts/prepare-bundle.sh b/scripts/prepare-bundle.sh index 752db55..53fd5a8 100644 --- a/scripts/prepare-bundle.sh +++ b/scripts/prepare-bundle.sh @@ -10,12 +10,17 @@ dataflow_image="${4:?dataflow image is required}" tag="${5:?tag is required}" case "$source_tree" in main|release-v5.1) ;; *) echo "Unsupported source: $source_tree" >&2; exit 1 ;; esac repo_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +# Publishing channels retain their historical names, independently of source layout. +case "$source_tree" in + main) database_deploy_dir="${repo_dir}/database/deploy" ;; + release-v5.1) database_deploy_dir="${repo_dir}/deploy/kubeblocks-0.8" ;; +esac # Never replace an existing directory: callers allocate a fresh staging path. mkdir "$output_dir" cp "${repo_dir}/deploy/Kubefile" "${repo_dir}/deploy/install.sh" "$output_dir/" mkdir "$output_dir/database" "$output_dir/dataflow" "$output_dir/charts" -cp -R "${repo_dir}/${source_tree}/database/deploy/charts/database-frontend" "$output_dir/charts/" -cp "${repo_dir}/${source_tree}/database/deploy/database-frontend-entrypoint.sh" "$output_dir/database/" +cp -R "${database_deploy_dir}/charts/database-frontend" "$output_dir/charts/" +cp "${database_deploy_dir}/database-frontend-entrypoint.sh" "$output_dir/database/" cp -R "${repo_dir}/dataflow/deploy/charts/dataflow" "$output_dir/charts/" # Sealos v5.1.2 discovers charts only under the package-root charts directory. # Preserve both installers' relative paths without duplicating chart contents. diff --git a/scripts/test-bundle.py b/scripts/test-bundle.py index fb85d77..5dc63ac 100644 --- a/scripts/test-bundle.py +++ b/scripts/test-bundle.py @@ -120,7 +120,7 @@ def test_packages_exclude_macos_metadata(self): fixture = self.work / 'source' for path in ('scripts/prepare-bundle.sh', 'deploy/Kubefile', 'deploy/install.sh', 'dataflow/deploy/install.sh', 'dataflow/deploy/charts', - 'main/database/deploy', 'release-v5.1/database/deploy'): + 'database/deploy', 'deploy/kubeblocks-0.8'): src, dst = ROOT / path, fixture / path dst.parent.mkdir(parents=True, exist_ok=True) if src.is_dir(): diff --git a/tests/support/source.cjs b/tests/support/source.cjs new file mode 100644 index 0000000..0f6b504 --- /dev/null +++ b/tests/support/source.cjs @@ -0,0 +1,23 @@ +const { resolve } = require('node:path'); +const { existsSync } = require('node:fs'); + +const appRoot = resolve('database'); +const sourceRoot = resolve(appRoot, 'src'); +function sourceFile(channel, relative) { + const version = channel === 'release-v5.1' ? 'kb08' : 'kb09'; + const implementation = resolve(sourceRoot, 'implementations', version, relative); + if (existsSync(implementation)) return implementation; + const currentPage = resolve(sourceRoot, 'implementations/kb09', relative); + if (relative.startsWith('pages/') && existsSync(currentPage)) return currentPage; + return resolve(sourceRoot, relative); +} +function originalAlias(id) { + return id.replace(/^@\/implementations\/kb0[89]\//, '@/'); +} +function deploymentRoot(channel) { + return resolve(channel === 'release-v5.1' ? 'deploy/kubeblocks-0.8' : 'database/deploy'); +} +function examplePath(channel) { + return resolve(appRoot, 'data', channel === 'release-v5.1' ? 'config.kb08.example.yaml' : 'config.example.yaml'); +} +module.exports = { deploymentRoot, examplePath, appRoot, sourceRoot, sourceFile, originalAlias }; diff --git a/tests/test_deployment_compatibility.py b/tests/test_deployment_compatibility.py index fccbe05..80301c3 100644 --- a/tests/test_deployment_compatibility.py +++ b/tests/test_deployment_compatibility.py @@ -9,6 +9,9 @@ ROOT = Path(__file__).resolve().parents[1] SOURCES = ("main", "release-v5.1") +def deployment_path(source): + return ROOT / ("deploy/kubeblocks-0.8" if source == "release-v5.1" else "database/deploy") + class DeploymentCompatibility(unittest.TestCase): def test_existing_values_and_resource_identity(self): @@ -20,7 +23,7 @@ def test_existing_values_and_resource_identity(self): ' currencySymbol: "usd"\n') result = subprocess.run([ "helm", "template", "dbprovider-frontend", - str(ROOT / source / "database/deploy/charts/database-frontend"), + str(deployment_path(source) / "charts/database-frontend"), "--namespace", "dbprovider-frontend", "-f", str(values), ], text=True, capture_output=True, check=True).stdout self.assertNotIn("currencySymbol", result) @@ -41,7 +44,7 @@ def test_existing_values_and_resource_identity(self): if source == "main": self.assertIn(" database:\n", result) - def run_installer(self, source, ownership): + def run_installer(self, source, ownership, version=None): with tempfile.TemporaryDirectory() as temp: directory = Path(temp) calls = directory / "calls.jsonl" @@ -71,17 +74,29 @@ def run_installer(self, source, ownership): values.write_text(content) env = os.environ.copy() # Ensure host/session variables cannot influence fixture deployment identity. - for key in ("RELEASE_NAME", "RELEASE_NAMESPACE", "HELM_OPTS", "HELM_OPTIONS"): + for key in ("RELEASE_NAME", "RELEASE_NAMESPACE", "HELM_OPTS", "HELM_OPTIONS", "KUBEBLOCKS_VERSION"): env.pop(key, None) env.update(PATH=f"{directory}:{env['PATH']}", MOCK_CALLS=str(calls), MOCK_OWNERSHIP=ownership, TOOLS_FILE=str(tools), USER_VALUES_PATH=str(values)) - deploy = ROOT / source / "database/deploy" + if version is not None: + env["KUBEBLOCKS_VERSION"] = version + deploy = deployment_path(source) result = subprocess.run(["bash", "database-frontend-entrypoint.sh"], cwd=deploy, env=env, text=True, capture_output=True) self.assertEqual(values.read_text(), content) return result, [json.loads(line) for line in calls.read_text().splitlines()] + def test_version_override_reaches_helm_without_replacing_persisted_values(self): + for source in SOURCES: + for version in ("0.8", "0.9"): + with self.subTest(source=source, version=version): + result, calls = self.run_installer( + source, "Helm|dbprovider-frontend|dbprovider-frontend", version) + self.assertEqual(result.returncode, 0, result.stderr) + helm = next(call for call in calls if call[0] == "helm") + self.assertIn(f"dbproviderConfig.kubeblocksVersion={version}", helm) + def test_upgrade_uses_existing_release_without_reassigning_ownership(self): for source in SOURCES: with self.subTest(source=source): diff --git a/tests/test_host_config.cjs b/tests/test_host_config.cjs index f0897d0..e3b4824 100644 --- a/tests/test_host_config.cjs +++ b/tests/test_host_config.cjs @@ -1,3 +1,4 @@ +const { appRoot, sourceFile, originalAlias } = require('./support/source.cjs'); // Run with: node --test tests/test_host_config.cjs (after installing both workspaces). const { test } = require('node:test'); const assert = require('node:assert/strict'); @@ -6,13 +7,13 @@ const { resolve, dirname } = require('node:path'); const { createRequire, Module } = require('node:module'); function loadTypeScript(filename, workspace, mocks = {}) { - const requireWorkspace = createRequire(resolve(workspace, 'database/package.json')); + const requireWorkspace = createRequire(resolve(appRoot, 'package.json')); const ts = requireWorkspace('typescript'); const mod = new Module(filename, module); mod.filename = filename; mod.paths = Module._nodeModulePaths(dirname(filename)); const requireModule = mod.require.bind(mod); - mod.require = id => id in mocks ? mocks[id] : requireModule(id); + mod.require = id => originalAlias(id) in mocks ? mocks[originalAlias(id)] : requireModule(id); mod._compile(ts.transpileModule(readFileSync(filename, 'utf8'), { compilerOptions: { module: ts.ModuleKind.CommonJS, target: ts.ScriptTarget.ES2020 } }).outputText, filename); @@ -21,7 +22,7 @@ function loadTypeScript(filename, workspace, mocks = {}) { for (const workspace of ['main', 'release-v5.1']) { const { createHostConfigStore } = loadTypeScript( - resolve(workspace, 'database/src/store/hostConfig.ts'), workspace + sourceFile(workspace, 'store/hostConfig.ts'), workspace ); const host = { cloud: { domain: 'example.com', port: '', regionUid: 'test' }, features: { subscription: false } }; @@ -68,9 +69,9 @@ for (const workspace of ['main', 'release-v5.1']) { } test('main: mounted config accepts removed currency field only after migration', () => { - const { AppConfigSchema } = loadTypeScript(resolve('main/database/src/types/config.ts'), 'main'); - const requireMain = createRequire(resolve('main/database/package.json')); - const config = requireMain('js-yaml').load(readFileSync('main/database/data/config.example.yaml', 'utf8')); + const { AppConfigSchema } = loadTypeScript(resolve('database/src/types/config.ts'), 'main'); + const requireMain = createRequire(resolve('database/package.json')); + const config = requireMain('js-yaml').load(readFileSync('database/data/config.example.yaml', 'utf8')); assert.equal(AppConfigSchema.safeParse(config).success, true); config.database.ui.currencySymbol = 'usd'; assert.equal(AppConfigSchema.safeParse(config).success, false); @@ -78,7 +79,7 @@ test('main: mounted config accepts removed currency field only after migration', for (const workspace of ['main', 'release-v5.1']) { test(`${workspace}: application and shared UI resolve the same published SDK`, () => { - const appRequire = createRequire(resolve(workspace, 'database/package.json')); + const appRequire = createRequire(resolve(appRoot, 'package.json')); const sharedRequire = createRequire(appRequire.resolve('@labring/sealos-shared-sdk')); assert.equal(appRequire.resolve('@labring/sealos-desktop-sdk/app'), sharedRequire.resolve('@labring/sealos-desktop-sdk/app')); const sdkPackage = JSON.parse(readFileSync(resolve(dirname(appRequire.resolve('@labring/sealos-desktop-sdk/app')), '../package.json'), 'utf8')); diff --git a/tests/test_kubeblocks.cjs b/tests/test_kubeblocks.cjs new file mode 100644 index 0000000..8e3d1e1 --- /dev/null +++ b/tests/test_kubeblocks.cjs @@ -0,0 +1,165 @@ +// Offline compatibility tests: no Kubernetes connection and no database writes. +const { test } = require('node:test'); +const assert = require('node:assert/strict'); +const { readFileSync, existsSync } = require('node:fs'); +const { resolve, dirname } = require('node:path'); +const { createRequire, Module } = require('node:module'); +const { execFileSync, spawnSync } = require('node:child_process'); +const { deploymentRoot, examplePath, appRoot, sourceRoot, sourceFile, originalAlias } = require('./support/source.cjs'); +const requireApp = createRequire(resolve(appRoot, 'package.json')); +const ts = requireApp('typescript'); +const yaml = requireApp('js-yaml'); + +function loader(mocks = {}) { + const cache = new Map(); + function load(file) { + const target = [file, `${file}.ts`, `${file}/index.ts`].find(p => existsSync(p) && /\.ts$/.test(p)); + if (!target) throw Error(`Missing fixture module: ${file}`); + if (cache.has(target)) return cache.get(target).exports; + const mod = new Module(target, module); + mod.filename = target; + mod.paths = Module._nodeModulePaths(dirname(target)); + cache.set(target, mod); + mod.require = id => { + if (id.startsWith('.')) { + const alias = '@/'+require('node:path').relative(sourceRoot, resolve(dirname(target), id)); + if (originalAlias(alias) in mocks) return mocks[originalAlias(alias)]; + } + if (id in mocks) return mocks[id]; + if (originalAlias(id) in mocks) return mocks[originalAlias(id)]; + if (id.startsWith('@/')) return load(resolve(sourceRoot, id.slice(2))); + if (id.startsWith('.')) return load(resolve(dirname(target), id)); + return requireApp(id); + }; + mod._compile(ts.transpileModule(readFileSync(target, 'utf8'), { + compilerOptions: { esModuleInterop: true, module: ts.ModuleKind.CommonJS, target: ts.ScriptTarget.ES2020 } + }).outputText, target); + return mod.exports; + } + return load; +} +const load = loader(); +const { AppConfigSchema } = load(resolve(sourceRoot, 'types/config.ts')); +const { versionedHandler, versionedServerSideProps } = load(resolve(sourceRoot, 'services/backend/kubeblocks.ts')); +function fixture(channel) { + return yaml.load(readFileSync(examplePath(channel), 'utf8')); +} + +for (const [channel, expected] of [['main', '0.9'], ['release-v5.1', '0.8']]) { + test(`${channel}: defaults and old mounted YAML preserve the operator version`, () => { + const config = fixture(channel); + assert.equal(AppConfigSchema.parse(config).database.kubeblocks.version, expected); + delete config.database.kubeblocks; + assert.equal(AppConfigSchema.parse(config).database.kubeblocks.version, expected); + config.database.kubeblocks = { version: expected === '0.8' ? '0.9' : '0.8' }; + assert.equal(AppConfigSchema.parse(config).database.kubeblocks.version, config.database.kubeblocks.version); + }); + test(`${channel}: both version overrides reach the validated mounted config`, () => { + for (const version of ['0.8', '0.9']) { + const output = execFileSync('helm', ['template', 'dbprovider-frontend', + resolve(deploymentRoot(channel), 'charts/database-frontend'), + '--set-string', `dbproviderConfig.kubeblocksVersion=${version}`], { encoding: 'utf8' }); + const cm = yaml.loadAll(output).find(doc => doc?.kind === 'ConfigMap'); + assert.equal(AppConfigSchema.parse(yaml.load(cm.data['config.yaml'])).database.kubeblocks.version, version); + } + }); + test(`${channel}: invalid Helm version fails before deployment`, () => { + const result = spawnSync('helm', ['template', 'dbprovider-frontend', + resolve(deploymentRoot(channel), 'charts/database-frontend'), + '--set-string', 'dbproviderConfig.kubeblocksVersion=1.0'], { encoding: 'utf8' }); + assert.notEqual(result.status, 0); + assert.match(result.stderr, /kubeblocksVersion/); + }); +} + +test('invalid and numeric runtime versions are rejected instead of using another adapter', () => { + for (const version of ['0.7', '1.0', '', 0.8, null]) { + const config = fixture('main'); + config.database.kubeblocks.version = version; + assert.equal(AppConfigSchema.safeParse(config).success, false); + } +}); + +test('API and SSR dispatch use deployment config, ignore request overrides, and fail closed', async () => { + const handler = versionedHandler({ '0.8': () => 'old', '0.9': () => 'new' }); + const ssr = versionedServerSideProps({ '0.8': async () => ({ props: { mode: 'old' } }) }); + for (const [version, expected] of [['0.8', 'old'], ['0.9', 'new']]) { + globalThis.__APP_CONFIG__ = { database: { kubeblocks: { version } } }; + assert.equal(handler({ query: { kubeblocksVersion: '1.0' }, headers: { 'x-kubeblocks-version': '1.0' } }, {}), expected); + } + assert.deepEqual(await ssr({}), { notFound: true }); + let status, body; + const only08 = versionedHandler({ '0.8': () => assert.fail('must not fall through') }); + only08({}, { status(code) { status = code; return this; }, json(value) { body = value; } }); + assert.equal(status, 404); + assert.equal(body.code, 404); + globalThis.__APP_CONFIG__.database.kubeblocks.version = '1.0'; + assert.throws(() => handler({}, {}), /must be/); + delete globalThis.__APP_CONFIG__; +}); + +for (const [channel, version] of [['main', '0.9'], ['release-v5.1', '0.8']]) { + test(`${version}: real version route discovers the correct CRs`, async () => { + const calls = []; + const api = { listClusterCustomObject: async (_group, _version, plural) => { + calls.push(plural); + return { body: { items: plural === 'clusterversions' + ? [{ metadata: { name: 'mongodb-5.0.14' }, spec: { clusterDefinitionRef: 'mongodb' } }] + : [{ metadata: { name: 'mongodb' }, status: { serviceVersions: ['6.0.16'] } }] } }; + } }; + const loadRoute = loader({ + '@/services/backend/kubernetes': { K8sApi: () => ({ makeApiClient: () => api }), K8sApiDefault: () => ({ makeApiClient: () => api }) }, + '@/store/static': { DBVersionMap: {} }, + '@kubernetes/client-node': { CustomObjectsApi: class {} } + }); + globalThis.__APP_CONFIG__ = AppConfigSchema.parse(fixture(channel)); + let result; + const handler = loadRoute(resolve(sourceRoot, 'pages/api/platform/getVersion.ts')).default; + await handler({}, { json(value) { result = value; } }); + assert.deepEqual(calls, version === '0.8' ? ['clusterversions'] : ['clusterversions', 'componentversions']); + assert.equal(result.data.mongodb[0].id, version === '0.8' ? 'mongodb-5.0.14' : 'mongodb-6.0.16'); + delete globalThis.__APP_CONFIG__; + }); + + test(`${version}: Redis templates retain the original resource model`, () => { + const loadYaml = loader({ + '@/utils/user': { getUserNamespace: () => 'ns-fixture' }, + '@/utils/tools': { str2Num: Number, formatNumber: Number, encodeToHex: x => Buffer.from(x).toString('hex') }, + '@/utils/kubeFileSystem': {}, + '@/store/env': { StorageClassName: 'fixture-storage' }, + nanoid: { customAlphabet: () => () => 'fixture' }, + '@kubernetes/client-node': {} + }); + const { json2CreateCluster } = loadYaml(sourceFile(channel, 'utils/json2Yaml.ts')); + const output = json2CreateCluster({ dbName: 'fixture', dbType: 'redis', dbVersion: version === '0.8' ? 'redis-7.0.6' : 'redis-7.2.7', + cpu: 1000, memory: 1024, storage: 3, replicas: 1, terminationPolicy: 'Delete' }, undefined, { storageClassName: 'fixture-storage' }); + const docs = (Array.isArray(output) ? output : [output]).flatMap(value => yaml.loadAll(value)); + const cluster = docs.find(doc => doc?.kind === 'Cluster'); + assert.ok(cluster); + if (version === '0.8') { + assert.equal(cluster.spec.clusterVersionRef, 'redis-7.0.6'); + assert.equal(cluster.spec.componentSpecs[0].componentDefRef, 'redis'); + } else { + assert.equal(cluster.spec.componentSpecs[0].componentDef, 'redis-7'); + assert.equal(cluster.spec.componentSpecs[0].serviceVersion, '7.2.7'); + assert.equal(cluster.spec.clusterVersionRef, undefined); + } + }); +} + +test('configuration schema remains exportable for operator tooling', () => { + const schema = requireApp('zod').z.toJSONSchema(AppConfigSchema); + assert.deepEqual(schema.properties.database.properties.kubeblocks.properties.version.enum, ['0.8', '0.9']); +}); + +test('invalid installer version fails before either service installer runs', () => { + for (const script of ['deploy/install.sh', 'database/deploy/database-frontend-entrypoint.sh', + 'deploy/kubeblocks-0.8/database-frontend-entrypoint.sh']) { + const result = spawnSync('bash', [resolve(script)], { + encoding: 'utf8', env: { ...process.env, KUBEBLOCKS_VERSION: '1.0' } + }); + assert.equal(result.status, 1); + assert.equal(result.stdout, ''); + assert.match(result.stderr, /^KUBEBLOCKS_VERSION must be 0\.8 or 0\.9\n$/); + } +}); diff --git a/tests/test_metrics_sdk.cjs b/tests/test_metrics_sdk.cjs index ffd606b..d701298 100644 --- a/tests/test_metrics_sdk.cjs +++ b/tests/test_metrics_sdk.cjs @@ -1,3 +1,4 @@ +const { appRoot, sourceFile, originalAlias } = require('./support/source.cjs'); // Offline integration: real SDK, fictional Kubernetes/Prometheus HTTP fixtures. const { test } = require('node:test'); const assert = require('node:assert/strict'); @@ -7,14 +8,14 @@ const { resolve, dirname } = require('node:path'); const { createRequire, Module } = require('node:module'); function loadHelper(workspace, relative = 'services/monitorFetch.ts', mocks = {}) { - const filename = resolve(workspace, 'database/src', relative); - const requireWorkspace = createRequire(resolve(workspace, 'database/package.json')); + const filename = sourceFile(workspace, relative); + const requireWorkspace = createRequire(resolve(appRoot, 'package.json')); const ts = requireWorkspace('typescript'); const mod = new Module(filename, module); mod.filename = filename; mod.paths = Module._nodeModulePaths(dirname(filename)); const originalRequire = mod.require.bind(mod); - mod.require = id => id in mocks ? mocks[id] : id === '@/config' + mod.require = id => originalAlias(id) in mocks ? mocks[originalAlias(id)] : originalAlias(id) === '@/config' ? { Config: () => ({ database: { components: { monitoring: { url: process.env.METRICS_URL } } } }) } : originalRequire(id); mod._compile(ts.transpileModule(readFileSync(filename, 'utf8'), { @@ -94,7 +95,7 @@ for (const workspace of ['main', 'release-v5.1']) { assert.deepEqual(output.data.result, { xData: [0], yData: [{ name: 'demo-postgresql-0', data: [12.5] }] }); } const count = requests.filter(r => r.url.pathname.startsWith('/api/v1/query')).length; - const requireWorkspace = createRequire(resolve(workspace, 'database/package.json')); + const requireWorkspace = createRequire(resolve(appRoot, 'package.json')); // The shared SDK ships TypeScript; transpile it just like the route fixtures. const sharedErrors = loadHelper(workspace, requireWorkspace.resolve('@labring/sealos-shared-sdk/server/v2alpha')); diff --git a/tests/test_release_config.cjs b/tests/test_release_config.cjs index 9c5e2a9..fb2f077 100644 --- a/tests/test_release_config.cjs +++ b/tests/test_release_config.cjs @@ -1,3 +1,4 @@ +const { appRoot, sourceRoot, sourceFile, originalAlias } = require('./support/source.cjs'); // Offline configuration contract: real Helm output, YAML parser, schema and API handlers. const { test } = require('node:test'); const assert = require('node:assert/strict'); @@ -5,8 +6,8 @@ const { readFileSync } = require('node:fs'); const { execFileSync } = require('node:child_process'); const { resolve, dirname } = require('node:path'); const { createRequire, Module } = require('node:module'); -const root = resolve('release-v5.1/database'); -const requireApp = createRequire(resolve(root, 'package.json')); +const root = resolve('deploy/kubeblocks-0.8'); +const requireApp = createRequire(resolve(appRoot, 'package.json')); const ts = requireApp('typescript'); const yaml = requireApp('js-yaml'); function load(file, mocks = {}) { @@ -14,8 +15,8 @@ function load(file, mocks = {}) { mod.filename = file; mod.paths = Module._nodeModulePaths(dirname(file)); mod.require = id => { - if (id in mocks) return mocks[id]; - if (id.startsWith('@/')) return load(resolve(root, 'src', id.slice(2) + '.ts'), mocks); + if (originalAlias(id) in mocks) return mocks[originalAlias(id)]; + if (id.startsWith('@/')) return load(resolve(sourceRoot, id.slice(2) + '.ts'), mocks); return requireApp(id); }; mod._compile(ts.transpileModule(readFileSync(file, 'utf8'), { @@ -23,10 +24,10 @@ function load(file, mocks = {}) { }).outputText, file); return mod.exports; } -const { AppConfigSchema } = load(resolve(root, 'src/types/config.ts')); +const { AppConfigSchema } = load(resolve(sourceRoot, 'types/config.ts')); function render(...args) { const text = execFileSync('helm', ['template', 'dbprovider-frontend', - resolve(root, 'deploy/charts/database-frontend'), ...args], { encoding: 'utf8' }); + resolve(root, 'charts/database-frontend'), ...args], { encoding: 'utf8' }); const docs = yaml.loadAll(text).filter(Boolean); const cm = docs.find(d => d.kind === 'ConfigMap'); const config = AppConfigSchema.parse(yaml.load(cm.data['config.yaml'])); @@ -34,7 +35,7 @@ function render(...args) { } test('default and bundled Helm values produce valid mounted release config', () => { - for (const args of [[], ['-f', resolve(root, 'deploy/charts/database-frontend/database-frontend-values.yaml')]]) { + for (const args of [[], ['-f', resolve(root, 'charts/database-frontend/database-frontend-values.yaml')]]) { const { config, cm, deployment } = render(...args); assert.deepEqual(Object.keys(cm.data), ['config.yaml']); assert.equal(config.database.storage.maxSize, 300); @@ -60,7 +61,7 @@ test('legacy string flags, false, quotes, custom scripts and limits survive Helm }); test('example validates; wrong types and unknown settings are rejected', () => { - const config = yaml.load(readFileSync(resolve(root, 'data/config.example.yaml'), 'utf8')); + const config = yaml.load(readFileSync(resolve(appRoot, 'data/config.kb08.example.yaml'), 'utf8')); assert.ok(AppConfigSchema.safeParse(config).success); config.database.features.fileImport = 'false'; assert.equal(AppConfigSchema.safeParse(config).success, false); @@ -77,11 +78,11 @@ test('public API and readiness use loaded config without exposing credentials', '--set-string', 'dbproviderConfig.cloudDomain=config.example.test', '--set-string', 'dbproviderConfig.minioSecretKey=private-test-secret'); globalThis.__APP_CONFIG__ = config; - const { assertReady } = load(resolve(root, 'src/utils/healthz.ts')); + const { assertReady } = load(sourceFile('release-v5.1', 'utils/healthz.ts')); assertReady(); const mocks = { '@/services/backend/response': { jsonRes: (_res, body) => { response = body; } } }; let response; - const handler = load(resolve(root, 'src/pages/api/platform/getClientAppConfig.ts'), mocks).default; + const handler = load(sourceFile('release-v5.1', 'pages/api/platform/getClientAppConfig.ts'), mocks).default; await handler({}, {}); assert.deepEqual(response.data, { domain: 'config.example.test', storageMaxSize: 700 }); assert.equal(JSON.stringify(response).includes('private-test-secret'), false); diff --git a/tests/test_sealox_compatibility.cjs b/tests/test_sealox_compatibility.cjs index 8bb0755..9575d6b 100644 --- a/tests/test_sealox_compatibility.cjs +++ b/tests/test_sealox_compatibility.cjs @@ -1,3 +1,4 @@ +const { appRoot, sourceRoot, sourceFile, originalAlias } = require('./support/source.cjs'); // Run with: node --test tests/test_sealox_compatibility.cjs // Real release schemas and YAML generation; Kubernetes and backup writes are mocked. const { test } = require('node:test'); @@ -5,11 +6,11 @@ const assert = require('node:assert/strict'); const { readFileSync, existsSync } = require('node:fs'); const { resolve, dirname } = require('node:path'); const { createRequire, Module } = require('node:module'); -const root = resolve('release-v5.1/database/src'); -const requireApp = createRequire(resolve('release-v5.1/database/package.json')); +const root = sourceRoot; +const requireApp = createRequire(resolve(appRoot, 'package.json')); const ts = requireApp('typescript'); const yaml = requireApp('js-yaml'); -const config = yaml.load(readFileSync(resolve('release-v5.1/database/data/config.example.yaml'), 'utf8')); +const config = yaml.load(readFileSync(resolve('database/data/config.kb08.example.yaml'), 'utf8')); globalThis.__APP_CONFIG__ = config; function loader(mocks = {}) { @@ -22,7 +23,12 @@ function loader(mocks = {}) { mod.paths = Module._nodeModulePaths(dirname(file)); cache.set(file, mod); mod.require = id => { - if (id in mocks) return mocks[id]; + const alias = originalAlias(id); + const originalFile = file.replace(/implementations\/kb0[89]\//, ''); + const target = alias.startsWith('@/') ? resolve(sourceRoot, alias.slice(2)) : null; + let relative = target ? require('node:path').relative(dirname(originalFile), target) : id; + if (!relative.startsWith('.')) relative = './' + relative; + if (alias in mocks || relative in mocks) return { ...mocks[alias], ...mocks[relative] }; if (id.startsWith('@labring/sealos-shared-sdk/')) return load(requireApp.resolve(id)); if (id.startsWith('@/') || id.startsWith('.')) { const base = id.startsWith('@/') ? resolve(root, id.slice(2)) : resolve(dirname(file), id); @@ -57,9 +63,9 @@ function setup() { '@/utils/tools': { getScore: () => 350, encodeToHex: value => Buffer.from(value).toString('hex'), str2Num: Number }, './tools': { formatNumber: Number, str2Num: Number } }); - const { body } = load(resolve(root, 'types/apis/v2alpha/database/create-database.ts')); + const { body } = load(sourceFile('release-v5.1', 'types/apis/v2alpha/database/create-database.ts')); apiSchemas.createDatabaseSchemas = { body }; - const { createDatabase } = load(resolve(root, 'services/backend/v2alpha/create-database.ts')); + const { createDatabase } = load(sourceFile('release-v5.1', 'services/backend/v2alpha/create-database.ts')); const k8s = { namespace: 'test-namespace', applyYamlList: async (list, action) => { @@ -74,7 +80,7 @@ function setup() { } }; return { body, createDatabase, k8s, writes, backups, - handler: () => load(resolve(root, 'pages/api/v2alpha/databases.ts')).default }; + handler: () => load(sourceFile('release-v5.1', 'pages/api/v2alpha/databases.ts')).default }; } const request = (type, version) => ({ name: 'test-db', type, ...(version ? { version } : {}), @@ -121,7 +127,7 @@ test('release-only polardbx remains accepted; invalid engines are rejected', () test('public config returns the numeric storage limit without authentication or private env', async () => { const load = loader(); - const handler = load(resolve(root, 'pages/api/platform/getClientAppConfig.ts')).default; + const handler = load(sourceFile('release-v5.1', 'pages/api/platform/getClientAppConfig.ts')).default; const previous = config.database.storage.maxSize; try { for (const expected of [300, 500]) { diff --git a/main/tsconfig.base.json b/tsconfig.base.json similarity index 100% rename from main/tsconfig.base.json rename to tsconfig.base.json diff --git a/main/tsconfig.deps.json b/tsconfig.deps.json similarity index 100% rename from main/tsconfig.deps.json rename to tsconfig.deps.json diff --git a/main/tsconfig.json b/tsconfig.json similarity index 100% rename from main/tsconfig.json rename to tsconfig.json diff --git a/main/tsconfig.web.json b/tsconfig.web.json similarity index 100% rename from main/tsconfig.web.json rename to tsconfig.web.json