From 434d115a748e5bf9e9dc267383f373e62591dcee Mon Sep 17 00:00:00 2001 From: Tamal Saha Date: Sun, 19 Apr 2026 21:53:42 +0600 Subject: [PATCH 1/2] Switch to hugo Signed-off-by: Tamal Saha --- .eslintrc | 6 - .eslintrc-auto-import.json | 68 - .firebaserc | 22 - .github/dependabot.yml | 7 - .github/workflows/ci.yml | 116 +- .github/workflows/preview-website.yml | 62 +- .github/workflows/release-tracker.yml | 1 - .github/workflows/release.yml | 99 - .gitignore | 33 +- .stylelintrc | 3 - .vitepress/config.ts | 24 - .vitepress/header-links.ts | 75 - .vitepress/theme/index.ts | 14 - .vscode/extensions.json | 11 - .vscode/settings.json | 13 - DCO | 36 + LICENSE | 201 + auto-imports.d.ts | 8 - cspell.json | 22 - docs/platform/_index.md | 6 + docs/platform/guides/_index.md | 10 + .../guides/account-management/_index.md | 9 +- .../account-management/access-tokens.md | 19 +- .../account-management/delete-account.md | 15 +- .../account-management/images/Branding.png | Bin .../account-management/images/OAuth1.png | Bin .../account-management/images/OAuth2.png | Bin .../account-management/images/OAuth3.png | Bin .../account-management/images/OAuth4.png | Bin .../images/authentication-sources.png | Bin .../images/client-org-1.png | Bin .../images/client-org-2.png | Bin .../images/client-org-3.png | Bin .../images/client-org-4.png | Bin .../images/client-org-5.png | Bin .../images/credentials/Hetzner.png | Bin .../images/credentials/Scaleway.png | Bin .../images/credentials/azureStorage.png | Bin .../images/credentials/cloudflareStorage.png | Bin .../images/credentials/vultr.png | Bin .../images/delete-account.png | Bin .../images/external-authentication.png | Bin .../images/manage-profile-1.png | Bin .../images/manage-profile-2.png | Bin .../images/orgs-members-1.png | Bin .../images/orgs-members-2.png | Bin .../account-management/images/security-1.png | Bin .../account-management/images/security-2.png | Bin .../account-management/images/security-3.png | Bin .../images/sign-up-config-1.png | Bin .../images/sign-up-config-2.png | Bin .../images/site-admin-dashboard.png | Bin .../images/site-admin-deleted-account-1.png | Bin .../images/site-admin-deleted-account-2.png | Bin .../images/site-admin-organizations-1.png | Bin .../images/site-admin-organizations-2.png | Bin .../images/site-admin-user-account-1.png | Bin .../images/site-admin-user-account-2.png | Bin .../account-management/images/token-1.png | Bin .../account-management/images/token-2.png | Bin .../account-management/images/token-3.png | Bin .../images/upgrade-version-1.png | Bin .../images/upgrade-version-2.png | Bin .../images/upgrade-version-3.png | Bin .../images/upgrade-version-4.png | Bin .../account-management/kubernetes/_index.md | 8 +- .../kubernetes/credentials.md | 20 +- .../kubernetes}/images/aws-cred.png | Bin .../kubernetes}/images/do-cred.png | Bin .../kubernetes}/images/gcp-oauth.png | Bin .../kubernetes}/images/linode-cred.png | Bin .../kubernetes}/images/rancher-cred.png | Bin .../account-management/manage-profile.md | 22 +- .../account-management/manage-security.md | 19 +- .../guides/account-management/oauth2-apps.md | 21 +- .../guides/account-management/orgs-members.md | 17 +- .../site-administration/_index.md | 8 +- .../site-administration/ace-upgrade.md | 8 +- .../authentication-sources.md | 8 +- .../site-administration/branding.md | 8 +- .../site-administration/client-org.md | 8 +- .../site-administration/dashboard.md | 8 +- .../site-administration/delete-account.md | 8 +- .../external-authentication-sources.md | 8 +- .../site-administration/organizations.md | 8 +- .../sign-up-configuration.md | 8 +- .../site-administration/user-account.md | 8 +- .../guides/billing-and-usage-guide/_index.md | 9 +- .../cost-management.md | 13 +- .../dbaas-client-billing.md | 19 +- .../images/create-token-options.png | Bin .../images/create-token-ui-navigation.png | Bin .../images/created-token-result.png | Bin .../usage-section-billable-usage-home.png | Bin .../images/usage-section-home.png | Bin .../usage-section-prod-nonprod-usage-home.png | Bin .../images/usage-section-product-dropdown.png | Bin .../images/usage-section-select-month.png | Bin .../usage-section-usage-type-dropdown.png | Bin .../images/usage-section-view-by-dropdown.png | Bin .../billing-and-usage-guide/overview.md | 32 +- .../guides/cluster-management/_index.md | 12 + .../cluster-management/add-cluster/_index.md | 8 +- .../add-cluster/create-vendor-managed.md | 8 +- .../add-cluster/import-rancher-cluster.md | 8 +- .../add-cluster/import-vendor-managed.md | 13 +- .../add-cluster/overview.md | 8 +- .../add-cluster/self-managed/_index.md | 11 + .../self-managed/import-private.md | 13 +- .../add-cluster/self-managed/import-public.md | 13 +- .../self-managed/import-self-managed.md | 8 +- .../cluster-management/cluster-features.md | 36 +- .../cluster-management/cluster-helm-charts.md | 8 +- .../cluster-management/cluster-overview.md | 22 +- .../cluster-management/cluster-presets.md | 40 +- .../cluster-management/cluster-sidebar.md | 18 +- .../cluster-management/cluster-workload.md | 13 +- .../constraints-violations.md | 14 + .../cluster-management/hub-ui/_index.md | 9 +- .../hub-ui/cluster-and-clusterset.md | 13 +- .../cluster-management/hub-ui/create.md | 13 +- .../cluster-management/hub-ui/introduction.md | 13 +- .../hub-ui/license-management.md | 13 +- .../cluster-management/hub-ui/permission.md | 13 +- .../guides/cluster-management/hub-ui/spoke.md | 13 +- .../cluster-management/hub-ui/upgrade.md | 13 +- .../cluster-features/feature-databases1.png | Bin .../cluster-features/feature-databases2.png | Bin .../cluster-features/feature-databases3.png | Bin .../cluster-features/feature-databases4.png | Bin .../cluster-features/feature-databases5.png | Bin .../cluster-features/feature-databases6.png | Bin .../features-after-enable-some-features.png | Bin .../cluster-features/features-backup1.png | Bin .../cluster-features/features-backup2.png | Bin .../cluster-features/features-backup3.png | Bin .../cluster-features/features-backup4.png | Bin .../cluster-features/features-backup5.png | Bin .../cluster-features/features-backup6.png | Bin .../images/cluster-features/features.png | Bin .../cluster-overview/cluster-nodes-1.png | Bin .../cluster-overview/cluster-nodes-2.png | Bin .../cluster-overview/cluster-nodes-3.png | Bin .../cluster-overview/cluster-nodes-4.png | Bin .../cluster-overview/cluster-nodes-edit-1.png | Bin .../cluster-overview/cluster-nodes-edit-2.png | Bin .../cluster-overview/cluster-nodes-edit-3.png | Bin .../cluster-overview/cluster-overview-1.png | Bin .../cluster-overview/cluster-overview-2.png | Bin .../cluster-overview/cluster-overview-3.png | Bin .../cluster-overview/cluster-overview-4.png | Bin .../db-preset-edit-values1.png | Bin .../db-preset-edit-values2.png | Bin .../db-preset-edit-values3.png | Bin .../db-preset-edit-values4.png | Bin .../db-preset-edit-values5.png | Bin .../db-preset-edit-values6.png | Bin .../db-preset-edit-values7.png | Bin .../db-preset-edit-values8.png | Bin .../cluster-presets/present-basic-info.png | Bin .../images/cluster-presets/preset-enable.png | Bin .../preset-extend-to-namespace1.png | Bin .../preset-extend-to-namespace2.png | Bin .../images/cluster-presets/preset.png | Bin .../presets-after-feature-enable.png | Bin .../stash-preset-edit-values1.png | Bin .../stash-preset-edit-values2.png | Bin .../images/cluster-sidebar/sidebar-1.png | Bin .../cluster-sidebar/sidebar-after-update.png | Bin .../cluster-sidebar/sidebar-before-update.png | Bin .../cluster-sidebar/sidebar-search-menu.png | Bin .../cluster-sidebar/sidebar-updating.png | Bin .../cluster_and_clusterset/add_cluster_1.png | Bin .../cluster_and_clusterset/add_cluster_2.png | Bin .../cluster_and_clusterset/clusterset.png | Bin .../clusterset_feature_1.png | Bin .../clusterset_feature_2.png | Bin .../cluster_and_clusterset/unaligned.png | Bin .../cluster_and_clusterset/unaligned_2.png | Bin .../images/import/cluster-details.png | Bin .../images/import/cluster-profile.png | Bin .../images/import/deploy.png | Bin .../images/import/feature-set.png | Bin .../images/import/select-cluster.png | Bin .../images/introduction/hub-spoke-model.png | Bin .../images/license/add_license.png | Bin .../images/license/contract.png | Bin .../images/license/contract_1.png | Bin .../images/license/contract_2.png | Bin .../images/license/license_modal.png | Bin .../images/permission/add_member.png | Bin .../images/permission/create_team.png | Bin .../images/permission/go_to_platform.png | Bin .../images/permission/grant_permission.png | Bin .../images/permission/permission.png | Bin .../project-quota/project-quota-create1.png | Bin .../project-quota/project-quota-create2.png | Bin .../project-quota/project-quota-create3.png | Bin .../project-quota/project-quota-create4.png | Bin .../project-quota/project-quota-details.png | Bin .../project-quota/project-quota-edit.png | Bin .../images/project-quota/project-quota.png | Bin .../images/spoke/accept.png | Bin .../images/spoke/featureset.png | Bin .../images/spoke/homepage.png | Bin .../images/spoke/import_spoke.png | Bin .../images/spoke/request.png | Bin .../images/spoke/select.png | Bin .../cluster-management/images/spoke/spoke.png | Bin .../images/upgrade/upgrade_1.png | Bin .../images/upgrade/upgrade_2.png | Bin .../images/upgrade/upgrade_3.png | Bin .../cluster-management/project-quota.md | 22 +- .../cluster-management/remove-cluster.md | 8 +- .../cluster-management/security-report.md | 8 +- .../guides/database-management/_index.md | 9 +- .../backup-configuration.md | 31 +- .../database-management/backup-storage.md | 23 +- .../guides/database-management/backup.md | 25 +- .../contraint-violations.md | 8 +- .../database-management/create-database.md | 50 +- .../database-usage-insight.md | 16 +- .../database-management/delete-database.md | 16 +- .../database-management/expose-via-gateway.md | 15 +- .../images/auto-scaling-nodetopology.png | Bin .../images/auto-scaling-readiness.png | Bin .../images/auto-scaling-standalone.png | Bin .../images/auto-scaling.png | Bin .../images/backup-config-blueprint.png | Bin .../images/backup-config-create.png | Bin .../images/backup-config-delete.png | Bin .../images/backup-config-modify.png | Bin .../images/backup-config-submit.png | Bin .../images/backup-config.png | Bin .../images/backup/config-db-overview.png | Bin .../images/backup/config-db-repository.png | Bin .../images/backup/config-dbs-overview.png | Bin .../images/backup/config-label-annotation.png | Bin .../images/backup/config-name-namespace.png | Bin .../images/backup/config-session-task.png | Bin .../images/backup/config-sessions.png | Bin .../images/backup/config-target.png | Bin .../images/backup/configuration-overview.png | Bin .../images/backup/recent-backup-create.png | Bin .../images/backup/recent-backup-overview.png | Bin .../images/backup/recent-create-form.png | Bin .../images/backup/recent-db-overview.png | Bin .../images/backup/repository-app-ref.png | Bin .../backup/repository-create-overview.png | Bin .../images/backup/repository-db-overview.png | Bin .../images/backup/repository-db-snapshot.png | Bin .../backup/repository-label-annotation.png | Bin .../images/backup/repository-overview.png | Bin .../images/backup/repository-ref-secret.png | Bin .../images/backup/restore-config.png | Bin .../images/backup/restore-create-overview.png | Bin .../images/backup/restore-overview.png | Bin .../images/backup/restore-target.png | Bin .../images/backup/snapshot-delete.png | Bin .../images/backup/snapshot-operation-view.png | Bin .../images/backup/snapshot-overview.png | Bin .../images/backup/storage-create-backend.png | Bin .../images/backup/storage-create-overview.png | Bin .../images/backup/storage-db-overview.png | Bin .../backup/storage-label-annotation.png | Bin .../images/backup/storage-overview.png | Bin .../images/db-create/Additional-option.png | Bin .../db-create/advance-lavel-annotation.png | Bin .../images/db-create/auth-creds.png | Bin .../images/db-create/config-server.png | Bin .../images/db-create/create-overview-page.png | Bin .../images/db-create/db-type-select.png | Bin .../images/db-create/deletion-policy.png | Bin .../images/db-create/machine-profile.png | Bin .../images/db-create/mongos-mode.png | Bin .../db-create/name-namespace-select.png | Bin .../images/db-create/overview-create.png | Bin .../db-create/point-in-time-recovery.png | Bin .../images/db-create/replicaset-mode.png | Bin .../images/db-create/shard-mode.png | Bin .../images/db-create/shard-nodes.png | Bin .../images/db-create/storage-class.png | Bin .../images/db-insights.png | Bin .../images/db-overview.png | Bin .../images/db-users-kubevault.png | Bin .../database-management/images/db-users.png | Bin .../images/delete-modal.png | Bin .../images/delete-overview-modal.png | Bin .../images/delete-overview.png | Bin .../database-management/images/delete.png | Bin .../images/expose-via-gateway.png | Bin .../images/horizontal-scale-form.png | Bin .../images/instant-backup-form.png | Bin .../images/instant-backup.png | Bin .../images/monitoring-env-config.png | Bin .../images/monitoring-env-secret.png | Bin .../images/monitoring-exporter.png | Bin .../images/monitoring-scrapper.png | Bin .../database-management/images/monitoring.png | Bin .../images/motoring-prometheus.png | Bin .../images/motoring-service-monitor.png | Bin .../images/reconfigure-apply.png | Bin .../images/reconfigure-create-secret.png | Bin .../images/reconfigure-new-secret.png | Bin .../images/reconfigure-remove.png | Bin .../images/reconfigure.png | Bin .../images/restart-preview.png | Bin .../images/restart-submit.png | Bin .../database-management/images/restart.png | Bin .../images/restore-config.png | Bin .../database-management/images/restore.png | Bin .../images/storage-autoscaling.png | Bin .../images/storage-scale-readiness.png | Bin .../images/storage-scale-standalone.png | Bin .../images/storage-scale-volume.png | Bin .../images/storage-scale.png | Bin .../images/tls-certificate-details.png | Bin .../images/tls-certificate.png | Bin .../images/tls-operation.png | Bin .../guides/database-management/images/tls.png | Bin .../images/update-version-preview.png | Bin .../images/update-version-submit.png | Bin .../images/update-version.png | Bin .../images/vertical-exporter.png | Bin .../images/vertical-machine-profile.png | Bin .../images/vertical-machine-profile2.png | Bin .../images/vertical-node-selection.png | Bin .../images/vertical-scaling.png | Bin .../instant-backup-restore.md | 19 +- .../manage-recommendations.md | 14 + .../guides/database-management/monitoring.md | 27 +- .../database-management/recent-backups.md | 21 +- .../reconfigure-database.md | 18 +- .../guides/database-management/repository.md | 27 +- .../database-management/restart-database.md | 14 +- .../guides/database-management/restore.md | 21 +- .../database-management/scaling-storage.md | 23 +- .../guides/database-management/scaling.md | 33 +- .../database-management/security-report.md | 8 +- .../guides/database-management/snapshot.md | 19 +- .../guides/database-management/tls.md | 21 +- .../database-management/upgrade-version.md | 19 +- .../platform}/guides/get-started/_index.md | 9 +- .../guides/get-started/add-cluster.md | 14 +- .../guides/get-started/add-credential.md | 14 +- .../guides/get-started/architecture.md | 10 +- .../guides/get-started/enable-features.md | 13 +- .../get-started/images/architecture.png | Bin .../guides/get-started/images/selfhost.png | Bin .../guides/get-started/manage-databases.md | 14 + .../guides/get-started/register-login.md | 13 +- .../guides/get-started/requirements.md | 8 +- .../platform}/guides/integrations/_index.md | 9 +- .../guides/integrations/images/ace-url.png | Bin .../images/acer-proxy-installer.png | Bin .../integrations/images/create-repo.png | Bin .../guides/integrations/images/extensions.png | Bin .../integrations/images/install-ext.png | Bin .../integrations/images/kubedb-in-list.png | Bin .../integrations/images/kubedb-in-rancher.png | Bin .../integrations/images/manage-repo.png | Bin .../images/organization-create.png | Bin ...ganization-settings-generate-installer.png | Bin .../organization-settings-sync-users.png | Bin .../images/organization-settings.png | Bin .../guides/integrations/images/repo-info.png | Bin .../guides/integrations/images/three-dot.png | Bin .../guides/integrations/rancher-extension.md | 46 +- .../guides/license-management/_index.md | 9 +- .../guides/license-management/contract.md | 29 +- .../images/add-cluster-button-rectangle.png | Bin .../images/add-cluster-confirm.png | Bin .../images/add-cluster-information.png | Bin .../images/add-cluster-preview.png | Bin .../license-management/images/audits.png | Bin .../images/cluster-delete.png | Bin .../images/contract-details.png | Bin .../images/download-offline-license.png | Bin .../images/home-billing-console.png | Bin .../license-proxy-apiservice-yaml-status.png | Bin .../images/license-proxy-server-svc-check.png | Bin .../images/license-status-free-contract.png | Bin .../images/license-status-paid-contract.png | Bin .../offline-installer-cluster-selection.png | Bin .../offline-installer-contract-selection.png | Bin .../images/offline-installer-scripts.png | Bin .../images/online-installer-scripts.png | Bin .../images/online-installer.png | Bin .../license-management/license-proxyserver.md | 27 +- .../guides/license-management/overview.md | 20 +- .../license-management/troubleshoots.md | 15 +- {src/en => docs/platform}/overview.md | 7 +- .../platform/selfhost-setup/_index.md | 11 +- .../selfhost-setup/images/ace-dashboard.png | Bin .../selfhost-setup/images/ace-status.png | Bin .../selfhost-setup/images/admin-setting.png | Bin .../selfhost-setup/images/awsStep1.png | Bin .../selfhost-setup/images/awsStep2.png | Bin .../selfhost-setup/images/awsStep3.png | Bin .../selfhost-setup/images/awsStep4.png | Bin .../selfhost-setup/images/awsStep5.png | Bin .../selfhost-setup/images/awsStep7.png | Bin .../selfhost-setup/images/azureStep1.png | Bin .../selfhost-setup/images/azureStep2.png | Bin .../selfhost-setup/images/azureStep3.png | Bin .../selfhost-setup/images/azureStep4.png | Bin .../selfhost-setup/images/azureStep5.png | Bin .../selfhost-setup/images/branding.png | Bin .../images/deployment-progress.png | Bin .../images/domain-whitelisting.png | Bin .../selfhost-setup/images/features.png | Bin .../selfhost-setup/images/ingress-gateway.png | Bin .../selfhost-setup/images}/installer-home.png | Bin .../images/managed-resources.png | Bin .../platform}/selfhost-setup/images/nats.png | Bin .../selfhost-setup/images/policy-1.png | Bin .../selfhost-setup/images/policy-10.png | Bin .../selfhost-setup/images/policy-2.png | Bin .../selfhost-setup/images/policy-3.png | Bin .../selfhost-setup/images/policy-4.png | Bin .../selfhost-setup/images/policy-5.png | Bin .../selfhost-setup/images/policy-7.png | Bin .../selfhost-setup/images/policy-8.png | Bin .../selfhost-setup/images/policy-9.png | Bin .../selfhost-setup/images/resource-limit.png | Bin .../images/selfhost-deployment-option.png | Bin .../selfhost-setup/images/tenant.png | Bin .../platform/selfhost-setup/install/_index.md | 11 + .../selfhost-setup/install/aws-marketplace.md | 8 +- .../install/azure-marketplace.md | 8 +- .../selfhost-setup/install/cloud-demo.md | 8 +- .../selfhost-setup/install/k8s-app-demo.md | 8 +- .../selfhost-setup/install/onprem-demo.md | 8 +- .../selfhost-setup/install/openshift-demo.md | 8 +- .../install/selfhosted-production.md | 8 +- .../selfhost-setup/install/troubleshoot.md | 12 +- docs/platform/selfhost-setup/uninstall.md | 13 + .../platform/welcome/_index.md | 11 +- .../platform}/welcome/contributing.md | 9 +- {src/en => docs/platform}/welcome/support.md | 9 +- firebase.json | 17 - hack/scripts/open-pr.sh | 42 + hack/scripts/update-release-tracker.sh | 72 + index.json | 0 package-lock.json | 11905 ---------------- package.json | 57 - shims-vue.d.ts | 8 - src/_home-account.md | 10 - src/_home-billing.md | 10 - src/_home-cluster.md | 10 - src/_home-database.md | 10 - src/_home-hub-ui.md | 10 - src/_home-integrations.md | 10 - src/_home-license.md | 10 - src/_home-start.md | 10 - src/auto-imports.d.ts | 9 - src/en/guides/_index.md | 7 - src/en/guides/cluster-management/_index.md | 11 - .../add-cluster/self-managed/_index.md | 16 - .../constraints-violations.md | 19 - .../manage-recommendations.md | 19 - src/en/guides/get-started/manage-databases.md | 19 - src/en/selfhost-setup/install/_index.md | 8 - src/en/selfhost-setup/uninstall.md | 12 - src/index.md | 14 - src/public/images/404/404-bg.png | Bin 72111 -> 0 bytes src/public/images/404/man.png | Bin 64398 -> 0 bytes src/public/images/pattern-squire.png | Bin 461 -> 0 bytes tsconfig.json | 20 - 469 files changed, 1220 insertions(+), 13520 deletions(-) delete mode 100644 .eslintrc delete mode 100644 .eslintrc-auto-import.json delete mode 100644 .firebaserc delete mode 100644 .github/dependabot.yml delete mode 100644 .github/workflows/release.yml delete mode 100644 .stylelintrc delete mode 100644 .vitepress/config.ts delete mode 100644 .vitepress/header-links.ts delete mode 100644 .vitepress/theme/index.ts delete mode 100644 .vscode/extensions.json delete mode 100644 .vscode/settings.json create mode 100644 DCO create mode 100644 LICENSE delete mode 100644 auto-imports.d.ts delete mode 100644 cspell.json create mode 100644 docs/platform/_index.md create mode 100644 docs/platform/guides/_index.md rename {src/en => docs/platform}/guides/account-management/_index.md (62%) rename {src/en => docs/platform}/guides/account-management/access-tokens.md (79%) rename {src/en => docs/platform}/guides/account-management/delete-account.md (85%) rename {src/en => docs/platform}/guides/account-management/images/Branding.png (100%) rename {src/en => docs/platform}/guides/account-management/images/OAuth1.png (100%) rename {src/en => docs/platform}/guides/account-management/images/OAuth2.png (100%) rename {src/en => docs/platform}/guides/account-management/images/OAuth3.png (100%) rename {src/en => docs/platform}/guides/account-management/images/OAuth4.png (100%) rename {src/en => docs/platform}/guides/account-management/images/authentication-sources.png (100%) rename {src/en => docs/platform}/guides/account-management/images/client-org-1.png (100%) rename {src/en => docs/platform}/guides/account-management/images/client-org-2.png (100%) rename {src/en => docs/platform}/guides/account-management/images/client-org-3.png (100%) rename {src/en => docs/platform}/guides/account-management/images/client-org-4.png (100%) rename {src/en => docs/platform}/guides/account-management/images/client-org-5.png (100%) rename {src/en => docs/platform}/guides/account-management/images/credentials/Hetzner.png (100%) rename {src/en => docs/platform}/guides/account-management/images/credentials/Scaleway.png (100%) rename {src/en => docs/platform}/guides/account-management/images/credentials/azureStorage.png (100%) rename {src/en => docs/platform}/guides/account-management/images/credentials/cloudflareStorage.png (100%) rename {src/en => docs/platform}/guides/account-management/images/credentials/vultr.png (100%) rename {src/en => docs/platform}/guides/account-management/images/delete-account.png (100%) rename {src/en => docs/platform}/guides/account-management/images/external-authentication.png (100%) rename {src/en => docs/platform}/guides/account-management/images/manage-profile-1.png (100%) rename {src/en => docs/platform}/guides/account-management/images/manage-profile-2.png (100%) rename {src/en => docs/platform}/guides/account-management/images/orgs-members-1.png (100%) rename {src/en => docs/platform}/guides/account-management/images/orgs-members-2.png (100%) rename {src/en => docs/platform}/guides/account-management/images/security-1.png (100%) rename {src/en => docs/platform}/guides/account-management/images/security-2.png (100%) rename {src/en => docs/platform}/guides/account-management/images/security-3.png (100%) rename {src/en => docs/platform}/guides/account-management/images/sign-up-config-1.png (100%) rename {src/en => docs/platform}/guides/account-management/images/sign-up-config-2.png (100%) rename {src/en => docs/platform}/guides/account-management/images/site-admin-dashboard.png (100%) rename {src/en => docs/platform}/guides/account-management/images/site-admin-deleted-account-1.png (100%) rename {src/en => docs/platform}/guides/account-management/images/site-admin-deleted-account-2.png (100%) rename {src/en => docs/platform}/guides/account-management/images/site-admin-organizations-1.png (100%) rename {src/en => docs/platform}/guides/account-management/images/site-admin-organizations-2.png (100%) rename {src/en => docs/platform}/guides/account-management/images/site-admin-user-account-1.png (100%) rename {src/en => docs/platform}/guides/account-management/images/site-admin-user-account-2.png (100%) rename {src/en => docs/platform}/guides/account-management/images/token-1.png (100%) rename {src/en => docs/platform}/guides/account-management/images/token-2.png (100%) rename {src/en => docs/platform}/guides/account-management/images/token-3.png (100%) rename {src/en => docs/platform}/guides/account-management/images/upgrade-version-1.png (100%) rename {src/en => docs/platform}/guides/account-management/images/upgrade-version-2.png (100%) rename {src/en => docs/platform}/guides/account-management/images/upgrade-version-3.png (100%) rename {src/en => docs/platform}/guides/account-management/images/upgrade-version-4.png (100%) rename src/en/guides/account-management/kubernetes/index.md => docs/platform/guides/account-management/kubernetes/_index.md (56%) rename {src/en => docs/platform}/guides/account-management/kubernetes/credentials.md (97%) rename {src/public => docs/platform/guides/account-management/kubernetes}/images/aws-cred.png (100%) rename {src/public => docs/platform/guides/account-management/kubernetes}/images/do-cred.png (100%) rename {src/public => docs/platform/guides/account-management/kubernetes}/images/gcp-oauth.png (100%) rename {src/public => docs/platform/guides/account-management/kubernetes}/images/linode-cred.png (100%) rename {src/public => docs/platform/guides/account-management/kubernetes}/images/rancher-cred.png (100%) rename {src/en => docs/platform}/guides/account-management/manage-profile.md (71%) rename {src/en => docs/platform}/guides/account-management/manage-security.md (80%) rename {src/en => docs/platform}/guides/account-management/oauth2-apps.md (82%) rename {src/en => docs/platform}/guides/account-management/orgs-members.md (80%) rename src/en/guides/account-management/site-administration/index.md => docs/platform/guides/account-management/site-administration/_index.md (57%) rename {src/en => docs/platform}/guides/account-management/site-administration/ace-upgrade.md (94%) rename {src/en => docs/platform}/guides/account-management/site-administration/authentication-sources.md (95%) rename {src/en => docs/platform}/guides/account-management/site-administration/branding.md (90%) rename {src/en => docs/platform}/guides/account-management/site-administration/client-org.md (96%) rename {src/en => docs/platform}/guides/account-management/site-administration/dashboard.md (88%) rename {src/en => docs/platform}/guides/account-management/site-administration/delete-account.md (90%) rename {src/en => docs/platform}/guides/account-management/site-administration/external-authentication-sources.md (93%) rename {src/en => docs/platform}/guides/account-management/site-administration/organizations.md (93%) rename {src/en => docs/platform}/guides/account-management/site-administration/sign-up-configuration.md (92%) rename {src/en => docs/platform}/guides/account-management/site-administration/user-account.md (93%) rename {src/en => docs/platform}/guides/billing-and-usage-guide/_index.md (70%) rename {src/en => docs/platform}/guides/billing-and-usage-guide/cost-management.md (95%) rename {src/en => docs/platform}/guides/billing-and-usage-guide/dbaas-client-billing.md (95%) rename {src/en => docs/platform}/guides/billing-and-usage-guide/images/create-token-options.png (100%) rename {src/en => docs/platform}/guides/billing-and-usage-guide/images/create-token-ui-navigation.png (100%) rename {src/en => docs/platform}/guides/billing-and-usage-guide/images/created-token-result.png (100%) rename {src/en => docs/platform}/guides/billing-and-usage-guide/images/usage-section-billable-usage-home.png (100%) rename {src/en => docs/platform}/guides/billing-and-usage-guide/images/usage-section-home.png (100%) rename {src/en => docs/platform}/guides/billing-and-usage-guide/images/usage-section-prod-nonprod-usage-home.png (100%) rename {src/en => docs/platform}/guides/billing-and-usage-guide/images/usage-section-product-dropdown.png (100%) rename {src/en => docs/platform}/guides/billing-and-usage-guide/images/usage-section-select-month.png (100%) rename {src/en => docs/platform}/guides/billing-and-usage-guide/images/usage-section-usage-type-dropdown.png (100%) rename {src/en => docs/platform}/guides/billing-and-usage-guide/images/usage-section-view-by-dropdown.png (100%) rename {src/en => docs/platform}/guides/billing-and-usage-guide/overview.md (82%) create mode 100644 docs/platform/guides/cluster-management/_index.md rename {src/en => docs/platform}/guides/cluster-management/add-cluster/_index.md (55%) rename {src/en => docs/platform}/guides/cluster-management/add-cluster/create-vendor-managed.md (63%) rename {src/en => docs/platform}/guides/cluster-management/add-cluster/import-rancher-cluster.md (93%) rename {src/en => docs/platform}/guides/cluster-management/add-cluster/import-vendor-managed.md (88%) rename {src/en => docs/platform}/guides/cluster-management/add-cluster/overview.md (92%) create mode 100644 docs/platform/guides/cluster-management/add-cluster/self-managed/_index.md rename {src/en => docs/platform}/guides/cluster-management/add-cluster/self-managed/import-private.md (87%) rename {src/en => docs/platform}/guides/cluster-management/add-cluster/self-managed/import-public.md (86%) rename {src/en => docs/platform}/guides/cluster-management/add-cluster/self-managed/import-self-managed.md (88%) rename {src/en => docs/platform}/guides/cluster-management/cluster-features.md (88%) rename {src/en => docs/platform}/guides/cluster-management/cluster-helm-charts.md (94%) rename {src/en => docs/platform}/guides/cluster-management/cluster-overview.md (91%) rename {src/en => docs/platform}/guides/cluster-management/cluster-presets.md (83%) rename {src/en => docs/platform}/guides/cluster-management/cluster-sidebar.md (89%) rename {src/en => docs/platform}/guides/cluster-management/cluster-workload.md (92%) create mode 100644 docs/platform/guides/cluster-management/constraints-violations.md rename {src/en => docs/platform}/guides/cluster-management/hub-ui/_index.md (64%) rename {src/en => docs/platform}/guides/cluster-management/hub-ui/cluster-and-clusterset.md (89%) rename {src/en => docs/platform}/guides/cluster-management/hub-ui/create.md (85%) rename {src/en => docs/platform}/guides/cluster-management/hub-ui/introduction.md (88%) rename {src/en => docs/platform}/guides/cluster-management/hub-ui/license-management.md (78%) rename {src/en => docs/platform}/guides/cluster-management/hub-ui/permission.md (87%) rename {src/en => docs/platform}/guides/cluster-management/hub-ui/spoke.md (87%) rename {src/en => docs/platform}/guides/cluster-management/hub-ui/upgrade.md (79%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-features/feature-databases1.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-features/feature-databases2.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-features/feature-databases3.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-features/feature-databases4.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-features/feature-databases5.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-features/feature-databases6.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-features/features-after-enable-some-features.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-features/features-backup1.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-features/features-backup2.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-features/features-backup3.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-features/features-backup4.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-features/features-backup5.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-features/features-backup6.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-features/features.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-overview/cluster-nodes-1.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-overview/cluster-nodes-2.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-overview/cluster-nodes-3.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-overview/cluster-nodes-4.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-1.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-2.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-3.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-overview/cluster-overview-1.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-overview/cluster-overview-2.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-overview/cluster-overview-3.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-overview/cluster-overview-4.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/db-preset-edit-values1.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/db-preset-edit-values2.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/db-preset-edit-values3.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/db-preset-edit-values4.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/db-preset-edit-values5.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/db-preset-edit-values6.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/db-preset-edit-values7.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/db-preset-edit-values8.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/present-basic-info.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/preset-enable.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/preset-extend-to-namespace1.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/preset-extend-to-namespace2.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/preset.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/presets-after-feature-enable.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/stash-preset-edit-values1.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-presets/stash-preset-edit-values2.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-sidebar/sidebar-1.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-sidebar/sidebar-after-update.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-sidebar/sidebar-before-update.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-sidebar/sidebar-search-menu.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster-sidebar/sidebar-updating.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster_and_clusterset/add_cluster_1.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster_and_clusterset/add_cluster_2.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster_and_clusterset/clusterset.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster_and_clusterset/clusterset_feature_1.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster_and_clusterset/clusterset_feature_2.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster_and_clusterset/unaligned.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/cluster_and_clusterset/unaligned_2.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/import/cluster-details.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/import/cluster-profile.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/import/deploy.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/import/feature-set.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/import/select-cluster.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/introduction/hub-spoke-model.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/license/add_license.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/license/contract.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/license/contract_1.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/license/contract_2.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/license/license_modal.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/permission/add_member.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/permission/create_team.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/permission/go_to_platform.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/permission/grant_permission.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/permission/permission.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/project-quota/project-quota-create1.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/project-quota/project-quota-create2.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/project-quota/project-quota-create3.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/project-quota/project-quota-create4.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/project-quota/project-quota-details.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/project-quota/project-quota-edit.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/project-quota/project-quota.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/spoke/accept.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/spoke/featureset.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/spoke/homepage.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/spoke/import_spoke.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/spoke/request.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/spoke/select.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/spoke/spoke.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/upgrade/upgrade_1.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/upgrade/upgrade_2.png (100%) rename {src/en => docs/platform}/guides/cluster-management/images/upgrade/upgrade_3.png (100%) rename {src/en => docs/platform}/guides/cluster-management/project-quota.md (85%) rename {src/en => docs/platform}/guides/cluster-management/remove-cluster.md (92%) rename {src/en => docs/platform}/guides/cluster-management/security-report.md (57%) rename {src/en => docs/platform}/guides/database-management/_index.md (63%) rename {src/en => docs/platform}/guides/database-management/backup-configuration.md (93%) rename {src/en => docs/platform}/guides/database-management/backup-storage.md (93%) rename {src/en => docs/platform}/guides/database-management/backup.md (86%) rename {src/en => docs/platform}/guides/database-management/contraint-violations.md (61%) rename {src/en => docs/platform}/guides/database-management/create-database.md (89%) rename {src/en => docs/platform}/guides/database-management/database-usage-insight.md (95%) rename {src/en => docs/platform}/guides/database-management/delete-database.md (89%) rename {src/en => docs/platform}/guides/database-management/expose-via-gateway.md (87%) rename {src/en => docs/platform}/guides/database-management/images/auto-scaling-nodetopology.png (100%) rename {src/en => docs/platform}/guides/database-management/images/auto-scaling-readiness.png (100%) rename {src/en => docs/platform}/guides/database-management/images/auto-scaling-standalone.png (100%) rename {src/en => docs/platform}/guides/database-management/images/auto-scaling.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup-config-blueprint.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup-config-create.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup-config-delete.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup-config-modify.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup-config-submit.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup-config.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/config-db-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/config-db-repository.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/config-dbs-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/config-label-annotation.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/config-name-namespace.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/config-session-task.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/config-sessions.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/config-target.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/configuration-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/recent-backup-create.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/recent-backup-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/recent-create-form.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/recent-db-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/repository-app-ref.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/repository-create-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/repository-db-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/repository-db-snapshot.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/repository-label-annotation.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/repository-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/repository-ref-secret.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/restore-config.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/restore-create-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/restore-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/restore-target.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/snapshot-delete.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/snapshot-operation-view.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/snapshot-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/storage-create-backend.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/storage-create-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/storage-db-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/storage-label-annotation.png (100%) rename {src/en => docs/platform}/guides/database-management/images/backup/storage-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/Additional-option.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/advance-lavel-annotation.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/auth-creds.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/config-server.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/create-overview-page.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/db-type-select.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/deletion-policy.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/machine-profile.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/mongos-mode.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/name-namespace-select.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/overview-create.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/point-in-time-recovery.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/replicaset-mode.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/shard-mode.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/shard-nodes.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-create/storage-class.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-insights.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-users-kubevault.png (100%) rename {src/en => docs/platform}/guides/database-management/images/db-users.png (100%) rename {src/en => docs/platform}/guides/database-management/images/delete-modal.png (100%) rename {src/en => docs/platform}/guides/database-management/images/delete-overview-modal.png (100%) rename {src/en => docs/platform}/guides/database-management/images/delete-overview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/delete.png (100%) rename {src/en => docs/platform}/guides/database-management/images/expose-via-gateway.png (100%) rename {src/en => docs/platform}/guides/database-management/images/horizontal-scale-form.png (100%) rename {src/en => docs/platform}/guides/database-management/images/instant-backup-form.png (100%) rename {src/en => docs/platform}/guides/database-management/images/instant-backup.png (100%) rename {src/en => docs/platform}/guides/database-management/images/monitoring-env-config.png (100%) rename {src/en => docs/platform}/guides/database-management/images/monitoring-env-secret.png (100%) rename {src/en => docs/platform}/guides/database-management/images/monitoring-exporter.png (100%) rename {src/en => docs/platform}/guides/database-management/images/monitoring-scrapper.png (100%) rename {src/en => docs/platform}/guides/database-management/images/monitoring.png (100%) rename {src/en => docs/platform}/guides/database-management/images/motoring-prometheus.png (100%) rename {src/en => docs/platform}/guides/database-management/images/motoring-service-monitor.png (100%) rename {src/en => docs/platform}/guides/database-management/images/reconfigure-apply.png (100%) rename {src/en => docs/platform}/guides/database-management/images/reconfigure-create-secret.png (100%) rename {src/en => docs/platform}/guides/database-management/images/reconfigure-new-secret.png (100%) rename {src/en => docs/platform}/guides/database-management/images/reconfigure-remove.png (100%) rename {src/en => docs/platform}/guides/database-management/images/reconfigure.png (100%) rename {src/en => docs/platform}/guides/database-management/images/restart-preview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/restart-submit.png (100%) rename {src/en => docs/platform}/guides/database-management/images/restart.png (100%) rename {src/en => docs/platform}/guides/database-management/images/restore-config.png (100%) rename {src/en => docs/platform}/guides/database-management/images/restore.png (100%) rename {src/en => docs/platform}/guides/database-management/images/storage-autoscaling.png (100%) rename {src/en => docs/platform}/guides/database-management/images/storage-scale-readiness.png (100%) rename {src/en => docs/platform}/guides/database-management/images/storage-scale-standalone.png (100%) rename {src/en => docs/platform}/guides/database-management/images/storage-scale-volume.png (100%) rename {src/en => docs/platform}/guides/database-management/images/storage-scale.png (100%) rename {src/en => docs/platform}/guides/database-management/images/tls-certificate-details.png (100%) rename {src/en => docs/platform}/guides/database-management/images/tls-certificate.png (100%) rename {src/en => docs/platform}/guides/database-management/images/tls-operation.png (100%) rename {src/en => docs/platform}/guides/database-management/images/tls.png (100%) rename {src/en => docs/platform}/guides/database-management/images/update-version-preview.png (100%) rename {src/en => docs/platform}/guides/database-management/images/update-version-submit.png (100%) rename {src/en => docs/platform}/guides/database-management/images/update-version.png (100%) rename {src/en => docs/platform}/guides/database-management/images/vertical-exporter.png (100%) rename {src/en => docs/platform}/guides/database-management/images/vertical-machine-profile.png (100%) rename {src/en => docs/platform}/guides/database-management/images/vertical-machine-profile2.png (100%) rename {src/en => docs/platform}/guides/database-management/images/vertical-node-selection.png (100%) rename {src/en => docs/platform}/guides/database-management/images/vertical-scaling.png (100%) rename {src/en => docs/platform}/guides/database-management/instant-backup-restore.md (89%) create mode 100644 docs/platform/guides/database-management/manage-recommendations.md rename {src/en => docs/platform}/guides/database-management/monitoring.md (91%) rename {src/en => docs/platform}/guides/database-management/recent-backups.md (93%) rename {src/en => docs/platform}/guides/database-management/reconfigure-database.md (93%) rename {src/en => docs/platform}/guides/database-management/repository.md (92%) rename {src/en => docs/platform}/guides/database-management/restart-database.md (92%) rename {src/en => docs/platform}/guides/database-management/restore.md (92%) rename {src/en => docs/platform}/guides/database-management/scaling-storage.md (92%) rename {src/en => docs/platform}/guides/database-management/scaling.md (91%) rename {src/en => docs/platform}/guides/database-management/security-report.md (59%) rename {src/en => docs/platform}/guides/database-management/snapshot.md (93%) rename {src/en => docs/platform}/guides/database-management/tls.md (92%) rename {src/en => docs/platform}/guides/database-management/upgrade-version.md (91%) rename {src/en => docs/platform}/guides/get-started/_index.md (64%) rename {src/en => docs/platform}/guides/get-started/add-cluster.md (82%) rename {src/en => docs/platform}/guides/get-started/add-credential.md (83%) rename {src/en => docs/platform}/guides/get-started/architecture.md (92%) rename {src/en => docs/platform}/guides/get-started/enable-features.md (85%) rename {src/en => docs/platform}/guides/get-started/images/architecture.png (100%) rename {src/en => docs/platform}/guides/get-started/images/selfhost.png (100%) create mode 100644 docs/platform/guides/get-started/manage-databases.md rename {src/en => docs/platform}/guides/get-started/register-login.md (90%) rename {src/en => docs/platform}/guides/get-started/requirements.md (96%) rename {src/en => docs/platform}/guides/integrations/_index.md (63%) rename {src/en => docs/platform}/guides/integrations/images/ace-url.png (100%) rename {src/en => docs/platform}/guides/integrations/images/acer-proxy-installer.png (100%) rename {src/en => docs/platform}/guides/integrations/images/create-repo.png (100%) rename {src/en => docs/platform}/guides/integrations/images/extensions.png (100%) rename {src/en => docs/platform}/guides/integrations/images/install-ext.png (100%) rename {src/en => docs/platform}/guides/integrations/images/kubedb-in-list.png (100%) rename {src/en => docs/platform}/guides/integrations/images/kubedb-in-rancher.png (100%) rename {src/en => docs/platform}/guides/integrations/images/manage-repo.png (100%) rename {src/en => docs/platform}/guides/integrations/images/organization-create.png (100%) rename {src/en => docs/platform}/guides/integrations/images/organization-settings-generate-installer.png (100%) rename {src/en => docs/platform}/guides/integrations/images/organization-settings-sync-users.png (100%) rename {src/en => docs/platform}/guides/integrations/images/organization-settings.png (100%) rename {src/en => docs/platform}/guides/integrations/images/repo-info.png (100%) rename {src/en => docs/platform}/guides/integrations/images/three-dot.png (100%) rename {src/en => docs/platform}/guides/integrations/rancher-extension.md (78%) rename {src/en => docs/platform}/guides/license-management/_index.md (65%) rename {src/en => docs/platform}/guides/license-management/contract.md (90%) rename {src/en => docs/platform}/guides/license-management/images/add-cluster-button-rectangle.png (100%) rename {src/en => docs/platform}/guides/license-management/images/add-cluster-confirm.png (100%) rename {src/en => docs/platform}/guides/license-management/images/add-cluster-information.png (100%) rename {src/en => docs/platform}/guides/license-management/images/add-cluster-preview.png (100%) rename {src/en => docs/platform}/guides/license-management/images/audits.png (100%) rename {src/en => docs/platform}/guides/license-management/images/cluster-delete.png (100%) rename {src/en => docs/platform}/guides/license-management/images/contract-details.png (100%) rename {src/en => docs/platform}/guides/license-management/images/download-offline-license.png (100%) rename {src/en => docs/platform}/guides/license-management/images/home-billing-console.png (100%) rename {src/en => docs/platform}/guides/license-management/images/license-proxy-apiservice-yaml-status.png (100%) rename {src/en => docs/platform}/guides/license-management/images/license-proxy-server-svc-check.png (100%) rename {src/en => docs/platform}/guides/license-management/images/license-status-free-contract.png (100%) rename {src/en => docs/platform}/guides/license-management/images/license-status-paid-contract.png (100%) rename {src/en => docs/platform}/guides/license-management/images/offline-installer-cluster-selection.png (100%) rename {src/en => docs/platform}/guides/license-management/images/offline-installer-contract-selection.png (100%) rename {src/en => docs/platform}/guides/license-management/images/offline-installer-scripts.png (100%) rename {src/en => docs/platform}/guides/license-management/images/online-installer-scripts.png (100%) rename {src/en => docs/platform}/guides/license-management/images/online-installer.png (100%) rename {src/en => docs/platform}/guides/license-management/license-proxyserver.md (91%) rename {src/en => docs/platform}/guides/license-management/overview.md (91%) rename {src/en => docs/platform}/guides/license-management/troubleshoots.md (97%) rename {src/en => docs/platform}/overview.md (83%) rename src/en/selfhost-setup/index.md => docs/platform/selfhost-setup/_index.md (86%) rename {src/en => docs/platform}/selfhost-setup/images/ace-dashboard.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/ace-status.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/admin-setting.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/awsStep1.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/awsStep2.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/awsStep3.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/awsStep4.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/awsStep5.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/awsStep7.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/azureStep1.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/azureStep2.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/azureStep3.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/azureStep4.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/azureStep5.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/branding.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/deployment-progress.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/domain-whitelisting.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/features.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/ingress-gateway.png (100%) rename {src/public/images/selfhost-setup => docs/platform/selfhost-setup/images}/installer-home.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/managed-resources.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/nats.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/policy-1.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/policy-10.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/policy-2.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/policy-3.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/policy-4.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/policy-5.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/policy-7.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/policy-8.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/policy-9.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/resource-limit.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/selfhost-deployment-option.png (100%) rename {src/en => docs/platform}/selfhost-setup/images/tenant.png (100%) create mode 100644 docs/platform/selfhost-setup/install/_index.md rename {src/en => docs/platform}/selfhost-setup/install/aws-marketplace.md (99%) rename {src/en => docs/platform}/selfhost-setup/install/azure-marketplace.md (98%) rename {src/en => docs/platform}/selfhost-setup/install/cloud-demo.md (98%) rename {src/en => docs/platform}/selfhost-setup/install/k8s-app-demo.md (97%) rename {src/en => docs/platform}/selfhost-setup/install/onprem-demo.md (98%) rename {src/en => docs/platform}/selfhost-setup/install/openshift-demo.md (98%) rename {src/en => docs/platform}/selfhost-setup/install/selfhosted-production.md (99%) rename {src/en => docs/platform}/selfhost-setup/install/troubleshoot.md (56%) create mode 100644 docs/platform/selfhost-setup/uninstall.md rename src/en/welcome/index.md => docs/platform/welcome/_index.md (67%) rename {src/en => docs/platform}/welcome/contributing.md (82%) rename {src/en => docs/platform}/welcome/support.md (73%) delete mode 100644 firebase.json create mode 100755 hack/scripts/open-pr.sh create mode 100755 hack/scripts/update-release-tracker.sh delete mode 100644 index.json delete mode 100644 package-lock.json delete mode 100644 package.json delete mode 100644 shims-vue.d.ts delete mode 100644 src/_home-account.md delete mode 100644 src/_home-billing.md delete mode 100644 src/_home-cluster.md delete mode 100644 src/_home-database.md delete mode 100644 src/_home-hub-ui.md delete mode 100644 src/_home-integrations.md delete mode 100644 src/_home-license.md delete mode 100644 src/_home-start.md delete mode 100644 src/auto-imports.d.ts delete mode 100644 src/en/guides/_index.md delete mode 100644 src/en/guides/cluster-management/_index.md delete mode 100644 src/en/guides/cluster-management/add-cluster/self-managed/_index.md delete mode 100644 src/en/guides/cluster-management/constraints-violations.md delete mode 100644 src/en/guides/database-management/manage-recommendations.md delete mode 100644 src/en/guides/get-started/manage-databases.md delete mode 100644 src/en/selfhost-setup/install/_index.md delete mode 100644 src/en/selfhost-setup/uninstall.md delete mode 100644 src/index.md delete mode 100644 src/public/images/404/404-bg.png delete mode 100644 src/public/images/404/man.png delete mode 100644 src/public/images/pattern-squire.png delete mode 100644 tsconfig.json diff --git a/.eslintrc b/.eslintrc deleted file mode 100644 index 927d11c..0000000 --- a/.eslintrc +++ /dev/null @@ -1,6 +0,0 @@ -{ - "extends": ["@antfu", "./.eslintrc-auto-import.json"], - "rules": { - "vue/component-name-in-template-casing": ["error", "kebab-case"] - } -} diff --git a/.eslintrc-auto-import.json b/.eslintrc-auto-import.json deleted file mode 100644 index 8a135a3..0000000 --- a/.eslintrc-auto-import.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "globals": { - "Component": true, - "ComponentPublicInstance": true, - "ComputedRef": true, - "EffectScope": true, - "InjectionKey": true, - "PropType": true, - "Ref": true, - "VNode": true, - "computed": true, - "createApp": true, - "customRef": true, - "defineAsyncComponent": true, - "defineComponent": true, - "effectScope": true, - "getCurrentInstance": true, - "getCurrentScope": true, - "h": true, - "inject": true, - "isProxy": true, - "isReactive": true, - "isReadonly": true, - "isRef": true, - "markRaw": true, - "nextTick": true, - "onActivated": true, - "onBeforeMount": true, - "onBeforeRouteLeave": true, - "onBeforeRouteUpdate": true, - "onBeforeUnmount": true, - "onBeforeUpdate": true, - "onDeactivated": true, - "onErrorCaptured": true, - "onMounted": true, - "onRenderTracked": true, - "onRenderTriggered": true, - "onScopeDispose": true, - "onServerPrefetch": true, - "onUnmounted": true, - "onUpdated": true, - "provide": true, - "reactive": true, - "readonly": true, - "ref": true, - "resolveComponent": true, - "shallowReactive": true, - "shallowReadonly": true, - "shallowRef": true, - "toRaw": true, - "toRef": true, - "toRefs": true, - "toValue": true, - "triggerRef": true, - "unref": true, - "useAttrs": true, - "useCssModule": true, - "useCssVars": true, - "useLink": true, - "useRoute": true, - "useRouter": true, - "useSlots": true, - "watch": true, - "watchEffect": true, - "watchPostEffect": true, - "watchSyncEffect": true - } -} diff --git a/.firebaserc b/.firebaserc deleted file mode 100644 index 4153daa..0000000 --- a/.firebaserc +++ /dev/null @@ -1,22 +0,0 @@ -{ - "projects": { - "prod": "byte-builders", - "default": "kubedb-new-e7965" - }, - "targets": { - "kubedb-new-e7965": { - "hosting": { - "nuxt": [ - "bb-docs-qa" - ] - } - }, - "byte-builders": { - "hosting": { - "nuxt": [ - "byte-builders-docs" - ] - } - } - } -} diff --git a/.github/dependabot.yml b/.github/dependabot.yml deleted file mode 100644 index c2f87f8..0000000 --- a/.github/dependabot.yml +++ /dev/null @@ -1,7 +0,0 @@ -version: 2 -updates: - - package-ecosystem: "npm" - directory: "/" - schedule: - interval: "daily" - open-pull-requests-limit: 0 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2842e96..4c40825 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -3,7 +3,7 @@ name: CI on: pull_request: branches: - - '*' + - "*" push: branches: - master @@ -30,32 +30,102 @@ jobs: name: Build needs: label-detector runs-on: "${{ needs.label-detector.outputs.runs-on }}" - steps: - uses: actions/checkout@v4 - with: - persist-credentials: false - - uses: actions/setup-node@v4 + - name: Install kubectl + run: | + curl -LO https://dl.k8s.io/release/v1.32.1/bin/linux/amd64/kubectl + chmod +x ./kubectl + sudo mv ./kubectl /usr/local/bin/kubectl + + - name: Install link checker + run: | + curl -fsSL -o liche https://github.com/appscodelabs/liche/releases/download/v0.1.0/liche-linux-amd64 + chmod +x liche + sudo mv liche /usr/local/bin/liche + + - name: Install codespan schema checker + run: | + curl -fsSL -o codespan-schema-checker https://github.com/kmodules/codespan-schema-checker/releases/latest/download/codespan-schema-checker-linux-amd64 + chmod +x codespan-schema-checker + sudo mv codespan-schema-checker /usr/local/bin/codespan-schema-checker + + - name: Create Kubernetes cluster + id: kind + uses: engineerd/setup-kind@v0.5.0 with: - node-version: '22' - check-latest: true + version: v0.31.0 - - name: Prepare git - env: - GITHUB_USER: 1gtm - GITHUB_TOKEN: ${{ secrets.LGTM_GITHUB_TOKEN }} + - name: Prepare cluster for testing + id: local-path run: | - set -x - git config --global user.name "${GITHUB_USER}" - git config --global user.email "${GITHUB_USER}@appscode.com" - git config --global \ - url."https://${GITHUB_USER}:${GITHUB_TOKEN}@github.com".insteadOf \ - "https://github.com" - - - name: Build - env: - CI: true + echo "waiting for nodes to be ready ..." + kubectl wait --for=condition=Ready nodes --all --timeout=5m + kubectl get nodes + echo + echo "install helm 3" + curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash + echo "install kubedb-crds chart" + helm repo add appscode https://charts.appscode.com/stable/ + helm repo update + # helm install kubedb-crds appscode/kubedb-crds + # helm install kmodules-crds appscode/kmodules-crds + kubectl create -f https://github.com/cert-manager/cert-manager/releases/download/v1.11.0/cert-manager.crds.yaml + kubectl create -f https://github.com/prometheus-operator/prometheus-operator/releases/download/v0.75.0/stripped-down-crds.yaml + kubectl create -f https://github.com/kmodules/custom-resources/raw/release-1.25/crds/appcatalog.appscode.com_appbindings.yaml + kubectl create -f https://github.com/kmodules/custom-resources/raw/release-1.25/crds/metrics.appscode.com_metricsconfigurations.yaml + kubectl create -f https://github.com/stashed/installer/raw/master/crds/stash-crds.yaml + kubectl create -f https://github.com/kubevault/installer/raw/master/crds/kubevault-crds.yaml + kubectl create -f https://github.com/kubedb/installer/raw/master/crds/kubedb-crds.yaml + kubectl create -f https://github.com/kubernetes-csi/external-snapshotter/raw/master/client/config/crd/snapshot.storage.k8s.io_volumesnapshotclasses.yaml + kubectl create -f https://github.com/kubestash/installer/raw/master/crds/kubestash-crds.yaml + kubectl create -f https://github.com/appscode-cloud/catalog/raw/master/crds/catalog.appscode.com_mongodbbindings.yaml + kubectl create -f https://raw.githubusercontent.com/envoyproxy/gateway/refs/heads/main/charts/gateway-helm/charts/crds/crds/generated/gateway.envoyproxy.io_envoyproxies.yaml + kubectl create -f https://github.com/voyagermesh/installer/raw/master/charts/gateway-api/crds/gateway.networking.k8s.io_gatewayclasses.yaml + kubectl create -f https://github.com/fluxcd/helm-controller/raw/main/config/crd/bases/helm.toolkit.fluxcd.io_helmreleases.yaml + kubectl create -f https://github.com/fluxcd/source-controller/raw/main/config/crd/bases/source.toolkit.fluxcd.io_helmrepositories.yaml + kubectl create -f https://github.com/appscode-cloud/catalog/raw/master/crds/catalog.appscode.com_redisbindings.yaml + # distributed crds + kubectl create -f https://github.com/kube-slice/apis/raw/release-v2025.7.31/crd/controller.kubeslice.io_clusters.yaml + kubectl create -f https://github.com/kube-slice/apis/raw/release-v2025.7.31/crd/controller.kubeslice.io_projects.yaml + kubectl create -f https://github.com/kube-slice/apis/raw/release-v2025.7.31/crd/controller.kubeslice.io_sliceconfigs.yaml + kubectl create -f https://github.com/kubeops/petset/raw/master/crds/apps.k8s.appscode.com_placementpolicies.yaml + kubectl create -f https://github.com/open-cluster-management-io/api/raw/main/operator/v1/0000_00_operator.open-cluster-management.io_klusterlets.crd.yaml + kubectl create -f https://raw.githubusercontent.com/open-cluster-management-io/api/refs/heads/main/addon/v1alpha1/0000_01_addon.open-cluster-management.io_managedclusteraddons.crd.yaml + # virtual-secrets crds + kubectl create -f https://raw.githubusercontent.com/kubernetes-sigs/secrets-store-csi-driver/refs/heads/main/charts/secrets-store-csi-driver/crds/secrets-store.csi.x-k8s.io_secretproviderclasses.yaml + kubectl create -f https://raw.githubusercontent.com/virtual-secrets/apimachinery/refs/heads/master/crds/config.virtual-secrets.dev_secretmetadatas.yaml + kubectl create -f https://raw.githubusercontent.com/virtual-secrets/apimachinery/refs/heads/master/crds/config.virtual-secrets.dev_secretstores.yaml + kubectl create -f https://raw.githubusercontent.com/virtual-secrets/apimachinery/refs/heads/master/crds/virtual-secrets.dev_secretmounts.yaml + kubectl create -f https://raw.githubusercontent.com/virtual-secrets/apimachinery/refs/heads/master/crds/virtual-secrets.dev_secrets.yaml + + - name: Check codespan schema + run: | + git clone https://github.com/kubedb/installer.git + cd installer + git checkout $(git describe --tags --abbrev=0 2>/dev/null || echo master) + cd .. + git clone https://github.com/kmodules/resource-metadata.git + mv resource-metadata/hub /tmp + rm -rf resource-metadata + codespan-schema-checker --kubedb-catalog-dir=./installer/catalog/kubedb --content=./docs + + - name: Check links run: | - npm ci - npm run build + liche -r docs -d $(pwd) -c 10 -p -h -l -x '^(.*golang.org.*|.*github.com.*|.*api.slack.com.*|.*twitter.com.*|.*linode.com.*|.*helm.sh.*|.*k8s.io.*|.*percona.com.*|.*kubernetes.io.*|.*search-guard.com.*|.*hub.docker.com.*|.*appscode.com.*|.*mongodb.com.*|.*community.arm.com.*|.*cluster.com.*|.*proxysql.com.*|.*postgresql.org.*|.*kafka.com.*|.*stackoverflow.com.*|.*redis.io.*|.*elastic.co.*|.*mysql.*|.*developer.hashicorp.com.*|.*pgpool.net.*|.*clickhouse.com.*)$' + max_retries=5 + retry_count=0 + while [ $retry_count -lt $max_retries ]; do + if liche -r docs -d $(pwd) -c 10 -p -h -l -x '^(.*golang.org.*|.*github.com.*|.*api.slack.com.*|.*twitter.com.*|.*linode.com.*|.*helm.sh.*|.*k8s.io.*|.*percona.com.*|.*kubernetes.io.*|.*search-guard.com.*|.*hub.docker.com.*|.*appscode.com.*|.*mongodb.com.*|.*community.arm.com.*|.*cluster.com.*|.*proxysql.com.*|.*postgresql.org.*|.*kafka.com.*|.*stackoverflow.com.*|.*redis.io.*|.*elastic.co.*|.*mysql.*|.*developer.hashicorp.com.*|.*pgpool.net.*|.*clickhouse.com.*)$'; then + echo "Link check passed" + exit 0 + fi + retry_count=$((retry_count + 1)) + if [ $retry_count -lt $max_retries ]; then + echo "Link check failed, retrying... (attempt $((retry_count + 1))/$max_retries)" + sleep 5 + fi + done + echo "Link check failed after $max_retries attempts" + exit 1 diff --git a/.github/workflows/preview-website.yml b/.github/workflows/preview-website.yml index 9e5e52e..55dc510 100644 --- a/.github/workflows/preview-website.yml +++ b/.github/workflows/preview-website.yml @@ -30,30 +30,66 @@ jobs: steps: - uses: actions/checkout@v4 with: - persist-credentials: false + submodules: true + + - name: Set up Go 1.x + uses: actions/setup-go@v5 + with: + go-version: '1.25' + id: go - name: Use Node.js uses: actions/setup-node@v4 with: - node-version: '22' - check-latest: true + node-version: '20' + + - name: Install yq + run: | + curl -fsSL -o yq https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 + chmod +x yq + sudo mv yq /usr/local/bin/yq - - name: Prepare git + - name: Install Hugo + run: | + curl -fsSL -o hugo_extended.deb https://github.com/gohugoio/hugo/releases/download/v0.128.2/hugo_extended_0.128.2_linux-amd64.deb + sudo dpkg -i hugo_extended.deb + rm hugo_extended.deb + + - name: Install Hugo Tools + run: | + curl -fsSL -o hugo-tools https://github.com/appscodelabs/hugo-tools/releases/download/v0.2.23/hugo-tools-linux-amd64 + chmod +x hugo-tools + sudo mv hugo-tools /usr/local/bin/hugo-tools + + - name: Clone website repository env: GITHUB_USER: 1gtm GITHUB_TOKEN: ${{ secrets.LGTM_GITHUB_TOKEN }} + WEBSITE_REPOSITORY: ${{ secrets.WEBSITE_REPOSITORY }} run: | - set -x - git config --global user.name "${GITHUB_USER}" - git config --global user.email "${GITHUB_USER}@appscode.com" - git config --global \ - url."https://${GITHUB_USER}:${GITHUB_TOKEN}@github.com".insteadOf \ - "https://github.com" + url="https://${GITHUB_USER}:${GITHUB_TOKEN}@${WEBSITE_REPOSITORY}.git" + cd $RUNNER_WORKSPACE + git clone --recurse-submodules $url + cd $(basename $WEBSITE_REPOSITORY) + git config user.name "${GITHUB_USER}" + git config user.email "${GITHUB_USER}@appscode.com" - name: Update docs + env: + GITHUB_USER: 1gtm + GITHUB_TOKEN: ${{ secrets.LGTM_GITHUB_TOKEN }} + WEBSITE_REPOSITORY: ${{ secrets.WEBSITE_REPOSITORY }} + GOOGLE_CUSTOM_SEARCH_API_KEY: ${{ secrets.GOOGLE_CUSTOM_SEARCH_API_KEY }} run: | - npm ci - npm run build + set -x + export WEBSITE_ROOT=$RUNNER_WORKSPACE/$(basename $WEBSITE_REPOSITORY) + cd $WEBSITE_ROOT + npm install + make assets + hugo-tools update-branch --filename=./data/products/kubedbplatform.json --branch=${{ github.event.pull_request.head.sha }} + rm -rf content/docs + make docs-platform + make gen-prod - uses: FirebaseExtended/action-hosting-deploy@v0 with: @@ -61,6 +97,6 @@ jobs: firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_QA }}' projectId: kubedb-new-e7965 # target: kubedb-new-e7965 - # entryPoint: '.' + entryPoint: '../website' env: FIREBASE_CLI_PREVIEWS: hostingchannels diff --git a/.github/workflows/release-tracker.yml b/.github/workflows/release-tracker.yml index d46b567..af433c2 100644 --- a/.github/workflows/release-tracker.yml +++ b/.github/workflows/release-tracker.yml @@ -26,7 +26,6 @@ jobs: name: Build needs: label-detector runs-on: "${{ needs.label-detector.outputs.runs-on }}" - steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml deleted file mode 100644 index 31ae067..0000000 --- a/.github/workflows/release.yml +++ /dev/null @@ -1,99 +0,0 @@ -name: Release - -on: - push: - tags: - - "*.*" - branches: - - master - schedule: - - cron: '0 0 * * *' - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -concurrency: - group: ${{ github.workflow }}-${{ github.head_ref || github.ref }} - cancel-in-progress: true - -jobs: - label-detector: - name: Runner Label - runs-on: label-detector - outputs: - runs-on: ${{ steps.detector.outputs.label }} - steps: - - name: Detect Label - id: detector - run: | - # https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idoutputs - echo "label=$(curl -fsSL https://this-is-nats.appscode.ninja/runs-on/${{ github.repository_owner }}?visibility=${{ github.repository_visibility }})" >> $GITHUB_OUTPUT - - build: - name: Build - needs: label-detector - runs-on: "${{ needs.label-detector.outputs.runs-on }}" - steps: - - uses: actions/checkout@v1 - - - name: Check tag matches package version - run: | - PKG_VERSION=$(jq -r '.version' package.json) - GIT_TAG=$(git describe --exact-match --abbrev=0 2>/dev/null || echo "") - test "v${PKG_VERSION}" = "${GIT_TAG}" - - - name: Prepare git - env: - GITHUB_USER: 1gtm - GITHUB_TOKEN: ${{ secrets.LGTM_GITHUB_TOKEN }} - run: | - set -x - git config --global user.name "${GITHUB_USER}" - git config --global user.email "${GITHUB_USER}@appscode.com" - git config --global \ - url."https://${GITHUB_USER}:${GITHUB_TOKEN}@github.com".insteadOf \ - "https://github.com" - - - name: Use Node.js - uses: actions/setup-node@v4 - with: - node-version: '22' - check-latest: true - - - name: Install Firebase CLI - run: | - npm i -g firebase-tools@v11.14.1 - - # - name: QA - # env: - # FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }} - # if: startsWith(github.event.ref, 'refs/tags/') && (contains(github.ref, '-alpha.') || contains(github.ref, '-beta.')) - # run: | - # npm install - # npm run deploy:qa - - - name: Release - env: - FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }} - # if: startsWith(github.event.ref, 'refs/tags/') && (contains(github.ref, '-alpha.') || contains(github.ref, '-beta.')) == false - run: | - npm install - npm run deploy:prod - - - name: Update search index - env: - MEILISEARCH_ADMIN_API_KEY: ${{ secrets.MEILISEARCH_ADMIN_API_KEY }} - if: startsWith(github.event.ref, 'refs/tags/') && (contains(github.ref, '-alpha.') || contains(github.ref, '-beta.')) == false - run: | - curl \ - -X POST 'https://search.docs.appscode.com/indexes' \ - -H "Authorization: Bearer $MEILISEARCH_ADMIN_API_KEY" \ - -H 'Content-Type: application/json' \ - --data-binary '{ - "uid": "acedocs", - "primaryKey": "documentId" - }' - curl \ - -X POST 'https://search.docs.appscode.com/indexes/acedocs/documents' \ - -H "Authorization: Bearer $MEILISEARCH_ADMIN_API_KEY" \ - -H 'Content-Type: application/json' \ - --data-binary @.vitepress/dist/index.json diff --git a/.gitignore b/.gitignore index 60016c8..9f11b75 100644 --- a/.gitignore +++ b/.gitignore @@ -1,32 +1 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -pnpm-debug.log* -lerna-debug.log* - -node_modules -.DS_Store -dist -dist-ssr -coverage -*.local -.vitepress/cache - -/cypress/videos/ -/cypress/screenshots/ - -# Editor directories and files -.idea -*.suo -*.ntvs* -*.njsproj -*.sln -*.sw? - -.vitepress/dist -.vitepress/.temp -.firebase -*.tsbuildinfo +.idea/ diff --git a/.stylelintrc b/.stylelintrc deleted file mode 100644 index 83a27bf..0000000 --- a/.stylelintrc +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": ["stylelint-config-standard", "stylelint-config-standard-scss", "stylelint-config-recommended-vue", "stylelint-config-recommended-vue/scss"] -} diff --git a/.vitepress/config.ts b/.vitepress/config.ts deleted file mode 100644 index fb3079a..0000000 --- a/.vitepress/config.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { defineConfigWithTheme } from 'vitepress' -import type { ThemeConfig } from '@bytebuilders/docs-base' -import baseConfig from '@bytebuilders/docs-base/config' -import HeaderLinks from './header-links' - -const head: [string, Record][] = HeaderLinks.map(hl => ['link', hl]) -// https://vitepress.dev/reference/site-config -export default defineConfigWithTheme({ - extends: baseConfig, - title: 'AppsCode Docs', - titleTemplate: 'AppsCode', - description: 'A documentation website for AppsCode Platform.', - head, - vite: { - resolve: { - alias: { - '@vueuse/integrations/useCookies': '@vueuse/integrations/useCookies.mjs', - }, - }, - server: { - allowedHosts: ['bb.test'], - }, - }, -}) diff --git a/.vitepress/header-links.ts b/.vitepress/header-links.ts deleted file mode 100644 index 9564ac5..0000000 --- a/.vitepress/header-links.ts +++ /dev/null @@ -1,75 +0,0 @@ -export default [ - { - rel: 'apple-touch-icon', - sizes: '57x57', - href: 'https://cdn.appscode.com/images/products/appscode/icons/apple-icon-57x57.png', - }, - { - rel: 'apple-touch-icon', - sizes: '60x60', - href: 'https://cdn.appscode.com/images/products/appscode/icons/apple-icon-60x60.png', - }, - { - rel: 'apple-touch-icon', - sizes: '72x72', - href: 'https://cdn.appscode.com/images/products/appscode/icons/apple-icon-72x72.png', - }, - { - rel: 'apple-touch-icon', - sizes: '76x76', - href: 'https://cdn.appscode.com/images/products/appscode/icons/apple-icon-76x76.png', - }, - { - rel: 'apple-touch-icon', - sizes: '114x114', - href: 'https://cdn.appscode.com/images/products/appscode/icons/apple-icon-114x114.png', - }, - { - rel: 'apple-touch-icon', - sizes: '120x120', - href: 'https://cdn.appscode.com/images/products/appscode/icons/apple-icon-120x120.png', - }, - { - rel: 'apple-touch-icon', - sizes: '144x144', - href: 'https://cdn.appscode.com/images/products/appscode/icons/apple-icon-144x144.png', - }, - { - rel: 'apple-touch-icon', - sizes: '152x152', - href: 'https://cdn.appscode.com/images/products/appscode/icons/apple-icon-152x152.png', - }, - { - rel: 'apple-touch-icon', - sizes: '180x180', - href: 'https://cdn.appscode.com/images/products/appscode/icons/apple-icon-180x180.png', - }, - { - rel: 'icon', - type: 'image/png', - sizes: '192x192', - href: 'https://cdn.appscode.com/images/products/appscode/icons/android-icon-192x192.png', - }, - { - rel: 'icon', - type: 'image/png', - sizes: '32x32', - href: 'https://cdn.appscode.com/images/products/appscode/icons/favicon-32x32.png', - }, - { - rel: 'icon', - type: 'image/png', - sizes: '96x96', - href: 'https://cdn.appscode.com/images/products/appscode/icons/favicon-96x96.png', - }, - { - rel: 'icon', - type: 'image/png', - sizes: '16x16', - href: 'https://cdn.appscode.com/images/products/appscode/icons/favicon-16x16.png', - }, - { - rel: 'manifest', - href: 'https://cdn.appscode.com/images/products/appscode/icons/manifest.json', - }, -] as Record[] diff --git a/.vitepress/theme/index.ts b/.vitepress/theme/index.ts deleted file mode 100644 index dc872f1..0000000 --- a/.vitepress/theme/index.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { BaseLayout } from '@bytebuilders/docs-base' -import { createPinia } from 'pinia' -import { createI18n } from 'vue-i18n' -import type { Theme } from 'vitepress' - -export default { - Layout: BaseLayout, - enhanceApp({ app, router, siteData }) { - app.use(createPinia()) - app.use(createI18n({ legacy: false, ...siteData.value.themeConfig.i18n })) - // ... - }, - -} satisfies Theme diff --git a/.vscode/extensions.json b/.vscode/extensions.json deleted file mode 100644 index c9bf6e4..0000000 --- a/.vscode/extensions.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "recommendations": [ - "dbaeumer.vscode-eslint", - "vue.volar", - "streetsidesoftware.code-spell-checker", - "richie5um2.vscode-sort-json", - "unional.vscode-sort-package-json", - "reliutg.bulma-css-class-completion", - "stylelint.vscode-stylelint" - ] -} diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100644 index 3b73da3..0000000 --- a/.vscode/settings.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "prettier.enable": false, - "editor.formatOnSave": false, - "editor.codeActionsOnSave": { - "source.fixAll.eslint": "explicit", - "source.fixAll.stylelint": "explicit" - }, - "css.validate": false, - "less.validate": false, - "scss.validate": false, - "stylelint.enable": true, - "stylelint.validate": ["css", "scss", "sass", "less", "postcss", "vue"] -} diff --git a/DCO b/DCO new file mode 100644 index 0000000..716561d --- /dev/null +++ b/DCO @@ -0,0 +1,36 @@ +Developer Certificate of Origin +Version 1.1 + +Copyright (C) 2004, 2006 The Linux Foundation and its contributors. +660 York Street, Suite 102, +San Francisco, CA 94110 USA + +Everyone is permitted to copy and distribute verbatim copies of this +license document, but changing it is not allowed. + + +Developer's Certificate of Origin 1.1 + +By making a contribution to this project, I certify that: + +(a) The contribution was created in whole or in part by me and I + have the right to submit it under the open source license + indicated in the file; or + +(b) The contribution is based upon previous work that, to the best + of my knowledge, is covered under an appropriate open source + license and I have the right under that license to submit that + work with modifications, whether created in whole or in part + by me, under the same open source license (unless I am + permitted to submit under a different license), as indicated + in the file; or + +(c) The contribution was provided directly to me by some other + person who certified (a), (b) or (c) and I have not modified + it. + +(d) I understand and agree that this project and the contribution + are public and that a record of the contribution (including all + personal information I submit with it, including my sign-off) is + maintained indefinitely and may be redistributed consistent with + this project or the open source license(s) involved. diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..8dada3e --- /dev/null +++ b/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + 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. diff --git a/auto-imports.d.ts b/auto-imports.d.ts deleted file mode 100644 index 918aad8..0000000 --- a/auto-imports.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* eslint-disable */ -/* prettier-ignore */ -// @ts-nocheck -// Generated by unplugin-auto-import -export {} -declare global { - -} diff --git a/cspell.json b/cspell.json deleted file mode 100644 index 867a669..0000000 --- a/cspell.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "version": "0.2", - "ignorePaths": [], - "dictionaryDefinitions": [], - "dictionaries": [], - "words": [ - "antfu", - "bulma", - "kubedb", - "meilisearch", - "nihal", - "nuxt", - "pinia", - "unplugin", - "Vite", - "vitepress", - "vueuse", - "vuex" - ], - "ignoreWords": [], - "import": [] -} diff --git a/docs/platform/_index.md b/docs/platform/_index.md new file mode 100644 index 0000000..f437b2e --- /dev/null +++ b/docs/platform/_index.md @@ -0,0 +1,6 @@ +--- +title: KubeDB Platform +layout: platform_single +menu_name: docsplatform_{{.version}} +section_menu_id: welcome +--- diff --git a/docs/platform/guides/_index.md b/docs/platform/guides/_index.md new file mode 100644 index 0000000..459e57f --- /dev/null +++ b/docs/platform/guides/_index.md @@ -0,0 +1,10 @@ +--- +layout: platform_single +menu: + docsplatform_{{.version}}: + identifier: guides + name: Guides + weight: 30 +menu_name: docsplatform_{{.version}} +section_menu_id: guides +--- diff --git a/src/en/guides/account-management/_index.md b/docs/platform/guides/account-management/_index.md similarity index 62% rename from src/en/guides/account-management/_index.md rename to docs/platform/guides/account-management/_index.md index 1386cf4..5cda797 100644 --- a/src/en/guides/account-management/_index.md +++ b/docs/platform/guides/account-management/_index.md @@ -1,13 +1,14 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management name: Account Management + parent: guides description: Basic Account Management icon: https://img.icons8.com/00994A/ios/50/database--v1.png popular: true weight: 20 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/account-management/access-tokens.md b/docs/platform/guides/account-management/access-tokens.md similarity index 79% rename from src/en/guides/account-management/access-tokens.md rename to docs/platform/guides/account-management/access-tokens.md index 5a4633e..53b5e91 100644 --- a/src/en/guides/account-management/access-tokens.md +++ b/docs/platform/guides/account-management/access-tokens.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-accesstokens name: Tokens parent: account-management weight: 50 - home_menu: - identifier: home-account-accesstokens - name: Tokens - parent: home-account - weight: 50 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -22,7 +17,7 @@ Manage your access and NATS tokens to securely connect external applications and ## Access and Overview -![Tokens Overview](images/token-1.png) +![Tokens Overview](../images/token-1.png) Go to **USER SETTINGS > Tokens** to manage your credentials. @@ -32,7 +27,7 @@ Go to **USER SETTINGS > Tokens** to manage your credentials. ## Generate a New Access Token -![Generate New Token](images/token-2.png) +![Generate New Token](../images/token-2.png) Click **Generate Token** to create a new credential. @@ -43,7 +38,7 @@ Click **Generate Token** to create a new credential. ## Secure Your Token -![Token Created Successfully](images/token-3.png) +![Token Created Successfully](../images/token-3.png) A success banner will confirm the token is created. diff --git a/src/en/guides/account-management/delete-account.md b/docs/platform/guides/account-management/delete-account.md similarity index 85% rename from src/en/guides/account-management/delete-account.md rename to docs/platform/guides/account-management/delete-account.md index d70ff72..fbca492 100644 --- a/src/en/guides/account-management/delete-account.md +++ b/docs/platform/guides/account-management/delete-account.md @@ -1,24 +1,19 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-deleteaccount name: Delete Account parent: account-management weight: 20 - home_menu: - identifier: home-account-deleteaccount - name: Delete Account - parent: home-account - weight: 20 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Deleting Your AppsCode Account -![Delete Account](images/delete-account.png) +![Delete Account](../images/delete-account.png) This guide provides step-by-step instructions for permanently removing your personal account from the AppsCode platform. diff --git a/src/en/guides/account-management/images/Branding.png b/docs/platform/guides/account-management/images/Branding.png similarity index 100% rename from src/en/guides/account-management/images/Branding.png rename to docs/platform/guides/account-management/images/Branding.png diff --git a/src/en/guides/account-management/images/OAuth1.png b/docs/platform/guides/account-management/images/OAuth1.png similarity index 100% rename from src/en/guides/account-management/images/OAuth1.png rename to docs/platform/guides/account-management/images/OAuth1.png diff --git a/src/en/guides/account-management/images/OAuth2.png b/docs/platform/guides/account-management/images/OAuth2.png similarity index 100% rename from src/en/guides/account-management/images/OAuth2.png rename to docs/platform/guides/account-management/images/OAuth2.png diff --git a/src/en/guides/account-management/images/OAuth3.png b/docs/platform/guides/account-management/images/OAuth3.png similarity index 100% rename from src/en/guides/account-management/images/OAuth3.png rename to docs/platform/guides/account-management/images/OAuth3.png diff --git a/src/en/guides/account-management/images/OAuth4.png b/docs/platform/guides/account-management/images/OAuth4.png similarity index 100% rename from src/en/guides/account-management/images/OAuth4.png rename to docs/platform/guides/account-management/images/OAuth4.png diff --git a/src/en/guides/account-management/images/authentication-sources.png b/docs/platform/guides/account-management/images/authentication-sources.png similarity index 100% rename from src/en/guides/account-management/images/authentication-sources.png rename to docs/platform/guides/account-management/images/authentication-sources.png diff --git a/src/en/guides/account-management/images/client-org-1.png b/docs/platform/guides/account-management/images/client-org-1.png similarity index 100% rename from src/en/guides/account-management/images/client-org-1.png rename to docs/platform/guides/account-management/images/client-org-1.png diff --git a/src/en/guides/account-management/images/client-org-2.png b/docs/platform/guides/account-management/images/client-org-2.png similarity index 100% rename from src/en/guides/account-management/images/client-org-2.png rename to docs/platform/guides/account-management/images/client-org-2.png diff --git a/src/en/guides/account-management/images/client-org-3.png b/docs/platform/guides/account-management/images/client-org-3.png similarity index 100% rename from src/en/guides/account-management/images/client-org-3.png rename to docs/platform/guides/account-management/images/client-org-3.png diff --git a/src/en/guides/account-management/images/client-org-4.png b/docs/platform/guides/account-management/images/client-org-4.png similarity index 100% rename from src/en/guides/account-management/images/client-org-4.png rename to docs/platform/guides/account-management/images/client-org-4.png diff --git a/src/en/guides/account-management/images/client-org-5.png b/docs/platform/guides/account-management/images/client-org-5.png similarity index 100% rename from src/en/guides/account-management/images/client-org-5.png rename to docs/platform/guides/account-management/images/client-org-5.png diff --git a/src/en/guides/account-management/images/credentials/Hetzner.png b/docs/platform/guides/account-management/images/credentials/Hetzner.png similarity index 100% rename from src/en/guides/account-management/images/credentials/Hetzner.png rename to docs/platform/guides/account-management/images/credentials/Hetzner.png diff --git a/src/en/guides/account-management/images/credentials/Scaleway.png b/docs/platform/guides/account-management/images/credentials/Scaleway.png similarity index 100% rename from src/en/guides/account-management/images/credentials/Scaleway.png rename to docs/platform/guides/account-management/images/credentials/Scaleway.png diff --git a/src/en/guides/account-management/images/credentials/azureStorage.png b/docs/platform/guides/account-management/images/credentials/azureStorage.png similarity index 100% rename from src/en/guides/account-management/images/credentials/azureStorage.png rename to docs/platform/guides/account-management/images/credentials/azureStorage.png diff --git a/src/en/guides/account-management/images/credentials/cloudflareStorage.png b/docs/platform/guides/account-management/images/credentials/cloudflareStorage.png similarity index 100% rename from src/en/guides/account-management/images/credentials/cloudflareStorage.png rename to docs/platform/guides/account-management/images/credentials/cloudflareStorage.png diff --git a/src/en/guides/account-management/images/credentials/vultr.png b/docs/platform/guides/account-management/images/credentials/vultr.png similarity index 100% rename from src/en/guides/account-management/images/credentials/vultr.png rename to docs/platform/guides/account-management/images/credentials/vultr.png diff --git a/src/en/guides/account-management/images/delete-account.png b/docs/platform/guides/account-management/images/delete-account.png similarity index 100% rename from src/en/guides/account-management/images/delete-account.png rename to docs/platform/guides/account-management/images/delete-account.png diff --git a/src/en/guides/account-management/images/external-authentication.png b/docs/platform/guides/account-management/images/external-authentication.png similarity index 100% rename from src/en/guides/account-management/images/external-authentication.png rename to docs/platform/guides/account-management/images/external-authentication.png diff --git a/src/en/guides/account-management/images/manage-profile-1.png b/docs/platform/guides/account-management/images/manage-profile-1.png similarity index 100% rename from src/en/guides/account-management/images/manage-profile-1.png rename to docs/platform/guides/account-management/images/manage-profile-1.png diff --git a/src/en/guides/account-management/images/manage-profile-2.png b/docs/platform/guides/account-management/images/manage-profile-2.png similarity index 100% rename from src/en/guides/account-management/images/manage-profile-2.png rename to docs/platform/guides/account-management/images/manage-profile-2.png diff --git a/src/en/guides/account-management/images/orgs-members-1.png b/docs/platform/guides/account-management/images/orgs-members-1.png similarity index 100% rename from src/en/guides/account-management/images/orgs-members-1.png rename to docs/platform/guides/account-management/images/orgs-members-1.png diff --git a/src/en/guides/account-management/images/orgs-members-2.png b/docs/platform/guides/account-management/images/orgs-members-2.png similarity index 100% rename from src/en/guides/account-management/images/orgs-members-2.png rename to docs/platform/guides/account-management/images/orgs-members-2.png diff --git a/src/en/guides/account-management/images/security-1.png b/docs/platform/guides/account-management/images/security-1.png similarity index 100% rename from src/en/guides/account-management/images/security-1.png rename to docs/platform/guides/account-management/images/security-1.png diff --git a/src/en/guides/account-management/images/security-2.png b/docs/platform/guides/account-management/images/security-2.png similarity index 100% rename from src/en/guides/account-management/images/security-2.png rename to docs/platform/guides/account-management/images/security-2.png diff --git a/src/en/guides/account-management/images/security-3.png b/docs/platform/guides/account-management/images/security-3.png similarity index 100% rename from src/en/guides/account-management/images/security-3.png rename to docs/platform/guides/account-management/images/security-3.png diff --git a/src/en/guides/account-management/images/sign-up-config-1.png b/docs/platform/guides/account-management/images/sign-up-config-1.png similarity index 100% rename from src/en/guides/account-management/images/sign-up-config-1.png rename to docs/platform/guides/account-management/images/sign-up-config-1.png diff --git a/src/en/guides/account-management/images/sign-up-config-2.png b/docs/platform/guides/account-management/images/sign-up-config-2.png similarity index 100% rename from src/en/guides/account-management/images/sign-up-config-2.png rename to docs/platform/guides/account-management/images/sign-up-config-2.png diff --git a/src/en/guides/account-management/images/site-admin-dashboard.png b/docs/platform/guides/account-management/images/site-admin-dashboard.png similarity index 100% rename from src/en/guides/account-management/images/site-admin-dashboard.png rename to docs/platform/guides/account-management/images/site-admin-dashboard.png diff --git a/src/en/guides/account-management/images/site-admin-deleted-account-1.png b/docs/platform/guides/account-management/images/site-admin-deleted-account-1.png similarity index 100% rename from src/en/guides/account-management/images/site-admin-deleted-account-1.png rename to docs/platform/guides/account-management/images/site-admin-deleted-account-1.png diff --git a/src/en/guides/account-management/images/site-admin-deleted-account-2.png b/docs/platform/guides/account-management/images/site-admin-deleted-account-2.png similarity index 100% rename from src/en/guides/account-management/images/site-admin-deleted-account-2.png rename to docs/platform/guides/account-management/images/site-admin-deleted-account-2.png diff --git a/src/en/guides/account-management/images/site-admin-organizations-1.png b/docs/platform/guides/account-management/images/site-admin-organizations-1.png similarity index 100% rename from src/en/guides/account-management/images/site-admin-organizations-1.png rename to docs/platform/guides/account-management/images/site-admin-organizations-1.png diff --git a/src/en/guides/account-management/images/site-admin-organizations-2.png b/docs/platform/guides/account-management/images/site-admin-organizations-2.png similarity index 100% rename from src/en/guides/account-management/images/site-admin-organizations-2.png rename to docs/platform/guides/account-management/images/site-admin-organizations-2.png diff --git a/src/en/guides/account-management/images/site-admin-user-account-1.png b/docs/platform/guides/account-management/images/site-admin-user-account-1.png similarity index 100% rename from src/en/guides/account-management/images/site-admin-user-account-1.png rename to docs/platform/guides/account-management/images/site-admin-user-account-1.png diff --git a/src/en/guides/account-management/images/site-admin-user-account-2.png b/docs/platform/guides/account-management/images/site-admin-user-account-2.png similarity index 100% rename from src/en/guides/account-management/images/site-admin-user-account-2.png rename to docs/platform/guides/account-management/images/site-admin-user-account-2.png diff --git a/src/en/guides/account-management/images/token-1.png b/docs/platform/guides/account-management/images/token-1.png similarity index 100% rename from src/en/guides/account-management/images/token-1.png rename to docs/platform/guides/account-management/images/token-1.png diff --git a/src/en/guides/account-management/images/token-2.png b/docs/platform/guides/account-management/images/token-2.png similarity index 100% rename from src/en/guides/account-management/images/token-2.png rename to docs/platform/guides/account-management/images/token-2.png diff --git a/src/en/guides/account-management/images/token-3.png b/docs/platform/guides/account-management/images/token-3.png similarity index 100% rename from src/en/guides/account-management/images/token-3.png rename to docs/platform/guides/account-management/images/token-3.png diff --git a/src/en/guides/account-management/images/upgrade-version-1.png b/docs/platform/guides/account-management/images/upgrade-version-1.png similarity index 100% rename from src/en/guides/account-management/images/upgrade-version-1.png rename to docs/platform/guides/account-management/images/upgrade-version-1.png diff --git a/src/en/guides/account-management/images/upgrade-version-2.png b/docs/platform/guides/account-management/images/upgrade-version-2.png similarity index 100% rename from src/en/guides/account-management/images/upgrade-version-2.png rename to docs/platform/guides/account-management/images/upgrade-version-2.png diff --git a/src/en/guides/account-management/images/upgrade-version-3.png b/docs/platform/guides/account-management/images/upgrade-version-3.png similarity index 100% rename from src/en/guides/account-management/images/upgrade-version-3.png rename to docs/platform/guides/account-management/images/upgrade-version-3.png diff --git a/src/en/guides/account-management/images/upgrade-version-4.png b/docs/platform/guides/account-management/images/upgrade-version-4.png similarity index 100% rename from src/en/guides/account-management/images/upgrade-version-4.png rename to docs/platform/guides/account-management/images/upgrade-version-4.png diff --git a/src/en/guides/account-management/kubernetes/index.md b/docs/platform/guides/account-management/kubernetes/_index.md similarity index 56% rename from src/en/guides/account-management/kubernetes/index.md rename to docs/platform/guides/account-management/kubernetes/_index.md index 3d04599..5d1dd32 100644 --- a/src/en/guides/account-management/kubernetes/index.md +++ b/docs/platform/guides/account-management/kubernetes/_index.md @@ -1,12 +1,12 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-kubernetes name: Kubernetes weight: 100 parent: account-management pre: dropdown -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/account-management/kubernetes/credentials.md b/docs/platform/guides/account-management/kubernetes/credentials.md similarity index 97% rename from src/en/guides/account-management/kubernetes/credentials.md rename to docs/platform/guides/account-management/kubernetes/credentials.md index 23eab1c..c02effd 100644 --- a/src/en/guides/account-management/kubernetes/credentials.md +++ b/docs/platform/guides/account-management/kubernetes/credentials.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-kubernetes-creds name: Credentials parent: account-management-kubernetes weight: 20 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -263,9 +263,9 @@ Details: Then add the credential [here](https://home.appscode.com/user/settings/credentials/create) you got from previous step. - + - + ## Azure @@ -284,7 +284,7 @@ The command will output a JSON response containing the service principal details Then add the credential [here](https://home.appscode.com/user/settings/credentials/create). - + ## Digital Ocean To access Digital Ocean Managed clusters, you need to create a API token from Digital Ocean. @@ -324,7 +324,7 @@ To access GKE clusters, you need to create a GCP service account with with conta Then add the service account credentials [here](https://home.appscode.com/user/settings/credentials/create). - + ## Google OAuth @@ -339,7 +339,7 @@ This will create a credential, you will be able to access your k8s cluster with.


- + ## Linode @@ -353,7 +353,7 @@ Then add the credential [here](https://home.appscode.com/user/settings/credentia


- + ## Rancher diff --git a/src/public/images/aws-cred.png b/docs/platform/guides/account-management/kubernetes/images/aws-cred.png similarity index 100% rename from src/public/images/aws-cred.png rename to docs/platform/guides/account-management/kubernetes/images/aws-cred.png diff --git a/src/public/images/do-cred.png b/docs/platform/guides/account-management/kubernetes/images/do-cred.png similarity index 100% rename from src/public/images/do-cred.png rename to docs/platform/guides/account-management/kubernetes/images/do-cred.png diff --git a/src/public/images/gcp-oauth.png b/docs/platform/guides/account-management/kubernetes/images/gcp-oauth.png similarity index 100% rename from src/public/images/gcp-oauth.png rename to docs/platform/guides/account-management/kubernetes/images/gcp-oauth.png diff --git a/src/public/images/linode-cred.png b/docs/platform/guides/account-management/kubernetes/images/linode-cred.png similarity index 100% rename from src/public/images/linode-cred.png rename to docs/platform/guides/account-management/kubernetes/images/linode-cred.png diff --git a/src/public/images/rancher-cred.png b/docs/platform/guides/account-management/kubernetes/images/rancher-cred.png similarity index 100% rename from src/public/images/rancher-cred.png rename to docs/platform/guides/account-management/kubernetes/images/rancher-cred.png diff --git a/src/en/guides/account-management/manage-profile.md b/docs/platform/guides/account-management/manage-profile.md similarity index 71% rename from src/en/guides/account-management/manage-profile.md rename to docs/platform/guides/account-management/manage-profile.md index 43903ba..03d9844 100644 --- a/src/en/guides/account-management/manage-profile.md +++ b/docs/platform/guides/account-management/manage-profile.md @@ -1,23 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-manageprofile name: Manage Profile, Emails, & Avatar parent: account-management weight: 10 - home_menu: - identifier: home-account-manageprofile - name: Manage Profile, Emails, & Avatar - parent: home-account - weight: 10 - section_menu: - identifier: account-management - name: Account Management - weight: 20 - parent: guides -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -27,7 +17,7 @@ Personalize your account details and profile picture under **USER SETTINGS > Pro ## 1. Update Profile Info -![Update Profile Info](images/manage-profile-1.png) +![Update Profile Info](../images/manage-profile-1.png) Update your public identity and contact information in the **Manage Profile** section: @@ -45,7 +35,7 @@ You can choose between two methods for your profile picture: ### Option B: Custom Upload -![Custom Avatar Upload](images/manage-profile-2.png) +![Custom Avatar Upload](../images/manage-profile-2.png) - Select the **Custom** tab. - **Upload:** Drag and drop an image or select one from storage (Max: **1MB**, Max resolution: **4096 x 3072**). diff --git a/src/en/guides/account-management/manage-security.md b/docs/platform/guides/account-management/manage-security.md similarity index 80% rename from src/en/guides/account-management/manage-security.md rename to docs/platform/guides/account-management/manage-security.md index 8bdb5ab..dbbbcea 100644 --- a/src/en/guides/account-management/manage-security.md +++ b/docs/platform/guides/account-management/manage-security.md @@ -1,19 +1,14 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-security name: Manage Security weight: 30 parent: account-management pre: dropdown - home_menu: - identifier: home-account-security - name: Manage Security - parent: home-account - weight: 30 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Account Security @@ -22,14 +17,14 @@ Manage your account's protection under **USER SETTINGS > Security** in the left- ## 1. Update Password & Linked Accounts -![Update Password and Linked Accounts](images/security-1.png) +![Update Password and Linked Accounts](../images/security-1.png) - **Change Password:** To update your credentials, provide your **Current Password**, followed by a **New Password** and a confirmation in the **Retype Password** field. - **Linked Accounts:** View external accounts (like Google or GitHub) used for authentication and manage their connection to your profile. ## 2. Enroll in Two-Factor Authentication (2FA) -![Two-Factor Authentication Setup](images/security-2.png) +![Two-Factor Authentication Setup](../images/security-2.png) Enable 2FA to require a second verification step during login for enhanced security. @@ -38,7 +33,7 @@ Enable 2FA to require a second verification step during login for enhanced secur ## 3. Manage 2FA & Security Keys -![Manage 2FA and Security Keys](images/security-3.png) +![Manage 2FA and Security Keys](../images/security-3.png) Once 2FA is active, you can manage emergency access and hardware keys. diff --git a/src/en/guides/account-management/oauth2-apps.md b/docs/platform/guides/account-management/oauth2-apps.md similarity index 82% rename from src/en/guides/account-management/oauth2-apps.md rename to docs/platform/guides/account-management/oauth2-apps.md index 8028421..2c1c9c7 100644 --- a/src/en/guides/account-management/oauth2-apps.md +++ b/docs/platform/guides/account-management/oauth2-apps.md @@ -1,24 +1,19 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-oauth2apps name: Setup OAuth2 Applications parent: account-management weight: 40 - home_menu: - identifier: home-account-oauth2apps - name: Setup OAuth2 Applications - parent: home-account - weight: 40 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Application Overview -![OAuth2 Applications Overview](images/OAuth1.png) +![OAuth2 Applications Overview](../images/OAuth1.png) Navigate to **User Settings > Applications** to manage how third-party services interact with your account. This page is divided into two sections: @@ -28,7 +23,7 @@ Navigate to **User Settings > Applications** to manage how third-party services ## Create a New Application -![Create New Application](images/OAuth2.png) +![Create New Application](../images/OAuth2.png) On the creation screen, you must provide the following required information: @@ -38,7 +33,7 @@ On the creation screen, you must provide the following required information: ## Secure Your Credentials & Customize -![Client Credentials and Customization](images/OAuth3.png) +![Client Credentials and Customization](../images/OAuth3.png) Once the application is generated, you will see your **Client ID** and **Client Secret**. @@ -49,6 +44,6 @@ Once the application is generated, you will see your **Client ID** and **Client ## Confirmation of Success -![Success Notification](images/OAuth4.png) +![Success Notification](../images/OAuth4.png) After saving your changes or creating an application, a green "Successfully updated" notification will appear at the top of the screen. Your new application will now be visible in the OAuth2 Applications list, ready for use with its assigned Client ID diff --git a/src/en/guides/account-management/orgs-members.md b/docs/platform/guides/account-management/orgs-members.md similarity index 80% rename from src/en/guides/account-management/orgs-members.md rename to docs/platform/guides/account-management/orgs-members.md index c3eeffa..728189c 100644 --- a/src/en/guides/account-management/orgs-members.md +++ b/docs/platform/guides/account-management/orgs-members.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-orgmembers name: Manage Organizations parent: account-management weight: 60 - home_menu: - identifier: home-account-orgmembers - name: Manage Organizations - parent: home-account - weight: 60 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -22,7 +17,7 @@ Manage your collaborations and organizational structure via the **ORGANIZATIONS* ## 1. Viewing & Managing Organizations -![Organizations List](images/orgs-members-1.png) +![Organizations List](../images/orgs-members-1.png) The main list displays all organizations you belong to as a creator or member. @@ -31,7 +26,7 @@ The main list displays all organizations you belong to as a creator or member. ## 2. Creating a New Organization -![Create New Organization](images/orgs-members-2.png) +![Create New Organization](../images/orgs-members-2.png) Click **+ New Organization** to establish a new group. diff --git a/src/en/guides/account-management/site-administration/index.md b/docs/platform/guides/account-management/site-administration/_index.md similarity index 57% rename from src/en/guides/account-management/site-administration/index.md rename to docs/platform/guides/account-management/site-administration/_index.md index 1faa115..1dd3d7d 100644 --- a/src/en/guides/account-management/site-administration/index.md +++ b/docs/platform/guides/account-management/site-administration/_index.md @@ -1,12 +1,12 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-siteadmin name: Site Administration weight: 70 parent: account-management pre: dropdown -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/account-management/site-administration/ace-upgrade.md b/docs/platform/guides/account-management/site-administration/ace-upgrade.md similarity index 94% rename from src/en/guides/account-management/site-administration/ace-upgrade.md rename to docs/platform/guides/account-management/site-administration/ace-upgrade.md index 8cecb96..0dcb365 100644 --- a/src/en/guides/account-management/site-administration/ace-upgrade.md +++ b/docs/platform/guides/account-management/site-administration/ace-upgrade.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - v2_1_0_docs_menu: + docsplatform_{{.version}}: identifier: account-management-siteadmin-ace-upgrade name: ACE Upgrade parent: account-management-siteadmin weight: 60 -menu_name: v2_1_0_docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/account-management/site-administration/authentication-sources.md b/docs/platform/guides/account-management/site-administration/authentication-sources.md similarity index 95% rename from src/en/guides/account-management/site-administration/authentication-sources.md rename to docs/platform/guides/account-management/site-administration/authentication-sources.md index c6746fb..55e9dba 100644 --- a/src/en/guides/account-management/site-administration/authentication-sources.md +++ b/docs/platform/guides/account-management/site-administration/authentication-sources.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-siteadmin-authentication-sources name: Authentication Sources parent: account-management-siteadmin weight: 50 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/account-management/site-administration/branding.md b/docs/platform/guides/account-management/site-administration/branding.md similarity index 90% rename from src/en/guides/account-management/site-administration/branding.md rename to docs/platform/guides/account-management/site-administration/branding.md index 2079e88..e5a3ea6 100644 --- a/src/en/guides/account-management/site-administration/branding.md +++ b/docs/platform/guides/account-management/site-administration/branding.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-siteadmin-branding name: Branding parent: account-management-siteadmin weight: 70 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/account-management/site-administration/client-org.md b/docs/platform/guides/account-management/site-administration/client-org.md similarity index 96% rename from src/en/guides/account-management/site-administration/client-org.md rename to docs/platform/guides/account-management/site-administration/client-org.md index 0d4570f..6c6d0e2 100644 --- a/src/en/guides/account-management/site-administration/client-org.md +++ b/docs/platform/guides/account-management/site-administration/client-org.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-siteadmin-clientorg name: Client Organization parent: account-management-siteadmin weight: 75 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/account-management/site-administration/dashboard.md b/docs/platform/guides/account-management/site-administration/dashboard.md similarity index 88% rename from src/en/guides/account-management/site-administration/dashboard.md rename to docs/platform/guides/account-management/site-administration/dashboard.md index 23b13a3..3cda38c 100644 --- a/src/en/guides/account-management/site-administration/dashboard.md +++ b/docs/platform/guides/account-management/site-administration/dashboard.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-siteadmin-dashboard name: Dashboard parent: account-management-siteadmin weight: 10 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/account-management/site-administration/delete-account.md b/docs/platform/guides/account-management/site-administration/delete-account.md similarity index 90% rename from src/en/guides/account-management/site-administration/delete-account.md rename to docs/platform/guides/account-management/site-administration/delete-account.md index 564bd96..0d76217 100644 --- a/src/en/guides/account-management/site-administration/delete-account.md +++ b/docs/platform/guides/account-management/site-administration/delete-account.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-siteadmin-deleteaccount name: Delete Account parent: account-management-siteadmin weight: 40 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/account-management/site-administration/external-authentication-sources.md b/docs/platform/guides/account-management/site-administration/external-authentication-sources.md similarity index 93% rename from src/en/guides/account-management/site-administration/external-authentication-sources.md rename to docs/platform/guides/account-management/site-administration/external-authentication-sources.md index 75b6c8d..ad69be2 100644 --- a/src/en/guides/account-management/site-administration/external-authentication-sources.md +++ b/docs/platform/guides/account-management/site-administration/external-authentication-sources.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-siteadmin-external-authentication-sources name: External Authentication Sources parent: account-management-siteadmin weight: 60 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/account-management/site-administration/organizations.md b/docs/platform/guides/account-management/site-administration/organizations.md similarity index 93% rename from src/en/guides/account-management/site-administration/organizations.md rename to docs/platform/guides/account-management/site-administration/organizations.md index 44df71c..d47cd71 100644 --- a/src/en/guides/account-management/site-administration/organizations.md +++ b/docs/platform/guides/account-management/site-administration/organizations.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-siteadmin-organizations name: Organizations parent: account-management-siteadmin weight: 30 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/account-management/site-administration/sign-up-configuration.md b/docs/platform/guides/account-management/site-administration/sign-up-configuration.md similarity index 92% rename from src/en/guides/account-management/site-administration/sign-up-configuration.md rename to docs/platform/guides/account-management/site-administration/sign-up-configuration.md index da63892..be88160 100644 --- a/src/en/guides/account-management/site-administration/sign-up-configuration.md +++ b/docs/platform/guides/account-management/site-administration/sign-up-configuration.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-siteadmin-signupconfig name: Sign-up Configuration parent: account-management-siteadmin weight: 65 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/account-management/site-administration/user-account.md b/docs/platform/guides/account-management/site-administration/user-account.md similarity index 93% rename from src/en/guides/account-management/site-administration/user-account.md rename to docs/platform/guides/account-management/site-administration/user-account.md index 1318807..e3475d1 100644 --- a/src/en/guides/account-management/site-administration/user-account.md +++ b/docs/platform/guides/account-management/site-administration/user-account.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: account-management-siteadmin-useraccount name: User Accounts parent: account-management-siteadmin weight: 20 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/billing-and-usage-guide/_index.md b/docs/platform/guides/billing-and-usage-guide/_index.md similarity index 70% rename from src/en/guides/billing-and-usage-guide/_index.md rename to docs/platform/guides/billing-and-usage-guide/_index.md index efe2295..d462c14 100644 --- a/src/en/guides/billing-and-usage-guide/_index.md +++ b/docs/platform/guides/billing-and-usage-guide/_index.md @@ -1,13 +1,14 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: billing-and-usage-guide name: Billing and Usage Guide + parent: guides description: Billing and Usage Guide for AppsCode's products icon: https://img.icons8.com/external-anggara-basic-outline-anggara-putra/96/external-stats-ui-anggara-basic-outline-anggara-putra.png popular: true weight: 50 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/billing-and-usage-guide/cost-management.md b/docs/platform/guides/billing-and-usage-guide/cost-management.md similarity index 95% rename from src/en/guides/billing-and-usage-guide/cost-management.md rename to docs/platform/guides/billing-and-usage-guide/cost-management.md index 84ced1b..7c8a9c6 100644 --- a/src/en/guides/billing-and-usage-guide/cost-management.md +++ b/docs/platform/guides/billing-and-usage-guide/cost-management.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: billing-and-usage-guide-cost-management name: Cost Management parent: billing-and-usage-guide weight: 40 - home_menu: - identifier: billing-and-usage-guide-cost-management - name: Cost Management - parent: home-billing - weight: 40 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- ## **Cluster and Namespace Configuration for Cost Management** diff --git a/src/en/guides/billing-and-usage-guide/dbaas-client-billing.md b/docs/platform/guides/billing-and-usage-guide/dbaas-client-billing.md similarity index 95% rename from src/en/guides/billing-and-usage-guide/dbaas-client-billing.md rename to docs/platform/guides/billing-and-usage-guide/dbaas-client-billing.md index 10af528..c1b9b8b 100644 --- a/src/en/guides/billing-and-usage-guide/dbaas-client-billing.md +++ b/docs/platform/guides/billing-and-usage-guide/dbaas-client-billing.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: billing-and-usage-guide-dbaas-client-billing name: DBaaS Client Billing parent: billing-and-usage-guide weight: 30 - home_menu: - identifier: billing-and-usage-guide-dbaas-client-billing - name: DBaaS Client Billing - parent: home-billing - weight: 30 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- ### **DBaaS Provider Billing APIs** @@ -31,11 +26,11 @@ To use these APIs, you must authenticate your requests. Usage information is col 1. **Generate an Access Token:** Create a user-scoped API token from your account. - Go to User Settings and open the `Tokens` tab, then click on `Generate Token`. - ![Navigate to API Tokens](./images/create-token-ui-navigation.png) + ![Navigate to API Tokens](../images/create-token-ui-navigation.png) - Provide a token name and (optionally) an expiry, then click on `Generate`. - ![Create token options](./images/create-token-options.png) + ![Create token options](../images/create-token-options.png) - Copy the token and store it securely. It’s shown only once. - ![Copy the generated token](./images/created-token-result.png) + ![Copy the generated token](../images/created-token-result.png) 2. **Use as a Bearer Token:** This token must be included in the Authorization header of your API requests as a Bearer token. **Example Header:** Authorization: Bearer diff --git a/src/en/guides/billing-and-usage-guide/images/create-token-options.png b/docs/platform/guides/billing-and-usage-guide/images/create-token-options.png similarity index 100% rename from src/en/guides/billing-and-usage-guide/images/create-token-options.png rename to docs/platform/guides/billing-and-usage-guide/images/create-token-options.png diff --git a/src/en/guides/billing-and-usage-guide/images/create-token-ui-navigation.png b/docs/platform/guides/billing-and-usage-guide/images/create-token-ui-navigation.png similarity index 100% rename from src/en/guides/billing-and-usage-guide/images/create-token-ui-navigation.png rename to docs/platform/guides/billing-and-usage-guide/images/create-token-ui-navigation.png diff --git a/src/en/guides/billing-and-usage-guide/images/created-token-result.png b/docs/platform/guides/billing-and-usage-guide/images/created-token-result.png similarity index 100% rename from src/en/guides/billing-and-usage-guide/images/created-token-result.png rename to docs/platform/guides/billing-and-usage-guide/images/created-token-result.png diff --git a/src/en/guides/billing-and-usage-guide/images/usage-section-billable-usage-home.png b/docs/platform/guides/billing-and-usage-guide/images/usage-section-billable-usage-home.png similarity index 100% rename from src/en/guides/billing-and-usage-guide/images/usage-section-billable-usage-home.png rename to docs/platform/guides/billing-and-usage-guide/images/usage-section-billable-usage-home.png diff --git a/src/en/guides/billing-and-usage-guide/images/usage-section-home.png b/docs/platform/guides/billing-and-usage-guide/images/usage-section-home.png similarity index 100% rename from src/en/guides/billing-and-usage-guide/images/usage-section-home.png rename to docs/platform/guides/billing-and-usage-guide/images/usage-section-home.png diff --git a/src/en/guides/billing-and-usage-guide/images/usage-section-prod-nonprod-usage-home.png b/docs/platform/guides/billing-and-usage-guide/images/usage-section-prod-nonprod-usage-home.png similarity index 100% rename from src/en/guides/billing-and-usage-guide/images/usage-section-prod-nonprod-usage-home.png rename to docs/platform/guides/billing-and-usage-guide/images/usage-section-prod-nonprod-usage-home.png diff --git a/src/en/guides/billing-and-usage-guide/images/usage-section-product-dropdown.png b/docs/platform/guides/billing-and-usage-guide/images/usage-section-product-dropdown.png similarity index 100% rename from src/en/guides/billing-and-usage-guide/images/usage-section-product-dropdown.png rename to docs/platform/guides/billing-and-usage-guide/images/usage-section-product-dropdown.png diff --git a/src/en/guides/billing-and-usage-guide/images/usage-section-select-month.png b/docs/platform/guides/billing-and-usage-guide/images/usage-section-select-month.png similarity index 100% rename from src/en/guides/billing-and-usage-guide/images/usage-section-select-month.png rename to docs/platform/guides/billing-and-usage-guide/images/usage-section-select-month.png diff --git a/src/en/guides/billing-and-usage-guide/images/usage-section-usage-type-dropdown.png b/docs/platform/guides/billing-and-usage-guide/images/usage-section-usage-type-dropdown.png similarity index 100% rename from src/en/guides/billing-and-usage-guide/images/usage-section-usage-type-dropdown.png rename to docs/platform/guides/billing-and-usage-guide/images/usage-section-usage-type-dropdown.png diff --git a/src/en/guides/billing-and-usage-guide/images/usage-section-view-by-dropdown.png b/docs/platform/guides/billing-and-usage-guide/images/usage-section-view-by-dropdown.png similarity index 100% rename from src/en/guides/billing-and-usage-guide/images/usage-section-view-by-dropdown.png rename to docs/platform/guides/billing-and-usage-guide/images/usage-section-view-by-dropdown.png diff --git a/src/en/guides/billing-and-usage-guide/overview.md b/docs/platform/guides/billing-and-usage-guide/overview.md similarity index 82% rename from src/en/guides/billing-and-usage-guide/overview.md rename to docs/platform/guides/billing-and-usage-guide/overview.md index c9a9313..ee51c21 100644 --- a/src/en/guides/billing-and-usage-guide/overview.md +++ b/docs/platform/guides/billing-and-usage-guide/overview.md @@ -1,23 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: billing-and-usage-guide-overview name: Overview parent: billing-and-usage-guide weight: 10 - home_menu: - identifier: billing-and-usage-guide-overview - name: Overview - parent: home-billing - weight: 10 - section_menu: - identifier: billing-and-usage-guide - name: Billing and Usage Guide - weight: 50 - parent: guides -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # **Billing and Usage Guide** @@ -30,21 +20,21 @@ The AppsCode Billing Console is a web-based hub at [AppsCode Billing Console](ht This section focuses on the **Usage** dashboard, which shows the resources consumed by downstream AppsCode services like KubeDB running in your clusters. -![usage-dashboard](images/usage-section-home.png) +![usage-dashboard](../images/usage-section-home.png) ### **Billing View (Month, Product, Usage, View By)** * **Month:** Our billing is month-specific. Pick the month to review and the dashboard refreshes all charts and tables to that month. -![usage-month-selector](images/usage-section-select-month.png) +![usage-month-selector](../images/usage-section-select-month.png) * **Product:** Use the Product dropdown to scope data to one product (KubeDB, KubeStash, Voyager, KubeVault). -![usage-product-selector](images/usage-section-product-dropdown.png) +![usage-product-selector](../images/usage-section-product-dropdown.png) * **Usage Types:** * **Total Usage**: total consumption for the selected scope, measured primarily in `Core-Minute` and `GiB-Minute`. * **Billable Usage**: the portion that is billable, measured primarily in `Core-Month` and `GiB-Month`. Billable is computed only if your organization has a paid contract for the selected product. If there’s no paid contract, a 30‑day free contract is applied and usage during this period is counted as `free usage`. See the [Contract docs](http://appscode.com/docs/en/guides/license-management/contract.html) for details. -![usage-usage-type-selector](images/usage-section-usage-type-dropdown.png) +![usage-usage-type-selector](../images/usage-section-usage-type-dropdown.png) * **View By:** * Choose how data is grouped. For Database view, you can drill down **Kinds → Clusters → Deployments** (for example, `kubedb.com/Postgres` → `clusters running Postgres` → `individual database deployments`). -![usage-view-by-selector](images/usage-section-view-by-dropdown.png) +![usage-view-by-selector](../images/usage-section-view-by-dropdown.png) Additional View By filters - **View By: Cluster** — Start at clusters to see per‑cluster usage, then drill down **Clusters → Kinds → Deployments** (for example, `cluster-prod` → `kubedb.com/Postgres` → `individual postgres database deployments in cluster-prod`). @@ -53,12 +43,12 @@ Additional View By filters ### **Billable Usage and Cost Management** Billable shows the chargeable portion of usage for the selected month and product, reported in `Core-Month` and `GiB-Month`. -![billable-usage-home](images/usage-section-billable-usage-home.png) +![billable-usage-home](../images/usage-section-billable-usage-home.png) What you’ll see in the Billable table - **Billable Usage:** total chargeable usage for the month after applying contracts and rules. - **PROD/NON-PROD usage:** billable usage split by cluster mode—clusters marked `prod` are priced at the `PROD` rate; clusters marked `qa`, `staging`, or `dev` are priced at the `NON‑PROD` rate. -![usage-billable-prod-nonprod](images/usage-section-prod-nonprod-usage-home.png) +![usage-billable-prod-nonprod](../images/usage-section-prod-nonprod-usage-home.png) - **Free usage:** usage that isn’t billed. This includes: - **Trial usage** from namespaces annotated `ace.appscode.com/enable-resource-trial=true` (`first one‑month` free per database starting from its creation in that namespace). - Usage covered by the **30‑day free contract** when there’s no paid contract for the selected product. diff --git a/docs/platform/guides/cluster-management/_index.md b/docs/platform/guides/cluster-management/_index.md new file mode 100644 index 0000000..f502fae --- /dev/null +++ b/docs/platform/guides/cluster-management/_index.md @@ -0,0 +1,12 @@ +--- +layout: platform_single +menu: + docsplatform_{{.version}}: + identifier: cluster-management + name: Cluster Management + parent: guides + popular: true + weight: 30 +menu_name: docsplatform_{{.version}} +section_menu_id: guides +--- diff --git a/src/en/guides/cluster-management/add-cluster/_index.md b/docs/platform/guides/cluster-management/add-cluster/_index.md similarity index 55% rename from src/en/guides/cluster-management/add-cluster/_index.md rename to docs/platform/guides/cluster-management/add-cluster/_index.md index ca320f0..5d370df 100644 --- a/src/en/guides/cluster-management/add-cluster/_index.md +++ b/docs/platform/guides/cluster-management/add-cluster/_index.md @@ -1,12 +1,12 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-add name: Adding a Cluster weight: 10 parent: cluster-management pre: dropdown -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/cluster-management/add-cluster/create-vendor-managed.md b/docs/platform/guides/cluster-management/add-cluster/create-vendor-managed.md similarity index 63% rename from src/en/guides/cluster-management/add-cluster/create-vendor-managed.md rename to docs/platform/guides/cluster-management/add-cluster/create-vendor-managed.md index 7e842b5..5d9b015 100644 --- a/src/en/guides/cluster-management/add-cluster/create-vendor-managed.md +++ b/docs/platform/guides/cluster-management/add-cluster/create-vendor-managed.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-add-createvendormanaged name: Create Vendor Managed Clusters parent: cluster-management-add weight: 50 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/cluster-management/add-cluster/import-rancher-cluster.md b/docs/platform/guides/cluster-management/add-cluster/import-rancher-cluster.md similarity index 93% rename from src/en/guides/cluster-management/add-cluster/import-rancher-cluster.md rename to docs/platform/guides/cluster-management/add-cluster/import-rancher-cluster.md index 9ff91f8..48e55c4 100644 --- a/src/en/guides/cluster-management/add-cluster/import-rancher-cluster.md +++ b/docs/platform/guides/cluster-management/add-cluster/import-rancher-cluster.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-add-rancher name: Import Rancher Managed Clusters parent: cluster-management-add weight: 15 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/cluster-management/add-cluster/import-vendor-managed.md b/docs/platform/guides/cluster-management/add-cluster/import-vendor-managed.md similarity index 88% rename from src/en/guides/cluster-management/add-cluster/import-vendor-managed.md rename to docs/platform/guides/cluster-management/add-cluster/import-vendor-managed.md index 6de1ff6..4776cc5 100644 --- a/src/en/guides/cluster-management/add-cluster/import-vendor-managed.md +++ b/docs/platform/guides/cluster-management/add-cluster/import-vendor-managed.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-add-vendormanaged name: Import Vendor Managed Clusters parent: cluster-management-add weight: 10 - home_menu: - identifier: home-cluster-add-vendormanaged - name: Import Vendor Managed Clusters - parent: home-cluster - weight: 10 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/cluster-management/add-cluster/overview.md b/docs/platform/guides/cluster-management/add-cluster/overview.md similarity index 92% rename from src/en/guides/cluster-management/add-cluster/overview.md rename to docs/platform/guides/cluster-management/add-cluster/overview.md index bcb6fd0..d81d64a 100644 --- a/src/en/guides/cluster-management/add-cluster/overview.md +++ b/docs/platform/guides/cluster-management/add-cluster/overview.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-add-overview name: Overview parent: cluster-management-add weight: 1 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Adding a Cluster to AppsCode Dashboard diff --git a/docs/platform/guides/cluster-management/add-cluster/self-managed/_index.md b/docs/platform/guides/cluster-management/add-cluster/self-managed/_index.md new file mode 100644 index 0000000..02d386f --- /dev/null +++ b/docs/platform/guides/cluster-management/add-cluster/self-managed/_index.md @@ -0,0 +1,11 @@ +--- +layout: platform_single +menu: + docsplatform_{{.version}}: + identifier: cluster-management-add-selfmanaged + name: Import Self-Managed Clusters + parent: cluster-management-add + weight: 20 +menu_name: docsplatform_{{.version}} +section_menu_id: guides +--- \ No newline at end of file diff --git a/src/en/guides/cluster-management/add-cluster/self-managed/import-private.md b/docs/platform/guides/cluster-management/add-cluster/self-managed/import-private.md similarity index 87% rename from src/en/guides/cluster-management/add-cluster/self-managed/import-private.md rename to docs/platform/guides/cluster-management/add-cluster/self-managed/import-private.md index 12a159a..ae6b1b9 100644 --- a/src/en/guides/cluster-management/add-cluster/self-managed/import-private.md +++ b/docs/platform/guides/cluster-management/add-cluster/self-managed/import-private.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-add-importprivatecluster name: Import Private Clusters parent: cluster-management-add-selfmanaged weight: 40 - home_menu: - identifier: home-cluster-add-importprivatecluster - name: Import Private Clusters - parent: home-cluster - weight: 40 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/cluster-management/add-cluster/self-managed/import-public.md b/docs/platform/guides/cluster-management/add-cluster/self-managed/import-public.md similarity index 86% rename from src/en/guides/cluster-management/add-cluster/self-managed/import-public.md rename to docs/platform/guides/cluster-management/add-cluster/self-managed/import-public.md index af04fac..602f04b 100644 --- a/src/en/guides/cluster-management/add-cluster/self-managed/import-public.md +++ b/docs/platform/guides/cluster-management/add-cluster/self-managed/import-public.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-add-importpubliccluster name: Import Public Clusters parent: cluster-management-add-selfmanaged weight: 30 - home_menu: - identifier: home-cluster-add-importpubliccluster - name: Import Public Clusters - parent: home-cluster - weight: 30 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/cluster-management/add-cluster/self-managed/import-self-managed.md b/docs/platform/guides/cluster-management/add-cluster/self-managed/import-self-managed.md similarity index 88% rename from src/en/guides/cluster-management/add-cluster/self-managed/import-self-managed.md rename to docs/platform/guides/cluster-management/add-cluster/self-managed/import-self-managed.md index a038aaf..066bdce 100644 --- a/src/en/guides/cluster-management/add-cluster/self-managed/import-self-managed.md +++ b/docs/platform/guides/cluster-management/add-cluster/self-managed/import-self-managed.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-add-selfmanaged-overview name: Overview parent: cluster-management-add-selfmanaged weight: 10 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Adding a Self-Managed Cluster to AppsCode Dashboard diff --git a/src/en/guides/cluster-management/cluster-features.md b/docs/platform/guides/cluster-management/cluster-features.md similarity index 88% rename from src/en/guides/cluster-management/cluster-features.md rename to docs/platform/guides/cluster-management/cluster-features.md index 314d8c4..133c389 100644 --- a/src/en/guides/cluster-management/cluster-features.md +++ b/docs/platform/guides/cluster-management/cluster-features.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-feature name: Manage Feature Sets parent: cluster-management weight: 30 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Manage Feature Sets @@ -20,7 +20,7 @@ section_menu: guides The Feature Sets grid on the Cluster Overview page shows all available product modules and their current installation status. -![Feature Sets overview grid — all 18 Feature Sets with their status badges](images/cluster-features/features.png) +![Feature Sets overview grid — all 18 Feature Sets with their status badges](../images/cluster-features/features.png) | Feature Set | Description | |---|---| @@ -47,7 +47,7 @@ The Feature Sets grid on the Cluster Overview page shows all available product m Once you have enabled some Feature Sets, the Cluster Overview grid reflects the updated statuses — cards previously showing **Not Installed** will update to **Ready**. -![Cluster Overview Feature Sets grid after enabling Backup & Recovery and Databases — both show Ready](images/cluster-features/features-after-enable-some-features.png) +![Cluster Overview Feature Sets grid after enabling Backup & Recovery and Databases — both show Ready](../images/cluster-features/features-after-enable-some-features.png) --- @@ -62,7 +62,7 @@ From the Cluster Overview, click the **Backup & Recovery** card. The Feature Set - A **Components** section with three cards: **Stash 2.0** *(Recommended)*, **Stash Presets** *(Recommended)*, and **Stash** - A green **Enable** button on each component card, and a master **Enable** button at the top-right -![Backup & Recovery Feature Set page — Components listed with individual Enable buttons](images/cluster-features/features-backup1.png) +![Backup & Recovery Feature Set page — Components listed with individual Enable buttons](../images/cluster-features/features-backup1.png) ### Step 2 — Select Components and Configure the Preset @@ -81,7 +81,7 @@ Click the top-right **Enable** button to open the **Enable Feature Set modal**. Fill in all required fields and click **Preview** to advance. -![Backup & Recovery Enable modal — component checkboxes and Preset Configuration form](images/cluster-features/features-backup2.png) +![Backup & Recovery Enable modal — component checkboxes and Preset Configuration form](../images/cluster-features/features-backup2.png) ### Step 3 — Review the Generated Helm Values @@ -93,7 +93,7 @@ The modal advances to the **Values Preview** step: - Click **Compare default values** to diff against the out-of-the-box configuration - Click **← Previous** to go back, or **Deploy** to apply -![Values preview — Helm release YAML editor with Edit/Preview Changes tabs and Deploy button](images/cluster-features/features-backup3.png) +![Values preview — Helm release YAML editor with Edit/Preview Changes tabs and Deploy button](../images/cluster-features/features-backup3.png) ### Step 4 — Deploy and Monitor Progress @@ -105,17 +105,17 @@ Enabling FeatureSet `opscenter-backup` started! Wait for the log stream to complete, then close the modal. -![Deploy progress modal showing live log output for Backup & Recovery](images/cluster-features/features-backup4.png) +![Deploy progress modal showing live log output for Backup & Recovery](../images/cluster-features/features-backup4.png) ### Step 5 — Verify the Feature Set Status After deployment, the Feature Set page shows the updated component statuses. If a dependency is still being pulled, a banner reads: *"Feature 'stash-presets' is enabled but not ready."* The affected component cards show a ⚠️ warning icon with a tooltip *"Required workload does not exist."* -![Backup & Recovery page in partially-ready state — warning icons on components still initializing](images/cluster-features/features-backup5.png) +![Backup & Recovery page in partially-ready state — warning icons on components still initializing](../images/cluster-features/features-backup5.png) Once all components are running, all cards show a green ✓ checkmark and both **Configure** and **Disable** buttons appear at the top-right — confirming the Feature Set is fully **Ready**. -![Backup & Recovery page fully Ready — all components show green checkmarks, Configure and Disable buttons visible](images/cluster-features/features-backup6.png) +![Backup & Recovery page fully Ready — all components show green checkmarks, Configure and Disable buttons visible](../images/cluster-features/features-backup6.png) --- @@ -130,7 +130,7 @@ Click the **Databases** card on the Cluster Overview. The Feature Set page opens - A single **KubeDB** component card *(Recommended)* with sub-components: `KubeDB`, `KubeDB Opscenter`, `KubeDB UI Presets`, and **More** - A green **Enable** button on the component card and at the top-right -![Databases Feature Set page — KubeDB component with Enable button](images/cluster-features/feature-databases1.png) +![Databases Feature Set page — KubeDB component with Enable button](../images/cluster-features/feature-databases1.png) ### Step 2 — Select Database Types @@ -143,7 +143,7 @@ Click the **Enable** button to open the **Enable Feature Set modal**. The modal Select your required database types and click **Preview**. -![Databases Enable modal — KubeDB component checkboxes and database type multi-select](images/cluster-features/feature-databases2.png) +![Databases Enable modal — KubeDB component checkboxes and database type multi-select](../images/cluster-features/feature-databases2.png) ### Step 3 — Review the Generated Helm Values @@ -154,7 +154,7 @@ The modal advances to the YAML values preview. Three Helm release files are list The YAML editor on the right shows the `featureGates` configuration — each selected database type is set to `true`, others to `false`. Use **Edit / Preview Changes** tabs to review, then click **Deploy**. -![Databases Values preview — featureGates YAML showing enabled database types](images/cluster-features/feature-databases3.png) +![Databases Values preview — featureGates YAML showing enabled database types](../images/cluster-features/feature-databases3.png) ### Step 4 — Deploy and Monitor Progress @@ -167,17 +167,17 @@ Deploying resources for FeatureSet `opscenter-datastore` started! Wait for the log to complete, then close the modal. -![Databases deploy progress modal showing live log output](images/cluster-features/feature-databases4.png) +![Databases deploy progress modal showing live log output](../images/cluster-features/feature-databases4.png) ### Step 5 — Verify the Feature Set Status After deployment, the Databases page shows the KubeDB component status. While resources are still initializing, the banner reads: *"Feature 'kubedb' is enabled but not ready."* The component card shows a ⚠️ warning icon and tooltip *"Required workload does not exist."* -![Databases page in partially-ready state — KubeDB component showing warning with tooltip](images/cluster-features/feature-databases5.png) +![Databases page in partially-ready state — KubeDB component showing warning with tooltip](../images/cluster-features/feature-databases5.png) Once KubeDB is fully running, the component card shows a green ✓ checkmark and the page header shows **Configure** and **Disable** buttons — confirming the Feature Set is fully **Ready**. -![Databases page fully Ready — KubeDB component showing green checkmark](images/cluster-features/feature-databases6.png) +![Databases page fully Ready — KubeDB component showing green checkmark](../images/cluster-features/feature-databases6.png) --- diff --git a/src/en/guides/cluster-management/cluster-helm-charts.md b/docs/platform/guides/cluster-management/cluster-helm-charts.md similarity index 94% rename from src/en/guides/cluster-management/cluster-helm-charts.md rename to docs/platform/guides/cluster-management/cluster-helm-charts.md index 458eb65..b16f489 100644 --- a/src/en/guides/cluster-management/cluster-helm-charts.md +++ b/docs/platform/guides/cluster-management/cluster-helm-charts.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-helmcharts name: Manage Cluster Helm Charts parent: cluster-management weight: 50 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/cluster-management/cluster-overview.md b/docs/platform/guides/cluster-management/cluster-overview.md similarity index 91% rename from src/en/guides/cluster-management/cluster-overview.md rename to docs/platform/guides/cluster-management/cluster-overview.md index 1f23676..579372a 100644 --- a/src/en/guides/cluster-management/cluster-overview.md +++ b/docs/platform/guides/cluster-management/cluster-overview.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-overview name: Cluster Overview parent: cluster-management weight: 10 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Cluster Overview @@ -22,7 +22,7 @@ From the **AppsCode Console UI** home screen, you will see the **ALL CLUSTERS** Click on any cluster card to open its Overview page. -![AppsCode home screen showing the cluster list — click a cluster card to open its Overview](images/cluster-overview/cluster-overview-1.png) +![AppsCode home screen showing the cluster list — click a cluster card to open its Overview](../images/cluster-overview/cluster-overview-1.png) > The **+ Add Cluster** tile lets you import a new cluster at any time. @@ -50,7 +50,7 @@ Two action buttons appear top-right inside this section: - **Connect** — Downloads a KubeConfig for direct `kubectl` access - **Remove** — Disconnects and removes the cluster from AppsCode -![Cluster Overview page showing Basic info, Feature Sets grid, and Nodes section](images/cluster-overview/cluster-overview-2.png) +![Cluster Overview page showing Basic info, Feature Sets grid, and Nodes section](../images/cluster-overview/cluster-overview-2.png) --- @@ -63,7 +63,7 @@ Click the **Connect** button to open the **Kube Config** modal. This dialog show You can use this kubeconfig with `kubectl` to interact directly with the cluster from your terminal. -![Kube Config modal showing the cluster kubeconfig YAML with Download and Copy buttons](images/cluster-overview/cluster-overview-3.png) +![Kube Config modal showing the cluster kubeconfig YAML with Download and Copy buttons](../images/cluster-overview/cluster-overview-3.png) --- @@ -103,7 +103,7 @@ Each Feature Set card shows a status badge: Hover over any **Not Installed** card to see a tooltip like *"No feature enabled yet for this feature set."* -![Feature Sets grid with status badges — Ready (green) and Not Installed (red)](images/cluster-overview/cluster-overview-4.png) +![Feature Sets grid with status badges — Ready (green) and Not Installed (red)](../images/cluster-overview/cluster-overview-4.png) Click any Feature Set card to open the **Feature Set Management** page where you can enable or configure its components. See [Feature Management](cluster-features.md) for a full walkthrough. @@ -122,7 +122,7 @@ Scroll past the **Feature Sets** grid to the **Nodes** section. Each registered Click **Nodes** in the left sidebar to open the dedicated **Nodes list page**, which shows all nodes with their labels and annotations in a table format. -![Nodes list page showing the cluster nodes with labels and annotations](images/cluster-overview/cluster-nodes-1.png) +![Nodes list page showing the cluster nodes with labels and annotations](../images/cluster-overview/cluster-nodes-1.png) --- @@ -135,7 +135,7 @@ Click on a node's name in the Nodes list to open the **Node Detail** page. This Use the **Edit** button (top-right) to modify the node spec, or **Delete** to remove the node from the cluster. -![Node detail page showing Basic info — Name, Namespace, Labels, and Annotations](images/cluster-overview/cluster-nodes-2.png) +![Node detail page showing Basic info — Name, Namespace, Labels, and Annotations](../images/cluster-overview/cluster-nodes-2.png) ### Editing a Node @@ -146,7 +146,7 @@ Clicking **Edit** opens a structured form where you can modify: Switch between **Form**, **YAML**, and **JSON** views using the tabs at the top-right of the editor. -![Node edit form showing Pod CIDRs, Taints, and the Unschedulable toggle](images/cluster-overview/cluster-nodes-edit-1.png) +![Node edit form showing Pod CIDRs, Taints, and the Unschedulable toggle](../images/cluster-overview/cluster-nodes-edit-1.png) --- diff --git a/src/en/guides/cluster-management/cluster-presets.md b/docs/platform/guides/cluster-management/cluster-presets.md similarity index 83% rename from src/en/guides/cluster-management/cluster-presets.md rename to docs/platform/guides/cluster-management/cluster-presets.md index 37dcf87..aa9054e 100644 --- a/src/en/guides/cluster-management/cluster-presets.md +++ b/docs/platform/guides/cluster-management/cluster-presets.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-preset name: Manage Presets parent: cluster-management weight: 70 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Manage Cluster Presets @@ -26,13 +26,13 @@ Each row shows: - **Annotations** — Key labels attached to the preset (e.g., `ace.appscode.com/managed: true`, `app.kubernetes.io/managed-by`) - **Age** — How long ago the preset was created -![Cluster Presets list page — showing presets with their names, annotations, and age](images/cluster-presets/preset.png) +![Cluster Presets list page — showing presets with their names, annotations, and age](../images/cluster-presets/preset.png) > Presets are automatically created when you enable a Feature Set that requires preset configuration (such as Backup & Recovery). After enabling a Feature Set, you may see a new preset appear in this list. > -> ![Feature Set list — pointing to the "Backup & Recovery" feature](images/cluster-presets/preset-enable.png) +> ![Feature Set list — pointing to the "Backup & Recovery" feature](../images/cluster-presets/preset-enable.png) -![Cluster Presets list after enabling a new Feature Set — "stash-presets" and "kubedb-ui-presets" visible](images/cluster-presets/presets-after-feature-enable.png) +![Cluster Presets list after enabling a new Feature Set — "stash-presets" and "kubedb-ui-presets" visible](../images/cluster-presets/presets-after-feature-enable.png) --- @@ -47,7 +47,7 @@ The **Basic Info** tab also shows a **Namespace Presets** table with all namespa A green **Extend to Namespace** button (top-right) creates a namespace-scoped copy of this preset. -![Preset detail page — Basic Info tab showing Name, UID, and an empty Namespace Presets table](images/cluster-presets/present-basic-info.png) +![Preset detail page — Basic Info tab showing Name, UID, and an empty Namespace Presets table](../images/cluster-presets/present-basic-info.png) --- @@ -66,7 +66,7 @@ The edit form presents each configurable section as a collapsible card. For exam Update the values as needed and click **Preview** to advance to the review step. -![Edit Values form — collapsible sections for Encryption Secret, Retention Policy, Storage Ref, and Schedule](images/cluster-presets/stash-preset-edit-values1.png) +![Edit Values form — collapsible sections for Encryption Secret, Retention Policy, Storage Ref, and Schedule](../images/cluster-presets/stash-preset-edit-values1.png) ### Preview the Generated YAML @@ -75,7 +75,7 @@ After clicking **Preview**, the page displays the full generated `stash-presets` Click **Submit** to apply the updated preset values to the cluster. -![Preview step — full YAML spec rendered in the editor with Submit button at bottom-right](images/cluster-presets/stash-preset-edit-values2.png) +![Preview step — full YAML spec rendered in the editor with Submit button at bottom-right](../images/cluster-presets/stash-preset-edit-values2.png) --- @@ -90,41 +90,41 @@ The KubeDB preset configuration is organized into four main sections: 3. **Monitoring & Backups specifics** — Configure monitoring agents and default backup settings. 4. **Extras** — Additional configuration fields. -![KubeDB Edit Values form — overview of Machine, Database, and Monitoring sections](images/cluster-presets/db-preset-edit-values1.png) +![KubeDB Edit Values form — overview of Machine, Database, and Monitoring sections](../images/cluster-presets/db-preset-edit-values1.png) ### Machine Specifics In this section, you can define if users are allowed to modify the deployment type, cluster tier, and node placement. You can also specify the available options and default values for these fields. -![Machine Specifics — configuring Deployment Type and Cluster Tier defaults](images/cluster-presets/db-preset-edit-values2.png) +![Machine Specifics — configuring Deployment Type and Cluster Tier defaults](../images/cluster-presets/db-preset-edit-values2.png) ### Database Specifics The **Database Specifics** section is where you manage settings for different database engines. You can enable or disable specific versions and modes for each database type. -![Database Specifics — list of supported databases in the preset](images/cluster-presets/db-preset-edit-values3.png) +![Database Specifics — list of supported databases in the preset](../images/cluster-presets/db-preset-edit-values3.png) For example, in the **Postgres** subsection, you can toggle which versions (e.g., 13.x, 14.x) and modes (Standalone, Cluster) are available to users. -![Postgres settings — enabling specific versions and replica modes](images/cluster-presets/db-preset-edit-values4.png) +![Postgres settings — enabling specific versions and replica modes](../images/cluster-presets/db-preset-edit-values4.png) You can also configure default **Auth Credentials**, **Storage Classes**, and **TLS** settings that will be applied to new database instances. -![Additional Database settings — Auth Credentials, Custom Configuration, and Storage Class](images/cluster-presets/db-preset-edit-values5.png) +![Additional Database settings — Auth Credentials, Custom Configuration, and Storage Class](../images/cluster-presets/db-preset-edit-values5.png) ### Monitoring & Backup Specifics Configure the default monitoring agent and resources (CPU/Memory). You can also enable or disable backups by default and specify if they should be managed via `BackupConfiguration` or `BackupBlueprint`. -![Monitoring & Backups — setting up Prometheus agent and default backup behavior](images/cluster-presets/db-preset-edit-values6.png) -![Backup and Archiver settings — Point In Time Recovery configuration](images/cluster-presets/db-preset-edit-values7.png) +![Monitoring & Backups — setting up Prometheus agent and default backup behavior](../images/cluster-presets/db-preset-edit-values6.png) +![Backup and Archiver settings — Point In Time Recovery configuration](../images/cluster-presets/db-preset-edit-values7.png) ### Preview and Submit After completing your changes, click **Preview** to review the generated YAML specification. -![KubeDB Preset Preview — reviewing the final YAML before submission](images/cluster-presets/db-preset-edit-values8.png) +![KubeDB Preset Preview — reviewing the final YAML before submission](../images/cluster-presets/db-preset-edit-values8.png) Click **Submit** to update the `kubedb-ui-presets` configuration in your cluster. @@ -138,11 +138,11 @@ A **Presetless Namespace** dropdown appears, listing all namespaces in the clust Select the target namespace from the list. -![Extend to Namespace page — dropdown listing available namespaces for the preset to be applied to](images/cluster-presets/preset-extend-to-namespace1.png) +![Extend to Namespace page — dropdown listing available namespaces for the preset to be applied to](../images/cluster-presets/preset-extend-to-namespace1.png) After selecting the namespace, a **Preset Values** editor appears (YAML/JSON). You can customize the values specifically for this namespace before applying. Click **Apply** to create the namespace-scoped preset copy. -![Preset Values editor — namespace-specific YAML with Apply button at the bottom](images/cluster-presets/preset-extend-to-namespace2.png) +![Preset Values editor — namespace-specific YAML with Apply button at the bottom](../images/cluster-presets/preset-extend-to-namespace2.png) --- diff --git a/src/en/guides/cluster-management/cluster-sidebar.md b/docs/platform/guides/cluster-management/cluster-sidebar.md similarity index 89% rename from src/en/guides/cluster-management/cluster-sidebar.md rename to docs/platform/guides/cluster-management/cluster-sidebar.md index ce77c71..c7708f1 100644 --- a/src/en/guides/cluster-management/cluster-sidebar.md +++ b/docs/platform/guides/cluster-management/cluster-sidebar.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-sidebar name: Customize Cluster Sidebar parent: cluster-management weight: 60 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Customize the Cluster Sidebar @@ -20,7 +20,7 @@ The **Cluster Sidebar** is your primary navigation panel inside a connected clus From the AppsCode console, click on your cluster (e.g., `default`) to open the **Cluster Overview** page. The left sidebar shows the default set of sections: **Kubernetes**, **Workloads**, **Helm**, **Datastore**, **Service & Discovery**, **Config**, **Storage**, **Monitoring**, **Security**, and **Admin**. -![The default Cluster Overview page with the default sidebar navigation](images/cluster-sidebar/sidebar-before-update.png) +![The default Cluster Overview page with the default sidebar navigation](../images/cluster-sidebar/sidebar-before-update.png) > **Tip:** The default sidebar already covers the most common resources. You only need to open Sidebar Settings if you want to add, remove, or rearrange menu items. @@ -41,7 +41,7 @@ At the top-right of the page are two action buttons: - **Default** — Resets the sidebar back to the original default layout - **Save** — Saves your current changes -![Sidebar Settings page showing Available Menus on the left and Updated List on the right](images/cluster-sidebar/sidebar-1.png) +![Sidebar Settings page showing Available Menus on the left and Updated List on the right](../images/cluster-sidebar/sidebar-1.png) --- @@ -51,7 +51,7 @@ The **All Available Menus** panel lists hundreds of resource types grouped by AP For example, typing `cert` instantly filters the list and highlights all matches — such as **Cert Manager → Certificate**, **Certificate → CertificateSigningRequest**, and so on. A result counter (e.g., *Found 4 Search Results for 'cert'*) and pagination controls help you navigate through matches. -![Search bar in action — typing "cert" narrows the list and highlights matching resources](images/cluster-sidebar/sidebar-search-menu.png) +![Search bar in action — typing "cert" narrows the list and highlights matching resources](../images/cluster-sidebar/sidebar-search-menu.png) > **Note:** The search is case-insensitive. Matched groups and items are highlighted in green so they stand out clearly. @@ -63,7 +63,7 @@ To add a resource to your sidebar, simply **drag** it from the **All Available M In the example below, the user is dragging **Appscode K8s Management → ProjectQuota** into the current sidebar layout. You can see it appearing as a floating drag indicator (`⠿`) in the left panel. -![Dragging "ProjectQuota" from Available Menus into the Updated List](images/cluster-sidebar/sidebar-updating.png) +![Dragging "ProjectQuota" from Available Menus into the Updated List](../images/cluster-sidebar/sidebar-updating.png) You can also drag existing items within the **Updated List** panel to reorder them according to your workflow preferences. @@ -75,7 +75,7 @@ Once you are satisfied with your layout, click the green **Save** button in the The sidebar of the cluster will immediately reflect your changes. In the example below, after saving, the **Appscode K8s Management** group with **ProjectQuota** now appears in the cluster sidebar on the left. -![The Cluster Overview page after saving — the sidebar now shows ProjectQuota under Appscode K8s Management](images/cluster-sidebar/sidebar-after-update.png) +![The Cluster Overview page after saving — the sidebar now shows ProjectQuota under Appscode K8s Management](../images/cluster-sidebar/sidebar-after-update.png) --- diff --git a/src/en/guides/cluster-management/cluster-workload.md b/docs/platform/guides/cluster-management/cluster-workload.md similarity index 92% rename from src/en/guides/cluster-management/cluster-workload.md rename to docs/platform/guides/cluster-management/cluster-workload.md index 1ede361..92b7b5d 100644 --- a/src/en/guides/cluster-management/cluster-workload.md +++ b/docs/platform/guides/cluster-management/cluster-workload.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-k8sworkloads name: Kubernetes Workload Management parent: cluster-management weight: 40 - home_menu: - identifier: home-cluster-k8sworkloads - name: Kubernetes Workload Management - parent: home-cluster - weight: 40 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/docs/platform/guides/cluster-management/constraints-violations.md b/docs/platform/guides/cluster-management/constraints-violations.md new file mode 100644 index 0000000..cffb8bd --- /dev/null +++ b/docs/platform/guides/cluster-management/constraints-violations.md @@ -0,0 +1,14 @@ +--- +layout: platform_single +menu: + docsplatform_{{.version}}: + identifier: cluster-management-gatekeeper + name: Constraints & Violations + parent: cluster-management + weight: 90 +menu_name: docsplatform_{{.version}} +section_menu_id: guides +--- + + +# Constraints & Violations diff --git a/src/en/guides/cluster-management/hub-ui/_index.md b/docs/platform/guides/cluster-management/hub-ui/_index.md similarity index 64% rename from src/en/guides/cluster-management/hub-ui/_index.md rename to docs/platform/guides/cluster-management/hub-ui/_index.md index d2fb987..1ea38a7 100644 --- a/src/en/guides/cluster-management/hub-ui/_index.md +++ b/docs/platform/guides/cluster-management/hub-ui/_index.md @@ -1,13 +1,14 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: hub-ui name: Hub UI + parent: cluster-management description: Know how to use Hub UI icon: https://img.icons8.com/external-anggara-basic-outline-anggara-putra/96/external-stats-ui-anggara-basic-outline-anggara-putra.png popular: true weight: 50 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- \ No newline at end of file diff --git a/src/en/guides/cluster-management/hub-ui/cluster-and-clusterset.md b/docs/platform/guides/cluster-management/hub-ui/cluster-and-clusterset.md similarity index 89% rename from src/en/guides/cluster-management/hub-ui/cluster-and-clusterset.md rename to docs/platform/guides/cluster-management/hub-ui/cluster-and-clusterset.md index 8097445..815d60a 100644 --- a/src/en/guides/cluster-management/hub-ui/cluster-and-clusterset.md +++ b/docs/platform/guides/cluster-management/hub-ui/cluster-and-clusterset.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: hub-ui-cluster name: Cluster & Clusterset parent: hub-ui weight: 70 - home_menu: - identifier: hub-ui-cluster - name: Cluster & Clusterset - parent: hub-ui - weight: 70 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Important Note diff --git a/src/en/guides/cluster-management/hub-ui/create.md b/docs/platform/guides/cluster-management/hub-ui/create.md similarity index 85% rename from src/en/guides/cluster-management/hub-ui/create.md rename to docs/platform/guides/cluster-management/hub-ui/create.md index f78ca0e..d457849 100644 --- a/src/en/guides/cluster-management/hub-ui/create.md +++ b/docs/platform/guides/cluster-management/hub-ui/create.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: hub-ui-create name: Create Hub Cluster parent: hub-ui weight: 40 - home_menu: - identifier: hub-ui-create - name: Create Hub Cluster - parent: hub-ui - weight: 40 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/cluster-management/hub-ui/introduction.md b/docs/platform/guides/cluster-management/hub-ui/introduction.md similarity index 88% rename from src/en/guides/cluster-management/hub-ui/introduction.md rename to docs/platform/guides/cluster-management/hub-ui/introduction.md index 303fc92..20c4d7b 100644 --- a/src/en/guides/cluster-management/hub-ui/introduction.md +++ b/docs/platform/guides/cluster-management/hub-ui/introduction.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: hub-ui-introduction name: Introduction parent: hub-ui weight: 30 - home_menu: - identifier: hub-ui-introduction - name: Introduction - parent: hub-ui - weight: 30 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Hub UI diff --git a/src/en/guides/cluster-management/hub-ui/license-management.md b/docs/platform/guides/cluster-management/hub-ui/license-management.md similarity index 78% rename from src/en/guides/cluster-management/hub-ui/license-management.md rename to docs/platform/guides/cluster-management/hub-ui/license-management.md index a7aebfe..e548438 100644 --- a/src/en/guides/cluster-management/hub-ui/license-management.md +++ b/docs/platform/guides/cluster-management/hub-ui/license-management.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: hub-ui-license name: License Management parent: hub-ui weight: 60 - home_menu: - identifier: hub-ui-license - name: License Management - parent: hub-ui - weight: 60 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/cluster-management/hub-ui/permission.md b/docs/platform/guides/cluster-management/hub-ui/permission.md similarity index 87% rename from src/en/guides/cluster-management/hub-ui/permission.md rename to docs/platform/guides/cluster-management/hub-ui/permission.md index b46ee6f..7cd4f89 100644 --- a/src/en/guides/cluster-management/hub-ui/permission.md +++ b/docs/platform/guides/cluster-management/hub-ui/permission.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: hub-ui-permission name: User Permission parent: hub-ui weight: 60 - home_menu: - identifier: hub-ui-permission - name: User Permission - parent: hub-ui - weight: 60 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # User Access Management diff --git a/src/en/guides/cluster-management/hub-ui/spoke.md b/docs/platform/guides/cluster-management/hub-ui/spoke.md similarity index 87% rename from src/en/guides/cluster-management/hub-ui/spoke.md rename to docs/platform/guides/cluster-management/hub-ui/spoke.md index 915108b..de32589 100644 --- a/src/en/guides/cluster-management/hub-ui/spoke.md +++ b/docs/platform/guides/cluster-management/hub-ui/spoke.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: hub-ui-spoke name: Connect Spoke Cluster parent: hub-ui weight: 50 - home_menu: - identifier: hub-ui-spoke - name: Connect Spoke Cluster - parent: hub-ui - weight: 50 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Creating a Spoke Cluster diff --git a/src/en/guides/cluster-management/hub-ui/upgrade.md b/docs/platform/guides/cluster-management/hub-ui/upgrade.md similarity index 79% rename from src/en/guides/cluster-management/hub-ui/upgrade.md rename to docs/platform/guides/cluster-management/hub-ui/upgrade.md index 0debf96..5afbafc 100644 --- a/src/en/guides/cluster-management/hub-ui/upgrade.md +++ b/docs/platform/guides/cluster-management/hub-ui/upgrade.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: hub-ui-upgrade name: Upgrade Spoke parent: hub-ui weight: 80 - home_menu: - identifier: hub-ui-upgrade - name: Upgrade Spoke - parent: hub-ui - weight: 80 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/cluster-management/images/cluster-features/feature-databases1.png b/docs/platform/guides/cluster-management/images/cluster-features/feature-databases1.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-features/feature-databases1.png rename to docs/platform/guides/cluster-management/images/cluster-features/feature-databases1.png diff --git a/src/en/guides/cluster-management/images/cluster-features/feature-databases2.png b/docs/platform/guides/cluster-management/images/cluster-features/feature-databases2.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-features/feature-databases2.png rename to docs/platform/guides/cluster-management/images/cluster-features/feature-databases2.png diff --git a/src/en/guides/cluster-management/images/cluster-features/feature-databases3.png b/docs/platform/guides/cluster-management/images/cluster-features/feature-databases3.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-features/feature-databases3.png rename to docs/platform/guides/cluster-management/images/cluster-features/feature-databases3.png diff --git a/src/en/guides/cluster-management/images/cluster-features/feature-databases4.png b/docs/platform/guides/cluster-management/images/cluster-features/feature-databases4.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-features/feature-databases4.png rename to docs/platform/guides/cluster-management/images/cluster-features/feature-databases4.png diff --git a/src/en/guides/cluster-management/images/cluster-features/feature-databases5.png b/docs/platform/guides/cluster-management/images/cluster-features/feature-databases5.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-features/feature-databases5.png rename to docs/platform/guides/cluster-management/images/cluster-features/feature-databases5.png diff --git a/src/en/guides/cluster-management/images/cluster-features/feature-databases6.png b/docs/platform/guides/cluster-management/images/cluster-features/feature-databases6.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-features/feature-databases6.png rename to docs/platform/guides/cluster-management/images/cluster-features/feature-databases6.png diff --git a/src/en/guides/cluster-management/images/cluster-features/features-after-enable-some-features.png b/docs/platform/guides/cluster-management/images/cluster-features/features-after-enable-some-features.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-features/features-after-enable-some-features.png rename to docs/platform/guides/cluster-management/images/cluster-features/features-after-enable-some-features.png diff --git a/src/en/guides/cluster-management/images/cluster-features/features-backup1.png b/docs/platform/guides/cluster-management/images/cluster-features/features-backup1.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-features/features-backup1.png rename to docs/platform/guides/cluster-management/images/cluster-features/features-backup1.png diff --git a/src/en/guides/cluster-management/images/cluster-features/features-backup2.png b/docs/platform/guides/cluster-management/images/cluster-features/features-backup2.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-features/features-backup2.png rename to docs/platform/guides/cluster-management/images/cluster-features/features-backup2.png diff --git a/src/en/guides/cluster-management/images/cluster-features/features-backup3.png b/docs/platform/guides/cluster-management/images/cluster-features/features-backup3.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-features/features-backup3.png rename to docs/platform/guides/cluster-management/images/cluster-features/features-backup3.png diff --git a/src/en/guides/cluster-management/images/cluster-features/features-backup4.png b/docs/platform/guides/cluster-management/images/cluster-features/features-backup4.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-features/features-backup4.png rename to docs/platform/guides/cluster-management/images/cluster-features/features-backup4.png diff --git a/src/en/guides/cluster-management/images/cluster-features/features-backup5.png b/docs/platform/guides/cluster-management/images/cluster-features/features-backup5.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-features/features-backup5.png rename to docs/platform/guides/cluster-management/images/cluster-features/features-backup5.png diff --git a/src/en/guides/cluster-management/images/cluster-features/features-backup6.png b/docs/platform/guides/cluster-management/images/cluster-features/features-backup6.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-features/features-backup6.png rename to docs/platform/guides/cluster-management/images/cluster-features/features-backup6.png diff --git a/src/en/guides/cluster-management/images/cluster-features/features.png b/docs/platform/guides/cluster-management/images/cluster-features/features.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-features/features.png rename to docs/platform/guides/cluster-management/images/cluster-features/features.png diff --git a/src/en/guides/cluster-management/images/cluster-overview/cluster-nodes-1.png b/docs/platform/guides/cluster-management/images/cluster-overview/cluster-nodes-1.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-overview/cluster-nodes-1.png rename to docs/platform/guides/cluster-management/images/cluster-overview/cluster-nodes-1.png diff --git a/src/en/guides/cluster-management/images/cluster-overview/cluster-nodes-2.png b/docs/platform/guides/cluster-management/images/cluster-overview/cluster-nodes-2.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-overview/cluster-nodes-2.png rename to docs/platform/guides/cluster-management/images/cluster-overview/cluster-nodes-2.png diff --git a/src/en/guides/cluster-management/images/cluster-overview/cluster-nodes-3.png b/docs/platform/guides/cluster-management/images/cluster-overview/cluster-nodes-3.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-overview/cluster-nodes-3.png rename to docs/platform/guides/cluster-management/images/cluster-overview/cluster-nodes-3.png diff --git a/src/en/guides/cluster-management/images/cluster-overview/cluster-nodes-4.png b/docs/platform/guides/cluster-management/images/cluster-overview/cluster-nodes-4.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-overview/cluster-nodes-4.png rename to docs/platform/guides/cluster-management/images/cluster-overview/cluster-nodes-4.png diff --git a/src/en/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-1.png b/docs/platform/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-1.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-1.png rename to docs/platform/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-1.png diff --git a/src/en/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-2.png b/docs/platform/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-2.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-2.png rename to docs/platform/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-2.png diff --git a/src/en/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-3.png b/docs/platform/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-3.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-3.png rename to docs/platform/guides/cluster-management/images/cluster-overview/cluster-nodes-edit-3.png diff --git a/src/en/guides/cluster-management/images/cluster-overview/cluster-overview-1.png b/docs/platform/guides/cluster-management/images/cluster-overview/cluster-overview-1.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-overview/cluster-overview-1.png rename to docs/platform/guides/cluster-management/images/cluster-overview/cluster-overview-1.png diff --git a/src/en/guides/cluster-management/images/cluster-overview/cluster-overview-2.png b/docs/platform/guides/cluster-management/images/cluster-overview/cluster-overview-2.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-overview/cluster-overview-2.png rename to docs/platform/guides/cluster-management/images/cluster-overview/cluster-overview-2.png diff --git a/src/en/guides/cluster-management/images/cluster-overview/cluster-overview-3.png b/docs/platform/guides/cluster-management/images/cluster-overview/cluster-overview-3.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-overview/cluster-overview-3.png rename to docs/platform/guides/cluster-management/images/cluster-overview/cluster-overview-3.png diff --git a/src/en/guides/cluster-management/images/cluster-overview/cluster-overview-4.png b/docs/platform/guides/cluster-management/images/cluster-overview/cluster-overview-4.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-overview/cluster-overview-4.png rename to docs/platform/guides/cluster-management/images/cluster-overview/cluster-overview-4.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values1.png b/docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values1.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values1.png rename to docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values1.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values2.png b/docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values2.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values2.png rename to docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values2.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values3.png b/docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values3.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values3.png rename to docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values3.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values4.png b/docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values4.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values4.png rename to docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values4.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values5.png b/docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values5.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values5.png rename to docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values5.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values6.png b/docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values6.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values6.png rename to docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values6.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values7.png b/docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values7.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values7.png rename to docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values7.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values8.png b/docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values8.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/db-preset-edit-values8.png rename to docs/platform/guides/cluster-management/images/cluster-presets/db-preset-edit-values8.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/present-basic-info.png b/docs/platform/guides/cluster-management/images/cluster-presets/present-basic-info.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/present-basic-info.png rename to docs/platform/guides/cluster-management/images/cluster-presets/present-basic-info.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/preset-enable.png b/docs/platform/guides/cluster-management/images/cluster-presets/preset-enable.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/preset-enable.png rename to docs/platform/guides/cluster-management/images/cluster-presets/preset-enable.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/preset-extend-to-namespace1.png b/docs/platform/guides/cluster-management/images/cluster-presets/preset-extend-to-namespace1.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/preset-extend-to-namespace1.png rename to docs/platform/guides/cluster-management/images/cluster-presets/preset-extend-to-namespace1.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/preset-extend-to-namespace2.png b/docs/platform/guides/cluster-management/images/cluster-presets/preset-extend-to-namespace2.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/preset-extend-to-namespace2.png rename to docs/platform/guides/cluster-management/images/cluster-presets/preset-extend-to-namespace2.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/preset.png b/docs/platform/guides/cluster-management/images/cluster-presets/preset.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/preset.png rename to docs/platform/guides/cluster-management/images/cluster-presets/preset.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/presets-after-feature-enable.png b/docs/platform/guides/cluster-management/images/cluster-presets/presets-after-feature-enable.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/presets-after-feature-enable.png rename to docs/platform/guides/cluster-management/images/cluster-presets/presets-after-feature-enable.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/stash-preset-edit-values1.png b/docs/platform/guides/cluster-management/images/cluster-presets/stash-preset-edit-values1.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/stash-preset-edit-values1.png rename to docs/platform/guides/cluster-management/images/cluster-presets/stash-preset-edit-values1.png diff --git a/src/en/guides/cluster-management/images/cluster-presets/stash-preset-edit-values2.png b/docs/platform/guides/cluster-management/images/cluster-presets/stash-preset-edit-values2.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-presets/stash-preset-edit-values2.png rename to docs/platform/guides/cluster-management/images/cluster-presets/stash-preset-edit-values2.png diff --git a/src/en/guides/cluster-management/images/cluster-sidebar/sidebar-1.png b/docs/platform/guides/cluster-management/images/cluster-sidebar/sidebar-1.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-sidebar/sidebar-1.png rename to docs/platform/guides/cluster-management/images/cluster-sidebar/sidebar-1.png diff --git a/src/en/guides/cluster-management/images/cluster-sidebar/sidebar-after-update.png b/docs/platform/guides/cluster-management/images/cluster-sidebar/sidebar-after-update.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-sidebar/sidebar-after-update.png rename to docs/platform/guides/cluster-management/images/cluster-sidebar/sidebar-after-update.png diff --git a/src/en/guides/cluster-management/images/cluster-sidebar/sidebar-before-update.png b/docs/platform/guides/cluster-management/images/cluster-sidebar/sidebar-before-update.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-sidebar/sidebar-before-update.png rename to docs/platform/guides/cluster-management/images/cluster-sidebar/sidebar-before-update.png diff --git a/src/en/guides/cluster-management/images/cluster-sidebar/sidebar-search-menu.png b/docs/platform/guides/cluster-management/images/cluster-sidebar/sidebar-search-menu.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-sidebar/sidebar-search-menu.png rename to docs/platform/guides/cluster-management/images/cluster-sidebar/sidebar-search-menu.png diff --git a/src/en/guides/cluster-management/images/cluster-sidebar/sidebar-updating.png b/docs/platform/guides/cluster-management/images/cluster-sidebar/sidebar-updating.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster-sidebar/sidebar-updating.png rename to docs/platform/guides/cluster-management/images/cluster-sidebar/sidebar-updating.png diff --git a/src/en/guides/cluster-management/images/cluster_and_clusterset/add_cluster_1.png b/docs/platform/guides/cluster-management/images/cluster_and_clusterset/add_cluster_1.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster_and_clusterset/add_cluster_1.png rename to docs/platform/guides/cluster-management/images/cluster_and_clusterset/add_cluster_1.png diff --git a/src/en/guides/cluster-management/images/cluster_and_clusterset/add_cluster_2.png b/docs/platform/guides/cluster-management/images/cluster_and_clusterset/add_cluster_2.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster_and_clusterset/add_cluster_2.png rename to docs/platform/guides/cluster-management/images/cluster_and_clusterset/add_cluster_2.png diff --git a/src/en/guides/cluster-management/images/cluster_and_clusterset/clusterset.png b/docs/platform/guides/cluster-management/images/cluster_and_clusterset/clusterset.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster_and_clusterset/clusterset.png rename to docs/platform/guides/cluster-management/images/cluster_and_clusterset/clusterset.png diff --git a/src/en/guides/cluster-management/images/cluster_and_clusterset/clusterset_feature_1.png b/docs/platform/guides/cluster-management/images/cluster_and_clusterset/clusterset_feature_1.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster_and_clusterset/clusterset_feature_1.png rename to docs/platform/guides/cluster-management/images/cluster_and_clusterset/clusterset_feature_1.png diff --git a/src/en/guides/cluster-management/images/cluster_and_clusterset/clusterset_feature_2.png b/docs/platform/guides/cluster-management/images/cluster_and_clusterset/clusterset_feature_2.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster_and_clusterset/clusterset_feature_2.png rename to docs/platform/guides/cluster-management/images/cluster_and_clusterset/clusterset_feature_2.png diff --git a/src/en/guides/cluster-management/images/cluster_and_clusterset/unaligned.png b/docs/platform/guides/cluster-management/images/cluster_and_clusterset/unaligned.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster_and_clusterset/unaligned.png rename to docs/platform/guides/cluster-management/images/cluster_and_clusterset/unaligned.png diff --git a/src/en/guides/cluster-management/images/cluster_and_clusterset/unaligned_2.png b/docs/platform/guides/cluster-management/images/cluster_and_clusterset/unaligned_2.png similarity index 100% rename from src/en/guides/cluster-management/images/cluster_and_clusterset/unaligned_2.png rename to docs/platform/guides/cluster-management/images/cluster_and_clusterset/unaligned_2.png diff --git a/src/en/guides/cluster-management/images/import/cluster-details.png b/docs/platform/guides/cluster-management/images/import/cluster-details.png similarity index 100% rename from src/en/guides/cluster-management/images/import/cluster-details.png rename to docs/platform/guides/cluster-management/images/import/cluster-details.png diff --git a/src/en/guides/cluster-management/images/import/cluster-profile.png b/docs/platform/guides/cluster-management/images/import/cluster-profile.png similarity index 100% rename from src/en/guides/cluster-management/images/import/cluster-profile.png rename to docs/platform/guides/cluster-management/images/import/cluster-profile.png diff --git a/src/en/guides/cluster-management/images/import/deploy.png b/docs/platform/guides/cluster-management/images/import/deploy.png similarity index 100% rename from src/en/guides/cluster-management/images/import/deploy.png rename to docs/platform/guides/cluster-management/images/import/deploy.png diff --git a/src/en/guides/cluster-management/images/import/feature-set.png b/docs/platform/guides/cluster-management/images/import/feature-set.png similarity index 100% rename from src/en/guides/cluster-management/images/import/feature-set.png rename to docs/platform/guides/cluster-management/images/import/feature-set.png diff --git a/src/en/guides/cluster-management/images/import/select-cluster.png b/docs/platform/guides/cluster-management/images/import/select-cluster.png similarity index 100% rename from src/en/guides/cluster-management/images/import/select-cluster.png rename to docs/platform/guides/cluster-management/images/import/select-cluster.png diff --git a/src/en/guides/cluster-management/images/introduction/hub-spoke-model.png b/docs/platform/guides/cluster-management/images/introduction/hub-spoke-model.png similarity index 100% rename from src/en/guides/cluster-management/images/introduction/hub-spoke-model.png rename to docs/platform/guides/cluster-management/images/introduction/hub-spoke-model.png diff --git a/src/en/guides/cluster-management/images/license/add_license.png b/docs/platform/guides/cluster-management/images/license/add_license.png similarity index 100% rename from src/en/guides/cluster-management/images/license/add_license.png rename to docs/platform/guides/cluster-management/images/license/add_license.png diff --git a/src/en/guides/cluster-management/images/license/contract.png b/docs/platform/guides/cluster-management/images/license/contract.png similarity index 100% rename from src/en/guides/cluster-management/images/license/contract.png rename to docs/platform/guides/cluster-management/images/license/contract.png diff --git a/src/en/guides/cluster-management/images/license/contract_1.png b/docs/platform/guides/cluster-management/images/license/contract_1.png similarity index 100% rename from src/en/guides/cluster-management/images/license/contract_1.png rename to docs/platform/guides/cluster-management/images/license/contract_1.png diff --git a/src/en/guides/cluster-management/images/license/contract_2.png b/docs/platform/guides/cluster-management/images/license/contract_2.png similarity index 100% rename from src/en/guides/cluster-management/images/license/contract_2.png rename to docs/platform/guides/cluster-management/images/license/contract_2.png diff --git a/src/en/guides/cluster-management/images/license/license_modal.png b/docs/platform/guides/cluster-management/images/license/license_modal.png similarity index 100% rename from src/en/guides/cluster-management/images/license/license_modal.png rename to docs/platform/guides/cluster-management/images/license/license_modal.png diff --git a/src/en/guides/cluster-management/images/permission/add_member.png b/docs/platform/guides/cluster-management/images/permission/add_member.png similarity index 100% rename from src/en/guides/cluster-management/images/permission/add_member.png rename to docs/platform/guides/cluster-management/images/permission/add_member.png diff --git a/src/en/guides/cluster-management/images/permission/create_team.png b/docs/platform/guides/cluster-management/images/permission/create_team.png similarity index 100% rename from src/en/guides/cluster-management/images/permission/create_team.png rename to docs/platform/guides/cluster-management/images/permission/create_team.png diff --git a/src/en/guides/cluster-management/images/permission/go_to_platform.png b/docs/platform/guides/cluster-management/images/permission/go_to_platform.png similarity index 100% rename from src/en/guides/cluster-management/images/permission/go_to_platform.png rename to docs/platform/guides/cluster-management/images/permission/go_to_platform.png diff --git a/src/en/guides/cluster-management/images/permission/grant_permission.png b/docs/platform/guides/cluster-management/images/permission/grant_permission.png similarity index 100% rename from src/en/guides/cluster-management/images/permission/grant_permission.png rename to docs/platform/guides/cluster-management/images/permission/grant_permission.png diff --git a/src/en/guides/cluster-management/images/permission/permission.png b/docs/platform/guides/cluster-management/images/permission/permission.png similarity index 100% rename from src/en/guides/cluster-management/images/permission/permission.png rename to docs/platform/guides/cluster-management/images/permission/permission.png diff --git a/src/en/guides/cluster-management/images/project-quota/project-quota-create1.png b/docs/platform/guides/cluster-management/images/project-quota/project-quota-create1.png similarity index 100% rename from src/en/guides/cluster-management/images/project-quota/project-quota-create1.png rename to docs/platform/guides/cluster-management/images/project-quota/project-quota-create1.png diff --git a/src/en/guides/cluster-management/images/project-quota/project-quota-create2.png b/docs/platform/guides/cluster-management/images/project-quota/project-quota-create2.png similarity index 100% rename from src/en/guides/cluster-management/images/project-quota/project-quota-create2.png rename to docs/platform/guides/cluster-management/images/project-quota/project-quota-create2.png diff --git a/src/en/guides/cluster-management/images/project-quota/project-quota-create3.png b/docs/platform/guides/cluster-management/images/project-quota/project-quota-create3.png similarity index 100% rename from src/en/guides/cluster-management/images/project-quota/project-quota-create3.png rename to docs/platform/guides/cluster-management/images/project-quota/project-quota-create3.png diff --git a/src/en/guides/cluster-management/images/project-quota/project-quota-create4.png b/docs/platform/guides/cluster-management/images/project-quota/project-quota-create4.png similarity index 100% rename from src/en/guides/cluster-management/images/project-quota/project-quota-create4.png rename to docs/platform/guides/cluster-management/images/project-quota/project-quota-create4.png diff --git a/src/en/guides/cluster-management/images/project-quota/project-quota-details.png b/docs/platform/guides/cluster-management/images/project-quota/project-quota-details.png similarity index 100% rename from src/en/guides/cluster-management/images/project-quota/project-quota-details.png rename to docs/platform/guides/cluster-management/images/project-quota/project-quota-details.png diff --git a/src/en/guides/cluster-management/images/project-quota/project-quota-edit.png b/docs/platform/guides/cluster-management/images/project-quota/project-quota-edit.png similarity index 100% rename from src/en/guides/cluster-management/images/project-quota/project-quota-edit.png rename to docs/platform/guides/cluster-management/images/project-quota/project-quota-edit.png diff --git a/src/en/guides/cluster-management/images/project-quota/project-quota.png b/docs/platform/guides/cluster-management/images/project-quota/project-quota.png similarity index 100% rename from src/en/guides/cluster-management/images/project-quota/project-quota.png rename to docs/platform/guides/cluster-management/images/project-quota/project-quota.png diff --git a/src/en/guides/cluster-management/images/spoke/accept.png b/docs/platform/guides/cluster-management/images/spoke/accept.png similarity index 100% rename from src/en/guides/cluster-management/images/spoke/accept.png rename to docs/platform/guides/cluster-management/images/spoke/accept.png diff --git a/src/en/guides/cluster-management/images/spoke/featureset.png b/docs/platform/guides/cluster-management/images/spoke/featureset.png similarity index 100% rename from src/en/guides/cluster-management/images/spoke/featureset.png rename to docs/platform/guides/cluster-management/images/spoke/featureset.png diff --git a/src/en/guides/cluster-management/images/spoke/homepage.png b/docs/platform/guides/cluster-management/images/spoke/homepage.png similarity index 100% rename from src/en/guides/cluster-management/images/spoke/homepage.png rename to docs/platform/guides/cluster-management/images/spoke/homepage.png diff --git a/src/en/guides/cluster-management/images/spoke/import_spoke.png b/docs/platform/guides/cluster-management/images/spoke/import_spoke.png similarity index 100% rename from src/en/guides/cluster-management/images/spoke/import_spoke.png rename to docs/platform/guides/cluster-management/images/spoke/import_spoke.png diff --git a/src/en/guides/cluster-management/images/spoke/request.png b/docs/platform/guides/cluster-management/images/spoke/request.png similarity index 100% rename from src/en/guides/cluster-management/images/spoke/request.png rename to docs/platform/guides/cluster-management/images/spoke/request.png diff --git a/src/en/guides/cluster-management/images/spoke/select.png b/docs/platform/guides/cluster-management/images/spoke/select.png similarity index 100% rename from src/en/guides/cluster-management/images/spoke/select.png rename to docs/platform/guides/cluster-management/images/spoke/select.png diff --git a/src/en/guides/cluster-management/images/spoke/spoke.png b/docs/platform/guides/cluster-management/images/spoke/spoke.png similarity index 100% rename from src/en/guides/cluster-management/images/spoke/spoke.png rename to docs/platform/guides/cluster-management/images/spoke/spoke.png diff --git a/src/en/guides/cluster-management/images/upgrade/upgrade_1.png b/docs/platform/guides/cluster-management/images/upgrade/upgrade_1.png similarity index 100% rename from src/en/guides/cluster-management/images/upgrade/upgrade_1.png rename to docs/platform/guides/cluster-management/images/upgrade/upgrade_1.png diff --git a/src/en/guides/cluster-management/images/upgrade/upgrade_2.png b/docs/platform/guides/cluster-management/images/upgrade/upgrade_2.png similarity index 100% rename from src/en/guides/cluster-management/images/upgrade/upgrade_2.png rename to docs/platform/guides/cluster-management/images/upgrade/upgrade_2.png diff --git a/src/en/guides/cluster-management/images/upgrade/upgrade_3.png b/docs/platform/guides/cluster-management/images/upgrade/upgrade_3.png similarity index 100% rename from src/en/guides/cluster-management/images/upgrade/upgrade_3.png rename to docs/platform/guides/cluster-management/images/upgrade/upgrade_3.png diff --git a/src/en/guides/cluster-management/project-quota.md b/docs/platform/guides/cluster-management/project-quota.md similarity index 85% rename from src/en/guides/cluster-management/project-quota.md rename to docs/platform/guides/cluster-management/project-quota.md index 53624c0..90ed52b 100644 --- a/src/en/guides/cluster-management/project-quota.md +++ b/docs/platform/guides/cluster-management/project-quota.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-project-quota name: Project Quota parent: cluster-management weight: 60 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Project Quota Management @@ -24,7 +24,7 @@ The **Project Quota** page lists all existing quotas. Each row shows the **Name* To delete an existing quota, click the red **Delete** button next to it. -![Project Quota list page showing existing quotas for "default" and "kubedb" namespaces](images/project-quota/project-quota.png) +![Project Quota list page showing existing quotas for "default" and "kubedb" namespaces](../images/project-quota/project-quota.png) --- @@ -36,7 +36,7 @@ Click the green **+ Create Quota** button in the top-right corner of the page to The first field is **Namespace** (required). Click the field to open a dropdown listing all namespaces in your cluster. Select the namespace you want to apply the quota to (for example, `kubeops`). -![Namespace dropdown open, showing available namespaces like default, kubedb, kubeops, kube-system, etc.](images/project-quota/project-quota-create1.png) +![Namespace dropdown open, showing available namespaces like default, kubedb, kubeops, kube-system, etc.](../images/project-quota/project-quota-create1.png) --- @@ -50,7 +50,7 @@ Click the **Group** dropdown. Choose the API group of the resource you want to l - `apps` — for standard Kubernetes workloads (Deployments, StatefulSets, etc.) - `kubedb.com` — for KubeDB-managed databases -![Group dropdown showing "apps" and "kubedb.com" options, with CPU Limit and Memory Limit fields below](images/project-quota/project-quota-create2.png) +![Group dropdown showing "apps" and "kubedb.com" options, with CPU Limit and Memory Limit fields below](../images/project-quota/project-quota-create2.png) ### Select the Resource Kind @@ -58,7 +58,7 @@ After choosing a group, click the **Kind** dropdown. The list is filtered to sho For example, with `kubedb.com` selected, you can choose from: **Elasticsearch**, **Kafka**, **MariaDB**, **MongoDB**, **MySQL**, **Postgres**, **Redis**, **RedisSentinel**, and more. -![Kind dropdown filtered to KubeDB resource types — Elasticsearch, Kafka, MongoDB, Postgres, Redis, etc.](images/project-quota/project-quota-create3.png) +![Kind dropdown filtered to KubeDB resource types — Elasticsearch, Kafka, MongoDB, Postgres, Redis, etc.](../images/project-quota/project-quota-create3.png) ### Set CPU and Memory Limits @@ -69,7 +69,7 @@ Once the Kind is selected, fill in the resource limits: | **CPU Limit** | Maximum CPU cores allowed for this resource kind in the namespace | `8` | | **Memory Limit** | Maximum memory allowed for this resource kind in the namespace | `24Gi` | -![Quota form fully filled in: Group = kubedb.com, Kind = Postgres, CPU Limit = 8, Memory Limit = 24Gi](images/project-quota/project-quota-create4.png) +![Quota form fully filled in: Group = kubedb.com, Kind = Postgres, CPU Limit = 8, Memory Limit = 24Gi](../images/project-quota/project-quota-create4.png) Click the green **Save** button (within the New Quota section) to stage this rule. @@ -83,7 +83,7 @@ A green toast notification confirms: **"Quota created successfully!"** You can click **+ Add Quota** to add more rules for other resource types in the same namespace. -![Quotas table showing the staged rule: kubedb.com / Postgres / CPU 8 / Memory 24Gi, with a success notification](images/project-quota/project-quota-details.png) +![Quotas table showing the staged rule: kubedb.com / Postgres / CPU 8 / Memory 24Gi, with a success notification](../images/project-quota/project-quota-details.png) Once you have added all your rules, click the main **Save** button to permanently apply the project quota to the selected namespace. @@ -97,7 +97,7 @@ An **Edit Quotas** inline form expands below the table. The **Group** and **Kind Update the limits as needed and click **Save** to apply the changes. -![Edit Quotas form expanded inline — showing CPU Used (0), Memory Used (0), and editable CPU/Memory limit fields](images/project-quota/project-quota-edit.png) +![Edit Quotas form expanded inline — showing CPU Used (0), Memory Used (0), and editable CPU/Memory limit fields](../images/project-quota/project-quota-edit.png) --- diff --git a/src/en/guides/cluster-management/remove-cluster.md b/docs/platform/guides/cluster-management/remove-cluster.md similarity index 92% rename from src/en/guides/cluster-management/remove-cluster.md rename to docs/platform/guides/cluster-management/remove-cluster.md index 7246018..2f2653c 100644 --- a/src/en/guides/cluster-management/remove-cluster.md +++ b/docs/platform/guides/cluster-management/remove-cluster.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-deletecluster name: Remove / Delete Cluster parent: cluster-management weight: 20 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/cluster-management/security-report.md b/docs/platform/guides/cluster-management/security-report.md similarity index 57% rename from src/en/guides/cluster-management/security-report.md rename to docs/platform/guides/cluster-management/security-report.md index 41349ad..a5677d2 100644 --- a/src/en/guides/cluster-management/security-report.md +++ b/docs/platform/guides/cluster-management/security-report.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: cluster-management-securityreport name: Security Report parent: cluster-management weight: 80 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/database-management/_index.md b/docs/platform/guides/database-management/_index.md similarity index 63% rename from src/en/guides/database-management/_index.md rename to docs/platform/guides/database-management/_index.md index 6904efe..82cea12 100644 --- a/src/en/guides/database-management/_index.md +++ b/docs/platform/guides/database-management/_index.md @@ -1,13 +1,14 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management name: Database Management + parent: guides description: Basic database information description icon: https://img.icons8.com/00994A/ios/50/database--v1.png popular: true weight: 40 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/database-management/backup-configuration.md b/docs/platform/guides/database-management/backup-configuration.md similarity index 93% rename from src/en/guides/database-management/backup-configuration.md rename to docs/platform/guides/database-management/backup-configuration.md index a8ab029..07f372a 100644 --- a/src/en/guides/database-management/backup-configuration.md +++ b/docs/platform/guides/database-management/backup-configuration.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-backup-configuration name: Backup Configuration parent: database-management weight: 120 - home_menu: - identifier: home-database-backup-configuration - name: Backup Configuration - parent: home-database - weight: 120 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -32,7 +27,7 @@ Navigate to **Backups** in the left sidebar and select **Backup Configuration**. The list page shows all BackupConfigurations across namespaces. Use the **Select Namespace** dropdown in the top-right to filter by namespace, or click **Create New Instance** to create a new one. -![BackupConfiguration list page showing existing configurations with Name, Namespace, Schedule, Repository, BackupStorage, Target, Task, RetentionPolicy, Phase, and Age columns](./images/backup/config-dbs-overview.png) +![BackupConfiguration list page showing existing configurations with Name, Namespace, Schedule, Repository, BackupStorage, Target, Task, RetentionPolicy, Phase, and Age columns](../images/backup/config-dbs-overview.png) | Column | Description | |---|---| @@ -58,7 +53,7 @@ Click on any BackupConfiguration name in the list to open its detail page. The d The detail page opens on the **Overview** tab, which shows the following sections: -![BackupConfiguration detail page showing Basic info, Backup Sessions table, Retention Policies table, and Target section](./images/backup/config-db-overview.png) +![BackupConfiguration detail page showing Basic info, Backup Sessions table, Retention Policies table, and Target section](../images/backup/config-db-overview.png) **Basic** — Core metadata for the resource: @@ -102,7 +97,7 @@ The detail page opens on the **Overview** tab, which shows the following section Scroll down on the detail page to view the linked infrastructure resources. -![Detail page lower section showing Repository, BackupStorage, and CronJobs tables](./images/backup/config-db-repository.png) +![Detail page lower section showing Repository, BackupStorage, and CronJobs tables](../images/backup/config-db-repository.png) **Repository** — The backup repository storing snapshots for this configuration: @@ -153,13 +148,13 @@ To create a new BackupConfiguration, click **Create New Instance** from the list - **Sessions** — One or more backup sessions defining schedule, addon, and tasks. - **Target** — The database resource this BackupConfiguration applies to. -![Create BackupConfiguration form showing Namespace, Name, Storage Ref, Retention Policy, Sessions, and Target sections](./images/backup/configuration-overview.png) +![Create BackupConfiguration form showing Namespace, Name, Storage Ref, Retention Policy, Sessions, and Target sections](../images/backup/configuration-overview.png) ### 4.1 - Basic Information The top section captures the core identity and storage references for the BackupConfiguration. -![Basic fields showing Namespace set to demo, Name to test-name, Storage Ref to stash/default, and Retention Policy to stash/default](./images/backup/config-name-namespace.png) +![Basic fields showing Namespace set to demo, Name to test-name, Storage Ref to stash/default, and Retention Policy to stash/default](../images/backup/config-name-namespace.png) | Field | Description | |---|---| @@ -174,7 +169,7 @@ The top section captures the core identity and storage references for the Backup Expand the **Labels & Annotations** panel to attach custom metadata to the BackupConfiguration resource for organization, filtering, or integration with other Kubernetes tools. -![Labels and Annotations panel showing Labels and Annotations each with Key-Value input rows and Add new buttons](./images/backup/config-label-annotation.png) +![Labels and Annotations panel showing Labels and Annotations each with Key-Value input rows and Add new buttons](../images/backup/config-label-annotation.png) - Use **+ Add new** under **Labels** to add key-value label pairs. - Use **+ Add new** under **Annotations** to add key-value annotation pairs. @@ -184,7 +179,7 @@ Expand the **Labels & Annotations** panel to attach custom metadata to the Backu The **Sessions** section defines one or more backup sessions. Each session specifies when the backup runs, which addon to use, and what tasks to execute. Click **+ Add new** to add a session entry. -![Sessions panel showing a session entry with Session Name, Schedule, Security Context, Addon Name, and Tasks fields](./images/backup/config-sessions.png) +![Sessions panel showing a session entry with Session Name, Schedule, Security Context, Addon Name, and Tasks fields](../images/backup/config-sessions.png) | Field | Description | |---|---| @@ -199,7 +194,7 @@ Use the **Delete** button at the bottom of a session entry to remove it. Each session must have at least one **Task** defined. Tasks describe the actual backup operation to perform. Click **Add new** inside the Tasks section to add a task entry. -![Tasks entry showing Task Name required dropdown and Params code editor](./images/backup/config-session-task.png) +![Tasks entry showing Task Name required dropdown and Params code editor](../images/backup/config-session-task.png) | Field | Description | |---|---| @@ -215,7 +210,7 @@ Each session must have at least one **Task** defined. Tasks describe the actual The **Target** section identifies the database resource that this BackupConfiguration will back up. -![Target panel showing Api Group kubedb.com, Kind MongoDB, Namespace demo, and Name mongodb](./images/backup/config-target.png) +![Target panel showing Api Group kubedb.com, Kind MongoDB, Namespace demo, and Name mongodb](../images/backup/config-target.png) | Field | Description | |---|---| diff --git a/src/en/guides/database-management/backup-storage.md b/docs/platform/guides/database-management/backup-storage.md similarity index 93% rename from src/en/guides/database-management/backup-storage.md rename to docs/platform/guides/database-management/backup-storage.md index a69299a..906a200 100644 --- a/src/en/guides/database-management/backup-storage.md +++ b/docs/platform/guides/database-management/backup-storage.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-backup-storage name: Backup Storage parent: database-management weight: 130 - home_menu: - identifier: home-database-backup-storage - name: Backup Storage - parent: home-database - weight: 130 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -32,7 +27,7 @@ Navigate to **Backups** in the left sidebar and select **BackupStorage**. This o The list page displays all BackupStorage resources configured in your cluster. Use the **Select Namespace** dropdown to filter by namespace, or click **Create New Instance** to add a new storage backend. -![BackupStorage list page showing resources with Name, Namespace, Provider, Size, No. of Connected Repositories, Status, and Age columns](./images/backup/storage-overview.png) +![BackupStorage list page showing resources with Name, Namespace, Provider, Size, No. of Connected Repositories, Status, and Age columns](../images/backup/storage-overview.png) | Column | Description | |---|---| @@ -54,7 +49,7 @@ Click on any BackupStorage name in the list to open its detail page. The detail The detail page shows all relevant information about the storage backend: -![BackupStorage detail page showing Basic info, Repositories, and BackupConfigurations tables](./images/backup/storage-db-overview.png) +![BackupStorage detail page showing Basic info, Repositories, and BackupConfigurations tables](../images/backup/storage-db-overview.png) **Basic** — Core metadata for the storage: @@ -105,7 +100,7 @@ To add a new storage backend, click **Create New Instance** from the BackupStora The form starts with basic identity fields: -![Create BackupStorage form showing Namespace, Name, Labels & Annotations, Deletion Policy, Security Context, and Backend sections](./images/backup/storage-create-overview.png) +![Create BackupStorage form showing Namespace, Name, Labels & Annotations, Deletion Policy, Security Context, and Backend sections](../images/backup/storage-create-overview.png) | Field | Description | |---|---| @@ -118,7 +113,7 @@ The form starts with basic identity fields: Expand the **Labels & Annotations** section to attach custom metadata for organization and integration: -![Labels and Annotations panel showing Labels and Annotations each with Key-Value input rows and Add new buttons](./images/backup/storage-label-annotation.png) +![Labels and Annotations panel showing Labels and Annotations each with Key-Value input rows and Add new buttons](../images/backup/storage-label-annotation.png) - Use **+ Add new** under **Labels** to add key-value label pairs. - Use **+ Add new** under **Annotations** to add key-value annotation pairs. @@ -128,7 +123,7 @@ Expand the **Labels & Annotations** section to attach custom metadata for organi The **Backend** section defines the storage provider and its credentials. This is where you configure the actual cloud storage connection. -![Backend section showing Provider dropdown (azure selected) with Auth and Spec sub-panels for Azure storage configuration](./images/backup/storage-create-backend.png) +![Backend section showing Provider dropdown (azure selected) with Auth and Spec sub-panels for Azure storage configuration](../images/backup/storage-create-backend.png) #### Backend Provider diff --git a/src/en/guides/database-management/backup.md b/docs/platform/guides/database-management/backup.md similarity index 86% rename from src/en/guides/database-management/backup.md rename to docs/platform/guides/database-management/backup.md index be1591a..311d3d8 100644 --- a/src/en/guides/database-management/backup.md +++ b/docs/platform/guides/database-management/backup.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-backup name: Configure Backups parent: database-management weight: 40 - home_menu: - identifier: home-database-backup - name: Configure Backups - parent: home-database - weight: 40 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Configure Backups @@ -28,7 +23,7 @@ To begin, select **Configure Backup** from the left sidebar. This selection dete - **BackupConfig:** Use this to create, delete, or modify specific backup tasks. - **BackupBlueprint:** Use this to manage high-level templates for enabling or disabling backups across multiple resources. -![Configure Backup section showing BackupConfig and BackupBlueprint options](./images/backup-config.png) +![Configure Backup section showing BackupConfig and BackupBlueprint options](../images/backup-config.png) --- @@ -40,7 +35,7 @@ When **BackupConfig** is selected, define the **Select Context** to indicate the Use this context to set up a new automated backup schedule. -![Create BackupConfig form with Schedule field](./images/backup-config-create.png) +![Create BackupConfig form with Schedule field](../images/backup-config-create.png) 1. **Select Context:** Choose **Create** from the dropdown menu. 1. **Schedule:** Enter a cron expression to define the backup frequency. For example, `*/15 * * * *` triggers a backup every 15 minutes. @@ -53,7 +48,7 @@ Use this context to set up a new automated backup schedule. Use this context to update the settings or status of an active backup. -![Modify BackupConfig form with Schedule and Paused toggle](./images/backup-config-modify.png) +![Modify BackupConfig form with Schedule and Paused toggle](../images/backup-config-modify.png) 1. **Select Context:** Choose **Modify**. 1. **Select BackupConfig:** Pick the specific configuration you want to edit (e.g., `mongodb`) from the dropdown list. @@ -63,7 +58,7 @@ Use this context to update the settings or status of an active backup. 1. **Preview:** Click **Preview** to see how the changes will impact your system. 1. **Submit:** Once satisfied, click **Submit** to apply the changes. -![Submit button on the Preview page confirming the backup configuration update](./images/backup-config-submit.png) +![Submit button on the Preview page confirming the backup configuration update](../images/backup-config-submit.png) > **Note:** After every **Preview**, you must click **Submit** to save your changes. This applies across all backup operations. @@ -73,7 +68,7 @@ Use this context to update the settings or status of an active backup. Use this context to permanently remove a backup configuration. -![Delete BackupConfig form with configuration selection](./images/backup-config-delete.png) +![Delete BackupConfig form with configuration selection](../images/backup-config-delete.png) 1. **Select Context:** Choose **Delete**. 1. **Select BackupConfig:** Select the configuration you wish to remove (e.g., `mongodb`). @@ -87,7 +82,7 @@ Use this context to permanently remove a backup configuration. Selecting the **BackupBlueprint** type allows you to toggle predefined backup templates for your environment. -![BackupBlueprint panel with Enable Backup Blueprint toggle](./images/backup-config-blueprint.png) +![BackupBlueprint panel with Enable Backup Blueprint toggle](../images/backup-config-blueprint.png) 1. **Enable Backup Blueprint Toggle:** Switching on activates the selected blueprint, applying its settings to the relevant resources. Switching off deactivates it. 1. **Preview:** Click **Preview** to confirm which configurations will be affected before the change takes effect. diff --git a/src/en/guides/database-management/contraint-violations.md b/docs/platform/guides/database-management/contraint-violations.md similarity index 61% rename from src/en/guides/database-management/contraint-violations.md rename to docs/platform/guides/database-management/contraint-violations.md index 9b9af11..10a5b4c 100644 --- a/src/en/guides/database-management/contraint-violations.md +++ b/docs/platform/guides/database-management/contraint-violations.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-gatekeeper name: Database Contraint Violations parent: database-management weight: 100 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/database-management/create-database.md b/docs/platform/guides/database-management/create-database.md similarity index 89% rename from src/en/guides/database-management/create-database.md rename to docs/platform/guides/database-management/create-database.md index a480dcc..53159b9 100644 --- a/src/en/guides/database-management/create-database.md +++ b/docs/platform/guides/database-management/create-database.md @@ -1,23 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-create name: Creating a Database parent: database-management weight: 10 - home_menu: - identifier: home-database-create - name: Creating a Database - parent: home-database - weight: 10 - section_menu: - identifier: database-management - name: Database Management - weight: 40 - parent: guides -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -33,7 +23,7 @@ Navigate to the **Datastore** section in the left sidebar. The **Datastore Overv To create a new database, click the green **+ Create New Instance** button in the top-right corner of the page. -![Datastore Overview page showing existing database instances and the Create New Instance button](./images/db-create/overview-create.png) +![Datastore Overview page showing existing database instances and the Create New Instance button](../images/db-create/overview-create.png) --- @@ -41,7 +31,7 @@ To create a new database, click the green **+ Create New Instance** button in th You will be presented with a grid of all supported database engines. Click on the engine you want to provision. -![Database type selection grid showing all supported engines including MongoDB, PostgreSQL, MySQL, Redis, and more](./images/db-create/db-type-select.png) +![Database type selection grid showing all supported engines including MongoDB, PostgreSQL, MySQL, Redis, and more](../images/db-create/db-type-select.png) > **Tip:** The console supports a wide range of engines including relational, document, key-value, search, and time-series databases. Select the engine that best fits your workload. @@ -51,7 +41,7 @@ You will be presented with a grid of all supported database engines. Click on th After selecting the database type, you will be prompted to choose a namespace and provide a name for the new instance. -![Choose Namespace and Name step showing Select Namespace dropdown and Name field](./images/db-create/name-namespace-select.png) +![Choose Namespace and Name step showing Select Namespace dropdown and Name field](../images/db-create/name-namespace-select.png) 1. **Select Namespace:** Choose the Kubernetes namespace where the database will be deployed. If the namespace has resource quotas, available CPU and memory will be shown to help you stay within limits. 1. **Name:** Enter a unique name for the database instance. The name must start with a lowercase letter and can contain letters, numbers, or dashes. @@ -66,7 +56,7 @@ Click **Next** to proceed to the configuration step. The main configuration page shows all settings for the new database. At the top, the namespace and name you chose are displayed as a breadcrumb (e.g., `demo / mongo-test`). -![Create MongoDB configuration page showing Database Version, Database Mode cards, Machine Profile, Storage Class, Advanced Configuration, and Additional Options](./images/db-create/create-overview-page.png) +![Create MongoDB configuration page showing Database Version, Database Mode cards, Machine Profile, Storage Class, Advanced Configuration, and Additional Options](../images/db-create/create-overview-page.png) ### 4.1 - Database Version @@ -84,7 +74,7 @@ Select the topology for your database under **Database Mode**. Three modes are a When **Replicated Cluster** is selected, two additional fields appear: -![Replicated Cluster mode selected showing Replicaset Name (rs0) and Replicaset Number (3) fields](./images/db-create/replicaset-mode.png) +![Replicated Cluster mode selected showing Replicaset Name (rs0) and Replicaset Number (3) fields](../images/db-create/replicaset-mode.png) | Field | Description | |---|---| @@ -96,11 +86,11 @@ When **Replicated Cluster** is selected, two additional fields appear: When **Sharded Cluster** is selected, three subsections appear — **Shard Nodes**, **Config Server**, and **Mongos** — each configurable independently. -![Sharded Cluster mode selected showing Shard Nodes, Config Server, and Mongos collapsible panels](./images/db-create/shard-mode.png) +![Sharded Cluster mode selected showing Shard Nodes, Config Server, and Mongos collapsible panels](../images/db-create/shard-mode.png) **Shard Nodes** — Configure how MongoDB data is partitioned, replicated, and resourced across your cluster. -![Shard Nodes panel showing Shards, Replicaset Number, Storage size, Machine, CPU, and Memory fields](./images/db-create/shard-nodes.png) +![Shard Nodes panel showing Shards, Replicaset Number, Storage size, Machine, CPU, and Memory fields](../images/db-create/shard-nodes.png) | Field | Description | |---|---| @@ -113,7 +103,7 @@ When **Sharded Cluster** is selected, three subsections appear — **Shard Nodes **Config Server** — Stores metadata about the sharded cluster including chunk distribution and shard configuration. Must run as a replica set. -![Config Server panel showing Replicaset Number, Storage size, Machine, CPU, and Memory fields](./images/db-create/config-server.png) +![Config Server panel showing Replicaset Number, Storage size, Machine, CPU, and Memory fields](../images/db-create/config-server.png) | Field | Description | |---|---| @@ -125,7 +115,7 @@ When **Sharded Cluster** is selected, three subsections appear — **Shard Nodes **Mongos** — Acts as the query router for the sharded cluster, directing client requests to the appropriate shards based on metadata from Config Servers. -![Mongos panel showing Replicaset number, Machine, CPU, and Memory fields](./images/db-create/mongos-mode.png) +![Mongos panel showing Replicaset number, Machine, CPU, and Memory fields](../images/db-create/mongos-mode.png) | Field | Description | |---|---| @@ -138,7 +128,7 @@ When **Sharded Cluster** is selected, three subsections appear — **Shard Nodes The **Machine Profile** dropdown lets you select a preset CPU and memory configuration for your database nodes. Choose `custom` to enter specific CPU and memory values manually. -![Machine Profile dropdown showing preset options alongside the Storage Class and Advanced Configuration panels](./images/db-create/machine-profile.png) +![Machine Profile dropdown showing preset options alongside the Storage Class and Advanced Configuration panels](../images/db-create/machine-profile.png) > **Tip:** Preset profiles are named by size (e.g., `db.t4large`). Use `custom` when your workload requires resources that do not match any preset. @@ -146,7 +136,7 @@ The **Machine Profile** dropdown lets you select a preset CPU and memory configu Select the Kubernetes **Storage Class** that will back the database persistent volumes, and enter the required **Storage size**. -![Storage Class dropdown showing local-path, longhorn, and longhorn-static options, alongside the Storage size field set to 2Gi](./images/db-create/storage-class.png) +![Storage Class dropdown showing local-path, longhorn, and longhorn-static options, alongside the Storage size field set to 2Gi](../images/db-create/storage-class.png) | Field | Description | |---|---| @@ -163,7 +153,7 @@ Expand the **Advanced Configuration** panel (labelled *Configure Credentials, De Add custom Kubernetes labels and annotations to the database resources for organization, monitoring, and integration with other tools and services. -![Advanced Configuration panel showing Labels and Annotations sections each with Key-Value input rows and Add new buttons](./images/db-create/advance-lavel-annotation.png) +![Advanced Configuration panel showing Labels and Annotations sections each with Key-Value input rows and Add new buttons](../images/db-create/advance-lavel-annotation.png) - Use **+ Add new** under **Labels** to attach key-value label pairs. - Use **+ Add new** under **Annotations** to attach key-value annotation pairs. @@ -173,7 +163,7 @@ Add custom Kubernetes labels and annotations to the database resources for organ The **Deletion Policy** dropdown controls what happens to the database resources when the database object is deleted from Kubernetes. -![Deletion Policy dropdown showing Delete, Halt, WipeOut, and DoNotTerminate options](./images/db-create/deletion-policy.png) +![Deletion Policy dropdown showing Delete, Halt, WipeOut, and DoNotTerminate options](../images/db-create/deletion-policy.png) | Option | Behaviour | |---|---| @@ -188,7 +178,7 @@ The **Deletion Policy** dropdown controls what happens to the database resources Configure how the database root credentials are managed. -![Authentication Credentials section showing Provide Authentication Credentials toggle, Refer existing Secret toggle, Secret dropdown, Password field, Configure Database toggle, and Configuration textarea](./images/db-create/auth-creds.png) +![Authentication Credentials section showing Provide Authentication Credentials toggle, Refer existing Secret toggle, Secret dropdown, Password field, Configure Database toggle, and Configuration textarea](../images/db-create/auth-creds.png) | Field | Description | |---|---| @@ -201,7 +191,7 @@ Configure how the database root credentials are managed. Enable **Point in-time Recovery** to restore the new database from a previous backup to an exact timestamp. -![Point in-time Recovery toggle and form showing Namespace, Name, and Recovery Timestamp fields](./images/db-create/point-in-time-recovery.png) +![Point in-time Recovery toggle and form showing Namespace, Name, and Recovery Timestamp fields](../images/db-create/point-in-time-recovery.png) 1. **Namespace:** The namespace where the source backup resides. Required. 1. **Name:** The name of the source database to recover from. Required. @@ -215,7 +205,7 @@ Enable **Point in-time Recovery** to restore the new database from a previous ba Expand the **Additional Options** panel (labelled *Enable Backup, Monitoring, TLS etc.*) to enable integrated platform features for the new database. -![Additional Options panel showing Enable Monitoring with Alert Options, Enable Backup, Enable TLS with Cluster Issuers, and Expose via Gateway toggles](./images/db-create/Additional-option.png) +![Additional Options panel showing Enable Monitoring with Alert Options, Enable Backup, Enable TLS with Cluster Issuers, and Expose via Gateway toggles](../images/db-create/Additional-option.png) | Option | Description | |---|---| diff --git a/src/en/guides/database-management/database-usage-insight.md b/docs/platform/guides/database-management/database-usage-insight.md similarity index 95% rename from src/en/guides/database-management/database-usage-insight.md rename to docs/platform/guides/database-management/database-usage-insight.md index 0cda6e2..c8fd33f 100644 --- a/src/en/guides/database-management/database-usage-insight.md +++ b/docs/platform/guides/database-management/database-usage-insight.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-insights name: Database Usage & Insights parent: database-management weight: 20 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -31,7 +31,7 @@ From the **Datastore** section in the left sidebar, click on any database engine The **Overview** tab is the landing page for any database instance. It is divided into two panels — **Connection Details** and **Insights** — and a **Nodes** table at the bottom. -![Database Overview page showing Connection Details, Insights summary panel, and Nodes table](./images/db-overview.png) +![Database Overview page showing Connection Details, Insights summary panel, and Nodes table](../images/db-overview.png) ### 2.1 - Connection Details @@ -71,7 +71,7 @@ The **Nodes** table at the bottom lists every pod in the database cluster with i The **Insights** tab provides a deeper view into database performance — including Grafana dashboards, slow query analysis, and collection-level storage metrics. -![Insights tab showing stat summary, Grafana Dashboards section, Slow Queries table, and Top Collections table](./images/db-insights.png) +![Insights tab showing stat summary, Grafana Dashboards section, Slow Queries table, and Top Collections table](../images/db-insights.png) ### 3.1 - Insights Summary Row @@ -115,7 +115,7 @@ The **Top Collections** table lists collections ranked by total storage size, he The **Users** tab shows all access credentials, bindings, and KubeVault-managed secrets associated with the database instance. -![Users tab showing Root User, AppBinding, VaultServers, and SecretEngines sections](./images/db-users.png) +![Users tab showing Root User, AppBinding, VaultServers, and SecretEngines sections](../images/db-users.png) ### 4.1 - Root User @@ -148,7 +148,7 @@ The **AppBinding** section lists `AppBinding` resources that expose this databas The lower sections of the **Users** tab are powered by **KubeVault** and provide dynamic secret management for your database. -![Users tab lower sections showing VaultServers, SecretEngines, MongoDBRoles, and SecretAccessRequests — all requiring kubevault to be enabled](./images/db-users-kubevault.png) +![Users tab lower sections showing VaultServers, SecretEngines, MongoDBRoles, and SecretAccessRequests — all requiring kubevault to be enabled](../images/db-users-kubevault.png) | Section | Description | |---|---| diff --git a/src/en/guides/database-management/delete-database.md b/docs/platform/guides/database-management/delete-database.md similarity index 89% rename from src/en/guides/database-management/delete-database.md rename to docs/platform/guides/database-management/delete-database.md index 0f4fd58..4f54b1c 100644 --- a/src/en/guides/database-management/delete-database.md +++ b/docs/platform/guides/database-management/delete-database.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-delete name: Delete Database parent: database-management weight: 110 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -29,14 +29,14 @@ Navigate to the **Datastore** section from the left sidebar and select your data Use this method to delete one or more databases at once directly from the instance list. -![Datastore Overview page with a database instance selected and the Delete Selected button highlighted](./images/delete-overview.png) +![Datastore Overview page with a database instance selected and the Delete Selected button highlighted](../images/delete-overview.png) 1. **Select Namespace:** Use the **Select Namespace** dropdown in the top-right to filter instances by namespace if needed. 1. **Select Instance(s):** Check the checkbox next to each database instance you want to delete (e.g., `mongodb demo`). 1. **Delete Selected:** Click the red **Delete Selected** button that appears in the top-right of the Overview table. 1. **Confirm:** A confirmation modal will appear asking *"Are you sure you want to delete the selected databases?"* Click **Yes** to proceed, or **Cancel** to abort. -![Bulk delete confirmation modal on the Datastore Overview page](./images/delete-overview-modal.png) +![Bulk delete confirmation modal on the Datastore Overview page](../images/delete-overview-modal.png) --- @@ -44,13 +44,13 @@ Use this method to delete one or more databases at once directly from the instan Use this method to delete a specific database while viewing its detail page. -![MongoDB database detail page showing the Delete button in the top-right navbar](./images/delete.png) +![MongoDB database detail page showing the Delete button in the top-right navbar](../images/delete.png) 1. From the **Datastore Overview**, click on the name of the database instance you want to delete to open its detail page. 1. **Delete:** Click the red **Delete** button in the top-right corner of the page. 1. **Confirm:** A confirmation modal will appear showing the name of the database. Click **Yes** to permanently delete it, or **Cancel** to abort. -![Delete confirmation modal asking "Do you want to delete mongodb?" with Cancel and Yes buttons](./images/delete-modal.png) +![Delete confirmation modal asking "Do you want to delete mongodb?" with Cancel and Yes buttons](../images/delete-modal.png) > **Warning:** Clicking **Yes** immediately and permanently removes the database. There is no undo. Confirm you have a backup before proceeding. diff --git a/src/en/guides/database-management/expose-via-gateway.md b/docs/platform/guides/database-management/expose-via-gateway.md similarity index 87% rename from src/en/guides/database-management/expose-via-gateway.md rename to docs/platform/guides/database-management/expose-via-gateway.md index ee24b1e..097ce9c 100644 --- a/src/en/guides/database-management/expose-via-gateway.md +++ b/docs/platform/guides/database-management/expose-via-gateway.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-expose-via-gateway name: Expose via Gateway parent: database-management weight: 77 - home_menu: - identifier: home-database-expose-via-gateway - name: Expose via Gateway - parent: home-database - weight: 77 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -28,7 +23,7 @@ To begin, select **Expose via Gateway** from the **Operations** section in the l You will land on a simple form with a single toggle that controls the gateway exposure state of your database. -![Expose via Gateway page showing the Expose Database toggle and Deploy button](./images/expose-via-gateway.png) +![Expose via Gateway page showing the Expose Database toggle and Deploy button](../images/expose-via-gateway.png) --- diff --git a/src/en/guides/database-management/images/auto-scaling-nodetopology.png b/docs/platform/guides/database-management/images/auto-scaling-nodetopology.png similarity index 100% rename from src/en/guides/database-management/images/auto-scaling-nodetopology.png rename to docs/platform/guides/database-management/images/auto-scaling-nodetopology.png diff --git a/src/en/guides/database-management/images/auto-scaling-readiness.png b/docs/platform/guides/database-management/images/auto-scaling-readiness.png similarity index 100% rename from src/en/guides/database-management/images/auto-scaling-readiness.png rename to docs/platform/guides/database-management/images/auto-scaling-readiness.png diff --git a/src/en/guides/database-management/images/auto-scaling-standalone.png b/docs/platform/guides/database-management/images/auto-scaling-standalone.png similarity index 100% rename from src/en/guides/database-management/images/auto-scaling-standalone.png rename to docs/platform/guides/database-management/images/auto-scaling-standalone.png diff --git a/src/en/guides/database-management/images/auto-scaling.png b/docs/platform/guides/database-management/images/auto-scaling.png similarity index 100% rename from src/en/guides/database-management/images/auto-scaling.png rename to docs/platform/guides/database-management/images/auto-scaling.png diff --git a/src/en/guides/database-management/images/backup-config-blueprint.png b/docs/platform/guides/database-management/images/backup-config-blueprint.png similarity index 100% rename from src/en/guides/database-management/images/backup-config-blueprint.png rename to docs/platform/guides/database-management/images/backup-config-blueprint.png diff --git a/src/en/guides/database-management/images/backup-config-create.png b/docs/platform/guides/database-management/images/backup-config-create.png similarity index 100% rename from src/en/guides/database-management/images/backup-config-create.png rename to docs/platform/guides/database-management/images/backup-config-create.png diff --git a/src/en/guides/database-management/images/backup-config-delete.png b/docs/platform/guides/database-management/images/backup-config-delete.png similarity index 100% rename from src/en/guides/database-management/images/backup-config-delete.png rename to docs/platform/guides/database-management/images/backup-config-delete.png diff --git a/src/en/guides/database-management/images/backup-config-modify.png b/docs/platform/guides/database-management/images/backup-config-modify.png similarity index 100% rename from src/en/guides/database-management/images/backup-config-modify.png rename to docs/platform/guides/database-management/images/backup-config-modify.png diff --git a/src/en/guides/database-management/images/backup-config-submit.png b/docs/platform/guides/database-management/images/backup-config-submit.png similarity index 100% rename from src/en/guides/database-management/images/backup-config-submit.png rename to docs/platform/guides/database-management/images/backup-config-submit.png diff --git a/src/en/guides/database-management/images/backup-config.png b/docs/platform/guides/database-management/images/backup-config.png similarity index 100% rename from src/en/guides/database-management/images/backup-config.png rename to docs/platform/guides/database-management/images/backup-config.png diff --git a/src/en/guides/database-management/images/backup/config-db-overview.png b/docs/platform/guides/database-management/images/backup/config-db-overview.png similarity index 100% rename from src/en/guides/database-management/images/backup/config-db-overview.png rename to docs/platform/guides/database-management/images/backup/config-db-overview.png diff --git a/src/en/guides/database-management/images/backup/config-db-repository.png b/docs/platform/guides/database-management/images/backup/config-db-repository.png similarity index 100% rename from src/en/guides/database-management/images/backup/config-db-repository.png rename to docs/platform/guides/database-management/images/backup/config-db-repository.png diff --git a/src/en/guides/database-management/images/backup/config-dbs-overview.png b/docs/platform/guides/database-management/images/backup/config-dbs-overview.png similarity index 100% rename from src/en/guides/database-management/images/backup/config-dbs-overview.png rename to docs/platform/guides/database-management/images/backup/config-dbs-overview.png diff --git a/src/en/guides/database-management/images/backup/config-label-annotation.png b/docs/platform/guides/database-management/images/backup/config-label-annotation.png similarity index 100% rename from src/en/guides/database-management/images/backup/config-label-annotation.png rename to docs/platform/guides/database-management/images/backup/config-label-annotation.png diff --git a/src/en/guides/database-management/images/backup/config-name-namespace.png b/docs/platform/guides/database-management/images/backup/config-name-namespace.png similarity index 100% rename from src/en/guides/database-management/images/backup/config-name-namespace.png rename to docs/platform/guides/database-management/images/backup/config-name-namespace.png diff --git a/src/en/guides/database-management/images/backup/config-session-task.png b/docs/platform/guides/database-management/images/backup/config-session-task.png similarity index 100% rename from src/en/guides/database-management/images/backup/config-session-task.png rename to docs/platform/guides/database-management/images/backup/config-session-task.png diff --git a/src/en/guides/database-management/images/backup/config-sessions.png b/docs/platform/guides/database-management/images/backup/config-sessions.png similarity index 100% rename from src/en/guides/database-management/images/backup/config-sessions.png rename to docs/platform/guides/database-management/images/backup/config-sessions.png diff --git a/src/en/guides/database-management/images/backup/config-target.png b/docs/platform/guides/database-management/images/backup/config-target.png similarity index 100% rename from src/en/guides/database-management/images/backup/config-target.png rename to docs/platform/guides/database-management/images/backup/config-target.png diff --git a/src/en/guides/database-management/images/backup/configuration-overview.png b/docs/platform/guides/database-management/images/backup/configuration-overview.png similarity index 100% rename from src/en/guides/database-management/images/backup/configuration-overview.png rename to docs/platform/guides/database-management/images/backup/configuration-overview.png diff --git a/src/en/guides/database-management/images/backup/recent-backup-create.png b/docs/platform/guides/database-management/images/backup/recent-backup-create.png similarity index 100% rename from src/en/guides/database-management/images/backup/recent-backup-create.png rename to docs/platform/guides/database-management/images/backup/recent-backup-create.png diff --git a/src/en/guides/database-management/images/backup/recent-backup-overview.png b/docs/platform/guides/database-management/images/backup/recent-backup-overview.png similarity index 100% rename from src/en/guides/database-management/images/backup/recent-backup-overview.png rename to docs/platform/guides/database-management/images/backup/recent-backup-overview.png diff --git a/src/en/guides/database-management/images/backup/recent-create-form.png b/docs/platform/guides/database-management/images/backup/recent-create-form.png similarity index 100% rename from src/en/guides/database-management/images/backup/recent-create-form.png rename to docs/platform/guides/database-management/images/backup/recent-create-form.png diff --git a/src/en/guides/database-management/images/backup/recent-db-overview.png b/docs/platform/guides/database-management/images/backup/recent-db-overview.png similarity index 100% rename from src/en/guides/database-management/images/backup/recent-db-overview.png rename to docs/platform/guides/database-management/images/backup/recent-db-overview.png diff --git a/src/en/guides/database-management/images/backup/repository-app-ref.png b/docs/platform/guides/database-management/images/backup/repository-app-ref.png similarity index 100% rename from src/en/guides/database-management/images/backup/repository-app-ref.png rename to docs/platform/guides/database-management/images/backup/repository-app-ref.png diff --git a/src/en/guides/database-management/images/backup/repository-create-overview.png b/docs/platform/guides/database-management/images/backup/repository-create-overview.png similarity index 100% rename from src/en/guides/database-management/images/backup/repository-create-overview.png rename to docs/platform/guides/database-management/images/backup/repository-create-overview.png diff --git a/src/en/guides/database-management/images/backup/repository-db-overview.png b/docs/platform/guides/database-management/images/backup/repository-db-overview.png similarity index 100% rename from src/en/guides/database-management/images/backup/repository-db-overview.png rename to docs/platform/guides/database-management/images/backup/repository-db-overview.png diff --git a/src/en/guides/database-management/images/backup/repository-db-snapshot.png b/docs/platform/guides/database-management/images/backup/repository-db-snapshot.png similarity index 100% rename from src/en/guides/database-management/images/backup/repository-db-snapshot.png rename to docs/platform/guides/database-management/images/backup/repository-db-snapshot.png diff --git a/src/en/guides/database-management/images/backup/repository-label-annotation.png b/docs/platform/guides/database-management/images/backup/repository-label-annotation.png similarity index 100% rename from src/en/guides/database-management/images/backup/repository-label-annotation.png rename to docs/platform/guides/database-management/images/backup/repository-label-annotation.png diff --git a/src/en/guides/database-management/images/backup/repository-overview.png b/docs/platform/guides/database-management/images/backup/repository-overview.png similarity index 100% rename from src/en/guides/database-management/images/backup/repository-overview.png rename to docs/platform/guides/database-management/images/backup/repository-overview.png diff --git a/src/en/guides/database-management/images/backup/repository-ref-secret.png b/docs/platform/guides/database-management/images/backup/repository-ref-secret.png similarity index 100% rename from src/en/guides/database-management/images/backup/repository-ref-secret.png rename to docs/platform/guides/database-management/images/backup/repository-ref-secret.png diff --git a/src/en/guides/database-management/images/backup/restore-config.png b/docs/platform/guides/database-management/images/backup/restore-config.png similarity index 100% rename from src/en/guides/database-management/images/backup/restore-config.png rename to docs/platform/guides/database-management/images/backup/restore-config.png diff --git a/src/en/guides/database-management/images/backup/restore-create-overview.png b/docs/platform/guides/database-management/images/backup/restore-create-overview.png similarity index 100% rename from src/en/guides/database-management/images/backup/restore-create-overview.png rename to docs/platform/guides/database-management/images/backup/restore-create-overview.png diff --git a/src/en/guides/database-management/images/backup/restore-overview.png b/docs/platform/guides/database-management/images/backup/restore-overview.png similarity index 100% rename from src/en/guides/database-management/images/backup/restore-overview.png rename to docs/platform/guides/database-management/images/backup/restore-overview.png diff --git a/src/en/guides/database-management/images/backup/restore-target.png b/docs/platform/guides/database-management/images/backup/restore-target.png similarity index 100% rename from src/en/guides/database-management/images/backup/restore-target.png rename to docs/platform/guides/database-management/images/backup/restore-target.png diff --git a/src/en/guides/database-management/images/backup/snapshot-delete.png b/docs/platform/guides/database-management/images/backup/snapshot-delete.png similarity index 100% rename from src/en/guides/database-management/images/backup/snapshot-delete.png rename to docs/platform/guides/database-management/images/backup/snapshot-delete.png diff --git a/src/en/guides/database-management/images/backup/snapshot-operation-view.png b/docs/platform/guides/database-management/images/backup/snapshot-operation-view.png similarity index 100% rename from src/en/guides/database-management/images/backup/snapshot-operation-view.png rename to docs/platform/guides/database-management/images/backup/snapshot-operation-view.png diff --git a/src/en/guides/database-management/images/backup/snapshot-overview.png b/docs/platform/guides/database-management/images/backup/snapshot-overview.png similarity index 100% rename from src/en/guides/database-management/images/backup/snapshot-overview.png rename to docs/platform/guides/database-management/images/backup/snapshot-overview.png diff --git a/src/en/guides/database-management/images/backup/storage-create-backend.png b/docs/platform/guides/database-management/images/backup/storage-create-backend.png similarity index 100% rename from src/en/guides/database-management/images/backup/storage-create-backend.png rename to docs/platform/guides/database-management/images/backup/storage-create-backend.png diff --git a/src/en/guides/database-management/images/backup/storage-create-overview.png b/docs/platform/guides/database-management/images/backup/storage-create-overview.png similarity index 100% rename from src/en/guides/database-management/images/backup/storage-create-overview.png rename to docs/platform/guides/database-management/images/backup/storage-create-overview.png diff --git a/src/en/guides/database-management/images/backup/storage-db-overview.png b/docs/platform/guides/database-management/images/backup/storage-db-overview.png similarity index 100% rename from src/en/guides/database-management/images/backup/storage-db-overview.png rename to docs/platform/guides/database-management/images/backup/storage-db-overview.png diff --git a/src/en/guides/database-management/images/backup/storage-label-annotation.png b/docs/platform/guides/database-management/images/backup/storage-label-annotation.png similarity index 100% rename from src/en/guides/database-management/images/backup/storage-label-annotation.png rename to docs/platform/guides/database-management/images/backup/storage-label-annotation.png diff --git a/src/en/guides/database-management/images/backup/storage-overview.png b/docs/platform/guides/database-management/images/backup/storage-overview.png similarity index 100% rename from src/en/guides/database-management/images/backup/storage-overview.png rename to docs/platform/guides/database-management/images/backup/storage-overview.png diff --git a/src/en/guides/database-management/images/db-create/Additional-option.png b/docs/platform/guides/database-management/images/db-create/Additional-option.png similarity index 100% rename from src/en/guides/database-management/images/db-create/Additional-option.png rename to docs/platform/guides/database-management/images/db-create/Additional-option.png diff --git a/src/en/guides/database-management/images/db-create/advance-lavel-annotation.png b/docs/platform/guides/database-management/images/db-create/advance-lavel-annotation.png similarity index 100% rename from src/en/guides/database-management/images/db-create/advance-lavel-annotation.png rename to docs/platform/guides/database-management/images/db-create/advance-lavel-annotation.png diff --git a/src/en/guides/database-management/images/db-create/auth-creds.png b/docs/platform/guides/database-management/images/db-create/auth-creds.png similarity index 100% rename from src/en/guides/database-management/images/db-create/auth-creds.png rename to docs/platform/guides/database-management/images/db-create/auth-creds.png diff --git a/src/en/guides/database-management/images/db-create/config-server.png b/docs/platform/guides/database-management/images/db-create/config-server.png similarity index 100% rename from src/en/guides/database-management/images/db-create/config-server.png rename to docs/platform/guides/database-management/images/db-create/config-server.png diff --git a/src/en/guides/database-management/images/db-create/create-overview-page.png b/docs/platform/guides/database-management/images/db-create/create-overview-page.png similarity index 100% rename from src/en/guides/database-management/images/db-create/create-overview-page.png rename to docs/platform/guides/database-management/images/db-create/create-overview-page.png diff --git a/src/en/guides/database-management/images/db-create/db-type-select.png b/docs/platform/guides/database-management/images/db-create/db-type-select.png similarity index 100% rename from src/en/guides/database-management/images/db-create/db-type-select.png rename to docs/platform/guides/database-management/images/db-create/db-type-select.png diff --git a/src/en/guides/database-management/images/db-create/deletion-policy.png b/docs/platform/guides/database-management/images/db-create/deletion-policy.png similarity index 100% rename from src/en/guides/database-management/images/db-create/deletion-policy.png rename to docs/platform/guides/database-management/images/db-create/deletion-policy.png diff --git a/src/en/guides/database-management/images/db-create/machine-profile.png b/docs/platform/guides/database-management/images/db-create/machine-profile.png similarity index 100% rename from src/en/guides/database-management/images/db-create/machine-profile.png rename to docs/platform/guides/database-management/images/db-create/machine-profile.png diff --git a/src/en/guides/database-management/images/db-create/mongos-mode.png b/docs/platform/guides/database-management/images/db-create/mongos-mode.png similarity index 100% rename from src/en/guides/database-management/images/db-create/mongos-mode.png rename to docs/platform/guides/database-management/images/db-create/mongos-mode.png diff --git a/src/en/guides/database-management/images/db-create/name-namespace-select.png b/docs/platform/guides/database-management/images/db-create/name-namespace-select.png similarity index 100% rename from src/en/guides/database-management/images/db-create/name-namespace-select.png rename to docs/platform/guides/database-management/images/db-create/name-namespace-select.png diff --git a/src/en/guides/database-management/images/db-create/overview-create.png b/docs/platform/guides/database-management/images/db-create/overview-create.png similarity index 100% rename from src/en/guides/database-management/images/db-create/overview-create.png rename to docs/platform/guides/database-management/images/db-create/overview-create.png diff --git a/src/en/guides/database-management/images/db-create/point-in-time-recovery.png b/docs/platform/guides/database-management/images/db-create/point-in-time-recovery.png similarity index 100% rename from src/en/guides/database-management/images/db-create/point-in-time-recovery.png rename to docs/platform/guides/database-management/images/db-create/point-in-time-recovery.png diff --git a/src/en/guides/database-management/images/db-create/replicaset-mode.png b/docs/platform/guides/database-management/images/db-create/replicaset-mode.png similarity index 100% rename from src/en/guides/database-management/images/db-create/replicaset-mode.png rename to docs/platform/guides/database-management/images/db-create/replicaset-mode.png diff --git a/src/en/guides/database-management/images/db-create/shard-mode.png b/docs/platform/guides/database-management/images/db-create/shard-mode.png similarity index 100% rename from src/en/guides/database-management/images/db-create/shard-mode.png rename to docs/platform/guides/database-management/images/db-create/shard-mode.png diff --git a/src/en/guides/database-management/images/db-create/shard-nodes.png b/docs/platform/guides/database-management/images/db-create/shard-nodes.png similarity index 100% rename from src/en/guides/database-management/images/db-create/shard-nodes.png rename to docs/platform/guides/database-management/images/db-create/shard-nodes.png diff --git a/src/en/guides/database-management/images/db-create/storage-class.png b/docs/platform/guides/database-management/images/db-create/storage-class.png similarity index 100% rename from src/en/guides/database-management/images/db-create/storage-class.png rename to docs/platform/guides/database-management/images/db-create/storage-class.png diff --git a/src/en/guides/database-management/images/db-insights.png b/docs/platform/guides/database-management/images/db-insights.png similarity index 100% rename from src/en/guides/database-management/images/db-insights.png rename to docs/platform/guides/database-management/images/db-insights.png diff --git a/src/en/guides/database-management/images/db-overview.png b/docs/platform/guides/database-management/images/db-overview.png similarity index 100% rename from src/en/guides/database-management/images/db-overview.png rename to docs/platform/guides/database-management/images/db-overview.png diff --git a/src/en/guides/database-management/images/db-users-kubevault.png b/docs/platform/guides/database-management/images/db-users-kubevault.png similarity index 100% rename from src/en/guides/database-management/images/db-users-kubevault.png rename to docs/platform/guides/database-management/images/db-users-kubevault.png diff --git a/src/en/guides/database-management/images/db-users.png b/docs/platform/guides/database-management/images/db-users.png similarity index 100% rename from src/en/guides/database-management/images/db-users.png rename to docs/platform/guides/database-management/images/db-users.png diff --git a/src/en/guides/database-management/images/delete-modal.png b/docs/platform/guides/database-management/images/delete-modal.png similarity index 100% rename from src/en/guides/database-management/images/delete-modal.png rename to docs/platform/guides/database-management/images/delete-modal.png diff --git a/src/en/guides/database-management/images/delete-overview-modal.png b/docs/platform/guides/database-management/images/delete-overview-modal.png similarity index 100% rename from src/en/guides/database-management/images/delete-overview-modal.png rename to docs/platform/guides/database-management/images/delete-overview-modal.png diff --git a/src/en/guides/database-management/images/delete-overview.png b/docs/platform/guides/database-management/images/delete-overview.png similarity index 100% rename from src/en/guides/database-management/images/delete-overview.png rename to docs/platform/guides/database-management/images/delete-overview.png diff --git a/src/en/guides/database-management/images/delete.png b/docs/platform/guides/database-management/images/delete.png similarity index 100% rename from src/en/guides/database-management/images/delete.png rename to docs/platform/guides/database-management/images/delete.png diff --git a/src/en/guides/database-management/images/expose-via-gateway.png b/docs/platform/guides/database-management/images/expose-via-gateway.png similarity index 100% rename from src/en/guides/database-management/images/expose-via-gateway.png rename to docs/platform/guides/database-management/images/expose-via-gateway.png diff --git a/src/en/guides/database-management/images/horizontal-scale-form.png b/docs/platform/guides/database-management/images/horizontal-scale-form.png similarity index 100% rename from src/en/guides/database-management/images/horizontal-scale-form.png rename to docs/platform/guides/database-management/images/horizontal-scale-form.png diff --git a/src/en/guides/database-management/images/instant-backup-form.png b/docs/platform/guides/database-management/images/instant-backup-form.png similarity index 100% rename from src/en/guides/database-management/images/instant-backup-form.png rename to docs/platform/guides/database-management/images/instant-backup-form.png diff --git a/src/en/guides/database-management/images/instant-backup.png b/docs/platform/guides/database-management/images/instant-backup.png similarity index 100% rename from src/en/guides/database-management/images/instant-backup.png rename to docs/platform/guides/database-management/images/instant-backup.png diff --git a/src/en/guides/database-management/images/monitoring-env-config.png b/docs/platform/guides/database-management/images/monitoring-env-config.png similarity index 100% rename from src/en/guides/database-management/images/monitoring-env-config.png rename to docs/platform/guides/database-management/images/monitoring-env-config.png diff --git a/src/en/guides/database-management/images/monitoring-env-secret.png b/docs/platform/guides/database-management/images/monitoring-env-secret.png similarity index 100% rename from src/en/guides/database-management/images/monitoring-env-secret.png rename to docs/platform/guides/database-management/images/monitoring-env-secret.png diff --git a/src/en/guides/database-management/images/monitoring-exporter.png b/docs/platform/guides/database-management/images/monitoring-exporter.png similarity index 100% rename from src/en/guides/database-management/images/monitoring-exporter.png rename to docs/platform/guides/database-management/images/monitoring-exporter.png diff --git a/src/en/guides/database-management/images/monitoring-scrapper.png b/docs/platform/guides/database-management/images/monitoring-scrapper.png similarity index 100% rename from src/en/guides/database-management/images/monitoring-scrapper.png rename to docs/platform/guides/database-management/images/monitoring-scrapper.png diff --git a/src/en/guides/database-management/images/monitoring.png b/docs/platform/guides/database-management/images/monitoring.png similarity index 100% rename from src/en/guides/database-management/images/monitoring.png rename to docs/platform/guides/database-management/images/monitoring.png diff --git a/src/en/guides/database-management/images/motoring-prometheus.png b/docs/platform/guides/database-management/images/motoring-prometheus.png similarity index 100% rename from src/en/guides/database-management/images/motoring-prometheus.png rename to docs/platform/guides/database-management/images/motoring-prometheus.png diff --git a/src/en/guides/database-management/images/motoring-service-monitor.png b/docs/platform/guides/database-management/images/motoring-service-monitor.png similarity index 100% rename from src/en/guides/database-management/images/motoring-service-monitor.png rename to docs/platform/guides/database-management/images/motoring-service-monitor.png diff --git a/src/en/guides/database-management/images/reconfigure-apply.png b/docs/platform/guides/database-management/images/reconfigure-apply.png similarity index 100% rename from src/en/guides/database-management/images/reconfigure-apply.png rename to docs/platform/guides/database-management/images/reconfigure-apply.png diff --git a/src/en/guides/database-management/images/reconfigure-create-secret.png b/docs/platform/guides/database-management/images/reconfigure-create-secret.png similarity index 100% rename from src/en/guides/database-management/images/reconfigure-create-secret.png rename to docs/platform/guides/database-management/images/reconfigure-create-secret.png diff --git a/src/en/guides/database-management/images/reconfigure-new-secret.png b/docs/platform/guides/database-management/images/reconfigure-new-secret.png similarity index 100% rename from src/en/guides/database-management/images/reconfigure-new-secret.png rename to docs/platform/guides/database-management/images/reconfigure-new-secret.png diff --git a/src/en/guides/database-management/images/reconfigure-remove.png b/docs/platform/guides/database-management/images/reconfigure-remove.png similarity index 100% rename from src/en/guides/database-management/images/reconfigure-remove.png rename to docs/platform/guides/database-management/images/reconfigure-remove.png diff --git a/src/en/guides/database-management/images/reconfigure.png b/docs/platform/guides/database-management/images/reconfigure.png similarity index 100% rename from src/en/guides/database-management/images/reconfigure.png rename to docs/platform/guides/database-management/images/reconfigure.png diff --git a/src/en/guides/database-management/images/restart-preview.png b/docs/platform/guides/database-management/images/restart-preview.png similarity index 100% rename from src/en/guides/database-management/images/restart-preview.png rename to docs/platform/guides/database-management/images/restart-preview.png diff --git a/src/en/guides/database-management/images/restart-submit.png b/docs/platform/guides/database-management/images/restart-submit.png similarity index 100% rename from src/en/guides/database-management/images/restart-submit.png rename to docs/platform/guides/database-management/images/restart-submit.png diff --git a/src/en/guides/database-management/images/restart.png b/docs/platform/guides/database-management/images/restart.png similarity index 100% rename from src/en/guides/database-management/images/restart.png rename to docs/platform/guides/database-management/images/restart.png diff --git a/src/en/guides/database-management/images/restore-config.png b/docs/platform/guides/database-management/images/restore-config.png similarity index 100% rename from src/en/guides/database-management/images/restore-config.png rename to docs/platform/guides/database-management/images/restore-config.png diff --git a/src/en/guides/database-management/images/restore.png b/docs/platform/guides/database-management/images/restore.png similarity index 100% rename from src/en/guides/database-management/images/restore.png rename to docs/platform/guides/database-management/images/restore.png diff --git a/src/en/guides/database-management/images/storage-autoscaling.png b/docs/platform/guides/database-management/images/storage-autoscaling.png similarity index 100% rename from src/en/guides/database-management/images/storage-autoscaling.png rename to docs/platform/guides/database-management/images/storage-autoscaling.png diff --git a/src/en/guides/database-management/images/storage-scale-readiness.png b/docs/platform/guides/database-management/images/storage-scale-readiness.png similarity index 100% rename from src/en/guides/database-management/images/storage-scale-readiness.png rename to docs/platform/guides/database-management/images/storage-scale-readiness.png diff --git a/src/en/guides/database-management/images/storage-scale-standalone.png b/docs/platform/guides/database-management/images/storage-scale-standalone.png similarity index 100% rename from src/en/guides/database-management/images/storage-scale-standalone.png rename to docs/platform/guides/database-management/images/storage-scale-standalone.png diff --git a/src/en/guides/database-management/images/storage-scale-volume.png b/docs/platform/guides/database-management/images/storage-scale-volume.png similarity index 100% rename from src/en/guides/database-management/images/storage-scale-volume.png rename to docs/platform/guides/database-management/images/storage-scale-volume.png diff --git a/src/en/guides/database-management/images/storage-scale.png b/docs/platform/guides/database-management/images/storage-scale.png similarity index 100% rename from src/en/guides/database-management/images/storage-scale.png rename to docs/platform/guides/database-management/images/storage-scale.png diff --git a/src/en/guides/database-management/images/tls-certificate-details.png b/docs/platform/guides/database-management/images/tls-certificate-details.png similarity index 100% rename from src/en/guides/database-management/images/tls-certificate-details.png rename to docs/platform/guides/database-management/images/tls-certificate-details.png diff --git a/src/en/guides/database-management/images/tls-certificate.png b/docs/platform/guides/database-management/images/tls-certificate.png similarity index 100% rename from src/en/guides/database-management/images/tls-certificate.png rename to docs/platform/guides/database-management/images/tls-certificate.png diff --git a/src/en/guides/database-management/images/tls-operation.png b/docs/platform/guides/database-management/images/tls-operation.png similarity index 100% rename from src/en/guides/database-management/images/tls-operation.png rename to docs/platform/guides/database-management/images/tls-operation.png diff --git a/src/en/guides/database-management/images/tls.png b/docs/platform/guides/database-management/images/tls.png similarity index 100% rename from src/en/guides/database-management/images/tls.png rename to docs/platform/guides/database-management/images/tls.png diff --git a/src/en/guides/database-management/images/update-version-preview.png b/docs/platform/guides/database-management/images/update-version-preview.png similarity index 100% rename from src/en/guides/database-management/images/update-version-preview.png rename to docs/platform/guides/database-management/images/update-version-preview.png diff --git a/src/en/guides/database-management/images/update-version-submit.png b/docs/platform/guides/database-management/images/update-version-submit.png similarity index 100% rename from src/en/guides/database-management/images/update-version-submit.png rename to docs/platform/guides/database-management/images/update-version-submit.png diff --git a/src/en/guides/database-management/images/update-version.png b/docs/platform/guides/database-management/images/update-version.png similarity index 100% rename from src/en/guides/database-management/images/update-version.png rename to docs/platform/guides/database-management/images/update-version.png diff --git a/src/en/guides/database-management/images/vertical-exporter.png b/docs/platform/guides/database-management/images/vertical-exporter.png similarity index 100% rename from src/en/guides/database-management/images/vertical-exporter.png rename to docs/platform/guides/database-management/images/vertical-exporter.png diff --git a/src/en/guides/database-management/images/vertical-machine-profile.png b/docs/platform/guides/database-management/images/vertical-machine-profile.png similarity index 100% rename from src/en/guides/database-management/images/vertical-machine-profile.png rename to docs/platform/guides/database-management/images/vertical-machine-profile.png diff --git a/src/en/guides/database-management/images/vertical-machine-profile2.png b/docs/platform/guides/database-management/images/vertical-machine-profile2.png similarity index 100% rename from src/en/guides/database-management/images/vertical-machine-profile2.png rename to docs/platform/guides/database-management/images/vertical-machine-profile2.png diff --git a/src/en/guides/database-management/images/vertical-node-selection.png b/docs/platform/guides/database-management/images/vertical-node-selection.png similarity index 100% rename from src/en/guides/database-management/images/vertical-node-selection.png rename to docs/platform/guides/database-management/images/vertical-node-selection.png diff --git a/src/en/guides/database-management/images/vertical-scaling.png b/docs/platform/guides/database-management/images/vertical-scaling.png similarity index 100% rename from src/en/guides/database-management/images/vertical-scaling.png rename to docs/platform/guides/database-management/images/vertical-scaling.png diff --git a/src/en/guides/database-management/instant-backup-restore.md b/docs/platform/guides/database-management/instant-backup-restore.md similarity index 89% rename from src/en/guides/database-management/instant-backup-restore.md rename to docs/platform/guides/database-management/instant-backup-restore.md index bc30b32..556a071 100644 --- a/src/en/guides/database-management/instant-backup-restore.md +++ b/docs/platform/guides/database-management/instant-backup-restore.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-instant-backup-restore name: Instant Backup & Restore parent: database-management weight: 45 - home_menu: - identifier: home-database-instant-backup-restore - name: Instant Backup & Restore - parent: home-database - weight: 45 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -35,7 +30,7 @@ To begin, select **Instant Backup** or **Restore** from the left sidebar under * The **Instant Backup** form lets you trigger an on-demand backup right away by selecting an existing backup configuration and one or more backup sessions. -![Instant Backup form showing Backup Configuration and Backup Sessions fields](./images/instant-backup.png) +![Instant Backup form showing Backup Configuration and Backup Sessions fields](../images/instant-backup.png) ### 2.1 - Selecting a Backup Configuration @@ -45,7 +40,7 @@ The **Instant Backup** form lets you trigger an on-demand backup right away by s 1. **Backup Sessions:** Select one or more backup sessions to trigger (e.g., `full-backup`). Sessions are defined within the chosen backup configuration. This field is required. -![Instant Backup form filled with Backup Configuration demo/mongodb and Backup Sessions full-backup selected](./images/instant-backup-form.png) +![Instant Backup form filled with Backup Configuration demo/mongodb and Backup Sessions full-backup selected](../images/instant-backup-form.png) > **Tip:** You can select multiple backup sessions from the dropdown if your configuration defines more than one session type (e.g., `full-backup`, `incremental-backup`). @@ -59,7 +54,7 @@ The **Instant Backup** form lets you trigger an on-demand backup right away by s The **Restore Configuration** form allows you to define exactly which data you want to recover and where it should come from. -![Restore Configuration form with Repository and Snapshot fields](./images/restore-config.png) +![Restore Configuration form with Repository and Snapshot fields](../images/restore-config.png) 1. **Repository:** Select the backup repository that contains your data (e.g., **demo/mongodb**). 1. **Select Snapshot:** Choose the specific point-in-time backup you wish to restore. diff --git a/docs/platform/guides/database-management/manage-recommendations.md b/docs/platform/guides/database-management/manage-recommendations.md new file mode 100644 index 0000000..d8fca72 --- /dev/null +++ b/docs/platform/guides/database-management/manage-recommendations.md @@ -0,0 +1,14 @@ +--- +layout: platform_single +menu: + docsplatform_{{.version}}: + identifier: database-management-recommendation + name: Manage Recommendations + parent: database-management + weight: 80 +menu_name: docsplatform_{{.version}} +section_menu_id: guides +--- + + +# Manage Recommendations diff --git a/src/en/guides/database-management/monitoring.md b/docs/platform/guides/database-management/monitoring.md similarity index 91% rename from src/en/guides/database-management/monitoring.md rename to docs/platform/guides/database-management/monitoring.md index a6893c9..2cda986 100644 --- a/src/en/guides/database-management/monitoring.md +++ b/docs/platform/guides/database-management/monitoring.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-monitoring name: Configure Monitoring parent: database-management weight: 75 - home_menu: - identifier: home-database-monitoring - name: Configure Monitoring - parent: home-database - weight: 75 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -32,7 +27,7 @@ You will land on the **Monitoring** form, which is divided into the following se - **Select a Monitoring Method** — Choose how Prometheus scrapes your database metrics. - **Exporter Configuration** — Optionally customize the metrics exporter sidecar container. -![Monitoring form overview showing Enable Monitoring toggle, monitoring method selection, and Exporter Configuration](./images/monitoring.png) +![Monitoring form overview showing Enable Monitoring toggle, monitoring method selection, and Exporter Configuration](../images/monitoring.png) > **Note:** To update the Exporter Resource section, click on **Create OpsRequest** at the top of the page. @@ -56,7 +51,7 @@ Selecting this method expands the **ServiceMonitor Configuration** panel: - **Scrapping Interval:** How frequently Prometheus scrapes metrics from the database (e.g., `30s`). Defaults to `30s` if left unchanged. -![Prometheus Operator method selected with ServiceMonitor Configuration showing Scrapping Interval of 30s](./images/motoring-prometheus.png) +![Prometheus Operator method selected with ServiceMonitor Configuration showing Scrapping Interval of 30s](../images/motoring-prometheus.png) > **Tip:** Use **Prometheus Operator** if you already have the Prometheus Operator installed in your cluster — it handles `ServiceMonitor` creation automatically. @@ -75,7 +70,7 @@ Selecting this method expands an **Endpoints** panel and a **Labels** panel for Use **+ Add new** in the **Labels** panel to attach additional key-value labels to the `ServiceMonitor`. You can also add multiple endpoints using **+ Add new** button in **Endpoints** panel. -![Custom ServiceMonitor method selected showing Endpoints panel with Honor Labels, Interval, Path, and Port fields, and a Labels section](./images/motoring-service-monitor.png) +![Custom ServiceMonitor method selected showing Endpoints panel with Honor Labels, Interval, Path, and Port fields, and a Labels section](../images/motoring-service-monitor.png) > **Note:** `Interval`, `Path` and `Port` fields are mandatory in **Endpoints** section. @@ -83,7 +78,7 @@ Use **+ Add new** in the **Labels** panel to attach additional key-value labels **Custom Scrapper** injects the metrics exporter sidecar and adds Prometheus scraping annotations directly to the stats `Service`, instead of creating a `ServiceMonitor`. Use this method with setups that rely on annotation-based service discovery rather than the Prometheus Operator. -![Custom Scrapper method selected](./images/monitoring-scrapper.png) +![Custom Scrapper method selected](../images/monitoring-scrapper.png) --- @@ -91,7 +86,7 @@ Use **+ Add new** in the **Labels** panel to attach additional key-value labels The **Exporter Configuration** section allows you to customize the metrics exporter sidecar container that is injected into your database pod. Toggle **Customize Exporter Sidecar** to expand the configuration options. -![Exporter Configuration section expanded showing Security Context, Args, and Environment Variables with Input value source selected](./images/monitoring-exporter.png) +![Exporter Configuration section expanded showing Security Context, Args, and Environment Variables with Input value source selected](../images/monitoring-exporter.png) ### 4.1 - Security Context @@ -116,7 +111,7 @@ Use the **Environment Variables** section to inject environment variables into t **Secret** — Pull the value from a Kubernetes Secret: -![Environment Variable with Secret source selected, showing Secret Name and Secret Key fields](./images/monitoring-env-secret.png) +![Environment Variable with Secret source selected, showing Secret Name and Secret Key fields](../images/monitoring-env-secret.png) | Field | Description | |---|---| @@ -125,7 +120,7 @@ Use the **Environment Variables** section to inject environment variables into t **ConfigMap** — Pull the value from a Kubernetes ConfigMap: -![Environment Variable with ConfigMap source selected, showing ConfigMap Name and ConfigMap Key fields](./images/monitoring-env-config.png) +![Environment Variable with ConfigMap source selected, showing ConfigMap Name and ConfigMap Key fields](../images/monitoring-env-config.png) | Field | Description | |---|---| diff --git a/src/en/guides/database-management/recent-backups.md b/docs/platform/guides/database-management/recent-backups.md similarity index 93% rename from src/en/guides/database-management/recent-backups.md rename to docs/platform/guides/database-management/recent-backups.md index 9a2c9cf..13ce136 100644 --- a/src/en/guides/database-management/recent-backups.md +++ b/docs/platform/guides/database-management/recent-backups.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-recent-backups name: Recent Backups parent: database-management weight: 125 - home_menu: - identifier: home-database-recent-backups - name: Recent Backups - parent: home-database - weight: 125 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -32,7 +27,7 @@ Navigate to **Backups** in the left sidebar and select **Recent Backups**. This The list page displays all BackupSessions in your cluster, both scheduled (from BackupConfigurations) and on-demand. Use the **Select Namespace** dropdown to filter by namespace. -![BackupSession list page showing sessions with Name, Namespace, BackupConfiguration, Invoker Kind, Invoker Name, Session, Timeout, Phase, Duration, and Age columns](./images/backup/recent-backup-overview.png) +![BackupSession list page showing sessions with Name, Namespace, BackupConfiguration, Invoker Kind, Invoker Name, Session, Timeout, Phase, Duration, and Age columns](../images/backup/recent-backup-overview.png) | Column | Description | |---|---| @@ -57,7 +52,7 @@ Click on any BackupSession name in the list to open its detail page. The detail The detail page opens on the **Overview** tab showing: -![BackupSession detail page showing Basic info, Backup Configuration table, and Snapshots table](./images/backup/recent-db-overview.png) +![BackupSession detail page showing Basic info, Backup Configuration table, and Snapshots table](../images/backup/recent-db-overview.png) **Basic** — Core metadata for the session: @@ -106,11 +101,11 @@ To manually trigger an on-demand backup (without waiting for a scheduled BackupC The **Create BackupSession** form will open with the following fields: -![Create BackupSession form showing Namespace, Labels & Annotations, Invoker Kind, Invoker Name, Session, and Timeout fields](./images/backup/recent-backup-create.png) +![Create BackupSession form showing Namespace, Labels & Annotations, Invoker Kind, Invoker Name, Session, and Timeout fields](../images/backup/recent-backup-create.png) ### 4.1 - Basic Fields -![Create BackupSession form fields showing all required and optional sections](./images/backup/recent-create-form.png) +![Create BackupSession form fields showing all required and optional sections](../images/backup/recent-create-form.png) | Field | Description | |---|---| diff --git a/src/en/guides/database-management/reconfigure-database.md b/docs/platform/guides/database-management/reconfigure-database.md similarity index 93% rename from src/en/guides/database-management/reconfigure-database.md rename to docs/platform/guides/database-management/reconfigure-database.md index c558cad..c6602fa 100644 --- a/src/en/guides/database-management/reconfigure-database.md +++ b/docs/platform/guides/database-management/reconfigure-database.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-reconfigure name: Reconfigure Databases parent: database-management weight: 65 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -27,7 +27,7 @@ You will land on the **Reconfigure** form, which provides three operation modes - **Apply Config** — Define custom configuration key-value pairs inline, without needing a pre-existing secret. - **Remove** — Remove an existing configuration secret from your database. -![Reconfigure form showing the three operation tabs: New Config Secret, Apply Config, and Remove](./images/reconfigure.png) +![Reconfigure form showing the three operation tabs: New Config Secret, Apply Config, and Remove](../images/reconfigure.png) --- @@ -35,7 +35,7 @@ You will land on the **Reconfigure** form, which provides three operation modes The **New Config Secret** tab lets you attach a Kubernetes secret containing your database configuration. Use this when you already have a configuration secret in your cluster or want to create one from scratch. -![New Config Secret tab showing the Config Secret dropdown and YAML preview panel](./images/reconfigure-new-secret.png) +![New Config Secret tab showing the Config Secret dropdown and YAML preview panel](../images/reconfigure-new-secret.png) 1. **Config Secret:** Click the **Config Secret** dropdown to select an existing secret from the list. - Use the **refresh** icon to reload the available secrets if your list is stale. @@ -46,7 +46,7 @@ The **New Config Secret** tab lets you attach a Kubernetes secret containing you If you choose **+ Create a new Secret**, a form will expand below the dropdown: -![Create a New Config Secret form with Secret Name and String Data fields](./images/reconfigure-create-secret.png) +![Create a New Config Secret form with Secret Name and String Data fields](../images/reconfigure-create-secret.png) 1. **Secret Name\*:** Enter a name for the new Kubernetes secret (e.g., `secret_name`). 2. **String Data\*:** Add one or more key-value pairs that define your configuration: @@ -64,7 +64,7 @@ If you choose **+ Create a new Secret**, a form will expand below the dropdown: The **Apply Config** tab lets you define custom database configuration parameters directly as key-value pairs, without needing a pre-existing secret. These parameters will overwrite the current settings. -![Apply Config tab showing the Configuration dropdown and YAML preview panel](./images/reconfigure-apply.png) +![Apply Config tab showing the Configuration dropdown and YAML preview panel](../images/reconfigure-apply.png) 1. **Configuration:** Click the **Configuration** dropdown to select an existing configuration or leave it unselected to start from scratch. 2. Enter the configuration parameters you want to apply (e.g., `max_connections`). Each parameter is defined as a key-value pair and will directly overwrite the corresponding existing setting. @@ -78,7 +78,7 @@ The **Apply Config** tab lets you define custom database configuration parameter The **Remove** tab lets you detach and remove an existing configuration secret from your database, reverting it to its default settings. -![Remove tab showing the Configuration dropdown for selecting the secret to remove](./images/reconfigure-remove.png) +![Remove tab showing the Configuration dropdown for selecting the secret to remove](../images/reconfigure-remove.png) 1. **Configuration:** Click the **Configuration** dropdown and select the configuration secret you want to remove. 2. Review the generated manifest in the preview panel on the right to confirm the correct secret is being targeted. diff --git a/src/en/guides/database-management/repository.md b/docs/platform/guides/database-management/repository.md similarity index 92% rename from src/en/guides/database-management/repository.md rename to docs/platform/guides/database-management/repository.md index 62abf3b..318ea01 100644 --- a/src/en/guides/database-management/repository.md +++ b/docs/platform/guides/database-management/repository.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-repository name: Backup Repository parent: database-management weight: 135 - home_menu: - identifier: home-database-repository - name: Repository - parent: home-database - weight: 135 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -32,7 +27,7 @@ Navigate to **Backups** in the left sidebar and select **Repository**. This open The list page displays all Repository resources configured across your cluster. Use the **Select Namespace** dropdown to filter by namespace, or click **Create New Instance** to add a new repository. -![Repository list page showing resources with Name, Namespace, BackupStorage, Target, Size, Phase, and Age columns](./images/backup/repository-overview.png) +![Repository list page showing resources with Name, Namespace, BackupStorage, Target, Size, Phase, and Age columns](../images/backup/repository-overview.png) | Column | Description | |---|---| @@ -54,7 +49,7 @@ Click on any Repository name in the list to open its detail page. The detail pag The detail page shows comprehensive information about the repository: -![Repository detail page showing Basic info, Backup Storage, Snapshots, and linked resources](./images/backup/repository-db-overview.png) +![Repository detail page showing Basic info, Backup Storage, Snapshots, and linked resources](../images/backup/repository-db-overview.png) **Basic** — Core metadata for the repository: @@ -83,7 +78,7 @@ The detail page shows comprehensive information about the repository: **Snapshots** — Individual backup snapshots stored in this repository: -![Backup Configuration and Snapshots tables showing all stored snapshots](./images/backup/repository-db-snapshot.png) +![Backup Configuration and Snapshots tables showing all stored snapshots](../images/backup/repository-db-snapshot.png) **Backup Configuration** — BackupConfigurations using this repository: @@ -124,7 +119,7 @@ To create a new Repository, click **Create New Instance** from the Repository li The form starts with identity and deletion policy fields: -![Create Repository form showing Namespace, Repository Name, Labels & Annotations, Deletion Policy, Storage Ref, Encryption Secret, Path, and App Ref sections](./images/backup/repository-create-overview.png) +![Create Repository form showing Namespace, Repository Name, Labels & Annotations, Deletion Policy, Storage Ref, Encryption Secret, Path, and App Ref sections](../images/backup/repository-create-overview.png) | Field | Description | |---|---| @@ -136,7 +131,7 @@ The form starts with identity and deletion policy fields: Expand the **Labels & Annotations** section to attach custom metadata: -![Labels and Annotations panel showing Labels and Annotations each with Key-Value input rows and Add new buttons](./images/backup/repository-label-annotation.png) +![Labels and Annotations panel showing Labels and Annotations each with Key-Value input rows and Add new buttons](../images/backup/repository-label-annotation.png) - Use **+ Add new** under **Labels** to add key-value label pairs. - Use **+ Add new** under **Annotations** to add key-value annotation pairs. @@ -146,7 +141,7 @@ Expand the **Labels & Annotations** section to attach custom metadata: The **Storage Ref**, **Encryption Secret**, and **Path** sections configure where and how snapshots are stored. -![Storage Ref and Encryption Secret sections showing Namespace/Name fields and Path field](./images/backup/repository-ref-secret.png) +![Storage Ref and Encryption Secret sections showing Namespace/Name fields and Path field](../images/backup/repository-ref-secret.png) **Storage Ref** — Reference to the BackupStorage backend: @@ -172,7 +167,7 @@ The **Storage Ref**, **Encryption Secret**, and **Path** sections configure wher The **App Ref** section identifies the database resource this repository backs up. -![App Ref section showing Api Group, Kind, Namespace, and Name dropdowns](./images/backup/repository-app-ref.png) +![App Ref section showing Api Group, Kind, Namespace, and Name dropdowns](../images/backup/repository-app-ref.png) | Field | Description | |---|---| diff --git a/src/en/guides/database-management/restart-database.md b/docs/platform/guides/database-management/restart-database.md similarity index 92% rename from src/en/guides/database-management/restart-database.md rename to docs/platform/guides/database-management/restart-database.md index 44527f9..d81a859 100644 --- a/src/en/guides/database-management/restart-database.md +++ b/docs/platform/guides/database-management/restart-database.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-restart name: Database Restarts parent: database-management weight: 60 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -25,7 +25,7 @@ You will land on the **Restart** form, which contains one main section: - **OpsRequest Options** — Configure how the restart operation is executed, including timeout and apply policy. -![Restart form showing OpsRequest Options panel](./images/restart.png) +![Restart form showing OpsRequest Options panel](../images/restart.png) --- @@ -38,7 +38,7 @@ Expand the **OpsRequest Options** panel to configure the restart operation. - **IfReady** — The restart will only be applied if the database is in a ready state. This is the recommended option. - **Always** — The OpsRequest will be applied regardless of the database's current state. -![Restart form filled with Timeout 1h and Apply set to IfReady](./images/restart-preview.png) +![Restart form filled with Timeout 1h and Apply set to IfReady](../images/restart-preview.png) > **Tip:** Use **IfReady** to avoid triggering a restart on an already unhealthy database, which could worsen its state. @@ -50,7 +50,7 @@ Expand the **OpsRequest Options** panel to configure the restart operation. The Preview page displays the full `MongoDBOpsRequest` manifest that will be applied to your cluster. Review it carefully to confirm all settings are correct. -![Preview page showing the generated MongoDBOpsRequest YAML manifest for Restart](./images/restart-submit.png) +![Preview page showing the generated MongoDBOpsRequest YAML manifest for Restart](../images/restart-submit.png) - The manifest is shown in **YAML** view by default. Use the **JSON** button to switch to JSON format if preferred. - Use the **Copy** button to copy the manifest to your clipboard. diff --git a/src/en/guides/database-management/restore.md b/docs/platform/guides/database-management/restore.md similarity index 92% rename from src/en/guides/database-management/restore.md rename to docs/platform/guides/database-management/restore.md index 224a921..688d3d9 100644 --- a/src/en/guides/database-management/restore.md +++ b/docs/platform/guides/database-management/restore.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-restore name: Backup Restore parent: database-management weight: 140 - home_menu: - identifier: home-database-restore - name: Restore - parent: home-database - weight: 140 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -32,7 +27,7 @@ Navigate to **Backups** in the left sidebar and select **Restore**. This opens t The list page displays all Restore resources in your cluster, including both scheduled and manually triggered restores. Use the **Select Namespace** dropdown to filter by namespace. -![Restore list page showing restore operations with Name, Namespace, Target, Task, Repository, Snapshot, Total components, Duration, Phase, and Age columns](./images/backup/restore-overview.png) +![Restore list page showing restore operations with Name, Namespace, Target, Task, Repository, Snapshot, Total components, Duration, Phase, and Age columns](../images/backup/restore-overview.png) | Column | Description | |---|---| @@ -55,7 +50,7 @@ To manually trigger a restore operation, click **Create New Instance** from the The **Create Restore** form will open with the following fields: -![Create Restore form showing Namespace, Labels & Annotations, Source Snapshot, and Target Database sections](./images/backup/restore-create-overview.png) +![Create Restore form showing Namespace, Labels & Annotations, Source Snapshot, and Target Database sections](../images/backup/restore-create-overview.png) ### 3.1 - Basic Fields @@ -77,7 +72,7 @@ Use the **Labels & Annotations** section to attach custom metadata: The **Source Snapshot** section specifies which backup snapshot to restore from. -![Source Snapshot panel showing Repository Namespace/Name and Snapshot Name fields](./images/backup/restore-config.png) +![Source Snapshot panel showing Repository Namespace/Name and Snapshot Name fields](../images/backup/restore-config.png) | Field | Description | |---|---| @@ -89,7 +84,7 @@ The **Source Snapshot** section specifies which backup snapshot to restore from. The **Target Database** section identifies where the data will be restored. -![Target Database panel showing Api Group, Kind, Namespace, and Name fields](./images/backup/restore-target.png) +![Target Database panel showing Api Group, Kind, Namespace, and Name fields](../images/backup/restore-target.png) | Field | Description | |---|---| diff --git a/src/en/guides/database-management/scaling-storage.md b/docs/platform/guides/database-management/scaling-storage.md similarity index 92% rename from src/en/guides/database-management/scaling-storage.md rename to docs/platform/guides/database-management/scaling-storage.md index cea6138..ff322fc 100644 --- a/src/en/guides/database-management/scaling-storage.md +++ b/docs/platform/guides/database-management/scaling-storage.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-scaling-storage name: Scaling Storages parent: database-management weight: 35 - home_menu: - identifier: home-database-scaling-storage - name: Scaling Storages - parent: home-database - weight: 35 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -31,7 +26,7 @@ You will land on the **Expand Volume** form, which contains two method cards at - **Expand Volume** — Manually increase the database storage volume to a specified size. - **Storage Autoscaling** — Automatically scale storage capacity based on configurable usage thresholds. -![Expand Volume form showing method selection cards, Mode dropdown, Standalone volume expansion, and OpsRequest Options](./images/storage-scale.png) +![Expand Volume form showing method selection cards, Mode dropdown, Standalone volume expansion, and OpsRequest Options](../images/storage-scale.png) --- @@ -39,7 +34,7 @@ You will land on the **Expand Volume** form, which contains two method cards at Use this method to perform an immediate, one-time expansion of your database storage to a specific size. -![Expand Volume method selected showing Mode dropdown and Standalone current-to-new storage size input](./images/storage-scale-volume.png) +![Expand Volume method selected showing Mode dropdown and Standalone current-to-new storage size input](../images/storage-scale-volume.png) ### 2.1 - Selecting the Mode @@ -70,7 +65,7 @@ The **Standalone** panel specifies how much storage to allocate: Use this method to configure automatic storage expansion. The system monitors storage usage and expands capacity automatically when defined thresholds are crossed. -![Storage Autoscaling method selected showing Trigger toggle, Expansion Mode, Standalone, Readiness Criteria, Timeout, and Apply sections](./images/storage-autoscaling.png) +![Storage Autoscaling method selected showing Trigger toggle, Expansion Mode, Standalone, Readiness Criteria, Timeout, and Apply sections](../images/storage-autoscaling.png) ### 3.1 - Trigger @@ -87,7 +82,7 @@ Choose how the autoscaler expands storage when a threshold is triggered: The **Standalone** panel defines the usage threshold and scaling rules for standalone database nodes. -![Standalone panel showing UsageThreshold slider, Scaling Rules with Initial Storage and percentage steps, and UpperBound field](./images/storage-scale-standalone.png) +![Standalone panel showing UsageThreshold slider, Scaling Rules with Initial Storage and percentage steps, and UpperBound field](../images/storage-scale-standalone.png) | Field | Description | |---|---| @@ -102,7 +97,7 @@ Use **Add New Rule** to define additional scaling steps for different storage si The **Readiness Criteria** panel defines conditions that must be met before the autoscaler considers the database ready to accept a storage expansion. -![Readiness Criteria panel showing Objects Count Diff Percentage slider and Oplog Max Lag Seconds field](./images/storage-scale-readiness.png) +![Readiness Criteria panel showing Objects Count Diff Percentage slider and Oplog Max Lag Seconds field](../images/storage-scale-readiness.png) | Field | Description | |---|---| diff --git a/src/en/guides/database-management/scaling.md b/docs/platform/guides/database-management/scaling.md similarity index 91% rename from src/en/guides/database-management/scaling.md rename to docs/platform/guides/database-management/scaling.md index c3cc152..1e3e671 100644 --- a/src/en/guides/database-management/scaling.md +++ b/docs/platform/guides/database-management/scaling.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-scale name: Scaling Databases parent: database-management weight: 30 - home_menu: - identifier: home-database-scale - name: Scaling Databases - parent: home-database - weight: 30 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -33,7 +28,7 @@ You will land on the scaling form, which shows two method cards at the top: Below the method cards, the form contains sections for **Configure Your Machine Profile**, **Node Selection**, **Exporter**, and **OpsRequest Options**. -![Vertical Scale form overview showing method cards, Machine Profile, Node Selection, Exporter, and OpsRequest Options sections](./images/vertical-scaling.png) +![Vertical Scale form overview showing method cards, Machine Profile, Node Selection, Exporter, and OpsRequest Options sections](../images/vertical-scaling.png) --- @@ -45,12 +40,12 @@ Use this method to manually set the CPU and memory resources for your database n The **Configure Your Machine Profile** panel lets you compare your current resource allocation with the proposed new configuration before applying it. -![Machine Profile panel showing Current Machine profile (250m CPU, 512Mi Memory) and New Machine profile with custom resource dropdown](./images/vertical-machine-profile.png) +![Machine Profile panel showing Current Machine profile (250m CPU, 512Mi Memory) and New Machine profile with custom resource dropdown](../images/vertical-machine-profile.png) - **Current Machine Profile** — Displays the existing CPU and memory allocation (read-only, shown for reference). - **New Machine Profile** — Select a preset resource profile from the **Resources** dropdown, or choose **custom** to enter CPU and Memory values manually. -![Machine Profile with Resources dropdown expanded showing available preset CPU and Memory options](./images/vertical-machine-profile2.png) +![Machine Profile with Resources dropdown expanded showing available preset CPU and Memory options](../images/vertical-machine-profile2.png) > **Tip:** Use a preset profile for common workload sizes. Switch to **custom** if you need precise control over CPU and memory values beyond the available presets. @@ -58,7 +53,7 @@ The **Configure Your Machine Profile** panel lets you compare your current resou The **Node Selection** panel controls which Kubernetes nodes the database pods are scheduled onto after scaling. -![Node Selection panel showing Node Selection Policy dropdown, Label Selector and Taints hint, and Topology key-value fields](./images/vertical-node-selection.png) +![Node Selection panel showing Node Selection Policy dropdown, Label Selector and Taints hint, and Topology key-value fields](../images/vertical-node-selection.png) | Field | Description | |---|---| @@ -70,7 +65,7 @@ The **Node Selection** panel controls which Kubernetes nodes the database pods a The **Exporter** panel sets the CPU and memory resources allocated to the metrics exporter sidecar container. -![Exporter panel showing CPU field set to 100m and Memory field set to 256Mi](./images/vertical-exporter.png) +![Exporter panel showing CPU field set to 100m and Memory field set to 256Mi](../images/vertical-exporter.png) | Field | Description | |---|---| @@ -94,7 +89,7 @@ Expand **OpsRequest Options** to configure the timeout and apply policy for the Use this method to automatically adjust CPU and memory based on actual workload demands. The autoscaler monitors resource usage and applies changes according to the policies you configure. -![Compute Autoscaling method selected showing Trigger toggle, Pod Lifetime Threshold, Standalone, NodeTopology, and OpsRequest Options sections](./images/auto-scaling.png) +![Compute Autoscaling method selected showing Trigger toggle, Pod Lifetime Threshold, Standalone, NodeTopology, and OpsRequest Options sections](../images/auto-scaling.png) ### 3.1 - Trigger and Pod Lifetime Threshold @@ -105,7 +100,7 @@ Use this method to automatically adjust CPU and memory based on actual workload The **Standalone** panel defines the resource boundaries and scaling sensitivity for standalone database nodes. -![Standalone panel showing ResourceDiff slider at 20%, Min Allowed and Max Allowed CPU and Memory, Controlled Resources, and Container Controlled Values](./images/auto-scaling-standalone.png) +![Standalone panel showing ResourceDiff slider at 20%, Min Allowed and Max Allowed CPU and Memory, Controlled Resources, and Container Controlled Values](../images/auto-scaling-standalone.png) | Field | Description | |---|---| @@ -121,7 +116,7 @@ The **Standalone** panel defines the resource boundaries and scaling sensitivity The **NodeTopology** panel lets you constrain autoscaling decisions to a specific node topology group, ensuring recommendations stay within the resource limits of a particular node class. -![NodeTopology panel showing Select NodeTopology dropdown](./images/auto-scaling-nodetopology.png) +![NodeTopology panel showing Select NodeTopology dropdown](../images/auto-scaling-nodetopology.png) 1. **Select NodeTopology:** Choose a node topology from the dropdown to scope the autoscaler's resource recommendations to the capacity of nodes in that topology. @@ -129,7 +124,7 @@ The **NodeTopology** panel lets you constrain autoscaling decisions to a specifi The **Readiness Criteria** panel defines conditions that must be met before the autoscaler applies a scaling recommendation. -![Readiness Criteria panel showing Objects Count Diff Percentage slider at 50% and Oplog Max Lag Seconds field set to 10](./images/auto-scaling-readiness.png) +![Readiness Criteria panel showing Objects Count Diff Percentage slider at 50% and Oplog Max Lag Seconds field set to 10](../images/auto-scaling-readiness.png) | Field | Description | |---|---| @@ -153,7 +148,7 @@ Expand **OpsRequest Options** to configure how the autoscaling OpsRequest is app Use **Horizontal Scale** to increase or decrease the number of database replicas. More replicas improve fault tolerance and distribute read load; fewer replicas conserve cluster resources. -![Horizontal Scale form showing Current Replicas (3) and New Replicas spinner input](./images/horizontal-scale-form.png) +![Horizontal Scale form showing Current Replicas (3) and New Replicas spinner input](../images/horizontal-scale-form.png) 1. **Current Replicas:** Displays the current replica count (read-only, shown for reference). 1. **New Replicas:** Enter the desired replica count using the spinner or by typing directly. Each replica is an independent copy of your database — for example, setting this to `3` creates three copies for improved availability. diff --git a/src/en/guides/database-management/security-report.md b/docs/platform/guides/database-management/security-report.md similarity index 59% rename from src/en/guides/database-management/security-report.md rename to docs/platform/guides/database-management/security-report.md index 20431e1..5dc0191 100644 --- a/src/en/guides/database-management/security-report.md +++ b/docs/platform/guides/database-management/security-report.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-security name: Database Security Report parent: database-management weight: 90 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/database-management/snapshot.md b/docs/platform/guides/database-management/snapshot.md similarity index 93% rename from src/en/guides/database-management/snapshot.md rename to docs/platform/guides/database-management/snapshot.md index 8b501d8..bed5378 100644 --- a/src/en/guides/database-management/snapshot.md +++ b/docs/platform/guides/database-management/snapshot.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-snapshot name: Backup Snapshot parent: database-management weight: 145 - home_menu: - identifier: home-database-snapshot - name: Snapshot - parent: home-database - weight: 145 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -32,7 +27,7 @@ Navigate to **Backups** in the left sidebar and select **Snapshot**. This opens The list page displays all Snapshot resources in your cluster. Use the **Select Namespace** dropdown to filter by namespace, or view detailed information about stored snapshots. -![Snapshot list page showing snapshots with Name, Namespace, Repository, Invoker Kind, Invoker Name, Backend Repository, Creation Timestamp, Deletion Policy, Phase, Verification Status, and Age columns](./images/backup/snapshot-overview.png) +![Snapshot list page showing snapshots with Name, Namespace, Repository, Invoker Kind, Invoker Name, Backend Repository, Creation Timestamp, Deletion Policy, Phase, Verification Status, and Age columns](../images/backup/snapshot-overview.png) | Column | Description | |---|---| @@ -58,7 +53,7 @@ Click on any Snapshot name in the list to open its detail page. The detail page The detail page shows comprehensive snapshot information: -![Snapshot detail page showing Basic info, Repository reference, and Invoker information](./images/backup/snapshot-operation-view.png) +![Snapshot detail page showing Basic info, Repository reference, and Invoker information](../images/backup/snapshot-operation-view.png) **Basic** — Core metadata for the snapshot: @@ -103,7 +98,7 @@ To delete a snapshot, click on the snapshot name to open its detail page, then l When initiating a delete operation, a confirmation dialog appears: -![Delete Snapshot confirmation dialog showing deletion policy and confirmation options](./images/backup/snapshot-delete.png) +![Delete Snapshot confirmation dialog showing deletion policy and confirmation options](../images/backup/snapshot-delete.png) | Field | Description | |---|---| diff --git a/src/en/guides/database-management/tls.md b/docs/platform/guides/database-management/tls.md similarity index 92% rename from src/en/guides/database-management/tls.md rename to docs/platform/guides/database-management/tls.md index 9556638..0b9187e 100644 --- a/src/en/guides/database-management/tls.md +++ b/docs/platform/guides/database-management/tls.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-tls name: Configure TLS parent: database-management weight: 70 - home_menu: - identifier: home-database-tls - name: Configure TLS - parent: home-database - weight: 70 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -35,7 +30,7 @@ You will land on the **TLS Configure** form, which is divided into the following - **Certificates** — Define one or more certificates with custom subject and SAN details. - **OpsRequest Options** — Configure timeout and apply policy for the operation. -![TLS Configure form showing all sections including TLS Operation, Issuer Reference, Certificates, and OpsRequest Options](./images/tls.png) +![TLS Configure form showing all sections including TLS Operation, Issuer Reference, Certificates, and OpsRequest Options](../images/tls.png) --- @@ -59,7 +54,7 @@ Expand the **Issuer Reference** panel to specify which cert-manager issuer shoul 1. **Kind:** Select the type of issuer — typically `ClusterIssuer` for cluster-wide issuers or `Issuer` for namespace-scoped ones. 1. **Name:** Enter the name of the issuer (e.g., `ace-incluster`). -![TLS Configure form filled with Operation set to Update and Issuer Reference expanded showing ClusterIssuer ace-incluster](./images/tls-operation.png) +![TLS Configure form filled with Operation set to Update and Issuer Reference expanded showing ClusterIssuer ace-incluster](../images/tls-operation.png) > **Note:** The Issuer Reference is required when the **Update** operation is selected. Ensure the issuer exists in your cluster before proceeding. @@ -69,7 +64,7 @@ Expand the **Issuer Reference** panel to specify which cert-manager issuer shoul The **Certificates** section allows you to define one or more certificates that will be managed by the TLS configuration. Click **+ Add new** to add a certificate entry. -![Certificates panel showing an empty certificate entry with all available fields](./images/tls-certificate.png) +![Certificates panel showing an empty certificate entry with all available fields](../images/tls-certificate.png) Each certificate entry contains the following fields: @@ -96,7 +91,7 @@ The **Alias** dropdown identifies the role of the certificate within the databas - **client** — The certificate used by clients connecting to the database. - **metrics-exporter** — The certificate used by the metrics exporter for secure scraping. -![Certificates panel showing the Alias dropdown expanded with server, client, and metrics-exporter options, and sample Organizations and Countries fields filled in](./images/tls-certificate-details.png) +![Certificates panel showing the Alias dropdown expanded with server, client, and metrics-exporter options, and sample Organizations and Countries fields filled in](../images/tls-certificate-details.png) > **Note:** Fields marked with a red asterisk are required. The filed with `+ Add new` button validates entries on input — leaving an added row empty will show an "Item cannot be empty" warning. Also You can add multiple instance of them. diff --git a/src/en/guides/database-management/upgrade-version.md b/docs/platform/guides/database-management/upgrade-version.md similarity index 91% rename from src/en/guides/database-management/upgrade-version.md rename to docs/platform/guides/database-management/upgrade-version.md index 1de9d94..b5b83ee 100644 --- a/src/en/guides/database-management/upgrade-version.md +++ b/docs/platform/guides/database-management/upgrade-version.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: database-management-update name: Upgrade Database Version parent: database-management weight: 50 - home_menu: - identifier: home-database-update - name: Upgrade Database Version - parent: home-database - weight: 50 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -31,7 +26,7 @@ You will land on the **Update Version** form, which has two main sections: - **Version** — Select the target version you want to upgrade your database to. - **OpsRequest Options** — Configure advanced settings such as timeout and apply policy. -![Update Version form showing Version selector and OpsRequest Options](./images/update-version.png) +![Update Version form showing Version selector and OpsRequest Options](../images/update-version.png) --- @@ -54,7 +49,7 @@ Expand the **OpsRequest Options** panel to configure how the upgrade operation i - **IfReady** — The upgrade will only be applied if the database is in a ready state. This is the recommended option. - **Always** — The OpsRequest will be applied regardless of the database's current state. -![Update Version form filled with Target Version 8.0.10, Timeout 2h, and Apply set to IfReady](./images/update-version-preview.png) +![Update Version form filled with Target Version 8.0.10, Timeout 2h, and Apply set to IfReady](../images/update-version-preview.png) > **Tip:** Use **IfReady** unless you have a specific reason to force the operation, as it prevents upgrades from running on an unhealthy database. @@ -66,7 +61,7 @@ Expand the **OpsRequest Options** panel to configure how the upgrade operation i The Preview page displays the full `MongoDBOpsRequest` manifest that will be applied to your cluster. Review it carefully to confirm all settings are correct. -![Preview page showing the generated MongoDBOpsRequest YAML manifest](./images/update-version-submit.png) +![Preview page showing the generated MongoDBOpsRequest YAML manifest](../images/update-version-submit.png) - The manifest is shown in **YAML** view by default. Use the **JSON** button to switch to JSON format if preferred. - Use the **Copy** button to copy the manifest to your clipboard. diff --git a/src/en/guides/get-started/_index.md b/docs/platform/guides/get-started/_index.md similarity index 64% rename from src/en/guides/get-started/_index.md rename to docs/platform/guides/get-started/_index.md index fa01969..43993b9 100644 --- a/src/en/guides/get-started/_index.md +++ b/docs/platform/guides/get-started/_index.md @@ -1,13 +1,14 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: guide-start name: Get Started + parent: guides description: Basic information and instructions for first-time users of AppsCode icon: https://img.icons8.com/00994A/ios/50/rocket--v1.png popular: true weight: 10 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/get-started/add-cluster.md b/docs/platform/guides/get-started/add-cluster.md similarity index 82% rename from src/en/guides/get-started/add-cluster.md rename to docs/platform/guides/get-started/add-cluster.md index 226cdf3..84892f9 100644 --- a/src/en/guides/get-started/add-cluster.md +++ b/docs/platform/guides/get-started/add-cluster.md @@ -1,19 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: guide-start-cluster name: Add a Kubernetes Cluster parent: guide-start weight: 30 - home_menu: - identifier: home-start-cluster - name: Add a Kubernetes Cluster - parent: home-start - popular: true - weight: 30 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/get-started/add-credential.md b/docs/platform/guides/get-started/add-credential.md similarity index 83% rename from src/en/guides/get-started/add-credential.md rename to docs/platform/guides/get-started/add-credential.md index 532f63a..94f097a 100644 --- a/src/en/guides/get-started/add-credential.md +++ b/docs/platform/guides/get-started/add-credential.md @@ -1,19 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: guide-start-credential name: Add a Credential parent: guide-start weight: 20 - home_menu: - identifier: home-start-credential - name: Add a Credential - parent: home-start - popular: true - weight: 20 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/get-started/architecture.md b/docs/platform/guides/get-started/architecture.md similarity index 92% rename from src/en/guides/get-started/architecture.md rename to docs/platform/guides/get-started/architecture.md index 093ea48..8271c1b 100644 --- a/src/en/guides/get-started/architecture.md +++ b/docs/platform/guides/get-started/architecture.md @@ -1,19 +1,19 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: guide-architecture name: Architecture parent: guide-start weight: 12 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Architecture Let's first discuss some basic terminologies, those will be repeated many times throughout the whole docs. The below picture will help in describing the terminologies: -![architecture](images/architecture.png) +![architecture](../images/architecture.png) ### ACE ACE is the central management cluster where we will deploy all the ui-components. Namely the `backend server(ace-platform-api)`, `kubedb-ui`, `cluster-ui`, `billing-ui`, `platform-ui`, `grafana-ui`, ingresses etc. This will be mainly used by the administrators & devops engineers. diff --git a/src/en/guides/get-started/enable-features.md b/docs/platform/guides/get-started/enable-features.md similarity index 85% rename from src/en/guides/get-started/enable-features.md rename to docs/platform/guides/get-started/enable-features.md index 67010ef..fe0fb9a 100644 --- a/src/en/guides/get-started/enable-features.md +++ b/docs/platform/guides/get-started/enable-features.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: guide-start-features name: Enable Features parent: guide-start weight: 40 - home_menu: - identifier: home-start-features - name: Enable Features - parent: home-start - weight: 40 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/get-started/images/architecture.png b/docs/platform/guides/get-started/images/architecture.png similarity index 100% rename from src/en/guides/get-started/images/architecture.png rename to docs/platform/guides/get-started/images/architecture.png diff --git a/src/en/guides/get-started/images/selfhost.png b/docs/platform/guides/get-started/images/selfhost.png similarity index 100% rename from src/en/guides/get-started/images/selfhost.png rename to docs/platform/guides/get-started/images/selfhost.png diff --git a/docs/platform/guides/get-started/manage-databases.md b/docs/platform/guides/get-started/manage-databases.md new file mode 100644 index 0000000..caf1898 --- /dev/null +++ b/docs/platform/guides/get-started/manage-databases.md @@ -0,0 +1,14 @@ +--- +layout: platform_single +menu: + docsplatform_{{.version}}: + identifier: guide-start-databases + name: Manage Databases + parent: guide-start + weight: 50 +menu_name: docsplatform_{{.version}} +section_menu_id: guides +--- + + +# Manage Databases diff --git a/src/en/guides/get-started/register-login.md b/docs/platform/guides/get-started/register-login.md similarity index 90% rename from src/en/guides/get-started/register-login.md rename to docs/platform/guides/get-started/register-login.md index bca6935..b007b6d 100644 --- a/src/en/guides/get-started/register-login.md +++ b/docs/platform/guides/get-started/register-login.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: guide-start-register name: Get Started (Register & Login) parent: guide-start weight: 10 - section_menu: - identifier: guide-start - name: Get Started - weight: 10 - parent: guides -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/get-started/requirements.md b/docs/platform/guides/get-started/requirements.md similarity index 96% rename from src/en/guides/get-started/requirements.md rename to docs/platform/guides/get-started/requirements.md index 13a8e35..80a4d6b 100644 --- a/src/en/guides/get-started/requirements.md +++ b/docs/platform/guides/get-started/requirements.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: guide-ace-requirements name: ACE Requirements parent: guide-start weight: 14 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # Requirements to deploy ACE diff --git a/src/en/guides/integrations/_index.md b/docs/platform/guides/integrations/_index.md similarity index 63% rename from src/en/guides/integrations/_index.md rename to docs/platform/guides/integrations/_index.md index d11494d..cb4934b 100644 --- a/src/en/guides/integrations/_index.md +++ b/docs/platform/guides/integrations/_index.md @@ -1,13 +1,14 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: integrations name: Integrations + parent: guides description: Integrate ACE into your Kubernetes platform icon: https://img.icons8.com/?size=100&id=80695&format=png&color=000000 popular: true weight: 40 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/integrations/images/ace-url.png b/docs/platform/guides/integrations/images/ace-url.png similarity index 100% rename from src/en/guides/integrations/images/ace-url.png rename to docs/platform/guides/integrations/images/ace-url.png diff --git a/src/en/guides/integrations/images/acer-proxy-installer.png b/docs/platform/guides/integrations/images/acer-proxy-installer.png similarity index 100% rename from src/en/guides/integrations/images/acer-proxy-installer.png rename to docs/platform/guides/integrations/images/acer-proxy-installer.png diff --git a/src/en/guides/integrations/images/create-repo.png b/docs/platform/guides/integrations/images/create-repo.png similarity index 100% rename from src/en/guides/integrations/images/create-repo.png rename to docs/platform/guides/integrations/images/create-repo.png diff --git a/src/en/guides/integrations/images/extensions.png b/docs/platform/guides/integrations/images/extensions.png similarity index 100% rename from src/en/guides/integrations/images/extensions.png rename to docs/platform/guides/integrations/images/extensions.png diff --git a/src/en/guides/integrations/images/install-ext.png b/docs/platform/guides/integrations/images/install-ext.png similarity index 100% rename from src/en/guides/integrations/images/install-ext.png rename to docs/platform/guides/integrations/images/install-ext.png diff --git a/src/en/guides/integrations/images/kubedb-in-list.png b/docs/platform/guides/integrations/images/kubedb-in-list.png similarity index 100% rename from src/en/guides/integrations/images/kubedb-in-list.png rename to docs/platform/guides/integrations/images/kubedb-in-list.png diff --git a/src/en/guides/integrations/images/kubedb-in-rancher.png b/docs/platform/guides/integrations/images/kubedb-in-rancher.png similarity index 100% rename from src/en/guides/integrations/images/kubedb-in-rancher.png rename to docs/platform/guides/integrations/images/kubedb-in-rancher.png diff --git a/src/en/guides/integrations/images/manage-repo.png b/docs/platform/guides/integrations/images/manage-repo.png similarity index 100% rename from src/en/guides/integrations/images/manage-repo.png rename to docs/platform/guides/integrations/images/manage-repo.png diff --git a/src/en/guides/integrations/images/organization-create.png b/docs/platform/guides/integrations/images/organization-create.png similarity index 100% rename from src/en/guides/integrations/images/organization-create.png rename to docs/platform/guides/integrations/images/organization-create.png diff --git a/src/en/guides/integrations/images/organization-settings-generate-installer.png b/docs/platform/guides/integrations/images/organization-settings-generate-installer.png similarity index 100% rename from src/en/guides/integrations/images/organization-settings-generate-installer.png rename to docs/platform/guides/integrations/images/organization-settings-generate-installer.png diff --git a/src/en/guides/integrations/images/organization-settings-sync-users.png b/docs/platform/guides/integrations/images/organization-settings-sync-users.png similarity index 100% rename from src/en/guides/integrations/images/organization-settings-sync-users.png rename to docs/platform/guides/integrations/images/organization-settings-sync-users.png diff --git a/src/en/guides/integrations/images/organization-settings.png b/docs/platform/guides/integrations/images/organization-settings.png similarity index 100% rename from src/en/guides/integrations/images/organization-settings.png rename to docs/platform/guides/integrations/images/organization-settings.png diff --git a/src/en/guides/integrations/images/repo-info.png b/docs/platform/guides/integrations/images/repo-info.png similarity index 100% rename from src/en/guides/integrations/images/repo-info.png rename to docs/platform/guides/integrations/images/repo-info.png diff --git a/src/en/guides/integrations/images/three-dot.png b/docs/platform/guides/integrations/images/three-dot.png similarity index 100% rename from src/en/guides/integrations/images/three-dot.png rename to docs/platform/guides/integrations/images/three-dot.png diff --git a/src/en/guides/integrations/rancher-extension.md b/docs/platform/guides/integrations/rancher-extension.md similarity index 78% rename from src/en/guides/integrations/rancher-extension.md rename to docs/platform/guides/integrations/rancher-extension.md index 12a64b9..64f6a8f 100644 --- a/src/en/guides/integrations/rancher-extension.md +++ b/docs/platform/guides/integrations/rancher-extension.md @@ -1,23 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: rancher-extension name: KubeDB Rancher Extension parent: integrations weight: 50 - home_menu: - identifier: home-integrations-rancher-extension - name: KubeDB Rancher Extension - parent: home-integrations - weight: 50 - section_menu: - identifier: integrations - name: KubeDB rancher-extension - weight: 20 - parent: guides -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- # KubeDB Rancher Extension @@ -49,24 +39,24 @@ Before proceeding, make sure you have: --- ### Step 2 – Create a Rancher-Type Organization in ACE -1. Visit your ACE URL and log in with your **admin account**. ![ACE URL](./images/ace-url.png) +1. Visit your ACE URL and log in with your **admin account**. ![ACE URL](../images/ace-url.png) 2. Navigate to **Organizations** and create a new organization with the type set to **Rancher**. 3. Provide a valid **Sync Token**. > The Sync Token is used to synchronize Rancher users into the ACE platform. -![Create Organization](./images/organization-create.png) +![Create Organization](../images/organization-create.png) --- ### Step 3 – Sync Rancher Users -1. Go to **Organization Settings → Rancher Extension**. ![Organization Settings](./images/organization-settings.png) -2. Click **Sync User** to import Rancher users into ACE. ![Sync User](./images/organization-settings-sync-users.png) +1. Go to **Organization Settings → Rancher Extension**. ![Organization Settings](../images/organization-settings.png) +2. Click **Sync User** to import Rancher users into ACE. ![Sync User](../images/organization-settings-sync-users.png) --- ### Step 4 – Install the Rancher Proxy in Local Cluster -1. Click **Generate Rancher Proxy Installer** to generate the Rancher proxy installation command. ![Generate Rancher Proxy Installer](images/organization-settings-generate-installer.png) -2. First, Click the **Download** button to download the CA. We are passing it by --set-file in helm command. Then Copy the generated Helm installation command. ![Rancher Proxy Installer](./images/acer-proxy-installer.png) +1. Click **Generate Rancher Proxy Installer** to generate the Rancher proxy installation command. ![Generate Rancher Proxy Installer](../images/organization-settings-generate-installer.png) +2. First, Click the **Download** button to download the CA. We are passing it by --set-file in helm command. Then Copy the generated Helm installation command. ![Rancher Proxy Installer](../images/acer-proxy-installer.png) 3. Open a terminal connected to your Rancher **Local** cluster. 4. Run the copied Helm command to install the Rancher proxy. @@ -87,33 +77,33 @@ Follow these steps to install the KubeDB extension in Rancher: #### 1. Open Extensions Page In your Rancher UI, click on **Extensions**. - ![Extensions](./images/extensions.png) + ![Extensions](../images/extensions.png) #### 2. Open Managed Repositories In the list of available extensions, click the **three dots** menu (as shown below) and select **Managed Repositories**. - ![Three Dot](./images/three-dot.png) - ![Manage Repo](./images/manage-repo.png) + ![Three Dot](../images/three-dot.png) + ![Manage Repo](../images/manage-repo.png) #### 3. Create a New Repository Click the **Create** button. - ![Create Repo](./images/create-repo.png) + ![Create Repo](../images/create-repo.png) #### 4. Enter Repository Details Fill in the required fields as shown in the screenshot, then click **Create**. - ![Repo Info](./images/repo-info.png) + ![Repo Info](../images/repo-info.png) #### 5. Locate the KubeDB Extension After adding the repository, you will see **KubeDB** in the list of available extensions. - ![KubeDB Extension](./images/kubedb-in-list.png) + ![KubeDB Extension](../images/kubedb-in-list.png) #### 6. Install the Extension Click **Install** to add the KubeDB extension to Rancher. - ![Install KubeDB](./images/install-ext.png) + ![Install KubeDB](../images/install-ext.png) #### 7. Access KubeDB in a Cluster Open any cluster in Rancher — you will now see a **KubeDB** dropdown in the sidebar. From here, you can deploy, monitor, and manage your databases directly from the Rancher UI. - ![KubeDB In Rancher](./images/kubedb-in-rancher.png) + ![KubeDB In Rancher](../images/kubedb-in-rancher.png) --- diff --git a/src/en/guides/license-management/_index.md b/docs/platform/guides/license-management/_index.md similarity index 65% rename from src/en/guides/license-management/_index.md rename to docs/platform/guides/license-management/_index.md index ddb5d41..5ad4618 100644 --- a/src/en/guides/license-management/_index.md +++ b/docs/platform/guides/license-management/_index.md @@ -1,13 +1,14 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: license-management name: License Management + parent: guides description: License Management for AppsCode's products icon: https://img.icons8.com/?size=100&id=80695&format=png&color=000000 popular: true weight: 40 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- diff --git a/src/en/guides/license-management/contract.md b/docs/platform/guides/license-management/contract.md similarity index 90% rename from src/en/guides/license-management/contract.md rename to docs/platform/guides/license-management/contract.md index 8e59787..ecf3b79 100644 --- a/src/en/guides/license-management/contract.md +++ b/docs/platform/guides/license-management/contract.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: license-management-contract name: Contract parent: license-management weight: 40 - home_menu: - identifier: license-management-contract - name: Contract - parent: home-license - weight: 40 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -24,7 +19,7 @@ specific AppsCode products, such as KubeDB or platform-enterprise, with defined The contract management system within the Billing Console provides comprehensive tools for creating, modifying, and monitoring contracts. Administrators can specify product details, validity periods, and associated features, ensuring that customers have access to the appropriate resources for their needs. -![contract-details](./images/contract-details.png) +![contract-details](../images/contract-details.png) Key information typically contained within a contract includes: @@ -48,12 +43,12 @@ environments are licensed under a given contract, within the overall terms and c To add a Kubernetes cluster to a contract and enable license validation within that environment, customers need to perform the following steps: 1. **Navigate to Contract Details:** Access the specific contract detail page within the Billing Console. -2. **Initiate Cluster Addition:** Locate the `Cluster` section on the contract page and `click on` the `Add Cluster` button. ![Add Cluster](./images/add-cluster-button-rectangle.png) +2. **Initiate Cluster Addition:** Locate the `Cluster` section on the contract page and `click on` the `Add Cluster` button. ![Add Cluster](../images/add-cluster-button-rectangle.png) 3. **Provide Cluster Information:** A dialog box will appear, prompting for cluster details. Customers need to provide: - **Cluster ID:** The unique identifier of the Kubernetes cluster. This can be retrieved using the command: `kubectl get ns kube-system -o=jsonpath='{.metadata.uid}`. - - **Cluster Name (optional):** A descriptive name, such as `dev-us-east-1` or `prod-us-east-2`, for easy identification within the console. Customers can enter multiple `ClusterID` and `ClusterName` pairs, each on a new line, separated by a space. ![Add Cluster Information](./images/add-cluster-information.png) -4. **Preview and Confirm:** After entering the details, selecting `Preview` will display the entered cluster(s) for verification. Once confirmed, click `Add` to finalize the association. ![Add Cluster Information](./images/add-cluster-preview.png) -5. **View Associated Clusters:** Upon successful addition, the cluster(s) will appear in the `Cluster` section of the contract's detail page, listed by their `Cluster ID` and `Name`. ![Add Cluster Information](./images/add-cluster-confirm.png) + - **Cluster Name (optional):** A descriptive name, such as `dev-us-east-1` or `prod-us-east-2`, for easy identification within the console. Customers can enter multiple `ClusterID` and `ClusterName` pairs, each on a new line, separated by a space. ![Add Cluster Information](../images/add-cluster-information.png) +4. **Preview and Confirm:** After entering the details, selecting `Preview` will display the entered cluster(s) for verification. Once confirmed, click `Add` to finalize the association. ![Add Cluster Information](../images/add-cluster-preview.png) +5. **View Associated Clusters:** Upon successful addition, the cluster(s) will appear in the `Cluster` section of the contract's detail page, listed by their `Cluster ID` and `Name`. ![Add Cluster Information](../images/add-cluster-confirm.png) ### Removing Clusters from Contracts @@ -61,11 +56,11 @@ To remove a cluster's authorization to use licensed products under a specific co 1. **Navigate to Contract Details:** Access the specific contract detail page within the Billing Console. 2. **Locate and Remove:** In the `Cluster` section, find the cluster in the associated clusters list that needs to be removed. -3. **Confirm Removal:** Select the `Remove` option (often represented by a `trash` icon) next to the cluster and confirm the action when prompted. ![Cluster Delete](./images/cluster-delete.png) +3. **Confirm Removal:** Select the `Remove` option (often represented by a `trash` icon) next to the cluster and confirm the action when prompted. ![Cluster Delete](../images/cluster-delete.png) After removal, the cluster will no longer be authorized to use the licensed products associated with that contract. Any installed AppsCode products on that cluster may revert to their community or limited functionality, depending on their licensing model. -**Audit Trail:** The Billing Console maintains an audit trail of changes to cluster associations, logging which user performed the action and when. This feature is vital for tracking, security, and troubleshooting. ![Audit Trail](./images/audits.png) +**Audit Trail:** The Billing Console maintains an audit trail of changes to cluster associations, logging which user performed the action and when. This feature is vital for tracking, security, and troubleshooting. ![Audit Trail](../images/audits.png) ### Cluster Contract Relationship @@ -91,6 +86,6 @@ The operational mode of a contract (`online` or `offline`) is a critical setting - When a contract is configured as `offline` by AppsCode's administrators, the `license-proxyserver` installer generated by the customer will include licenses covering the contract's entire duration. - These licenses do not require periodic online `validation` or `rotation`. - Any changes to the contract term requires the customer to generate & deploy a new offline License Proxy Server installer. -- In offline contract you can download the license file from the contract details page. ![Download Offline License](./images/download-offline-license.png) +- In offline contract you can download the license file from the contract details page. ![Download Offline License](../images/download-offline-license.png) > The Billing Console enables customers to generate the appropriate License Proxy Server installer based on the mode of their contract. diff --git a/src/en/guides/license-management/images/add-cluster-button-rectangle.png b/docs/platform/guides/license-management/images/add-cluster-button-rectangle.png similarity index 100% rename from src/en/guides/license-management/images/add-cluster-button-rectangle.png rename to docs/platform/guides/license-management/images/add-cluster-button-rectangle.png diff --git a/src/en/guides/license-management/images/add-cluster-confirm.png b/docs/platform/guides/license-management/images/add-cluster-confirm.png similarity index 100% rename from src/en/guides/license-management/images/add-cluster-confirm.png rename to docs/platform/guides/license-management/images/add-cluster-confirm.png diff --git a/src/en/guides/license-management/images/add-cluster-information.png b/docs/platform/guides/license-management/images/add-cluster-information.png similarity index 100% rename from src/en/guides/license-management/images/add-cluster-information.png rename to docs/platform/guides/license-management/images/add-cluster-information.png diff --git a/src/en/guides/license-management/images/add-cluster-preview.png b/docs/platform/guides/license-management/images/add-cluster-preview.png similarity index 100% rename from src/en/guides/license-management/images/add-cluster-preview.png rename to docs/platform/guides/license-management/images/add-cluster-preview.png diff --git a/src/en/guides/license-management/images/audits.png b/docs/platform/guides/license-management/images/audits.png similarity index 100% rename from src/en/guides/license-management/images/audits.png rename to docs/platform/guides/license-management/images/audits.png diff --git a/src/en/guides/license-management/images/cluster-delete.png b/docs/platform/guides/license-management/images/cluster-delete.png similarity index 100% rename from src/en/guides/license-management/images/cluster-delete.png rename to docs/platform/guides/license-management/images/cluster-delete.png diff --git a/src/en/guides/license-management/images/contract-details.png b/docs/platform/guides/license-management/images/contract-details.png similarity index 100% rename from src/en/guides/license-management/images/contract-details.png rename to docs/platform/guides/license-management/images/contract-details.png diff --git a/src/en/guides/license-management/images/download-offline-license.png b/docs/platform/guides/license-management/images/download-offline-license.png similarity index 100% rename from src/en/guides/license-management/images/download-offline-license.png rename to docs/platform/guides/license-management/images/download-offline-license.png diff --git a/src/en/guides/license-management/images/home-billing-console.png b/docs/platform/guides/license-management/images/home-billing-console.png similarity index 100% rename from src/en/guides/license-management/images/home-billing-console.png rename to docs/platform/guides/license-management/images/home-billing-console.png diff --git a/src/en/guides/license-management/images/license-proxy-apiservice-yaml-status.png b/docs/platform/guides/license-management/images/license-proxy-apiservice-yaml-status.png similarity index 100% rename from src/en/guides/license-management/images/license-proxy-apiservice-yaml-status.png rename to docs/platform/guides/license-management/images/license-proxy-apiservice-yaml-status.png diff --git a/src/en/guides/license-management/images/license-proxy-server-svc-check.png b/docs/platform/guides/license-management/images/license-proxy-server-svc-check.png similarity index 100% rename from src/en/guides/license-management/images/license-proxy-server-svc-check.png rename to docs/platform/guides/license-management/images/license-proxy-server-svc-check.png diff --git a/src/en/guides/license-management/images/license-status-free-contract.png b/docs/platform/guides/license-management/images/license-status-free-contract.png similarity index 100% rename from src/en/guides/license-management/images/license-status-free-contract.png rename to docs/platform/guides/license-management/images/license-status-free-contract.png diff --git a/src/en/guides/license-management/images/license-status-paid-contract.png b/docs/platform/guides/license-management/images/license-status-paid-contract.png similarity index 100% rename from src/en/guides/license-management/images/license-status-paid-contract.png rename to docs/platform/guides/license-management/images/license-status-paid-contract.png diff --git a/src/en/guides/license-management/images/offline-installer-cluster-selection.png b/docs/platform/guides/license-management/images/offline-installer-cluster-selection.png similarity index 100% rename from src/en/guides/license-management/images/offline-installer-cluster-selection.png rename to docs/platform/guides/license-management/images/offline-installer-cluster-selection.png diff --git a/src/en/guides/license-management/images/offline-installer-contract-selection.png b/docs/platform/guides/license-management/images/offline-installer-contract-selection.png similarity index 100% rename from src/en/guides/license-management/images/offline-installer-contract-selection.png rename to docs/platform/guides/license-management/images/offline-installer-contract-selection.png diff --git a/src/en/guides/license-management/images/offline-installer-scripts.png b/docs/platform/guides/license-management/images/offline-installer-scripts.png similarity index 100% rename from src/en/guides/license-management/images/offline-installer-scripts.png rename to docs/platform/guides/license-management/images/offline-installer-scripts.png diff --git a/src/en/guides/license-management/images/online-installer-scripts.png b/docs/platform/guides/license-management/images/online-installer-scripts.png similarity index 100% rename from src/en/guides/license-management/images/online-installer-scripts.png rename to docs/platform/guides/license-management/images/online-installer-scripts.png diff --git a/src/en/guides/license-management/images/online-installer.png b/docs/platform/guides/license-management/images/online-installer.png similarity index 100% rename from src/en/guides/license-management/images/online-installer.png rename to docs/platform/guides/license-management/images/online-installer.png diff --git a/src/en/guides/license-management/license-proxyserver.md b/docs/platform/guides/license-management/license-proxyserver.md similarity index 91% rename from src/en/guides/license-management/license-proxyserver.md rename to docs/platform/guides/license-management/license-proxyserver.md index e83bcb4..1de4c27 100644 --- a/src/en/guides/license-management/license-proxyserver.md +++ b/docs/platform/guides/license-management/license-proxyserver.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: license-management-license-proxyserver name: License Proxy Server parent: license-management weight: 40 - home_menu: - identifier: license-management-license-proxyserver - name: License Proxy Server - parent: home-license - weight: 40 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- ## The License Proxy Server @@ -50,8 +45,8 @@ Online mode is suitable for clusters with reliable internet connectivity, allowi ##### Installer Generation for Online Mode -When the `Online` option is selected for installer generation in the Billing Console, the system prepares a standard `license-proxyserver` installer. ![Online Installer](./images/online-installer.png) -This installer is typically provided as a `Helm` commands or `YAML files`, as seen in the `Scripts` pop-up. ![Online Installer Scripts](./images/online-installer-scripts.png) +When the `Online` option is selected for installer generation in the Billing Console, the system prepares a standard `license-proxyserver` installer. ![Online Installer](../images/online-installer.png) +This installer is typically provided as a `Helm` commands or `YAML files`, as seen in the `Scripts` pop-up. ![Online Installer Scripts](../images/online-installer-scripts.png) The generated installer configures the license-proxyserver to communicate with the AppsCode licensing backend. The cluster where this `license-proxyserver` is installed must be `associated with one or more online contracts` in the Billing Console for successful license acquisition. Key configurations embedded in the installer include: @@ -85,9 +80,9 @@ designated as `offline` type by an [AppsCode administrators](https://AppsCode.co Generating an installer for offline mode is a multi-step process, designed to embed specific licenses for a chosen cluster: 1. **Select Offline Mode:** In the `License Proxy Server` section of the Billing Console, choose the `Offline` option. -2. **Identify Target Cluster:** The console will then display a list of clusters that are associated with at least one `offline` contract, along with their `Name`, `UID`, and the `count` of Associated Contracts (e.g., `doc-preview` with `6 Contracts`, `prod-us-east-1` with `2 Contracts`). The administrator must select the specific cluster for which the offline installer is to be generated. ![Offline Installer Cluster Selection](./images/offline-installer-cluster-selection.png) Click on the `Associated Contracts` button next to the desired cluster to embed the licenses against the selected contracts.

-3. **Select Contracts for Embedding:** Once a cluster is chosen, the `Billing Console` shows all offline contracts currently linked to the selected cluster, allowing the administrator to choose which of these contracts' licenses should be embedded into the `license-proxyserver` installer. This provides granular control, especially if a cluster is associated with multiple offline contracts for different products or terms. ![Offline Installer Contract Selection](./images/offline-installer-contract-selection.png) After making the selections, click the `Generate License Proxy Installer` button within this pop-up to proceed.

-4. **Generate the Installer Bundle:** Upon clicking `Generate License Proxy Installer`, the Billing Console compiles the installer package. This package includes the `license-proxyserver` deployment manifests (typically `Helm` commands or `YAML` files) and the actual license data for the selected contracts. This license data is encoded (e.g., as a `Base64` string) and embedded directly within the configuration, as indicated by parameters like `-set encodeLicenses` in the generated scripts. ![Offline Installer Scripts](./images/offline-installer-scripts.png) The generated installer is then ready for download and deployment to the target cluster. +2. **Identify Target Cluster:** The console will then display a list of clusters that are associated with at least one `offline` contract, along with their `Name`, `UID`, and the `count` of Associated Contracts (e.g., `doc-preview` with `6 Contracts`, `prod-us-east-1` with `2 Contracts`). The administrator must select the specific cluster for which the offline installer is to be generated. ![Offline Installer Cluster Selection](../images/offline-installer-cluster-selection.png) Click on the `Associated Contracts` button next to the desired cluster to embed the licenses against the selected contracts.

+3. **Select Contracts for Embedding:** Once a cluster is chosen, the `Billing Console` shows all offline contracts currently linked to the selected cluster, allowing the administrator to choose which of these contracts' licenses should be embedded into the `license-proxyserver` installer. This provides granular control, especially if a cluster is associated with multiple offline contracts for different products or terms. ![Offline Installer Contract Selection](../images/offline-installer-contract-selection.png) After making the selections, click the `Generate License Proxy Installer` button within this pop-up to proceed.

+4. **Generate the Installer Bundle:** Upon clicking `Generate License Proxy Installer`, the Billing Console compiles the installer package. This package includes the `license-proxyserver` deployment manifests (typically `Helm` commands or `YAML` files) and the actual license data for the selected contracts. This license data is encoded (e.g., as a `Base64` string) and embedded directly within the configuration, as indicated by parameters like `-set encodeLicenses` in the generated scripts. ![Offline Installer Scripts](../images/offline-installer-scripts.png) The generated installer is then ready for download and deployment to the target cluster. #### License Characteristics in Offline Mode @@ -120,7 +115,7 @@ The output of `kubectl get licensestatus` provides several key pieces of informa - **PRODUCT:** The name of the AppsCode product that this license status pertains to (e.g., `kubedb`, `kubestash`, `platform` etc.). - **REQUESTER:** The specific `component` or `service account` within the cluster that requested and is utilizing this license. This helps pinpoint which part of an AppsCode product installation is covered by this license entry (e.g., `system:serviceaccount:kubedb:kubedb-kubedb-provisioner`). - **CONTRACT:** This field indicates the identifier of the AppsCode contract which is utilized providing the license. There are two scenarios on how this field is populated:

- - If a cluster is not explicitly associated with any contract in the Billing Console, AppsCode automatically provides a `1-month (30-day)` free trial license. In such cases, the `CONTRACT` column in the `licensestatus` output will display `0`. This temporary license is particularly helpful for customers during initial testing and evaluation periods. Each cluster is eligible for this free trial only once. ![Free Trial License](./images/license-status-free-contract.png) - - Otherwise, if a cluster is associated with a specific contract, this column will display the actual `CONTRACT ID` from the Billing Console, allowing administrators to `cross-reference` the license with the detailed contract terms. ![Paid License](./images/license-status-paid-contract.png) + - If a cluster is not explicitly associated with any contract in the Billing Console, AppsCode automatically provides a `1-month (30-day)` free trial license. In such cases, the `CONTRACT` column in the `licensestatus` output will display `0`. This temporary license is particularly helpful for customers during initial testing and evaluation periods. Each cluster is eligible for this free trial only once. ![Free Trial License](../images/license-status-free-contract.png) + - Otherwise, if a cluster is associated with a specific contract, this column will display the actual `CONTRACT ID` from the Billing Console, allowing administrators to `cross-reference` the license with the detailed contract terms. ![Paid License](../images/license-status-paid-contract.png) - **VALID:** This field indicates the remaining validity period for the current license instance. - **ROTATES:** This field indicates when the license is next scheduled for rotation or renewal. diff --git a/src/en/guides/license-management/overview.md b/docs/platform/guides/license-management/overview.md similarity index 91% rename from src/en/guides/license-management/overview.md rename to docs/platform/guides/license-management/overview.md index d8520a3..faa50da 100644 --- a/src/en/guides/license-management/overview.md +++ b/docs/platform/guides/license-management/overview.md @@ -1,23 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: license-management-overview name: Overview parent: license-management weight: 10 - home_menu: - identifier: license-management-overview - name: Overview - parent: home-license - weight: 10 - section_menu: - identifier: license-management - name: License Management - weight: 30 - parent: guides -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- @@ -35,7 +25,7 @@ A centralized web-based platform serving as the primary interface for licensing While AppsCode administrators are responsible for the core lifecycle of contracts—including their `creation`, `modification`, `revocation`, and `extension`—customers retain the ability to perform specific operations pertinent to the licensing lifecycle. This includes `associating` and `disassociating` their Kubernetes clusters with allocated contracts, generating `installers` for the `license-proxyserver` through the console, and track the `clusters` for which licenses have been issued. -![home-billing-console](images/home-billing-console.png) +![home-billing-console](../images/home-billing-console.png) ### Key Components diff --git a/src/en/guides/license-management/troubleshoots.md b/docs/platform/guides/license-management/troubleshoots.md similarity index 97% rename from src/en/guides/license-management/troubleshoots.md rename to docs/platform/guides/license-management/troubleshoots.md index 3317fb3..b12d23e 100644 --- a/src/en/guides/license-management/troubleshoots.md +++ b/docs/platform/guides/license-management/troubleshoots.md @@ -1,18 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - docs_menu: + docsplatform_{{.version}}: identifier: license-management-license-proxyserver-troubleshoot name: Troubleshoot parent: license-management weight: 40 - home_menu: - identifier: license-management-license-proxyserver-troubleshoot - name: Troubleshoot - parent: home-license - weight: 40 -menu_name: docs_menu -section_menu: guides +menu_name: docsplatform_{{.version}} +section_menu_id: guides --- ## Troubleshooting License Proxy Server Issues @@ -26,7 +21,7 @@ kubectl get apiservice v1alpha1.proxyserver.licenses.AppsCode.com -o yaml ``` **Interpretation:** -Examine the `status.conditions` section of the output. Look for a condition with `type: Available` and `status: "True"`. ![APIService Status](./images/license-proxy-apiservice-yaml-status.png) +Examine the `status.conditions` section of the output. Look for a condition with `type: Available` and `status: "True"`. ![APIService Status](../images/license-proxy-apiservice-yaml-status.png) This indicates that the Kubernetes API aggregation layer is properly configured to route requests to the `license-proxyserver`. If this condition is `"False"` or `missing`, it suggests an issue with the APIService registration or the `license-proxyserver's` readiness. diff --git a/src/en/overview.md b/docs/platform/overview.md similarity index 83% rename from src/en/overview.md rename to docs/platform/overview.md index 8429dca..ef5cc2e 100644 --- a/src/en/overview.md +++ b/docs/platform/overview.md @@ -1,11 +1,12 @@ --- -layout: 'guide' +layout: platform_single menu: - section_menu: + docsplatform_{{.version}}: identifier: overview name: Overview weight: 20 -section_menu: overview +menu_name: docsplatform_{{.version}} +section_menu_id: overview --- diff --git a/src/en/selfhost-setup/index.md b/docs/platform/selfhost-setup/_index.md similarity index 86% rename from src/en/selfhost-setup/index.md rename to docs/platform/selfhost-setup/_index.md index 564fd94..5d25979 100644 --- a/src/en/selfhost-setup/index.md +++ b/docs/platform/selfhost-setup/_index.md @@ -1,13 +1,12 @@ --- -layout: guide +layout: platform_single menu: - selfhost-setup_docs_menu: {} - section_menu: + docsplatform_{{.version}}: identifier: selfhost-setup name: Selfhost Setup weight: 30 -menu_name: selfhost-setup_docs_menu -section_menu: selfhost-setup +menu_name: docsplatform_{{.version}} +section_menu_id: selfhost-setup --- @@ -18,7 +17,7 @@ Welcome to AppsCode Platform's Self-Hosted deployment! Whether you're looking fo Navigate to [AppsCode Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers. - +

Click on the `Create New Installer` button to get started. You can either choose deployment type `Self Hosted Demo` or `Self Hosted Production`. Provide the required data and click `Done` button to generate the installer. Upon generation of the installer, you will get the documentation how to host AppsCode Server on your own. diff --git a/src/en/selfhost-setup/images/ace-dashboard.png b/docs/platform/selfhost-setup/images/ace-dashboard.png similarity index 100% rename from src/en/selfhost-setup/images/ace-dashboard.png rename to docs/platform/selfhost-setup/images/ace-dashboard.png diff --git a/src/en/selfhost-setup/images/ace-status.png b/docs/platform/selfhost-setup/images/ace-status.png similarity index 100% rename from src/en/selfhost-setup/images/ace-status.png rename to docs/platform/selfhost-setup/images/ace-status.png diff --git a/src/en/selfhost-setup/images/admin-setting.png b/docs/platform/selfhost-setup/images/admin-setting.png similarity index 100% rename from src/en/selfhost-setup/images/admin-setting.png rename to docs/platform/selfhost-setup/images/admin-setting.png diff --git a/src/en/selfhost-setup/images/awsStep1.png b/docs/platform/selfhost-setup/images/awsStep1.png similarity index 100% rename from src/en/selfhost-setup/images/awsStep1.png rename to docs/platform/selfhost-setup/images/awsStep1.png diff --git a/src/en/selfhost-setup/images/awsStep2.png b/docs/platform/selfhost-setup/images/awsStep2.png similarity index 100% rename from src/en/selfhost-setup/images/awsStep2.png rename to docs/platform/selfhost-setup/images/awsStep2.png diff --git a/src/en/selfhost-setup/images/awsStep3.png b/docs/platform/selfhost-setup/images/awsStep3.png similarity index 100% rename from src/en/selfhost-setup/images/awsStep3.png rename to docs/platform/selfhost-setup/images/awsStep3.png diff --git a/src/en/selfhost-setup/images/awsStep4.png b/docs/platform/selfhost-setup/images/awsStep4.png similarity index 100% rename from src/en/selfhost-setup/images/awsStep4.png rename to docs/platform/selfhost-setup/images/awsStep4.png diff --git a/src/en/selfhost-setup/images/awsStep5.png b/docs/platform/selfhost-setup/images/awsStep5.png similarity index 100% rename from src/en/selfhost-setup/images/awsStep5.png rename to docs/platform/selfhost-setup/images/awsStep5.png diff --git a/src/en/selfhost-setup/images/awsStep7.png b/docs/platform/selfhost-setup/images/awsStep7.png similarity index 100% rename from src/en/selfhost-setup/images/awsStep7.png rename to docs/platform/selfhost-setup/images/awsStep7.png diff --git a/src/en/selfhost-setup/images/azureStep1.png b/docs/platform/selfhost-setup/images/azureStep1.png similarity index 100% rename from src/en/selfhost-setup/images/azureStep1.png rename to docs/platform/selfhost-setup/images/azureStep1.png diff --git a/src/en/selfhost-setup/images/azureStep2.png b/docs/platform/selfhost-setup/images/azureStep2.png similarity index 100% rename from src/en/selfhost-setup/images/azureStep2.png rename to docs/platform/selfhost-setup/images/azureStep2.png diff --git a/src/en/selfhost-setup/images/azureStep3.png b/docs/platform/selfhost-setup/images/azureStep3.png similarity index 100% rename from src/en/selfhost-setup/images/azureStep3.png rename to docs/platform/selfhost-setup/images/azureStep3.png diff --git a/src/en/selfhost-setup/images/azureStep4.png b/docs/platform/selfhost-setup/images/azureStep4.png similarity index 100% rename from src/en/selfhost-setup/images/azureStep4.png rename to docs/platform/selfhost-setup/images/azureStep4.png diff --git a/src/en/selfhost-setup/images/azureStep5.png b/docs/platform/selfhost-setup/images/azureStep5.png similarity index 100% rename from src/en/selfhost-setup/images/azureStep5.png rename to docs/platform/selfhost-setup/images/azureStep5.png diff --git a/src/en/selfhost-setup/images/branding.png b/docs/platform/selfhost-setup/images/branding.png similarity index 100% rename from src/en/selfhost-setup/images/branding.png rename to docs/platform/selfhost-setup/images/branding.png diff --git a/src/en/selfhost-setup/images/deployment-progress.png b/docs/platform/selfhost-setup/images/deployment-progress.png similarity index 100% rename from src/en/selfhost-setup/images/deployment-progress.png rename to docs/platform/selfhost-setup/images/deployment-progress.png diff --git a/src/en/selfhost-setup/images/domain-whitelisting.png b/docs/platform/selfhost-setup/images/domain-whitelisting.png similarity index 100% rename from src/en/selfhost-setup/images/domain-whitelisting.png rename to docs/platform/selfhost-setup/images/domain-whitelisting.png diff --git a/src/en/selfhost-setup/images/features.png b/docs/platform/selfhost-setup/images/features.png similarity index 100% rename from src/en/selfhost-setup/images/features.png rename to docs/platform/selfhost-setup/images/features.png diff --git a/src/en/selfhost-setup/images/ingress-gateway.png b/docs/platform/selfhost-setup/images/ingress-gateway.png similarity index 100% rename from src/en/selfhost-setup/images/ingress-gateway.png rename to docs/platform/selfhost-setup/images/ingress-gateway.png diff --git a/src/public/images/selfhost-setup/installer-home.png b/docs/platform/selfhost-setup/images/installer-home.png similarity index 100% rename from src/public/images/selfhost-setup/installer-home.png rename to docs/platform/selfhost-setup/images/installer-home.png diff --git a/src/en/selfhost-setup/images/managed-resources.png b/docs/platform/selfhost-setup/images/managed-resources.png similarity index 100% rename from src/en/selfhost-setup/images/managed-resources.png rename to docs/platform/selfhost-setup/images/managed-resources.png diff --git a/src/en/selfhost-setup/images/nats.png b/docs/platform/selfhost-setup/images/nats.png similarity index 100% rename from src/en/selfhost-setup/images/nats.png rename to docs/platform/selfhost-setup/images/nats.png diff --git a/src/en/selfhost-setup/images/policy-1.png b/docs/platform/selfhost-setup/images/policy-1.png similarity index 100% rename from src/en/selfhost-setup/images/policy-1.png rename to docs/platform/selfhost-setup/images/policy-1.png diff --git a/src/en/selfhost-setup/images/policy-10.png b/docs/platform/selfhost-setup/images/policy-10.png similarity index 100% rename from src/en/selfhost-setup/images/policy-10.png rename to docs/platform/selfhost-setup/images/policy-10.png diff --git a/src/en/selfhost-setup/images/policy-2.png b/docs/platform/selfhost-setup/images/policy-2.png similarity index 100% rename from src/en/selfhost-setup/images/policy-2.png rename to docs/platform/selfhost-setup/images/policy-2.png diff --git a/src/en/selfhost-setup/images/policy-3.png b/docs/platform/selfhost-setup/images/policy-3.png similarity index 100% rename from src/en/selfhost-setup/images/policy-3.png rename to docs/platform/selfhost-setup/images/policy-3.png diff --git a/src/en/selfhost-setup/images/policy-4.png b/docs/platform/selfhost-setup/images/policy-4.png similarity index 100% rename from src/en/selfhost-setup/images/policy-4.png rename to docs/platform/selfhost-setup/images/policy-4.png diff --git a/src/en/selfhost-setup/images/policy-5.png b/docs/platform/selfhost-setup/images/policy-5.png similarity index 100% rename from src/en/selfhost-setup/images/policy-5.png rename to docs/platform/selfhost-setup/images/policy-5.png diff --git a/src/en/selfhost-setup/images/policy-7.png b/docs/platform/selfhost-setup/images/policy-7.png similarity index 100% rename from src/en/selfhost-setup/images/policy-7.png rename to docs/platform/selfhost-setup/images/policy-7.png diff --git a/src/en/selfhost-setup/images/policy-8.png b/docs/platform/selfhost-setup/images/policy-8.png similarity index 100% rename from src/en/selfhost-setup/images/policy-8.png rename to docs/platform/selfhost-setup/images/policy-8.png diff --git a/src/en/selfhost-setup/images/policy-9.png b/docs/platform/selfhost-setup/images/policy-9.png similarity index 100% rename from src/en/selfhost-setup/images/policy-9.png rename to docs/platform/selfhost-setup/images/policy-9.png diff --git a/src/en/selfhost-setup/images/resource-limit.png b/docs/platform/selfhost-setup/images/resource-limit.png similarity index 100% rename from src/en/selfhost-setup/images/resource-limit.png rename to docs/platform/selfhost-setup/images/resource-limit.png diff --git a/src/en/selfhost-setup/images/selfhost-deployment-option.png b/docs/platform/selfhost-setup/images/selfhost-deployment-option.png similarity index 100% rename from src/en/selfhost-setup/images/selfhost-deployment-option.png rename to docs/platform/selfhost-setup/images/selfhost-deployment-option.png diff --git a/src/en/selfhost-setup/images/tenant.png b/docs/platform/selfhost-setup/images/tenant.png similarity index 100% rename from src/en/selfhost-setup/images/tenant.png rename to docs/platform/selfhost-setup/images/tenant.png diff --git a/docs/platform/selfhost-setup/install/_index.md b/docs/platform/selfhost-setup/install/_index.md new file mode 100644 index 0000000..a22e27d --- /dev/null +++ b/docs/platform/selfhost-setup/install/_index.md @@ -0,0 +1,11 @@ +--- +layout: platform_single +menu: + docsplatform_{{.version}}: + identifier: selfhosted-installer + name: Self Hosted Installer + parent: selfhost-setup + weight: 10 +menu_name: docsplatform_{{.version}} +section_menu_id: selfhost-setup +--- diff --git a/src/en/selfhost-setup/install/aws-marketplace.md b/docs/platform/selfhost-setup/install/aws-marketplace.md similarity index 99% rename from src/en/selfhost-setup/install/aws-marketplace.md rename to docs/platform/selfhost-setup/install/aws-marketplace.md index 2aec5dd..c23acdd 100644 --- a/src/en/selfhost-setup/install/aws-marketplace.md +++ b/docs/platform/selfhost-setup/install/aws-marketplace.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - selfhost-setup_docs_menu: + docsplatform_{{.version}}: identifier: aws-marketplace name: AWS Marketplace parent: selfhosted-installer weight: 10 -menu_name: selfhost-setup_docs_menu -section_menu: selfhost-setup +menu_name: docsplatform_{{.version}} +section_menu_id: selfhost-setup --- # Deploying AppsCode Platform: AWS Marketplace diff --git a/src/en/selfhost-setup/install/azure-marketplace.md b/docs/platform/selfhost-setup/install/azure-marketplace.md similarity index 98% rename from src/en/selfhost-setup/install/azure-marketplace.md rename to docs/platform/selfhost-setup/install/azure-marketplace.md index 23d7d01..399b654 100644 --- a/src/en/selfhost-setup/install/azure-marketplace.md +++ b/docs/platform/selfhost-setup/install/azure-marketplace.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - selfhost-setup_docs_menu: + docsplatform_{{.version}}: identifier: azure-marketplace name: Azure Marketplace parent: selfhosted-installer weight: 10 -menu_name: selfhost-setup_docs_menu -section_menu: selfhost-setup +menu_name: docsplatform_{{.version}} +section_menu_id: selfhost-setup --- # 1. Deploying AppsCode Platform: Azure Marketplace diff --git a/src/en/selfhost-setup/install/cloud-demo.md b/docs/platform/selfhost-setup/install/cloud-demo.md similarity index 98% rename from src/en/selfhost-setup/install/cloud-demo.md rename to docs/platform/selfhost-setup/install/cloud-demo.md index eb8bd0d..ae398fe 100644 --- a/src/en/selfhost-setup/install/cloud-demo.md +++ b/docs/platform/selfhost-setup/install/cloud-demo.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - selfhost-setup_docs_menu: + docsplatform_{{.version}}: identifier: selfhost-cloud-demo-deployment name: Cloud Demo Deployment parent: selfhosted-installer weight: 10 -menu_name: selfhost-setup_docs_menu -section_menu: selfhost-setup +menu_name: docsplatform_{{.version}} +section_menu_id: selfhost-setup --- # Deploying AppsCode Platform: Cloud Demo diff --git a/src/en/selfhost-setup/install/k8s-app-demo.md b/docs/platform/selfhost-setup/install/k8s-app-demo.md similarity index 97% rename from src/en/selfhost-setup/install/k8s-app-demo.md rename to docs/platform/selfhost-setup/install/k8s-app-demo.md index 3c7cf0e..11b2cbf 100644 --- a/src/en/selfhost-setup/install/k8s-app-demo.md +++ b/docs/platform/selfhost-setup/install/k8s-app-demo.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - selfhost-setup_docs_menu: + docsplatform_{{.version}}: identifier: selfhost-k8s-app-demo-deployment name: K8s App Demo Deployment parent: selfhosted-installer weight: 10 -menu_name: selfhost-setup_docs_menu -section_menu: selfhost-setup +menu_name: docsplatform_{{.version}} +section_menu_id: selfhost-setup --- # Deploying AppsCode Platform: K8s App Demo diff --git a/src/en/selfhost-setup/install/onprem-demo.md b/docs/platform/selfhost-setup/install/onprem-demo.md similarity index 98% rename from src/en/selfhost-setup/install/onprem-demo.md rename to docs/platform/selfhost-setup/install/onprem-demo.md index 7530c8b..d7f126b 100644 --- a/src/en/selfhost-setup/install/onprem-demo.md +++ b/docs/platform/selfhost-setup/install/onprem-demo.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - selfhost-setup_docs_menu: + docsplatform_{{.version}}: identifier: selfhost-onprem-demo-deployment name: Onprem Demo Deployment parent: selfhosted-installer weight: 10 -menu_name: selfhost-setup_docs_menu -section_menu: selfhost-setup +menu_name: docsplatform_{{.version}} +section_menu_id: selfhost-setup --- # Deploying AppsCode Platform: Onprem Demo diff --git a/src/en/selfhost-setup/install/openshift-demo.md b/docs/platform/selfhost-setup/install/openshift-demo.md similarity index 98% rename from src/en/selfhost-setup/install/openshift-demo.md rename to docs/platform/selfhost-setup/install/openshift-demo.md index 0b523d0..8bdc147 100644 --- a/src/en/selfhost-setup/install/openshift-demo.md +++ b/docs/platform/selfhost-setup/install/openshift-demo.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - selfhost-setup_docs_menu: + docsplatform_{{.version}}: identifier: selfhost-openshift-demo name: Open Shift Demo parent: selfhosted-installer weight: 10 -menu_name: selfhost-setup_docs_menu -section_menu: selfhost-setup +menu_name: docsplatform_{{.version}} +section_menu_id: selfhost-setup --- # Deploying AppsCode Platform: Open Shift Demo diff --git a/src/en/selfhost-setup/install/selfhosted-production.md b/docs/platform/selfhost-setup/install/selfhosted-production.md similarity index 99% rename from src/en/selfhost-setup/install/selfhosted-production.md rename to docs/platform/selfhost-setup/install/selfhosted-production.md index b4be45f..b01f1f3 100644 --- a/src/en/selfhost-setup/install/selfhosted-production.md +++ b/docs/platform/selfhost-setup/install/selfhosted-production.md @@ -1,13 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - selfhost-setup_docs_menu: + docsplatform_{{.version}}: identifier: selfhost-prod-deployment name: Production Deployment parent: selfhosted-installer weight: 10 -menu_name: selfhost-setup_docs_menu -section_menu: selfhost-setup +menu_name: docsplatform_{{.version}} +section_menu_id: selfhost-setup --- # Deploying AppsCode Platform: Self Hosted Production diff --git a/src/en/selfhost-setup/install/troubleshoot.md b/docs/platform/selfhost-setup/install/troubleshoot.md similarity index 56% rename from src/en/selfhost-setup/install/troubleshoot.md rename to docs/platform/selfhost-setup/install/troubleshoot.md index 2b22e5a..c7a2dad 100644 --- a/src/en/selfhost-setup/install/troubleshoot.md +++ b/docs/platform/selfhost-setup/install/troubleshoot.md @@ -1,14 +1,14 @@ - +menu_name: docsplatform_{{.version}} +section_menu_id: selfhost-setup +--- # Troubleshooting Common Errors diff --git a/docs/platform/selfhost-setup/uninstall.md b/docs/platform/selfhost-setup/uninstall.md new file mode 100644 index 0000000..a467036 --- /dev/null +++ b/docs/platform/selfhost-setup/uninstall.md @@ -0,0 +1,13 @@ +--- +layout: platform_single +menu: + docsplatform_{{.version}}: + identifier: selfhost-setup-uninstall + name: Uninstall + parent: selfhost-setup + weight: 20 +menu_name: docsplatform_{{.version}} +section_menu_id: selfhost-setup +--- + +# Uninstall diff --git a/src/en/welcome/index.md b/docs/platform/welcome/_index.md similarity index 67% rename from src/en/welcome/index.md rename to docs/platform/welcome/_index.md index 444de19..871a6b5 100644 --- a/src/en/welcome/index.md +++ b/docs/platform/welcome/_index.md @@ -1,13 +1,14 @@ --- -layout: guide +layout: platform_single menu: - welcome_docs_menu: {} - section_menu: + docsplatform_{{.version}}: identifier: welcome name: Welcome weight: 10 -menu_name: welcome_docs_menu -section_menu: welcome +menu_name: docsplatform_{{.version}} +section_menu_id: welcome +aliases: + - /docs/platform/v2026.3.30/ --- diff --git a/src/en/welcome/contributing.md b/docs/platform/welcome/contributing.md similarity index 82% rename from src/en/welcome/contributing.md rename to docs/platform/welcome/contributing.md index 632f795..37bb378 100644 --- a/src/en/welcome/contributing.md +++ b/docs/platform/welcome/contributing.md @@ -1,12 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - welcome_docs_menu: + docsplatform_{{.version}}: identifier: welcome-contributing name: Contributing + parent: welcome weight: 10 -menu_name: welcome_docs_menu -section_menu: welcome +menu_name: docsplatform_{{.version}} +section_menu_id: welcome --- diff --git a/src/en/welcome/support.md b/docs/platform/welcome/support.md similarity index 73% rename from src/en/welcome/support.md rename to docs/platform/welcome/support.md index b6f3b1d..2419ed7 100644 --- a/src/en/welcome/support.md +++ b/docs/platform/welcome/support.md @@ -1,12 +1,13 @@ --- -layout: 'guide' +layout: platform_single menu: - welcome_docs_menu: + docsplatform_{{.version}}: identifier: welcome-support name: Support + parent: welcome weight: 20 -menu_name: welcome_docs_menu -section_menu: welcome +menu_name: docsplatform_{{.version}} +section_menu_id: welcome --- diff --git a/firebase.json b/firebase.json deleted file mode 100644 index 8d85b14..0000000 --- a/firebase.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "hosting": { - "target": "nuxt", - "public": ".vitepress/dist", - "ignore": [ - "firebase.json", - "**/.*", - "**/node_modules/**" - ], - "trailingSlash": true, - "redirects": [{ - "source": "/", - "destination": "https://appscode.com/docs/", - "type": 301 - }] - } -} diff --git a/hack/scripts/open-pr.sh b/hack/scripts/open-pr.sh new file mode 100755 index 0000000..e56a9ed --- /dev/null +++ b/hack/scripts/open-pr.sh @@ -0,0 +1,42 @@ +#!/bin/bash + +# Copyright The KubeVault Authors. +# +# 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. + +set -eou pipefail + +SCRIPT_ROOT=$(realpath $(dirname "${BASH_SOURCE[0]}")/../..) +SCRIPT_NAME=$(basename "${BASH_SOURCE[0]}") +pushd $SCRIPT_ROOT + +# http://redsymbol.net/articles/bash-exit-traps/ +function cleanup() { + popd +} +trap cleanup EXIT + +git add --all +if git diff -s --exit-code HEAD; then + echo "Docs are already up-to-date!" + exit 0 +fi + +pr_branch=${GITHUB_REPOSITORY}@${GITHUB_SHA:0:8} +git checkout -b $pr_branch +git commit -a -s -m "Update docs for $pr_branch" +git push -u origin HEAD +hub pull-request \ + --labels automerge \ + --message "Update docs for $pr_branch" \ + --message "$(git show -s --format=%b)" diff --git a/hack/scripts/update-release-tracker.sh b/hack/scripts/update-release-tracker.sh new file mode 100755 index 0000000..7184cb6 --- /dev/null +++ b/hack/scripts/update-release-tracker.sh @@ -0,0 +1,72 @@ +#!/bin/bash + +# Copyright AppsCode Inc. and Contributors +# +# 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. + +set -eou pipefail + +# ref: https://gist.github.com/joshisa/297b0bc1ec0dcdda0d1625029711fa24 +parse_url() { + proto="$(echo $1 | grep :// | sed -e's,^\(.*://\).*,\1,g')" + # remove the protocol + url="$(echo ${1/$proto/})" + + IFS='/' # / is set as delimiter + read -ra PARTS <<<"$url" # str is read into an array as tokens separated by IFS + if [ ${PARTS[0]} != 'github.com' ] || [ ${#PARTS[@]} -ne 5 ]; then + echo "failed to parse relase-tracker: $url" + exit 1 + fi + export RELEASE_TRACKER_OWNER=${PARTS[1]} + export RELEASE_TRACKER_REPO=${PARTS[2]} + export RELEASE_TRACKER_PR=${PARTS[4]} +} + +RELEASE_TRACKER=${RELEASE_TRACKER:-} +GITHUB_BASE_REF=${GITHUB_BASE_REF:-} + +while IFS=$': \r\t' read -r -u9 marker v; do + case $marker in + Release-tracker) + export RELEASE_TRACKER=$(echo $v | tr -d '\r\t') + ;; + Release) + export RELEASE=$(echo $v | tr -d '\r\t') + ;; + esac +done 9< <(git show -s --format=%b) + +[ ! -z "$RELEASE_TRACKER" ] || { + echo "Release-tracker url not found." + exit 0 +} + +[ ! -z "$GITHUB_BASE_REF" ] || { + echo "GitHub base ref not found." + exit 0 +} + +parse_url $RELEASE_TRACKER +api_url="repos/${RELEASE_TRACKER_OWNER}/${RELEASE_TRACKER_REPO}/issues/${RELEASE_TRACKER_PR}/comments" + +case $GITHUB_BASE_REF in + master) + msg="/ready-to-tag github.com/${GITHUB_REPOSITORY} ${GITHUB_SHA}" + ;; + *) + msg="/cherry-picked github.com/${GITHUB_REPOSITORY} ${GITHUB_BASE_REF} ${GITHUB_SHA}" + ;; +esac + +hub api "$api_url" -f body="$msg" diff --git a/index.json b/index.json deleted file mode 100644 index e69de29..0000000 diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 7264a3b..0000000 --- a/package-lock.json +++ /dev/null @@ -1,11905 +0,0 @@ -{ - "name": "docs", - "version": "0.0.14", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "docs", - "version": "0.0.14", - "dependencies": { - "@appscode/design-system": "^2.2.7", - "@bytebuilders/docs-base": "github:bytebuilders/docs-base", - "@vueuse/components": "^12.5.0", - "@vueuse/core": "^12.5.0", - "@vueuse/integrations": "^12.5.0", - "bulma": "0.9.4", - "font-awesome": "^4.7.0", - "pinia": "^2.1.3", - "vue-i18n": "^9.2.2" - }, - "devDependencies": { - "@antfu/eslint-config": "^0.39.5", - "@iconify/json": "^2.2.139", - "@rushstack/eslint-patch": "^1.3.1", - "@tsconfig/node22": "^22.0.0", - "@types/node": "^22.10.10", - "@vue/compiler-sfc": "^3.3.8", - "@vue/tsconfig": "^0.4.0", - "eslint": "^8.42.0", - "npm-run-all": "^4.1.5", - "postcss-html": "^1.5.0", - "sass": "1.32.13", - "sass-loader": "^13.3.1", - "stylelint": "^15.7.0", - "stylelint-config-recommended-scss": "^12.0.0", - "stylelint-config-recommended-vue": "^1.4.0", - "stylelint-config-standard": "^33.0.0", - "stylelint-config-standard-scss": "^9.0.0", - "typescript": "^5.0.4", - "universal-cookie": "^7.2.2", - "unplugin-auto-import": "^0.16.4", - "unplugin-icons": "^0.17.3", - "vitepress": "^1.0.1", - "vue-tsc": "^2.2.0" - }, - "engines": { - "node": ">=22.0.0" - } - }, - "node_modules/@algolia/autocomplete-core": { - "version": "1.17.7", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.17.7.tgz", - "integrity": "sha512-BjiPOW6ks90UKl7TwMv7oNQMnzU+t/wk9mgIDi6b1tXpUek7MW0lbNOUHpvam9pe3lVCf4xPFT+lK7s+e+fs7Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/autocomplete-plugin-algolia-insights": "1.17.7", - "@algolia/autocomplete-shared": "1.17.7" - } - }, - "node_modules/@algolia/autocomplete-plugin-algolia-insights": { - "version": "1.17.7", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.17.7.tgz", - "integrity": "sha512-Jca5Ude6yUOuyzjnz57og7Et3aXjbwCSDf/8onLHSQgw1qW3ALl9mrMWaXb5FmPVkV3EtkD2F/+NkT6VHyPu9A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/autocomplete-shared": "1.17.7" - }, - "peerDependencies": { - "search-insights": ">= 1 < 3" - } - }, - "node_modules/@algolia/autocomplete-preset-algolia": { - "version": "1.17.7", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.17.7.tgz", - "integrity": "sha512-ggOQ950+nwbWROq2MOCIL71RE0DdQZsceqrg32UqnhDz8FlO9rL8ONHNsI2R1MH0tkgVIDKI/D0sMiUchsFdWA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/autocomplete-shared": "1.17.7" - }, - "peerDependencies": { - "@algolia/client-search": ">= 4.9.1 < 6", - "algoliasearch": ">= 4.9.1 < 6" - } - }, - "node_modules/@algolia/autocomplete-shared": { - "version": "1.17.7", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.17.7.tgz", - "integrity": "sha512-o/1Vurr42U/qskRSuhBH+VKxMvkkUVTLU6WZQr+L5lGZZLYWyhdzWjW0iGXY7EkwRTjBqvN2EsR81yCTGV/kmg==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@algolia/client-search": ">= 4.9.1 < 6", - "algoliasearch": ">= 4.9.1 < 6" - } - }, - "node_modules/@algolia/client-abtesting": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/@algolia/client-abtesting/-/client-abtesting-5.20.0.tgz", - "integrity": "sha512-YaEoNc1Xf2Yk6oCfXXkZ4+dIPLulCx8Ivqj0OsdkHWnsI3aOJChY5qsfyHhDBNSOhqn2ilgHWxSfyZrjxBcAww==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/client-common": "5.20.0", - "@algolia/requester-browser-xhr": "5.20.0", - "@algolia/requester-fetch": "5.20.0", - "@algolia/requester-node-http": "5.20.0" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/@algolia/client-analytics": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-5.20.0.tgz", - "integrity": "sha512-CIT9ni0+5sYwqehw+t5cesjho3ugKQjPVy/iPiJvtJX4g8Cdb6je6SPt2uX72cf2ISiXCAX9U3cY0nN0efnRDw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/client-common": "5.20.0", - "@algolia/requester-browser-xhr": "5.20.0", - "@algolia/requester-fetch": "5.20.0", - "@algolia/requester-node-http": "5.20.0" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/@algolia/client-common": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-5.20.0.tgz", - "integrity": "sha512-iSTFT3IU8KNpbAHcBUJw2HUrPnMXeXLyGajmCL7gIzWOsYM4GabZDHXOFx93WGiXMti1dymz8k8R+bfHv1YZmA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/@algolia/client-insights": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/@algolia/client-insights/-/client-insights-5.20.0.tgz", - "integrity": "sha512-w9RIojD45z1csvW1vZmAko82fqE/Dm+Ovsy2ElTsjFDB0HMAiLh2FO86hMHbEXDPz6GhHKgGNmBRiRP8dDPgJg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/client-common": "5.20.0", - "@algolia/requester-browser-xhr": "5.20.0", - "@algolia/requester-fetch": "5.20.0", - "@algolia/requester-node-http": "5.20.0" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/@algolia/client-personalization": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-5.20.0.tgz", - "integrity": "sha512-p/hftHhrbiHaEcxubYOzqVV4gUqYWLpTwK+nl2xN3eTrSW9SNuFlAvUBFqPXSVBqc6J5XL9dNKn3y8OA1KElSQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/client-common": "5.20.0", - "@algolia/requester-browser-xhr": "5.20.0", - "@algolia/requester-fetch": "5.20.0", - "@algolia/requester-node-http": "5.20.0" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/@algolia/client-query-suggestions": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/@algolia/client-query-suggestions/-/client-query-suggestions-5.20.0.tgz", - "integrity": "sha512-m4aAuis5vZi7P4gTfiEs6YPrk/9hNTESj3gEmGFgfJw3hO2ubdS4jSId1URd6dGdt0ax2QuapXufcrN58hPUcw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/client-common": "5.20.0", - "@algolia/requester-browser-xhr": "5.20.0", - "@algolia/requester-fetch": "5.20.0", - "@algolia/requester-node-http": "5.20.0" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/@algolia/client-search": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.20.0.tgz", - "integrity": "sha512-KL1zWTzrlN4MSiaK1ea560iCA/UewMbS4ZsLQRPoDTWyrbDKVbztkPwwv764LAqgXk0fvkNZvJ3IelcK7DqhjQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/client-common": "5.20.0", - "@algolia/requester-browser-xhr": "5.20.0", - "@algolia/requester-fetch": "5.20.0", - "@algolia/requester-node-http": "5.20.0" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/@algolia/ingestion": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/@algolia/ingestion/-/ingestion-1.20.0.tgz", - "integrity": "sha512-shj2lTdzl9un4XJblrgqg54DoK6JeKFO8K8qInMu4XhE2JuB8De6PUuXAQwiRigZupbI0xq8aM0LKdc9+qiLQA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/client-common": "5.20.0", - "@algolia/requester-browser-xhr": "5.20.0", - "@algolia/requester-fetch": "5.20.0", - "@algolia/requester-node-http": "5.20.0" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/@algolia/monitoring": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/@algolia/monitoring/-/monitoring-1.20.0.tgz", - "integrity": "sha512-aF9blPwOhKtWvkjyyXh9P5peqmhCA1XxLBRgItT+K6pbT0q4hBDQrCid+pQZJYy4HFUKjB/NDDwyzFhj/rwKhw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/client-common": "5.20.0", - "@algolia/requester-browser-xhr": "5.20.0", - "@algolia/requester-fetch": "5.20.0", - "@algolia/requester-node-http": "5.20.0" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/@algolia/recommend": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-5.20.0.tgz", - "integrity": "sha512-T6B/WPdZR3b89/F9Vvk6QCbt/wrLAtrGoL8z4qPXDFApQ8MuTFWbleN/4rHn6APWO3ps+BUePIEbue2rY5MlRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/client-common": "5.20.0", - "@algolia/requester-browser-xhr": "5.20.0", - "@algolia/requester-fetch": "5.20.0", - "@algolia/requester-node-http": "5.20.0" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/@algolia/requester-browser-xhr": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.20.0.tgz", - "integrity": "sha512-t6//lXsq8E85JMenHrI6mhViipUT5riNhEfCcvtRsTV+KIBpC6Od18eK864dmBhoc5MubM0f+sGpKOqJIlBSCg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/client-common": "5.20.0" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/@algolia/requester-fetch": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-fetch/-/requester-fetch-5.20.0.tgz", - "integrity": "sha512-FHxYGqRY+6bgjKsK4aUsTAg6xMs2S21elPe4Y50GB0Y041ihvw41Vlwy2QS6K9ldoftX4JvXodbKTcmuQxywdQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/client-common": "5.20.0" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/@algolia/requester-node-http": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-5.20.0.tgz", - "integrity": "sha512-kmtQClq/w3vtPteDSPvaW9SPZL/xrIgMrxZyAgsFwrJk0vJxqyC5/hwHmrCraDnStnGSADnLpBf4SpZnwnkwWw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/client-common": "5.20.0" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/@antfu/eslint-config": { - "version": "0.39.8", - "resolved": "https://registry.npmjs.org/@antfu/eslint-config/-/eslint-config-0.39.8.tgz", - "integrity": "sha512-KnDjLw6UEoHdEzB6CzQMm+EkA4ZI94r1Of1rRRw0qxhkFhD/+SQ2BTBgmF5d4wTsU0IT1Dk5JjJ6J/cVFKdXWQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@antfu/eslint-config-vue": "0.39.8", - "@typescript-eslint/eslint-plugin": "^6.0.0", - "@typescript-eslint/parser": "^6.0.0", - "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-html": "^7.1.0", - "eslint-plugin-import": "npm:eslint-plugin-i@2.27.5-4", - "eslint-plugin-jsonc": "^2.9.0", - "eslint-plugin-n": "^16.0.1", - "eslint-plugin-promise": "^6.1.1", - "eslint-plugin-unicorn": "^48.0.0", - "eslint-plugin-vue": "^9.15.1", - "eslint-plugin-yml": "^1.8.0", - "jsonc-eslint-parser": "^2.3.0", - "yaml-eslint-parser": "^1.2.2" - }, - "peerDependencies": { - "eslint": ">=7.4.0" - } - }, - "node_modules/@antfu/eslint-config-basic": { - "version": "0.39.8", - "resolved": "https://registry.npmjs.org/@antfu/eslint-config-basic/-/eslint-config-basic-0.39.8.tgz", - "integrity": "sha512-HvxNu11NRpX/DHmcMcA2KenY/IIy3THEn5tpizg6vPIp3ZYSNkW3ov6sK2wxCd1S8Rwl/65566wplJ8xTYe0EA==", - "dev": true, - "license": "MIT", - "dependencies": { - "eslint-plugin-antfu": "0.39.8", - "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-html": "^7.1.0", - "eslint-plugin-import": "npm:eslint-plugin-i@2.27.5-4", - "eslint-plugin-jsonc": "^2.9.0", - "eslint-plugin-markdown": "^3.0.0", - "eslint-plugin-n": "^16.0.1", - "eslint-plugin-no-only-tests": "^3.1.0", - "eslint-plugin-promise": "^6.1.1", - "eslint-plugin-unicorn": "^48.0.0", - "eslint-plugin-unused-imports": "^3.0.0", - "eslint-plugin-yml": "^1.8.0", - "jsonc-eslint-parser": "^2.3.0", - "yaml-eslint-parser": "^1.2.2" - }, - "peerDependencies": { - "eslint": ">=7.4.0" - } - }, - "node_modules/@antfu/eslint-config-ts": { - "version": "0.39.8", - "resolved": "https://registry.npmjs.org/@antfu/eslint-config-ts/-/eslint-config-ts-0.39.8.tgz", - "integrity": "sha512-oMkIzxxD+sdHpO7Ctk+ej1SCZAoSbPMGyqjfaGLqpaxh87gP7LSFlm6QpsdIWllnTyYB75Hk8LMqFQWCJU9dxw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@antfu/eslint-config-basic": "0.39.8", - "@typescript-eslint/eslint-plugin": "^6.0.0", - "@typescript-eslint/parser": "^6.0.0", - "eslint-plugin-jest": "^27.2.3" - }, - "peerDependencies": { - "eslint": ">=7.4.0", - "typescript": ">=3.9" - } - }, - "node_modules/@antfu/eslint-config-vue": { - "version": "0.39.8", - "resolved": "https://registry.npmjs.org/@antfu/eslint-config-vue/-/eslint-config-vue-0.39.8.tgz", - "integrity": "sha512-BeBRdI8Bm0d9ppomvmPkrIim4IEW4ZHZHsGw2qSw/mSDZwprLyGi9tgNMnoHbN9OBGQwveuurdKFlJz5SlCjrA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@antfu/eslint-config-basic": "0.39.8", - "@antfu/eslint-config-ts": "0.39.8", - "eslint-plugin-vue": "^9.15.1", - "local-pkg": "^0.4.3" - }, - "peerDependencies": { - "eslint": ">=7.4.0" - } - }, - "node_modules/@antfu/install-pkg": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@antfu/install-pkg/-/install-pkg-0.1.1.tgz", - "integrity": "sha512-LyB/8+bSfa0DFGC06zpCEfs89/XoWZwws5ygEa5D+Xsm3OfI+aXQ86VgVG7Acyef+rSZ5HE7J8rrxzrQeM3PjQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "execa": "^5.1.1", - "find-up": "^5.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@antfu/utils": { - "version": "0.7.10", - "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.10.tgz", - "integrity": "sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@appscode/design-system": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/@appscode/design-system/-/design-system-2.6.9.tgz", - "integrity": "sha512-j9MA9Sa4ccXE0+IhUqyO8dN+BGiTuIzVzP2+ysGco7iWwIpVcvIFFliSWGsghCGiCztLPTaoZPe6y7DzjMli0g==", - "license": "Apache-2.0", - "dependencies": { - "@appscode/design-system-images": "^0.0.13" - } - }, - "node_modules/@appscode/design-system-images": { - "version": "0.0.13", - "resolved": "https://registry.npmjs.org/@appscode/design-system-images/-/design-system-images-0.0.13.tgz", - "integrity": "sha512-pJ0iiaD5xMtZ0fCtrGmyWAglO0kfZ6rOx/qLzk6OJkyMI0yRCH/fQRn5cO48F+sdKKF08KXXeMmvgsf1Y+ycUw==", - "license": "Apache-2.0" - }, - "node_modules/@appscode/static-assets": { - "name": "static-assets", - "version": "0.8.3", - "resolved": "git+ssh://git@github.com/appscode/static-assets.git#446167a5aecee32fb4ef2cd8d62a72bf28b47528", - "license": "Apache-2.0" - }, - "node_modules/@asamuzakjp/css-color": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-2.8.3.tgz", - "integrity": "sha512-GIc76d9UI1hCvOATjZPyHFmE5qhRccp3/zGfMPapK3jBi+yocEzp6BBB0UnfRYP9NP4FANqUZYb0hnfs3TM3hw==", - "license": "MIT", - "dependencies": { - "@csstools/css-calc": "^2.1.1", - "@csstools/css-color-parser": "^3.0.7", - "@csstools/css-parser-algorithms": "^3.0.4", - "@csstools/css-tokenizer": "^3.0.3", - "lru-cache": "^10.4.3" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.26.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", - "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.25.9", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/code-frame/node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", - "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", - "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.26.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.7.tgz", - "integrity": "sha512-kEvgGGgEjRUutvdVvZhbn/BxVt+5VSpwXz1j3WYXQbXDo8KzFOPNG2GQbdAiNq8g6wn1yKk7C/qrke03a84V+w==", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.26.7" - }, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/types": { - "version": "7.26.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.7.tgz", - "integrity": "sha512-t8kDRGrKXyp6+tjUh7hw2RLyclsW4TRoRvRHtSyAX9Bb5ldlFh+90YAYY6awRXrlB4G5G2izNeGySpATlFzmOg==", - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.25.9", - "@babel/helper-validator-identifier": "^7.25.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@bytebuilders/docs-base": { - "name": "docs-base", - "version": "0.1.0", - "resolved": "git+ssh://git@github.com/bytebuilders/docs-base.git#50bd63250b73577d61c7cd9f358bdbb753315874", - "dependencies": { - "@appscode/design-system": "^2.2.7", - "@appscode/static-assets": "github:appscode/static-assets", - "@types/jsdom": "^21.1.6", - "@vueuse/components": "^12.5.0", - "@vueuse/core": "^12.5.0", - "@vueuse/integrations": "^12.5.0", - "bulma": "0.9.4", - "cheerio": "^1.0.0-rc.12", - "font-awesome": "^4.7.0", - "html-parse-stringify": "^3.0.1", - "html-to-text": "^9.0.5", - "jsdom": "^24.0.0", - "JSONStream": "^1.3.5", - "pinia": "^2.1.3", - "vue-i18n": "^9.14.2", - "vue-multiselect": "^3.5.0", - "xml2js": "^0.6.2" - }, - "engines": { - "node": ">=22.0.0" - } - }, - "node_modules/@csstools/color-helpers": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.1.tgz", - "integrity": "sha512-MKtmkA0BX87PKaO1NFRTFH+UnkgnmySQOvNxJubsadusqPEC2aJ9MOQiMceZJJ6oitUl/i0L6u0M1IrmAOmgBA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT-0", - "engines": { - "node": ">=18" - } - }, - "node_modules/@csstools/css-calc": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.1.tgz", - "integrity": "sha512-rL7kaUnTkL9K+Cvo2pnCieqNpTKgQzy5f+N+5Iuko9HAoasP+xgprVh7KN/MaJVvVL1l0EzQq2MoqBHKSrDrag==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT", - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@csstools/css-parser-algorithms": "^3.0.4", - "@csstools/css-tokenizer": "^3.0.3" - } - }, - "node_modules/@csstools/css-color-parser": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.7.tgz", - "integrity": "sha512-nkMp2mTICw32uE5NN+EsJ4f5N+IGFeCFu4bGpiKgb2Pq/7J/MpyLBeQ5ry4KKtRFZaYs6sTmcMYrSRIyj5DFKA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT", - "dependencies": { - "@csstools/color-helpers": "^5.0.1", - "@csstools/css-calc": "^2.1.1" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@csstools/css-parser-algorithms": "^3.0.4", - "@csstools/css-tokenizer": "^3.0.3" - } - }, - "node_modules/@csstools/css-parser-algorithms": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.4.tgz", - "integrity": "sha512-Up7rBoV77rv29d3uKHUIVubz1BTcgyUK72IvCQAbfbMv584xHcGKCKbWh7i8hPrRJ7qU4Y8IO3IY9m+iTB7P3A==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT", - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@csstools/css-tokenizer": "^3.0.3" - } - }, - "node_modules/@csstools/css-tokenizer": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.3.tgz", - "integrity": "sha512-UJnjoFsmxfKUdNYdWgOB0mWUypuLvAfQPH1+pyvRJs6euowbFkFC6P13w1l8mJyi3vxYMxc9kld5jZEGRQs6bw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "node_modules/@csstools/selector-specificity": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-3.1.1.tgz", - "integrity": "sha512-a7cxGcJ2wIlMFLlh8z2ONm+715QkPHiyJcxwQlKOz/03GPw1COpfhcmC9wm4xlZfp//jWHNNMwzjtqHXVWU9KA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT-0", - "engines": { - "node": "^14 || ^16 || >=18" - }, - "peerDependencies": { - "postcss-selector-parser": "^6.0.13" - } - }, - "node_modules/@docsearch/css": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.8.2.tgz", - "integrity": "sha512-y05ayQFyUmCXze79+56v/4HpycYF3uFqB78pLPrSV5ZKAlDuIAAJNhaRi8tTdRNXh05yxX/TyNnzD6LwSM89vQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@docsearch/js": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/@docsearch/js/-/js-3.8.2.tgz", - "integrity": "sha512-Q5wY66qHn0SwA7Taa0aDbHiJvaFJLOJyHmooQ7y8hlwwQLQ/5WwCcoX0g7ii04Qi2DJlHsd0XXzJ8Ypw9+9YmQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@docsearch/react": "3.8.2", - "preact": "^10.0.0" - } - }, - "node_modules/@docsearch/react": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.8.2.tgz", - "integrity": "sha512-xCRrJQlTt8N9GU0DG4ptwHRkfnSnD/YpdeaXe02iKfqs97TkZJv60yE+1eq/tjPcVnTW8dP5qLP7itifFVV5eg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/autocomplete-core": "1.17.7", - "@algolia/autocomplete-preset-algolia": "1.17.7", - "@docsearch/css": "3.8.2", - "algoliasearch": "^5.14.2" - }, - "peerDependencies": { - "@types/react": ">= 16.8.0 < 19.0.0", - "react": ">= 16.8.0 < 19.0.0", - "react-dom": ">= 16.8.0 < 19.0.0", - "search-insights": ">= 1 < 3" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "react": { - "optional": true - }, - "react-dom": { - "optional": true - }, - "search-insights": { - "optional": true - } - } - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", - "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", - "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", - "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", - "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", - "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", - "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", - "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", - "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", - "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", - "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", - "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", - "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", - "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", - "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", - "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", - "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", - "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", - "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", - "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", - "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", - "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", - "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", - "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz", - "integrity": "sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==", - "dev": true, - "license": "MIT", - "dependencies": { - "eslint-visitor-keys": "^3.4.3" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", - "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", - "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@eslint/eslintrc/node_modules/minimatch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", - "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@eslint/js": { - "version": "8.57.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", - "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", - "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", - "deprecated": "Use @eslint/config-array instead", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@humanwhocodes/object-schema": "^2.0.3", - "debug": "^4.3.1", - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", - "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", - "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", - "deprecated": "Use @eslint/object-schema instead", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/@iconify-json/simple-icons": { - "version": "1.2.21", - "resolved": "https://registry.npmjs.org/@iconify-json/simple-icons/-/simple-icons-1.2.21.tgz", - "integrity": "sha512-aqbIuVshMZ2fNEhm25//9DoKudboXF3CpoEQJJlHl9gVSVNOTr4cgaCIZvgSEYmys2HHEfmhcpoZIhoEFZS8SQ==", - "dev": true, - "license": "CC0-1.0", - "dependencies": { - "@iconify/types": "*" - } - }, - "node_modules/@iconify/json": { - "version": "2.2.299", - "resolved": "https://registry.npmjs.org/@iconify/json/-/json-2.2.299.tgz", - "integrity": "sha512-YsHoXNK4tBfY1aABlnAxGv8BFNsXBRfTuhRqkXLC0AK+amM+IDPLpVyOPCttcEHKuAsmh0OVPsrCZe2bC0puTA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@iconify/types": "*", - "pathe": "^1.1.2" - } - }, - "node_modules/@iconify/types": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@iconify/types/-/types-2.0.0.tgz", - "integrity": "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@iconify/utils": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@iconify/utils/-/utils-2.2.1.tgz", - "integrity": "sha512-0/7J7hk4PqXmxo5PDBDxmnecw5PxklZJfNjIVG9FM0mEfVrvfudS22rYWsqVk6gR3UJ/mSYS90X4R3znXnqfNA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@antfu/install-pkg": "^0.4.1", - "@antfu/utils": "^0.7.10", - "@iconify/types": "^2.0.0", - "debug": "^4.4.0", - "globals": "^15.13.0", - "kolorist": "^1.8.0", - "local-pkg": "^0.5.1", - "mlly": "^1.7.3" - } - }, - "node_modules/@iconify/utils/node_modules/@antfu/install-pkg": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@antfu/install-pkg/-/install-pkg-0.4.1.tgz", - "integrity": "sha512-T7yB5QNG29afhWVkVq7XeIMBa5U/vs9mX69YqayXypPRmYzUmzwnYltplHmPtZ4HPCn+sQKeXW8I47wCbuBOjw==", - "dev": true, - "license": "MIT", - "dependencies": { - "package-manager-detector": "^0.2.0", - "tinyexec": "^0.3.0" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@iconify/utils/node_modules/globals": { - "version": "15.14.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.14.0.tgz", - "integrity": "sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@iconify/utils/node_modules/local-pkg": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.1.tgz", - "integrity": "sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "mlly": "^1.7.3", - "pkg-types": "^1.2.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@intlify/core-base": { - "version": "9.14.5", - "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.14.5.tgz", - "integrity": "sha512-5ah5FqZG4pOoHjkvs8mjtv+gPKYU0zCISaYNjBNNqYiaITxW8ZtVih3GS/oTOqN8d9/mDLyrjD46GBApNxmlsA==", - "license": "MIT", - "dependencies": { - "@intlify/message-compiler": "9.14.5", - "@intlify/shared": "9.14.5" - }, - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://github.com/sponsors/kazupon" - } - }, - "node_modules/@intlify/message-compiler": { - "version": "9.14.5", - "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.14.5.tgz", - "integrity": "sha512-IHzgEu61/YIpQV5Pc3aRWScDcnFKWvQA9kigcINcCBXN8mbW+vk9SK+lDxA6STzKQsVJxUPg9ACC52pKKo3SVQ==", - "license": "MIT", - "dependencies": { - "@intlify/shared": "9.14.5", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://github.com/sponsors/kazupon" - } - }, - "node_modules/@intlify/shared": { - "version": "9.14.5", - "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-9.14.5.tgz", - "integrity": "sha512-9gB+E53BYuAEMhbCAxVgG38EZrk59sxBtv3jSizNL2hEWlgjBjAw1AwpLHtNaeda12pe6W20OGEa0TwuMSRbyQ==", - "license": "MIT", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://github.com/sponsors/kazupon" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", - "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", - "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", - "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", - "license": "MIT" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@rollup/pluginutils": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz", - "integrity": "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "estree-walker": "^2.0.2", - "picomatch": "^4.0.2" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } - } - }, - "node_modules/@rollup/pluginutils/node_modules/picomatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", - "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.60.1.tgz", - "integrity": "sha512-d6FinEBLdIiK+1uACUttJKfgZREXrF0Qc2SmLII7W2AD8FfiZ9Wjd+rD/iRuf5s5dWrr1GgwXCvPqOuDquOowA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.60.1.tgz", - "integrity": "sha512-YjG/EwIDvvYI1YvYbHvDz/BYHtkY4ygUIXHnTdLhG+hKIQFBiosfWiACWortsKPKU/+dUwQQCKQM3qrDe8c9BA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.60.1.tgz", - "integrity": "sha512-mjCpF7GmkRtSJwon+Rq1N8+pI+8l7w5g9Z3vWj4T7abguC4Czwi3Yu/pFaLvA3TTeMVjnu3ctigusqWUfjZzvw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.60.1.tgz", - "integrity": "sha512-haZ7hJ1JT4e9hqkoT9R/19XW2QKqjfJVv+i5AGg57S+nLk9lQnJ1F/eZloRO3o9Scy9CM3wQ9l+dkXtcBgN5Ew==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.60.1.tgz", - "integrity": "sha512-czw90wpQq3ZsAVBlinZjAYTKduOjTywlG7fEeWKUA7oCmpA8xdTkxZZlwNJKWqILlq0wehoZcJYfBvOyhPTQ6w==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ] - }, - "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.60.1.tgz", - "integrity": "sha512-KVB2rqsxTHuBtfOeySEyzEOB7ltlB/ux38iu2rBQzkjbwRVlkhAGIEDiiYnO2kFOkJp+Z7pUXKyrRRFuFUKt+g==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ] - }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.60.1.tgz", - "integrity": "sha512-L+34Qqil+v5uC0zEubW7uByo78WOCIrBvci69E7sFASRl0X7b/MB6Cqd1lky/CtcSVTydWa2WZwFuWexjS5o6g==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.60.1.tgz", - "integrity": "sha512-n83O8rt4v34hgFzlkb1ycniJh7IR5RCIqt6mz1VRJD6pmhRi0CXdmfnLu9dIUS6buzh60IvACM842Ffb3xd6Gg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.60.1.tgz", - "integrity": "sha512-Nql7sTeAzhTAja3QXeAI48+/+GjBJ+QmAH13snn0AJSNL50JsDqotyudHyMbO2RbJkskbMbFJfIJKWA6R1LCJQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.60.1.tgz", - "integrity": "sha512-+pUymDhd0ys9GcKZPPWlFiZ67sTWV5UU6zOJat02M1+PiuSGDziyRuI/pPue3hoUwm2uGfxdL+trT6Z9rxnlMA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-loong64-gnu": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.60.1.tgz", - "integrity": "sha512-VSvgvQeIcsEvY4bKDHEDWcpW4Yw7BtlKG1GUT4FzBUlEKQK0rWHYBqQt6Fm2taXS+1bXvJT6kICu5ZwqKCnvlQ==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-loong64-musl": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.60.1.tgz", - "integrity": "sha512-4LqhUomJqwe641gsPp6xLfhqWMbQV04KtPp7/dIp0nzPxAkNY1AbwL5W0MQpcalLYk07vaW9Kp1PBhdpZYYcEw==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-ppc64-gnu": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.60.1.tgz", - "integrity": "sha512-tLQQ9aPvkBxOc/EUT6j3pyeMD6Hb8QF2BTBnCQWP/uu1lhc9AIrIjKnLYMEroIz/JvtGYgI9dF3AxHZNaEH0rw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-ppc64-musl": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.60.1.tgz", - "integrity": "sha512-RMxFhJwc9fSXP6PqmAz4cbv3kAyvD1etJFjTx4ONqFP9DkTkXsAMU4v3Vyc5BgzC+anz7nS/9tp4obsKfqkDHg==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.60.1.tgz", - "integrity": "sha512-QKgFl+Yc1eEk6MmOBfRHYF6lTxiiiV3/z/BRrbSiW2I7AFTXoBFvdMEyglohPj//2mZS4hDOqeB0H1ACh3sBbg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-musl": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.60.1.tgz", - "integrity": "sha512-RAjXjP/8c6ZtzatZcA1RaQr6O1TRhzC+adn8YZDnChliZHviqIjmvFwHcxi4JKPSDAt6Uhf/7vqcBzQJy0PDJg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.60.1.tgz", - "integrity": "sha512-wcuocpaOlaL1COBYiA89O6yfjlp3RwKDeTIA0hM7OpmhR1Bjo9j31G1uQVpDlTvwxGn2nQs65fBFL5UFd76FcQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.60.1.tgz", - "integrity": "sha512-77PpsFQUCOiZR9+LQEFg9GClyfkNXj1MP6wRnzYs0EeWbPcHs02AXu4xuUbM1zhwn3wqaizle3AEYg5aeoohhg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.60.1.tgz", - "integrity": "sha512-5cIATbk5vynAjqqmyBjlciMJl1+R/CwX9oLk/EyiFXDWd95KpHdrOJT//rnUl4cUcskrd0jCCw3wpZnhIHdD9w==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-openbsd-x64": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.60.1.tgz", - "integrity": "sha512-cl0w09WsCi17mcmWqqglez9Gk8isgeWvoUZ3WiJFYSR3zjBQc2J5/ihSjpl+VLjPqjQ/1hJRcqBfLjssREQILw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ] - }, - "node_modules/@rollup/rollup-openharmony-arm64": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.60.1.tgz", - "integrity": "sha512-4Cv23ZrONRbNtbZa37mLSueXUCtN7MXccChtKpUnQNgF010rjrjfHx3QxkS2PI7LqGT5xXyYs1a7LbzAwT0iCA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openharmony" - ] - }, - "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.60.1.tgz", - "integrity": "sha512-i1okWYkA4FJICtr7KpYzFpRTHgy5jdDbZiWfvny21iIKky5YExiDXP+zbXzm3dUcFpkEeYNHgQ5fuG236JPq0g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.60.1.tgz", - "integrity": "sha512-u09m3CuwLzShA0EYKMNiFgcjjzwqtUMLmuCJLeZWjjOYA3IT2Di09KaxGBTP9xVztWyIWjVdsB2E9goMjZvTQg==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-gnu": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.60.1.tgz", - "integrity": "sha512-k+600V9Zl1CM7eZxJgMyTUzmrmhB/0XZnF4pRypKAlAgxmedUA+1v9R+XOFv56W4SlHEzfeMtzujLJD22Uz5zg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.60.1.tgz", - "integrity": "sha512-lWMnixq/QzxyhTV6NjQJ4SFo1J6PvOX8vUx5Wb4bBPsEb+8xZ89Bz6kOXpfXj9ak9AHTQVQzlgzBEc1SyM27xQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rushstack/eslint-patch": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.5.tgz", - "integrity": "sha512-kkKUDVlII2DQiKy7UstOR1ErJP8kUKAQ4oa+SQtM0K+lPdmmjj0YnnxBgtTVYH7mUKtbsxeFC9y0AmK7Yb78/A==", - "dev": true, - "license": "MIT" - }, - "node_modules/@selderee/plugin-htmlparser2": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@selderee/plugin-htmlparser2/-/plugin-htmlparser2-0.11.0.tgz", - "integrity": "sha512-P33hHGdldxGabLFjPPpaTxVolMrzrcegejx+0GxjrIb9Zv48D8yAIA/QTDR2dFl7Uz7urX8aX6+5bCZslr+gWQ==", - "license": "MIT", - "dependencies": { - "domhandler": "^5.0.3", - "selderee": "^0.11.0" - }, - "funding": { - "url": "https://ko-fi.com/killymxi" - } - }, - "node_modules/@shikijs/core": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-2.1.0.tgz", - "integrity": "sha512-v795KDmvs+4oV0XD05YLzfDMe9ISBgNjtFxP4PAEv5DqyeghO1/TwDqs9ca5/E6fuO95IcAcWqR6cCX9TnqLZA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/engine-javascript": "2.1.0", - "@shikijs/engine-oniguruma": "2.1.0", - "@shikijs/types": "2.1.0", - "@shikijs/vscode-textmate": "^10.0.1", - "@types/hast": "^3.0.4", - "hast-util-to-html": "^9.0.4" - } - }, - "node_modules/@shikijs/engine-javascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-2.1.0.tgz", - "integrity": "sha512-cgIUdAliOsoaa0rJz/z+jvhrpRd+fVAoixVFEVxUq5FA+tHgBZAIfVJSgJNVRj2hs/wZ1+4hMe82eKAThVh0nQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/types": "2.1.0", - "@shikijs/vscode-textmate": "^10.0.1", - "oniguruma-to-es": "^2.3.0" - } - }, - "node_modules/@shikijs/engine-oniguruma": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-2.1.0.tgz", - "integrity": "sha512-Ujik33wEDqgqY2WpjRDUBECGcKPv3eGGkoXPujIXvokLaRmGky8NisSk8lHUGeSFxo/Cz5sgFej9sJmA9yeepg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/types": "2.1.0", - "@shikijs/vscode-textmate": "^10.0.1" - } - }, - "node_modules/@shikijs/langs": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-2.1.0.tgz", - "integrity": "sha512-Jn0gS4rPgerMDPj1ydjgFzZr5fAIoMYz4k7ZT3LJxWWBWA6lokK0pumUwVtb+MzXtlpjxOaQejLprmLbvMZyww==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/types": "2.1.0" - } - }, - "node_modules/@shikijs/themes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-2.1.0.tgz", - "integrity": "sha512-oS2mU6+bz+8TKutsjBxBA7Z3vrQk21RCmADLpnu8cy3tZD6Rw0FKqDyXNtwX52BuIDKHxZNmRlTdG3vtcYv3NQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/types": "2.1.0" - } - }, - "node_modules/@shikijs/transformers": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-2.1.0.tgz", - "integrity": "sha512-3sfvh6OKUVkT5wZFU1xxiq1qqNIuCwUY3yOb9ZGm19y80UZ/eoroLE2orGNzfivyTxR93GfXXZC/ghPR0/SBow==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/core": "2.1.0", - "@shikijs/types": "2.1.0" - } - }, - "node_modules/@shikijs/types": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-2.1.0.tgz", - "integrity": "sha512-OFOdHA6VEVbiQvepJ8yqicC6VmBrKxFFhM2EsHHrZESqLVAXOSeRDiuSYV185lIgp15TVic5vYBYNhTsk1xHLg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/vscode-textmate": "^10.0.1", - "@types/hast": "^3.0.4" - } - }, - "node_modules/@shikijs/vscode-textmate": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.1.tgz", - "integrity": "sha512-fTIQwLF+Qhuws31iw7Ncl1R3HUDtGwIipiJ9iU+UsDUwMhegFcQKQHd51nZjb7CArq0MvON8rbgCGQYWHUKAdg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@tsconfig/node22": { - "version": "22.0.0", - "resolved": "https://registry.npmjs.org/@tsconfig/node22/-/node22-22.0.0.tgz", - "integrity": "sha512-twLQ77zevtxobBOD4ToAtVmuYrpeYUh3qh+TEp+08IWhpsrIflVHqQ1F1CiPxQGL7doCdBIOOCF+1Tm833faNg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==", - "devOptional": true, - "license": "MIT" - }, - "node_modules/@types/eslint": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", - "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.7", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", - "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/@types/estree": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", - "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/jsdom": { - "version": "21.1.7", - "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-21.1.7.tgz", - "integrity": "sha512-yOriVnggzrnQ3a9OKOCxaVuSug3w3/SbOj5i7VwXWZEyUNl3bLF9V3MfxGbZKuwqJOQyRfqXyROBB1CoZLFWzA==", - "license": "MIT", - "dependencies": { - "@types/node": "*", - "@types/tough-cookie": "*", - "parse5": "^7.0.0" - } - }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/linkify-it": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz", - "integrity": "sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/markdown-it": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.2.tgz", - "integrity": "sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/linkify-it": "^5", - "@types/mdurl": "^2" - } - }, - "node_modules/@types/mdast": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", - "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/unist": "^2" - } - }, - "node_modules/@types/mdurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-2.0.0.tgz", - "integrity": "sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/node": { - "version": "22.10.10", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.10.tgz", - "integrity": "sha512-X47y/mPNzxviAGY5TcYPtYL8JsY3kAq2n8fMmKoRCxq/c4v4pyGNCzM2R6+M5/umG4ZfHuT+sgqDYqWc9rJ6ww==", - "license": "MIT", - "dependencies": { - "undici-types": "~6.20.0" - } - }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", - "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/semver": { - "version": "7.5.8", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", - "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/tough-cookie": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", - "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==", - "license": "MIT" - }, - "node_modules/@types/unist": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", - "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/web-bluetooth": { - "version": "0.0.20", - "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.20.tgz", - "integrity": "sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==", - "license": "MIT" - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", - "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/type-utils": "6.21.0", - "@typescript-eslint/utils": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", - "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", - "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", - "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/typescript-estree": "6.21.0", - "@typescript-eslint/utils": "6.21.0", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", - "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", - "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "9.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", - "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", - "semver": "^7.5.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", - "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "6.21.0", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@ungap/structured-clone": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", - "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", - "dev": true, - "license": "ISC" - }, - "node_modules/@vitejs/plugin-vue": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.2.1.tgz", - "integrity": "sha512-cxh314tzaWwOLqVes2gnnCtvBDcM1UMdn+iFR+UjAn411dPT3tOmqrJjbMd7koZpMAmBM/GqeV4n9ge7JSiJJQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "peerDependencies": { - "vite": "^5.0.0 || ^6.0.0", - "vue": "^3.2.25" - } - }, - "node_modules/@volar/language-core": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.11.tgz", - "integrity": "sha512-lN2C1+ByfW9/JRPpqScuZt/4OrUUse57GLI6TbLgTIqBVemdl1wNcZ1qYGEo2+Gw8coYLgCy7SuKqn6IrQcQgg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@volar/source-map": "2.4.11" - } - }, - "node_modules/@volar/source-map": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.11.tgz", - "integrity": "sha512-ZQpmafIGvaZMn/8iuvCFGrW3smeqkq/IIh9F1SdSx9aUl0J4Iurzd6/FhmjNO5g2ejF3rT45dKskgXWiofqlZQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@volar/typescript": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.11.tgz", - "integrity": "sha512-2DT+Tdh88Spp5PyPbqhyoYavYCPDsqbHLFwcUI9K1NlY1YgUJvujGdrqUp0zWxnW7KWNTr3xSpMuv2WnaTKDAw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@volar/language-core": "2.4.11", - "path-browserify": "^1.0.1", - "vscode-uri": "^3.0.8" - } - }, - "node_modules/@vue/compiler-core": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.13.tgz", - "integrity": "sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.25.3", - "@vue/shared": "3.5.13", - "entities": "^4.5.0", - "estree-walker": "^2.0.2", - "source-map-js": "^1.2.0" - } - }, - "node_modules/@vue/compiler-dom": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.13.tgz", - "integrity": "sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==", - "license": "MIT", - "dependencies": { - "@vue/compiler-core": "3.5.13", - "@vue/shared": "3.5.13" - } - }, - "node_modules/@vue/compiler-sfc": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.13.tgz", - "integrity": "sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.25.3", - "@vue/compiler-core": "3.5.13", - "@vue/compiler-dom": "3.5.13", - "@vue/compiler-ssr": "3.5.13", - "@vue/shared": "3.5.13", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.11", - "postcss": "^8.4.48", - "source-map-js": "^1.2.0" - } - }, - "node_modules/@vue/compiler-ssr": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.13.tgz", - "integrity": "sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==", - "license": "MIT", - "dependencies": { - "@vue/compiler-dom": "3.5.13", - "@vue/shared": "3.5.13" - } - }, - "node_modules/@vue/compiler-vue2": { - "version": "2.7.16", - "resolved": "https://registry.npmjs.org/@vue/compiler-vue2/-/compiler-vue2-2.7.16.tgz", - "integrity": "sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==", - "dev": true, - "license": "MIT", - "dependencies": { - "de-indent": "^1.0.2", - "he": "^1.2.0" - } - }, - "node_modules/@vue/devtools-api": { - "version": "6.6.4", - "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.4.tgz", - "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==", - "license": "MIT" - }, - "node_modules/@vue/devtools-kit": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.7.1.tgz", - "integrity": "sha512-yhZ4NPnK/tmxGtLNQxmll90jIIXdb2jAhPF76anvn5M/UkZCiLJy28bYgPIACKZ7FCosyKoaope89/RsFJll1w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vue/devtools-shared": "^7.7.1", - "birpc": "^0.2.19", - "hookable": "^5.5.3", - "mitt": "^3.0.1", - "perfect-debounce": "^1.0.0", - "speakingurl": "^14.0.1", - "superjson": "^2.2.1" - } - }, - "node_modules/@vue/devtools-shared": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.7.1.tgz", - "integrity": "sha512-BtgF7kHq4BHG23Lezc/3W2UhK2ga7a8ohAIAGJMBr4BkxUFzhqntQtCiuL1ijo2ztWnmusymkirgqUrXoQKumA==", - "dev": true, - "license": "MIT", - "dependencies": { - "rfdc": "^1.4.1" - } - }, - "node_modules/@vue/language-core": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-2.2.0.tgz", - "integrity": "sha512-O1ZZFaaBGkKbsRfnVH1ifOK1/1BUkyK+3SQsfnh6PmMmD4qJcTU8godCeA96jjDRTL6zgnK7YzCHfaUlH2r0Mw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@volar/language-core": "~2.4.11", - "@vue/compiler-dom": "^3.5.0", - "@vue/compiler-vue2": "^2.7.16", - "@vue/shared": "^3.5.0", - "alien-signals": "^0.4.9", - "minimatch": "^9.0.3", - "muggle-string": "^0.4.1", - "path-browserify": "^1.0.1" - }, - "peerDependencies": { - "typescript": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@vue/reactivity": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.13.tgz", - "integrity": "sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==", - "license": "MIT", - "dependencies": { - "@vue/shared": "3.5.13" - } - }, - "node_modules/@vue/runtime-core": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.13.tgz", - "integrity": "sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==", - "license": "MIT", - "dependencies": { - "@vue/reactivity": "3.5.13", - "@vue/shared": "3.5.13" - } - }, - "node_modules/@vue/runtime-dom": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.13.tgz", - "integrity": "sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==", - "license": "MIT", - "dependencies": { - "@vue/reactivity": "3.5.13", - "@vue/runtime-core": "3.5.13", - "@vue/shared": "3.5.13", - "csstype": "^3.1.3" - } - }, - "node_modules/@vue/server-renderer": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.13.tgz", - "integrity": "sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==", - "license": "MIT", - "dependencies": { - "@vue/compiler-ssr": "3.5.13", - "@vue/shared": "3.5.13" - }, - "peerDependencies": { - "vue": "3.5.13" - } - }, - "node_modules/@vue/shared": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.13.tgz", - "integrity": "sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==", - "license": "MIT" - }, - "node_modules/@vue/tsconfig": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@vue/tsconfig/-/tsconfig-0.4.0.tgz", - "integrity": "sha512-CPuIReonid9+zOG/CGTT05FXrPYATEqoDGNrEaqS4hwcw5BUNM2FguC0mOwJD4Jr16UpRVl9N0pY3P+srIbqmg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@vueuse/components": { - "version": "12.5.0", - "resolved": "https://registry.npmjs.org/@vueuse/components/-/components-12.5.0.tgz", - "integrity": "sha512-aLgEW8bidRZ4qkVOIl958NAev+XKYTtbfsIj5ObjiDwvBDqxmGVCwMQvWHUQN37tb8JSkRF22gTUbXNt0iSwLQ==", - "license": "MIT", - "dependencies": { - "@vueuse/core": "12.5.0", - "@vueuse/shared": "12.5.0", - "vue": "^3.5.13" - } - }, - "node_modules/@vueuse/core": { - "version": "12.5.0", - "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-12.5.0.tgz", - "integrity": "sha512-GVyH1iYqNANwcahAx8JBm6awaNgvR/SwZ1fjr10b8l1HIgDp82ngNbfzJUgOgWEoxjL+URAggnlilAEXwCOZtg==", - "license": "MIT", - "dependencies": { - "@types/web-bluetooth": "^0.0.20", - "@vueuse/metadata": "12.5.0", - "@vueuse/shared": "12.5.0", - "vue": "^3.5.13" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@vueuse/integrations": { - "version": "12.5.0", - "resolved": "https://registry.npmjs.org/@vueuse/integrations/-/integrations-12.5.0.tgz", - "integrity": "sha512-HYLt8M6mjUfcoUOzyBcX2RjpfapIwHPBmQJtTmXOQW845Y/Osu9VuTJ5kPvnmWJ6IUa05WpblfOwZ+P0G4iZsQ==", - "license": "MIT", - "dependencies": { - "@vueuse/core": "12.5.0", - "@vueuse/shared": "12.5.0", - "vue": "^3.5.13" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "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" - }, - "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 - } - } - }, - "node_modules/@vueuse/metadata": { - "version": "12.5.0", - "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-12.5.0.tgz", - "integrity": "sha512-Ui7Lo2a7AxrMAXRF+fAp9QsXuwTeeZ8fIB9wsLHqzq9MQk+2gMYE2IGJW48VMJ8ecvCB3z3GsGLKLbSasQ5Qlg==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@vueuse/shared": { - "version": "12.5.0", - "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-12.5.0.tgz", - "integrity": "sha512-vMpcL1lStUU6O+kdj6YdHDixh0odjPAUM15uJ9f7MY781jcYkIwFA4iv2EfoIPO6vBmvutI1HxxAwmf0cx5ISQ==", - "license": "MIT", - "dependencies": { - "vue": "^3.5.13" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@webassemblyjs/ast": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz", - "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/helper-numbers": "1.13.2", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2" - } - }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", - "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", - "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", - "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", - "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.13.2", - "@webassemblyjs/helper-api-error": "1.13.2", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", - "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", - "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-buffer": "1.14.1", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2", - "@webassemblyjs/wasm-gen": "1.14.1" - } - }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", - "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", - "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", - "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", - "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-buffer": "1.14.1", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2", - "@webassemblyjs/helper-wasm-section": "1.14.1", - "@webassemblyjs/wasm-gen": "1.14.1", - "@webassemblyjs/wasm-opt": "1.14.1", - "@webassemblyjs/wasm-parser": "1.14.1", - "@webassemblyjs/wast-printer": "1.14.1" - } - }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", - "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2", - "@webassemblyjs/ieee754": "1.13.2", - "@webassemblyjs/leb128": "1.13.2", - "@webassemblyjs/utf8": "1.13.2" - } - }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", - "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-buffer": "1.14.1", - "@webassemblyjs/wasm-gen": "1.14.1", - "@webassemblyjs/wasm-parser": "1.14.1" - } - }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", - "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-api-error": "1.13.2", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2", - "@webassemblyjs/ieee754": "1.13.2", - "@webassemblyjs/leb128": "1.13.2", - "@webassemblyjs/utf8": "1.13.2" - } - }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", - "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true, - "license": "BSD-3-Clause", - "peer": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true, - "license": "Apache-2.0", - "peer": true - }, - "node_modules/acorn": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz", - "integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==", - "dev": true, - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-import-phases": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/acorn-import-phases/-/acorn-import-phases-1.0.4.tgz", - "integrity": "sha512-wKmbr/DDiIXzEOiWrTTUcDm24kQ2vGfZQvM2fwg2vXqR5uW6aapr7ObPtj1th32b9u90/Pf4AItvdTh42fBmVQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "acorn": "^8.14.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", - "license": "MIT", - "engines": { - "node": ">= 14" - } - }, - "node_modules/ajv": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.14.0.tgz", - "integrity": "sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz", - "integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/algoliasearch": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-5.20.0.tgz", - "integrity": "sha512-groO71Fvi5SWpxjI9Ia+chy0QBwT61mg6yxJV27f5YFf+Mw+STT75K6SHySpP8Co5LsCrtsbCH5dJZSRtkSKaQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@algolia/client-abtesting": "5.20.0", - "@algolia/client-analytics": "5.20.0", - "@algolia/client-common": "5.20.0", - "@algolia/client-insights": "5.20.0", - "@algolia/client-personalization": "5.20.0", - "@algolia/client-query-suggestions": "5.20.0", - "@algolia/client-search": "5.20.0", - "@algolia/ingestion": "1.20.0", - "@algolia/monitoring": "1.20.0", - "@algolia/recommend": "5.20.0", - "@algolia/requester-browser-xhr": "5.20.0", - "@algolia/requester-fetch": "5.20.0", - "@algolia/requester-node-http": "5.20.0" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/alien-signals": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-0.4.14.tgz", - "integrity": "sha512-itUAVzhczTmP2U5yX67xVpsbbOiquusbWVyA9N+sy6+r6YVbFkahXvNCeEPWEOMhwDYwbVbGHFkVL03N9I5g+Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "license": "ISC", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "license": "Python-2.0" - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", - "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "is-array-buffer": "^3.0.5" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", - "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "is-array-buffer": "^3.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/async-function": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", - "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "license": "MIT" - }, - "node_modules/available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true, - "license": "MIT" - }, - "node_modules/baseline-browser-mapping": { - "version": "2.10.17", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.17.tgz", - "integrity": "sha512-HdrkN8eVG2CXxeifv/VdJ4A4RSra1DTW8dc/hdxzhGHN8QePs6gKaWM9pHPcpCoxYZJuOZ8drHmbdpLHjCYjLA==", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "bin": { - "baseline-browser-mapping": "dist/cli.cjs" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/birpc": { - "version": "0.2.19", - "resolved": "https://registry.npmjs.org/birpc/-/birpc-0.2.19.tgz", - "integrity": "sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "license": "ISC" - }, - "node_modules/brace-expansion": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.3.tgz", - "integrity": "sha512-MCV/fYJEbqx68aE58kv2cA/kiky1G8vux3OR6/jbS+jIMe/6fJWa0DTzJU7dqijOWYwHi1t29FlfYI9uytqlpA==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.28.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.2.tgz", - "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "peer": true, - "dependencies": { - "baseline-browser-mapping": "^2.10.12", - "caniuse-lite": "^1.0.30001782", - "electron-to-chromium": "^1.5.328", - "node-releases": "^2.0.36", - "update-browserslist-db": "^1.2.3" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/builtin-modules": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", - "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/builtins": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.1.0.tgz", - "integrity": "sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==", - "dev": true, - "license": "MIT", - "dependencies": { - "semver": "^7.0.0" - } - }, - "node_modules/bulma": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/bulma/-/bulma-0.9.4.tgz", - "integrity": "sha512-86FlT5+1GrsgKbPLRRY7cGDg8fsJiP/jzTqXXVqiUZZ2aZT8uemEOHlU1CDU+TxklPEZ11HZNNWclRBBecP4CQ==", - "license": "MIT" - }, - "node_modules/call-bind": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", - "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.0", - "es-define-property": "^1.0.0", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/call-bind-apply-helpers": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.1.tgz", - "integrity": "sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==", - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/call-bound": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz", - "integrity": "sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.1", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/camelcase-keys": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-7.0.2.tgz", - "integrity": "sha512-Rjs1H+A9R+Ig+4E/9oyB66UC5Mj9Xq3N//vcLf2WzgdTi/3gUu3Z9KoqmlrEG4VuuLK8wJHofxzdQXz/knhiYg==", - "dev": true, - "license": "MIT", - "dependencies": { - "camelcase": "^6.3.0", - "map-obj": "^4.1.0", - "quick-lru": "^5.1.1", - "type-fest": "^1.2.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/camelcase-keys/node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001787", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001787.tgz", - "integrity": "sha512-mNcrMN9KeI68u7muanUpEejSLghOKlVhRqS/Za2IeyGllJ9I9otGpR9g3nsw7n4W378TE/LyIteA0+/FOZm4Kg==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "CC-BY-4.0", - "peer": true - }, - "node_modules/ccount": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", - "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/character-entities": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", - "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-html4": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", - "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-legacy": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", - "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-reference-invalid": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", - "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/cheerio": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0.tgz", - "integrity": "sha512-quS9HgjQpdaXOvsZz82Oz7uxtXiy6UIsIQcpBj7HRw2M63Skasm9qlDocAM7jNuaxdhpPU7c4kJN+gA5MCu4ww==", - "license": "MIT", - "dependencies": { - "cheerio-select": "^2.1.0", - "dom-serializer": "^2.0.0", - "domhandler": "^5.0.3", - "domutils": "^3.1.0", - "encoding-sniffer": "^0.2.0", - "htmlparser2": "^9.1.0", - "parse5": "^7.1.2", - "parse5-htmlparser2-tree-adapter": "^7.0.0", - "parse5-parser-stream": "^7.1.2", - "undici": "^6.19.5", - "whatwg-mimetype": "^4.0.0" - }, - "engines": { - "node": ">=18.17" - }, - "funding": { - "url": "https://github.com/cheeriojs/cheerio?sponsor=1" - } - }, - "node_modules/cheerio-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", - "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", - "license": "BSD-2-Clause", - "dependencies": { - "boolbase": "^1.0.0", - "css-select": "^5.1.0", - "css-what": "^6.1.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/chrome-trace-event": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", - "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/clean-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz", - "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==", - "dev": true, - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/clean-regexp/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/colord": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", - "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", - "dev": true, - "license": "MIT" - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "license": "MIT", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/comma-separated-tokens": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", - "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true, - "license": "MIT" - }, - "node_modules/confbox": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", - "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", - "dev": true, - "license": "MIT" - }, - "node_modules/cookie": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", - "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", - "devOptional": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/copy-anything": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz", - "integrity": "sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-what": "^4.1.8" - }, - "engines": { - "node": ">=12.13" - }, - "funding": { - "url": "https://github.com/sponsors/mesqueeb" - } - }, - "node_modules/cosmiconfig": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", - "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", - "dev": true, - "license": "MIT", - "dependencies": { - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "parse-json": "^5.2.0", - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/d-fischer" - }, - "peerDependencies": { - "typescript": ">=4.9.5" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/cosmiconfig/node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/css-functions-list": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.2.3.tgz", - "integrity": "sha512-IQOkD3hbR5KrN93MtcYuad6YPuTSUhntLHDuLEbFWE+ff2/XSZNdZG+LcbbIW5AXKg/WFIfYItIzVoHngHXZzA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12 || >=16" - } - }, - "node_modules/css-select": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", - "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", - "license": "BSD-2-Clause", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css-tree": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", - "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", - "dev": true, - "license": "MIT", - "dependencies": { - "mdn-data": "2.0.30", - "source-map-js": "^1.0.1" - }, - "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" - } - }, - "node_modules/css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "license": "BSD-2-Clause", - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, - "license": "MIT", - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/cssstyle": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.2.1.tgz", - "integrity": "sha512-9+vem03dMXG7gDmZ62uqmRiMRNtinIZ9ZyuF6BdxzfOD+FdN5hretzynkn0ReS2DO2GSw76RWHs0UmJPI2zUjw==", - "license": "MIT", - "dependencies": { - "@asamuzakjp/css-color": "^2.8.2", - "rrweb-cssom": "^0.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/cssstyle/node_modules/rrweb-cssom": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz", - "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==", - "license": "MIT" - }, - "node_modules/csstype": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", - "license": "MIT" - }, - "node_modules/data-urls": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz", - "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==", - "license": "MIT", - "dependencies": { - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/data-view-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", - "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/data-view-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", - "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/inspect-js" - } - }, - "node_modules/data-view-byte-offset": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", - "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/de-indent": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", - "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", - "dev": true, - "license": "MIT" - }, - "node_modules/debug": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", - "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", - "license": "MIT", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decamelize": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-5.0.1.tgz", - "integrity": "sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/decamelize-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", - "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", - "dev": true, - "license": "MIT", - "dependencies": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/decamelize-keys/node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decamelize-keys/node_modules/map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decimal.js": { - "version": "10.5.0", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.5.0.tgz", - "integrity": "sha512-8vDa8Qxvr/+d94hSh5P3IJwI5t8/c0KsMp+g8bNw9cY2icONa5aPfvKeieW1WlG0WQYwwhJ7mjui2xtiePQSXw==", - "license": "MIT" - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/devlop": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", - "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", - "dev": true, - "license": "MIT", - "dependencies": { - "dequal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "license": "MIT", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "BSD-2-Clause" - }, - "node_modules/domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "license": "BSD-2-Clause", - "dependencies": { - "domelementtype": "^2.3.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/domutils": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", - "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", - "license": "BSD-2-Clause", - "dependencies": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/dunder-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", - "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.1", - "es-errors": "^1.3.0", - "gopd": "^1.2.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/electron-to-chromium": { - "version": "1.5.334", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.334.tgz", - "integrity": "sha512-mgjZAz7Jyx1SRCwEpy9wefDS7GvNPazLthHg8eQMJ76wBdGQQDW33TCrUTvQ4wzpmOrv2zrFoD3oNufMdyMpog==", - "dev": true, - "license": "ISC", - "peer": true - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true, - "license": "MIT" - }, - "node_modules/emoji-regex-xs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex-xs/-/emoji-regex-xs-1.0.0.tgz", - "integrity": "sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==", - "dev": true, - "license": "MIT" - }, - "node_modules/encoding-sniffer": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.0.tgz", - "integrity": "sha512-ju7Wq1kg04I3HtiYIOrUrdfdDvkyO9s5XM8QAj/bN61Yo/Vb4vgJxy5vi4Yxk01gWHbrofpPtpxM8bKger9jhg==", - "license": "MIT", - "dependencies": { - "iconv-lite": "^0.6.3", - "whatwg-encoding": "^3.1.1" - }, - "funding": { - "url": "https://github.com/fb55/encoding-sniffer?sponsor=1" - } - }, - "node_modules/enhanced-resolve": { - "version": "5.20.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.20.1.tgz", - "integrity": "sha512-Qohcme7V1inbAfvjItgw0EaxVX5q2rdVEZHRBrEQdRZTssLDGsL8Lwrznl8oQ/6kuTJONLaDcGjkNP247XEhcA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.3.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/es-abstract": { - "version": "1.23.9", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.9.tgz", - "integrity": "sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.2", - "arraybuffer.prototype.slice": "^1.0.4", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "data-view-buffer": "^1.0.2", - "data-view-byte-length": "^1.0.2", - "data-view-byte-offset": "^1.0.1", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-set-tostringtag": "^2.1.0", - "es-to-primitive": "^1.3.0", - "function.prototype.name": "^1.1.8", - "get-intrinsic": "^1.2.7", - "get-proto": "^1.0.0", - "get-symbol-description": "^1.1.0", - "globalthis": "^1.0.4", - "gopd": "^1.2.0", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "internal-slot": "^1.1.0", - "is-array-buffer": "^3.0.5", - "is-callable": "^1.2.7", - "is-data-view": "^1.0.2", - "is-regex": "^1.2.1", - "is-shared-array-buffer": "^1.0.4", - "is-string": "^1.1.1", - "is-typed-array": "^1.1.15", - "is-weakref": "^1.1.0", - "math-intrinsics": "^1.1.0", - "object-inspect": "^1.13.3", - "object-keys": "^1.1.1", - "object.assign": "^4.1.7", - "own-keys": "^1.0.1", - "regexp.prototype.flags": "^1.5.3", - "safe-array-concat": "^1.1.3", - "safe-push-apply": "^1.0.0", - "safe-regex-test": "^1.1.0", - "set-proto": "^1.0.0", - "string.prototype.trim": "^1.2.10", - "string.prototype.trimend": "^1.0.9", - "string.prototype.trimstart": "^1.0.8", - "typed-array-buffer": "^1.0.3", - "typed-array-byte-length": "^1.0.3", - "typed-array-byte-offset": "^1.0.4", - "typed-array-length": "^1.0.7", - "unbox-primitive": "^1.1.0", - "which-typed-array": "^1.1.18" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-define-property": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", - "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-module-lexer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-2.0.0.tgz", - "integrity": "sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/es-object-atoms": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", - "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", - "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-to-primitive": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", - "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-callable": "^1.2.7", - "is-date-object": "^1.0.5", - "is-symbol": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/esbuild": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", - "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.21.5", - "@esbuild/android-arm": "0.21.5", - "@esbuild/android-arm64": "0.21.5", - "@esbuild/android-x64": "0.21.5", - "@esbuild/darwin-arm64": "0.21.5", - "@esbuild/darwin-x64": "0.21.5", - "@esbuild/freebsd-arm64": "0.21.5", - "@esbuild/freebsd-x64": "0.21.5", - "@esbuild/linux-arm": "0.21.5", - "@esbuild/linux-arm64": "0.21.5", - "@esbuild/linux-ia32": "0.21.5", - "@esbuild/linux-loong64": "0.21.5", - "@esbuild/linux-mips64el": "0.21.5", - "@esbuild/linux-ppc64": "0.21.5", - "@esbuild/linux-riscv64": "0.21.5", - "@esbuild/linux-s390x": "0.21.5", - "@esbuild/linux-x64": "0.21.5", - "@esbuild/netbsd-x64": "0.21.5", - "@esbuild/openbsd-x64": "0.21.5", - "@esbuild/sunos-x64": "0.21.5", - "@esbuild/win32-arm64": "0.21.5", - "@esbuild/win32-ia32": "0.21.5", - "@esbuild/win32-x64": "0.21.5" - } - }, - "node_modules/escalade": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint": { - "version": "8.57.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", - "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", - "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.1", - "@humanwhocodes/config-array": "^0.13.0", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "@ungap/structured-clone": "^1.2.0", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "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", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-compat-utils": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/eslint-compat-utils/-/eslint-compat-utils-0.6.4.tgz", - "integrity": "sha512-/u+GQt8NMfXO8w17QendT4gvO5acfxQsAKirAt0LVxDnr2N8YLCVbregaNc/Yhp7NM128DwCaRvr8PLDfeNkQw==", - "dev": true, - "license": "MIT", - "dependencies": { - "semver": "^7.5.4" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "eslint": ">=6.0.0" - } - }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-json-compat-utils": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/eslint-json-compat-utils/-/eslint-json-compat-utils-0.2.1.tgz", - "integrity": "sha512-YzEodbDyW8DX8bImKhAcCeu/L31Dd/70Bidx2Qex9OFUtgzXLqtfWL4Hr5fM/aCCB8QUZLuJur0S9k6UfgFkfg==", - "dev": true, - "license": "MIT", - "dependencies": { - "esquery": "^1.6.0" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "eslint": "*", - "jsonc-eslint-parser": "^2.4.0" - }, - "peerDependenciesMeta": { - "@eslint/json": { - "optional": true - } - } - }, - "node_modules/eslint-module-utils": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", - "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^3.2.7" - }, - "engines": { - "node": ">=4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-antfu": { - "version": "0.39.8", - "resolved": "https://registry.npmjs.org/eslint-plugin-antfu/-/eslint-plugin-antfu-0.39.8.tgz", - "integrity": "sha512-VsQF1mofv0pg+9rhSohNhrxcufOzSsGyQdKqdyJHPMTT2mMwXAPgKW/v8SC6W7UDk1q/j2EHZ+UUOEAKRnkd7g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/utils": "^6.0.0" - } - }, - "node_modules/eslint-plugin-es-x": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-es-x/-/eslint-plugin-es-x-7.8.0.tgz", - "integrity": "sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==", - "dev": true, - "funding": [ - "https://github.com/sponsors/ota-meshi", - "https://opencollective.com/eslint" - ], - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.1.2", - "@eslint-community/regexpp": "^4.11.0", - "eslint-compat-utils": "^0.5.1" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": ">=8" - } - }, - "node_modules/eslint-plugin-es-x/node_modules/eslint-compat-utils": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/eslint-compat-utils/-/eslint-compat-utils-0.5.1.tgz", - "integrity": "sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "semver": "^7.5.4" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "eslint": ">=6.0.0" - } - }, - "node_modules/eslint-plugin-eslint-comments": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz", - "integrity": "sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^1.0.5", - "ignore": "^5.0.5" - }, - "engines": { - "node": ">=6.5.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=4.19.1" - } - }, - "node_modules/eslint-plugin-eslint-comments/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/eslint-plugin-html": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-html/-/eslint-plugin-html-7.1.0.tgz", - "integrity": "sha512-fNLRraV/e6j8e3XYOC9xgND4j+U7b1Rq+OygMlLcMg+wI/IpVbF+ubQa3R78EjKB9njT6TQOlcK5rFKBVVtdfg==", - "dev": true, - "license": "ISC", - "dependencies": { - "htmlparser2": "^8.0.1" - } - }, - "node_modules/eslint-plugin-html/node_modules/htmlparser2": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", - "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", - "dev": true, - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "MIT", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "entities": "^4.4.0" - } - }, - "node_modules/eslint-plugin-import": { - "name": "eslint-plugin-i", - "version": "2.27.5-4", - "resolved": "https://registry.npmjs.org/eslint-plugin-i/-/eslint-plugin-i-2.27.5-4.tgz", - "integrity": "sha512-X3Z+dp9nZw7d/y41EDO6JyFw4WVMOT91SFuoJvL0C0/4M1l6NxQ5mLTjXHuYhq0AazW75pAmj25yMk5wPMzjsw==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.8.0", - "get-tsconfig": "^4.6.0", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "resolve": "^1.22.3", - "semver": "^7.5.3" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://opencollective.com/unts" - }, - "peerDependencies": { - "eslint": "^7.2.0 || ^8" - } - }, - "node_modules/eslint-plugin-import/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/minimatch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", - "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/eslint-plugin-jest": { - "version": "27.9.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.9.0.tgz", - "integrity": "sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/utils": "^5.10.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^5.0.0 || ^6.0.0 || ^7.0.0", - "eslint": "^7.0.0 || ^8.0.0", - "jest": "*" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - }, - "jest": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", - "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-jest/node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/eslint-plugin-jest/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/eslint-plugin-jsonc": { - "version": "2.19.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsonc/-/eslint-plugin-jsonc-2.19.1.tgz", - "integrity": "sha512-MmlAOaZK1+Lg7YoCZPGRjb88ZjT+ct/KTsvcsbZdBm+w8WMzGx+XEmexk0m40P1WV9G2rFV7X3klyRGRpFXEjA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "eslint-compat-utils": "^0.6.0", - "eslint-json-compat-utils": "^0.2.1", - "espree": "^9.6.1", - "graphemer": "^1.4.0", - "jsonc-eslint-parser": "^2.0.4", - "natural-compare": "^1.4.0", - "synckit": "^0.6.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ota-meshi" - }, - "peerDependencies": { - "eslint": ">=6.0.0" - } - }, - "node_modules/eslint-plugin-markdown": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-markdown/-/eslint-plugin-markdown-3.0.1.tgz", - "integrity": "sha512-8rqoc148DWdGdmYF6WSQFT3uQ6PO7zXYgeBpHAOAakX/zpq+NvFYbDA/H7PYzHajwtmaOzAwfxyl++x0g1/N9A==", - "dev": true, - "license": "MIT", - "dependencies": { - "mdast-util-from-markdown": "^0.8.5" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/eslint-plugin-n": { - "version": "16.6.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-16.6.2.tgz", - "integrity": "sha512-6TyDmZ1HXoFQXnhCTUjVFULReoBPOAjpuiKELMkeP40yffI/1ZRO+d9ug/VC6fqISo2WkuIBk3cvuRPALaWlOQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "builtins": "^5.0.1", - "eslint-plugin-es-x": "^7.5.0", - "get-tsconfig": "^4.7.0", - "globals": "^13.24.0", - "ignore": "^5.2.4", - "is-builtin-module": "^3.2.1", - "is-core-module": "^2.12.1", - "minimatch": "^3.1.2", - "resolve": "^1.22.2", - "semver": "^7.5.3" - }, - "engines": { - "node": ">=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=7.0.0" - } - }, - "node_modules/eslint-plugin-n/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/eslint-plugin-n/node_modules/minimatch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", - "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/eslint-plugin-no-only-tests": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-no-only-tests/-/eslint-plugin-no-only-tests-3.3.0.tgz", - "integrity": "sha512-brcKcxGnISN2CcVhXJ/kEQlNa0MEfGRtwKtWA16SkqXHKitaKIMrfemJKLKX1YqDU5C/5JY3PvZXd5jEW04e0Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=5.0.0" - } - }, - "node_modules/eslint-plugin-promise": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.6.0.tgz", - "integrity": "sha512-57Zzfw8G6+Gq7axm2Pdo3gW/Rx3h9Yywgn61uE/3elTCOePEHVrn2i5CdfBwA1BLK0Q0WqctICIUSqXZW/VprQ==", - "dev": true, - "license": "ISC", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0" - } - }, - "node_modules/eslint-plugin-unicorn": { - "version": "48.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-48.0.1.tgz", - "integrity": "sha512-FW+4r20myG/DqFcCSzoumaddKBicIPeFnTrifon2mWIzlfyvzwyqZjqVP7m4Cqr/ZYisS2aiLghkUWaPg6vtCw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.22.5", - "@eslint-community/eslint-utils": "^4.4.0", - "ci-info": "^3.8.0", - "clean-regexp": "^1.0.0", - "esquery": "^1.5.0", - "indent-string": "^4.0.0", - "is-builtin-module": "^3.2.1", - "jsesc": "^3.0.2", - "lodash": "^4.17.21", - "pluralize": "^8.0.0", - "read-pkg-up": "^7.0.1", - "regexp-tree": "^0.1.27", - "regjsparser": "^0.10.0", - "semver": "^7.5.4", - "strip-indent": "^3.0.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1" - }, - "peerDependencies": { - "eslint": ">=8.44.0" - } - }, - "node_modules/eslint-plugin-unused-imports": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-unused-imports/-/eslint-plugin-unused-imports-3.2.0.tgz", - "integrity": "sha512-6uXyn6xdINEpxE1MtDjxQsyXB37lfyO2yKGVVgtD7WEWQGORSOZjgrD6hBhvGv4/SO+TOlS+UnC6JppRqbuwGQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "eslint-rule-composer": "^0.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "@typescript-eslint/eslint-plugin": "6 - 7", - "eslint": "8" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-vue": { - "version": "9.32.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.32.0.tgz", - "integrity": "sha512-b/Y05HYmnB/32wqVcjxjHZzNpwxj1onBOvqW89W+V+XNG1dRuaFbNd3vT9CLbr2LXjEoq+3vn8DanWf7XU22Ug==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "globals": "^13.24.0", - "natural-compare": "^1.4.0", - "nth-check": "^2.1.1", - "postcss-selector-parser": "^6.0.15", - "semver": "^7.6.3", - "vue-eslint-parser": "^9.4.3", - "xml-name-validator": "^4.0.0" - }, - "engines": { - "node": "^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0" - } - }, - "node_modules/eslint-plugin-yml": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-yml/-/eslint-plugin-yml-1.16.0.tgz", - "integrity": "sha512-t4MNCetPjTn18/fUDlQ/wKkcYjnuLYKChBrZ0qUaNqRigVqChHWzTP8SrfFi5s4keX3vdlkWRSu8zHJMdKwxWQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.3.2", - "eslint-compat-utils": "^0.6.0", - "lodash": "^4.17.21", - "natural-compare": "^1.4.0", - "yaml-eslint-parser": "^1.2.1" - }, - "engines": { - "node": "^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ota-meshi" - }, - "peerDependencies": { - "eslint": ">=6.0.0" - } - }, - "node_modules/eslint-rule-composer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz", - "integrity": "sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/eslint/node_modules/minimatch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", - "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esquery": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", - "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "license": "MIT" - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "license": "MIT", - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-glob": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", - "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.8" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-uri": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.6.tgz", - "integrity": "sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fastify" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/fastify" - } - ], - "license": "BSD-3-Clause" - }, - "node_modules/fastest-levenshtein": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", - "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4.9.1" - } - }, - "node_modules/fastq": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.18.0.tgz", - "integrity": "sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==", - "dev": true, - "license": "ISC", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "license": "MIT", - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", - "dev": true, - "license": "MIT", - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flatted": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.2.tgz", - "integrity": "sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==", - "dev": true, - "license": "ISC" - }, - "node_modules/focus-trap": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.6.4.tgz", - "integrity": "sha512-xx560wGBk7seZ6y933idtjJQc1l+ck+pI3sKvhKozdBV1dRZoKhkW5xoCaFv9tQiX5RH1xfSxjuNu6g+lmN/gw==", - "devOptional": true, - "license": "MIT", - "dependencies": { - "tabbable": "^6.2.0" - } - }, - "node_modules/font-awesome": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz", - "integrity": "sha512-U6kGnykA/6bFmg1M/oT9EkFeIYv7JlX3bozwQJWiiLz6L0w3F5vBVPxHlwyX/vtNq1ckcpRKOB9f2Qal/VtFpg==", - "license": "(OFL-1.1 AND MIT)", - "engines": { - "node": ">=0.10.3" - } - }, - "node_modules/for-each": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.4.tgz", - "integrity": "sha512-kKaIINnFpzW6ffJNDjjyjrk21BkDx38c0xa/klsT8VzLCaMEefv4ZTacrcVR4DmgTeBra++jMDAfS/tS799YDw==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-callable": "^1.2.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/form-data": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz", - "integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==", - "license": "MIT", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "es-set-tostringtag": "^2.1.0", - "hasown": "^2.0.2", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true, - "license": "ISC" - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/function.prototype.name": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", - "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "functions-have-names": "^1.2.3", - "hasown": "^2.0.2", - "is-callable": "^1.2.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-intrinsic": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.7.tgz", - "integrity": "sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==", - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.1", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "function-bind": "^1.1.2", - "get-proto": "^1.0.0", - "gopd": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "math-intrinsics": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", - "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", - "license": "MIT", - "dependencies": { - "dunder-proto": "^1.0.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-symbol-description": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", - "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-tsconfig": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.10.0.tgz", - "integrity": "sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==", - "dev": true, - "license": "MIT", - "dependencies": { - "resolve-pkg-maps": "^1.0.0" - }, - "funding": { - "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" - } - }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true, - "license": "BSD-2-Clause", - "peer": true - }, - "node_modules/glob/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/glob/node_modules/minimatch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", - "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/global-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", - "dev": true, - "license": "MIT", - "dependencies": { - "global-prefix": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/global-prefix/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globalthis": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-properties": "^1.2.1", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globjoin": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", - "integrity": "sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==", - "dev": true, - "license": "MIT" - }, - "node_modules/gopd": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", - "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true, - "license": "MIT" - }, - "node_modules/hard-rejection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", - "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/has-bigints": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", - "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", - "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "dunder-proto": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", - "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "license": "MIT", - "dependencies": { - "has-symbols": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/hast-util-to-html": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.4.tgz", - "integrity": "sha512-wxQzXtdbhiwGAUKrnQJXlOPmHnEehzphwkK7aluUPQ+lEc1xefC8pblMgpp2w5ldBTEfveRIrADcrhGIWrlTDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "ccount": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-whitespace": "^3.0.0", - "html-void-elements": "^3.0.0", - "mdast-util-to-hast": "^13.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "stringify-entities": "^4.0.0", - "zwitch": "^2.0.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-html/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/hast-util-whitespace": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", - "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true, - "license": "MIT", - "bin": { - "he": "bin/he" - } - }, - "node_modules/hookable": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz", - "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true, - "license": "ISC" - }, - "node_modules/html-encoding-sniffer": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", - "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==", - "license": "MIT", - "dependencies": { - "whatwg-encoding": "^3.1.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/html-parse-stringify": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/html-parse-stringify/-/html-parse-stringify-3.0.1.tgz", - "integrity": "sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==", - "license": "MIT", - "dependencies": { - "void-elements": "3.1.0" - } - }, - "node_modules/html-tags": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", - "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/html-to-text": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/html-to-text/-/html-to-text-9.0.5.tgz", - "integrity": "sha512-qY60FjREgVZL03vJU6IfMV4GDjGBIoOyvuFdpBDIX9yTlDw0TjxVBQp+P8NvpdIXNJvfWBTNul7fsAQJq2FNpg==", - "license": "MIT", - "dependencies": { - "@selderee/plugin-htmlparser2": "^0.11.0", - "deepmerge": "^4.3.1", - "dom-serializer": "^2.0.0", - "htmlparser2": "^8.0.2", - "selderee": "^0.11.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/html-to-text/node_modules/htmlparser2": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", - "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "MIT", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "entities": "^4.4.0" - } - }, - "node_modules/html-void-elements": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", - "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/htmlparser2": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.1.0.tgz", - "integrity": "sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==", - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "MIT", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.1.0", - "entities": "^4.5.0" - } - }, - "node_modules/http-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", - "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", - "license": "MIT", - "dependencies": { - "agent-base": "^7.1.0", - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "license": "MIT", - "dependencies": { - "agent-base": "^7.1.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "license": "MIT", - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/import-lazy": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", - "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", - "dev": true, - "license": "ISC", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true, - "license": "ISC" - }, - "node_modules/internal-slot": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", - "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "hasown": "^2.0.2", - "side-channel": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-alphabetical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", - "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-alphanumerical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", - "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", - "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true, - "license": "MIT" - }, - "node_modules/is-async-function": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", - "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "async-function": "^1.0.0", - "call-bound": "^1.0.3", - "get-proto": "^1.0.1", - "has-tostringtag": "^1.0.2", - "safe-regex-test": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-bigint": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", - "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-bigints": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "license": "MIT", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-boolean-object": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.1.tgz", - "integrity": "sha512-l9qO6eFlUETHtuihLcYOaLKByJ1f+N4kthcU9YjHy3N+B3hWv0y/2Nd0mu/7lTFnRQHTrSdXF50HQ3bl5fEnng==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-builtin-module": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", - "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", - "dev": true, - "license": "MIT", - "dependencies": { - "builtin-modules": "^3.3.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.16.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", - "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", - "dev": true, - "license": "MIT", - "dependencies": { - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-data-view": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", - "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", - "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-decimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", - "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-finalizationregistry": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", - "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-generator-function": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", - "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "get-proto": "^1.0.0", - "has-tostringtag": "^1.0.2", - "safe-regex-test": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-hexadecimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", - "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", - "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-number-object": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", - "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "license": "MIT" - }, - "node_modules/is-regex": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", - "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-set": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", - "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", - "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-string": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", - "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", - "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "has-symbols": "^1.1.0", - "safe-regex-test": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", - "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "which-typed-array": "^1.1.16" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakmap": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", - "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.0.tgz", - "integrity": "sha512-SXM8Nwyys6nT5WP6pltOwKytLV7FqQ4UiibxVmW+EIosHcmCqkkjViTb5SNssDlkCiEYRP1/pdWUKVvZBmsR2Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakset": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", - "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-what": { - "version": "4.1.16", - "resolved": "https://registry.npmjs.org/is-what/-/is-what-4.1.16.tgz", - "integrity": "sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12.13" - }, - "funding": { - "url": "https://github.com/sponsors/mesqueeb" - } - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true, - "license": "MIT" - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true, - "license": "ISC" - }, - "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/js-tokens": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.1.tgz", - "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/js-yaml": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", - "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsdom": { - "version": "24.1.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", - "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", - "license": "MIT", - "dependencies": { - "cssstyle": "^4.0.1", - "data-urls": "^5.0.0", - "decimal.js": "^10.4.3", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^4.0.0", - "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.5", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.12", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.7.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.4", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^3.1.1", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", - "ws": "^8.18.0", - "xml-name-validator": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "canvas": "^2.11.2" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsdom/node_modules/xml-name-validator": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", - "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", - "license": "Apache-2.0", - "engines": { - "node": ">=18" - } - }, - "node_modules/jsesc": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", - "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", - "dev": true, - "license": "MIT", - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true, - "license": "MIT" - }, - "node_modules/jsonc-eslint-parser": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonc-eslint-parser/-/jsonc-eslint-parser-2.4.0.tgz", - "integrity": "sha512-WYDyuc/uFcGp6YtM2H0uKmUwieOuzeE/5YocFJLnLfclZ4inf3mRn8ZVy1s7Hxji7Jxm6Ss8gqpexD/GlKoGgg==", - "dev": true, - "license": "MIT", - "dependencies": { - "acorn": "^8.5.0", - "eslint-visitor-keys": "^3.0.0", - "espree": "^9.0.0", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ota-meshi" - } - }, - "node_modules/jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", - "engines": [ - "node >= 0.2.0" - ], - "license": "MIT" - }, - "node_modules/JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", - "license": "(MIT OR Apache-2.0)", - "dependencies": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - }, - "bin": { - "JSONStream": "bin.js" - }, - "engines": { - "node": "*" - } - }, - "node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, - "license": "MIT", - "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/known-css-properties": { - "version": "0.29.0", - "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.29.0.tgz", - "integrity": "sha512-Ne7wqW7/9Cz54PDt4I3tcV+hAyat8ypyOGzYRJQfdxnnjeWsTxt1cy8pjvvKeI5kfXuyvULyeeAvwvvtAX3ayQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/kolorist": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", - "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/leac": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/leac/-/leac-0.6.0.tgz", - "integrity": "sha512-y+SqErxb8h7nE/fiEX07jsbuhrpO9lL8eca7/Y1nuWV2moNlXhyd59iDGcRf6moVyDMbmTNzL40SUyrFU/yDpg==", - "license": "MIT", - "funding": { - "url": "https://ko-fi.com/killymxi" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true, - "license": "MIT" - }, - "node_modules/load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/loader-runner": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.1.tgz", - "integrity": "sha512-IWqP2SCPhyVFTBtRcgMHdzlf9ul25NwaFx4wCEH/KjAXuuHY4yNjvPXsBokp8jCB936PyWRaPKUNh8NvylLp2Q==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.11.5" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/local-pkg": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.3.tgz", - "integrity": "sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz", - "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", - "dev": true, - "license": "MIT" - }, - "node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - "license": "ISC" - }, - "node_modules/magic-string": { - "version": "0.30.17", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", - "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", - "license": "MIT", - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.0" - } - }, - "node_modules/map-obj": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", - "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/mark.js": { - "version": "8.11.1", - "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", - "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/math-intrinsics": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", - "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/mathml-tag-names": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", - "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/mdast-util-from-markdown": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", - "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-to-string": "^2.0.0", - "micromark": "~2.11.0", - "parse-entities": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast": { - "version": "13.2.1", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.1.tgz", - "integrity": "sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "@ungap/structured-clone": "^1.0.0", - "devlop": "^1.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "trim-lines": "^3.0.0", - "unist-util-position": "^5.0.0", - "unist-util-visit": "^5.0.0", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast/node_modules/@types/mdast": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", - "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/mdast-util-to-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", - "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==", - "dev": true, - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdn-data": { - "version": "2.0.30", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", - "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", - "dev": true, - "license": "CC0-1.0" - }, - "node_modules/memorystream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", - "dev": true, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/meow": { - "version": "10.1.5", - "resolved": "https://registry.npmjs.org/meow/-/meow-10.1.5.tgz", - "integrity": "sha512-/d+PQ4GKmGvM9Bee/DPa8z3mXs/pkvJE2KEThngVNOqtmljC6K7NMPxtc2JeZYTmpWb9k/TmxjeL18ez3h7vCw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/minimist": "^1.2.2", - "camelcase-keys": "^7.0.0", - "decamelize": "^5.0.0", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.2", - "read-pkg-up": "^8.0.0", - "redent": "^4.0.0", - "trim-newlines": "^4.0.2", - "type-fest": "^1.2.2", - "yargs-parser": "^20.2.9" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/meow/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/meow/node_modules/normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/meow/node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/read-pkg": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-6.0.0.tgz", - "integrity": "sha512-X1Fu3dPuk/8ZLsMhEj5f4wFAF0DWoK7qhGJvgaijocXxBmSToKfbFtqbxMO7bVjNA1dmE5huAzjXj/ey86iw9Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^3.0.2", - "parse-json": "^5.2.0", - "type-fest": "^1.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/read-pkg-up": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-8.0.0.tgz", - "integrity": "sha512-snVCqPczksT0HS2EC+SxUndvSzn6LRCwpfSvLrIfR5BKDQQZMaI6jPRC9dYvYFDRAuFEAnkwww8kBBNE/3VvzQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "find-up": "^5.0.0", - "read-pkg": "^6.0.0", - "type-fest": "^1.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true, - "license": "MIT" - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/micromark": { - "version": "2.11.4", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", - "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "debug": "^4.0.0", - "parse-entities": "^2.0.0" - } - }, - "node_modules/micromark-util-character": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz", - "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-encode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", - "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "node_modules/micromark-util-sanitize-uri": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", - "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/micromark-util-symbol": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", - "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "node_modules/micromark-util-types": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.1.tgz", - "integrity": "sha512-534m2WhVTddrcKVepwmVEVnUAmtrx9bfIjNoQHRqfnvdaHQiFytEhJoTgpWJvDEXCO5gLTQh3wYC1PgOJA4NSQ==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "license": "MIT", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/minimist-options": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", - "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", - "dev": true, - "license": "MIT", - "dependencies": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/minisearch": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/minisearch/-/minisearch-7.1.1.tgz", - "integrity": "sha512-b3YZEYCEH4EdCAtYP7OlDyx7FdPwNzuNwLQ34SfJpM9dlbBZzeXndGavTrC+VCiRWomL21SWfMc6SCKO/U2ZNw==", - "dev": true, - "license": "MIT" - }, - "node_modules/mitt": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", - "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", - "dev": true, - "license": "MIT" - }, - "node_modules/mlly": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.4.tgz", - "integrity": "sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==", - "dev": true, - "license": "MIT", - "dependencies": { - "acorn": "^8.14.0", - "pathe": "^2.0.1", - "pkg-types": "^1.3.0", - "ufo": "^1.5.4" - } - }, - "node_modules/mlly/node_modules/pathe": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.2.tgz", - "integrity": "sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==", - "dev": true, - "license": "MIT" - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "license": "MIT" - }, - "node_modules/muggle-string": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.4.1.tgz", - "integrity": "sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/nanoid": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", - "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true, - "license": "MIT" - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true, - "license": "MIT" - }, - "node_modules/nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/node-releases": { - "version": "2.0.37", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.37.tgz", - "integrity": "sha512-1h5gKZCF+pO/o3Iqt5Jp7wc9rH3eJJ0+nh/CIoiRwjRxde/hAHyLPXYN4V3CqKAbiZPSeJFSWHmJsbkicta0Eg==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-all": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", - "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "memorystream": "^0.3.1", - "minimatch": "^3.0.4", - "pidtree": "^0.3.0", - "read-pkg": "^3.0.0", - "shell-quote": "^1.6.1", - "string.prototype.padend": "^3.0.0" - }, - "bin": { - "npm-run-all": "bin/npm-run-all/index.js", - "run-p": "bin/run-p/index.js", - "run-s": "bin/run-s/index.js" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/npm-run-all/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-run-all/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/npm-run-all/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-run-all/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/npm-run-all/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true, - "license": "MIT" - }, - "node_modules/npm-run-all/node_modules/cross-spawn": { - "version": "6.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", - "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", - "dev": true, - "license": "MIT", - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "engines": { - "node": ">=4.8" - } - }, - "node_modules/npm-run-all/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/npm-run-all/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-run-all/node_modules/minimatch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", - "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/npm-run-all/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-run-all/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/npm-run-all/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-all/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-all/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-run-all/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "license": "BSD-2-Clause", - "dependencies": { - "boolbase": "^1.0.0" - }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" - } - }, - "node_modules/nwsapi": { - "version": "2.2.16", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.16.tgz", - "integrity": "sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==", - "license": "MIT" - }, - "node_modules/object-inspect": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.3.tgz", - "integrity": "sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", - "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0", - "has-symbols": "^1.1.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "license": "ISC", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/oniguruma-to-es": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-2.3.0.tgz", - "integrity": "sha512-bwALDxriqfKGfUufKGGepCzu9x7nJQuoRoAFp4AnwehhC2crqrDIAP/uN2qdlsAvSMpeRC3+Yzhqc7hLmle5+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex-xs": "^1.0.0", - "regex": "^5.1.1", - "regex-recursion": "^5.1.1" - } - }, - "node_modules/optionator": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", - "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.5" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/own-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", - "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.6", - "object-keys": "^1.1.1", - "safe-push-apply": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/package-manager-detector": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-0.2.8.tgz", - "integrity": "sha512-ts9KSdroZisdvKMWVAVCXiKqnqNfXz4+IbrBG8/BWx/TR5le+jfenvoBuIZ6UWM9nz47W7AbD9qYfAwfWMIwzA==", - "dev": true, - "license": "MIT" - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", - "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", - "dev": true, - "license": "MIT", - "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/parse5": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.2.1.tgz", - "integrity": "sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==", - "license": "MIT", - "dependencies": { - "entities": "^4.5.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/parse5-htmlparser2-tree-adapter": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.1.0.tgz", - "integrity": "sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==", - "license": "MIT", - "dependencies": { - "domhandler": "^5.0.3", - "parse5": "^7.0.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/parse5-parser-stream": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5-parser-stream/-/parse5-parser-stream-7.1.2.tgz", - "integrity": "sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==", - "license": "MIT", - "dependencies": { - "parse5": "^7.0.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/parseley": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/parseley/-/parseley-0.12.1.tgz", - "integrity": "sha512-e6qHKe3a9HWr0oMRVDTRhKce+bRO8VGQR3NyVwcjwrbhMmFCX9KszEV35+rn4AdilFAq9VPxP/Fe1wC9Qjd2lw==", - "license": "MIT", - "dependencies": { - "leac": "^0.6.0", - "peberminta": "^0.9.0" - }, - "funding": { - "url": "https://ko-fi.com/killymxi" - } - }, - "node_modules/path-browserify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", - "dev": true, - "license": "MIT" - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true, - "license": "MIT" - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/pathe": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", - "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/peberminta": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/peberminta/-/peberminta-0.9.0.tgz", - "integrity": "sha512-XIxfHpEuSJbITd1H3EeQwpcZbTLHc+VVr8ANI9t5sit565tsI4/xK3KWTUFE2e6QiangUkh3B0jihzmGnNrRsQ==", - "license": "MIT", - "funding": { - "url": "https://ko-fi.com/killymxi" - } - }, - "node_modules/perfect-debounce": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz", - "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==", - "dev": true, - "license": "MIT" - }, - "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", - "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pidtree": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", - "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", - "dev": true, - "license": "MIT", - "bin": { - "pidtree": "bin/pidtree.js" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/pinia": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.3.1.tgz", - "integrity": "sha512-khUlZSwt9xXCaTbbxFYBKDc/bWAGWJjOgvxETwkTN7KRm66EeT1ZdZj6i2ceh9sP2Pzqsbc704r2yngBrxBVug==", - "license": "MIT", - "dependencies": { - "@vue/devtools-api": "^6.6.3", - "vue-demi": "^0.14.10" - }, - "funding": { - "url": "https://github.com/sponsors/posva" - }, - "peerDependencies": { - "typescript": ">=4.4.4", - "vue": "^2.7.0 || ^3.5.11" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/pkg-types": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz", - "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "confbox": "^0.1.8", - "mlly": "^1.7.4", - "pathe": "^2.0.1" - } - }, - "node_modules/pkg-types/node_modules/pathe": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.2.tgz", - "integrity": "sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==", - "dev": true, - "license": "MIT" - }, - "node_modules/pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/possible-typed-array-names": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", - "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/postcss": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.1.tgz", - "integrity": "sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "nanoid": "^3.3.8", - "picocolors": "^1.1.1", - "source-map-js": "^1.2.1" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/postcss-html": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-1.8.0.tgz", - "integrity": "sha512-5mMeb1TgLWoRKxZ0Xh9RZDfwUUIqRrcxO2uXO+Ezl1N5lqpCiSU5Gk6+1kZediBfBHFtPCdopr2UZ2SgUsKcgQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "htmlparser2": "^8.0.0", - "js-tokens": "^9.0.0", - "postcss": "^8.5.0", - "postcss-safe-parser": "^6.0.0" - }, - "engines": { - "node": "^12 || >=14" - } - }, - "node_modules/postcss-html/node_modules/htmlparser2": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", - "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", - "dev": true, - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "MIT", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "entities": "^4.4.0" - } - }, - "node_modules/postcss-media-query-parser": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", - "integrity": "sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==", - "dev": true, - "license": "MIT" - }, - "node_modules/postcss-resolve-nested-selector": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.6.tgz", - "integrity": "sha512-0sglIs9Wmkzbr8lQwEyIzlDOOC9bGmfVKcJTaxv3vMmd3uo4o4DerC3En0bnmgceeql9BfC8hRkp7cg0fjdVqw==", - "dev": true, - "license": "MIT" - }, - "node_modules/postcss-safe-parser": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz", - "integrity": "sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.3.3" - } - }, - "node_modules/postcss-scss": { - "version": "4.0.9", - "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.9.tgz", - "integrity": "sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss-scss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "engines": { - "node": ">=12.0" - }, - "peerDependencies": { - "postcss": "^8.4.29" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", - "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", - "dev": true, - "license": "MIT", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/preact": { - "version": "10.25.4", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.25.4.tgz", - "integrity": "sha512-jLdZDb+Q+odkHJ+MpW/9U5cODzqnB+fy2EiHSZES7ldV5LK7yjlVzTp7R8Xy6W6y75kfK8iWYtFVH7lvjwrCMA==", - "dev": true, - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/preact" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/property-information": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.5.0.tgz", - "integrity": "sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/psl": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.15.0.tgz", - "integrity": "sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==", - "license": "MIT", - "dependencies": { - "punycode": "^2.3.1" - }, - "funding": { - "url": "https://github.com/sponsors/lupomontero" - } - }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", - "license": "MIT" - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", - "dev": true, - "license": "MIT", - "dependencies": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "dev": true, - "license": "MIT", - "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/read-pkg/node_modules/type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg/node_modules/path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "license": "MIT", - "dependencies": { - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "license": "MIT", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/redent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-4.0.0.tgz", - "integrity": "sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==", - "dev": true, - "license": "MIT", - "dependencies": { - "indent-string": "^5.0.0", - "strip-indent": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/redent/node_modules/indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/redent/node_modules/strip-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.0.0.tgz", - "integrity": "sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==", - "dev": true, - "license": "MIT", - "dependencies": { - "min-indent": "^1.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/reflect.getprototypeof": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", - "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.9", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.7", - "get-proto": "^1.0.1", - "which-builtin-type": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/regex": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/regex/-/regex-5.1.1.tgz", - "integrity": "sha512-dN5I359AVGPnwzJm2jN1k0W9LPZ+ePvoOeVMMfqIMFz53sSwXkxaJoxr50ptnsC771lK95BnTrVSZxq0b9yCGw==", - "dev": true, - "license": "MIT", - "dependencies": { - "regex-utilities": "^2.3.0" - } - }, - "node_modules/regex-recursion": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-5.1.1.tgz", - "integrity": "sha512-ae7SBCbzVNrIjgSbh7wMznPcQel1DNlDtzensnFxpiNpXt1U2ju/bHugH422r+4LAVS1FpW1YCwilmnNsjum9w==", - "dev": true, - "license": "MIT", - "dependencies": { - "regex": "^5.1.1", - "regex-utilities": "^2.3.0" - } - }, - "node_modules/regex-utilities": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/regex-utilities/-/regex-utilities-2.3.0.tgz", - "integrity": "sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==", - "dev": true, - "license": "MIT" - }, - "node_modules/regexp-tree": { - "version": "0.1.27", - "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.27.tgz", - "integrity": "sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==", - "dev": true, - "license": "MIT", - "bin": { - "regexp-tree": "bin/regexp-tree" - } - }, - "node_modules/regexp.prototype.flags": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", - "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "set-function-name": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/regjsparser": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.10.0.tgz", - "integrity": "sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "jsesc": "~0.5.0" - }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "license": "MIT" - }, - "node_modules/resolve": { - "version": "1.22.10", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", - "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-core-module": "^2.16.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/resolve-pkg-maps": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", - "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "license": "MIT", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rfdc": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", - "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", - "dev": true, - "license": "MIT" - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", - "dev": true, - "license": "ISC", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rollup": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.60.1.tgz", - "integrity": "sha512-VmtB2rFU/GroZ4oL8+ZqXgSA38O6GR8KSIvWmEFv63pQ0G6KaBH9s07PO8XTXP4vI+3UJUEypOfjkGfmSBBR0w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "1.0.8" - }, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.60.1", - "@rollup/rollup-android-arm64": "4.60.1", - "@rollup/rollup-darwin-arm64": "4.60.1", - "@rollup/rollup-darwin-x64": "4.60.1", - "@rollup/rollup-freebsd-arm64": "4.60.1", - "@rollup/rollup-freebsd-x64": "4.60.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.60.1", - "@rollup/rollup-linux-arm-musleabihf": "4.60.1", - "@rollup/rollup-linux-arm64-gnu": "4.60.1", - "@rollup/rollup-linux-arm64-musl": "4.60.1", - "@rollup/rollup-linux-loong64-gnu": "4.60.1", - "@rollup/rollup-linux-loong64-musl": "4.60.1", - "@rollup/rollup-linux-ppc64-gnu": "4.60.1", - "@rollup/rollup-linux-ppc64-musl": "4.60.1", - "@rollup/rollup-linux-riscv64-gnu": "4.60.1", - "@rollup/rollup-linux-riscv64-musl": "4.60.1", - "@rollup/rollup-linux-s390x-gnu": "4.60.1", - "@rollup/rollup-linux-x64-gnu": "4.60.1", - "@rollup/rollup-linux-x64-musl": "4.60.1", - "@rollup/rollup-openbsd-x64": "4.60.1", - "@rollup/rollup-openharmony-arm64": "4.60.1", - "@rollup/rollup-win32-arm64-msvc": "4.60.1", - "@rollup/rollup-win32-ia32-msvc": "4.60.1", - "@rollup/rollup-win32-x64-gnu": "4.60.1", - "@rollup/rollup-win32-x64-msvc": "4.60.1", - "fsevents": "~2.3.2" - } - }, - "node_modules/rrweb-cssom": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.7.1.tgz", - "integrity": "sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==", - "license": "MIT" - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/safe-array-concat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", - "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", - "has-symbols": "^1.1.0", - "isarray": "^2.0.5" - }, - "engines": { - "node": ">=0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-push-apply": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", - "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "isarray": "^2.0.5" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-regex-test": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", - "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-regex": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "license": "MIT" - }, - "node_modules/sass": { - "version": "1.32.13", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.13.tgz", - "integrity": "sha512-dEgI9nShraqP7cXQH+lEXVf73WOPCse0QlFzSD8k+1TcOxCMwVXfQlr0jtoluZysQOyJGnfr21dLvYKDJq8HkA==", - "dev": true, - "license": "MIT", - "dependencies": { - "chokidar": ">=3.0.0 <4.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/sass-loader": { - "version": "13.3.3", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.3.3.tgz", - "integrity": "sha512-mt5YN2F1MOZr3d/wBRcZxeFgwgkH44wVc2zohO2YF6JiOMkiXe4BYRZpSu2sO1g71mo/j16txzUhsKZlqjVGzA==", - "dev": true, - "license": "MIT", - "dependencies": { - "neo-async": "^2.6.2" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "fibers": ">= 3.1.0", - "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", - "sass": "^1.3.0", - "sass-embedded": "*", - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "fibers": { - "optional": true - }, - "node-sass": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - } - } - }, - "node_modules/sax": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", - "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", - "license": "ISC" - }, - "node_modules/saxes": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", - "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", - "license": "ISC", - "dependencies": { - "xmlchars": "^2.2.0" - }, - "engines": { - "node": ">=v12.22.7" - } - }, - "node_modules/schema-utils": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.3.tgz", - "integrity": "sha512-eflK8wEtyOE6+hsaRVPxvUKYCpRgzLqDTb8krvAsRIwOGlHoSgYLgBXoubGgLd2fT41/OUYdb48v4k4WWHQurA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/schema-utils/node_modules/ajv": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz", - "integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/schema-utils/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/schema-utils/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/scule": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/scule/-/scule-1.3.0.tgz", - "integrity": "sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==", - "dev": true, - "license": "MIT" - }, - "node_modules/search-insights": { - "version": "2.17.3", - "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-2.17.3.tgz", - "integrity": "sha512-RQPdCYTa8A68uM2jwxoY842xDhvx3E5LFL1LxvxCNMev4o5mLuokczhzjAgGwUZBAmOKZknArSxLKmXtIi2AxQ==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/selderee": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/selderee/-/selderee-0.11.0.tgz", - "integrity": "sha512-5TF+l7p4+OsnP8BCCvSyZiSPc4x4//p5uPwK8TCnVPJYRmU2aYKMpOXvw8zM5a5JvuuCGN1jmsMwuU2W02ukfA==", - "license": "MIT", - "dependencies": { - "parseley": "^0.12.0" - }, - "funding": { - "url": "https://ko-fi.com/killymxi" - } - }, - "node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/set-function-length": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", - "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/set-function-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", - "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/set-proto": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", - "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", - "dev": true, - "license": "MIT", - "dependencies": { - "dunder-proto": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/shell-quote": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.2.tgz", - "integrity": "sha512-AzqKpGKjrj7EM6rKVQEPpB288oCfnrEIuyoT9cyF4nmGa7V8Zk6f7RRqYisX8X9m+Q7bd632aZW4ky7EhbQztA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/shiki": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-2.1.0.tgz", - "integrity": "sha512-yvKPdNGLXZv7WC4bl7JBbU3CEcUxnBanvMez8MG3gZXKpClGL4bHqFyLhTx+2zUvbjClUANs/S22HXb7aeOgmA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/core": "2.1.0", - "@shikijs/engine-javascript": "2.1.0", - "@shikijs/engine-oniguruma": "2.1.0", - "@shikijs/langs": "2.1.0", - "@shikijs/themes": "2.1.0", - "@shikijs/types": "2.1.0", - "@shikijs/vscode-textmate": "^10.0.1", - "@types/hast": "^3.0.4" - } - }, - "node_modules/side-channel": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", - "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3", - "side-channel-list": "^1.0.0", - "side-channel-map": "^1.0.1", - "side-channel-weakmap": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-list": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", - "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", - "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-weakmap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", - "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3", - "side-channel-map": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-js": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/space-separated-tokens": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", - "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/spdx-correct": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", - "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", - "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", - "dev": true, - "license": "CC-BY-3.0" - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.21", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.21.tgz", - "integrity": "sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==", - "dev": true, - "license": "CC0-1.0" - }, - "node_modules/speakingurl": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz", - "integrity": "sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string.prototype.padend": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz", - "integrity": "sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trim": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", - "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "define-data-property": "^1.1.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-object-atoms": "^1.0.0", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", - "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", - "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/stringify-entities": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", - "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", - "dev": true, - "license": "MIT", - "dependencies": { - "character-entities-html4": "^2.0.0", - "character-entities-legacy": "^3.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/stringify-entities/node_modules/character-entities-legacy": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", - "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "min-indent": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/strip-literal": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-2.1.1.tgz", - "integrity": "sha512-631UJ6O00eNGfMiWG78ck80dfBab8X6IVFB51jZK5Icd7XAs60Z5y7QdSd/wGIklnWvRbUNloVzhOKKmutxQ6Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "js-tokens": "^9.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/style-search": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", - "integrity": "sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==", - "dev": true, - "license": "ISC" - }, - "node_modules/stylelint": { - "version": "15.11.0", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.11.0.tgz", - "integrity": "sha512-78O4c6IswZ9TzpcIiQJIN49K3qNoXTM8zEJzhaTE/xRTCZswaovSEVIa/uwbOltZrk16X4jAxjaOhzz/hTm1Kw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@csstools/css-parser-algorithms": "^2.3.1", - "@csstools/css-tokenizer": "^2.2.0", - "@csstools/media-query-list-parser": "^2.1.4", - "@csstools/selector-specificity": "^3.0.0", - "balanced-match": "^2.0.0", - "colord": "^2.9.3", - "cosmiconfig": "^8.2.0", - "css-functions-list": "^3.2.1", - "css-tree": "^2.3.1", - "debug": "^4.3.4", - "fast-glob": "^3.3.1", - "fastest-levenshtein": "^1.0.16", - "file-entry-cache": "^7.0.0", - "global-modules": "^2.0.0", - "globby": "^11.1.0", - "globjoin": "^0.1.4", - "html-tags": "^3.3.1", - "ignore": "^5.2.4", - "import-lazy": "^4.0.0", - "imurmurhash": "^0.1.4", - "is-plain-object": "^5.0.0", - "known-css-properties": "^0.29.0", - "mathml-tag-names": "^2.1.3", - "meow": "^10.1.5", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "picocolors": "^1.0.0", - "postcss": "^8.4.28", - "postcss-resolve-nested-selector": "^0.1.1", - "postcss-safe-parser": "^6.0.0", - "postcss-selector-parser": "^6.0.13", - "postcss-value-parser": "^4.2.0", - "resolve-from": "^5.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "style-search": "^0.1.0", - "supports-hyperlinks": "^3.0.0", - "svg-tags": "^1.0.0", - "table": "^6.8.1", - "write-file-atomic": "^5.0.1" - }, - "bin": { - "stylelint": "bin/stylelint.mjs" - }, - "engines": { - "node": "^14.13.1 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/stylelint" - } - }, - "node_modules/stylelint-config-html": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/stylelint-config-html/-/stylelint-config-html-1.1.0.tgz", - "integrity": "sha512-IZv4IVESjKLumUGi+HWeb7skgO6/g4VMuAYrJdlqQFndgbj6WJAXPhaysvBiXefX79upBdQVumgYcdd17gCpjQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12 || >=14" - }, - "funding": { - "url": "https://github.com/sponsors/ota-meshi" - }, - "peerDependencies": { - "postcss-html": "^1.0.0", - "stylelint": ">=14.0.0" - } - }, - "node_modules/stylelint-config-recommended": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-12.0.0.tgz", - "integrity": "sha512-x6x8QNARrGO2sG6iURkzqL+Dp+4bJorPMMRNPScdvaUK8PsynriOcMW7AFDKqkWAS5wbue/u8fUT/4ynzcmqdQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "stylelint": "^15.5.0" - } - }, - "node_modules/stylelint-config-recommended-scss": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-12.0.0.tgz", - "integrity": "sha512-5Bb2mlGy6WLa30oNeKpZvavv2lowJUsUJO25+OA68GFTemlwd1zbFsL7q0bReKipOSU3sG47hKneZ6Nd+ctrFA==", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-scss": "^4.0.6", - "stylelint-config-recommended": "^12.0.0", - "stylelint-scss": "^5.0.0" - }, - "peerDependencies": { - "postcss": "^8.3.3", - "stylelint": "^15.5.0" - }, - "peerDependenciesMeta": { - "postcss": { - "optional": true - } - } - }, - "node_modules/stylelint-config-recommended-vue": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended-vue/-/stylelint-config-recommended-vue-1.6.0.tgz", - "integrity": "sha512-syk1adIHvbH2T1OiR/spUK4oQy35PZIDw8Zmc7E0+eVK9Z9SK3tdMpGRT/bgGnAPpMt/WaL9K1u0tlF6xM0sMQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "semver": "^7.3.5", - "stylelint-config-html": ">=1.0.0", - "stylelint-config-recommended": ">=6.0.0" - }, - "engines": { - "node": "^12 || >=14" - }, - "funding": { - "url": "https://github.com/sponsors/ota-meshi" - }, - "peerDependencies": { - "postcss-html": "^1.0.0", - "stylelint": ">=14.0.0" - } - }, - "node_modules/stylelint-config-standard": { - "version": "33.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-33.0.0.tgz", - "integrity": "sha512-eyxnLWoXImUn77+ODIuW9qXBDNM+ALN68L3wT1lN2oNspZ7D9NVGlNHb2QCUn4xDug6VZLsh0tF8NyoYzkgTzg==", - "dev": true, - "license": "MIT", - "dependencies": { - "stylelint-config-recommended": "^12.0.0" - }, - "peerDependencies": { - "stylelint": "^15.5.0" - } - }, - "node_modules/stylelint-config-standard-scss": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-9.0.0.tgz", - "integrity": "sha512-yPKpJsrZn4ybuQZx/DkEHuCjw7pJginErE/47dFhCnrvD48IJ4UYec8tSiCuJWMA3HRjbIa3nh5ZeSauDGuVAg==", - "dev": true, - "license": "MIT", - "dependencies": { - "stylelint-config-recommended-scss": "^11.0.0", - "stylelint-config-standard": "^33.0.0" - }, - "peerDependencies": { - "postcss": "^8.3.3", - "stylelint": "^15.5.0" - }, - "peerDependenciesMeta": { - "postcss": { - "optional": true - } - } - }, - "node_modules/stylelint-config-standard-scss/node_modules/stylelint-config-recommended-scss": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-11.0.0.tgz", - "integrity": "sha512-EDghTDU7aOv2LTsRZvcT1w8mcjUaMhuy+t38iV5I/0Qiu6ixdkRwhLEMul3K/fnB2v9Nwqvb3xpvJfPH+HduDw==", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-scss": "^4.0.6", - "stylelint-config-recommended": "^12.0.0", - "stylelint-scss": "^4.6.0" - }, - "peerDependencies": { - "postcss": "^8.3.3", - "stylelint": "^15.5.0" - }, - "peerDependenciesMeta": { - "postcss": { - "optional": true - } - } - }, - "node_modules/stylelint-config-standard-scss/node_modules/stylelint-scss": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.7.0.tgz", - "integrity": "sha512-TSUgIeS0H3jqDZnby1UO1Qv3poi1N8wUYIJY6D1tuUq2MN3lwp/rITVo0wD+1SWTmRm0tNmGO0b7nKInnqF6Hg==", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-media-query-parser": "^0.2.3", - "postcss-resolve-nested-selector": "^0.1.1", - "postcss-selector-parser": "^6.0.11", - "postcss-value-parser": "^4.2.0" - }, - "peerDependencies": { - "stylelint": "^14.5.1 || ^15.0.0" - } - }, - "node_modules/stylelint-scss": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-5.3.2.tgz", - "integrity": "sha512-4LzLaayFhFyneJwLo0IUa8knuIvj+zF0vBFueQs4e3tEaAMIQX8q5th8ziKkgOavr6y/y9yoBe+RXN/edwLzsQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "known-css-properties": "^0.29.0", - "postcss-media-query-parser": "^0.2.3", - "postcss-resolve-nested-selector": "^0.1.1", - "postcss-selector-parser": "^6.0.13", - "postcss-value-parser": "^4.2.0" - }, - "peerDependencies": { - "stylelint": "^14.5.1 || ^15.0.0" - } - }, - "node_modules/stylelint/node_modules/@csstools/css-parser-algorithms": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.7.1.tgz", - "integrity": "sha512-2SJS42gxmACHgikc1WGesXLIT8d/q2l0UFM7TaEeIzdFCE/FPMtTiizcPGGJtlPo2xuQzY09OhrLTzRxqJqwGw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT", - "engines": { - "node": "^14 || ^16 || >=18" - }, - "peerDependencies": { - "@csstools/css-tokenizer": "^2.4.1" - } - }, - "node_modules/stylelint/node_modules/@csstools/css-tokenizer": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-2.4.1.tgz", - "integrity": "sha512-eQ9DIktFJBhGjioABJRtUucoWR2mwllurfnM8LuNGAqX3ViZXaUchqk+1s7jjtkFiT9ySdACsFEA3etErkALUg==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT", - "engines": { - "node": "^14 || ^16 || >=18" - } - }, - "node_modules/stylelint/node_modules/@csstools/media-query-list-parser": { - "version": "2.1.13", - "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.13.tgz", - "integrity": "sha512-XaHr+16KRU9Gf8XLi3q8kDlI18d5vzKSKCY510Vrtc9iNR0NJzbY9hhTmwhzYZj/ZwGL4VmB3TA9hJW0Um2qFA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT", - "engines": { - "node": "^14 || ^16 || >=18" - }, - "peerDependencies": { - "@csstools/css-parser-algorithms": "^2.7.1", - "@csstools/css-tokenizer": "^2.4.1" - } - }, - "node_modules/stylelint/node_modules/balanced-match": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", - "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", - "dev": true, - "license": "MIT" - }, - "node_modules/stylelint/node_modules/file-entry-cache": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-7.0.2.tgz", - "integrity": "sha512-TfW7/1iI4Cy7Y8L6iqNdZQVvdXn0f8B4QcIXmkIbtTIe/Okm/nSlHb4IwGzRVOd3WfSieCgvf5cMzEfySAIl0g==", - "dev": true, - "license": "MIT", - "dependencies": { - "flat-cache": "^3.2.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/stylelint/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/superjson": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.2.tgz", - "integrity": "sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "copy-anything": "^3.0.2" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-hyperlinks": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-3.1.0.tgz", - "integrity": "sha512-2rn0BZ+/f7puLOHZm1HOJfwBggfaHXUpPUSSG/SWM4TWp5KCfmNYwnC3hruy2rZlMnmWZ+QAGpZfchu3f3695A==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">=14.18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/svg-tags": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", - "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", - "dev": true - }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "license": "MIT" - }, - "node_modules/synckit": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.6.2.tgz", - "integrity": "sha512-Vhf+bUa//YSTYKseDiiEuQmhGCoIF3CVBhunm3r/DQnYiGT4JssmnKQc44BIyOZRK2pKjXXAgbhfmbeoC9CJpA==", - "dev": true, - "license": "MIT", - "dependencies": { - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=12.20" - } - }, - "node_modules/tabbable": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", - "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==", - "devOptional": true, - "license": "MIT" - }, - "node_modules/table": { - "version": "6.9.0", - "resolved": "https://registry.npmjs.org/table/-/table-6.9.0.tgz", - "integrity": "sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "ajv": "^8.0.1", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/table/node_modules/ajv": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz", - "integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/table/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "license": "MIT" - }, - "node_modules/tapable": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.2.tgz", - "integrity": "sha512-1MOpMXuhGzGL5TTCZFItxCc0AARf1EZFQkGqMm7ERKj8+Hgr5oLvJOVFcC+lRmR8hCe2S3jC4T5D7Vg/d7/fhA==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/terser": { - "version": "5.37.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.37.0.tgz", - "integrity": "sha512-B8wRRkmre4ERucLM/uXx4MOV5cbnOlVAqUst+1+iLKPI0dOgFO28f84ptoQt9HEI537PMzfYa/d+GEPKTRXmYA==", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "dependencies": { - "@jridgewell/source-map": "^0.3.3", - "acorn": "^8.8.2", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.4.0.tgz", - "integrity": "sha512-Bn5vxm48flOIfkdl5CaD2+1CiUVbonWQ3KQPyP7/EuIl9Gbzq/gQFOzaMFUEgVjB1396tcK0SG8XcNJ/2kDH8g==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.25", - "jest-worker": "^27.4.5", - "schema-utils": "^4.3.0", - "terser": "^5.31.1" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true, - "license": "MIT" - }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "license": "MIT" - }, - "node_modules/tinyexec": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz", - "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==", - "dev": true, - "license": "MIT" - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/tough-cookie": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.4.tgz", - "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", - "license": "BSD-3-Clause", - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tr46": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz", - "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==", - "license": "MIT", - "dependencies": { - "punycode": "^2.3.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/trim-lines": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", - "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/trim-newlines": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-4.1.1.tgz", - "integrity": "sha512-jRKj0n0jXWo6kh62nA5TEh3+4igKDXLvzBJcPpiizP7oOolUrYIxmVBG9TOtHYFHoddUk6YvAkGeGoSVTXfQXQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ts-api-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz", - "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "typescript": ">=4.2.0" - } - }, - "node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true, - "license": "0BSD" - }, - "node_modules/tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dev": true, - "license": "MIT", - "dependencies": { - "tslib": "^1.8.1" - }, - "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" - } - }, - "node_modules/tsutils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true, - "license": "0BSD" - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typed-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", - "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/typed-array-byte-length": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", - "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-proto": "^1.2.0", - "is-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", - "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-proto": "^1.2.0", - "is-typed-array": "^1.1.15", - "reflect.getprototypeof": "^1.0.9" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", - "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0", - "reflect.getprototypeof": "^1.0.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typescript": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz", - "integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==", - "devOptional": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/ufo": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.4.tgz", - "integrity": "sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/unbox-primitive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", - "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "has-bigints": "^1.0.2", - "has-symbols": "^1.1.0", - "which-boxed-primitive": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/undici": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/undici/-/undici-6.24.1.tgz", - "integrity": "sha512-sC+b0tB1whOCzbtlx20fx3WgCXwkW627p4EA9uM+/tNNPkSS+eSEld6pAs9nDv7WbY1UUljBMYPtu9BCOrCWKA==", - "license": "MIT", - "engines": { - "node": ">=18.17" - } - }, - "node_modules/undici-types": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz", - "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==", - "license": "MIT" - }, - "node_modules/unimport": { - "version": "3.14.6", - "resolved": "https://registry.npmjs.org/unimport/-/unimport-3.14.6.tgz", - "integrity": "sha512-CYvbDaTT04Rh8bmD8jz3WPmHYZRG/NnvYVzwD6V1YAlvvKROlAeNDUBhkBGzNav2RKaeuXvlWYaa1V4Lfi/O0g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@rollup/pluginutils": "^5.1.4", - "acorn": "^8.14.0", - "escape-string-regexp": "^5.0.0", - "estree-walker": "^3.0.3", - "fast-glob": "^3.3.3", - "local-pkg": "^1.0.0", - "magic-string": "^0.30.17", - "mlly": "^1.7.4", - "pathe": "^2.0.1", - "picomatch": "^4.0.2", - "pkg-types": "^1.3.0", - "scule": "^1.3.0", - "strip-literal": "^2.1.1", - "unplugin": "^1.16.1" - } - }, - "node_modules/unimport/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/unimport/node_modules/estree-walker": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", - "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0" - } - }, - "node_modules/unimport/node_modules/local-pkg": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.0.0.tgz", - "integrity": "sha512-bbgPw/wmroJsil/GgL4qjDzs5YLTBMQ99weRsok1XCDccQeehbHA/I1oRvk2NPtr7KGZgT/Y5tPRnAtMqeG2Kg==", - "dev": true, - "license": "MIT", - "dependencies": { - "mlly": "^1.7.3", - "pkg-types": "^1.3.0" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/unimport/node_modules/pathe": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.2.tgz", - "integrity": "sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==", - "dev": true, - "license": "MIT" - }, - "node_modules/unimport/node_modules/picomatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", - "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-is/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/unist-util-position": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", - "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-position/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/unist-util-stringify-position": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", - "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.2" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit-parents/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/unist-util-visit/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/universal-cookie": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/universal-cookie/-/universal-cookie-7.2.2.tgz", - "integrity": "sha512-fMiOcS3TmzP2x5QV26pIH3mvhexLIT0HmPa3V7Q7knRfT9HG6kTwq02HZGLPw0sAOXrAmotElGRvTLCMbJsvxQ==", - "devOptional": true, - "license": "MIT", - "dependencies": { - "@types/cookie": "^0.6.0", - "cookie": "^0.7.2" - } - }, - "node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", - "license": "MIT", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/unplugin": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.16.1.tgz", - "integrity": "sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w==", - "dev": true, - "license": "MIT", - "dependencies": { - "acorn": "^8.14.0", - "webpack-virtual-modules": "^0.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/unplugin-auto-import": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/unplugin-auto-import/-/unplugin-auto-import-0.16.7.tgz", - "integrity": "sha512-w7XmnRlchq6YUFJVFGSvG1T/6j8GrdYN6Em9Wf0Ye+HXgD/22kont+WnuCAA0UaUoxtuvRR1u/mXKy63g/hfqQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@antfu/utils": "^0.7.6", - "@rollup/pluginutils": "^5.0.5", - "fast-glob": "^3.3.1", - "local-pkg": "^0.5.0", - "magic-string": "^0.30.5", - "minimatch": "^9.0.3", - "unimport": "^3.4.0", - "unplugin": "^1.5.0" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@nuxt/kit": "^3.2.2", - "@vueuse/core": "*" - }, - "peerDependenciesMeta": { - "@nuxt/kit": { - "optional": true - }, - "@vueuse/core": { - "optional": true - } - } - }, - "node_modules/unplugin-auto-import/node_modules/local-pkg": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.1.tgz", - "integrity": "sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "mlly": "^1.7.3", - "pkg-types": "^1.2.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/unplugin-icons": { - "version": "0.17.4", - "resolved": "https://registry.npmjs.org/unplugin-icons/-/unplugin-icons-0.17.4.tgz", - "integrity": "sha512-PHLxjBx3ZV8RUBvfMafFl8uWH88jHeZgOijcRpkwgne7y2Ovx7WI0Ltzzw3fjZQ7dGaDhB8udyKVdm9N2S6BIw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@antfu/install-pkg": "^0.1.1", - "@antfu/utils": "^0.7.6", - "@iconify/utils": "^2.1.11", - "debug": "^4.3.4", - "kolorist": "^1.8.0", - "local-pkg": "^0.5.0", - "unplugin": "^1.5.0" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@svgr/core": ">=7.0.0", - "@svgx/core": "^1.0.1", - "@vue/compiler-sfc": "^3.0.2 || ^2.7.0", - "vue-template-compiler": "^2.6.12", - "vue-template-es2015-compiler": "^1.9.0" - }, - "peerDependenciesMeta": { - "@svgr/core": { - "optional": true - }, - "@svgx/core": { - "optional": true - }, - "@vue/compiler-sfc": { - "optional": true - }, - "vue-template-compiler": { - "optional": true - }, - "vue-template-es2015-compiler": { - "optional": true - } - } - }, - "node_modules/unplugin-icons/node_modules/local-pkg": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.1.tgz", - "integrity": "sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "mlly": "^1.7.3", - "pkg-types": "^1.2.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", - "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "peer": true, - "dependencies": { - "escalade": "^3.2.0", - "picocolors": "^1.1.1" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "license": "MIT", - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true, - "license": "MIT" - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/vfile": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", - "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-message": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", - "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-message/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/vfile-message/node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile/node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/vite": { - "version": "5.4.21", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.21.tgz", - "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==", - "dev": true, - "license": "MIT", - "dependencies": { - "esbuild": "^0.21.3", - "postcss": "^8.4.43", - "rollup": "^4.20.0" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - }, - "peerDependencies": { - "@types/node": "^18.0.0 || >=20.0.0", - "less": "*", - "lightningcss": "^1.21.0", - "sass": "*", - "sass-embedded": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.4.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "less": { - "optional": true - }, - "lightningcss": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - } - } - }, - "node_modules/vitepress": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/vitepress/-/vitepress-1.6.3.tgz", - "integrity": "sha512-fCkfdOk8yRZT8GD9BFqusW3+GggWYZ/rYncOfmgcDtP3ualNHCAg+Robxp2/6xfH1WwPHtGpPwv7mbA3qomtBw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@docsearch/css": "3.8.2", - "@docsearch/js": "3.8.2", - "@iconify-json/simple-icons": "^1.2.21", - "@shikijs/core": "^2.1.0", - "@shikijs/transformers": "^2.1.0", - "@shikijs/types": "^2.1.0", - "@types/markdown-it": "^14.1.2", - "@vitejs/plugin-vue": "^5.2.1", - "@vue/devtools-api": "^7.7.0", - "@vue/shared": "^3.5.13", - "@vueuse/core": "^12.4.0", - "@vueuse/integrations": "^12.4.0", - "focus-trap": "^7.6.4", - "mark.js": "8.11.1", - "minisearch": "^7.1.1", - "shiki": "^2.1.0", - "vite": "^5.4.14", - "vue": "^3.5.13" - }, - "bin": { - "vitepress": "bin/vitepress.js" - }, - "peerDependencies": { - "markdown-it-mathjax3": "^4", - "postcss": "^8" - }, - "peerDependenciesMeta": { - "markdown-it-mathjax3": { - "optional": true - }, - "postcss": { - "optional": true - } - } - }, - "node_modules/vitepress/node_modules/@vue/devtools-api": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-7.7.1.tgz", - "integrity": "sha512-Cexc8GimowoDkJ6eNelOPdYIzsu2mgNyp0scOQ3tiaYSb9iok6LOESSsJvHaI+ib3joRfqRJNLkHFjhNuWA5dg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vue/devtools-kit": "^7.7.1" - } - }, - "node_modules/void-elements": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", - "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/vscode-uri": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.8.tgz", - "integrity": "sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==", - "dev": true, - "license": "MIT" - }, - "node_modules/vue": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.13.tgz", - "integrity": "sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==", - "license": "MIT", - "dependencies": { - "@vue/compiler-dom": "3.5.13", - "@vue/compiler-sfc": "3.5.13", - "@vue/runtime-dom": "3.5.13", - "@vue/server-renderer": "3.5.13", - "@vue/shared": "3.5.13" - }, - "peerDependencies": { - "typescript": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/vue-demi": { - "version": "0.14.10", - "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", - "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", - "hasInstallScript": true, - "license": "MIT", - "bin": { - "vue-demi-fix": "bin/vue-demi-fix.js", - "vue-demi-switch": "bin/vue-demi-switch.js" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@vue/composition-api": "^1.0.0-rc.1", - "vue": "^3.0.0-0 || ^2.6.0" - }, - "peerDependenciesMeta": { - "@vue/composition-api": { - "optional": true - } - } - }, - "node_modules/vue-eslint-parser": { - "version": "9.4.3", - "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.4.3.tgz", - "integrity": "sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.3.4", - "eslint-scope": "^7.1.1", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.3.1", - "esquery": "^1.4.0", - "lodash": "^4.17.21", - "semver": "^7.3.6" - }, - "engines": { - "node": "^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=6.0.0" - } - }, - "node_modules/vue-i18n": { - "version": "9.14.5", - "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.14.5.tgz", - "integrity": "sha512-0jQ9Em3ymWngyiIkj0+c/k7WgaPO+TNzjKSNq9BvBQaKJECqn9cd9fL4tkDhB5G1QBskGl9YxxbDAhgbFtpe2g==", - "deprecated": "v9 and v10 no longer supported. please migrate to v11. about maintenance status, see https://vue-i18n.intlify.dev/guide/maintenance.html", - "license": "MIT", - "dependencies": { - "@intlify/core-base": "9.14.5", - "@intlify/shared": "9.14.5", - "@vue/devtools-api": "^6.5.0" - }, - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://github.com/sponsors/kazupon" - }, - "peerDependencies": { - "vue": "^3.0.0" - } - }, - "node_modules/vue-multiselect": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/vue-multiselect/-/vue-multiselect-3.5.0.tgz", - "integrity": "sha512-i758SEqWFcFshL1eAg0F3EFeFQ1mOCmh2mgnGCZv1XpHFVIAv8fxo8bQQ4ZnMoaPhMp8KI1A6gPBVHh3YzRg/Q==", - "license": "MIT", - "engines": { - "node": ">= 14.18.1", - "npm": ">= 6.14.15" - } - }, - "node_modules/vue-tsc": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-2.2.0.tgz", - "integrity": "sha512-gtmM1sUuJ8aSb0KoAFmK9yMxb8TxjewmxqTJ1aKphD5Cbu0rULFY6+UQT51zW7SpUcenfPUuflKyVwyx9Qdnxg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@volar/typescript": "~2.4.11", - "@vue/language-core": "2.2.0" - }, - "bin": { - "vue-tsc": "bin/vue-tsc.js" - }, - "peerDependencies": { - "typescript": ">=5.0.0" - } - }, - "node_modules/w3c-xmlserializer": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz", - "integrity": "sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==", - "license": "MIT", - "dependencies": { - "xml-name-validator": "^5.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/w3c-xmlserializer/node_modules/xml-name-validator": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", - "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", - "license": "Apache-2.0", - "engines": { - "node": ">=18" - } - }, - "node_modules/watchpack": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.5.1.tgz", - "integrity": "sha512-Zn5uXdcFNIA1+1Ei5McRd+iRzfhENPCe7LeABkJtNulSxjma+l7ltNx55BWZkRlwRnpOgHqxnjyaDgJnNXnqzg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=12" - } - }, - "node_modules/webpack": { - "version": "5.106.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.106.0.tgz", - "integrity": "sha512-Pkx5joZ9RrdgO5LBkyX1L2ZAJeK/Taz3vqZ9CbcP0wS5LEMx5QkKsEwLl29QJfihZ+DKRBFldzy1O30pJ1MDpA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/eslint-scope": "^3.7.7", - "@types/estree": "^1.0.8", - "@types/json-schema": "^7.0.15", - "@webassemblyjs/ast": "^1.14.1", - "@webassemblyjs/wasm-edit": "^1.14.1", - "@webassemblyjs/wasm-parser": "^1.14.1", - "acorn": "^8.16.0", - "acorn-import-phases": "^1.0.3", - "browserslist": "^4.28.1", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.20.0", - "es-module-lexer": "^2.0.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.11", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.3.1", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^4.3.3", - "tapable": "^2.3.0", - "terser-webpack-plugin": "^5.3.17", - "watchpack": "^2.5.1", - "webpack-sources": "^3.3.4" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-sources": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.3.4.tgz", - "integrity": "sha512-7tP1PdV4vF+lYPnkMR0jMY5/la2ub5Fc/8VQrrU+lXkiM6C4TjVfGw7iKfyhnTQOsD+6Q/iKw0eFciziRgD58Q==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack-virtual-modules": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz", - "integrity": "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/webpack/node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/webpack/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/whatwg-encoding": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", - "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", - "license": "MIT", - "dependencies": { - "iconv-lite": "0.6.3" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/whatwg-mimetype": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", - "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "node_modules/whatwg-url": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.1.0.tgz", - "integrity": "sha512-jlf/foYIKywAt3x/XWKZ/3rz8OSJPiWktjmk891alJUEjiVxKX9LEO92qH3hv4aJ0mN3MWPvGMCy8jQi95xK4w==", - "license": "MIT", - "dependencies": { - "tr46": "^5.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", - "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-bigint": "^1.1.0", - "is-boolean-object": "^1.2.1", - "is-number-object": "^1.1.1", - "is-string": "^1.1.1", - "is-symbol": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-builtin-type": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", - "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "function.prototype.name": "^1.1.6", - "has-tostringtag": "^1.0.2", - "is-async-function": "^2.0.0", - "is-date-object": "^1.1.0", - "is-finalizationregistry": "^1.1.0", - "is-generator-function": "^1.0.10", - "is-regex": "^1.2.1", - "is-weakref": "^1.0.2", - "isarray": "^2.0.5", - "which-boxed-primitive": "^1.1.0", - "which-collection": "^1.0.2", - "which-typed-array": "^1.1.16" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-collection": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", - "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-map": "^2.0.3", - "is-set": "^2.0.3", - "is-weakmap": "^2.0.2", - "is-weakset": "^2.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.18", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.18.tgz", - "integrity": "sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==", - "dev": true, - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/write-file-atomic": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", - "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", - "dev": true, - "license": "ISC", - "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/write-file-atomic/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/ws": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", - "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", - "license": "MIT", - "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 - } - } - }, - "node_modules/xml-name-validator": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", - "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=12" - } - }, - "node_modules/xml2js": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.6.2.tgz", - "integrity": "sha512-T4rieHaC1EXcES0Kxxj4JWgaUQHDk+qwHcYOCFHfiwKz7tOVPLq7Hjq9dM1WCMhylqMEfP7hMcOIChvotiZegA==", - "license": "MIT", - "dependencies": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", - "license": "MIT", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "license": "MIT" - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "license": "ISC" - }, - "node_modules/yaml": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.3.tgz", - "integrity": "sha512-AvbaCLOO2Otw/lW5bmh9d/WEdcDFdQp2Z2ZUH3pX9U2ihyUY0nvLv7J6TrWowklRGPYbB/IuIMfYgxaCPg5Bpg==", - "dev": true, - "license": "ISC", - "bin": { - "yaml": "bin.mjs" - }, - "engines": { - "node": ">= 14.6" - }, - "funding": { - "url": "https://github.com/sponsors/eemeli" - } - }, - "node_modules/yaml-eslint-parser": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/yaml-eslint-parser/-/yaml-eslint-parser-1.2.3.tgz", - "integrity": "sha512-4wZWvE398hCP7O8n3nXKu/vdq1HcH01ixYlCREaJL5NUMwQ0g3MaGFUBNSlmBtKmhbtVG/Cm6lyYmSVTEVil8A==", - "dev": true, - "license": "MIT", - "dependencies": { - "eslint-visitor-keys": "^3.0.0", - "lodash": "^4.17.21", - "yaml": "^2.0.0" - }, - "engines": { - "node": "^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ota-meshi" - } - }, - "node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=10" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/zwitch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", - "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - } - } -} diff --git a/package.json b/package.json deleted file mode 100644 index e33b5ca..0000000 --- a/package.json +++ /dev/null @@ -1,57 +0,0 @@ -{ - "type": "module", - "version": "0.0.14", - "engines": { - "node": ">=22.0.0" - }, - "scripts": { - "dev": "GENERATE_INDEX=false vitepress dev", - "build": "GENERATE_INDEX=true run-p type-check build-only", - "build-only": "rm -rf tsconfig.tsbuildinfo; vitepress build; mv .vitepress/dist/docs/404.html .vitepress/dist/404.html", - "preview": "cp .vitepress/dist/404.html .vitepress/dist/docs/404.html; vitepress preview", - "type-check": "vue-tsc --noEmit", - "lint:es": "eslint .", - "lint:style": "stylelint .vitepress/theme/**.{css,scss,sass}", - "lint-fix:es": "eslint . --fix", - "lint-fix:style": "stylelint .vitepress/theme/**.{css,scss,sass} --fix", - "format": "run-p lint-fix:*", - "deploy:qa": "export HOSTNAME=https://appscode.ninja; npm run build; firebase use default; firebase deploy", - "deploy:prod": "export HOSTNAME=https://appscode.com; npm run build; firebase use prod; firebase deploy; firebase use default" - }, - "dependencies": { - "@appscode/design-system": "^2.2.7", - "@bytebuilders/docs-base": "github:bytebuilders/docs-base", - "@vueuse/components": "^12.5.0", - "@vueuse/core": "^12.5.0", - "@vueuse/integrations": "^12.5.0", - "bulma": "0.9.4", - "font-awesome": "^4.7.0", - "pinia": "^2.1.3", - "vue-i18n": "^9.2.2" - }, - "devDependencies": { - "@antfu/eslint-config": "^0.39.5", - "@iconify/json": "^2.2.139", - "@rushstack/eslint-patch": "^1.3.1", - "@tsconfig/node22": "^22.0.0", - "@types/node": "^22.10.10", - "@vue/compiler-sfc": "^3.3.8", - "@vue/tsconfig": "^0.4.0", - "eslint": "^8.42.0", - "npm-run-all": "^4.1.5", - "postcss-html": "^1.5.0", - "sass": "1.32.13", - "sass-loader": "^13.3.1", - "stylelint": "^15.7.0", - "stylelint-config-recommended-scss": "^12.0.0", - "stylelint-config-recommended-vue": "^1.4.0", - "stylelint-config-standard": "^33.0.0", - "stylelint-config-standard-scss": "^9.0.0", - "typescript": "^5.0.4", - "universal-cookie": "^7.2.2", - "unplugin-auto-import": "^0.16.4", - "unplugin-icons": "^0.17.3", - "vitepress": "^1.0.1", - "vue-tsc": "^2.2.0" - } -} diff --git a/shims-vue.d.ts b/shims-vue.d.ts deleted file mode 100644 index 502aff2..0000000 --- a/shims-vue.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -declare module '*.vue' - - -declare module '@bytebuilders/docs-base/config' { - import { UserConfig } from 'vitepress' - const baseConfig: () => Promise - export default baseConfig -} diff --git a/src/_home-account.md b/src/_home-account.md deleted file mode 100644 index 2d6e6cc..0000000 --- a/src/_home-account.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -menu: - home_menu: - identifier: home-account - name: Account Management - description: Manage your account, subscriptions, and security settings with our interface - link: /en/guides/account-management/manage-profile.html - icon: https://img.icons8.com/00994A/ios/50/admin-settings-male.png - weight: 20 ---- diff --git a/src/_home-billing.md b/src/_home-billing.md deleted file mode 100644 index 808d8c8..0000000 --- a/src/_home-billing.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -menu: - home_menu: - identifier: home-billing - name: Billing and Usage Guide - description: Billing and Usage Guide for AppsCode's products - link: /en/guides/billing-and-usage-guide/overview.html - icon: https://img.icons8.com/external-anggara-basic-outline-anggara-putra/96/external-stats-ui-anggara-basic-outline-anggara-putra.png - weight: 20 ---- diff --git a/src/_home-cluster.md b/src/_home-cluster.md deleted file mode 100644 index d17a77a..0000000 --- a/src/_home-cluster.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -menu: - home_menu: - identifier: home-cluster - name: Cluster Management - description: Simplify cluster management with AppsCode's intuitive tools and features - link: /en/guides/cluster-management/add-cluster/overview.html - icon: https://img.icons8.com/00994A/external-sbts2018-outline-sbts2018/58/external-12-cluster-elastic-search-sbts2018-outline-sbts2018.png - weight: 20 ---- diff --git a/src/_home-database.md b/src/_home-database.md deleted file mode 100644 index 1bfc4f3..0000000 --- a/src/_home-database.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -menu: - home_menu: - identifier: home-database - name: Database Management - description: Manage databases with AppsCode's user-friendly tools and solutions - link: /en/guides/database-management/create-database.html - icon: https://img.icons8.com/00994A/ios/50/data-configuration.png - weight: 20 ---- diff --git a/src/_home-hub-ui.md b/src/_home-hub-ui.md deleted file mode 100644 index b851460..0000000 --- a/src/_home-hub-ui.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -menu: - home_menu: - identifier: hub-ui - name: Hub UI - description: Manage multiple clusters from a single point using Hub UI - link: /en/guides/cluster-management/hub-ui/introduction.html - icon: https://img.icons8.com/00994A/ios/50/hub.png - weight: 20 ---- diff --git a/src/_home-integrations.md b/src/_home-integrations.md deleted file mode 100644 index 2b15181..0000000 --- a/src/_home-integrations.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -menu: - home_menu: - identifier: home-integrations - name: Integrations - description: Manage licenses for AppsCode's products - link: /en/guides/integrations/rancher-extension.html - icon: https://img.icons8.com/?size=100&id=80695&format=png&color=000000 - weight: 20 ---- \ No newline at end of file diff --git a/src/_home-license.md b/src/_home-license.md deleted file mode 100644 index dbd6618..0000000 --- a/src/_home-license.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -menu: - home_menu: - identifier: home-license - name: License Management - description: Manage licenses for AppsCode's products - link: /en/guides/license-management/overview.html - icon: https://img.icons8.com/?size=100&id=80695&format=png&color=000000 - weight: 20 ---- diff --git a/src/_home-start.md b/src/_home-start.md deleted file mode 100644 index 71a00df..0000000 --- a/src/_home-start.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -menu: - home_menu: - identifier: home-start - name: Get Started - description: New to AppsCode? Follow simple steps to set up your account. - link: /en/guides/get-started/register-login.html - icon: https://img.icons8.com/00994A/ios/50/rocket--v1.png - weight: 10 ---- diff --git a/src/auto-imports.d.ts b/src/auto-imports.d.ts deleted file mode 100644 index 1d89ee8..0000000 --- a/src/auto-imports.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* eslint-disable */ -/* prettier-ignore */ -// @ts-nocheck -// noinspection JSUnusedGlobalSymbols -// Generated by unplugin-auto-import -export {} -declare global { - -} diff --git a/src/en/guides/_index.md b/src/en/guides/_index.md deleted file mode 100644 index ad1b75c..0000000 --- a/src/en/guides/_index.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -menu: - section_menu: - identifier: guides - name: Guides - weight: 30 ---- diff --git a/src/en/guides/cluster-management/_index.md b/src/en/guides/cluster-management/_index.md deleted file mode 100644 index 931820a..0000000 --- a/src/en/guides/cluster-management/_index.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -layout: 'guide' -menu: - docs_menu: - identifier: cluster-management - name: Cluster Management - popular: true - weight: 30 -menu_name: docs_menu -section_menu: guides ---- diff --git a/src/en/guides/cluster-management/add-cluster/self-managed/_index.md b/src/en/guides/cluster-management/add-cluster/self-managed/_index.md deleted file mode 100644 index f280e53..0000000 --- a/src/en/guides/cluster-management/add-cluster/self-managed/_index.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -layout: 'guide' -menu: - docs_menu: - identifier: cluster-management-add-selfmanaged - name: Import Self-Managed Clusters - parent: cluster-management-add - weight: 20 - home_menu: - identifier: home-cluster-add-selfmanaged - name: Import Self-Managed Clusters - parent: home-cluster - weight: 20 -menu_name: docs_menu -section_menu: guides ---- \ No newline at end of file diff --git a/src/en/guides/cluster-management/constraints-violations.md b/src/en/guides/cluster-management/constraints-violations.md deleted file mode 100644 index 0930f4b..0000000 --- a/src/en/guides/cluster-management/constraints-violations.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -layout: 'guide' -menu: - docs_menu: - identifier: cluster-management-gatekeeper - name: Constraints & Violations - parent: cluster-management - weight: 90 - home_menu: - identifier: home-cluster-gatekeeper - name: Constraints & Violations - parent: home-cluster - weight: 90 -menu_name: docs_menu -section_menu: guides ---- - - -# Constraints & Violations diff --git a/src/en/guides/database-management/manage-recommendations.md b/src/en/guides/database-management/manage-recommendations.md deleted file mode 100644 index 9c83a5e..0000000 --- a/src/en/guides/database-management/manage-recommendations.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -layout: 'guide' -menu: - docs_menu: - identifier: database-management-recommendation - name: Manage Recommendations - parent: database-management - weight: 80 - home_menu: - identifier: home-database-recommendation - name: Manage Recommendations - parent: home-database - weight: 80 -menu_name: docs_menu -section_menu: guides ---- - - -# Manage Recommendations diff --git a/src/en/guides/get-started/manage-databases.md b/src/en/guides/get-started/manage-databases.md deleted file mode 100644 index 1ad2da7..0000000 --- a/src/en/guides/get-started/manage-databases.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -layout: 'guide' -menu: - docs_menu: - identifier: guide-start-databases - name: Manage Databases - parent: guide-start - weight: 50 - home_menu: - identifier: home-start-databases - name: Manage Databases - parent: home-start - weight: 50 -menu_name: docs_menu -section_menu: guides ---- - - -# Manage Databases diff --git a/src/en/selfhost-setup/install/_index.md b/src/en/selfhost-setup/install/_index.md deleted file mode 100644 index ab482af..0000000 --- a/src/en/selfhost-setup/install/_index.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -layout: 'guide' -menu: - selfhost-setup_docs_menu: - identifier: selfhosted-installer - name: Self Hosted Installer - weight: 10 ---- diff --git a/src/en/selfhost-setup/uninstall.md b/src/en/selfhost-setup/uninstall.md deleted file mode 100644 index ba01a58..0000000 --- a/src/en/selfhost-setup/uninstall.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -layout: 'guide' -menu: - selfhost-setup_docs_menu: - identifier: selfhost-setup-uninstall - name: Uninstall - weight: 20 -menu_name: selfhost-setup_docs_menu -section_menu: selfhost-setup ---- - -# Uninstall diff --git a/src/index.md b/src/index.md deleted file mode 100644 index d6dcad6..0000000 --- a/src/index.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -layout: home -lang: en -menu_name: home_menu ---- - - - - diff --git a/src/public/images/404/404-bg.png b/src/public/images/404/404-bg.png deleted file mode 100644 index 38142421901bc724326765e6144da66fa534bad9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 72111 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

#Lytnv0;k26!>Yz_D&lzGCe0FXv*d~ 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%0AQ5 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 wDIqcw&?nv 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 Zvv}@60_~<_7Z?QmD9WnJR7jbH{vV6*5P|>z diff --git a/src/public/images/pattern-squire.png b/src/public/images/pattern-squire.png deleted file mode 100644 index 73d1652c478f3f912fd23058b2fbecfb3bea88ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 461 zcmeAS@N?(olHy`uVBq!ia0vp^g&@qq1|%QV`CI@}oCO|{#S9GG!XV7ZFl&wkP>``W z$lZxy-8q?;Kn_c~qpu?a!^VE@KZ&eBxg<{)$B+ufw>LNDG8>ApI?l^+CplQL$!0wq1H~YnU?wQ^D_x}6s2g$K%2iE8QmSsO1{r&k}|NEaSZRXe8Uw@q| zv*CZz_vd%~ryo2nZ0K-=L6F&nM*xFye89S)toPT|4J;hM&}Z;;^>bP0l+XkKoaK%a diff --git a/tsconfig.json b/tsconfig.json deleted file mode 100644 index b23925d..0000000 --- a/tsconfig.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "extends": ["@vue/tsconfig/tsconfig.dom.json", "@tsconfig/node22/tsconfig.json"], - "compilerOptions": { - "composite": true, - "module": "ESNext", - "moduleResolution": "Bundler", - "esModuleInterop": true, - "lib": ["ES2022", "DOM", "DOM.Iterable"], - "baseUrl": ".", - "target": "ESNext", - "types": [ - "unplugin-icons/types/vue", - "vite/client" - ], - "paths": { - "@/*": ["./src/*"] - } - }, - "include": ["shims-vue.d.ts", "src/**/*", ".vitepress/**/*"] -} From 23e407af1599305c69aabb0bc666fd8690a447ad Mon Sep 17 00:00:00 2001 From: Tamal Saha Date: Mon, 20 Apr 2026 11:48:49 +0600 Subject: [PATCH 2/2] revise Signed-off-by: Tamal Saha --- docs/platform/README.md | 32 +++++++++++++++++++ docs/platform/_index.md | 8 +++-- docs/platform/{welcome => }/contributing.md | 5 ++- docs/platform/guides/README.md | 32 +++++++++++++++++++ docs/platform/guides/_index.md | 2 +- .../guides/account-management/_index.md | 2 +- .../account-management/access-tokens.md | 2 +- .../account-management/delete-account.md | 2 +- .../account-management/kubernetes/_index.md | 2 +- .../kubernetes/credentials.md | 2 +- .../account-management/manage-profile.md | 2 +- .../account-management/manage-security.md | 2 +- .../guides/account-management/oauth2-apps.md | 2 +- .../guides/account-management/orgs-members.md | 2 +- .../site-administration/_index.md | 2 +- .../site-administration/ace-upgrade.md | 2 +- .../authentication-sources.md | 2 +- .../site-administration/branding.md | 2 +- .../site-administration/client-org.md | 2 +- .../site-administration/dashboard.md | 2 +- .../site-administration/delete-account.md | 2 +- .../external-authentication-sources.md | 2 +- .../site-administration/organizations.md | 2 +- .../sign-up-configuration.md | 2 +- .../site-administration/user-account.md | 2 +- .../guides/billing-and-usage-guide/_index.md | 2 +- .../cost-management.md | 2 +- .../dbaas-client-billing.md | 2 +- .../billing-and-usage-guide/overview.md | 2 +- .../guides/cluster-management/_index.md | 2 +- .../cluster-management/add-cluster/_index.md | 2 +- .../add-cluster/create-vendor-managed.md | 2 +- .../add-cluster/import-rancher-cluster.md | 2 +- .../add-cluster/import-vendor-managed.md | 2 +- .../add-cluster/overview.md | 2 +- .../add-cluster/self-managed/_index.md | 2 +- .../self-managed/import-private.md | 2 +- .../add-cluster/self-managed/import-public.md | 2 +- .../self-managed/import-self-managed.md | 2 +- .../cluster-management/cluster-features.md | 2 +- .../cluster-management/cluster-helm-charts.md | 2 +- .../cluster-management/cluster-overview.md | 2 +- .../cluster-management/cluster-presets.md | 2 +- .../cluster-management/cluster-sidebar.md | 2 +- .../cluster-management/cluster-workload.md | 2 +- .../constraints-violations.md | 2 +- .../cluster-management/hub-ui/_index.md | 2 +- .../hub-ui/cluster-and-clusterset.md | 2 +- .../cluster-management/hub-ui/create.md | 2 +- .../cluster-management/hub-ui/introduction.md | 2 +- .../hub-ui/license-management.md | 2 +- .../cluster-management/hub-ui/permission.md | 2 +- .../guides/cluster-management/hub-ui/spoke.md | 2 +- .../cluster-management/hub-ui/upgrade.md | 2 +- .../cluster-management/project-quota.md | 2 +- .../cluster-management/remove-cluster.md | 2 +- .../cluster-management/security-report.md | 2 +- .../guides/database-management/_index.md | 2 +- .../backup-configuration.md | 2 +- .../database-management/backup-storage.md | 2 +- .../guides/database-management/backup.md | 2 +- .../contraint-violations.md | 2 +- .../database-management/create-database.md | 2 +- .../database-usage-insight.md | 2 +- .../database-management/delete-database.md | 2 +- .../database-management/expose-via-gateway.md | 2 +- .../instant-backup-restore.md | 2 +- .../manage-recommendations.md | 2 +- .../guides/database-management/monitoring.md | 2 +- .../database-management/recent-backups.md | 2 +- .../reconfigure-database.md | 2 +- .../guides/database-management/repository.md | 2 +- .../database-management/restart-database.md | 2 +- .../guides/database-management/restore.md | 2 +- .../database-management/scaling-storage.md | 2 +- .../guides/database-management/scaling.md | 2 +- .../database-management/security-report.md | 2 +- .../guides/database-management/snapshot.md | 2 +- .../guides/database-management/tls.md | 2 +- .../database-management/upgrade-version.md | 2 +- docs/platform/guides/get-started/_index.md | 2 +- .../guides/get-started/add-cluster.md | 2 +- .../guides/get-started/add-credential.md | 2 +- .../guides/get-started/architecture.md | 2 +- .../guides/get-started/enable-features.md | 2 +- .../guides/get-started/manage-databases.md | 2 +- .../guides/get-started/register-login.md | 2 +- .../guides/get-started/requirements.md | 2 +- docs/platform/guides/integrations/_index.md | 2 +- .../guides/integrations/rancher-extension.md | 2 +- .../guides/license-management/_index.md | 2 +- .../guides/license-management/contract.md | 2 +- .../license-management/license-proxyserver.md | 2 +- .../guides/license-management/overview.md | 2 +- .../license-management/troubleshoots.md | 2 +- docs/platform/overview.md | 15 --------- docs/platform/selfhost-setup/README.md | 31 ++++++++++++++++++ docs/platform/selfhost-setup/_index.md | 23 ++----------- .../platform/selfhost-setup/install/_index.md | 2 +- .../selfhost-setup/install/aws-marketplace.md | 2 +- .../install/azure-marketplace.md | 2 +- .../selfhost-setup/install/cloud-demo.md | 2 +- .../selfhost-setup/install/k8s-app-demo.md | 2 +- .../selfhost-setup/install/onprem-demo.md | 2 +- .../selfhost-setup/install/openshift-demo.md | 2 +- .../install/selfhosted-production.md | 2 +- .../selfhost-setup/install/troubleshoot.md | 2 +- docs/platform/selfhost-setup/uninstall.md | 2 +- docs/platform/{welcome => }/support.md | 5 ++- docs/platform/welcome/_index.md | 20 ------------ 110 files changed, 208 insertions(+), 165 deletions(-) create mode 100644 docs/platform/README.md rename docs/platform/{welcome => }/contributing.md (92%) create mode 100644 docs/platform/guides/README.md delete mode 100644 docs/platform/overview.md create mode 100644 docs/platform/selfhost-setup/README.md rename docs/platform/{welcome => }/support.md (88%) delete mode 100644 docs/platform/welcome/_index.md diff --git a/docs/platform/README.md b/docs/platform/README.md new file mode 100644 index 0000000..ebcd8b7 --- /dev/null +++ b/docs/platform/README.md @@ -0,0 +1,32 @@ +--- +layout: docs +title: Welcome | KubeDB Platform +menu: + docsplatform_{{.version}}: + identifier: platform-readme + name: Welcome + parent: welcome + weight: -1 +menu_name: docsplatform_{{.version}} +section_menu_id: welcome +url: /docs/platform/{{.version}}/welcome/ +aliases: +- /docs/platform/{{.version}}/ +- /docs/platform/{{.version}}/README/ +--- + +# KubeDB Platform Documentation + +This page is the entry point for KubeDB Platform documentation. + +## Core sections + +- [Selfhost Setup](./selfhost-setup/) +- [Guides](./guides/) + +## Contributor resources + +- [Contributing](./contributing.md) +- [Support](./support.md) + +Use [Guides](./guides/) for day-to-day workflows, then continue to [Selfhost Setup](./selfhost-setup/) for deployment-specific instructions. diff --git a/docs/platform/_index.md b/docs/platform/_index.md index f437b2e..6b42572 100644 --- a/docs/platform/_index.md +++ b/docs/platform/_index.md @@ -1,6 +1,10 @@ --- title: KubeDB Platform -layout: platform_single +layout: docs +menu: + docsplatform_{{.version}}: + identifier: welcome + name: Welcome + weight: 10 menu_name: docsplatform_{{.version}} -section_menu_id: welcome --- diff --git a/docs/platform/welcome/contributing.md b/docs/platform/contributing.md similarity index 92% rename from docs/platform/welcome/contributing.md rename to docs/platform/contributing.md index 37bb378..31bab14 100644 --- a/docs/platform/welcome/contributing.md +++ b/docs/platform/contributing.md @@ -1,8 +1,8 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: - identifier: welcome-contributing + identifier: platform-contributing name: Contributing parent: welcome weight: 10 @@ -10,7 +10,6 @@ menu_name: docsplatform_{{.version}} section_menu_id: welcome --- - # Contribution Guidelines Want to contribute to KubeDB? diff --git a/docs/platform/guides/README.md b/docs/platform/guides/README.md new file mode 100644 index 0000000..7bd5891 --- /dev/null +++ b/docs/platform/guides/README.md @@ -0,0 +1,32 @@ +--- +layout: docs +menu: + docsplatform_{{.version}}: + identifier: guides-readme + name: Guides + parent: guides + weight: -1 +menu_name: docsplatform_{{.version}} +section_menu_id: guides +url: /docs/platform/{{.version}}/guides/ +aliases: +- /docs/platform/{{.version}}/guides/README/ +--- + +# Platform Guides + +This section contains practical, task-oriented guides for operating and managing the platform. + +## Guide categories + +- [Account Management](./account-management/) +- [Billing and Usage Guide](./billing-and-usage-guide/) +- [Cluster Management](./cluster-management/) +- [Database Management](./database-management/) +- [Get Started](./get-started/) +- [Integrations](./integrations/) +- [License Management](./license-management/) + +## Recommended path + +For first-time users, start with [Get Started](./get-started/) and then move to the specific management areas relevant to your workflow. diff --git a/docs/platform/guides/_index.md b/docs/platform/guides/_index.md index 459e57f..81b0021 100644 --- a/docs/platform/guides/_index.md +++ b/docs/platform/guides/_index.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: guides diff --git a/docs/platform/guides/account-management/_index.md b/docs/platform/guides/account-management/_index.md index 5cda797..84ce71b 100644 --- a/docs/platform/guides/account-management/_index.md +++ b/docs/platform/guides/account-management/_index.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management diff --git a/docs/platform/guides/account-management/access-tokens.md b/docs/platform/guides/account-management/access-tokens.md index 53b5e91..4a1b147 100644 --- a/docs/platform/guides/account-management/access-tokens.md +++ b/docs/platform/guides/account-management/access-tokens.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-accesstokens diff --git a/docs/platform/guides/account-management/delete-account.md b/docs/platform/guides/account-management/delete-account.md index fbca492..dbad1cc 100644 --- a/docs/platform/guides/account-management/delete-account.md +++ b/docs/platform/guides/account-management/delete-account.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-deleteaccount diff --git a/docs/platform/guides/account-management/kubernetes/_index.md b/docs/platform/guides/account-management/kubernetes/_index.md index 5d1dd32..78d9466 100644 --- a/docs/platform/guides/account-management/kubernetes/_index.md +++ b/docs/platform/guides/account-management/kubernetes/_index.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-kubernetes diff --git a/docs/platform/guides/account-management/kubernetes/credentials.md b/docs/platform/guides/account-management/kubernetes/credentials.md index c02effd..4f44777 100644 --- a/docs/platform/guides/account-management/kubernetes/credentials.md +++ b/docs/platform/guides/account-management/kubernetes/credentials.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-kubernetes-creds diff --git a/docs/platform/guides/account-management/manage-profile.md b/docs/platform/guides/account-management/manage-profile.md index 03d9844..7dbcbc0 100644 --- a/docs/platform/guides/account-management/manage-profile.md +++ b/docs/platform/guides/account-management/manage-profile.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-manageprofile diff --git a/docs/platform/guides/account-management/manage-security.md b/docs/platform/guides/account-management/manage-security.md index dbbbcea..f736665 100644 --- a/docs/platform/guides/account-management/manage-security.md +++ b/docs/platform/guides/account-management/manage-security.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-security diff --git a/docs/platform/guides/account-management/oauth2-apps.md b/docs/platform/guides/account-management/oauth2-apps.md index 2c1c9c7..1849bf2 100644 --- a/docs/platform/guides/account-management/oauth2-apps.md +++ b/docs/platform/guides/account-management/oauth2-apps.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-oauth2apps diff --git a/docs/platform/guides/account-management/orgs-members.md b/docs/platform/guides/account-management/orgs-members.md index 728189c..5f84b04 100644 --- a/docs/platform/guides/account-management/orgs-members.md +++ b/docs/platform/guides/account-management/orgs-members.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-orgmembers diff --git a/docs/platform/guides/account-management/site-administration/_index.md b/docs/platform/guides/account-management/site-administration/_index.md index 1dd3d7d..ee50752 100644 --- a/docs/platform/guides/account-management/site-administration/_index.md +++ b/docs/platform/guides/account-management/site-administration/_index.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-siteadmin diff --git a/docs/platform/guides/account-management/site-administration/ace-upgrade.md b/docs/platform/guides/account-management/site-administration/ace-upgrade.md index 0dcb365..ff00bfd 100644 --- a/docs/platform/guides/account-management/site-administration/ace-upgrade.md +++ b/docs/platform/guides/account-management/site-administration/ace-upgrade.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-siteadmin-ace-upgrade diff --git a/docs/platform/guides/account-management/site-administration/authentication-sources.md b/docs/platform/guides/account-management/site-administration/authentication-sources.md index 55e9dba..0696086 100644 --- a/docs/platform/guides/account-management/site-administration/authentication-sources.md +++ b/docs/platform/guides/account-management/site-administration/authentication-sources.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-siteadmin-authentication-sources diff --git a/docs/platform/guides/account-management/site-administration/branding.md b/docs/platform/guides/account-management/site-administration/branding.md index e5a3ea6..81a0441 100644 --- a/docs/platform/guides/account-management/site-administration/branding.md +++ b/docs/platform/guides/account-management/site-administration/branding.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-siteadmin-branding diff --git a/docs/platform/guides/account-management/site-administration/client-org.md b/docs/platform/guides/account-management/site-administration/client-org.md index 6c6d0e2..2f21a16 100644 --- a/docs/platform/guides/account-management/site-administration/client-org.md +++ b/docs/platform/guides/account-management/site-administration/client-org.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-siteadmin-clientorg diff --git a/docs/platform/guides/account-management/site-administration/dashboard.md b/docs/platform/guides/account-management/site-administration/dashboard.md index 3cda38c..8c169aa 100644 --- a/docs/platform/guides/account-management/site-administration/dashboard.md +++ b/docs/platform/guides/account-management/site-administration/dashboard.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-siteadmin-dashboard diff --git a/docs/platform/guides/account-management/site-administration/delete-account.md b/docs/platform/guides/account-management/site-administration/delete-account.md index 0d76217..2742198 100644 --- a/docs/platform/guides/account-management/site-administration/delete-account.md +++ b/docs/platform/guides/account-management/site-administration/delete-account.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-siteadmin-deleteaccount diff --git a/docs/platform/guides/account-management/site-administration/external-authentication-sources.md b/docs/platform/guides/account-management/site-administration/external-authentication-sources.md index ad69be2..71350e6 100644 --- a/docs/platform/guides/account-management/site-administration/external-authentication-sources.md +++ b/docs/platform/guides/account-management/site-administration/external-authentication-sources.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-siteadmin-external-authentication-sources diff --git a/docs/platform/guides/account-management/site-administration/organizations.md b/docs/platform/guides/account-management/site-administration/organizations.md index d47cd71..db025fa 100644 --- a/docs/platform/guides/account-management/site-administration/organizations.md +++ b/docs/platform/guides/account-management/site-administration/organizations.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-siteadmin-organizations diff --git a/docs/platform/guides/account-management/site-administration/sign-up-configuration.md b/docs/platform/guides/account-management/site-administration/sign-up-configuration.md index be88160..b8d962b 100644 --- a/docs/platform/guides/account-management/site-administration/sign-up-configuration.md +++ b/docs/platform/guides/account-management/site-administration/sign-up-configuration.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-siteadmin-signupconfig diff --git a/docs/platform/guides/account-management/site-administration/user-account.md b/docs/platform/guides/account-management/site-administration/user-account.md index e3475d1..50978e1 100644 --- a/docs/platform/guides/account-management/site-administration/user-account.md +++ b/docs/platform/guides/account-management/site-administration/user-account.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: account-management-siteadmin-useraccount diff --git a/docs/platform/guides/billing-and-usage-guide/_index.md b/docs/platform/guides/billing-and-usage-guide/_index.md index d462c14..f2b9df2 100644 --- a/docs/platform/guides/billing-and-usage-guide/_index.md +++ b/docs/platform/guides/billing-and-usage-guide/_index.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: billing-and-usage-guide diff --git a/docs/platform/guides/billing-and-usage-guide/cost-management.md b/docs/platform/guides/billing-and-usage-guide/cost-management.md index 7c8a9c6..6fb8b17 100644 --- a/docs/platform/guides/billing-and-usage-guide/cost-management.md +++ b/docs/platform/guides/billing-and-usage-guide/cost-management.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: billing-and-usage-guide-cost-management diff --git a/docs/platform/guides/billing-and-usage-guide/dbaas-client-billing.md b/docs/platform/guides/billing-and-usage-guide/dbaas-client-billing.md index c1b9b8b..c9f288e 100644 --- a/docs/platform/guides/billing-and-usage-guide/dbaas-client-billing.md +++ b/docs/platform/guides/billing-and-usage-guide/dbaas-client-billing.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: billing-and-usage-guide-dbaas-client-billing diff --git a/docs/platform/guides/billing-and-usage-guide/overview.md b/docs/platform/guides/billing-and-usage-guide/overview.md index ee51c21..4e9a457 100644 --- a/docs/platform/guides/billing-and-usage-guide/overview.md +++ b/docs/platform/guides/billing-and-usage-guide/overview.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: billing-and-usage-guide-overview diff --git a/docs/platform/guides/cluster-management/_index.md b/docs/platform/guides/cluster-management/_index.md index f502fae..529a078 100644 --- a/docs/platform/guides/cluster-management/_index.md +++ b/docs/platform/guides/cluster-management/_index.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management diff --git a/docs/platform/guides/cluster-management/add-cluster/_index.md b/docs/platform/guides/cluster-management/add-cluster/_index.md index 5d370df..2efea62 100644 --- a/docs/platform/guides/cluster-management/add-cluster/_index.md +++ b/docs/platform/guides/cluster-management/add-cluster/_index.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-add diff --git a/docs/platform/guides/cluster-management/add-cluster/create-vendor-managed.md b/docs/platform/guides/cluster-management/add-cluster/create-vendor-managed.md index 5d9b015..aee2045 100644 --- a/docs/platform/guides/cluster-management/add-cluster/create-vendor-managed.md +++ b/docs/platform/guides/cluster-management/add-cluster/create-vendor-managed.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-add-createvendormanaged diff --git a/docs/platform/guides/cluster-management/add-cluster/import-rancher-cluster.md b/docs/platform/guides/cluster-management/add-cluster/import-rancher-cluster.md index 48e55c4..1f4b3b6 100644 --- a/docs/platform/guides/cluster-management/add-cluster/import-rancher-cluster.md +++ b/docs/platform/guides/cluster-management/add-cluster/import-rancher-cluster.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-add-rancher diff --git a/docs/platform/guides/cluster-management/add-cluster/import-vendor-managed.md b/docs/platform/guides/cluster-management/add-cluster/import-vendor-managed.md index 4776cc5..b531e37 100644 --- a/docs/platform/guides/cluster-management/add-cluster/import-vendor-managed.md +++ b/docs/platform/guides/cluster-management/add-cluster/import-vendor-managed.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-add-vendormanaged diff --git a/docs/platform/guides/cluster-management/add-cluster/overview.md b/docs/platform/guides/cluster-management/add-cluster/overview.md index d81d64a..bb66233 100644 --- a/docs/platform/guides/cluster-management/add-cluster/overview.md +++ b/docs/platform/guides/cluster-management/add-cluster/overview.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-add-overview diff --git a/docs/platform/guides/cluster-management/add-cluster/self-managed/_index.md b/docs/platform/guides/cluster-management/add-cluster/self-managed/_index.md index 02d386f..6e0b127 100644 --- a/docs/platform/guides/cluster-management/add-cluster/self-managed/_index.md +++ b/docs/platform/guides/cluster-management/add-cluster/self-managed/_index.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-add-selfmanaged diff --git a/docs/platform/guides/cluster-management/add-cluster/self-managed/import-private.md b/docs/platform/guides/cluster-management/add-cluster/self-managed/import-private.md index ae6b1b9..e80ecac 100644 --- a/docs/platform/guides/cluster-management/add-cluster/self-managed/import-private.md +++ b/docs/platform/guides/cluster-management/add-cluster/self-managed/import-private.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-add-importprivatecluster diff --git a/docs/platform/guides/cluster-management/add-cluster/self-managed/import-public.md b/docs/platform/guides/cluster-management/add-cluster/self-managed/import-public.md index 602f04b..6e3d7e2 100644 --- a/docs/platform/guides/cluster-management/add-cluster/self-managed/import-public.md +++ b/docs/platform/guides/cluster-management/add-cluster/self-managed/import-public.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-add-importpubliccluster diff --git a/docs/platform/guides/cluster-management/add-cluster/self-managed/import-self-managed.md b/docs/platform/guides/cluster-management/add-cluster/self-managed/import-self-managed.md index 066bdce..c3d3280 100644 --- a/docs/platform/guides/cluster-management/add-cluster/self-managed/import-self-managed.md +++ b/docs/platform/guides/cluster-management/add-cluster/self-managed/import-self-managed.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-add-selfmanaged-overview diff --git a/docs/platform/guides/cluster-management/cluster-features.md b/docs/platform/guides/cluster-management/cluster-features.md index 133c389..b302915 100644 --- a/docs/platform/guides/cluster-management/cluster-features.md +++ b/docs/platform/guides/cluster-management/cluster-features.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-feature diff --git a/docs/platform/guides/cluster-management/cluster-helm-charts.md b/docs/platform/guides/cluster-management/cluster-helm-charts.md index b16f489..0545b86 100644 --- a/docs/platform/guides/cluster-management/cluster-helm-charts.md +++ b/docs/platform/guides/cluster-management/cluster-helm-charts.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-helmcharts diff --git a/docs/platform/guides/cluster-management/cluster-overview.md b/docs/platform/guides/cluster-management/cluster-overview.md index 579372a..ad4b338 100644 --- a/docs/platform/guides/cluster-management/cluster-overview.md +++ b/docs/platform/guides/cluster-management/cluster-overview.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-overview diff --git a/docs/platform/guides/cluster-management/cluster-presets.md b/docs/platform/guides/cluster-management/cluster-presets.md index aa9054e..646aebc 100644 --- a/docs/platform/guides/cluster-management/cluster-presets.md +++ b/docs/platform/guides/cluster-management/cluster-presets.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-preset diff --git a/docs/platform/guides/cluster-management/cluster-sidebar.md b/docs/platform/guides/cluster-management/cluster-sidebar.md index c7708f1..c67d138 100644 --- a/docs/platform/guides/cluster-management/cluster-sidebar.md +++ b/docs/platform/guides/cluster-management/cluster-sidebar.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-sidebar diff --git a/docs/platform/guides/cluster-management/cluster-workload.md b/docs/platform/guides/cluster-management/cluster-workload.md index 92b7b5d..3c39018 100644 --- a/docs/platform/guides/cluster-management/cluster-workload.md +++ b/docs/platform/guides/cluster-management/cluster-workload.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-k8sworkloads diff --git a/docs/platform/guides/cluster-management/constraints-violations.md b/docs/platform/guides/cluster-management/constraints-violations.md index cffb8bd..3306af8 100644 --- a/docs/platform/guides/cluster-management/constraints-violations.md +++ b/docs/platform/guides/cluster-management/constraints-violations.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-gatekeeper diff --git a/docs/platform/guides/cluster-management/hub-ui/_index.md b/docs/platform/guides/cluster-management/hub-ui/_index.md index 1ea38a7..007c9ff 100644 --- a/docs/platform/guides/cluster-management/hub-ui/_index.md +++ b/docs/platform/guides/cluster-management/hub-ui/_index.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: hub-ui diff --git a/docs/platform/guides/cluster-management/hub-ui/cluster-and-clusterset.md b/docs/platform/guides/cluster-management/hub-ui/cluster-and-clusterset.md index 815d60a..26814c3 100644 --- a/docs/platform/guides/cluster-management/hub-ui/cluster-and-clusterset.md +++ b/docs/platform/guides/cluster-management/hub-ui/cluster-and-clusterset.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: hub-ui-cluster diff --git a/docs/platform/guides/cluster-management/hub-ui/create.md b/docs/platform/guides/cluster-management/hub-ui/create.md index d457849..7f3f1e4 100644 --- a/docs/platform/guides/cluster-management/hub-ui/create.md +++ b/docs/platform/guides/cluster-management/hub-ui/create.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: hub-ui-create diff --git a/docs/platform/guides/cluster-management/hub-ui/introduction.md b/docs/platform/guides/cluster-management/hub-ui/introduction.md index 20c4d7b..7986b83 100644 --- a/docs/platform/guides/cluster-management/hub-ui/introduction.md +++ b/docs/platform/guides/cluster-management/hub-ui/introduction.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: hub-ui-introduction diff --git a/docs/platform/guides/cluster-management/hub-ui/license-management.md b/docs/platform/guides/cluster-management/hub-ui/license-management.md index e548438..89e9334 100644 --- a/docs/platform/guides/cluster-management/hub-ui/license-management.md +++ b/docs/platform/guides/cluster-management/hub-ui/license-management.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: hub-ui-license diff --git a/docs/platform/guides/cluster-management/hub-ui/permission.md b/docs/platform/guides/cluster-management/hub-ui/permission.md index 7cd4f89..e22e88f 100644 --- a/docs/platform/guides/cluster-management/hub-ui/permission.md +++ b/docs/platform/guides/cluster-management/hub-ui/permission.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: hub-ui-permission diff --git a/docs/platform/guides/cluster-management/hub-ui/spoke.md b/docs/platform/guides/cluster-management/hub-ui/spoke.md index de32589..b2f20d4 100644 --- a/docs/platform/guides/cluster-management/hub-ui/spoke.md +++ b/docs/platform/guides/cluster-management/hub-ui/spoke.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: hub-ui-spoke diff --git a/docs/platform/guides/cluster-management/hub-ui/upgrade.md b/docs/platform/guides/cluster-management/hub-ui/upgrade.md index 5afbafc..7e7bbb4 100644 --- a/docs/platform/guides/cluster-management/hub-ui/upgrade.md +++ b/docs/platform/guides/cluster-management/hub-ui/upgrade.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: hub-ui-upgrade diff --git a/docs/platform/guides/cluster-management/project-quota.md b/docs/platform/guides/cluster-management/project-quota.md index 90ed52b..a6c13ff 100644 --- a/docs/platform/guides/cluster-management/project-quota.md +++ b/docs/platform/guides/cluster-management/project-quota.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-project-quota diff --git a/docs/platform/guides/cluster-management/remove-cluster.md b/docs/platform/guides/cluster-management/remove-cluster.md index 2f2653c..bb91ee6 100644 --- a/docs/platform/guides/cluster-management/remove-cluster.md +++ b/docs/platform/guides/cluster-management/remove-cluster.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-deletecluster diff --git a/docs/platform/guides/cluster-management/security-report.md b/docs/platform/guides/cluster-management/security-report.md index a5677d2..94599ec 100644 --- a/docs/platform/guides/cluster-management/security-report.md +++ b/docs/platform/guides/cluster-management/security-report.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: cluster-management-securityreport diff --git a/docs/platform/guides/database-management/_index.md b/docs/platform/guides/database-management/_index.md index 82cea12..8b90491 100644 --- a/docs/platform/guides/database-management/_index.md +++ b/docs/platform/guides/database-management/_index.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management diff --git a/docs/platform/guides/database-management/backup-configuration.md b/docs/platform/guides/database-management/backup-configuration.md index 07f372a..fafc59c 100644 --- a/docs/platform/guides/database-management/backup-configuration.md +++ b/docs/platform/guides/database-management/backup-configuration.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-backup-configuration diff --git a/docs/platform/guides/database-management/backup-storage.md b/docs/platform/guides/database-management/backup-storage.md index 906a200..042735b 100644 --- a/docs/platform/guides/database-management/backup-storage.md +++ b/docs/platform/guides/database-management/backup-storage.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-backup-storage diff --git a/docs/platform/guides/database-management/backup.md b/docs/platform/guides/database-management/backup.md index 311d3d8..875f8e0 100644 --- a/docs/platform/guides/database-management/backup.md +++ b/docs/platform/guides/database-management/backup.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-backup diff --git a/docs/platform/guides/database-management/contraint-violations.md b/docs/platform/guides/database-management/contraint-violations.md index 10a5b4c..0fd416d 100644 --- a/docs/platform/guides/database-management/contraint-violations.md +++ b/docs/platform/guides/database-management/contraint-violations.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-gatekeeper diff --git a/docs/platform/guides/database-management/create-database.md b/docs/platform/guides/database-management/create-database.md index 53159b9..96d161a 100644 --- a/docs/platform/guides/database-management/create-database.md +++ b/docs/platform/guides/database-management/create-database.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-create diff --git a/docs/platform/guides/database-management/database-usage-insight.md b/docs/platform/guides/database-management/database-usage-insight.md index c8fd33f..13d05ec 100644 --- a/docs/platform/guides/database-management/database-usage-insight.md +++ b/docs/platform/guides/database-management/database-usage-insight.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-insights diff --git a/docs/platform/guides/database-management/delete-database.md b/docs/platform/guides/database-management/delete-database.md index 4f54b1c..44ae891 100644 --- a/docs/platform/guides/database-management/delete-database.md +++ b/docs/platform/guides/database-management/delete-database.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-delete diff --git a/docs/platform/guides/database-management/expose-via-gateway.md b/docs/platform/guides/database-management/expose-via-gateway.md index 097ce9c..3871318 100644 --- a/docs/platform/guides/database-management/expose-via-gateway.md +++ b/docs/platform/guides/database-management/expose-via-gateway.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-expose-via-gateway diff --git a/docs/platform/guides/database-management/instant-backup-restore.md b/docs/platform/guides/database-management/instant-backup-restore.md index 556a071..7783fea 100644 --- a/docs/platform/guides/database-management/instant-backup-restore.md +++ b/docs/platform/guides/database-management/instant-backup-restore.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-instant-backup-restore diff --git a/docs/platform/guides/database-management/manage-recommendations.md b/docs/platform/guides/database-management/manage-recommendations.md index d8fca72..2e2827b 100644 --- a/docs/platform/guides/database-management/manage-recommendations.md +++ b/docs/platform/guides/database-management/manage-recommendations.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-recommendation diff --git a/docs/platform/guides/database-management/monitoring.md b/docs/platform/guides/database-management/monitoring.md index 2cda986..a695f19 100644 --- a/docs/platform/guides/database-management/monitoring.md +++ b/docs/platform/guides/database-management/monitoring.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-monitoring diff --git a/docs/platform/guides/database-management/recent-backups.md b/docs/platform/guides/database-management/recent-backups.md index 13ce136..675d4e1 100644 --- a/docs/platform/guides/database-management/recent-backups.md +++ b/docs/platform/guides/database-management/recent-backups.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-recent-backups diff --git a/docs/platform/guides/database-management/reconfigure-database.md b/docs/platform/guides/database-management/reconfigure-database.md index c6602fa..56c106c 100644 --- a/docs/platform/guides/database-management/reconfigure-database.md +++ b/docs/platform/guides/database-management/reconfigure-database.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-reconfigure diff --git a/docs/platform/guides/database-management/repository.md b/docs/platform/guides/database-management/repository.md index 318ea01..c7bdae9 100644 --- a/docs/platform/guides/database-management/repository.md +++ b/docs/platform/guides/database-management/repository.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-repository diff --git a/docs/platform/guides/database-management/restart-database.md b/docs/platform/guides/database-management/restart-database.md index d81a859..bb75625 100644 --- a/docs/platform/guides/database-management/restart-database.md +++ b/docs/platform/guides/database-management/restart-database.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-restart diff --git a/docs/platform/guides/database-management/restore.md b/docs/platform/guides/database-management/restore.md index 688d3d9..62f7adc 100644 --- a/docs/platform/guides/database-management/restore.md +++ b/docs/platform/guides/database-management/restore.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-restore diff --git a/docs/platform/guides/database-management/scaling-storage.md b/docs/platform/guides/database-management/scaling-storage.md index ff322fc..04873e4 100644 --- a/docs/platform/guides/database-management/scaling-storage.md +++ b/docs/platform/guides/database-management/scaling-storage.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-scaling-storage diff --git a/docs/platform/guides/database-management/scaling.md b/docs/platform/guides/database-management/scaling.md index 1e3e671..7fb6a82 100644 --- a/docs/platform/guides/database-management/scaling.md +++ b/docs/platform/guides/database-management/scaling.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-scale diff --git a/docs/platform/guides/database-management/security-report.md b/docs/platform/guides/database-management/security-report.md index 5dc0191..07004f8 100644 --- a/docs/platform/guides/database-management/security-report.md +++ b/docs/platform/guides/database-management/security-report.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-security diff --git a/docs/platform/guides/database-management/snapshot.md b/docs/platform/guides/database-management/snapshot.md index bed5378..1fbf86b 100644 --- a/docs/platform/guides/database-management/snapshot.md +++ b/docs/platform/guides/database-management/snapshot.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-snapshot diff --git a/docs/platform/guides/database-management/tls.md b/docs/platform/guides/database-management/tls.md index 0b9187e..6ed12f8 100644 --- a/docs/platform/guides/database-management/tls.md +++ b/docs/platform/guides/database-management/tls.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-tls diff --git a/docs/platform/guides/database-management/upgrade-version.md b/docs/platform/guides/database-management/upgrade-version.md index b5b83ee..7f1b82e 100644 --- a/docs/platform/guides/database-management/upgrade-version.md +++ b/docs/platform/guides/database-management/upgrade-version.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: database-management-update diff --git a/docs/platform/guides/get-started/_index.md b/docs/platform/guides/get-started/_index.md index 43993b9..679b582 100644 --- a/docs/platform/guides/get-started/_index.md +++ b/docs/platform/guides/get-started/_index.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: guide-start diff --git a/docs/platform/guides/get-started/add-cluster.md b/docs/platform/guides/get-started/add-cluster.md index 84892f9..d29421c 100644 --- a/docs/platform/guides/get-started/add-cluster.md +++ b/docs/platform/guides/get-started/add-cluster.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: guide-start-cluster diff --git a/docs/platform/guides/get-started/add-credential.md b/docs/platform/guides/get-started/add-credential.md index 94f097a..9b8c2a5 100644 --- a/docs/platform/guides/get-started/add-credential.md +++ b/docs/platform/guides/get-started/add-credential.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: guide-start-credential diff --git a/docs/platform/guides/get-started/architecture.md b/docs/platform/guides/get-started/architecture.md index 8271c1b..c54831b 100644 --- a/docs/platform/guides/get-started/architecture.md +++ b/docs/platform/guides/get-started/architecture.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: guide-architecture diff --git a/docs/platform/guides/get-started/enable-features.md b/docs/platform/guides/get-started/enable-features.md index fe0fb9a..4316e6a 100644 --- a/docs/platform/guides/get-started/enable-features.md +++ b/docs/platform/guides/get-started/enable-features.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: guide-start-features diff --git a/docs/platform/guides/get-started/manage-databases.md b/docs/platform/guides/get-started/manage-databases.md index caf1898..7d05f20 100644 --- a/docs/platform/guides/get-started/manage-databases.md +++ b/docs/platform/guides/get-started/manage-databases.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: guide-start-databases diff --git a/docs/platform/guides/get-started/register-login.md b/docs/platform/guides/get-started/register-login.md index b007b6d..fd5f9a1 100644 --- a/docs/platform/guides/get-started/register-login.md +++ b/docs/platform/guides/get-started/register-login.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: guide-start-register diff --git a/docs/platform/guides/get-started/requirements.md b/docs/platform/guides/get-started/requirements.md index 80a4d6b..a3e05d0 100644 --- a/docs/platform/guides/get-started/requirements.md +++ b/docs/platform/guides/get-started/requirements.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: guide-ace-requirements diff --git a/docs/platform/guides/integrations/_index.md b/docs/platform/guides/integrations/_index.md index cb4934b..650099d 100644 --- a/docs/platform/guides/integrations/_index.md +++ b/docs/platform/guides/integrations/_index.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: integrations diff --git a/docs/platform/guides/integrations/rancher-extension.md b/docs/platform/guides/integrations/rancher-extension.md index 64f6a8f..21e2d58 100644 --- a/docs/platform/guides/integrations/rancher-extension.md +++ b/docs/platform/guides/integrations/rancher-extension.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: rancher-extension diff --git a/docs/platform/guides/license-management/_index.md b/docs/platform/guides/license-management/_index.md index 5ad4618..6b180b9 100644 --- a/docs/platform/guides/license-management/_index.md +++ b/docs/platform/guides/license-management/_index.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: license-management diff --git a/docs/platform/guides/license-management/contract.md b/docs/platform/guides/license-management/contract.md index ecf3b79..0f347e0 100644 --- a/docs/platform/guides/license-management/contract.md +++ b/docs/platform/guides/license-management/contract.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: license-management-contract diff --git a/docs/platform/guides/license-management/license-proxyserver.md b/docs/platform/guides/license-management/license-proxyserver.md index 1de4c27..601b453 100644 --- a/docs/platform/guides/license-management/license-proxyserver.md +++ b/docs/platform/guides/license-management/license-proxyserver.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: license-management-license-proxyserver diff --git a/docs/platform/guides/license-management/overview.md b/docs/platform/guides/license-management/overview.md index faa50da..5cb1a9d 100644 --- a/docs/platform/guides/license-management/overview.md +++ b/docs/platform/guides/license-management/overview.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: license-management-overview diff --git a/docs/platform/guides/license-management/troubleshoots.md b/docs/platform/guides/license-management/troubleshoots.md index b12d23e..2c8e2e7 100644 --- a/docs/platform/guides/license-management/troubleshoots.md +++ b/docs/platform/guides/license-management/troubleshoots.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: license-management-license-proxyserver-troubleshoot diff --git a/docs/platform/overview.md b/docs/platform/overview.md deleted file mode 100644 index ef5cc2e..0000000 --- a/docs/platform/overview.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -layout: platform_single -menu: - docsplatform_{{.version}}: - identifier: overview - name: Overview - weight: 20 -menu_name: docsplatform_{{.version}} -section_menu_id: overview ---- - - -# Appscode Container Engine - -Kubernetes has emerged as the de-facto way to deploy modern containerized apps on cloud or on-premises. “Despite all that growth on the application layer, the data layer hasn’t gotten as much traction with containerization” - Google. That’s not surprising, since handling things like state (the database), availability to other layers of the application, and redundancy for a database makes it challenging to run a database in a distributed environment like Kubernetes. diff --git a/docs/platform/selfhost-setup/README.md b/docs/platform/selfhost-setup/README.md new file mode 100644 index 0000000..be10298 --- /dev/null +++ b/docs/platform/selfhost-setup/README.md @@ -0,0 +1,31 @@ +--- +layout: docs +menu: + docsplatform_{{.version}}: + identifier: selfhost-setup-readme + name: Selfhost Setup + parent: selfhost-setup + weight: -1 +menu_name: docsplatform_{{.version}} +section_menu_id: selfhost-setup +url: /docs/platform/{{.version}}/selfhost-setup/ +aliases: +- /docs/platform/{{.version}}/selfhost-setup/README/ +--- + +# Host AppsCode Platform as Your Own + +Welcome to AppsCode Platform's Self-Hosted deployment! Whether you're looking for a quick trial in "Self Hosted Demo" mode or gearing up for a production-ready environment (`Self Hosted Production`), you're in control. + +Navigate to [AppsCode Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers. + + +
+
+Click on the `Create New Installer` button to get started. You can either choose deployment type `Self Hosted Demo` or `Self Hosted Production`. Provide the required data and click `Done` button to generate the installer. Upon generation of the installer, you will get the documentation how to host AppsCode Server on your own. +
+
+To get detailed documentation on `Self Hosted Demo` installer, head over to [Demo Deployment](install/selfhosted-demo.md). +
+
+To get detailed documentation on `Self Hosted Production` installer, head over to [Production Deployment](install/selfhosted-production.md). diff --git a/docs/platform/selfhost-setup/_index.md b/docs/platform/selfhost-setup/_index.md index 5d25979..2049f7c 100644 --- a/docs/platform/selfhost-setup/_index.md +++ b/docs/platform/selfhost-setup/_index.md @@ -1,29 +1,10 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: selfhost-setup name: Selfhost Setup - weight: 30 + weight: 20 menu_name: docsplatform_{{.version}} section_menu_id: selfhost-setup --- - - -# Host AppsCode Platform as Your Own - -Welcome to AppsCode Platform's Self-Hosted deployment! Whether you're looking for a quick trial in "Self Hosted Demo" mode or gearing up for a production-ready environment (`Self Hosted Production`), you're in control. - - -Navigate to [AppsCode Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers. - - -
-
-Click on the `Create New Installer` button to get started. You can either choose deployment type `Self Hosted Demo` or `Self Hosted Production`. Provide the required data and click `Done` button to generate the installer. Upon generation of the installer, you will get the documentation how to host AppsCode Server on your own. -
-
-To get detailed documentation on `Self Hosted Demo` installer, head over to [Demo Deployment](install/selfhosted-demo.md). -
-
-To get detailed documentation on `Self Hosted Production` installer, head over to [Production Deployment](install/selfhosted-production.md). diff --git a/docs/platform/selfhost-setup/install/_index.md b/docs/platform/selfhost-setup/install/_index.md index a22e27d..ccf31f2 100644 --- a/docs/platform/selfhost-setup/install/_index.md +++ b/docs/platform/selfhost-setup/install/_index.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: selfhosted-installer diff --git a/docs/platform/selfhost-setup/install/aws-marketplace.md b/docs/platform/selfhost-setup/install/aws-marketplace.md index c23acdd..4acac43 100644 --- a/docs/platform/selfhost-setup/install/aws-marketplace.md +++ b/docs/platform/selfhost-setup/install/aws-marketplace.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: aws-marketplace diff --git a/docs/platform/selfhost-setup/install/azure-marketplace.md b/docs/platform/selfhost-setup/install/azure-marketplace.md index 399b654..6297f63 100644 --- a/docs/platform/selfhost-setup/install/azure-marketplace.md +++ b/docs/platform/selfhost-setup/install/azure-marketplace.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: azure-marketplace diff --git a/docs/platform/selfhost-setup/install/cloud-demo.md b/docs/platform/selfhost-setup/install/cloud-demo.md index ae398fe..1e64e5e 100644 --- a/docs/platform/selfhost-setup/install/cloud-demo.md +++ b/docs/platform/selfhost-setup/install/cloud-demo.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: selfhost-cloud-demo-deployment diff --git a/docs/platform/selfhost-setup/install/k8s-app-demo.md b/docs/platform/selfhost-setup/install/k8s-app-demo.md index 11b2cbf..59653b6 100644 --- a/docs/platform/selfhost-setup/install/k8s-app-demo.md +++ b/docs/platform/selfhost-setup/install/k8s-app-demo.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: selfhost-k8s-app-demo-deployment diff --git a/docs/platform/selfhost-setup/install/onprem-demo.md b/docs/platform/selfhost-setup/install/onprem-demo.md index d7f126b..ccf1861 100644 --- a/docs/platform/selfhost-setup/install/onprem-demo.md +++ b/docs/platform/selfhost-setup/install/onprem-demo.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: selfhost-onprem-demo-deployment diff --git a/docs/platform/selfhost-setup/install/openshift-demo.md b/docs/platform/selfhost-setup/install/openshift-demo.md index 8bdc147..e3dce1f 100644 --- a/docs/platform/selfhost-setup/install/openshift-demo.md +++ b/docs/platform/selfhost-setup/install/openshift-demo.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: selfhost-openshift-demo diff --git a/docs/platform/selfhost-setup/install/selfhosted-production.md b/docs/platform/selfhost-setup/install/selfhosted-production.md index b01f1f3..da1cd08 100644 --- a/docs/platform/selfhost-setup/install/selfhosted-production.md +++ b/docs/platform/selfhost-setup/install/selfhosted-production.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: selfhost-prod-deployment diff --git a/docs/platform/selfhost-setup/install/troubleshoot.md b/docs/platform/selfhost-setup/install/troubleshoot.md index c7a2dad..9e3f832 100644 --- a/docs/platform/selfhost-setup/install/troubleshoot.md +++ b/docs/platform/selfhost-setup/install/troubleshoot.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: selfhost-setup-install-troubleshoot diff --git a/docs/platform/selfhost-setup/uninstall.md b/docs/platform/selfhost-setup/uninstall.md index a467036..bef3c6e 100644 --- a/docs/platform/selfhost-setup/uninstall.md +++ b/docs/platform/selfhost-setup/uninstall.md @@ -1,5 +1,5 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: identifier: selfhost-setup-uninstall diff --git a/docs/platform/welcome/support.md b/docs/platform/support.md similarity index 88% rename from docs/platform/welcome/support.md rename to docs/platform/support.md index 2419ed7..1767827 100644 --- a/docs/platform/welcome/support.md +++ b/docs/platform/support.md @@ -1,8 +1,8 @@ --- -layout: platform_single +layout: docs menu: docsplatform_{{.version}}: - identifier: welcome-support + identifier: platform-support name: Support parent: welcome weight: 20 @@ -10,7 +10,6 @@ menu_name: docsplatform_{{.version}} section_menu_id: welcome --- - # Support To speak with us, please leave a message on our [website](https://appscode.com/contact/). To receive product announcements, follow us on [Twitter](https://twitter.com/AppsCodeHQ). diff --git a/docs/platform/welcome/_index.md b/docs/platform/welcome/_index.md deleted file mode 100644 index 871a6b5..0000000 --- a/docs/platform/welcome/_index.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -layout: platform_single -menu: - docsplatform_{{.version}}: - identifier: welcome - name: Welcome - weight: 10 -menu_name: docsplatform_{{.version}} -section_menu_id: welcome -aliases: - - /docs/platform/v2026.3.30/ ---- - - -# Welcome - -From here you can learn all about our Cloud Platform and how to use it. - -- [Overview](/en/overview). Overview explains what Appscode Cloud Platform is. -- [Setup](/en/selfhost-setup/). Setup contains instructions for using the platform.