unleash-server 8.0.1 → 8.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/addons/addon.d.ts +10 -2
- package/dist/lib/addons/addon.d.ts.map +1 -1
- package/dist/lib/addons/addon.js +104 -6
- package/dist/lib/addons/addon.js.map +1 -1
- package/dist/lib/addons/datadog-definition.js +1 -1
- package/dist/lib/addons/datadog-definition.js.map +1 -1
- package/dist/lib/addons/datadog.test.js +2 -0
- package/dist/lib/addons/datadog.test.js.map +1 -1
- package/dist/lib/addons/feature-event-formatter-md.d.ts.map +1 -1
- package/dist/lib/addons/feature-event-formatter-md.js +5 -3
- package/dist/lib/addons/feature-event-formatter-md.js.map +1 -1
- package/dist/lib/addons/feature-event-formatter-md.test.js +3 -1
- package/dist/lib/addons/feature-event-formatter-md.test.js.map +1 -1
- package/dist/lib/addons/index.d.ts.map +1 -1
- package/dist/lib/addons/index.js +2 -0
- package/dist/lib/addons/index.js.map +1 -1
- package/dist/lib/addons/new-relic.d.ts.map +1 -1
- package/dist/lib/addons/new-relic.js +0 -1
- package/dist/lib/addons/new-relic.js.map +1 -1
- package/dist/lib/addons/new-relic.test.js +0 -1
- package/dist/lib/addons/new-relic.test.js.map +1 -1
- package/dist/lib/addons/slack.test.js +1 -2
- package/dist/lib/addons/slack.test.js.map +1 -1
- package/dist/lib/addons/teams-definition.d.ts.map +1 -1
- package/dist/lib/addons/teams-definition.js +1 -0
- package/dist/lib/addons/teams-definition.js.map +1 -1
- package/dist/lib/addons/teams-workflow-definition.d.ts +4 -0
- package/dist/lib/addons/teams-workflow-definition.d.ts.map +1 -0
- package/dist/lib/addons/teams-workflow-definition.js +66 -0
- package/dist/lib/addons/teams-workflow-definition.js.map +1 -0
- package/dist/lib/addons/teams-workflow.d.ts +15 -0
- package/dist/lib/addons/teams-workflow.d.ts.map +1 -0
- package/dist/lib/addons/teams-workflow.js +110 -0
- package/dist/lib/addons/teams-workflow.js.map +1 -0
- package/dist/lib/addons/teams-workflow.test.d.ts +2 -0
- package/dist/lib/addons/teams-workflow.test.d.ts.map +1 -0
- package/dist/lib/addons/teams-workflow.test.js +202 -0
- package/dist/lib/addons/teams-workflow.test.js.map +1 -0
- package/dist/lib/addons/teams.d.ts.map +1 -1
- package/dist/lib/addons/teams.js +0 -1
- package/dist/lib/addons/teams.js.map +1 -1
- package/dist/lib/addons/teams.test.js +0 -1
- package/dist/lib/addons/teams.test.js.map +1 -1
- package/dist/lib/addons/validate-url.d.ts +18 -0
- package/dist/lib/addons/validate-url.d.ts.map +1 -0
- package/dist/lib/addons/validate-url.js +93 -0
- package/dist/lib/addons/validate-url.js.map +1 -0
- package/dist/lib/addons/validate-url.test.d.ts +2 -0
- package/dist/lib/addons/validate-url.test.d.ts.map +1 -0
- package/dist/lib/addons/validate-url.test.js +199 -0
- package/dist/lib/addons/validate-url.test.js.map +1 -0
- package/dist/lib/addons/webhook.d.ts.map +1 -1
- package/dist/lib/addons/webhook.js +28 -2
- package/dist/lib/addons/webhook.js.map +1 -1
- package/dist/lib/addons/webhook.test.js +72 -0
- package/dist/lib/addons/webhook.test.js.map +1 -1
- package/dist/lib/app.d.ts.map +1 -1
- package/dist/lib/app.js +2 -0
- package/dist/lib/app.js.map +1 -1
- package/dist/lib/create-config.d.ts.map +1 -1
- package/dist/lib/create-config.js +8 -0
- package/dist/lib/create-config.js.map +1 -1
- package/dist/lib/error/bad-data-error.d.ts.map +1 -1
- package/dist/lib/error/bad-data-error.js +10 -2
- package/dist/lib/error/bad-data-error.js.map +1 -1
- package/dist/lib/error/unleash-error.test.js +23 -0
- package/dist/lib/error/unleash-error.test.js.map +1 -1
- package/dist/lib/features/context/context-field-store.d.ts +1 -1
- package/dist/lib/features/context/context-field-store.d.ts.map +1 -1
- package/dist/lib/features/context/context-field-store.js +1 -5
- package/dist/lib/features/context/context-field-store.js.map +1 -1
- package/dist/lib/features/context/context-service.d.ts +5 -4
- package/dist/lib/features/context/context-service.d.ts.map +1 -1
- package/dist/lib/features/context/context-service.js +20 -27
- package/dist/lib/features/context/context-service.js.map +1 -1
- package/dist/lib/features/context/context-service.test.d.ts +2 -0
- package/dist/lib/features/context/context-service.test.d.ts.map +1 -0
- package/dist/lib/features/context/context-service.test.js +24 -0
- package/dist/lib/features/context/context-service.test.js.map +1 -0
- package/dist/lib/features/context/context.d.ts +1 -0
- package/dist/lib/features/context/context.d.ts.map +1 -1
- package/dist/lib/features/context/context.js +22 -10
- package/dist/lib/features/context/context.js.map +1 -1
- package/dist/lib/features/context/context.test.js +15 -1
- package/dist/lib/features/context/context.test.js.map +1 -1
- package/dist/lib/features/context/createContextService.d.ts +4 -1
- package/dist/lib/features/context/createContextService.d.ts.map +1 -1
- package/dist/lib/features/context/createContextService.js +2 -1
- package/dist/lib/features/context/createContextService.js.map +1 -1
- package/dist/lib/features/context/fake-context-field-store.d.ts +1 -1
- package/dist/lib/features/context/fake-context-field-store.d.ts.map +1 -1
- package/dist/lib/features/context/fake-context-field-store.js +1 -6
- package/dist/lib/features/context/fake-context-field-store.js.map +1 -1
- package/dist/lib/features/export-import-toggles/createExportImportService.js +1 -1
- package/dist/lib/features/export-import-toggles/createExportImportService.js.map +1 -1
- package/dist/lib/features/feature-toggle/converters/feature-toggle-row-converter.d.ts +1 -1
- package/dist/lib/features/feature-toggle/fakes/fake-feature-strategies-store.d.ts +2 -1
- package/dist/lib/features/feature-toggle/fakes/fake-feature-strategies-store.d.ts.map +1 -1
- package/dist/lib/features/feature-toggle/fakes/fake-feature-strategies-store.js +5 -0
- package/dist/lib/features/feature-toggle/fakes/fake-feature-strategies-store.js.map +1 -1
- package/dist/lib/features/feature-toggle/feature-toggle-controller.d.ts +1 -1
- package/dist/lib/features/feature-toggle/feature-toggle-controller.d.ts.map +1 -1
- package/dist/lib/features/feature-toggle/feature-toggle-controller.js +22 -2
- package/dist/lib/features/feature-toggle/feature-toggle-controller.js.map +1 -1
- package/dist/lib/features/feature-toggle/feature-toggle-service.d.ts +3 -2
- package/dist/lib/features/feature-toggle/feature-toggle-service.d.ts.map +1 -1
- package/dist/lib/features/feature-toggle/feature-toggle-service.js +11 -4
- package/dist/lib/features/feature-toggle/feature-toggle-service.js.map +1 -1
- package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.d.ts +2 -0
- package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.d.ts.map +1 -1
- package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.js +7 -0
- package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.js.map +1 -1
- package/dist/lib/features/feature-toggle/tests/feature-toggles.e2e.test.js +4 -0
- package/dist/lib/features/feature-toggle/tests/feature-toggles.e2e.test.js.map +1 -1
- package/dist/lib/features/feature-toggle/types/feature-toggle-strategies-store-type.d.ts +6 -0
- package/dist/lib/features/feature-toggle/types/feature-toggle-strategies-store-type.d.ts.map +1 -1
- package/dist/lib/features/frontend-api/frontend-api-service.d.ts.map +1 -1
- package/dist/lib/features/frontend-api/frontend-api-service.js +17 -20
- package/dist/lib/features/frontend-api/frontend-api-service.js.map +1 -1
- package/dist/lib/features/metrics/integrations/integration-metrics.d.ts +1 -1
- package/dist/lib/features/metrics/integrations/integration-metrics.d.ts.map +1 -1
- package/dist/lib/features/metrics/integrations/integration-metrics.js +2 -0
- package/dist/lib/features/metrics/integrations/integration-metrics.js.map +1 -1
- package/dist/lib/features/playground/feature-evaluator/constraint.d.ts +2 -0
- package/dist/lib/features/playground/feature-evaluator/constraint.d.ts.map +1 -1
- package/dist/lib/features/playground/feature-evaluator/constraint.js +11 -1
- package/dist/lib/features/playground/feature-evaluator/constraint.js.map +1 -1
- package/dist/lib/features/playground/playground.test.js +2 -3
- package/dist/lib/features/playground/playground.test.js.map +1 -1
- package/dist/lib/features/release-plans/release-plan-template-store.d.ts +4 -0
- package/dist/lib/features/release-plans/release-plan-template-store.d.ts.map +1 -1
- package/dist/lib/features/release-plans/release-plan-template-store.js +25 -2
- package/dist/lib/features/release-plans/release-plan-template-store.js.map +1 -1
- package/dist/lib/features/release-plans/release-plan-template-store.test.js +75 -16
- package/dist/lib/features/release-plans/release-plan-template-store.test.js.map +1 -1
- package/dist/lib/features/release-plans/release-plan-template.d.ts +1 -0
- package/dist/lib/features/release-plans/release-plan-template.d.ts.map +1 -1
- package/dist/lib/features/scheduler/scheduler-service.test.js +1 -0
- package/dist/lib/features/scheduler/scheduler-service.test.js.map +1 -1
- package/dist/lib/features/unique-connection/unique-connection-store.e2e.test.js +3 -0
- package/dist/lib/features/unique-connection/unique-connection-store.e2e.test.js.map +1 -1
- package/dist/lib/middleware/rbac-middleware.d.ts.map +1 -1
- package/dist/lib/middleware/rbac-middleware.js +3 -4
- package/dist/lib/middleware/rbac-middleware.js.map +1 -1
- package/dist/lib/middleware/rbac-middleware.test.js +62 -24
- package/dist/lib/middleware/rbac-middleware.test.js.map +1 -1
- package/dist/lib/middleware/secure-headers.d.ts.map +1 -1
- package/dist/lib/middleware/secure-headers.js +20 -1
- package/dist/lib/middleware/secure-headers.js.map +1 -1
- package/dist/lib/middleware/session-context.d.ts +20 -0
- package/dist/lib/middleware/session-context.d.ts.map +1 -0
- package/dist/lib/middleware/session-context.js +38 -0
- package/dist/lib/middleware/session-context.js.map +1 -0
- package/dist/lib/openapi/spec/addon-create-update-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/addon-create-update-schema.js +1 -1
- package/dist/lib/openapi/spec/addons-schema.d.ts +15 -0
- package/dist/lib/openapi/spec/addons-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/addons-schema.js +51 -0
- package/dist/lib/openapi/spec/addons-schema.js.map +1 -1
- package/dist/lib/openapi/spec/admin-segment-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.d.ts +4 -4
- package/dist/lib/openapi/spec/advanced-playground-feature-schema.d.ts +8 -8
- package/dist/lib/openapi/spec/advanced-playground-response-schema.d.ts +17 -17
- package/dist/lib/openapi/spec/client-feature-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/client-features-delta-schema.d.ts +5 -5
- package/dist/lib/openapi/spec/client-features-schema.d.ts +5 -5
- package/dist/lib/openapi/spec/client-segment-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/constraint-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/create-feature-strategy-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/environment-project-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/environments-project-schema.d.ts +4 -4
- package/dist/lib/openapi/spec/export-result-schema.d.ts +68 -68
- package/dist/lib/openapi/spec/feature-environment-schema.d.ts +17 -17
- package/dist/lib/openapi/spec/feature-schema.d.ts +34 -34
- package/dist/lib/openapi/spec/feature-search-environment-schema.d.ts +34 -34
- package/dist/lib/openapi/spec/feature-search-response-schema.d.ts +68 -68
- package/dist/lib/openapi/spec/feature-strategy-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/health-overview-schema.d.ts +69 -69
- package/dist/lib/openapi/spec/health-report-schema.d.ts +69 -69
- package/dist/lib/openapi/spec/playground-constraint-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/playground-feature-schema.arbitraries.d.ts +4 -0
- package/dist/lib/openapi/spec/playground-feature-schema.arbitraries.d.ts.map +1 -0
- package/dist/lib/openapi/spec/playground-feature-schema.arbitraries.js +91 -0
- package/dist/lib/openapi/spec/playground-feature-schema.arbitraries.js.map +1 -0
- package/dist/lib/openapi/spec/playground-feature-schema.d.ts +4 -4
- package/dist/lib/openapi/spec/playground-feature-schema.test.d.ts +1 -3
- package/dist/lib/openapi/spec/playground-feature-schema.test.d.ts.map +1 -1
- package/dist/lib/openapi/spec/playground-feature-schema.test.js +1 -89
- package/dist/lib/openapi/spec/playground-feature-schema.test.js.map +1 -1
- package/dist/lib/openapi/spec/playground-request-schema.arbitraries.d.ts +4 -0
- package/dist/lib/openapi/spec/playground-request-schema.arbitraries.d.ts.map +1 -0
- package/dist/lib/openapi/spec/playground-request-schema.arbitraries.js +9 -0
- package/dist/lib/openapi/spec/playground-request-schema.arbitraries.js.map +1 -0
- package/dist/lib/openapi/spec/playground-request-schema.test.d.ts +1 -3
- package/dist/lib/openapi/spec/playground-request-schema.test.d.ts.map +1 -1
- package/dist/lib/openapi/spec/playground-request-schema.test.js +1 -8
- package/dist/lib/openapi/spec/playground-request-schema.test.js.map +1 -1
- package/dist/lib/openapi/spec/playground-response-schema.d.ts +9 -9
- package/dist/lib/openapi/spec/playground-response-schema.test.js +2 -3
- package/dist/lib/openapi/spec/playground-response-schema.test.js.map +1 -1
- package/dist/lib/openapi/spec/playground-segment-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/playground-strategy-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/profile-schema.d.ts +40 -35
- package/dist/lib/openapi/spec/profile-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/profile-schema.js +13 -1
- package/dist/lib/openapi/spec/profile-schema.js.map +1 -1
- package/dist/lib/openapi/spec/profile-schema.test.js +1 -0
- package/dist/lib/openapi/spec/profile-schema.test.js.map +1 -1
- package/dist/lib/openapi/spec/project-environment-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/project-overview-schema.d.ts +69 -69
- package/dist/lib/openapi/spec/release-plan-milestone-schema.d.ts +4 -4
- package/dist/lib/openapi/spec/release-plan-milestone-strategy-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/release-plan-schema.d.ts +8 -8
- package/dist/lib/openapi/spec/release-plan-template-schema.d.ts +14 -8
- package/dist/lib/openapi/spec/release-plan-template-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/release-plan-template-schema.js +6 -0
- package/dist/lib/openapi/spec/release-plan-template-schema.js.map +1 -1
- package/dist/lib/openapi/spec/release-plan-templates-schema.d.ts +22 -16
- package/dist/lib/openapi/spec/release-plan-templates-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/release-plans-schema.d.ts +16 -16
- package/dist/lib/openapi/spec/sdk-context-schema.arbitraries.d.ts +4 -0
- package/dist/lib/openapi/spec/sdk-context-schema.arbitraries.d.ts.map +1 -0
- package/dist/lib/openapi/spec/sdk-context-schema.arbitraries.js +12 -0
- package/dist/lib/openapi/spec/sdk-context-schema.arbitraries.js.map +1 -0
- package/dist/lib/openapi/spec/sdk-context-schema.test.d.ts +1 -3
- package/dist/lib/openapi/spec/sdk-context-schema.test.d.ts.map +1 -1
- package/dist/lib/openapi/spec/sdk-context-schema.test.js +1 -11
- package/dist/lib/openapi/spec/sdk-context-schema.test.js.map +1 -1
- package/dist/lib/openapi/spec/search-features-schema.d.ts +104 -104
- package/dist/lib/openapi/spec/segment-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/segments-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/ui-config-schema.d.ts +5 -0
- package/dist/lib/openapi/spec/ui-config-schema.d.ts.map +1 -1
- package/dist/lib/openapi/spec/ui-config-schema.js +5 -0
- package/dist/lib/openapi/spec/ui-config-schema.js.map +1 -1
- package/dist/lib/openapi/spec/update-feature-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/update-feature-strategy-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/upsert-segment-schema.d.ts +1 -1
- package/dist/lib/routes/admin-api/addon.d.ts.map +1 -1
- package/dist/lib/routes/admin-api/addon.js +6 -2
- package/dist/lib/routes/admin-api/addon.js.map +1 -1
- package/dist/lib/routes/admin-api/user/user.d.ts.map +1 -1
- package/dist/lib/routes/admin-api/user/user.js +3 -1
- package/dist/lib/routes/admin-api/user/user.js.map +1 -1
- package/dist/lib/routes/admin-api/user/user.test.js +32 -7
- package/dist/lib/routes/admin-api/user/user.test.js.map +1 -1
- package/dist/lib/routes/util.d.ts.map +1 -1
- package/dist/lib/routes/util.js +8 -1
- package/dist/lib/routes/util.js.map +1 -1
- package/dist/lib/routes/util.test.d.ts +2 -0
- package/dist/lib/routes/util.test.d.ts.map +1 -0
- package/dist/lib/routes/util.test.js +18 -0
- package/dist/lib/routes/util.test.js.map +1 -0
- package/dist/lib/schema/feature-schema.test.js +1 -1
- package/dist/lib/schema/feature-schema.test.js.map +1 -1
- package/dist/lib/schema/html-input.d.ts +4 -0
- package/dist/lib/schema/html-input.d.ts.map +1 -0
- package/dist/lib/schema/html-input.js +41 -0
- package/dist/lib/schema/html-input.js.map +1 -0
- package/dist/lib/schema/html-input.test.d.ts +2 -0
- package/dist/lib/schema/html-input.test.d.ts.map +1 -0
- package/dist/lib/schema/html-input.test.js +98 -0
- package/dist/lib/schema/html-input.test.js.map +1 -0
- package/dist/lib/server-impl.d.ts +2 -1
- package/dist/lib/server-impl.d.ts.map +1 -1
- package/dist/lib/server-impl.js +2 -1
- package/dist/lib/server-impl.js.map +1 -1
- package/dist/lib/services/addon-service.d.ts +8 -1
- package/dist/lib/services/addon-service.d.ts.map +1 -1
- package/dist/lib/services/addon-service.js +24 -1
- package/dist/lib/services/addon-service.js.map +1 -1
- package/dist/lib/services/addon-service.test.js +75 -8
- package/dist/lib/services/addon-service.test.js.map +1 -1
- package/dist/lib/services/feature-tag-service.d.ts +1 -1
- package/dist/lib/services/feature-tag-service.d.ts.map +1 -1
- package/dist/lib/services/feature-tag-service.js +5 -1
- package/dist/lib/services/feature-tag-service.js.map +1 -1
- package/dist/lib/services/index.d.ts.map +1 -1
- package/dist/lib/services/index.js +1 -1
- package/dist/lib/services/index.js.map +1 -1
- package/dist/lib/services/project-schema.d.ts +1 -2
- package/dist/lib/services/project-schema.d.ts.map +1 -1
- package/dist/lib/services/project-schema.js +4 -2
- package/dist/lib/services/project-schema.js.map +1 -1
- package/dist/lib/services/user-service.d.ts +1 -0
- package/dist/lib/services/user-service.d.ts.map +1 -1
- package/dist/lib/services/user-service.js +7 -0
- package/dist/lib/services/user-service.js.map +1 -1
- package/dist/lib/types/events.d.ts +8 -0
- package/dist/lib/types/events.d.ts.map +1 -1
- package/dist/lib/types/events.js +4 -0
- package/dist/lib/types/events.js.map +1 -1
- package/dist/lib/types/experimental.d.ts +1 -1
- package/dist/lib/types/experimental.d.ts.map +1 -1
- package/dist/lib/types/experimental.js +27 -1
- package/dist/lib/types/experimental.js.map +1 -1
- package/dist/lib/types/model.d.ts +2 -0
- package/dist/lib/types/model.d.ts.map +1 -1
- package/dist/lib/types/model.js.map +1 -1
- package/dist/lib/types/option.d.ts +5 -0
- package/dist/lib/types/option.d.ts.map +1 -1
- package/dist/lib/types/permissions.d.ts +1 -0
- package/dist/lib/types/permissions.d.ts.map +1 -1
- package/dist/lib/types/permissions.js +2 -0
- package/dist/lib/types/permissions.js.map +1 -1
- package/dist/lib/types/stores.d.ts +1 -0
- package/dist/lib/types/stores.d.ts.map +1 -1
- package/dist/lib/types/stores.js.map +1 -1
- package/dist/lib/ui-config/ui-config-controller.d.ts +1 -2
- package/dist/lib/ui-config/ui-config-controller.d.ts.map +1 -1
- package/dist/lib/ui-config/ui-config-controller.js +3 -1
- package/dist/lib/ui-config/ui-config-controller.js.map +1 -1
- package/dist/lib/ui-config/ui-config-service.d.ts +3 -2
- package/dist/lib/ui-config/ui-config-service.d.ts.map +1 -1
- package/dist/lib/ui-config/ui-config-service.js +11 -3
- package/dist/lib/ui-config/ui-config-service.js.map +1 -1
- package/dist/lib/ui-config/ui-config.test.js +25 -2
- package/dist/lib/ui-config/ui-config.test.js.map +1 -1
- package/dist/lib/util/anonymise.d.ts +1 -0
- package/dist/lib/util/anonymise.d.ts.map +1 -1
- package/dist/lib/util/anonymise.js +3 -0
- package/dist/lib/util/anonymise.js.map +1 -1
- package/dist/lib/util/anonymise.test.js +4 -1
- package/dist/lib/util/anonymise.test.js.map +1 -1
- package/dist/lib/util/constants.d.ts +3 -1
- package/dist/lib/util/constants.d.ts.map +1 -1
- package/dist/lib/util/constants.js +11 -1
- package/dist/lib/util/constants.js.map +1 -1
- package/dist/mailtemplates/requested-cr-approval/requested-cr-approval.html.mustache +1 -1
- package/dist/migrations/20260617115403-update-flag-descriptions.d.ts +3 -0
- package/dist/migrations/20260617115403-update-flag-descriptions.d.ts.map +1 -0
- package/dist/migrations/20260617115403-update-flag-descriptions.js +38 -0
- package/dist/migrations/20260617115403-update-flag-descriptions.js.map +1 -0
- package/dist/migrations/20260624120000-servicenow-change-references.d.ts +3 -0
- package/dist/migrations/20260624120000-servicenow-change-references.d.ts.map +1 -0
- package/dist/migrations/20260624120000-servicenow-change-references.js +22 -0
- package/dist/migrations/20260624120000-servicenow-change-references.js.map +1 -0
- package/dist/migrations/20260706100000-add-project-column-to-release-plan-definitions.d.ts +3 -0
- package/dist/migrations/20260706100000-add-project-column-to-release-plan-definitions.d.ts.map +1 -0
- package/dist/migrations/20260706100000-add-project-column-to-release-plan-definitions.js +8 -0
- package/dist/migrations/20260706100000-add-project-column-to-release-plan-definitions.js.map +1 -0
- package/dist/migrations/20260708100000-add-project-release-template-permission.d.ts +3 -0
- package/dist/migrations/20260708100000-add-project-release-template-permission.d.ts.map +1 -0
- package/dist/migrations/20260708100000-add-project-release-template-permission.js +15 -0
- package/dist/migrations/20260708100000-add-project-release-template-permission.js.map +1 -0
- package/dist/server-dev.js +9 -1
- package/dist/server-dev.js.map +1 -1
- package/dist/test/arbitraries.d.ts +25 -0
- package/dist/test/arbitraries.d.ts.map +1 -0
- package/dist/test/arbitraries.js +143 -0
- package/dist/test/arbitraries.js.map +1 -0
- package/dist/test/arbitraries.test.d.ts +1 -24
- package/dist/test/arbitraries.test.d.ts.map +1 -1
- package/dist/test/arbitraries.test.js +1 -142
- package/dist/test/arbitraries.test.js.map +1 -1
- package/dist/test/e2e/api/admin/addon.e2e.test.js +2 -1
- package/dist/test/e2e/api/admin/addon.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/playground.e2e.test.js +2 -2
- package/dist/test/e2e/api/admin/playground.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/addon-service.e2e.test.js +2 -0
- package/dist/test/e2e/services/addon-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/playground-service.test.js +2 -2
- package/dist/test/e2e/services/playground-service.test.js.map +1 -1
- package/dist/test/fixtures/fake-segment-store.d.ts +1 -1
- package/dist/test/fixtures/fake-segment-store.d.ts.map +1 -1
- package/dist/test/fixtures/fake-segment-store.js +2 -2
- package/dist/test/fixtures/fake-segment-store.js.map +1 -1
- package/dist/test/prom-last-wins.d.ts +2 -0
- package/dist/test/prom-last-wins.d.ts.map +1 -0
- package/dist/test/prom-last-wins.js +25 -0
- package/dist/test/prom-last-wins.js.map +1 -0
- package/dist/test/reset-cross-file-state.d.ts +2 -0
- package/dist/test/reset-cross-file-state.d.ts.map +1 -0
- package/dist/test/reset-cross-file-state.js +57 -0
- package/dist/test/reset-cross-file-state.js.map +1 -0
- package/dist/test-setup.d.ts.map +1 -1
- package/dist/test-setup.js +4 -0
- package/dist/test-setup.js.map +1 -1
- package/frontend/build/index.html +2 -2
- package/frontend/build/static/AccordionSummary-KVRcLxLK.js +1 -0
- package/frontend/build/static/AdvancedPlayground-Cls80com.js +3 -0
- package/frontend/build/static/Alert-DQgOzmJF.js +1 -0
- package/frontend/build/static/Avatar-xU_puYmY.js +1 -0
- package/frontend/build/static/BackendConnections-CkI8tLcv.js +1 -0
- package/frontend/build/static/Box-rSzdGLLJ.js +1 -0
- package/frontend/build/static/Button-yGjgMTJI.js +1 -0
- package/frontend/build/static/Button.story-CBE27I2T.js +1 -0
- package/frontend/build/static/CircularProgress-CmGBJn6I.js +124 -0
- package/frontend/build/static/Close-DKD1r3T7.js +1 -0
- package/frontend/build/static/Close-nISwbNAY.js +1 -0
- package/frontend/build/static/CodeRenderer-RNHlNPBl.js +1094 -0
- package/frontend/build/static/CodeRenderer.story-Vw214z1Z.js +2 -0
- package/frontend/build/static/Collapse-COunT4rQ.js +1 -0
- package/frontend/build/static/ConditionallyRender-CEffh9Z-.js +1 -0
- package/frontend/build/static/ConnectSdkStep-DnH4iwnu.js +1 -0
- package/frontend/build/static/ConnectSdkStep.story-DeWPTOZK.js +1 -0
- package/frontend/build/static/CreateProject-eo1TZ1so.js +1 -0
- package/frontend/build/static/Dialog-DLpX4v6X.js +1 -0
- package/frontend/build/static/DialogWithAside-BxVspeMV.js +1 -0
- package/frontend/build/static/DialogWithAside.story-Dqmr9MnM.js +1 -0
- package/frontend/build/static/Divider-BYq1CcT0.js +1 -0
- package/frontend/build/static/EnterpriseEdge-D-g3JGCd.js +6 -0
- package/frontend/build/static/FeatureCard.story-B2Q-SD_-.js +1 -0
- package/frontend/build/static/FeatureMetricsChart-ETalRWKx.js +2 -0
- package/frontend/build/static/FeatureStaleDialog-CvD9ojNj.js +8 -0
- package/frontend/build/static/FeatureViewLazyExport-10Z3_Wda.js +10 -0
- package/frontend/build/static/FileCopy-D1ZqmNek.js +1 -0
- package/frontend/build/static/FlagMetricsChart-dLfSDZ_x.js +2 -0
- package/frontend/build/static/FlagUsageSnippet-DOGwaqPZ.js +2 -0
- package/frontend/build/static/FlagUsageSnippet.story-tfMvt3kG.js +1 -0
- package/frontend/build/static/FormControlLabel-BrOlsUbv.js +1 -0
- package/frontend/build/static/FormField-CRXe4g4R.js +1 -0
- package/frontend/build/static/FrontendNetworkTrafficUsage-DGEwK1Qg.js +1 -0
- package/frontend/build/static/GenerateApiKey-C1aJtPh-.js +1 -0
- package/frontend/build/static/GenerateApiKey.story-DNMZG0qg.js +1 -0
- package/frontend/build/static/GenerateApiKeySummary-DkPI02tH.js +1 -0
- package/frontend/build/static/GenerateApiKeySummary.story-CruMFwTQ.js +1 -0
- package/frontend/build/static/GridLayoutWrapper-B3BIpxoE.js +5 -0
- package/frontend/build/static/Grow-CuQu7Z-P.js +1 -0
- package/frontend/build/static/HelpOutlineOutlined-HDH1hus2.js +1 -0
- package/frontend/build/static/HelpResources.story-warJFqf6.js +1 -0
- package/frontend/build/static/Highlighter-BS0Ow0vZ.js +1 -0
- package/frontend/build/static/HtmlTooltip-3YsoM_F5.js +1 -0
- package/frontend/build/static/IconButton-BveFD3PF.js +1 -0
- package/frontend/build/static/ImpactMetricsPage-C57istn7.js +1 -0
- package/frontend/build/static/ImpactViewsPage-MKEHnt2w.js +1 -0
- package/frontend/build/static/LazyAdminExport-DfIYVWQD.js +38 -0
- package/frontend/build/static/LazyProjectExport-30GlUH0L.js +46 -0
- package/frontend/build/static/LifecycleChartComponent-Tj1pN5Tj.js +2 -0
- package/frontend/build/static/LineChartComponent-_RiDjL2-.js +1 -0
- package/frontend/build/static/Link-wv6er_Jy.js +1 -0
- package/frontend/build/static/Loader-CnLypnQx.js +1 -0
- package/frontend/build/static/{LogRocketRunner-Duzg1Kzh.js → LogRocketRunner-BS6AEpSK.js} +1 -1
- package/frontend/build/static/MarkCompletedDialogue-BeIA6eMj.js +1 -0
- package/frontend/build/static/Menu-DUeb4XP8.js +1 -0
- package/frontend/build/static/MenuBook-DZFyn--3.js +1 -0
- package/frontend/build/static/MenuItem-DNlBQQYG.js +1 -0
- package/frontend/build/static/Modal-DdH902AP.js +1 -0
- package/frontend/build/static/NetworkOverview-DF8c0k1P.js +1 -0
- package/frontend/build/static/{NetworkPrometheusAPIWarning-Bq62ygkV.js → NetworkPrometheusAPIWarning-B0v-FihJ.js} +1 -1
- package/frontend/build/static/NetworkTraffic-C1I4wwcb.js +1 -0
- package/frontend/build/static/NetworkTrafficUsage-DkdQx64o.js +1 -0
- package/frontend/build/static/NotificationStack.story-CdeU4r0p.js +1 -0
- package/frontend/build/static/OnboardingProgress-BuWQ2rjB.js +1 -0
- package/frontend/build/static/OnboardingProgress.story-CmQztiFV.js +1 -0
- package/frontend/build/static/OpenInNew-CHcHAi4B.js +1 -0
- package/frontend/build/static/PageContent-lT51j8jO.js +1 -0
- package/frontend/build/static/Paper-BvPQ0Zq6.js +1 -0
- package/frontend/build/static/PercentageDonut-CZVWd5fE.js +1 -0
- package/frontend/build/static/PermissionButton-Tj54K9Kc.js +1 -0
- package/frontend/build/static/Popover-FHiFav9d.js +1 -0
- package/frontend/build/static/Popper-Cut-_j4A.js +1 -0
- package/frontend/build/static/Portal-kwmlgXGI.js +1 -0
- package/frontend/build/static/Radio-Cj82h8o5.js +1 -0
- package/frontend/build/static/RadioGroup-BWTZb8iE.js +1 -0
- package/frontend/build/static/ReactJSONEditor-D65iiPmM.js +4 -0
- package/frontend/build/static/ReactJSONEditor.story-Bt3pxUGO.js +1 -0
- package/frontend/build/static/RoleCell-tqHUOlI7.js +1 -0
- package/frontend/build/static/RtlProvider-D1AlROju.js +1 -0
- package/frontend/build/static/Safeguard-DFEQulxy.js +1 -0
- package/frontend/build/static/SdkEvaluationStatus-B1rMywp-.js +17 -0
- package/frontend/build/static/SdkEvaluationStatus.story-BxgqLICz.js +1 -0
- package/frontend/build/static/Select-DdG1oq6O.js +3 -0
- package/frontend/build/static/SelectSdk-Boj2Ug-2.js +1 -0
- package/frontend/build/static/SelectSdk-CzRoKDb5.js +1 -0
- package/frontend/build/static/SelectSdk.story-BT9ke5Eb.js +1 -0
- package/frontend/build/static/SelectSdk.story-CdzotYoq.js +1 -0
- package/frontend/build/static/Spacing.story-CB6GkN5Z.js +1 -0
- package/frontend/build/static/StoriesPage-luLnHVc2.js +1 -0
- package/frontend/build/static/SwitchBase-cxExIOp0.js +1 -0
- package/frontend/build/static/TextField-Cf03Ror7.js +1 -0
- package/frontend/build/static/ThemeColors.story-Cx9bv5pL.js +1 -0
- package/frontend/build/static/TokenExplanation-CJjBSQ07.js +1 -0
- package/frontend/build/static/TokenExplanation.story-BoOaHRrQ.js +1 -0
- package/frontend/build/static/Tooltip-DPzrXyNS.js +1 -0
- package/frontend/build/static/TooltipResolver-CIBfA4vm.js +1 -0
- package/frontend/build/static/Truncator-CF0-SVks.js +1 -0
- package/frontend/build/static/Typography-nCkGT67u.js +1 -0
- package/frontend/build/static/Typography.story-CofmlvJB.js +1 -0
- package/frontend/build/static/UIContext-Dsr0TY8K.js +1 -0
- package/frontend/build/static/WhatsNewLayout.story-p4Cm8bgx.js +1 -0
- package/frontend/build/static/aggregateFeatureMetrics-D7AXsd2U.js +1 -0
- package/frontend/build/static/capitalize-DfXJDj8P.js +1 -0
- package/frontend/build/static/chartjs-plugin-annotation.esm-tsR8Pv5a.js +1 -0
- package/frontend/build/static/chunk-KS7C4IRE-PUpsdS_b.js +3 -0
- package/frontend/build/static/code-block-BZePA-4e.js +1 -0
- package/frontend/build/static/copy-to-clipboard-BCU4eeSw.js +1 -0
- package/frontend/build/static/createBox-DaDvp7MB.js +1 -0
- package/frontend/build/static/createSimplePaletteValueFilter-Bt9IjErz.js +1 -0
- package/frontend/build/static/createSvgIcon-D-6jHYkf.js +1 -0
- package/frontend/build/static/differenceInSeconds-DMZGQwjK.js +1 -0
- package/frontend/build/static/dividerClasses-DcI5JVLQ.js +1 -0
- package/frontend/build/static/endOfMonth-CkSR_DAx.js +1 -0
- package/frontend/build/static/{enterpriseEdgeCloud-C5u35XAw.js → enterpriseEdgeCloud-qnOcFE1S.js} +1 -1
- package/frontend/build/static/esm-DViSjNxt.js +12 -0
- package/frontend/build/static/formatAccessText-BhC1wtCg.js +1 -0
- package/frontend/build/static/formatDistanceToNow-CyouiCIY.js +1 -0
- package/frontend/build/static/httpErrorResponseHandler-BzpwldnE.js +1 -0
- package/frontend/build/static/impact-metrics-DrmGy_gn.png +0 -0
- package/frontend/build/static/{impact-metrics-icon-6dt-ye-h.js → impact-metrics-icon-Cg_ki-2e.js} +1 -1
- package/frontend/build/static/index-C2zVj2FI.js +287 -0
- package/frontend/build/static/{jsx-runtime-BnvnyDTF.js → jsx-runtime-DYfQNk55.js} +1 -1
- package/frontend/build/static/mcp-ADx0Sju7.png +0 -0
- package/frontend/build/static/{metricsFormatters-BEX2qb8Y.js → metricsFormatters-BmjW0KTj.js} +1 -1
- package/frontend/build/static/milestone-CciNgBhP.png +0 -0
- package/frontend/build/static/{mui-CoU2c-id.js → mui-C_omlwxE.js} +1 -1
- package/frontend/build/static/networkTrafficUsageHighlightPlugin-DPi6id5j.js +1 -0
- package/frontend/build/static/parse-Chj4PyAg.js +1 -0
- package/frontend/build/static/react-Ca03aNmg.js +1 -0
- package/frontend/build/static/resolveProps-CAVsjga5.js +1 -0
- package/frontend/build/static/servicenow-BmgZtZjb.svg +13 -0
- package/frontend/build/static/sharedTypes-CXnpeg4U.js +1 -0
- package/frontend/build/static/startOfHour-P0Sr6h8e.js +1 -0
- package/frontend/build/static/styled-CY_-vLWk.js +1 -0
- package/frontend/build/static/theme-DDCs0xPV.js +1 -0
- package/frontend/build/static/themeStyles-B99HStK1.js +1 -0
- package/frontend/build/static/useApi-B7ZLy5tN.js +1 -0
- package/frontend/build/static/useApiGetter-C41iZzl2.js +1 -0
- package/frontend/build/static/useApiTokens-BQWPDfv2.js +1 -0
- package/frontend/build/static/useConditionalSWR-QWHOvx6V.js +1 -0
- package/frontend/build/static/useConditionallyHiddenColumns-DbQbB4u7.js +5 -0
- package/frontend/build/static/useCustomEvent-BnWpZ2E1.js +1 -0
- package/frontend/build/static/useEnhancedEffect-BBMUaXin.js +1 -0
- package/frontend/build/static/useEnvironments-Gu7r2cpc.js +2 -0
- package/frontend/build/static/useEventTracker-B0ILyjZB.js +1 -0
- package/frontend/build/static/useGroupedImpactMetricsData-jQ7IYFK3.js +1 -0
- package/frontend/build/static/useId-Bg4oXGUa.js +1 -0
- package/frontend/build/static/{useImpactMetrics-9qDSEpTn.js → useImpactMetrics-DXxTQl6p.js} +2 -2
- package/frontend/build/static/{useImpactMetricsEnabled-wRNO6-Oh.js → useImpactMetricsEnabled-B3om8V0b.js} +1 -1
- package/frontend/build/static/{useInstanceTrafficMetrics-CIpyIGYi.js → useInstanceTrafficMetrics-DkgcWjVM.js} +1 -1
- package/frontend/build/static/useLocationSettings-vlEPA_j3.js +1 -0
- package/frontend/build/static/useMediaQuery-BFm2lR-0.js +2 -0
- package/frontend/build/static/useOptionalPathParam-Cmh3Ejbi.js +1 -0
- package/frontend/build/static/{usePageTitle-CHzzFshF.js → usePageTitle-DD1IHvCw.js} +1 -1
- package/frontend/build/static/useSlot-Ce59-xJL.js +1 -0
- package/frontend/build/static/useSlotProps-v77xI-e5.js +1 -0
- package/frontend/build/static/useTheme-CTychWp2.js +10 -0
- package/frontend/build/static/useTimeout-B2sc1jSE.js +1 -0
- package/frontend/build/static/useToast-BUHn_9TC.js +1 -0
- package/frontend/build/static/{useUiConfig-DbVjTDpE.js → useUiConfig-BcfEDPWc.js} +1 -1
- package/frontend/build/static/useUiFlag-PbKW1iMa.js +1 -0
- package/frontend/package.json +20 -19
- package/package.json +15 -12
- package/frontend/build/static/AccordionSummary-wye3oOm6.js +0 -1
- package/frontend/build/static/AdvancedPlayground-BEYkf6Xg.js +0 -3
- package/frontend/build/static/Alert-_bLyWbvx.js +0 -1
- package/frontend/build/static/BackendConnections-DdvotR_8.js +0 -1
- package/frontend/build/static/Box-BQsxfFmC.js +0 -1
- package/frontend/build/static/Button-CebB8EPB.js +0 -1
- package/frontend/build/static/ChatOutlined-jZlhx14o.js +0 -1
- package/frontend/build/static/CircularProgress-C_LUU3DK.js +0 -101
- package/frontend/build/static/Close-DyTASMSq.js +0 -1
- package/frontend/build/static/CloudCircle-BjnxUYAO.js +0 -1
- package/frontend/build/static/Collapse-DPPTUMpf.js +0 -1
- package/frontend/build/static/ConditionallyRender---uTpMBn.js +0 -1
- package/frontend/build/static/CreateProject-BSlg0WYM.js +0 -1
- package/frontend/build/static/Dialog-C-xQxqWX.js +0 -1
- package/frontend/build/static/DialogWithAside-BvaGTcqO.js +0 -1106
- package/frontend/build/static/Divider-CsdWvu5F.js +0 -1
- package/frontend/build/static/EnterpriseEdge-DN23kaQp.js +0 -6
- package/frontend/build/static/FeatureMetricsChart-CmVkRuwG.js +0 -2
- package/frontend/build/static/FeatureStaleDialog-BkyjUGR9.js +0 -8
- package/frontend/build/static/FeatureViewLazyExport-C5FggFea.js +0 -10
- package/frontend/build/static/FileCopy-B8HZEA83.js +0 -1
- package/frontend/build/static/FlagMetricsChart-ZjHSwulg.js +0 -2
- package/frontend/build/static/FormControlLabel-F5gDLixN.js +0 -1
- package/frontend/build/static/FrontendNetworkTrafficUsage-BmLOJdK9.js +0 -1
- package/frontend/build/static/GridLayoutWrapper-D93wkNEo.js +0 -3
- package/frontend/build/static/Grow-BIbmvKVy.js +0 -1
- package/frontend/build/static/HelpOutlineOutlined-CpMsVJZu.js +0 -1
- package/frontend/build/static/Highlighter-MomUaQww.js +0 -1
- package/frontend/build/static/HtmlTooltip-B9jv1G1R.js +0 -1
- package/frontend/build/static/ImpactMetricsPage-D1CETZR_.js +0 -1
- package/frontend/build/static/ImpactViewsPage-DeBga4lU.js +0 -1
- package/frontend/build/static/LazyAdminExport-BvtR_me3.js +0 -38
- package/frontend/build/static/LazyProjectExport-BkOu6pHf.js +0 -46
- package/frontend/build/static/LifecycleChartComponent-BYvIFr7Q.js +0 -2
- package/frontend/build/static/LineChartComponent-d80f3Tky.js +0 -1
- package/frontend/build/static/Link-CfIScd2f.js +0 -1
- package/frontend/build/static/Loader-DdgXftPc.js +0 -1
- package/frontend/build/static/MarkCompletedDialogue-CtzRfovJ.js +0 -1
- package/frontend/build/static/NetworkOverview-D1UOxIaf.js +0 -1
- package/frontend/build/static/NetworkTraffic-CLnhub6c.js +0 -1
- package/frontend/build/static/NetworkTrafficUsage-PgI0lqze.js +0 -1
- package/frontend/build/static/PageContent-c0NDm5oD.js +0 -1
- package/frontend/build/static/PercentageDonut-C6I2UOES.js +0 -1
- package/frontend/build/static/PermissionButton-BIeM26DH.js +0 -1
- package/frontend/build/static/Popover-CUTnSn2h.js +0 -1
- package/frontend/build/static/Radio-DL8ja0ll.js +0 -1
- package/frontend/build/static/RadioGroup-Ci3WHaOy.js +0 -1
- package/frontend/build/static/ReactJSONEditor-C-paZV5Q.js +0 -4
- package/frontend/build/static/RoleCell-BCPNstXC.js +0 -1
- package/frontend/build/static/Safeguard-9zs64Bna.js +0 -1
- package/frontend/build/static/SelectSdk-D2NaTubs.js +0 -2
- package/frontend/build/static/StoriesPage-5lbMiQlA.js +0 -1
- package/frontend/build/static/SwitchBase-DWPIxZnN.js +0 -1
- package/frontend/build/static/TextField-oipjeg6n.js +0 -3
- package/frontend/build/static/Tooltip-BaILXXti.js +0 -1
- package/frontend/build/static/TooltipResolver-4A1YhwBy.js +0 -1
- package/frontend/build/static/Truncator-D2bO9ub6.js +0 -1
- package/frontend/build/static/Typography-BTdLWIUX.js +0 -1
- package/frontend/build/static/aggregateFeatureMetrics-DBivHCcj.js +0 -1
- package/frontend/build/static/chartjs-plugin-annotation.esm-BxKcCGhA.js +0 -1
- package/frontend/build/static/chunk-QUQL4437-Dr42NpoL.js +0 -3
- package/frontend/build/static/createBox-Cf2UJsmc.js +0 -1
- package/frontend/build/static/createSimplePaletteValueFilter-BRAMrHWJ.js +0 -1
- package/frontend/build/static/dividerClasses-Cc45lyWo.js +0 -1
- package/frontend/build/static/esm-CFWP4-MJ.js +0 -15
- package/frontend/build/static/httpErrorResponseHandler-FMtt7Zqh.js +0 -1
- package/frontend/build/static/index-BJ2iUk24.js +0 -289
- package/frontend/build/static/networkTrafficUsageHighlightPlugin-DVWh8Lrd.js +0 -1
- package/frontend/build/static/parse-BhYjTMCL.js +0 -1
- package/frontend/build/static/react-GZhdek4G.js +0 -1
- package/frontend/build/static/startOfHour-KiLZtdEa.js +0 -1
- package/frontend/build/static/themeStyles-BPY8RNQO.js +0 -1
- package/frontend/build/static/useApiGetter-7FP8Avm4.js +0 -1
- package/frontend/build/static/useApiTokens-C8Dqw_X1.js +0 -1
- package/frontend/build/static/useConditionalSWR-DGgzun6i.js +0 -1
- package/frontend/build/static/useConditionallyHiddenColumns-DTDzRlyO.js +0 -5
- package/frontend/build/static/useCustomEvent-CwoY8S5F.js +0 -1
- package/frontend/build/static/useEnvironments-CTguhgy0.js +0 -2
- package/frontend/build/static/useGroupedImpactMetricsData-CK8Pz2an.js +0 -1
- package/frontend/build/static/useMediaQuery-DGx8zAkf.js +0 -2
- package/frontend/build/static/useOptionalPathParam-Cx3ru9yC.js +0 -1
- package/frontend/build/static/useTheme-CQqAmDLr.js +0 -9
- /package/frontend/build/static/{connect-DbjGV9Hl.png → cr-DbjGV9Hl.png} +0 -0
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{t as n}from"./useTheme-CQqAmDLr.js";import{t as r}from"./jsx-runtime-BnvnyDTF.js";import{$o as i,$t as a,Cn as o,Dn as s,En as c,Gt as l,Kt as u,Nt as d,Qt as f,Sn as p,Ut as m,Wt as h,Xt as g,Zt as _,en as v,fn as y,hn as b,jn as ee,nn as te,p as ne,un as x,wn as S,yn as C}from"./index-BJ2iUk24.js";var re=e(t(),1),ie=e(ne(),1),w=function(){if(typeof window<`u`){if(window.devicePixelRatio)return window.devicePixelRatio;var e=window.screen;if(e)return(e.deviceXDPI||1)/(e.logicalXDPI||1)}return 1}(),T={toTextLines:function(e){var t=[],n;for(e=[].concat(e);e.length;)n=e.pop(),typeof n==`string`?t.unshift.apply(t,n.split(`
|
|
2
|
-
`)):Array.isArray(n)?e.push.apply(e,n):C(e)||t.unshift(``+n);return t},textSize:function(e,t,n){var r=[].concat(t),i=r.length,a=e.font,o=0,s;for(e.font=n.string,s=0;s<i;++s)o=Math.max(e.measureText(r[s]).width,o);return e.font=a,{height:i*n.lineHeight,width:o}},bound:function(e,t,n){return Math.max(e,Math.min(t,n))},arrayDiff:function(e,t){var n=e.slice(),r=[],i,a,o,s;for(i=0,o=t.length;i<o;++i)s=t[i],a=n.indexOf(s),a===-1?r.push([s,1]):n.splice(a,1);for(i=0,o=n.length;i<o;++i)r.push([n[i],-1]);return r},rasterize:function(e){return Math.round(e*w)/w}};function E(e,t){var n=t.x,r=t.y;if(n===null)return{x:0,y:-1};if(r===null)return{x:1,y:0};var i=e.x-n,a=e.y-r,o=Math.sqrt(i*i+a*a);return{x:o?i/o:0,y:o?a/o:-1}}function ae(e,t,n,r,i){switch(i){case`center`:n=r=0;break;case`bottom`:n=0,r=1;break;case`right`:n=1,r=0;break;case`left`:n=-1,r=0;break;case`top`:n=0,r=-1;break;case`start`:n=-n,r=-r;break;case`end`:break;default:i*=Math.PI/180,n=Math.cos(i),r=Math.sin(i);break}return{x:e,y:t,vx:n,vy:r}}var oe=0,D=1,O=2,k=4,A=8;function j(e,t,n){var r=oe;return e<n.left?r|=D:e>n.right&&(r|=O),t<n.top?r|=A:t>n.bottom&&(r|=k),r}function se(e,t){for(var n=e.x0,r=e.y0,i=e.x1,a=e.y1,o=j(n,r,t),s=j(i,a,t),c,l,u;!(!(o|s)||o&s);)c=o||s,c&A?(l=n+(i-n)*(t.top-r)/(a-r),u=t.top):c&k?(l=n+(i-n)*(t.bottom-r)/(a-r),u=t.bottom):c&O?(u=r+(a-r)*(t.right-n)/(i-n),l=t.right):c&D&&(u=r+(a-r)*(t.left-n)/(i-n),l=t.left),c===o?(n=l,r=u,o=j(n,r,t)):(i=l,a=u,s=j(i,a,t));return{x0:n,x1:i,y0:r,y1:a}}function M(e,t){var n=t.anchor,r=e,i,a;return t.clamp&&(r=se(r,t.area)),n===`start`?(i=r.x0,a=r.y0):n===`end`?(i=r.x1,a=r.y1):(i=(r.x0+r.x1)/2,a=(r.y0+r.y1)/2),ae(i,a,e.vx,e.vy,t.align)}var N={arc:function(e,t){var n=(e.startAngle+e.endAngle)/2,r=Math.cos(n),i=Math.sin(n),a=e.innerRadius,o=e.outerRadius;return M({x0:e.x+r*a,y0:e.y+i*a,x1:e.x+r*o,y1:e.y+i*o,vx:r,vy:i},t)},point:function(e,t){var n=E(e,t.origin),r=n.x*e.options.radius,i=n.y*e.options.radius;return M({x0:e.x-r,y0:e.y-i,x1:e.x+r,y1:e.y+i,vx:n.x,vy:n.y},t)},bar:function(e,t){var n=E(e,t.origin),r=e.x,i=e.y,a=0,o=0;return e.horizontal?(r=Math.min(e.x,e.base),a=Math.abs(e.base-e.x)):(i=Math.min(e.y,e.base),o=Math.abs(e.base-e.y)),M({x0:r,y0:i+o,x1:r+a,y1:i,vx:n.x,vy:n.y},t)},fallback:function(e,t){var n=E(e,t.origin);return M({x0:e.x,y0:e.y,x1:e.x+(e.width||0),y1:e.y+(e.height||0),vx:n.x,vy:n.y},t)}},P=T.rasterize;function ce(e){var t=e.borderWidth||0,n=e.padding,r=e.size.height,i=e.size.width,a=-i/2,o=-r/2;return{frame:{x:a-n.left-t,y:o-n.top-t,w:i+n.width+t*2,h:r+n.height+t*2},text:{x:a,y:o,w:i,h:r}}}function le(e,t){var n=t.chart.getDatasetMeta(t.datasetIndex).vScale;if(!n)return null;if(n.xCenter!==void 0&&n.yCenter!==void 0)return{x:n.xCenter,y:n.yCenter};var r=n.getBasePixel();return e.horizontal?{x:r,y:null}:{x:null,y:r}}function F(e){return e instanceof m?N.arc:e instanceof _?N.point:e instanceof h?N.bar:N.fallback}function I(e,t,n,r,i,a){var o=Math.PI/2;if(a){var s=Math.min(a,i/2,r/2),c=t+s,l=n+s,u=t+r-s,d=n+i-s;e.moveTo(t,l),c<u&&l<d?(e.arc(c,l,s,-Math.PI,-o),e.arc(u,l,s,-o,0),e.arc(u,d,s,0,o),e.arc(c,d,s,o,Math.PI)):c<u?(e.moveTo(c,n),e.arc(u,l,s,-o,o),e.arc(c,l,s,o,Math.PI+o)):l<d?(e.arc(c,l,s,-Math.PI,0),e.arc(c,d,s,0,Math.PI)):e.arc(c,l,s,-Math.PI,Math.PI),e.closePath(),e.moveTo(t,n)}else e.rect(t,n,r,i)}function L(e,t,n){var r=n.backgroundColor,i=n.borderColor,a=n.borderWidth;!r&&(!i||!a)||(e.beginPath(),I(e,P(t.x)+a/2,P(t.y)+a/2,P(t.w)-a,P(t.h)-a,n.borderRadius),e.closePath(),r&&(e.fillStyle=r,e.fill()),i&&a&&(e.strokeStyle=i,e.lineWidth=a,e.lineJoin=`miter`,e.stroke()))}function R(e,t,n){var r=n.lineHeight,i=e.w,a=e.x,o=e.y+r/2;return t===`center`?a+=i/2:(t===`end`||t===`right`)&&(a+=i),{h:r,w:i,x:a,y:o}}function z(e,t,n){var r=e.shadowBlur,i=n.stroked,a=P(n.x),o=P(n.y),s=P(n.w);i&&e.strokeText(t,a,o,s),n.filled&&(r&&i&&(e.shadowBlur=0),e.fillText(t,a,o,s),r&&i&&(e.shadowBlur=r))}function B(e,t,n,r){var i=r.textAlign,a=r.color,o=!!a,s=r.font,c=t.length,l=r.textStrokeColor,u=r.textStrokeWidth,d=l&&u,f;if(!(!c||!o&&!d))for(n=R(n,i,s),e.font=s.string,e.textAlign=i,e.textBaseline=`middle`,e.shadowBlur=r.textShadowBlur,e.shadowColor=r.textShadowColor,o&&(e.fillStyle=a),d&&(e.lineJoin=`round`,e.lineWidth=u,e.strokeStyle=l),f=0,c=t.length;f<c;++f)z(e,t[f],{stroked:d,filled:o,w:n.w,x:n.x,y:n.y+n.h*f})}var V=function(e,t,n,r){var i=this;i._config=e,i._index=r,i._model=null,i._rects=null,i._ctx=t,i._el=n};o(V.prototype,{_modelize:function(e,t,n,r){var i=this,a=i._index,o=c(S([n.font,{}],r,a)),l=S([n.color,y.color],r,a);return{align:S([n.align,`center`],r,a),anchor:S([n.anchor,`center`],r,a),area:r.chart.chartArea,backgroundColor:S([n.backgroundColor,null],r,a),borderColor:S([n.borderColor,null],r,a),borderRadius:S([n.borderRadius,0],r,a),borderWidth:S([n.borderWidth,0],r,a),clamp:S([n.clamp,!1],r,a),clip:S([n.clip,!1],r,a),color:l,display:e,font:o,lines:t,offset:S([n.offset,4],r,a),opacity:S([n.opacity,1],r,a),origin:le(i._el,r),padding:s(S([n.padding,4],r,a)),positioner:F(i._el),rotation:S([n.rotation,0],r,a)*(Math.PI/180),size:T.textSize(i._ctx,t,o),textAlign:S([n.textAlign,`start`],r,a),textShadowBlur:S([n.textShadowBlur,0],r,a),textShadowColor:S([n.textShadowColor,l],r,a),textStrokeColor:S([n.textStrokeColor,l],r,a),textStrokeWidth:S([n.textStrokeWidth,0],r,a)}},update:function(e){var t=this,n=null,r=null,i=t._index,a=t._config,o,s,c,l=S([a.display,!0],e,i);l&&(o=e.dataset.data[i],s=ee(x(a.formatter,[o,e]),o),c=C(s)?[]:T.toTextLines(s),c.length&&(n=t._modelize(l,c,a,e),r=ce(n))),t._model=n,t._rects=r},geometry:function(){return this._rects?this._rects.frame:{}},rotation:function(){return this._model?this._model.rotation:0},visible:function(){return this._model&&this._model.opacity},model:function(){return this._model},draw:function(e,t){var n=this,r=e.ctx,i=n._model,a=n._rects,o;this.visible()&&(r.save(),i.clip&&(o=i.area,r.beginPath(),r.rect(o.left,o.top,o.right-o.left,o.bottom-o.top),r.clip()),r.globalAlpha=T.bound(0,i.opacity,1),r.translate(P(t.x),P(t.y)),r.rotate(i.rotation),L(r,a.frame,i),B(r,i.lines,a.text,i),r.restore())}});var H=-(2**53-1)||-9007199254740991,U=2**53-1||9007199254740991;function W(e,t,n){var r=Math.cos(n),i=Math.sin(n),a=t.x,o=t.y;return{x:a+r*(e.x-a)-i*(e.y-o),y:o+i*(e.x-a)+r*(e.y-o)}}function G(e,t){var n=U,r=H,i=t.origin,a,o,s,c,l;for(a=0;a<e.length;++a)o=e[a],s=o.x-i.x,c=o.y-i.y,l=t.vx*s+t.vy*c,n=Math.min(n,l),r=Math.max(r,l);return{min:n,max:r}}function K(e,t){var n=t.x-e.x,r=t.y-e.y,i=Math.sqrt(n*n+r*r);return{vx:(t.x-e.x)/i,vy:(t.y-e.y)/i,origin:e,ln:i}}var q=function(){this._rotation=0,this._rect={x:0,y:0,w:0,h:0}};o(q.prototype,{center:function(){var e=this._rect;return{x:e.x+e.w/2,y:e.y+e.h/2}},update:function(e,t,n){this._rotation=n,this._rect={x:t.x+e.x,y:t.y+e.y,w:t.w,h:t.h}},contains:function(e){var t=this,n=1,r=t._rect;return e=W(e,t.center(),-t._rotation),!(e.x<r.x-n||e.y<r.y-n||e.x>r.x+r.w+n*2||e.y>r.y+r.h+n*2)},intersects:function(e){var t=this._points(),n=e._points(),r=[K(t[0],t[1]),K(t[0],t[3])],i,a,o;for(this._rotation!==e._rotation&&r.push(K(n[0],n[1]),K(n[0],n[3])),i=0;i<r.length;++i)if(a=G(t,r[i]),o=G(n,r[i]),a.max<o.min||o.max<a.min)return!1;return!0},_points:function(){var e=this,t=e._rect,n=e._rotation,r=e.center();return[W({x:t.x,y:t.y},r,n),W({x:t.x+t.w,y:t.y},r,n),W({x:t.x+t.w,y:t.y+t.h},r,n),W({x:t.x,y:t.y+t.h},r,n)]}});function J(e,t,n){var r=t.positioner(e,t),i=r.vx,a=r.vy;if(!i&&!a)return{x:r.x,y:r.y};var o=n.w,s=n.h,c=t.rotation,l=Math.abs(o/2*Math.cos(c))+Math.abs(s/2*Math.sin(c)),u=Math.abs(o/2*Math.sin(c))+Math.abs(s/2*Math.cos(c)),d=1/Math.max(Math.abs(i),Math.abs(a));return l*=i*d,u*=a*d,l+=t.offset*i,u+=t.offset*a,{x:r.x+l,y:r.y+u}}function ue(e,t){var n,r,i,a;for(n=e.length-1;n>=0;--n)for(i=e[n].$layout,r=n-1;r>=0&&i._visible;--r)a=e[r].$layout,a._visible&&i._box.intersects(a._box)&&t(i,a);return e}function de(e){var t,n,r,i,a,o,s;for(t=0,n=e.length;t<n;++t)r=e[t],i=r.$layout,i._visible&&(s=new Proxy(r._el,{get:(e,t)=>e.getProps([t],!0)[t]}),a=r.geometry(),o=J(s,r.model(),a),i._box.update(o,a,r.rotation()));return ue(e,function(e,t){var n=e._hidable,r=t._hidable;n&&r||r?t._visible=!1:n&&(e._visible=!1)})}var Y={prepare:function(e){var t=[],n,r,i,a,o;for(n=0,i=e.length;n<i;++n)for(r=0,a=e[n].length;r<a;++r)o=e[n][r],t.push(o),o.$layout={_box:new q,_hidable:!1,_visible:!0,_set:n,_idx:o._index};return t.sort(function(e,t){var n=e.$layout,r=t.$layout;return n._idx===r._idx?r._set-n._set:r._idx-n._idx}),this.update(t),t},update:function(e){var t=!1,n,r,i,a,o;for(n=0,r=e.length;n<r;++n)i=e[n],a=i.model(),o=i.$layout,o._hidable=a&&a.display===`auto`,o._visible=i.visible(),t|=o._hidable;t&&de(e)},lookup:function(e,t){var n,r;for(n=e.length-1;n>=0;--n)if(r=e[n].$layout,r&&r._visible&&r._box.contains(t))return e[n];return null},draw:function(e,t){var n,r,i,a,o,s;for(n=0,r=t.length;n<r;++n)i=t[n],a=i.$layout,a._visible&&(o=i.geometry(),s=J(i._el,i.model(),o),a._box.update(s,o,i.rotation()),i.draw(e,s))}},fe={align:`center`,anchor:`center`,backgroundColor:null,borderColor:null,borderRadius:0,borderWidth:0,clamp:!1,clip:!1,color:void 0,display:!0,font:{family:void 0,lineHeight:1.2,size:void 0,style:void 0,weight:null},formatter:function(e){if(C(e))return null;var t=e,n,r,i;if(p(e))if(!C(e.label))t=e.label;else if(!C(e.r))t=e.r;else for(t=``,n=Object.keys(e),i=0,r=n.length;i<r;++i)t+=(i===0?``:`, `)+n[i]+`: `+e[n[i]];return``+t},labels:void 0,listeners:{},offset:4,opacity:1,padding:{top:4,right:4,bottom:4,left:4},rotation:0,textAlign:`start`,textStrokeColor:void 0,textStrokeWidth:0,textShadowBlur:0,textShadowColor:void 0},X=`$datalabels`,Z=`$default`;function pe(e,t){var n=e.datalabels,r={},i=[],a,s;return n===!1?null:(n===!0&&(n={}),t=o({},[t,n]),a=t.labels||{},s=Object.keys(a),delete t.labels,s.length?s.forEach(function(e){a[e]&&i.push(o({},[t,a[e],{_key:e}]))}):i.push(t),r=i.reduce(function(e,t){return b(t.listeners||{},function(n,r){e[r]=e[r]||{},e[r][t._key||Z]=n}),delete t.listeners,e},{}),{labels:i,listeners:r})}function Q(e,t,n,r){if(t){var i=n.$context,a=n.$groups,o;t[a._set]&&(o=t[a._set][a._key],o&&x(o,[i,r])===!0&&(e[X]._dirty=!0,n.update(i)))}}function me(e,t,n,r,i){var a,o;!n&&!r||(n?r?n!==r&&(o=a=!0):o=!0:a=!0,o&&Q(e,t.leave,n,i),a&&Q(e,t.enter,r,i))}function he(e,t){var n=e[X],r=n._listeners,i,a;if(!(!r.enter&&!r.leave)){if(t.type===`mousemove`)a=Y.lookup(n._labels,t);else if(t.type!==`mouseout`)return;i=n._hovered,n._hovered=a,me(e,r,i,a,t)}}function ge(e,t){var n=e[X],r=n._listeners.click,i=r&&Y.lookup(n._labels,t);i&&Q(e,r,i,t)}var _e={id:`datalabels`,defaults:fe,beforeInit:function(e){e[X]={_actives:[]}},beforeUpdate:function(e){var t=e[X];t._listened=!1,t._listeners={},t._datasets=[],t._labels=[]},afterDatasetUpdate:function(e,t,n){var r=t.index,i=e[X],a=i._datasets[r]=[],s=e.isDatasetVisible(r),c=e.data.datasets[r],l=pe(c,n),u=t.meta.data||[],d=e.ctx,f,p,m,h,g,_,v,y;for(d.save(),f=0,m=u.length;f<m;++f)if(v=u[f],v[X]=[],s&&v&&e.getDataVisibility(f)&&!v.skip)for(p=0,h=l.labels.length;p<h;++p)g=l.labels[p],_=g._key,y=new V(g,d,v,f),y.$groups={_set:r,_key:_||Z},y.$context={active:!1,chart:e,dataIndex:f,dataset:c,datasetIndex:r},y.update(y.$context),v[X].push(y),a.push(y);d.restore(),o(i._listeners,l.listeners,{merger:function(e,n,r){n[e]=n[e]||{},n[e][t.index]=r[e],i._listened=!0}})},afterUpdate:function(e){e[X]._labels=Y.prepare(e[X]._datasets)},afterDatasetsDraw:function(e){Y.draw(e,e[X]._labels)},beforeEvent:function(e,t){if(e[X]._listened){var n=t.event;switch(n.type){case`mousemove`:case`mouseout`:he(e,n);break;case`click`:ge(e,n);break}}},afterEvent:function(e){var t=e[X],n=t._actives,r=t._actives=e.getActiveElements(),i=T.arrayDiff(n,r),a,o,s,c,l,u,d;for(a=0,o=i.length;a<o;++a)if(l=i[a],l[1])for(d=l[0].element[X]||[],s=0,c=d.length;s<c;++s)u=d[s],u.$context.active=l[1]===1,u.update(u.$context);(t._dirty||i.length)&&(Y.update(t._labels),e.render()),delete t._dirty}},ve=r(),$=e=>({plugins:{legend:{position:`right`,maxWidth:150,align:`start`,labels:{color:e.palette.text.secondary,usePointStyle:!0,padding:21,boxHeight:8,font:{size:10}}},datalabels:{color:e.palette.text.primary,font:{weight:`bold`,size:10},anchor:`end`,align:`top`,offset:-6}},responsive:!0,maintainAspectRatio:!1,color:e.palette.text.secondary,scales:{y:{beginAtZero:!0,grid:{color:e.palette.divider},border:{display:!1},ticks:{stepSize:1,color:e.palette.text.disabled,font:{size:10}}},x:{grid:{display:!1},ticks:{color:e.palette.text.primary,font:{size:10}}}}});function ye(e){return ie.default.all(e.filter(e=>e))}var be=({data:e,ariaLabel:t,ariaDescription:r,overrideOptions:a})=>{let o=n(),{locationSettings:s}=i();return(0,ve.jsx)(d,{options:(0,re.useMemo)(()=>ye([$(o)]),[o,s,a]),data:e,"aria-label":t,"aria-description":r,plugins:[_e]})};u.register(l,g,_,h,f,te,v,a);export{$ as createOptions,be as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{t as n}from"./useTheme-CQqAmDLr.js";import{t as r}from"./jsx-runtime-BnvnyDTF.js";import{v as i}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{t as a}from"./ConditionallyRender---uTpMBn.js";import{$o as o,$t as s,Ft as c,Gt as l,It as u,Kt as d,Lt as f,Mt as p,Pt as m,Qt as h,Rt as g,Xt as _,Yt as v,Zt as y,en as b,nn as x,p as S,zt as C}from"./index-BJ2iUk24.js";var w=e(t(),1),T={position:`bottom`,labels:{boxWidth:12,padding:30,generateLabels:e=>{let t=e.data.datasets,{labels:{usePointStyle:n,pointStyle:r,textAlign:i,color:a}}=e?.legend?.options||{labels:{}};return e._getSortedDatasetMetas().map(e=>{let o=e.controller.getStyle(n?0:void 0);return{text:t[e.index].label,fillStyle:o.borderColor,fontColor:a,hidden:!e.visible,lineWidth:0,borderRadius:6,strokeStyle:o.borderColor,pointStyle:r||o.pointStyle,textAlign:i||o.textAlign,datasetIndex:e.index}})}}},E=(e,t,n,r)=>({responsive:!0,...r?{animation:{duration:0}}:{},plugins:{legend:{...T,display:!r},tooltip:{enabled:!1,position:`nearest`,external:g(n)}},locale:t.locale,interaction:{intersect:!1,axis:`xy`,mode:`nearest`},elements:{point:{radius:0,hitRadius:15}},color:e.palette.text.secondary,scales:{y:{beginAtZero:!0,type:`linear`,grid:{color:e.palette.divider},border:{color:e.palette.divider},ticks:{color:e.palette.text.secondary,display:!r,precision:0}},x:{adapters:{date:{locale:C(t.locale)}},type:`time`,time:{unit:`week`,tooltipFormat:`P`},grid:{color:`transparent`},border:{color:`transparent`},ticks:{color:e.palette.text.secondary,display:!r,source:`data`,maxRotation:90,minRotation:23.5}}}}),D=e(S(),1),O=r(),k=i(`div`)(({theme:e})=>({position:`relative`}));function A(e){return D.default.all(e.filter(e=>e))}var j=({data:e,aspectRatio:t=2.5,cover:r,overrideOptions:i,TooltipComponent:s,chartRef:l})=>{let d=n(),{locationSettings:h}=o(),[g,_]=(0,w.useState)(null);return(0,O.jsxs)(k,{children:[(0,O.jsx)(m,{ref:e=>{l?.(e??null)},options:(0,w.useMemo)(()=>A([E(d,h,_,!!r),i??{}]),[d,h,_,i,r]),data:e,plugins:[c({width:26})],height:100,width:100*t},r?`cover`:`chart`),(0,O.jsx)(a,{condition:!r,show:s?(0,O.jsx)(f,{tooltip:g,children:(0,O.jsx)(s,{tooltip:g})}):(0,O.jsx)(u,{tooltip:g}),elseShow:(0,O.jsx)(p,{children:r===!0?` `:r})})]})};d.register(l,_,y,v,h,x,b,s);export{j as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{_ as n,s as r,t as i}from"./useTheme-CQqAmDLr.js";import{t as a}from"./jsx-runtime-BnvnyDTF.js";import{D as o,O as s,_ as c,h as l,k as u,m as d,n as f,t as p,v as m,x as h}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{t as g}from"./Typography-BTdLWIUX.js";var _=e(t(),1);function v(e){return s(`MuiLink`,e)}var y=o(`MuiLink`,[`root`,`underlineNone`,`underlineHover`,`underlineAlways`,`button`,`focusVisible`]),b=({theme:e,ownerState:t})=>{let i=t.color;if(`colorSpace`in e&&e.colorSpace){let r=n(e,`palette.${i}.main`)||n(e,`palette.${i}`)||t.color;return e.alpha(r,.4)}let a=n(e,`palette.${i}.main`,!1)||n(e,`palette.${i}`,!1)||t.color,o=n(e,`palette.${i}.mainChannel`)||n(e,`palette.${i}Channel`);return`vars`in e&&o?`rgba(${o} / 0.4)`:r(a,.4)},x=a(),S={primary:!0,secondary:!0,error:!0,info:!0,success:!0,warning:!0,textPrimary:!0,textSecondary:!0,textDisabled:!0},C=e=>{let{classes:t,component:n,focusVisible:r,underline:i}=e;return h({root:[`root`,`underline${c(i)}`,n===`button`&&`button`,r&&`focusVisible`]},v,t)},w=m(g,{name:`MuiLink`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`underline${c(n.underline)}`],n.component===`button`&&t.button]}})(l(({theme:e})=>({variants:[{props:{underline:`none`},style:{textDecoration:`none`}},{props:{underline:`hover`},style:{textDecoration:`none`,"&:hover":{textDecoration:`underline`}}},{props:{underline:`always`},style:{textDecoration:`underline`,"&:hover":{textDecorationColor:`inherit`}}},{props:({underline:e,ownerState:t})=>e===`always`&&t.color!==`inherit`,style:{textDecorationColor:`var(--Link-underlineColor)`}},{props:({underline:e,ownerState:t})=>e===`always`&&t.color===`inherit`,style:e.colorSpace?{textDecorationColor:e.alpha(`currentColor`,.4)}:null},...Object.entries(e.palette).filter(p()).map(([t])=>({props:{underline:`always`,color:t},style:{"--Link-underlineColor":e.alpha((e.vars||e).palette[t].main,.4)}})),{props:{underline:`always`,color:`textPrimary`},style:{"--Link-underlineColor":e.alpha((e.vars||e).palette.text.primary,.4)}},{props:{underline:`always`,color:`textSecondary`},style:{"--Link-underlineColor":e.alpha((e.vars||e).palette.text.secondary,.4)}},{props:{underline:`always`,color:`textDisabled`},style:{"--Link-underlineColor":(e.vars||e).palette.text.disabled}},{props:{component:`button`},style:{position:`relative`,WebkitTapHighlightColor:`transparent`,backgroundColor:`transparent`,outline:0,border:0,margin:0,borderRadius:0,padding:0,cursor:`pointer`,userSelect:`none`,verticalAlign:`middle`,MozAppearance:`none`,WebkitAppearance:`none`,"&::-moz-focus-inner":{borderStyle:`none`},[`&.${y.focusVisible}`]:{outline:`auto`}}}]}))),T=_.forwardRef(function(e,t){let n=d({props:e,name:`MuiLink`}),r=i(),{className:a,color:o=`primary`,component:s=`a`,onBlur:c,onFocus:l,TypographyClasses:p,underline:m=`always`,variant:h=`inherit`,sx:g,...v}=n,[y,T]=_.useState(!1),E=e=>{f(e.target)||T(!1),c&&c(e)},D=e=>{f(e.target)&&T(!0),l&&l(e)},O={...n,color:o,component:s,focusVisible:y,underline:m,variant:h};return(0,x.jsx)(w,{color:o,className:u(C(O).root,a),classes:p,component:s,onBlur:E,onFocus:D,ref:t,ownerState:O,variant:h,...v,sx:[...S[o]===void 0?[{color:o}]:[],...Array.isArray(g)?g:[g]],style:{...v.style,...m===`always`&&o!==`inherit`&&!S[o]&&{"--Link-underlineColor":b({theme:r,ownerState:O})}}})});export{T as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{t as n}from"./jsx-runtime-BnvnyDTF.js";import{v as r}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{t as i,u as a,y as o}from"./httpErrorResponseHandler-FMtt7Zqh.js";import{n as s,r as c}from"./formatPath-j72gcKwy.js";import{n as l}from"./useImpactMetrics-9qDSEpTn.js";var u=e(t(),1),d=(e={})=>{let t=`api/admin/projects${e.archived?`?archived=true`:``}`,{observe:n}=l(`project_list_load_ms`,`Client-side load time for the project list`,[50,100,200,500,1e3,2e3,5e3]),{data:r,error:c}=a(t,()=>{let e=s(t),r=performance.now();return fetch(e,{method:`GET`}).then(i(`Projects`)).then(e=>(n(performance.now()-r),e.json()))},e),[d,f]=(0,u.useState)(!c&&!r);return(0,u.useEffect)(()=>{f(!c&&!r)},[r,c]),{projects:r?.projects||[],error:c,loading:d,refetch:()=>{o(t)}}},f=`/static/unleashLogoIconDarkAlpha-BbvuC13D.gif`,p=n(),m=r(`div`,{shouldForwardProp:e=>e!==`type`})(({theme:e,type:t})=>({display:`flex`,justifyContent:`center`,alignItems:`center`,height:t===`fullscreen`?`100vh`:`100%`,backgroundColor:e.palette.background.paper})),h=r(`img`)(({theme:e})=>({width:`100px`,height:`100px`})),g=({type:e=`inline`})=>(0,p.jsx)(m,{role:`alert`,"aria-label":`Loading`,type:e,children:(0,p.jsx)(h,{src:c(f),alt:``})});export{d as n,g as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{r as n}from"./chunk-QUQL4437-Dr42NpoL.js";import{t as r}from"./jsx-runtime-BnvnyDTF.js";import{v as i}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{b as a,t as o}from"./TextField-oipjeg6n.js";import{t as s}from"./Radio-DL8ja0ll.js";import{t as c}from"./ConditionallyRender---uTpMBn.js";import{t as l}from"./Alert-_bLyWbvx.js";import{t as u}from"./Typography-BTdLWIUX.js";import{t as d}from"./Box-BQsxfFmC.js";import{t as f}from"./RadioGroup-Ci3WHaOy.js";import{a as p,i as m,o as h}from"./TooltipResolver-4A1YhwBy.js";import{t as g}from"./httpErrorResponseHandler-FMtt7Zqh.js";import{n as _}from"./formatPath-j72gcKwy.js";import{V as v}from"./PermissionButton-BIeM26DH.js";import{n as y,t as b}from"./useApiGetter-7FP8Avm4.js";import{Ai as x,Cr as S,Di as C,Fo as w,Fr as T,Go as E,Gs as D,Oi as O,Pr as k,ki as A,si as j,so as M}from"./index-BJ2iUk24.js";var N=e(t(),1),P=e=>fetch(e).then(g(`ChangeRequest`)).then(e=>e.json()),F=(e,t)=>{let{data:n,error:r,mutate:i}=A([],_(`api/admin/projects/${e}/change-requests/scheduled?${t.map(e=>`feature=${e}`).join(`&`)}`),P);return{changeRequests:n,loading:!r&&!n,refetch:i,error:r}},I=r(),L=()=>(0,I.jsx)(l,{severity:`warning`,sx:{m:e=>e.spacing(2,0)},children:`Archiving flags with dependencies will also remove those dependencies.`}),R=({ids:e,projectId:t})=>{let r=e=>`/projects/${t}/features/${e}`;return e?(0,I.jsxs)(l,{severity:`warning`,sx:{m:e=>e.spacing(2,0)},children:[(0,I.jsx)(u,{variant:`body2`,sx:{fontWeight:`bold`,display:`inline`},children:`${e.length} feature flags `}),(0,I.jsx)(`span`,{children:`have usage from applications. If you archive these feature flags they will not be available to Client SDKs:`}),(0,I.jsx)(`ul`,{children:e?.map(e=>(0,I.jsx)(`li`,{children:(0,I.jsx)(n,{to:r(e),children:e})},e))})]}):null},z=({ids:e,projectId:t})=>{let r=e=>`/projects/${t}/features/${e}`;return e&&e.length>1?(0,I.jsxs)(l,{severity:`error`,sx:{m:e=>e.spacing(2,0)},children:[(0,I.jsx)(u,{variant:`body2`,sx:{fontWeight:`bold`,display:`inline`},children:`${e.length} feature flags `}),(0,I.jsx)(`span`,{children:`have child features that depend on them and are not part of the archive operation. These parent features can not be archived:`}),(0,I.jsx)(`ul`,{children:e?.map(e=>(0,I.jsx)(`li`,{children:(0,I.jsx)(n,{to:r(e),children:e})},e))})]}):e&&e.length===1?(0,I.jsxs)(l,{severity:`error`,sx:{m:e=>e.spacing(2,0)},children:[(0,I.jsx)(n,{to:r(e[0]),children:e[0]}),` has child features that depend on it and are not part of the archive operation.`]}):null},B=({changeRequests:e,projectId:t})=>e&&e.length>0?(0,I.jsxs)(l,{severity:`warning`,sx:{m:e=>e.spacing(2,0)},children:[(0,I.jsxs)(`p`,{children:[`This archive operation would conflict with`,` `,e.length,` scheduled change request(s). The change request(s) that would be affected by this are:`]}),(0,I.jsx)(`ul`,{children:e.map(({id:e,title:r})=>{let i=r?`#${e} (${r})`:`Change request #${e}`;return(0,I.jsx)(`li`,{children:(0,I.jsx)(n,{to:`/projects/${t}/change-requests/${e}`,target:`_blank`,rel:`noopener noreferrer`,title:`Change request ${e}`,children:i})},e)})})]}):e===void 0?(0,I.jsx)(l,{severity:`warning`,children:(0,I.jsx)(`p`,{children:`This archive operation might conflict with one or more scheduled change requests. If you complete it, those change requests can no longer be applied.`})}):null,V=(e,t)=>{let n=S(e)(),{isChangeRequestConfiguredForReview:r}=v(e);return n&&r(n)&&t?`Add to change request`:n&&r(n)?`Add change to draft`:t?`Archive flags`:`Archive flag`},H=({projectId:e,featureIds:t,onSuccess:n,onError:r})=>{let{setToastData:i,setToastApiError:a}=p(),{archiveFeatureToggle:o}=C(),{archiveFeatures:s}=M(),{isChangeRequestConfiguredForReview:c}=v(e),{addChange:l}=x(),{refetch:u}=O(e),d=S(e),f=t?.length>1,h=d(),g=async()=>{if(!h){console.error(`No change request environment`);return}await l(e,h,t.map(e=>({action:`archiveFeature`,feature:e,payload:void 0}))),u(),i({type:`success`,text:f?`Changes added to a draft`:`Change added to a draft`})},_=async()=>{await o(e,t[0]),i({type:`success`,text:`Feature flag archived`})},y=async()=>{await s(e,t),i({type:`success`,text:`Feature flags archived`})};return async()=>{try{h&&c(h)?await g():f?await y():await _(),n()}catch(e){a(m(e)),r()}}},U=(e,t,n)=>{let[r,i]=(0,N.useState)(!0),[a,o]=(0,N.useState)([]),[s,c]=(0,N.useState)(!1),{verifyArchiveFeatures:l}=M();return(0,N.useEffect)(()=>{n&&l(t,e).then(e=>e.json()).then(({hasDeletedDependencies:e,parentsWithChildFeatures:t})=>{t.length===0?(i(!1),o(t)):(i(!0),o(t)),c(e)})},[JSON.stringify(e),n,t,o,i,c,l]),{disableArchive:r,offendingParents:a,hasDeletedDependencies:s}},W=({isOpen:e,onClose:t,onConfirm:n,projectId:r,featureIds:i,featuresWithUsage:a})=>{let o=i?.length>1,s=V(r,o),l=o?`Archive feature flags`:`Archive feature flag`,u=H({projectId:r,featureIds:i,onSuccess(){n(),t()},onError(){t()}}),{changeRequests:d}=F(r,i),{disableArchive:f,offendingParents:p,hasDeletedDependencies:m}=U(i,r,e),h=p.length===0&&m;return(0,I.jsx)(E,{onClick:u,open:e,onClose:t,primaryButtonText:s,secondaryButtonText:`Cancel`,title:l,disabledPrimaryButton:f,children:(0,I.jsx)(c,{condition:o,show:(0,I.jsxs)(I.Fragment,{children:[(0,I.jsxs)(`p`,{children:[`Are you sure you want to archive`,` `,(0,I.jsx)(`strong`,{children:i?.length}),` feature flags?`]}),(0,I.jsx)(c,{condition:!!(a&&a?.length>0),show:(0,I.jsx)(R,{ids:a,projectId:r})}),(0,I.jsx)(c,{condition:p.length>0,show:(0,I.jsx)(z,{ids:p,projectId:r})}),(0,I.jsx)(c,{condition:h,show:(0,I.jsx)(L,{})}),(0,I.jsx)(B,{changeRequests:d,projectId:r}),(0,I.jsx)(c,{condition:i?.length<=5,show:(0,I.jsx)(`ul`,{children:i?.map(e=>(0,I.jsx)(`li`,{children:e},e))})})]}),elseShow:(0,I.jsxs)(I.Fragment,{children:[(0,I.jsxs)(`p`,{children:[`Are you sure you want to archive`,` `,o?`these feature flags`:`this feature flag`,`?`]}),(0,I.jsx)(c,{condition:p.length>0,show:(0,I.jsx)(z,{ids:p,projectId:r})}),(0,I.jsx)(c,{condition:h,show:(0,I.jsx)(L,{})}),(0,I.jsx)(B,{changeRequests:d,projectId:r})]})})})},G=(e,t)=>`/api/admin/projects/${e}/features/${t}/parents`,K=(e,t)=>{let n=_(G(e,t)),{data:r,loading:i,error:a}=y(n,()=>b(n,`Parent Options`));return{parentOptions:r,loading:i,error:a}},q=(e,t)=>`/api/admin/projects/${e}/features/${t}/parent-variants`,J=(e,t)=>{let n=_(q(e,t)),{data:r,loading:i,error:a}=y(n,()=>b(n,`Parent Variant Options`));return{parentVariantOptions:r||[],loading:i,error:a}},Y=i(a)(({theme:e})=>({marginTop:e.spacing(2),marginBottom:e.spacing(1.5)})),X=({project:e,parent:t,onSelect:n})=>{let{parentVariantOptions:r}=J(e,t),i=(0,I.jsx)(T,{fontSize:`small`}),a=(0,I.jsx)(k,{fontSize:`small`});return(0,I.jsx)(Y,{id:`single-variant-options`,options:r,renderOption:(e,t,{selected:n})=>(0,I.jsxs)(`li`,{...e,children:[(0,I.jsx)(D,{icon:i,checkedIcon:a,style:{marginRight:8},checked:n}),t]}),renderInput:e=>(0,I.jsx)(o,{...e,placeholder:`Select variant`}),fullWidth:!0,onChange:(e,t)=>{n(String(t))}})},Z=({projectId:e,featureId:t,isOpen:n,setIsOpen:r,onComplete:i})=>{let{markFeatureCompleted:a}=w(),{parentVariantOptions:o}=J(e,t),[l,p]=(0,N.useState)(`kept`),[m,g]=(0,N.useState)(void 0),{trackEvent:_}=h();return(0,I.jsx)(E,{open:n,title:`Mark completed`,onClose:()=>{r(!1)},disabledPrimaryButton:l===`kept-with-variant`&&m===null,onClick:async()=>{let n=l===`kept-with-variant`?`kept`:l;await a(t,e,{status:n,statusValue:m}),r(!1),i(),_(`feature-lifecycle`,{props:{eventType:`complete`,status:n}})},primaryButtonText:`Mark completed`,secondaryButtonText:`Cancel`,children:(0,I.jsxs)(d,{children:[(0,I.jsxs)(d,{sx:{mt:2,mb:4},children:[`Marking the feature `,(0,I.jsx)(`b`,{children:t}),` as complete does not affect any configuration, but it moves the feature flag into it’s next life cycle stage and is an indication that you have learned what you needed in order to progress with the feature. It serves as a reminder to start cleaning up the feature flag and removing it from the code.`]}),(0,I.jsx)(u,{sx:{mb:2},children:(0,I.jsx)(`b`,{children:`What was the outcome of this feature?`})}),(0,I.jsxs)(f,{"aria-label":`selected-value`,name:`selected`,sx:{gap:e=>e.spacing(.5)},onChange:(e,t)=>{p(t)},children:[(0,I.jsx)(j,{value:`kept`,legal:{value:`We decided to keep the feature`},control:(0,I.jsx)(s,{})},`kept`),(0,I.jsx)(j,{value:`discarded`,legal:{value:`We decided to discard the feature`},control:(0,I.jsx)(s,{})},`discarded`),(0,I.jsx)(c,{condition:o.length>0,show:(0,I.jsx)(j,{value:`kept-with-variant`,legal:{value:`We decided to keep the feature variant`,description:`Choose to specify which feature variant will be kept`},control:(0,I.jsx)(s,{})},`kept-with-variant`)}),(0,I.jsx)(c,{condition:o.length>0&&l===`kept-with-variant`,show:(0,I.jsx)(X,{parent:t,project:e,onSelect:e=>{g(e)}})})]})]})})};export{W as i,K as n,J as r,Z as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{t as n}from"./useTheme-CQqAmDLr.js";import{t as r}from"./jsx-runtime-BnvnyDTF.js";import{v as i}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{t as a}from"./Alert-_bLyWbvx.js";import{t as o}from"./Typography-BTdLWIUX.js";import{t as s}from"./usePageTitle-CHzzFshF.js";import{Ds as c,Os as l,bs as u,kt as d}from"./index-BJ2iUk24.js";import{t as f}from"./unknownify-CCAQc7w1.js";import{n as p,t as m}from"./NetworkPrometheusAPIWarning-Bq62ygkV.js";var h=d(),g=e(t(),1),_=r(),v=i(`div`)(({theme:e})=>({marginBottom:e.spacing(18),display:`flex`,justifyContent:`center`})),y=i(`div`)(({theme:e})=>({display:`flex`,justifyContent:`center`,gap:e.spacing(4),flexWrap:`wrap`})),b=i(`div`)(({theme:e})=>({borderRadius:e.shape.borderRadiusMedium,border:`1px solid`,borderColor:e.palette.secondary.border,backgroundColor:e.palette.secondary.light,display:`flex`,flexDirection:`column`,alignItems:`center`,padding:e.spacing(1.5),zIndex:1,"& > svg":{width:e.spacing(9),height:e.spacing(9)}})),x=i(o)(({theme:e})=>({fontWeight:e.fontWeight.bold})),S=i(o)(({theme:e})=>({fontSize:e.fontSizes.smallBody,color:e.palette.text.secondary})),C=i(o)(({theme:e})=>({fontSize:e.fontSizes.smallerBody,color:e.palette.text.secondary})),w=e=>e[0]*1e3>Date.now()-6e5,T=e=>{let t=(e.values||[]).filter(e=>w(e)),n=t.length?Number.parseFloat(t[t.length-1][1]):0;return{label:e.label,reqs:n,type:f(e.metric?.endpoint?.split(`/`)[2])}},E=(e,t)=>{let n=t.label+t.type;return e[n]={...t,reqs:t.reqs+(e[n]?.reqs??0)},e},D=e=>{let t=(e?.data?.result?.map(e=>({...e,label:f(e.metric?.appName)})).filter(e=>e.label!==`unknown`)||[]).map(T).reduce(E,{});return Object.values(t).map(e=>({...e,reqs:e.reqs.toFixed(2)})).filter(e=>e.reqs!==`0.00`)??[]},O=()=>{s(`Network - Overview`);let e=n(),{metrics:t}=p(),r=(0,g.useMemo)(()=>D(t),[t]);return r.length===0?(0,_.jsxs)(a,{severity:`warning`,children:[`No data available.`,(0,_.jsx)(m,{})]}):(0,_.jsxs)(h.ArcherContainer,{strokeColor:e.palette.text.primary,endShape:{arrow:{arrowLength:4,arrowThickness:4}},children:[(0,_.jsx)(v,{children:(0,_.jsx)(h.ArcherElement,{id:`unleash`,children:(0,_.jsxs)(b,{children:[(0,_.jsx)(u,{darkmode:(0,_.jsx)(c,{}),lightmode:(0,_.jsx)(l,{})}),(0,_.jsx)(o,{sx:{marginTop:e.spacing(1)},children:`Unleash`})]})})}),(0,_.jsx)(y,{children:r.map(({label:t,reqs:n,type:r},i)=>(0,_.jsx)(h.ArcherElement,{id:`${i}`,relations:[{targetId:`unleash`,targetAnchor:`bottom`,sourceAnchor:`top`,style:{strokeColor:e.palette.secondary.border}}],children:(0,_.jsxs)(b,{children:[(0,_.jsx)(x,{children:t}),(0,_.jsxs)(S,{children:[n,` req/s`]}),(0,_.jsxs)(C,{children:[r,` app`]})]})}))})]})};export{O as NetworkOverview,O as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{t as n}from"./useTheme-CQqAmDLr.js";import{t as r}from"./jsx-runtime-BnvnyDTF.js";import{t as i}from"./ConditionallyRender---uTpMBn.js";import{t as a}from"./Alert-_bLyWbvx.js";import{t as o}from"./formatDate-cFuM4JYl.js";import{t as s}from"./usePageTitle-CHzzFshF.js";import{$o as c,$s as l,Gt as u,Kt as d,Pt as f,Qt as p,Xt as m,Yt as h,Zt as g,en as _,nn as v,st as y,tn as b}from"./index-BJ2iUk24.js";import{t as x}from"./unknownify-CCAQc7w1.js";import{n as S,t as C}from"./NetworkPrometheusAPIWarning-Bq62ygkV.js";var w=e(t(),1),T=r(),E=[`circle`,`rect`,`rectRounded`,`rectRot`,`triangle`],D=(e,t)=>e.map(e=>({x:e[0],y:t(e[1])})),O=(e,t)=>({locale:t.locale,responsive:!0,maintainAspectRatio:!1,interaction:{mode:`index`,intersect:!1},color:e.palette.text.secondary,plugins:{tooltip:{backgroundColor:e.palette.background.paper,bodyColor:e.palette.text.primary,titleColor:e.palette.action.active,borderColor:e.palette.primary.main,borderWidth:1,padding:10,boxPadding:5,usePointStyle:!0,callbacks:{title:e=>o(1e3*(e[0].parsed.x??0),t.locale)},itemSort:(e,t)=>(t.parsed.y??0)-(e.parsed.y??0)},legend:{position:`bottom`,align:`start`,labels:{boxWidth:10,boxHeight:10,usePointStyle:!0,padding:24}},title:{text:`Top 10 requests per second in the last 6 hours`,position:`top`,align:`start`,display:!0,font:{size:16,weight:400},color:e.palette.text.primary,padding:{bottom:32}}},scales:{y:{type:`linear`,title:{display:!0,text:`Requests per second`,color:e.palette.text.secondary},suggestedMin:0,ticks:{precision:0,color:e.palette.text.secondary},grid:{color:e.palette.divider},border:{color:e.palette.divider}},x:{type:`time`,time:{unit:`minute`},grid:{display:!0,color:e.palette.divider},border:{color:e.palette.divider},ticks:{callback:(e,n,r)=>o(r[n].value*1e3,t.locale)}}}}),k=class{items;picked=new Map;constructor(e){this.items=new y(e)}pick(e){return this.picked.has(e)||this.picked.set(e,this.items.next()),this.picked.get(e)}},A=(e,t)=>{if(t?.data?.result){let n=new k([e.palette.success,e.palette.error,e.palette.primary,e.palette.warning]);return t.data.result.map((e,t)=>{let r=x(e.metric?.endpoint),i=x(e.metric?.appName),a=n.pick(r),o=e.values||[];return{label:`${r}: ${i}`,borderColor:a.main,backgroundColor:a.main,data:D(o,e=>Number.parseFloat(e)),elements:{point:{radius:4,pointStyle:E[t%E.length]},line:{borderDash:[8,4]}}}})}return[]},j=()=>{let{locationSettings:e}=c(),{metrics:t}=S(),r=n(),o=(0,w.useMemo)(()=>O(r,e),[r,e]);s(`Network - Traffic`);let u=(0,w.useMemo)(()=>({datasets:A(r,t)}),[r,t,e]);return(0,T.jsx)(i,{condition:u.datasets.length===0,show:(0,T.jsxs)(a,{severity:`warning`,children:[`No data available.`,(0,T.jsx)(C,{})]}),elseShow:(0,T.jsx)(l,{sx:{display:`grid`,gap:4},children:(0,T.jsx)(`div`,{style:{height:400},children:(0,T.jsx)(f,{data:u,options:o,"aria-label":`An instance metrics line chart with two lines: requests per second for admin API and requests per second for client API`})})})})};d.register(u,m,g,h,p,_,v,b);export{j as NetworkTraffic,j as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{r as n}from"./chunk-QUQL4437-Dr42NpoL.js";import{t as r}from"./jsx-runtime-BnvnyDTF.js";import{v as i}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{t as a}from"./ConditionallyRender---uTpMBn.js";import{t as o}from"./Alert-_bLyWbvx.js";import{t as s}from"./Link-CfIScd2f.js";import{t as c,u as l}from"./httpErrorResponseHandler-FMtt7Zqh.js";import{n as u}from"./formatPath-j72gcKwy.js";import{t as d}from"./useUiConfig-DbVjTDpE.js";import{t as f}from"./usePageTitle-CHzzFshF.js";import{$o as p,Gt as m,Kt as h,Nt as g,Wt as _,Xt as v,en as y,fo as b,nn as x,tn as S,xs as C,ys as w}from"./index-BJ2iUk24.js";import{d as T,s as E}from"./useInstanceTrafficMetrics-CIpyIGYi.js";import{a as D,c as O,i as k,l as A,n as j,r as M,t as N,u as P}from"./networkTrafficUsageHighlightPlugin-DVWh8Lrd.js";import{t as F}from"./chartjs-plugin-annotation.esm-BxKcCGhA.js";var I=r(),L=i(`article`)(({theme:e})=>({minWidth:`200px`,border:`2px solid ${e.palette.divider}`,borderRadius:e.shape.borderRadiusLarge,padding:e.spacing(3),display:`flex`,flexDirection:`column`,gap:e.spacing(2)})),R=i(`h3`)(({theme:e})=>({margin:0,fontSize:e.typography.body1.fontSize})),z=i(`dl`)(({theme:e})=>({display:`flex`,flexDirection:`column`,gap:e.spacing(2.5),padding:0,margin:0})),B=i(`div`)(({theme:e})=>({display:`flex`,flexFlow:`row wrap`,justifyContent:`space-between`,gap:e.spacing(1,3),fontSize:e.typography.body2.fontSize,color:e.palette.text.secondary,"& dd":{margin:0,color:e.palette.text.primary}})),V=e=>{let t=e=>e.toLocaleString(`en-US`,{month:`short`,year:`numeric`});if(e.grouping===`monthly`){let n=new Date,r=C(n,e.monthsBack),i=C(n,1);return`Average requests from ${t(r)} to ${t(i)}`}return`Requests used in ${t(T(e.month))}`},H=({period:e,usageTotal:t,includedTraffic:n,purchasedTraffic:r,currentMonth:i})=>{let{locationSettings:a}=p();return(0,I.jsxs)(L,{children:[(0,I.jsx)(R,{children:`Number of requests to Unleash`}),(0,I.jsxs)(z,{children:[(0,I.jsxs)(B,{children:[(0,I.jsx)(`dt`,{children:V(e)}),(0,I.jsx)(`dd`,{children:(0,I.jsxs)(b,{color:n>0?t<=n?`success`:`error`:`neutral`,children:[t.toLocaleString(a.locale??`en-US`),` `,`requests`]})})]}),n>0&&(0,I.jsxs)(B,{children:[(0,I.jsx)(`dt`,{children:`Included in your plan`}),(0,I.jsxs)(`dd`,{children:[n.toLocaleString(`en-US`),` requests`]})]}),r>0&&i&&(0,I.jsxs)(B,{children:[(0,I.jsx)(`dt`,{children:`Additional traffic purchased`}),(0,I.jsxs)(`dd`,{children:[r.toLocaleString(`en-US`),` requests`]})]}),n>0&&i&&(0,I.jsxs)(B,{children:[(0,I.jsx)(`dt`,{children:`Total traffic available`}),(0,I.jsxs)(`dd`,{children:[(n+r).toLocaleString(`en-US`),` `,`requests`]})]})]})]})},U=({overages:e,overageCost:t,estimatedMonthlyCost:n})=>(0,I.jsxs)(L,{children:[(0,I.jsx)(R,{children:`Accrued traffic charges`}),(0,I.jsxs)(z,{children:[(0,I.jsxs)(B,{children:[(0,I.jsxs)(`dt`,{children:[`Request overages this month (`,(0,I.jsx)(s,{href:`https://www.getunleash.io/pricing`,children:`pricing`}),`)`]}),(0,I.jsxs)(`dd`,{children:[e.toLocaleString(),` requests`]})]}),(0,I.jsxs)(B,{children:[(0,I.jsx)(`dt`,{children:`Accrued traffic charges`}),(0,I.jsx)(`dd`,{children:(0,I.jsxs)(b,{color:`secondary`,children:[t,` USD`]})})]}),n>0&&(0,I.jsxs)(B,{children:[(0,I.jsx)(`dt`,{children:`Estimated charges based on current usage`}),(0,I.jsx)(`dd`,{children:(0,I.jsxs)(b,{color:`secondary`,children:[n,` USD`]})})]})]})]}),W=e(t(),1),G=53,K=259,q=1e6,J=(e,t)=>!e||t===`pay-as-you-go`?G:K;function Y(e,t,n){return e===void 0?J(t,n):e}function X(e){return e===void 0?0:e}var Z=()=>{let{isEnterprise:e,uiConfig:t}=d(),{data:n,error:r,mutate:i}=l(u(`/api/instance/trafficBundles`),Q);return{trafficBundles:(0,W.useMemo)(()=>({includedTraffic:Y(n?.includedTraffic,e(),t.billing)*q,purchasedTraffic:X(n?.purchasedTraffic)*q}),[n]),loading:!r&&!n,refetch:i}},Q=e=>fetch(e).then(c(`configuration`)).then(e=>e.json()),$=i(`div`)(({theme:e})=>({display:`grid`,gridTemplateColumns:`repeat(auto-fit, minmax(200px, max-content))`,flex:1,gap:e.spacing(2,4)})),ee=()=>{f(`Network - Data Usage`);let e=w(`estimateTrafficDataCost`),{isOss:t}=d(),{trafficBundles:r}=Z(),i=r.includedTraffic+r.purchasedTraffic,{chartDataSelection:s,setChartDataSelection:c,options:l}=j(i),{chartData:u,usageTotal:p,overageCost:m,estimatedMonthlyCost:h,requestSummaryUsage:_}=O(i,s),v=s.grouping===`daily`&&s.month===E&&i>0&&p-i>0&&e,y=s.grouping===`daily`&&s.month===E,b=(s.grouping===`monthly`||s.month===E)&&i>0&&m>0;return(0,I.jsx)(a,{condition:t(),show:(0,I.jsx)(o,{severity:`warning`,children:`Not enabled.`}),elseShow:(0,I.jsxs)(I.Fragment,{children:[(0,I.jsx)(a,{condition:b,show:(0,I.jsxs)(o,{severity:`warning`,sx:{mb:4},children:[(0,I.jsx)(M,{children:`Heads up!`}),` You are currently consuming more requests than your plan includes and will be billed according to our terms. Please see`,` `,(0,I.jsx)(n,{to:`https://www.getunleash.io/pricing`,children:`this page`}),` `,`for more information. In order to reduce your traffic consumption, you may configure an`,` `,(0,I.jsx)(n,{to:`https://docs.getunleash.io/unleash-edge`,children:`Unleash Edge instance`}),` `,`in your own datacenter.`]})}),(0,I.jsxs)(k,{children:[(0,I.jsxs)(D,{children:[(0,I.jsxs)($,{children:[(0,I.jsx)(H,{period:s,usageTotal:_,includedTraffic:r.includedTraffic,purchasedTraffic:r.purchasedTraffic,currentMonth:y}),v&&(0,I.jsx)(U,{overageCost:m,overages:p-i,estimatedMonthlyCost:h})]}),(0,I.jsx)(P,{selectedPeriod:s,setPeriod:c})]}),(0,I.jsx)(g,{data:u,plugins:[N],options:l,"aria-label":A(s)})]})]})})};h.register(F,m,v,_,S,x,y);export{ee as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e,o as t,t as n}from"./react-GZhdek4G.js";import{t as r}from"./jsx-runtime-BnvnyDTF.js";import{v as i}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{n as a,t as o}from"./ConditionallyRender---uTpMBn.js";import{t as s}from"./Typography-BTdLWIUX.js";import{t as c}from"./Divider-CsdWvu5F.js";import{t as l}from"./mui-CoU2c-id.js";import{t as u}from"./usePageTitle-CHzzFshF.js";var d=e(((e,t)=>{(function(){var e={}.hasOwnProperty;function n(){for(var e=``,t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=i(e,r(n)))}return e}function r(t){if(typeof t==`string`||typeof t==`number`)return t;if(typeof t!=`object`)return``;if(Array.isArray(t))return n.apply(null,t);if(t.toString!==Object.prototype.toString&&!t.toString.toString().includes(`[native code]`))return t.toString();var r=``;for(var a in t)e.call(t,a)&&t[a]&&(r=i(r,a));return r}function i(e,t){return t?e?e+` `+t:e+t:e}t!==void 0&&t.exports?(n.default=n,t.exports=n):typeof define==`function`&&typeof define.amd==`object`&&define.amd?define(`classnames`,[],function(){return n}):window.classNames=n})()})),f=t(d(),1),p=r(),m=i(c)(({theme:e})=>({height:`100%`,borderColor:e.palette.divider,width:`1px`,display:`inline-block`,marginLeft:e.spacing(2),marginRight:e.spacing(2),padding:e.spacing(.5,0),verticalAlign:`middle`})),h=i(`div`)(()=>({display:`flex`,flexDirection:`column`})),g=i(`div`)(()=>({display:`flex`,justifyContent:`space-between`,alignItems:`center`,position:`relative`})),_=i(`div`)(({theme:e})=>({overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`,marginRight:e.spacing(5)})),v=i(s)(({theme:e})=>({fontSize:e.fontSizes.mainHeader,lineHeight:e.spacing(5),fontWeight:e.typography.fontWeightBold})),y=i(`div`)(({theme:e})=>({display:`flex`,flexGrow:1,justifyContent:`flex-end`,alignItems:`center`,gap:e.spacing(1)})),b=({title:e,titleElement:t,actions:n,subtitle:r,variant:i,loading:a,className:s=``,secondary:c,children:l})=>{let d=(0,f.default)({skeleton:a});return u(c?``:e),(0,p.jsxs)(h,{children:[(0,p.jsxs)(g,{children:[(0,p.jsxs)(_,{className:(0,f.default)(d),"data-loading":!0,children:[(0,p.jsx)(v,{variant:i||c?`h2`:`h1`,className:(0,f.default)(s),children:t||e}),r&&(0,p.jsx)(`small`,{children:r})]}),(0,p.jsx)(o,{condition:!!n,show:(0,p.jsx)(y,{children:n})})]}),l]})};b.Divider=({sx:e})=>(0,p.jsx)(m,{orientation:`vertical`,variant:`middle`,sx:e});var x=b,S=l()(e=>({headerPadding:{padding:e.spacing(2,4)},withTabs:{padding:e.spacing(0,2),[e.breakpoints.down(`md`)]:{padding:e.spacing(0,1)}},bodyContainer:{padding:e.spacing(4),[e.breakpoints.down(`md`)]:{padding:e.spacing(2)},overflowX:`auto`},paddingDisabled:{padding:`0`},borderDisabled:{border:`none`}})),C=t(n(),1),w=(e,t=`[data-loading=true]`)=>{let n=(0,C.createRef)();return(0,C.useLayoutEffect)(()=>{n.current&&n.current.querySelectorAll(t).forEach(t=>{e?t.classList.add(`skeleton`):setTimeout(()=>t.classList.remove(`skeleton`),10)})},[e,t,n]),n},T=i(`div`)(({theme:e})=>({borderBottomStyle:`solid`,borderBottomWidth:`1px`,borderBottomColor:e.palette.divider,[e.breakpoints.down(`md`)]:{padding:e.spacing(3,2)}})),E=i(a)(({theme:e})=>({borderRadius:e.shape.borderRadiusLarge,boxShadow:`none`})),D=({children:e,isLoading:t})=>(0,p.jsx)(`div`,{ref:w(t),"aria-busy":t,"aria-live":`polite`,children:e}),O=({children:e,header:t,disablePadding:n=!1,disableBorder:r=!1,bodyClass:i=``,headerClass:a=``,isLoading:s=!1,disableLoading:c=!1,className:l,withTabs:u,...d})=>{let{classes:m}=S(),h=(0,f.default)(`header`,a||m.headerPadding,{[m.paddingDisabled]:n,[m.borderDisabled]:r,[m.withTabs]:u}),g=(0,f.default)(`body`,i||m.bodyContainer,{[m.paddingDisabled]:n,[m.borderDisabled]:r}),_=r?{elevation:0}:{},v=(0,p.jsxs)(E,{...d,..._,className:(0,f.default)(l),children:[(0,p.jsx)(o,{condition:!!t,show:(0,p.jsx)(T,{className:h,children:(0,p.jsx)(o,{condition:typeof t==`string`,show:(0,p.jsx)(x,{title:t}),elseShow:t})})}),(0,p.jsx)(`div`,{className:g,children:e})]});return c?(0,p.jsx)(`div`,{children:v}):(0,p.jsx)(D,{isLoading:s,children:v})};export{d as i,w as n,x as r,O as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{C as n,b as r,g as i,h as a,p as o,t as s,x as c,y as l}from"./useTheme-CQqAmDLr.js";import{t as u}from"./jsx-runtime-BnvnyDTF.js";import{O as d,k as f,m as p,v as m,x as h}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{W as g}from"./useConditionallyHiddenColumns-DTDzRlyO.js";import{Qs as _}from"./index-BJ2iUk24.js";var v=e(t(),1),y=u(),b=o(),x=g(`div`,{name:`MuiStack`,slot:`Root`});function S(e){return _({props:e,name:`MuiStack`,defaultTheme:b})}function C(e,t){let n=v.Children.toArray(e).filter(Boolean);return n.reduce((e,r,i)=>(e.push(r),i<n.length-1&&e.push(v.cloneElement(t,{key:`separator-${i}`})),e),[])}var w=e=>({row:`Left`,"row-reverse":`Right`,column:`Top`,"column-reverse":`Bottom`})[e],T=({ownerState:e,theme:t})=>{let o={display:`flex`,flexDirection:`column`,...l({theme:t},c({values:e.direction,breakpoints:t.breakpoints.values}),e=>({flexDirection:e}))};if(e.spacing){let r=a(t),s=Object.keys(t.breakpoints.values).reduce((t,n)=>((typeof e.spacing==`object`&&e.spacing[n]!=null||typeof e.direction==`object`&&e.direction[n]!=null)&&(t[n]=!0),t),{}),u=c({values:e.direction,base:s}),d=c({values:e.spacing,base:s});typeof u==`object`&&Object.keys(u).forEach((e,t,n)=>{u[e]||(u[e]=t>0?u[n[t-1]]:`column`)}),o=n(o,l({theme:t},d,(t,n)=>e.useFlexGap?{gap:i(r,t)}:{"& > :not(style):not(style)":{margin:0},"& > :not(style) ~ :not(style)":{[`margin${w(n?u[n]:e.direction)}`]:i(r,t)}}))}return o=r(t.breakpoints,o),o};function E(e={}){let{createStyledComponent:t=x,useThemeProps:n=S,componentName:r=`MuiStack`}=e,i=()=>h({root:[`root`]},e=>d(r,e),{}),a=t(T);return v.forwardRef(function(e,t){let{component:r=`div`,direction:o=`column`,spacing:s=0,divider:c,children:l,className:u,useFlexGap:d=!1,...p}=n(e);return(0,y.jsx)(a,{as:r,ownerState:{direction:o,spacing:s,useFlexGap:d},ref:t,className:f(i().root,u),...p,children:c?C(l,c):l})})}var D=E({createStyledComponent:m(`div`,{name:`MuiStack`,slot:`Root`}),useThemeProps:e=>p({props:e,name:`MuiStack`})}),O=m(`div`)(()=>({display:`flex`,alignItems:`center`,justifyContent:`center`,position:`relative`,margin:0})),k=m(`div`,{shouldForwardProp:e=>e!==`color`})(({theme:e,color:t})=>({position:`absolute`,top:`50%`,left:`50%`,transform:`translate(-50%, -50%)`,color:t,fontSize:e.fontSizes.smallerBody,margin:0})),A=({percentage:e,size:t=`4rem`,disabled:n=!1,children:r,strokeRatio:i=.2})=>{let a=s(),o={display:`block`,borderRadius:`100%`,transform:`rotate(-90deg)`,height:t,width:t},c=100/(2*Math.PI),l=2*c,u=l*i,d=n?a.palette.neutral.border:a.palette.primary.light;return(0,y.jsxs)(O,{children:[(0,y.jsxs)(`svg`,{viewBox:`0 0 ${l} ${l}`,style:o,"aria-hidden":!0,children:[(0,y.jsx)(`circle`,{r:c,cx:c,cy:c,fill:`none`,stroke:a.palette.background.elevation2,strokeWidth:u}),(0,y.jsx)(`circle`,{r:c,cx:c,cy:c,fill:`none`,stroke:d,strokeWidth:u,strokeDasharray:`${e} 100`})]}),(0,y.jsx)(k,{color:d,children:r})]})};export{D as n,A as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{t as n}from"./jsx-runtime-BnvnyDTF.js";import{v as r}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{i}from"./CircularProgress-C_LUU3DK.js";import{t as a}from"./Button-CebB8EPB.js";import{r as o,t as s}from"./TooltipResolver-4A1YhwBy.js";import{t as c,u as ee,y as te}from"./httpErrorResponseHandler-FMtt7Zqh.js";import{n as l}from"./formatPath-j72gcKwy.js";import{t as u}from"./useUiConfig-DbVjTDpE.js";import{t as d}from"./useConditionalSWR-DGgzun6i.js";var f=n(),p=e(t(),1),m=()=>{let{data:e,error:t}=ee(_,h,g);return{data:e,refetchAuth:(0,p.useCallback)(async()=>te(_).catch(console.warn),[]),loading:!t&&!e,error:t}},h=()=>fetch(_).then(e=>e.json()),g={revalidateIfStale:!1,revalidateOnFocus:!1,revalidateOnReconnect:!1,refreshInterval:15e3},_=l(`api/admin/user`),v=(e=`useId`)=>(0,p.useMemo)(()=>`${e}-${ne++}`,[e]),ne=0,y=i((0,f.jsx)(`path`,{d:`M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2m-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2m3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1s3.1 1.39 3.1 3.1z`}),`Lock`),b=p.createContext({isAdmin:!1,hasAccess:()=>{throw Error(`hasAccess called outside AccessContext`)}}),re=`ADMIN`,ie=`CREATE_FEATURE`,ae=`UPDATE_FEATURE`,oe=`UPDATE_FEATURE_DEPENDENCY`,se=`DELETE_FEATURE`,ce=`CREATE_STRATEGY`,le=`UPDATE_STRATEGY`,ue=`DELETE_STRATEGY`,de=`UPDATE_APPLICATION`,fe=`CREATE_CONTEXT_FIELD`,pe=`UPDATE_CONTEXT_FIELD`,me=`CREATE_PROJECT`,he=`UPDATE_PROJECT`,ge=`DELETE_PROJECT`,_e=`CREATE_TAG_TYPE`,ve=`UPDATE_TAG_TYPE`,ye=`DELETE_TAG_TYPE`,be=`CREATE_ADDON`,xe=`UPDATE_ADDON`,Se=`DELETE_ADDON`,Ce=`DELETE_ENVIRONMENT`,we=`UPDATE_ENVIRONMENT`,x=`CREATE_FEATURE_STRATEGY`,S=`UPDATE_FEATURE_STRATEGY`,Te=`DELETE_FEATURE_STRATEGY`,C=`UPDATE_FEATURE_ENVIRONMENT`,w=`UPDATE_FEATURE_ENVIRONMENT_VARIANTS`,Ee=`MOVE_FEATURE_TOGGLE`,De=`CREATE_SEGMENT`,Oe=`UPDATE_SEGMENT`,ke=`DELETE_SEGMENT`,Ae=`APPLY_CHANGE_REQUEST`,je=`APPROVE_CHANGE_REQUEST`,Me=`SKIP_CHANGE_REQUEST`,Ne=`CREATE_PROJECT_API_TOKEN`,Pe=`UPDATE_PROJECT_SEGMENT`,Fe=`PROJECT_USER_ACCESS_READ`,Ie=`PROJECT_DEFAULT_STRATEGY_READ`,Le=`PROJECT_CHANGE_REQUEST_READ`,Re=`PROJECT_SETTINGS_READ`,ze=`PROJECT_USER_ACCESS_WRITE`,Be=`PROJECT_DEFAULT_STRATEGY_WRITE`,Ve=`PROJECT_CHANGE_REQUEST_WRITE`,He=`PROJECT_SETTINGS_WRITE`,T=e=>{let{isEnterprise:t}=u(),{data:n,error:r,mutate:i}=d(!!e&&t(),[],l(`api/admin/projects/${e}/change-requests/config`),Ue);return{data:n||[],loading:!r&&!n,refetchChangeRequestConfig:i,error:r}},Ue=e=>fetch(e).then(c(`Request changes`)).then(e=>e.json()),E=e=>{let{data:t}=T(e),n=Q(e),r=p.useCallback(e=>n(`SKIP_CHANGE_REQUEST`,e)?!1:t.some(t=>t.environment===e&&t.changeRequestEnabled),[JSON.stringify(t)]),i=p.useCallback(e=>t.some(t=>t.environment===e&&t.changeRequestEnabled),[JSON.stringify(t)]);return{isChangeRequestConfigured:r,isChangeRequestConfiguredInAnyEnv:p.useCallback(()=>t.some(e=>e.changeRequestEnabled),[JSON.stringify(t)]),isChangeRequestConfiguredForReview:i}},D=`ADMIN`,We=`CREATE_ADDON`,Ge=`UPDATE_ADDON`,Ke=`DELETE_ADDON`,qe=`UPDATE_CLIENT_API_TOKEN`,O=`CREATE_CLIENT_API_TOKEN`,k=`DELETE_CLIENT_API_TOKEN`,A=`READ_CLIENT_API_TOKEN`,Je=`UPDATE_FRONTEND_API_TOKEN`,j=`CREATE_FRONTEND_API_TOKEN`,M=`DELETE_FRONTEND_API_TOKEN`,N=`READ_FRONTEND_API_TOKEN`,Ye=`UPDATE_APPLICATION`,P=`CREATE_CONTEXT_FIELD`,F=`UPDATE_CONTEXT_FIELD`,I=`DELETE_CONTEXT_FIELD`,Xe=`CREATE_PROJECT`,L=`READ_ROLE`,Ze=`CREATE_SEGMENT`,Qe=`UPDATE_SEGMENT`,$e=`DELETE_SEGMENT`,et=`CREATE_STRATEGY`,tt=`UPDATE_STRATEGY`,nt=`DELETE_STRATEGY`,rt=`CREATE_TAG_TYPE`,it=`UPDATE_TAG_TYPE`,at=`DELETE_TAG_TYPE`,R=`READ_LOGS`,z=`UPDATE_MAINTENANCE_MODE`,B=`UPDATE_INSTANCE_BANNERS`,V=`UPDATE_CORS`,H=`UPDATE_AUTH_CONFIGURATION`,ot=`CREATE_FEATURE`,U=`UPDATE_FEATURE`,st=`UPDATE_FEATURE_DEPENDENCY`,ct=`DELETE_FEATURE`,W=`UPDATE_PROJECT`,lt=`DELETE_PROJECT`,ut=`UPDATE_FEATURE_VARIANTS`,dt=`MOVE_FEATURE_TOGGLE`,G=`READ_PROJECT_API_TOKEN`,K=`CREATE_PROJECT_API_TOKEN`,q=`DELETE_PROJECT_API_TOKEN`,J=`UPDATE_PROJECT_CONTEXT`,ft=`UPDATE_PROJECT_SEGMENT`,pt=`CREATE_FEATURE_STRATEGY`,Y=`UPDATE_FEATURE_STRATEGY`,X=`DELETE_FEATURE_STRATEGY`,mt=`UPDATE_FEATURE_ENVIRONMENT_VARIANTS`,ht=`UPDATE_FEATURE_ENVIRONMENT`,gt=`PROJECT_USER_ACCESS_READ`,_t=`PROJECT_DEFAULT_STRATEGY_READ`,vt=`PROJECT_CHANGE_REQUEST_READ`,yt=`PROJECT_SETTINGS_READ`,bt=`PROJECT_USER_ACCESS_WRITE`,xt=`PROJECT_DEFAULT_STRATEGY_WRITE`,St=`PROJECT_CHANGE_REQUEST_WRITE`,Ct=`PROJECT_SETTINGS_WRITE`,wt=`RELEASE_PLAN_TEMPLATE_CREATE`,Tt=`RELEASE_PLAN_TEMPLATE_UPDATE`,Et=`RELEASE_PLAN_TEMPLATE_DELETE`,Dt=[{label:`Integration`,permissions:[We,Ge,Ke]},{label:`API token`,permissions:[qe,O,k,A,Je,j,M,N]},{label:`Application`,permissions:[Ye]},{label:`Context field`,permissions:[P,F,I]},{label:`Project`,permissions:[Xe]},{label:`Role`,permissions:[L]},{label:`Segment`,permissions:[Ze,Qe,$e]},{label:`Strategy`,permissions:[et,tt,nt]},{label:`Tag type`,permissions:[rt,it,at]},{label:`Release plan templates`,permissions:[wt,Et,Tt]},{label:`Instance maintenance`,permissions:[R,z,B,V]},{label:`Authentication`,permissions:[H]}],Ot=[D,L,A,N,z,R],kt=[{label:`Features and strategies`,permissions:[[ot],[U],[st],[ct],[ut],[dt],[pt],[Y],[X],[ht],[mt],[J],[ft]]},{label:`Project settings`,permissions:[[W],[gt,W],[bt,W],[_t,W],[xt,W],[yt,W],[Ct,W],[lt]]},{label:`API tokens`,permissions:[[G],[K],[q]]},{label:`Change requests`,permissions:[[St,W],[vt,W]]}],At=(e,t)=>{let n=e.data&&`permissions`in e.data?e.data.permissions:void 0;return n&&t?.maintenanceMode&&(n=n.filter(e=>Ot.includes(e.permission))),n},jt=()=>{let e=m(),{uiConfig:t}=u();return{permissions:At(e,t),refetchPermissions:e.refetchAuth,loading:e.loading,error:e.error}},Mt=e=>({fetcher:()=>{let t=l(`api/admin/projects/${e}/overview`);return fetch(t,{method:`GET`}).then(c(`Project overview`)).then(e=>e.json())},KEY:`api/admin/projects/${e}/overview`}),Nt={featureTypeCounts:[],environments:[],name:``,health:0,members:0,version:1,description:`Default`,favorite:!1,mode:`open`,defaultStickiness:`default`,stats:{archivedCurrentWindow:0,archivedPastWindow:0,avgTimeToProdCurrentWindow:0,createdCurrentWindow:0,createdPastWindow:0,projectActivityCurrentWindow:0,projectActivityPastWindow:0,projectMembersAddedCurrentWindow:0},onboardingStatus:{status:`onboarded`}},Z=(e,t={})=>Pt(e,t),Pt=(e=``,t={})=>{let{KEY:n,fetcher:r}=Mt(e),{data:i,error:a,mutate:o}=d(!!e,Nt,n,r,t),s=(0,p.useCallback)(()=>{o()},[o]);return{project:i||Nt,loading:!a&&!i,error:a,refetch:s}},Ft=e=>Z(e).project.name||e,It=e=>e.featureTypeCounts?.map(e=>e.count).reduce((e,t)=>e+t,0),Q=e=>{let{hasAccess:t}=(0,p.useContext)(b),n=(e,n,r)=>n&&r?t(e,n,r):n?t(e,n):t(e),r=(e,t,r)=>Array.isArray(e)?e.some(e=>n(e,t,r)):n(e,t,r);return(t,n)=>r(t,e,n)},Lt=e=>{let{isChangeRequestConfigured:t}=E(e),n=Q(e);return(e,r)=>r&&t(r)||n(e,r)},Rt=[x,S,Te,C,w],zt=(e,t)=>e.filter(e=>t.includes(e)).length>0,Bt=e=>{let{permissions:t}=jt();return t?t.find(t=>t.project===e):!1},Vt=e=>{let t=Bt(e),{project:n}=Z(e);return n.mode===`protected`?t:!0},Ht=e=>zt(Rt,[].concat(e)),Ut=(e,t,n)=>{let{isChangeRequestConfigured:r}=E(t),i=r(n),a=Vt(t);return i&&a&&Ht(e)},Wt=(e,t,n)=>{let r=Q(t);return Ut(e,t,n)||r(e,n)},Gt=(e,t,n)=>Q(t)(e,n),Kt=r(a)({justifySelf:`start`,alignSelf:`start`,"&.Mui-disabled":{pointerEvents:`auto`}}),qt=(e,t,n)=>!e&&!n?(0,f.jsx)(y,{titleAccess:`Locked`}):t||null,Jt=p.forwardRef((e,t)=>{let n=Wt(e.permission,e.projectId,e.environmentId);return(0,f.jsx)($,{...e,access:n,ref:t})}),Yt=p.forwardRef((e,t)=>{let n=Gt(e.permission,e.projectId,e.environmentId);return(0,f.jsx)($,{...e,access:n,ref:t})}),$=p.forwardRef(({permission:e,access:t,variant:n=`contained`,color:r=`primary`,onClick:i,children:a,disabled:c,projectId:ee,environmentId:te,tooltipProps:l,hideLockIcon:u,className:d,...p},m)=>{let h=c||!t,g=v(),_=qt(t,p.endIcon,u),ne=e=>{if(h){e.preventDefault(),e.stopPropagation();return}i?.(e)};return(0,f.jsx)(s,{...l,title:o(t,l?.title),arrow:!0,children:(0,f.jsx)(Kt,{ref:m,onClick:ne,"aria-disabled":h||void 0,"aria-labelledby":g,variant:n,color:r,disableRipple:h,className:h?`${d} Mui-disabled`:d,...p,endIcon:_,children:a})})}),Xt=p.forwardRef((e,t)=>e.projectId!==void 0&&e.environmentId!==void 0?(0,f.jsx)(Jt,{...e,environmentId:e.environmentId,projectId:e.projectId,ref:t}):(0,f.jsx)(Yt,{...e,ref:t}));export{ce as $,Tt as A,le as At,J as B,A as C,oe as Ct,L as D,he as Dt,G as E,S as Et,U as F,m as Ft,je as G,T as H,Y as I,ie as J,be as K,B as L,H as M,b as Mt,F as N,y as Nt,wt as O,Pe as Ot,V as P,v as Pt,De as Q,z as R,kt as S,ae as St,R as T,w as Tt,re as U,E as V,Ae as W,me as X,x as Y,Ne as Z,I as _,Me as _t,Gt as a,ke as at,q as b,pe as bt,Z as c,Ee as ct,D as d,Ie as dt,_e as et,O as f,Be as ft,k as g,ze as gt,K as h,Fe as ht,Wt as i,ge as it,Dt as j,ve as jt,Et as k,Oe as kt,Ft as l,Le as lt,j as m,He as mt,Lt as n,Ce as nt,It as o,ue as ot,P as p,Re as pt,fe as q,Q as r,se as rt,Pt as s,ye as st,Xt as t,Se as tt,jt as u,Ve as ut,X as v,xe as vt,N as w,C as wt,xt as x,we as xt,M as y,de as yt,W as z};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{a as n,c as r,f as i,i as a,l as o,n as s,r as c,s as l,t as u}from"./Grow-BIbmvKVy.js";import{t as d}from"./useTheme-CQqAmDLr.js";import{t as f}from"./jsx-runtime-BnvnyDTF.js";import{D as p,O as m,f as h,h as g,k as _,l as v,m as y,u as b,v as x,x as S}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{a as C,c as w,l as T,n as E,r as D}from"./ConditionallyRender---uTpMBn.js";function O(...e){return e.reduce((e,t)=>t==null?e:function(...n){e.apply(this,n),t.apply(this,n)},()=>{})}function k(e,t=166){let n;function r(...r){clearTimeout(n),n=setTimeout(()=>{e.apply(this,r)},t)}return r.clear=()=>{clearTimeout(n)},r}var A=e(t(),1),j=f(),M=k;function N(e){let t=e.activeElement;for(;t?.shadowRoot?.activeElement!=null;)t=t.shadowRoot.activeElement;return t}var P=N,F=i;function I(e){return i(e).defaultView||window}var L=I;function R(e,t){if(!e)return t;function n(e,t){let n={};return Object.keys(t).forEach(r=>{T(r,t[r])&&typeof e[r]==`function`&&(n[r]=(...n)=>{e[r](...n),t[r](...n)})}),n}if(typeof e==`function`||typeof t==`function`)return r=>{let i=typeof t==`function`?t(r):t,a=typeof e==`function`?e({...r,...i}):e,o=_(r?.className,i?.className,a?.className),s=n(a,i);return{...i,...a,...s,...!!o&&{className:o},...i?.style&&a?.style&&{style:{...i.style,...a.style}},...i?.sx&&a?.sx&&{sx:[...Array.isArray(i.sx)?i.sx:[i.sx],...Array.isArray(a.sx)?a.sx:[a.sx]]}}};let r=t,i=n(e,r),a=_(r?.className,e?.className);return{...t,...e,...i,...!!a&&{className:a},...r?.style&&e?.style&&{style:{...r.style,...e.style}},...r?.sx&&e?.sx&&{sx:[...Array.isArray(r.sx)?r.sx:[r.sx],...Array.isArray(e.sx)?e.sx:[e.sx]]}}}function z(e,t){if(!e||!t)return!1;if(e.contains(t))return!0;let n=t.getRootNode?.();if(n&&n instanceof ShadowRoot){let n=t;for(;n;){if(e===n)return!0;n=n.parentNode??n.host??null}}return!1}var B={entering:{opacity:1},entered:{opacity:1},exiting:{opacity:0},exited:{opacity:0}},V={opacity:0,visibility:`hidden`},H=A.forwardRef(function(e,t){let i=d(),s={enter:i.transitions.duration.enteringScreen,exit:i.transitions.duration.leavingScreen},{addEndListener:u,appear:f=!0,children:p,easing:m,in:h,onEnter:g,onEntered:_,onEntering:y,onExit:b,onExited:x,onExiting:S,style:C,timeout:w=s,...T}=e,E=A.useRef(null),D=v(E,c(p),t),O=l(E,y),k=l(E,(e,t)=>{r(e);let a=n({style:C,timeout:w,easing:m},{mode:`enter`});e.style.transition=i.transitions.create(`opacity`,a),g&&g(e,t)}),M=l(E,_),N=l(E,S),P=l(E,e=>{let t=n({style:C,timeout:w,easing:m},{mode:`exit`});e.style.transition=i.transitions.create(`opacity`,t),b&&b(e)}),F=l(E,e=>{e.style.transition=``,x&&x(e)});return(0,j.jsx)(o,{appear:f,in:h,nodeRef:E,onEnter:k,onEntered:M,onEntering:O,onExit:P,onExited:F,onExiting:N,addEndListener:e=>{u&&u(E.current,e)},timeout:w,...T,children:(e,{ownerState:t,...n})=>{let r=a(e,h,B,V,C,p.props.style);return A.cloneElement(p,{style:r,ref:D,...n})}})});function U(e){return m(`MuiBackdrop`,e)}p(`MuiBackdrop`,[`root`,`invisible`]);var W=e=>{let{classes:t,invisible:n}=e;return S({root:[`root`,n&&`invisible`]},U,t)},G=x(`div`,{name:`MuiBackdrop`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.invisible&&t.invisible]}})({position:`fixed`,display:`flex`,alignItems:`center`,justifyContent:`center`,right:0,bottom:0,top:0,left:0,backgroundColor:`rgba(0, 0, 0, 0.5)`,WebkitTapHighlightColor:`transparent`,variants:[{props:{invisible:!0},style:{backgroundColor:`transparent`}}]}),K=A.forwardRef(function(e,t){let n=y({props:e,name:`MuiBackdrop`}),{children:r,className:i,component:a=`div`,invisible:o=!1,open:s,slotProps:c={},slots:l={},transitionDuration:u,...d}=n,f={...n,component:a,invisible:o},p=W(f),m={component:a,slots:l,slotProps:c},[h,g]=D(`root`,{elementType:G,externalForwardedProps:m,className:_(p.root,i),ownerState:f}),[v,b]=D(`transition`,{elementType:H,externalForwardedProps:m,ownerState:f});return(0,j.jsx)(v,{in:s,timeout:u,...d,...b,children:(0,j.jsx)(h,{...g,ref:t,children:r})})});function q(e=window){let t=e.document.documentElement.clientWidth;return e.innerWidth-t}function J(e){let t=i(e);return t.body===e?I(e).innerWidth>t.documentElement.clientWidth:e.scrollHeight>e.clientHeight}function Y(e,t){t?e.setAttribute(`aria-hidden`,`true`):e.removeAttribute(`aria-hidden`)}function X(e){return parseFloat(I(e).getComputedStyle(e).paddingRight)||0}function ee(e){let t=[`TEMPLATE`,`SCRIPT`,`STYLE`,`LINK`,`MAP`,`META`,`NOSCRIPT`,`PICTURE`,`COL`,`COLGROUP`,`PARAM`,`SLOT`,`SOURCE`,`TRACK`].includes(e.tagName),n=e.tagName===`INPUT`&&e.getAttribute(`type`)===`hidden`;return t||n}function te(e,t,n,r,i){let a=[t,n,...r];[].forEach.call(e.children,e=>{let t=!a.includes(e),n=!ee(e);t&&n&&Y(e,i)})}function Z(e,t){let n=-1;return e.some((e,r)=>t(e)?(n=r,!0):!1),n}function ne(e,t){let n=[],r=e.container;if(!t.disableScrollLock){if(J(r)){let e=q(I(r));n.push({value:r.style.paddingRight,property:`padding-right`,el:r}),r.style.paddingRight=`${X(r)+e}px`;let t=i(r).querySelectorAll(`.mui-fixed`);[].forEach.call(t,t=>{n.push({value:t.style.paddingRight,property:`padding-right`,el:t}),t.style.paddingRight=`${X(t)+e}px`})}let e;if(r.parentNode instanceof DocumentFragment)e=i(r).body;else{let t=r.parentElement,n=I(r);e=t?.nodeName===`HTML`&&n.getComputedStyle(t).overflowY===`scroll`?t:r}n.push({value:e.style.overflow,property:`overflow`,el:e},{value:e.style.overflowX,property:`overflow-x`,el:e},{value:e.style.overflowY,property:`overflow-y`,el:e}),e.style.overflow=`hidden`}return()=>{n.forEach(({value:e,el:t,property:n})=>{e?t.style.setProperty(n,e):t.style.removeProperty(n)})}}function re(e){let t=[];return[].forEach.call(e.children,e=>{e.getAttribute(`aria-hidden`)===`true`&&t.push(e)}),t}var ie=class{constructor(){this.modals=[],this.containers=[]}add(e,t){let n=this.modals.indexOf(e);if(n!==-1)return n;n=this.modals.length,this.modals.push(e),e.modalRef&&Y(e.modalRef,!1);let r=re(t);te(t,e.mount,e.modalRef,r,!0);let i=Z(this.containers,e=>e.container===t);return i===-1?(this.containers.push({modals:[e],container:t,restore:null,hiddenSiblings:r}),n):(this.containers[i].modals.push(e),n)}mount(e,t){let n=Z(this.containers,t=>t.modals.includes(e)),r=this.containers[n];r.restore||=ne(r,t)}remove(e,t=!0){let n=this.modals.indexOf(e);if(n===-1)return n;let r=Z(this.containers,t=>t.modals.includes(e)),i=this.containers[r];if(i.modals.splice(i.modals.indexOf(e),1),this.modals.splice(n,1),i.modals.length===0)i.restore&&i.restore(),e.modalRef&&Y(e.modalRef,t),te(i.container,e.mount,e.modalRef,i.hiddenSiblings,!1),this.containers.splice(r,1);else{let e=i.modals[i.modals.length-1];e.modalRef&&Y(e.modalRef,!1)}return n}isTopModal(e){return this.modals.length>0&&this.modals[this.modals.length-1]===e}},ae=z,oe=`data-mui-focusable`;function se(e){return e?e.hasAttribute(`data-mui-focusable`)?e:e.querySelector(`[${oe}]`):null}var ce=[`input`,`select`,`textarea`,`a[href]`,`button`,`[tabindex]`,`audio[controls]`,`video[controls]`,`[contenteditable]:not([contenteditable="false"])`].join(`,`);function le(e){let t=parseInt(e.getAttribute(`tabindex`)||``,10);return Number.isNaN(t)?e.contentEditable===`true`||(e.nodeName===`AUDIO`||e.nodeName===`VIDEO`||e.nodeName===`DETAILS`)&&e.getAttribute(`tabindex`)===null?0:e.tabIndex:t}function ue(e){if(e.tagName!==`INPUT`||e.type!==`radio`||!e.name)return!1;let t=t=>e.ownerDocument.querySelector(`input[type="radio"]${t}`),n=t(`[name="${e.name}"]:checked`);return n||=t(`[name="${e.name}"]`),n!==e}function de(e){return!(e.disabled||e.tagName===`INPUT`&&e.type===`hidden`||ue(e))}function fe(e){let t=[],n=[];return Array.from(e.querySelectorAll(ce)).forEach((e,r)=>{let i=le(e);i===-1||!de(e)||(i===0?t.push(e):n.push({documentOrder:r,tabIndex:i,node:e}))}),n.sort((e,t)=>e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex).map(e=>e.node).concat(t)}function pe(){return!0}function me(e){let{children:t,disableAutoFocus:n=!1,disableEnforceFocus:r=!1,disableRestoreFocus:a=!1,getTabbable:o=fe,isEnabled:s=pe,open:l}=e,u=A.useRef(!1),d=A.useRef(null),f=A.useRef(null),p=A.useRef(null),m=A.useRef(null),h=A.useRef(!1),g=A.useRef(null),_=b(c(t),g),v=A.useRef(null);A.useEffect(()=>{!l||!g.current||(h.current=!n)},[n,l]),A.useEffect(()=>{if(u.current=!1,!l||!g.current)return;let e=P(i(g.current)),t=se(g.current)??g.current;return ae(g.current,e)||(t.hasAttribute(`tabIndex`)||t.setAttribute(`tabIndex`,`-1`),h.current&&t.focus()),()=>{!a&&p.current&&(u.current=!0,p.current.focus(),p.current=null)}},[l]),A.useEffect(()=>{if(!l||!g.current)return;let e=i(g.current),t=t=>{v.current=t,!(r||!s()||t.key!==`Tab`)&&P(e)===g.current&&t.shiftKey&&(u.current=!0,f.current&&f.current.focus())},n=()=>{let t=g.current;if(t===null)return;let n=P(e);if(!e.hasFocus()||!s()||u.current){u.current=!1;return}if(ae(t,n)||r&&n!==d.current&&n!==f.current)return;if(n!==m.current)m.current=null;else if(m.current!==null)return;if(!h.current)return;let i=[];if((n===d.current||n===f.current)&&(i=o(g.current)),i.length>0){let e=!!(v.current?.shiftKey&&v.current?.key===`Tab`),t=i[0],n=i[i.length-1];typeof t!=`string`&&typeof n!=`string`&&(e?n.focus():t.focus())}else t.focus()};e.addEventListener(`focusin`,n),e.addEventListener(`keydown`,t,!0);let a=setInterval(()=>{let t=P(e);t&&t.tagName===`BODY`&&n()},50);return()=>{clearInterval(a),e.removeEventListener(`focusin`,n),e.removeEventListener(`keydown`,t,!0)}},[n,r,a,s,l,o]);let y=e=>{p.current===null&&(p.current=e.relatedTarget),h.current=!0,m.current=e.target;let n=t.props.onFocus;n&&n(e)},x=e=>{p.current===null&&(p.current=e.relatedTarget),h.current=!0};return(0,j.jsxs)(A.Fragment,{children:[(0,j.jsx)(`div`,{tabIndex:l?0:-1,onFocus:x,ref:d,"data-testid":`sentinelStart`}),A.cloneElement(t,{ref:_,onFocus:y}),(0,j.jsx)(`div`,{tabIndex:l?0:-1,onFocus:x,ref:f,"data-testid":`sentinelEnd`})]})}function he(e){return typeof e==`function`?e():e}function ge(e){return e?e.props.hasOwnProperty(`in`):!1}var _e=()=>{},Q=new ie;function ve(e){let{container:t,disableScrollLock:n=!1,closeAfterTransition:r=!1,onTransitionEnter:a,onTransitionExited:o,children:s,onClose:c,open:l,rootRef:u}=e,d=A.useRef({}),f=A.useRef(null),p=A.useRef(null),m=b(p,u),[g,_]=A.useState(!l),v=ge(s),y=!0;(e[`aria-hidden`]===`false`||e[`aria-hidden`]===!1)&&(y=!1);let x=()=>i(f.current),S=()=>(d.current.modalRef=p.current,d.current.mount=f.current,d.current),w=()=>{Q.mount(S(),{disableScrollLock:n}),p.current&&(p.current.scrollTop=0)},T=h(()=>{let e=he(t)||x().body;Q.add(S(),e),p.current&&w()}),E=()=>Q.isTopModal(S()),D=h(e=>{f.current=e,e&&(l&&E()?w():p.current&&Y(p.current,y))}),k=A.useCallback(()=>{Q.remove(S(),y)},[y]);A.useEffect(()=>()=>{k()},[k]),A.useEffect(()=>{l?T():(!v||!r)&&k()},[l,k,v,r,T]);let j=e=>t=>{e.onKeyDown?.(t),!(t.key!==`Escape`||t.which===229||!E())&&(t.stopPropagation(),c&&c(t,`escapeKeyDown`))},M=e=>t=>{e.onClick?.(t),t.target===t.currentTarget&&c&&c(t,`backdropClick`)};return{getRootProps:(t={})=>{let n=C(e);delete n.onTransitionEnter,delete n.onTransitionExited;let r={...n,...t};return{role:`presentation`,...r,onKeyDown:j(r),ref:m}},getBackdropProps:(e={})=>{let t=e;return{"aria-hidden":!0,...t,onClick:M(t),open:l}},getTransitionProps:()=>({onEnter:O(()=>{_(!1),a&&a()},s?.props.onEnter??_e),onExited:O(()=>{_(!0),o&&o(),r&&k()},s?.props.onExited??_e)}),rootRef:m,portalRef:D,isTopModal:E,exited:g,hasTransition:v}}function ye(e){return m(`MuiModal`,e)}p(`MuiModal`,[`root`,`hidden`,`backdrop`]);var be=e=>{let{open:t,exited:n,classes:r}=e;return S({root:[`root`,!t&&n&&`hidden`],backdrop:[`backdrop`]},ye,r)},xe=x(`div`,{name:`MuiModal`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,!n.open&&n.exited&&t.hidden]}})(g(({theme:e})=>({position:`fixed`,zIndex:(e.vars||e).zIndex.modal,right:0,bottom:0,top:0,left:0,variants:[{props:({ownerState:e})=>!e.open&&e.exited,style:{visibility:`hidden`}}]}))),Se=x(K,{name:`MuiModal`,slot:`Backdrop`})({zIndex:-1}),Ce=A.forwardRef(function(e,t){let n=y({name:`MuiModal`,props:e}),{classes:r,className:i,closeAfterTransition:a=!1,children:o,container:c,component:l,disableAutoFocus:u=!1,disableEnforceFocus:d=!1,disablePortal:f=!1,disableRestoreFocus:p=!1,disableScrollLock:m=!1,hideBackdrop:h=!1,keepMounted:g=!1,onClose:v,onTransitionEnter:b,onTransitionExited:x,open:S,slotProps:C={},slots:w={},theme:T,...E}=n,O={...n,closeAfterTransition:a,disableAutoFocus:u,disableEnforceFocus:d,disablePortal:f,disableRestoreFocus:p,disableScrollLock:m,hideBackdrop:h,keepMounted:g},{getRootProps:k,getBackdropProps:M,getTransitionProps:N,portalRef:P,isTopModal:F,exited:I,hasTransition:L}=ve({...O,rootRef:t}),R={...O,exited:I},z=be(R),B={};if(o.props.tabIndex===void 0&&(B.tabIndex=`-1`),L){let{onEnter:e,onExited:t}=N();B.onEnter=e,B.onExited=t}let V={slots:w,slotProps:C},[H,U]=D(`root`,{ref:t,elementType:xe,externalForwardedProps:{...V,...E,component:l},getSlotProps:k,ownerState:R,className:_(i,z?.root,!R.open&&R.exited&&z?.hidden)}),[W,G]=D(`backdrop`,{elementType:Se,externalForwardedProps:V,shouldForwardComponentProp:!0,getSlotProps:e=>M({...e,onClick:t=>{e?.onClick&&e.onClick(t)}}),className:z?.backdrop,ownerState:R});return!g&&!S&&(!L||I)?null:(0,j.jsx)(s,{ref:P,container:c,disablePortal:f,children:(0,j.jsxs)(H,{...U,children:[h?null:(0,j.jsx)(W,{...G}),(0,j.jsx)(me,{disableEnforceFocus:d,disableAutoFocus:u,disableRestoreFocus:p,isEnabled:F,open:S,children:A.cloneElement(o,B)})]})})});function we(e){return m(`MuiPopover`,e)}p(`MuiPopover`,[`root`,`paper`]);function Te(e,t){let n=0;return typeof t==`number`?n=t:t===`center`?n=e.height/2:t===`bottom`&&(n=e.height),n}function Ee(e,t){let n=0;return typeof t==`number`?n=t:t===`center`?n=e.width/2:t===`right`&&(n=e.width),n}function De(e){return[e.horizontal,e.vertical].map(e=>typeof e==`number`?`${e}px`:e).join(` `)}function $(e){return typeof e==`function`?e():e}var Oe=e=>{let{classes:t}=e;return S({root:[`root`],paper:[`paper`]},we,t)},ke=x(Ce,{name:`MuiPopover`,slot:`Root`})({}),Ae=x(E,{name:`MuiPopover`,slot:`Paper`})({position:`absolute`,overflowY:`auto`,overflowX:`hidden`,minWidth:16,minHeight:16,maxWidth:`calc(100% - 32px)`,maxHeight:`calc(100% - 32px)`,outline:0}),je=A.forwardRef(function(e,t){let n=y({props:e,name:`MuiPopover`}),{action:r,anchorEl:i,anchorOrigin:a={vertical:`top`,horizontal:`left`},anchorPosition:o,anchorReference:s=`anchorEl`,children:c,className:l,container:d,disableAutoFocus:f=!1,elevation:p=8,marginThreshold:m=16,open:h,slots:g={},slotProps:v={},transformOrigin:b={vertical:`top`,horizontal:`left`},transitionDuration:x=`auto`,disableScrollLock:S=!1,...C}=n,T=A.useRef(),E={...n,anchorOrigin:a,anchorReference:s,elevation:p,marginThreshold:m,transformOrigin:b,transitionDuration:x},O=Oe(E),k=A.useCallback(()=>{if(s===`anchorPosition`)return o;let e=$(i),t=(e&&e.nodeType===1?e:F(T.current).body).getBoundingClientRect();return{top:t.top+Te(t,a.vertical),left:t.left+Ee(t,a.horizontal)}},[i,a.horizontal,a.vertical,o,s]),N=A.useCallback(e=>({vertical:Te(e,b.vertical),horizontal:Ee(e,b.horizontal)}),[b.horizontal,b.vertical]),P=A.useCallback(e=>{let t={width:e.offsetWidth,height:e.offsetHeight},n=N(t);if(s===`none`)return{top:null,left:null,transformOrigin:De(n)};let r=k(),a=r.top-n.vertical,o=r.left-n.horizontal,c=a+t.height,l=o+t.width,u=L($(i)),d=u.innerHeight-m,f=u.innerWidth-m;if(m!=null&&a<m){let e=a-m;a-=e,n.vertical+=e}else if(m!=null&&c>d){let e=c-d;a-=e,n.vertical+=e}if(m!=null&&o<m){let e=o-m;o-=e,n.horizontal+=e}else if(l>f){let e=l-f;o-=e,n.horizontal+=e}return{top:`${Math.round(a)}px`,left:`${Math.round(o)}px`,transformOrigin:De(n)}},[i,s,k,N,m]),[I,z]=A.useState(h),B=A.useCallback(()=>{let e=T.current;if(!e)return;let t=P(e);t.top!=null&&e.style.setProperty(`top`,t.top),t.left!=null&&(e.style.left=t.left),e.style.transformOrigin=t.transformOrigin,z(!0)},[P]);A.useEffect(()=>(S&&window.addEventListener(`scroll`,B),()=>window.removeEventListener(`scroll`,B)),[i,S,B]);let V=()=>{B()},H=()=>{z(!1)};A.useEffect(()=>{h&&B()}),A.useImperativeHandle(r,()=>h?{updatePosition:()=>{B()}}:null,[h,B]),A.useEffect(()=>{if(!h)return;let e=M(()=>{B()}),t=L($(i));return t.addEventListener(`resize`,e),()=>{e.clear(),t.removeEventListener(`resize`,e)}},[i,h,B]);let U=x,W={slots:g,slotProps:v},[G,K]=D(`transition`,{elementType:u,externalForwardedProps:W,ownerState:E,getSlotProps:e=>({...e,onEntering:(t,n)=>{e.onEntering?.(t,n),V()},onExited:t=>{e.onExited?.(t),H()}}),additionalProps:{appear:!0,in:h}});x===`auto`&&!G.muiSupportAuto&&(U=void 0);let q=d||(i?F($(i)).body:void 0),[J,{slots:Y,slotProps:X,...ee}]=D(`root`,{ref:t,elementType:ke,externalForwardedProps:{...W,...C},shouldForwardComponentProp:!0,additionalProps:{slots:{backdrop:g.backdrop},slotProps:{backdrop:R(typeof v.backdrop==`function`?v.backdrop(E):v.backdrop,{invisible:!0})},container:q,open:h},ownerState:E,className:_(O.root,l)}),[te,Z]=D(`paper`,{ref:T,className:O.paper,elementType:Ae,externalForwardedProps:W,shouldForwardComponentProp:!0,additionalProps:{elevation:p,style:I?void 0:{opacity:0}},ownerState:E});return(0,j.jsx)(J,{...ee,...!w(J)&&{slots:Y,slotProps:X,disableAutoFocus:f,disableScrollLock:S},children:(0,j.jsx)(G,{...K,timeout:U,children:(0,j.jsx)(te,{...Z,children:c})})})});export{k as _,ae as a,H as c,L as d,I as f,M as g,N as h,oe as i,z as l,P as m,Ae as n,q as o,F as p,Ce as r,K as s,je as t,R as u,O as v};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{t as n}from"./jsx-runtime-BnvnyDTF.js";import{D as r,O as i,_ as a,h as o,k as s,m as c,t as l,v as u,x as d,y as f}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{S as p}from"./TextField-oipjeg6n.js";import{v as m}from"./Popover-CUTnSn2h.js";import{i as h}from"./CircularProgress-C_LUU3DK.js";import{r as g}from"./ConditionallyRender---uTpMBn.js";import{t as _}from"./SwitchBase-DWPIxZnN.js";var v=e(t(),1),y=n(),b=m,x=h((0,y.jsx)(`path`,{d:`M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z`}),`RadioButtonUnchecked`),S=h((0,y.jsx)(`path`,{d:`M8.465 8.465C9.37 7.56 10.62 7 12 7C14.76 7 17 9.24 17 12C17 13.38 16.44 14.63 15.535 15.535C14.63 16.44 13.38 17 12 17C9.24 17 7 14.76 7 12C7 10.62 7.56 9.37 8.465 8.465Z`}),`RadioButtonChecked`),C=u(`span`,{name:`MuiRadioButtonIcon`,shouldForwardProp:f})({position:`relative`,display:`flex`}),w=u(x,{name:`MuiRadioButtonIcon`})({transform:`scale(1)`}),T=u(S,{name:`MuiRadioButtonIcon`})(o(({theme:e})=>({left:0,position:`absolute`,transform:`scale(0)`,transition:e.transitions.create(`transform`,{easing:e.transitions.easing.easeIn,duration:e.transitions.duration.shortest}),variants:[{props:{checked:!0},style:{transform:`scale(1)`,transition:e.transitions.create(`transform`,{easing:e.transitions.easing.easeOut,duration:e.transitions.duration.shortest})}}]})));function E(e){let{checked:t=!1,classes:n={},fontSize:r}=e,i={...e,checked:t};return(0,y.jsxs)(C,{className:n.root,ownerState:i,children:[(0,y.jsx)(w,{fontSize:r,className:n.background,ownerState:i}),(0,y.jsx)(T,{fontSize:r,className:n.dot,ownerState:i})]})}var D=v.createContext(void 0);function O(){return v.useContext(D)}function k(e){return i(`MuiRadio`,e)}var A=r(`MuiRadio`,[`root`,`checked`,`disabled`,`colorPrimary`,`colorSecondary`,`sizeSmall`]),j=e=>{let{classes:t,color:n,size:r}=e,i={root:[`root`,`color${a(n)}`,r!==`medium`&&`size${a(r)}`]};return{...t,...d(i,k,t)}},M=u(_,{shouldForwardProp:e=>f(e)||e===`classes`,name:`MuiRadio`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.size!==`medium`&&t[`size${a(n.size)}`],t[`color${a(n.color)}`]]}})(o(({theme:e})=>({color:(e.vars||e).palette.text.secondary,[`&.${A.disabled}`]:{color:(e.vars||e).palette.action.disabled},variants:[{props:{color:`default`,disabled:!1,disableRipple:!1},style:{"&:hover":{backgroundColor:e.alpha((e.vars||e).palette.action.active,(e.vars||e).palette.action.hoverOpacity)}}},...Object.entries(e.palette).filter(l()).map(([t])=>({props:{color:t,disabled:!1,disableRipple:!1},style:{"&:hover":{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)}}})),...Object.entries(e.palette).filter(l()).map(([t])=>({props:{color:t,disabled:!1},style:{[`&.${A.checked}`]:{color:(e.vars||e).palette[t].main}}})),{props:{disableRipple:!1},style:{"&:hover":{"@media (hover: none)":{backgroundColor:`transparent`}}}}]})));function N(e,t){return typeof t==`object`&&t?e===t:String(e)===String(t)}var P=(0,y.jsx)(E,{checked:!0}),F=(0,y.jsx)(E,{}),I=v.forwardRef(function(e,t){let n=c({props:e,name:`MuiRadio`}),{checked:r,checkedIcon:i=P,color:a=`primary`,icon:o=F,name:l,onChange:u,size:d=`medium`,className:f,disabled:m,disableRipple:h=!1,slots:_={},slotProps:x={},...S}=n,C=p(),w=m;C&&w===void 0&&(w=C.disabled),w??=!1;let T={...n,disabled:w,disableRipple:h,color:a,size:d},E=j(T),D=O(),k=r,A=b(u,D&&D.onChange),I=l;D&&(k===void 0&&(k=N(D.value,n.value)),I===void 0&&(I=D.name));let L=x.input,[R,z]=g(`root`,{ref:t,elementType:M,className:s(E.root,f),shouldForwardComponentProp:!0,externalForwardedProps:{slots:_,slotProps:x,...S},getSlotProps:e=>({...e,onChange:(t,...n)=>{e.onChange?.(t,...n),A(t,...n)}}),ownerState:T,additionalProps:{type:`radio`,icon:v.cloneElement(o,{fontSize:o.props.fontSize??d}),checkedIcon:v.cloneElement(i,{fontSize:i.props.fontSize??d}),disabled:w,name:I,checked:k,slots:_,slotProps:{input:typeof L==`function`?L(T):L}}});return(0,y.jsx)(R,{...z,classes:E})});export{D as n,I as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{t as n}from"./jsx-runtime-BnvnyDTF.js";import{D as r,O as i,k as a,l as o,m as s,p as c,v as l,x as u}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{a as d}from"./Tooltip-BaILXXti.js";import{C as f}from"./TextField-oipjeg6n.js";import{n as p}from"./Radio-DL8ja0ll.js";var m=e(t(),1);function h(e){return i(`MuiFormGroup`,e)}r(`MuiFormGroup`,[`root`,`row`,`error`]);var g=n(),_=e=>{let{classes:t,row:n,error:r}=e;return u({root:[`root`,n&&`row`,r&&`error`]},h,t)},v=l(`div`,{name:`MuiFormGroup`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.row&&t.row]}})({display:`flex`,flexDirection:`column`,flexWrap:`wrap`,variants:[{props:{row:!0},style:{flexDirection:`row`}}]}),y=m.forwardRef(function(e,t){let n=s({props:e,name:`MuiFormGroup`}),{className:r,row:i=!1,...o}=n,[c]=f({props:n,states:[`error`]}),l={...n,row:i,error:c.error};return(0,g.jsx)(v,{className:a(_(l).root,r),ownerState:l,ref:t,...o})});function b(e){return i(`MuiRadioGroup`,e)}r(`MuiRadioGroup`,[`root`,`row`,`error`]);var x=e=>{let{classes:t,row:n,error:r}=e;return u({root:[`root`,n&&`row`,r&&`error`]},b,t)},S=m.forwardRef(function(e,t){let{actions:n,children:r,className:i,defaultValue:s,name:l,onChange:u,value:f,...h}=e,_=m.useRef(null),v=x(e),[b,S]=d({controlled:f,default:s,name:`RadioGroup`});m.useImperativeHandle(n,()=>({focus:()=>{let e=_.current.querySelector(`input:not(:disabled):checked`);e||=_.current.querySelector(`input:not(:disabled)`),e&&e.focus()}}),[]);let C=o(t,_),w=c(l),T=m.useMemo(()=>({name:w,onChange(e){S(e.target.value),u&&u(e,e.target.value)},value:b}),[w,u,S,b]);return(0,g.jsx)(p.Provider,{value:T,children:(0,g.jsx)(y,{role:`radiogroup`,ref:C,className:a(v.root,i),...h,children:r})})});export{S as t};
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{t as n}from"./useTheme-CQqAmDLr.js";import{t as r}from"./jsx-runtime-BnvnyDTF.js";import{v as i}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{i as a}from"./CircularProgress-C_LUU3DK.js";import{t as o}from"./Box-BQsxfFmC.js";import{t as s}from"./Button-CebB8EPB.js";import{ot as c}from"./index-BJ2iUk24.js";import{a as l,o as u,r as d,t as f}from"./esm-CFWP4-MJ.js";var p=r(),m=a((0,p.jsx)(`path`,{d:`M3 21h18v-2H3zM3 8v8l4-4zm8 9h10v-2H11zM3 3v2h18V3zm8 6h10V7H11zm0 4h10v-2H11z`}),`FormatIndentIncrease`),h=e(t(),1),g=i(o,{shouldForwardProp:e=>e!==`editorStyle`&&e!==`hasError`})(({theme:e,editorStyle:t,hasError:n})=>({border:`1px solid ${n?e.palette.error.main:e.palette.divider}`,borderRadius:e.shape.borderRadiusMedium,overflow:`hidden`,position:`relative`,backgroundColor:e.palette.background.paper,minHeight:t===`sidePanel`?void 0:e.spacing(8),"&:hover":{borderColor:e.palette.action.disabled},"&:focus-within":{borderColor:n?e.palette.error.main:e.palette.primary.main},"& .cm-editor":{backgroundColor:e.palette.background.paper,color:e.palette.text.primary,fontSize:e.fontSizes.smallBody,minHeight:`inherit`,outline:0,position:`relative`,zIndex:0},"& .cm-focused":{outline:0},"& .cm-content":{paddingTop:e.spacing(1),paddingRight:e.spacing(12),paddingBottom:e.spacing(1),minHeight:`inherit`},"& .cm-gutters":{backgroundColor:e.palette.background.alternative,borderRight:`1px solid ${e.palette.divider}`,color:e.palette.text.secondary,minHeight:`inherit`},"& .cm-lineNumbers .cm-gutterElement":{paddingLeft:e.spacing(.75),paddingRight:e.spacing(.75),textAlign:`center`},"& .cm-gutter":{minHeight:`inherit`},"& .cm-line":{paddingLeft:e.spacing(1),paddingRight:e.spacing(1)},"& .cm-scroller":{fontFamily:e.typography.fontFamily,minHeight:`inherit`},"& .cm-activeLine, & .cm-activeLineGutter":{backgroundColor:`transparent`},"& .cm-selectionBackground, & .cm-content ::selection":{backgroundColor:`${e.palette.primary.light} !important`},"& .cm-tooltip":{backgroundColor:e.palette.background.paper,border:`1px solid ${e.palette.divider}`,borderRadius:e.shape.borderRadiusMedium,boxShadow:e.shadows[3]},"& .cm-lintRange-error":{backgroundImage:`linear-gradient(45deg, transparent 65%, ${e.palette.error.main} 80%, transparent 90%),
|
|
2
|
-
linear-gradient(135deg, transparent 5%, ${e.palette.error.main} 15%, transparent 25%),
|
|
3
|
-
linear-gradient(135deg, transparent 45%, ${e.palette.error.main} 55%, transparent 65%),
|
|
4
|
-
linear-gradient(45deg, transparent 25%, ${e.palette.error.main} 35%, transparent 50%)`,backgroundPosition:`0 100%`,backgroundRepeat:`repeat-x`,backgroundSize:`8px 3px`},"& .cm-diagnostic-error":{borderLeftColor:e.palette.error.main},...t===`sidePanel`&&{height:`100%`,border:0,backgroundColor:`transparent`,"&:hover, &:focus-within":{borderColor:`transparent`},"& .cm-editor":{height:`100%`,backgroundColor:`transparent`},"& .cm-gutters":{backgroundColor:`transparent`,color:e.palette.text.secondary}}})),_=i(s)(({theme:e})=>({position:`absolute`,top:e.spacing(.75),right:e.spacing(.75),zIndex:1,backgroundColor:e.palette.background.paper,"&:hover":{backgroundColor:e.palette.background.elevation1}})),v=i(`div`)(({theme:e})=>({padding:e.spacing(.5,1),borderTop:`1px solid ${e.palette.divider}`,backgroundColor:e.palette.background.alternative,color:e.palette.text.secondary,fontSize:e.fontSizes.smallBody})),y=i(`div`)(({theme:e})=>({display:`flex`,alignItems:`center`,gap:e.spacing(1),marginTop:e.spacing(.75),padding:e.spacing(1,1.5),border:`1px solid ${e.palette.error.border}`,borderRadius:e.shape.borderRadiusMedium,backgroundColor:e.palette.error.light,color:e.palette.error.dark,fontSize:e.fontSizes.smallBody,lineHeight:1.4})),b=i(`div`)({width:`100%`}),x=e=>`text`in e?e.text:JSON.stringify(e.json,void 0,2)??``,S=e=>{if(e.trim()!==``)try{JSON.parse(e);return}catch(e){return e instanceof Error?e.message:`Invalid JSON`}},C=({content:e,onChange:t,onBlur:r,validationError:i,readOnly:a=!1,statusBar:o=!1,editorStyle:s=`default`})=>{let C=n(),w=(0,h.useMemo)(()=>x(e),[e]),[T,E]=(0,h.useState)(),D=(0,h.useMemo)(()=>[l(),...a?[]:[d(u())]],[a]),O=!a&&i===void 0;(0,h.useEffect)(()=>{E(O?S(w):void 0)},[O,w]);let k=(0,h.useCallback)(e=>{O&&E(S(e)),t?.({text:e})},[t,O]),A=(0,h.useCallback)(()=>{let e;try{e=JSON.stringify(JSON.parse(w),void 0,2)}catch{return}t?.({text:e})},[t,w]),j=s===`sidePanel`?void 0:C.spacing(10),M=i??T;return(0,p.jsxs)(b,{children:[(0,p.jsxs)(g,{editorStyle:s,hasError:!!M,children:[a?null:(0,p.jsx)(_,{size:`small`,variant:`outlined`,startIcon:(0,p.jsx)(m,{}),onClick:A,children:`Format`}),(0,p.jsx)(f,{value:w,minHeight:j,height:s===`sidePanel`?`100%`:void 0,theme:`none`,extensions:D,onChange:k,onBlur:r,readOnly:a,editable:!a,basicSetup:{foldGutter:!1,lineNumbers:!1,highlightActiveLine:!1,highlightActiveLineGutter:!1}}),o?(0,p.jsx)(v,{children:`JSON`}):null]}),M?(0,p.jsxs)(y,{role:`alert`,children:[(0,p.jsx)(c,{fontSize:`small`}),M]}):null]})};export{C as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{r as n,u as r}from"./chunk-QUQL4437-Dr42NpoL.js";import{t as i}from"./jsx-runtime-BnvnyDTF.js";import{D as a,O as o,k as s,m as c,v as l,x as u}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{A as d,M as f,O as p,_ as m,c as h,j as g,n as _,o as v,t as ee,v as te,w as y,y as ne}from"./useConditionallyHiddenColumns-DTDzRlyO.js";import{t as re}from"./useMediaQuery-DGx8zAkf.js";import{t as ie}from"./Tooltip-BaILXXti.js";import{y as ae}from"./TextField-oipjeg6n.js";import{t as oe}from"./Radio-DL8ja0ll.js";import{i as se}from"./CircularProgress-C_LUU3DK.js";import{t as b}from"./ConditionallyRender---uTpMBn.js";import{r as ce,t as x}from"./Alert-_bLyWbvx.js";import{t as S}from"./Typography-BTdLWIUX.js";import{t as C}from"./Box-BQsxfFmC.js";import{t as w}from"./Button-CebB8EPB.js";import{t as T}from"./FormControlLabel-F5gDLixN.js";import{t as le}from"./RadioGroup-Ci3WHaOy.js";import{t as E}from"./Link-CfIScd2f.js";import{a as ue,i as D,n as O,o as de,r as fe,t as k}from"./useEnvironments-CTguhgy0.js";import{a as A,i as pe}from"./TooltipResolver-4A1YhwBy.js";import{t as j,u as me}from"./httpErrorResponseHandler-FMtt7Zqh.js";import{n as M}from"./formatPath-j72gcKwy.js";import{a as N,h as he}from"./PermissionButton-BIeM26DH.js";import{t as P}from"./useUiConfig-DbVjTDpE.js";import{t as F}from"./HtmlTooltip-B9jv1G1R.js";import{t as I}from"./Truncator-D2bO9ub6.js";import{f as L}from"./testIds-B_Ev-uQn.js";import{n as R,t as z}from"./FileCopy-B8HZEA83.js";import{t as B}from"./Highlighter-MomUaQww.js";import{t as ge}from"./useConditionalSWR-DGgzun6i.js";import{Go as V,Hn as _e,Oa as ve,Qo as ye,Uo as be,Wo as xe,Xo as Se,_r as Ce,ca as we,js as Te,ka as Ee,la as De,no as Oe,qa as ke,sa as Ae,to as H}from"./index-BJ2iUk24.js";import{t as je}from"./useApiTokens-C8Dqw_X1.js";var U=e(t(),1);function Me(e){return o(`MuiTableContainer`,e)}a(`MuiTableContainer`,[`root`]);var W=i(),Ne=e=>{let{classes:t}=e;return u({root:[`root`]},Me,t)},Pe=l(`div`,{name:`MuiTableContainer`,slot:`Root`})({width:`100%`,overflowX:`auto`}),Fe=U.forwardRef(function(e,t){let n=c({props:e,name:`MuiTableContainer`}),{className:r,component:i=`div`,...a}=n,o={...n,component:i};return(0,W.jsx)(Pe,{ref:t,as:i,className:s(Ne(o).root,r),ownerState:o,...a})}),Ie=()=>(0,W.jsx)(x,{severity:`info`,children:(0,W.jsxs)(`p`,{children:[`Read the`,` `,(0,W.jsx)(`a`,{href:`https://docs.getunleash.io/sdks`,target:`_blank`,rel:`noreferrer`,children:`SDK overview`}),` `,`to connect Unleash to your application. Please note it can take up to `,(0,W.jsx)(`strong`,{children:`1 minute`}),` before a new API key is activated.`]})}),G=e(R(),1),K=({title:e,url:t})=>{let{setToastData:n}=A();return(0,W.jsxs)(O,{children:[(0,W.jsx)(D,{component:`th`,scope:`row`,children:e}),(0,W.jsx)(D,{children:(0,W.jsx)(`pre`,{style:{display:`inline`},children:t})}),(0,W.jsx)(D,{align:`center`,children:(0,W.jsx)(ie,{title:`Copy URL`,arrow:!0,children:(0,W.jsx)(ce,{onClick:(e=>()=>{(0,G.default)(e),n({type:`success`,text:`Copied to clipboard`})})(t),size:`small`,"aria-label":`Copy ${e} to clipboard`,children:(0,W.jsx)(z,{})})})})]})},q=l(D)(({theme:e})=>({color:e.palette.text.secondary})),Le=({compact:e})=>{let{uiConfig:t}=P(),[n,r]=(0,U.useState)(!e),i=t.unleashUrl&&(n||!t.edgeUrl),a=e&&t.edgeUrl&&t.unleashUrl,o=t.edgeUrl?{edgeUrl:`${t.edgeUrl}/api/`,edgeFrontendUrl:`${t.edgeUrl}/api/frontend/`}:void 0,s=`${t.unleashUrl}/api/`,c=`${t.unleashUrl}/api/frontend/`;return(0,W.jsxs)(Fe,{role:`region`,"aria-live":`polite`,children:[(0,W.jsxs)(de,{"aria-label":`API URLs`,id:`api-urls-table`,children:[(0,W.jsx)(fe,{children:(0,W.jsxs)(O,{children:[(0,W.jsx)(q,{children:`Type`}),(0,W.jsx)(q,{children:`URL`}),(0,W.jsx)(q,{align:`center`,children:`Actions`})]})}),(0,W.jsxs)(ue,{children:[o&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(K,{title:`Edge Backend`,url:o.edgeUrl}),(0,W.jsx)(K,{title:`Edge Frontend`,url:o.edgeFrontendUrl})]}),i&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(K,{title:`Backend`,url:s}),(0,W.jsx)(K,{title:`Frontend`,url:c})]})]})]}),a&&(0,W.jsx)(w,{sx:{mt:1,marginInline:1.5},variant:`text`,size:`small`,"aria-expanded":n,"aria-controls":`api-urls-table`,onClick:()=>r(!n),children:n?`Show less`:`Show all`})]})},Re=[`Icon`,`createdAt`,`seenAt`],ze=[`Icon`,`project`,`seenAt`],J=l(S)(({theme:e})=>({margin:0,marginBottom:e.spacing(1.5),fontSize:e.fontSizes.smallBody,color:e.palette.text.primary})),Be=({compact:e=!1,table:t,columns:n,loading:r,globalFilter:i})=>{ee([{condition:re(Te.breakpoints.down(`xl`)),columns:Re},{condition:e,columns:ze}],t.setColumnVisibility,n);let a=t.getRowModel().rows.length;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(b,{condition:a>0,show:(0,W.jsxs)(C,{sx:{mb:4},children:[(0,W.jsx)(Ie,{}),(0,W.jsxs)(C,{sx:{marginBlock:4},children:[(0,W.jsx)(J,{variant:`h2`,children:`API URLs`}),(0,W.jsx)(Le,{compact:e})]})]})}),(0,W.jsxs)(C,{sx:{overflowX:`auto`},children:[(0,W.jsx)(J,{variant:`h2`,children:`API Tokens`}),(0,W.jsx)(te,{value:i,children:(0,W.jsx)(De,{tableInstance:t})})]}),(0,W.jsx)(b,{condition:a===0&&!r,show:(0,W.jsx)(b,{condition:i?.length>0,show:(0,W.jsxs)(y,{children:[`No tokens found matching “`,i,`”`]}),elseShow:(0,W.jsx)(y,{children:(0,W.jsxs)(`span`,{children:[`No tokens available. Read `,(0,W.jsx)(E,{href:`https://docs.getunleash.io/api`,target:`_blank`,rel:`noreferrer`,children:`API How-to guides`}),` `,` to learn more.`]})})})})]})},Ve=(e,t)=>{let n=t>=e;return{limitReached:n,limitMessage:n?`You have reached the limit of ${e} API tokens`:void 0}},He=({path:e,permission:t,project:n})=>{let i=r(),{tokens:a,loading:o}=je(),{uiConfig:s}=P(),{limitReached:c,limitMessage:l}=Ve(s.resourceLimits.apiTokens,a.length);return(0,W.jsx)(Ae,{Icon:Oe,onClick:()=>i(e),"data-testid":L,permission:t,projectId:n,maxWidth:`700px`,disabled:o||c,tooltipProps:{title:l},children:`New API token`})},Ue=l(n)(({theme:e})=>({textDecoration:`none`,color:e.palette.links,"&:hover, &:focus":{textDecoration:`underline`}})),We=l(`div`)({display:`flex`,alignItems:`center`}),Ge=({projects:e,project:t})=>{let{searchQuery:n}=ne(),r=e&&Array.isArray(e)&&e.length>1?e:[];if(r.length>0)return(0,W.jsx)(m,{children:(0,W.jsx)(F,{title:r.map((e,t)=>(0,W.jsxs)(U.Fragment,{children:[t>0&&`, `,!e||e===`*`?(0,W.jsx)(B,{search:n,children:`*`}):(0,W.jsx)(Ue,{to:`/projects/${e}`,children:(0,W.jsx)(B,{search:n,children:e})})]},e)),placement:`bottom-start`,arrow:!0,tabIndex:0,children:(0,W.jsxs)(`span`,{children:[`${r.length}`,` projects`]})})});if(r.length===1&&r[0]!==`*`||t&&t!==`*`){let e=t||r[0];return(0,W.jsx)(Se,{to:`/projects/${e}`,title:e})}return(0,W.jsx)(m,{children:(0,W.jsx)(F,{title:`ALL current and future projects.`,placement:`bottom`,arrow:!0,children:(0,W.jsx)(We,{children:(0,W.jsx)(B,{search:n,children:`*`})})})})},Y=se((0,W.jsx)(`path`,{d:`M21 10h-8.35C11.83 7.67 9.61 6 7 6c-3.31 0-6 2.69-6 6s2.69 6 6 6c2.61 0 4.83-1.67 5.65-4H13l2 2 2-2 2 2 4-4.04zM7 15c-1.65 0-3-1.35-3-3s1.35-3 3-3 3 1.35 3 3-1.35 3-3 3`}),`Key`),Ke=({secret:e,project:t,projects:n})=>{let r=e?.includes(`:`)?`v2`:`v1`,i=e?.startsWith(`*:`),a=n&&n?.length>1||n?.length===1&&n[0]!==`*`||t&&t!==`*`;return r===`v2`&&!i&&!a},qe=({...e})=>Ke(e)?(0,W.jsx)(_,{icon:(0,W.jsx)(F,{title:(0,W.jsxs)(`p`,{children:[`This is an orphaned token. All of its original projects have been deleted and it now has access to all current and future projects. You should stop using this token and delete it. Read more in`,` `,(0,W.jsx)(E,{target:`_blank`,rel:`noopener noreferrer`,href:`https://github.com/Unleash/unleash/releases/tag/v6.1.0`,children:`release notes`}),`.`]}),placement:`bottom-start`,arrow:!0,children:(0,W.jsx)(Ee,{"aria-label":`Orphaned token`,color:`warning`,"data-testid":`orphaned-token-icon`})})}):(0,W.jsx)(_,{icon:(0,W.jsx)(Y,{color:`disabled`})}),Je=(e,t)=>{let[n,r]=(0,U.useState)(``),i=(0,U.useMemo)(()=>({sorting:[{id:`createdAt`,desc:!0}]}),[]),a=(0,U.useMemo)(()=>[{id:`Icon`,cell:({row:e})=>(0,W.jsx)(qe,{secret:e.original.secret,project:e.original.project,projects:e.original.projects}),enableSorting:!1,enableGlobalFilter:!1,meta:{width:50}},{id:`tokenName`,header:`Token name`,accessorKey:`tokenName`,cell:v,meta:{minWidth:35}},{id:`type`,header:`Type`,accessorKey:`type`,cell:({getValue:e})=>{let t=Ye[String(e()??``).toLowerCase()];return(0,W.jsx)(v,{value:t?.label??``,subtitle:t?.title,subtitleTooltip:!0})},meta:{width:180}},{id:`project`,header:`Project`,accessorKey:`project`,cell:({row:e})=>(0,W.jsx)(Ge,{project:e.original.project,projects:e.original.projects}),meta:{width:160}},{id:`environment`,header:`Environment`,accessorKey:`environment`,cell:v,meta:{width:120}},{id:`createdAt`,header:`Created`,accessorKey:`createdAt`,cell:ye,enableGlobalFilter:!1,meta:{width:150}},{id:`seenAt`,header:`Last seen`,accessorKey:`seenAt`,cell:we,enableGlobalFilter:!1,meta:{width:140}},{id:`Actions`,header:`Actions`,cell:e=>t({row:e.row}),enableSorting:!1,enableGlobalFilter:!1,meta:{width:120,align:`center`}}],[]);return{table:p({columns:a,data:e,initialState:i,state:{globalFilter:n},onGlobalFilterChange:r,getCoreRowModel:d(),getSortedRowModel:f(),getFilteredRowModel:g(),autoResetAll:!1,enableSortingRemoval:!1}),columns:a,globalFilter:n,setGlobalFilter:r}},Ye={client:{label:`BACKEND`,title:`Connect backend SDK or Unleash Edge`},backend:{label:`BACKEND`,title:`Connect backend SDK or Unleash Edge`},frontend:{label:`FRONTEND`,title:`Connect frontend SDK`},admin:{label:`ADMIN`,title:`Full access for managing Unleash`}},Xe=({token:e,project:t,permission:n,track:r})=>{let{setToastData:i}=A(),a=e=>{(0,G.default)(e)&&(i({type:`success`,text:`Token copied to clipboard`}),r&&typeof r==`function`&&r())};return(0,W.jsx)(H,{permission:n,projectId:t,tooltipProps:{title:`Copy token`,arrow:!0},onClick:()=>a(e.secret),size:`large`,children:(0,W.jsx)(z,{})})},Ze=l(`ul`)({marginBottom:0}),Qe=({token:e,permission:t,onRemove:n,project:r})=>{let[i,a]=(0,U.useState)(!1),{setToastData:o,setToastApiError:s}=A();return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(H,{permission:t,projectId:r,tooltipProps:{title:`Delete token`,arrow:!0},onClick:()=>a(!0),size:`large`,children:(0,W.jsx)(ke,{})}),(0,W.jsx)(V,{open:i,onClick:async()=>{try{await n(),a(!1),o({type:`success`,text:`API token removed`})}catch(e){s(pe(e))}},onClose:()=>a(!1),title:`Confirm deletion`,children:(0,W.jsxs)(`div`,{children:[`Are you sure you want to delete the following API token?`,(0,W.jsx)(`br`,{}),(0,W.jsxs)(Ze,{children:[(0,W.jsxs)(`li`,{children:[(0,W.jsx)(`strong`,{children:`name`}),`:`,` `,(0,W.jsx)(`code`,{children:e.tokenName})]}),(0,W.jsxs)(`li`,{children:[(0,W.jsx)(`strong`,{children:`type`}),`: `,(0,W.jsx)(`code`,{children:e.type})]}),(0,W.jsxs)(`li`,{children:[(0,W.jsx)(`strong`,{children:`environment`}),`:`,` `,(0,W.jsx)(`code`,{children:e.environment})]})]})]})})]})},$e=l(`div`)(()=>({maxWidth:`400px`})),et=l(`form`)(()=>({display:`flex`,flexDirection:`column`,height:`100%`})),tt=l(h)(({theme:e})=>({width:`100%`,marginBottom:e.spacing(2)})),nt=l(be)(({theme:e})=>({marginBottom:e.spacing(2),minWidth:`400px`,[e.breakpoints.down(`sm`)]:{minWidth:`379px`}})),X=l(`p`)(({theme:e})=>({marginBottom:e.spacing(1)})),rt=l(`label`)(({theme:e})=>({marginBottom:e.spacing(1)})),Z=l(w)(({theme:e})=>({marginLeft:e.spacing(3)})),it=l(C)({marginTop:`auto`,display:`flex`,justifyContent:`flex-end`}),at=({children:e,actions:t,handleSubmit:n,handleCancel:r})=>{let{uiConfig:i}=P();return(0,W.jsxs)(et,{onSubmit:n,children:[(0,W.jsx)(b,{condition:!!i?.flags?.UNLEASH_CLOUD,show:(0,W.jsxs)(x,{severity:`info`,sx:{mb:4},children:[`Please be aware of our`,` `,(0,W.jsx)(E,{href:`https://www.getunleash.io/fair-use-policy`,children:`fair use policy`}),`.`]})}),e,(0,W.jsxs)(it,{children:[t,(0,W.jsx)(Z,{onClick:r,children:`Cancel`})]})]})},Q=function(e){return e.ADMIN=`ADMIN`,e.CLIENT=`CLIENT`,e.FRONTEND=`FRONTEND`,e}({}),ot=e=>{let{environments:t}=k(),n=t?.find(e=>e.enabled)?.name,r=N(he,e),i=[{key:Q.CLIENT,label:`Backend SDK`,title:`Creates a backend token to connect a backend SDK or Unleash Edge`,enabled:N(`CREATE_CLIENT_API_TOKEN`)||r},{key:Q.FRONTEND,label:`Frontend SDK`,title:`Creates a frontend token to connect a frontend SDK`,enabled:N(`CREATE_FRONTEND_API_TOKEN`)||r}],a=i.find(e=>e.enabled)?.key,[o,s]=(0,U.useState)(``),[c,l]=(0,U.useState)(a||Q.CLIENT),[u,d]=(0,U.useState)([e||`*`]),[f,p]=(0,U.useState)(u),[m,h]=(0,U.useState)(),[g,_]=(0,U.useState)({});return(0,U.useEffect)(()=>{h(c===`ADMIN`?`*`:n)},[c,n]),{tokenName:o,type:c,apiTokenTypes:i,projects:u,environment:m,setTokenName:s,setTokenType:e=>{e===`ADMIN`?(l(Q.ADMIN),p(u),d([`*`]),h(`*`)):(l(e),d(f),h(n))},setProjects:d,setEnvironment:h,getApiTokenPayload:()=>({tokenName:o,type:c,environment:m,projects:u}),isValid:()=>{let e={};return o||(e.tokenName=`Token name is required`),u.length===0&&(e.projects=`At least one project is required`),_(e),Object.keys(e).length===0},clearErrors:e=>{if(e){let t={...g};delete t[e],_(t)}else _({})},errors:g}},st=({open:e,setOpen:t,closeConfirm:r,token:i,type:a})=>(0,W.jsxs)(V,{open:e,setOpen:t,onClick:r,primaryButtonText:`Close`,title:`New token created`,children:[(0,W.jsx)(S,{variant:`body1`,children:`Your new token has been created successfully.`}),(0,W.jsx)(Ce,{token:i}),(0,W.jsx)(b,{condition:a===Q.FRONTEND,show:(0,W.jsxs)(x,{sx:{mt:2},severity:`info`,children:[`By default, all `,Q.FRONTEND,` tokens may be used from any CORS origin. If you'd like to configure a strict set of origins, please use the`,` `,(0,W.jsx)(n,{to:`/admin/cors`,target:`_blank`,rel:`noreferrer`,children:`CORS origins configuration page`}),`.`]})})]}),ct=({tokenName:e,setTokenName:t,errors:n,clearErrors:r})=>(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(X,{children:`What would you like to call this token?`}),(0,W.jsx)(tt,{value:e,name:`tokenName`,onChange:e=>t(e.target.value),label:`Token name`,error:n.tokenName!==void 0,errorText:n.tokenName,onFocus:()=>r(`tokenName`),autoFocus:!0})]}),lt=({type:e,setType:t,apiTokenTypes:n})=>(0,W.jsx)($e,{children:(0,W.jsxs)(ae,{sx:{mb:2,width:`100%`},children:[(0,W.jsx)(rt,{id:`token-type`,children:`What do you want to connect?`}),(0,W.jsx)(le,{"aria-labelledby":`token-type`,defaultValue:`CLIENT`,name:`radio-buttons-group`,value:e,onChange:(e,n)=>t(n),children:n.map(({key:e,label:t,title:n,enabled:r})=>(0,W.jsx)(T,{value:e,sx:{mb:1},disabled:!r,control:(0,W.jsx)(oe,{sx:{ml:.75,alignSelf:`flex-start`}}),label:(0,W.jsx)(C,{children:(0,W.jsxs)(C,{children:[(0,W.jsx)(S,{children:t}),(0,W.jsx)(S,{variant:`body2`,sx:{color:`text.secondary`},children:n})]})})},e))})]})}),ut=({type:e,environment:t,setEnvironment:n})=>{let{environments:r}=k(),i=e===Q.ADMIN?[{key:`*`,label:`ALL`}]:r.map(e=>({key:e.name,label:`${e.name.concat(e.enabled?``:` - deprecated`)}`,title:e.name,disabled:!1}));return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(X,{children:`Which environment should the token have access to?`}),(0,W.jsx)(nt,{disabled:e===Q.ADMIN,options:i,value:t,onChange:n,label:`Environment`,id:`api_key_environment`,name:`environment`,IconComponent:xe,fullWidth:!0})]})},$=e=>e.map(e=>({...e.user,joinedAt:new Date(e.joinedAt),createdBy:e.createdBy})),dt=e=>{let{data:t,error:n,mutate:r}=me(M(`api/admin/groups/${e}`),ft);return(0,U.useMemo)(()=>({group:t&&{...t,users:$(t?.users??[])},loading:!n&&!t,refetchGroup:()=>r(),error:n}),[t,n,r])},ft=e=>fetch(e).then(j(`Group`)).then(e=>e.json()),pt=()=>{let{isEnterprise:e}=P(),{data:t,error:n,mutate:r}=ge(e(),{serviceAccounts:[],rootRoles:[]},M(`api/admin/service-account`),mt);return(0,U.useMemo)(()=>({serviceAccounts:t?.serviceAccounts??[],roles:t?.rootRoles??[],loading:!n&&!t,refetch:()=>r(),error:n}),[t,n,r])},mt=e=>fetch(e).then(j(`Service Accounts`)).then(e=>e.json()),ht=l(`div`)(({theme:e})=>({display:`flex`,flexDirection:`column`,gap:e.spacing(.5),"& > *:not(:last-child)":{borderBottom:`1px solid ${e.palette.divider}`,paddingBottom:e.spacing(1)}})),gt=l(I)(()=>({display:`block`})),_t=({role:e,roles:t,value:n})=>{let{isEnterprise:r}=P();return r()?(0,W.jsx)(m,{children:(0,W.jsx)(ve,{tooltip:(0,W.jsx)(ht,{children:(t||[e]).map(e=>(0,W.jsx)(_e,{roleId:e,tooltip:!0},e))}),children:(0,W.jsx)(gt,{children:n})})}):(0,W.jsx)(m,{children:n})};export{He as _,ut as a,st as c,at as d,X as f,Y as g,Je as h,dt as i,ot as l,Xe as m,pt as n,lt as o,Qe as p,$ as r,ct as s,_t as t,Q as u,Be as v};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{f as n}from"./chunk-QUQL4437-Dr42NpoL.js";import{t as r}from"./jsx-runtime-BnvnyDTF.js";import{v as i}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{t as a}from"./Tooltip-BaILXXti.js";import{E as o,a as s,i as c,r as l}from"./TextField-oipjeg6n.js";import{r as u}from"./Alert-_bLyWbvx.js";import{t as d}from"./Typography-BTdLWIUX.js";import{t as f}from"./Box-BQsxfFmC.js";import{t as p}from"./Button-CebB8EPB.js";import{a as m,i as h,n as g,o as _}from"./TooltipResolver-4A1YhwBy.js";import{V as v}from"./PermissionButton-BIeM26DH.js";import{t as y}from"./HelpOutlineOutlined-CpMsVJZu.js";import{Ai as b,D as x,Go as S,H as C,Oi as w,eo as T,fo as E,no as D,ut as O}from"./index-BJ2iUk24.js";var k=e(t(),1),A=r(),j=({isOpen:e,onConfirm:t,onClose:n,safeguardData:r,mode:i,safeguardType:a})=>{let{metricName:o}=r.impactMetric;return(0,A.jsx)(S,{title:`Request changes`,open:e,secondaryButtonText:`Cancel`,onClose:n,customButton:(0,A.jsx)(p,{color:`primary`,variant:`contained`,onClick:t,autoFocus:!0,children:`Add suggestion to draft`}),children:(0,A.jsxs)(`p`,{children:[i===`create`?`Add`:`Update`,` safeguard that an`,` `,a===`featureEnvironment`?`disables the environment`:`pauses automation`,` based on `,(0,A.jsx)(`strong`,{children:o})]})})},M=()=>{let{makeRequest:e,createRequest:t,errors:n,loading:r}=g({propagateErrors:!0});return{createOrUpdateReleasePlanSafeguard:async({projectId:n,featureName:r,environment:i,planId:a,body:o})=>{let s=t(`api/admin/projects/${n}/features/${r}/environments/${i}/release-plans/${a}/safeguards`,{method:`PUT`,body:JSON.stringify(o)},`createOrUpdateReleasePlanSafeguard`);await e(s.caller,s.id)},createOrUpdateFeatureEnvironmentSafeguard:async({projectId:n,featureName:r,environment:i,body:a})=>{let o=t(`api/admin/projects/${n}/features/${r}/environments/${i}/safeguards`,{method:`PUT`,body:JSON.stringify(a)},`createOrUpdateFeatureEnvironmentSafeguard`);await e(o.caller,o.id)},deleteReleasePlanSafeguard:async({projectId:n,featureName:r,environment:i,planId:a,safeguardId:o})=>{let s=t(`api/admin/projects/${n}/features/${r}/environments/${i}/release-plans/${a}/safeguards/${o}`,{method:`DELETE`},`deleteReleasePlanSafeguard`);await e(s.caller,s.id)},deleteFeatureEnvironmentSafeguard:async({projectId:n,featureName:r,environment:i,safeguardId:a})=>{let o=t(`api/admin/projects/${n}/features/${r}/environments/${i}/safeguards/${a}`,{method:`DELETE`},`deleteFeatureEnvironmentSafeguard`);await e(o.caller,o.id)},errors:n,loading:r}},N=({open:e,onClose:t,onConfirm:n,isDeleting:r=!1})=>(0,A.jsxs)(S,{title:`Remove safeguard?`,open:e,primaryButtonText:r?`Removing...`:`Remove safeguard`,secondaryButtonText:`Cancel`,onClick:n,onClose:t,disabledPrimaryButton:r,children:[(0,A.jsx)(`p`,{children:`You are about to remove the safeguard that pauses automation when conditions are met.`}),(0,A.jsx)(`br`,{}),(0,A.jsx)(`p`,{children:`This action cannot be undone.`})]}),P=i(`div`)(({theme:e})=>({display:`flex`,padding:e.spacing(.25,.25),backgroundColor:O(e),borderTop:`1px solid ${e.palette.divider}`,borderBottom:`1px solid ${e.palette.divider}`,"& > form":{borderRadius:0,border:`none`}})),F=i(`div`)(({theme:e})=>({display:`flex`,alignItems:`center`,width:`100%`,paddingRight:e.spacing(2)})),I=i(c)(({theme:e})=>({[`& .${s.paper}`]:{maxWidth:e.spacing(45)}})),L=i(o)(({theme:e})=>({padding:e.spacing(1,2,.5,2),lineHeight:1.6,textTransform:`uppercase`,letterSpacing:.5,fontSize:e.typography.caption.fontSize,fontWeight:e.typography.fontWeightBold,color:e.palette.text.secondary,backgroundColor:`transparent`})),R={whiteSpace:`normal`,alignItems:`flex-start`,py:1.25},z=i(`li`)({listStyle:`none`,padding:0,margin:0}),B=i(d)(({theme:e})=>({display:`block`,marginTop:e.spacing(.25),color:e.palette.text.secondary})),V=i(u)(({theme:e})=>({color:e.palette.action.active,padding:e.spacing(.5)})),H=()=>{let[e,t]=n(),{trackEvent:r}=_();return(0,A.jsx)(a,{title:`Learn how safeguards work`,arrow:!0,children:(0,A.jsx)(V,{onClick:()=>{r(`safeguards`,{props:{eventType:`splash opened from feature page`}}),e.set(`splash`,`impact-metrics-safeguards`),t(e)},size:`small`,"aria-label":`Learn how safeguards work`,children:(0,A.jsx)(y,{fontSize:`small`})})})},U=({onSelect:e,releasePlan:t})=>{let[n,r]=(0,k.useState)(null),{trackEvent:i}=_();return(0,A.jsxs)(P,{children:[(0,A.jsxs)(F,{children:[(0,A.jsx)(C,{onClick:e=>{i(`safeguards`,{props:{eventType:`choose safeguard opened`}}),r(e.currentTarget)},color:`primary`,startIcon:(0,A.jsx)(D,{}),sx:{mt:2,mb:2,ml:2,mr:.5},children:`Add safeguard`}),(0,A.jsx)(H,{})]}),(0,A.jsxs)(I,{anchorEl:n,open:!!n,onClose:()=>r(null),children:[(0,A.jsx)(L,{disableSticky:!0,children:`Select safeguard action`}),(0,A.jsx)(l,{sx:R,onClick:()=>{i(`safeguards`,{props:{eventType:`form opened`,safeguardType:`featureEnvironment`}}),e(`featureEnvironment`),r(null)},children:(0,A.jsxs)(f,{children:[(0,A.jsx)(d,{variant:`body2`,children:`Disable environment`}),(0,A.jsx)(B,{variant:`caption`,children:`If your chosen metric crosses its threshold, this flag is turned off in this environment. Existing users stop seeing the flag immediately.`})]})}),(0,A.jsx)(a,{title:t?``:`Add a release plan to use this safeguard`,placement:`right`,arrow:!0,children:(0,A.jsx)(z,{children:(0,A.jsx)(l,{component:`div`,sx:R,disabled:!t,onClick:()=>{i(`safeguards`,{props:{eventType:`form opened`,safeguardType:`releasePlan`}}),e(`releasePlan`),r(null)},children:(0,A.jsxs)(f,{children:[(0,A.jsx)(d,{variant:`body2`,children:`Pause release plan automation`}),(0,A.jsx)(B,{variant:`caption`,children:`If your chosen metric crosses its threshold, automatic milestone progression stops. The current milestone keeps serving traffic.`})]})})})})]})]})},W=({projectId:e,featureId:t,environmentName:n,safeguardType:r,releasePlan:i,safeguard:a,onSafeguardChange:o})=>{let{setToastData:s,setToastApiError:c}=m(),{trackEvent:l}=_(),{addChange:u}=b(),{isChangeRequestConfigured:d}=v(e),{data:f,refetch:p}=w(e),{createOrUpdateReleasePlanSafeguard:g,deleteReleasePlanSafeguard:y,createOrUpdateFeatureEnvironmentSafeguard:x,deleteFeatureEnvironmentSafeguard:S}=M(),[C,T]=(0,k.useState)(!1),[E,D]=(0,k.useState)(!1),[O,A]=(0,k.useState)(!1),[j,N]=(0,k.useState)(null),[P,F]=(0,k.useState)(!1),I=d(n),L=r===`releasePlan`&&i?r=>g({projectId:e,featureName:t,environment:n,planId:i.id,body:r}):r=>x({projectId:e,featureName:t,environment:n,body:r}),R=r===`releasePlan`&&i?r=>y({projectId:e,featureName:t,environment:n,planId:i.id,safeguardId:r}):r=>S({projectId:e,featureName:t,environment:n,safeguardId:r}),z=async e=>{if(l(`safeguards`,{props:{eventType:`safeguard submitted`,safeguardType:r}}),I){N(e),A(!0);return}try{await L(e),s({type:`success`,text:`Safeguard added successfully`}),o()}catch(e){c(h(e))}},B=async()=>{if(j)try{if(r===`featureEnvironment`)await u(e,n,{feature:t,action:`changeFeatureEnvSafeguard`,payload:{safeguard:j}});else{if(!i)return;await u(e,n,{feature:t,action:`changeReleasePlanSafeguard`,payload:{planId:i.id,safeguard:j}})}await p(),s({type:`success`,text:`Added to draft`}),o()}catch(e){c(h(e))}finally{A(!1),N(null)}},V=()=>{a&&(I?D(!0):T(!0))},H=async()=>{if(!(!a||P)){F(!0);try{await R(a.id),s({type:`success`,text:`Safeguard deleted successfully`}),o()}catch(e){c(h(e))}finally{F(!1),T(!1)}}},U=async()=>{if(!(!a||P)){F(!0);try{if(r===`featureEnvironment`)await u(e,n,{feature:t,action:`deleteFeatureEnvSafeguard`,payload:{safeguardId:a.id}});else{if(!i)return;await u(e,n,{feature:t,action:`deleteReleasePlanSafeguard`,payload:{planId:i.id,safeguardId:a.id}})}await p(),s({type:`success`,text:`Added to draft`}),o()}catch(e){c(h(e))}finally{F(!1),D(!1)}}},W=e=>{let t=(e.action===`changeReleasePlanSafeguard`||e.action===`deleteReleasePlanSafeguard`)&&!!i&&e.payload?.planId===i.id,n=e.action===`changeFeatureEnvSafeguard`||e.action===`deleteFeatureEnvSafeguard`;return t||n};return{handleSubmit:z,handleDeleteRequest:V,pendingSafeguardAction:(0,k.useMemo)(()=>{if(!f)return null;for(let e of f){if(e.environment!==n)continue;let r=e.features.find(e=>e.name===t);if(!r)continue;let i=r.changes.find(W);if(i)return i.action}return null},[f,n,t,i?.id]),deleteDialog:{open:C,isDeleting:P,onConfirm:H,onClose:()=>{P||T(!1)}},deleteChangeRequestDialog:{open:E,isDeleting:P,onConfirm:U,onClose:()=>D(!1)},submitChangeRequestDialog:{open:O,data:j,onConfirm:B,onClose:()=>{A(!1),N(null)}}}},G=({safeguardType:e,releasePlan:t,safeguard:n,environmentName:r,featureId:i,onSafeguardChange:a,onCancel:o,headerAction:s})=>{let{handleSubmit:c,handleDeleteRequest:l,pendingSafeguardAction:u,deleteDialog:d,deleteChangeRequestDialog:f,submitChangeRequestDialog:p}=W({projectId:T(`projectId`),featureId:i,environmentName:r,safeguardType:e,releasePlan:t,safeguard:n,onSafeguardChange:a});return(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(x,{safeguard:n,onSubmit:c,onCancel:o,onDelete:n?l:void 0,environment:r,featureId:i,badge:u===`deleteReleasePlanSafeguard`||u===`deleteFeatureEnvSafeguard`?(0,A.jsx)(E,{color:`error`,children:`Deleted in draft`}):u===`changeReleasePlanSafeguard`||u===`changeFeatureEnvSafeguard`?(0,A.jsx)(E,{color:`warning`,children:`Modified in draft`}):void 0,safeguardType:e,headerAction:s}),p.data&&(0,A.jsx)(j,{isOpen:p.open,onConfirm:p.onConfirm,onClose:()=>{p.onClose(),o()},safeguardData:p.data,environment:r,mode:n?`edit`:`create`,safeguardType:e}),n&&(0,A.jsx)(N,{open:d.open,onClose:d.onClose,onConfirm:d.onConfirm,isDeleting:d.isDeleting}),n&&(0,A.jsx)(S,{title:`Request changes`,open:f.open,secondaryButtonText:`Cancel`,onClose:f.onClose,primaryButtonText:`Add suggestion to draft`,onClick:f.onConfirm,disabledPrimaryButton:f.isDeleting,children:(0,A.jsxs)(`p`,{children:[(0,A.jsx)(`strong`,{children:`Remove`}),` safeguard`,t&&(0,A.jsxs)(A.Fragment,{children:[` `,`from release plan`,` `,(0,A.jsx)(`strong`,{children:t.name})]}),` `,`for `,(0,A.jsx)(`strong`,{children:i}),` in`,` `,(0,A.jsx)(`strong`,{children:r})]})})]})},K=({featureEnvSafeguard:e,releasePlan:t,environmentName:n,featureId:r,onSafeguardChange:i})=>{let a=t?.safeguards?.[0],[o,s]=(0,k.useState)(null),c=()=>{s(null),i()};return e||a?(0,A.jsxs)(A.Fragment,{children:[e&&(0,A.jsx)(P,{children:(0,A.jsx)(G,{safeguardType:`featureEnvironment`,safeguard:e,environmentName:n,featureId:r,onSafeguardChange:c,onCancel:()=>{},headerAction:(0,A.jsx)(H,{})})}),a&&(0,A.jsx)(P,{children:(0,A.jsx)(G,{safeguardType:`releasePlan`,releasePlan:t,safeguard:a,environmentName:n,featureId:r,onSafeguardChange:c,onCancel:()=>{},headerAction:(0,A.jsx)(H,{})})})]}):o===`featureEnvironment`?(0,A.jsx)(P,{children:(0,A.jsx)(G,{safeguardType:`featureEnvironment`,environmentName:n,featureId:r,onSafeguardChange:i,onCancel:()=>s(null)})}):o===`releasePlan`&&t?(0,A.jsx)(P,{children:(0,A.jsx)(G,{safeguardType:`releasePlan`,releasePlan:t,environmentName:n,featureId:r,onSafeguardChange:i,onCancel:()=>s(null)})}):(0,A.jsx)(U,{onSelect:s,releasePlan:t})};export{U as AddSafeguard,K as Safeguard,K as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./jsx-runtime-BnvnyDTF.js";import{v as t}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{b as n,t as r}from"./TextField-oipjeg6n.js";import{t as i}from"./Alert-_bLyWbvx.js";import{r as a}from"./formatPath-j72gcKwy.js";import{Ea as o}from"./index-BJ2iUk24.js";import{a as s,f as c,i as l,m as u}from"./DialogWithAside-BvaGTcqO.js";var d=(e,t)=>{let n=e.split(`---
|
|
2
|
-
`)[3];return n?n.replaceAll(`<YOUR_FLAG>`,t):null},f=e(),p=()=>(0,f.jsx)(i,{severity:`error`,children:`This SDK is missing a flag usage example. Please let us know so we can add one!`}),m=({sdkName:e,feature:t})=>{let n=s[e],r=n?d(n,t):null;return r===null?(0,f.jsx)(p,{}):(0,f.jsx)(o,{components:{code:l},children:r})},h=new Set(u.map(e=>e.name)),g=t(`div`)(({theme:e})=>({minWidth:e.spacing(20),maxWidth:e.spacing(32.5)})),_=t(`li`)(({theme:e})=>({display:`flex`,alignItems:`center`,gap:e.spacing(1)})),v=t(`img`)(({theme:e})=>({width:e.spacing(2.5),height:e.spacing(2.5),flexShrink:0,borderRadius:e.shape.borderRadiusSmall,marginLeft:e.spacing(.5)})),y=t(`span`)({flex:1}),b=({value:e,onChange:t})=>{let i=c.map(e=>({...e,group:h.has(e.name)?`Backend SDKs`:`Frontend SDKs`})).sort((e,t)=>e.group.localeCompare(t.group)||e.name.localeCompare(t.name)),o=i.find(t=>t.name===e)?.icon;return(0,f.jsx)(g,{children:(0,f.jsx)(n,{disableClearable:!0,options:i,value:i.find(t=>t.name===e),groupBy:e=>e.group,getOptionLabel:e=>e.name,isOptionEqualToValue:(e,t)=>e.name===t.name,onChange:(e,n)=>{n?.name&&t(n.name)},renderOption:({key:e,...t},n)=>(0,f.jsxs)(_,{...t,children:[(0,f.jsx)(v,{src:a(n.icon),alt:``}),(0,f.jsx)(y,{children:n.name})]},e),renderInput:e=>(0,f.jsx)(r,{...e,label:`SDK`,size:`small`,slotProps:{...e.slotProps,input:{...e.slotProps?.input,startAdornment:o&&(0,f.jsx)(v,{src:a(o),alt:``})}}})})})};export{m as n,b as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e,o as t,t as n}from"./react-GZhdek4G.js";import{f as r}from"./chunk-QUQL4437-Dr42NpoL.js";import{l as i,t as a}from"./useTheme-CQqAmDLr.js";import{t as o}from"./jsx-runtime-BnvnyDTF.js";import{v as s}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{t as c}from"./Tooltip-BaILXXti.js";import{i as l,r as u}from"./TextField-oipjeg6n.js";import{i as d}from"./CircularProgress-C_LUU3DK.js";import{r as f}from"./Alert-_bLyWbvx.js";import{t as p}from"./Typography-BTdLWIUX.js";import{t as m}from"./Box-BQsxfFmC.js";import{t as h}from"./Button-CebB8EPB.js";import{r as g}from"./FileCopy-B8HZEA83.js";import{t as _}from"./HelpOutlineOutlined-CpMsVJZu.js";import{$ as ee,As as v,Fn as y,Xs as b,et as te,js as x,ks as ne,ls as S,u as re,ua as ie}from"./index-BJ2iUk24.js";import{c as ae,d as C,f as oe,n as w,o as T,s as se,t as E}from"./DialogWithAside-BvaGTcqO.js";import{n as D,t as ce}from"./SelectSdk-D2NaTubs.js";import{n as O,r as k,t as le}from"./ChatOutlined-jZlhx14o.js";var ue=e({Default:()=>fe,WithLongContent:()=>pe,meta:()=>de}),A=t(n(),1),j=o(),de={title:`Common/DialogWithAside`,background:`application`},M=()=>(0,j.jsxs)(m,{sx:{p:3,display:`flex`,flexDirection:`column`,gap:2},children:[(0,j.jsx)(p,{variant:`body2`,sx:{fontWeight:`bold`},children:`Aside panel`}),(0,j.jsx)(p,{variant:`body2`,children:`This area is always 320 px wide and hidden below the md breakpoint. The close button in the header handles dismissal on all screen sizes.`})]}),fe=()=>{let[e,t]=(0,A.useState)(!0);return(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(h,{variant:`contained`,onClick:()=>t(!0),children:`Open dialog`}),(0,j.jsx)(E,{open:e,onClose:()=>t(!1),title:`Dialog title`,aside:(0,j.jsx)(M,{}),children:(0,j.jsxs)(m,{sx:{p:3,display:`flex`,flexDirection:`column`,gap:2},children:[(0,j.jsx)(p,{variant:`body1`,sx:{fontWeight:`bold`},children:`Main content`}),(0,j.jsx)(p,{variant:`body2`,children:`Children are rendered in the scrollable left column.`})]})})]})},pe=()=>{let[e,t]=(0,A.useState)(!1);return(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(h,{variant:`contained`,onClick:()=>t(!0),children:`Open dialog`}),(0,j.jsx)(E,{open:e,onClose:()=>t(!1),title:`Scrolling content`,aside:(0,j.jsx)(M,{}),children:(0,j.jsx)(m,{sx:{p:3,display:`flex`,flexDirection:`column`,gap:3},children:Array.from({length:12},(e,t)=>(0,j.jsxs)(m,{children:[(0,j.jsxs)(p,{variant:`body2`,sx:{fontWeight:`bold`,mb:.5},children:[`Section `,t+1]}),(0,j.jsx)(p,{variant:`body2`,children:`Content scrolls inside the left column while the aside and header stay fixed.`})]},t))})})]})},me=e({Android:()=>we,DotNet:()=>I,Flutter:()=>Te,Go:()=>F,Java:()=>_e,JavaScript:()=>ye,MissingSnippet:()=>Ee,NodeJs:()=>P,Php:()=>R,Python:()=>ve,React:()=>be,Ruby:()=>L,Rust:()=>ge,Svelte:()=>Se,Swift:()=>Ce,Vue:()=>xe,meta:()=>he}),he={title:`Onboarding/ImplementFlagDialog/FlagUsageSnippet`,background:`paper`},N=`my-feature-flag`,P=()=>(0,j.jsx)(D,{sdkName:`Node.js`,feature:N}),F=()=>(0,j.jsx)(D,{sdkName:`Go`,feature:N}),I=()=>(0,j.jsx)(D,{sdkName:`.NET`,feature:N}),L=()=>(0,j.jsx)(D,{sdkName:`Ruby`,feature:N}),R=()=>(0,j.jsx)(D,{sdkName:`PHP`,feature:N}),ge=()=>(0,j.jsx)(D,{sdkName:`Rust`,feature:N}),_e=()=>(0,j.jsx)(D,{sdkName:`Java`,feature:N}),ve=()=>(0,j.jsx)(D,{sdkName:`Python`,feature:N}),ye=()=>(0,j.jsx)(D,{sdkName:`JavaScript`,feature:N}),be=()=>(0,j.jsx)(D,{sdkName:`React`,feature:N}),xe=()=>(0,j.jsx)(D,{sdkName:`Vue`,feature:N}),Se=()=>(0,j.jsx)(D,{sdkName:`Svelte`,feature:N}),Ce=()=>(0,j.jsx)(D,{sdkName:`Swift`,feature:N}),we=()=>(0,j.jsx)(D,{sdkName:`Android`,feature:N}),Te=()=>(0,j.jsx)(D,{sdkName:`Flutter`,feature:N}),Ee=()=>(0,j.jsx)(D,{sdkName:`Unknown`,feature:`my-feature-flag`}),De=e({Default:()=>Ae,meta:()=>Oe}),Oe={title:`Onboarding/ImplementFlagDialog/SelectSdk`,background:`paper`},ke=({initial:e})=>{let[t,n]=(0,A.useState)(e);return(0,j.jsx)(ce,{value:t,onChange:n})},Ae=()=>(0,j.jsx)(ke,{initial:oe[0].name}),je=d((0,j.jsx)(`path`,{d:`M12 3 1 9l4 2.18v6L12 21l7-3.82v-6l2-1.09V17h2V9zm6.82 6L12 12.72 5.18 9 12 5.28zM17 15.99l-5 2.73-5-2.73v-3.72L12 15l5-2.73z`}),`SchoolOutlined`),Me=e=>(0,j.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:18,height:18,viewBox:`0 0 18 18`,fill:`none`,...e,children:[(0,j.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M7.00003 1.5C6.80284 1.50018 6.60762 1.53913 6.42551 1.61462C6.2434 1.69011 6.07798 1.80066 5.93869 1.93996C5.7994 2.07927 5.68896 2.24459 5.6137 2.42649C5.53843 2.60839 5.4998 2.80331 5.50002 3.00011C5.49984 3.19688 5.53849 3.39177 5.61378 3.57364C5.68906 3.75551 5.7995 3.9208 5.93879 4.06007C6.07807 4.19934 6.24349 4.30987 6.42557 4.38534C6.60766 4.46081 6.80286 4.49975 7.00003 4.49994H8.50004V3.00011C8.50026 2.80331 8.46163 2.60839 8.38636 2.42649C8.3111 2.24459 8.20066 2.07927 8.06137 1.93996C7.92208 1.80066 7.75666 1.69011 7.57455 1.61462C7.39244 1.53913 7.19722 1.50018 7.00003 1.5ZM7.00003 5.50019H3.00001C2.80284 5.50038 2.60764 5.53931 2.42555 5.61479C2.24346 5.69026 2.07805 5.80079 1.93877 5.94006C1.79948 6.07933 1.68904 6.24462 1.61375 6.42649C1.53847 6.60836 1.49982 6.80324 1.5 7.00002C1.49978 7.19682 1.53841 7.39174 1.61367 7.57364C1.68894 7.75554 1.79937 7.92086 1.93867 8.06016C2.07796 8.19947 2.24338 8.31002 2.42549 8.38551C2.6076 8.461 2.80282 8.49995 3.00001 8.50013H7.00003C7.19722 8.49995 7.39244 8.461 7.57455 8.38551C7.75666 8.31002 7.92208 8.19947 8.06137 8.06016C8.20066 7.92086 8.3111 7.75554 8.38636 7.57364C8.46163 7.39174 8.50026 7.19682 8.50004 7.00002C8.50022 6.80324 8.46157 6.60836 8.38628 6.42649C8.311 6.24462 8.20056 6.07933 8.06127 5.94006C7.92199 5.80079 7.75657 5.69026 7.57449 5.61479C7.3924 5.53931 7.1972 5.50038 7.00003 5.50019ZM16.5001 7.00002C16.5003 6.80324 16.4616 6.60836 16.3863 6.42649C16.311 6.24462 16.2006 6.07933 16.0613 5.94006C15.922 5.80079 15.7566 5.69026 15.5745 5.61479C15.3924 5.53931 15.1972 5.50038 15.0001 5.50019C14.8029 5.50038 14.6077 5.53931 14.4256 5.61479C14.2435 5.69026 14.0781 5.80079 13.9388 5.94006C13.7995 6.07933 13.6891 6.24462 13.6138 6.42649C13.5385 6.60836 13.4999 6.80324 13.5001 7.00002V8.50013H15.0001C15.1973 8.49995 15.3925 8.461 15.5746 8.38551C15.7567 8.31002 15.9221 8.19947 16.0614 8.06016C16.2007 7.92086 16.3111 7.75554 16.3864 7.57364C16.4617 7.39174 16.5003 7.19682 16.5001 7.00002ZM12.5001 7.00002V3.00011C12.5003 2.80331 12.4617 2.60839 12.3864 2.42649C12.3111 2.24459 12.2007 2.07927 12.0614 1.93996C11.9221 1.80066 11.7567 1.69011 11.5746 1.61462C11.3925 1.53913 11.1972 1.50018 11.0001 1.5C10.8029 1.50018 10.6076 1.53913 10.4255 1.61462C10.2434 1.69011 10.078 1.80066 9.93871 1.93996C9.79942 2.07927 9.68898 2.24459 9.61372 2.42649C9.53845 2.60839 9.49982 2.80331 9.50004 3.00011V7.00002C9.49982 7.19682 9.53845 7.39174 9.61372 7.57364C9.68898 7.75554 9.79942 7.92086 9.93871 8.06016C10.078 8.19947 10.2434 8.31002 10.4255 8.38551C10.6076 8.461 10.8029 8.49995 11.0001 8.50013C11.1972 8.49995 11.3925 8.461 11.5746 8.38551C11.7567 8.31002 11.9221 8.19947 12.0614 8.06016C12.2007 7.92086 12.3111 7.75554 12.3864 7.57364C12.4617 7.39174 12.5003 7.19682 12.5001 7.00002Z`,fill:`#78787A`}),(0,j.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M11.0001 16.5001C11.1972 16.4999 11.3925 16.461 11.5746 16.3855C11.7567 16.31 11.9221 16.1995 12.0614 16.0602C12.2007 15.9209 12.3111 15.7555 12.3864 15.5736C12.4617 15.3917 12.5003 15.1968 12.5001 15C12.5002 14.8032 12.4616 14.6084 12.3863 14.4265C12.311 14.2446 12.2006 14.0793 12.0613 13.9401C11.922 13.8008 11.7566 13.6903 11.5745 13.6148C11.3924 13.5393 11.1972 13.5004 11.0001 13.5002H9.50004V15C9.49982 15.1968 9.53845 15.3917 9.61372 15.5736C9.68898 15.7555 9.79942 15.9209 9.93871 16.0602C10.078 16.1995 10.2434 16.31 10.4255 16.3855C10.6076 16.461 10.8029 16.4999 11.0001 16.5001ZM11.0001 12.4999H15.0001C15.1972 12.4998 15.3924 12.4608 15.5745 12.3853C15.7566 12.3099 15.922 12.1993 16.0613 12.0601C16.2006 11.9208 16.311 11.7555 16.3863 11.5736C16.4616 11.3918 16.5003 11.1969 16.5001 11.0001C16.5003 10.8033 16.4617 10.6084 16.3864 10.4265C16.3111 10.2446 16.2007 10.0793 16.0614 9.93996C15.9221 9.80066 15.7567 9.69011 15.5746 9.61462C15.3925 9.53913 15.1973 9.50018 15.0001 9.5H11.0001C10.8029 9.50018 10.6076 9.53913 10.4255 9.61462C10.2434 9.69011 10.078 9.80066 9.93871 9.93996C9.79942 10.0793 9.68898 10.2446 9.61372 10.4265C9.53845 10.6084 9.49982 10.8033 9.50004 11.0001C9.49986 11.1969 9.53851 11.3918 9.6138 11.5736C9.68908 11.7555 9.79952 11.9208 9.93881 12.0601C10.0781 12.1993 10.2435 12.3099 10.4256 12.3853C10.6077 12.4608 10.8029 12.4998 11.0001 12.4999ZM1.5 11.0001C1.49982 11.1969 1.53847 11.3918 1.61375 11.5736C1.68904 11.7555 1.79948 11.9208 1.93877 12.0601C2.07805 12.1993 2.24346 12.3099 2.42555 12.3853C2.60764 12.4608 2.80284 12.4998 3.00001 12.4999C3.19718 12.4998 3.39238 12.4608 3.57447 12.3853C3.75655 12.3099 3.92196 12.1993 4.06125 12.0601C4.20054 11.9208 4.31098 11.7555 4.38626 11.5736C4.46155 11.3918 4.5002 11.1969 4.50002 11.0001V9.5H3.00001C2.8028 9.50018 2.60755 9.53914 2.42542 9.61465C2.2433 9.69015 2.07786 9.80073 1.93857 9.94006C1.79927 10.0794 1.68884 10.2447 1.61359 10.4267C1.53834 10.6086 1.49974 10.8036 1.5 11.0004V11.0001ZM5.50002 11.0001V15C5.4998 15.1968 5.53843 15.3917 5.6137 15.5736C5.68896 15.7555 5.7994 15.9209 5.93869 16.0602C6.07798 16.1995 6.2434 16.31 6.42551 16.3855C6.60762 16.461 6.80284 16.4999 7.00003 16.5001C7.19722 16.4999 7.39244 16.461 7.57455 16.3855C7.75666 16.31 7.92208 16.1995 8.06137 16.0602C8.20066 15.9209 8.3111 15.7555 8.38636 15.5736C8.46163 15.3917 8.50026 15.1968 8.50004 15V11.0004C8.50026 10.8036 8.46163 10.6087 8.38636 10.4268C8.3111 10.2449 8.20066 10.0795 8.06137 9.94024C7.92208 9.80094 7.75666 9.69039 7.57455 9.6149C7.39244 9.53941 7.19722 9.50046 7.00003 9.50028C6.80284 9.50046 6.60762 9.53941 6.42551 9.6149C6.2434 9.69039 6.07798 9.80094 5.93869 9.94024C5.7994 10.0795 5.68896 10.2449 5.6137 10.4268C5.53843 10.6087 5.4998 10.8036 5.50002 11.0004`,fill:`#78787A`})]}),Ne=e=>(0,j.jsxs)(`svg`,{width:75,height:50,viewBox:`0 0 75 50`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,j.jsx)(`rect`,{width:75,height:50,rx:8,fill:`white`,fillOpacity:.1}),(0,j.jsx)(`circle`,{cx:61,cy:14,r:5,fill:`#98E3AF`}),(0,j.jsx)(`rect`,{x:9,y:34,width:10,height:10,fill:`#6C65E5`}),(0,j.jsx)(`rect`,{x:51,y:29,width:15,height:15,fill:`#EDF0F1`}),(0,j.jsx)(`circle`,{cx:37.5,cy:24.5,r:12.5,fill:`white`,fillOpacity:.9}),(0,j.jsx)(`g`,{clipPath:`url(#clip0_37278_7520)`,children:(0,j.jsx)(`path`,{d:`M35.666 20.918V29.0846L42.0827 25.0013L35.666 20.918Z`,fill:`#1A4049`})}),(0,j.jsx)(`defs`,{children:(0,j.jsx)(`clipPath`,{id:`clip0_37278_7520`,children:(0,j.jsx)(`rect`,{width:14,height:14,fill:`white`,transform:`translate(31 18)`})})})]}),Pe=s(f)(({theme:e})=>({color:e.palette.primary.main,borderRadius:100,"&:focus-visible":{outlineStyle:`solid`,outlineWidth:2,outlineColor:e.palette.primary.main,borderRadius:`100%`}})),Fe=s(l)(({theme:e})=>({"& .MuiPaper-root":{width:e.spacing(40),borderRadius:`${e.shape.borderRadiusSmall}px`}})),z=s(m)(({theme:e})=>({display:`flex`,alignItems:`center`,gap:e.spacing(.5),color:e.mode===`dark`?e.palette.primary.main:e.palette.secondary.border,"& svg":{color:e.mode===`dark`?e.palette.primary.main:e.palette.secondary.border}})),Ie=s(u)(({theme:e})=>({margin:e.spacing(1,1,1,1.125),padding:e.spacing(1.5,2),borderRadius:`${e.shape.borderRadiusMedium}px`,backgroundColor:e.palette.web.main,color:e.palette.common.white,display:`flex`,alignItems:`center`,gap:e.spacing(1.5),"&:hover":{backgroundColor:i(e.palette.web.main,.1),[`& ${z}`]:{textDecoration:`underline`}},"&.Mui-focusVisible":{backgroundColor:i(e.palette.web.main,.1)}})),Le=s(p)(({theme:e})=>({color:e.palette.common.white,fontWeight:700})),Re=s(p)(({theme:e})=>({fontWeight:e.typography.fontWeightBold})),ze=s(p)(({theme:e})=>({color:e.palette.web.contrastText,lineHeight:`105%`,whiteSpace:`normal`,wordBreak:`break-word`})),Be=s(Ne)({width:`75px`,height:`50px`,flexShrink:0}),Ve=s(m)(({theme:e})=>({display:`flex`,flexDirection:`column`,gap:e.spacing(.5)})),B=s(u)(({theme:e})=>({display:`flex`,alignItems:`center`,gap:e.spacing(1),padding:e.spacing(1,2,1,1.125),alignSelf:`stretch`,"& svg":{color:e.palette.neutral.main,width:18,height:18}})),He=`https://docs.getunleash.io/`,Ue=`https://github.com/Unleash/unleash`,We=`https://slack.unleash.run/`,V=`https://docs.getunleash.io/`,H=`help-resources`,Ge=()=>{let[e,t]=(0,A.useState)(null),n=!!e,{trackEvent:r}=re(),i=e=>{t(e.currentTarget),r(H,{props:{eventType:`opened`}})},a=()=>t(null),o=e=>{r(H,{props:{eventType:`click`,option:e}}),a()},{openFeedback:s}=y(`general`,`automatic`);return(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(c,{title:`Help & Resources`,arrow:!0,children:(0,j.jsx)(Pe,{size:`large`,onClick:i,"aria-haspopup":`true`,"aria-expanded":n,"aria-label":`Help and resources`,children:(0,j.jsx)(_,{})})}),(0,j.jsxs)(Fe,{anchorEl:e,open:n,onClose:a,anchorOrigin:{vertical:`bottom`,horizontal:`right`},transformOrigin:{vertical:`top`,horizontal:`right`},children:[(0,j.jsxs)(Ie,{component:`a`,href:V,target:`_blank`,rel:`noopener noreferrer`,onClick:()=>o(`learning-lab-featured`),disableGutters:!0,children:[(0,j.jsx)(Be,{}),(0,j.jsxs)(Ve,{children:[(0,j.jsx)(Le,{variant:`subtitle2`,children:`Learning Lab`}),(0,j.jsx)(ze,{variant:`body2`,children:`Learn Unleash at your own pace. Watch short videos on FeatureOps, feature flags, and AI-native development.`}),(0,j.jsxs)(z,{children:[(0,j.jsx)(Re,{variant:`body2`,color:`inherit`,children:`Visit Learning Lab`}),(0,j.jsx)(ie,{fontSize:`small`})]})]})]}),(0,j.jsxs)(B,{component:`a`,href:He,target:`_blank`,rel:`noopener noreferrer`,onClick:()=>o(`documentation`),children:[(0,j.jsx)(g,{fontSize:`small`}),`Documentation`]}),(0,j.jsxs)(B,{component:`a`,href:V,target:`_blank`,rel:`noopener noreferrer`,onClick:()=>o(`learning-lab`),children:[(0,j.jsx)(je,{fontSize:`small`}),`Learning Lab`]}),(0,j.jsxs)(B,{component:`a`,href:Ue,target:`_blank`,rel:`noopener noreferrer`,onClick:()=>o(`github`),children:[(0,j.jsx)(S,{fontSize:`small`}),`GitHub`]}),(0,j.jsxs)(B,{onClick:()=>{o(`give-feedback`),s({title:`How easy is it to use Unleash?`,positiveLabel:`What do you like most about Unleash?`,areasForImprovementsLabel:`What should be improved in Unleash?`})},children:[(0,j.jsx)(le,{fontSize:`small`}),`Give feedback`]}),(0,j.jsxs)(B,{component:`a`,href:We,target:`_blank`,rel:`noopener noreferrer`,onClick:()=>o(`slack`),children:[(0,j.jsx)(Me,{}),`Slack community`]})]})]})},Ke=e({Default:()=>Je,meta:()=>qe}),qe={title:`Menu/Header/HelpResources`},Je=()=>(0,j.jsx)(Ge,{}),Ye=e({Default:()=>Ze,meta:()=>Xe}),Xe={title:`Onboarding / GenerateApiKey`,background:`paper`},Ze=()=>(0,j.jsx)(se,{projectId:`my-project`,environments:[`production`,`development`,`staging`],sdk:{type:`client`},onApiKeyChange:e=>console.log(`API key changed:`,e),onNext:()=>console.log(`Next clicked`)}),Qe=e({Default:()=>et,LongKey:()=>tt,NoKey:()=>nt,meta:()=>$e}),$e={title:`Onboarding / GenerateApiKeySummary`,background:`paper`},et=()=>(0,j.jsx)(T,{apiKey:`my-project:production.0efcb2447a1b9f417c90afea8415dd867f1998bea7db9c13714554f3`}),tt=()=>(0,j.jsx)(T,{apiKey:`my-very-long-project-name:some-environment-name.averylongsecretkeythatshouldgettruncated12345`}),nt=()=>(0,j.jsx)(T,{}),rt=e({Default:()=>at,meta:()=>it}),it={title:`Onboarding / TokenExplanation`,background:`paper`},at=()=>(0,j.jsx)(ae,{project:`my-project-here`,environment:`production`,secret:`0efcb2447a1b9f417c90afea8415dd867f1998bea7db9c13714554f3`}),ot=e({Default:()=>ct,WithSelection:()=>lt,meta:()=>st}),st={title:`Onboarding / SelectSdk`,background:`paper`},ct=()=>(0,j.jsx)(C,{onSelect:e=>console.log(`Selected SDK:`,e)}),lt=()=>(0,j.jsx)(C,{sdk:{name:`Node.js`,type:`client`},onSelect:e=>console.log(`Selected SDK:`,e)}),ut=e({Default:()=>pt,meta:()=>dt}),dt={title:`Onboarding/SdkEvaluationStatus`,background:`paper`},ft=s(`div`)(({theme:e})=>({display:`flex`,flexDirection:`column`,gap:e.spacing(4),maxWidth:600})),U=s(`div`)(({theme:e})=>({display:`flex`,flexDirection:`column`,gap:e.spacing(1)})),W={connectedTitle:`We received metrics from your application`,connectedBody:`Your SDK is connected and evaluating flags.`,waitingTitle:`Waiting for SDK data...`,waitingBody:`Run your app and evaluate your flag. This step completes on its own.`},G={connectedTitle:`Got the first evaluation!`,connectedBody:`Your flag is wired up. Finish setup to close this dialog.`,waitingTitle:`Listening for the first evaluation…`,waitingBody:`Run your app and evaluate your flag.`},pt=()=>(0,j.jsxs)(ft,{children:[(0,j.jsxs)(U,{children:[(0,j.jsx)(p,{variant:`subtitle2`,children:`ConfigureSdk — waiting`}),(0,j.jsx)(w,{sdkConnected:!1,...W})]}),(0,j.jsxs)(U,{children:[(0,j.jsx)(p,{variant:`subtitle2`,children:`ConfigureSdk — waiting with troubleshooting`}),(0,j.jsx)(w,{sdkConnected:!1,showTroubleshooting:!0,troubleshootingText:`Not seeing evaluations after ~30s? Make sure your app has started and that the client was initialized with the API key from step 2.`,...W})]}),(0,j.jsxs)(U,{children:[(0,j.jsx)(p,{variant:`subtitle2`,children:`ConfigureSdk — connected`}),(0,j.jsx)(w,{sdkConnected:!0,...W})]}),(0,j.jsxs)(U,{children:[(0,j.jsx)(p,{variant:`subtitle2`,children:`ImplementFlagDialog — waiting`}),(0,j.jsx)(w,{sdkConnected:!1,...G})]}),(0,j.jsxs)(U,{children:[(0,j.jsx)(p,{variant:`subtitle2`,children:`ImplementFlagDialog — evaluated`}),(0,j.jsx)(w,{sdkConnected:!0,...G})]})]}),mt=e({Completed:()=>yt,FirstStep:()=>_t,JustStarted:()=>gt,SecondStep:()=>vt,meta:()=>ht}),ht={title:`Onboarding / OnboardingProgress`,background:`paper`},gt=()=>(0,j.jsx)(O,{step:0,maxSteps:3,onDismiss:()=>{}}),_t=()=>(0,j.jsx)(O,{step:1,maxSteps:3,onDismiss:()=>{}}),vt=()=>(0,j.jsx)(O,{step:2,maxSteps:3,onDismiss:()=>{}}),yt=()=>(0,j.jsx)(O,{step:3,maxSteps:3,onDismiss:()=>{}}),bt=e({Active:()=>Ct,Disabled:()=>St,Done:()=>wt,meta:()=>xt}),xt={title:`Onboarding / ConnectSdkStep`,background:`paper`},St=()=>(0,j.jsx)(k,{projectId:`my-project`,setConnectSdkOpen:(...e)=>{console.log(`Open Connect SDK`,e)},state:`disabled`}),Ct=()=>(0,j.jsx)(k,{projectId:`my-project`,setConnectSdkOpen:(...e)=>{console.log(`Open Connect SDK`,e)},state:`active`}),wt=()=>(0,j.jsx)(k,{projectId:`my-project`,setConnectSdkOpen:(...e)=>{console.log(`Open Connect SDK`,e)},state:`done`}),Tt=e({AllColors:()=>Mt,meta:()=>Et}),Et={title:`Theme / Colors`,background:`application`},Dt=new Set([`mode`,`augmentColor`,`getContrastText`,`contrastThreshold`,`tonalOffset`]);function K(e,t=``){if(typeof e!=`object`||!e)return[];let n=[];for(let[r,i]of Object.entries(e)){if(Dt.has(r)||typeof i==`function`)continue;let e=t?`${t}.${r}`:r;typeof i==`string`&&Ot(i)?n.push({path:e,value:i}):Array.isArray(i)&&i.length>0&&i.every(e=>typeof e==`string`)?n.push({path:e,values:i}):typeof i==`object`&&i&&!Array.isArray(i)&&n.push(...K(i,e))}return n}function Ot(e){return e.startsWith(`#`)||e.startsWith(`rgb`)||e.startsWith(`hsl`)}function kt(e){let t=new Map;for(let n of e){let e=n.path.split(`.`)[0];t.has(e)||t.set(e,[]),t.get(e).push(n)}return Array.from(t.entries())}var q=({color:e,size:t=36})=>(0,j.jsx)(m,{title:e,sx:{width:t,height:t,background:e,borderRadius:`4px`,border:`1px solid rgba(128,128,128,0.2)`,flexShrink:0}}),At=({path:e,value:t})=>(0,j.jsxs)(m,{sx:{display:`flex`,alignItems:`center`,gap:1.5,py:.5},children:[(0,j.jsx)(q,{color:t}),(0,j.jsxs)(m,{sx:{flex:1,minWidth:0},children:[(0,j.jsx)(p,{component:`div`,sx:{fontFamily:`monospace`,fontSize:`0.7rem`,color:`text.secondary`,wordBreak:`break-all`,lineHeight:1.4},children:e}),(0,j.jsx)(p,{component:`div`,sx:{fontFamily:`monospace`,fontSize:`0.65rem`,color:`text.disabled`,lineHeight:1.4},children:t})]})]}),jt=({path:e,values:t})=>(0,j.jsxs)(m,{sx:{py:.75},children:[(0,j.jsxs)(p,{component:`div`,sx:{fontFamily:`monospace`,fontSize:`0.7rem`,color:`text.secondary`,mb:.5},children:[e,` (`,t.length,`)`]}),(0,j.jsx)(m,{sx:{display:`flex`,flexWrap:`wrap`,gap:.5},children:t.map((e,t)=>(0,j.jsx)(q,{color:e,size:24},t))})]}),J=({theme:e,label:t})=>{let n=kt(K(e.palette));return(0,j.jsx)(b,{theme:e,children:(0,j.jsxs)(m,{sx:{flex:1,minWidth:0,bgcolor:`background.paper`,borderRadius:1,p:2},children:[(0,j.jsx)(p,{variant:`subtitle1`,sx:{fontWeight:700,mb:2,pb:1,borderBottom:`2px solid`,borderColor:`divider`,color:`text.primary`},children:t}),n.map(([e,t])=>(0,j.jsxs)(m,{sx:{mb:2.5},children:[(0,j.jsx)(p,{component:`div`,sx:{fontSize:`0.6rem`,fontWeight:700,letterSpacing:`0.1em`,textTransform:`uppercase`,color:`text.disabled`,mb:.5,pb:.25,borderBottom:`1px solid`,borderColor:`divider`},children:e}),t.map(e=>`value`in e?(0,j.jsx)(At,{path:e.path,value:e.value},e.path):(0,j.jsx)(jt,{path:e.path,values:e.values},e.path))]},e))]})})},Mt=()=>(0,j.jsxs)(m,{sx:{display:`flex`,gap:2,alignItems:`flex-start`},children:[(0,j.jsx)(J,{theme:x,label:`Light`}),(0,j.jsx)(J,{theme:v,label:`Dark`})]}),Nt=d((0,j.jsx)(`path`,{d:`M17 7h-4v2h4c1.65 0 3 1.35 3 3s-1.35 3-3 3h-4v2h4c2.76 0 5-2.24 5-5s-2.24-5-5-5m-6 8H7c-1.65 0-3-1.35-3-3s1.35-3 3-3h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4zm-3-4h8v2H8z`}),`LinkOutlined`),Pt=Object.assign({"../common/DialogWithAside/DialogWithAside.story.tsx":ue,"../feature/FeatureView/FeatureOverview/ImplementFlagDialog/FlagUsageSnippet.story.tsx":me,"../feature/FeatureView/FeatureOverview/ImplementFlagDialog/SelectSdk.story.tsx":De,"../menu/Header/HelpResources/HelpResources.story.tsx":Ke,"../onboarding/dialog/ConnectSdkDialog/GenerateApiKey/GenerateApiKey.story.tsx":Ye,"../onboarding/dialog/ConnectSdkDialog/GenerateApiKey/GenerateApiKeySummary.story.tsx":Qe,"../onboarding/dialog/ConnectSdkDialog/GenerateApiKey/TokenExplanation.story.tsx":rt,"../onboarding/dialog/ConnectSdkDialog/SelectSdk/SelectSdk.story.tsx":ot,"../onboarding/dialog/SdkEvaluationStatus.story.tsx":ut,"../onboarding/flow/OnboardingProgress.story.tsx":mt,"../onboarding/flow/steps/ConnectSdkStep.story.tsx":bt,"../../themes/ThemeColors.story.tsx":Tt});function Ft(){let e=[];for(let[t,n]of Object.entries(Pt)){if(!n.meta)continue;let r=Object.entries(n).filter(([e,t])=>e!==`meta`&&typeof t==`function`).map(([e,t])=>({name:e,component:t}));if(r.length===0)continue;let i=n.meta.title.split(`/`).map(e=>e.trim()),a=i.pop()??n.meta.title,o=i.length>0?i.join(` / `):`General`;e.push({moduleKey:t,meta:n.meta,category:o,name:a,stories:r})}return e.sort((e,t)=>e.category.localeCompare(t.category)||e.name.localeCompare(t.name))}var Y=Ft(),X=e=>e.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-|-$/g,``),Z=e=>e.toLowerCase().replace(/[^a-z0-9]+/g,`-`),Q=e=>`${X(e.category)}/${X(e.name)}`,It=[{key:`paper`,label:`Paper`},{key:`elevation1`,label:`Elevation 1`},{key:`elevation2`,label:`Elevation 2`},{key:`application`,label:`Application`},{key:`sidebar`,label:`Sidebar`}],Lt=s(`div`)({display:`flex`,height:`100vh`,overflow:`hidden`}),Rt=s(`nav`)(({theme:e})=>({width:220,flexShrink:0,borderRight:`1px solid ${e.palette.divider}`,display:`flex`,flexDirection:`column`,overflow:`hidden`,background:e.palette.background.paper})),zt=s(`div`)(({theme:e})=>({display:`flex`,alignItems:`center`,justifyContent:`space-between`,padding:e.spacing(1.5,2),borderBottom:`1px solid ${e.palette.divider}`,flexShrink:0})),$=s(`div`)({flex:1,overflowY:`auto`,padding:`8px 4px`}),Bt=s(`div`)(({theme:e})=>({fontSize:10,fontWeight:700,letterSpacing:`0.1em`,textTransform:`uppercase`,color:e.palette.text.disabled,padding:e.spacing(1.5,1.5,.5)})),Vt=s(`button`,{shouldForwardProp:e=>e!==`isSelected`})(({theme:e,isSelected:t})=>({display:`block`,width:`100%`,textAlign:`left`,border:`none`,borderRadius:e.shape.borderRadius,padding:e.spacing(.75,1.5),cursor:`pointer`,fontSize:13,background:t?e.palette.action.selected:`transparent`,color:t?e.palette.primary.main:e.palette.text.primary,fontWeight:t?500:400,"&:hover":{background:t?e.palette.action.selected:e.palette.action.hover}})),Ht=s(`a`,{shouldForwardProp:e=>e!==`isActive`})(({theme:e,isActive:t})=>({display:`block`,padding:e.spacing(.5,1.5,.5,3.5),fontSize:12,color:t?e.palette.primary.main:e.palette.text.secondary,fontWeight:t?500:400,textDecoration:`none`,borderRadius:e.shape.borderRadius,background:t?e.palette.action.selected:`transparent`,"&:hover":{color:t?e.palette.primary.main:e.palette.text.primary,background:e.palette.action.hover}})),Ut=s(`main`)({flex:1,overflow:`hidden`,display:`flex`,flexDirection:`column`}),Wt=s(`div`)(({theme:e})=>({padding:e.spacing(1.5,3),borderBottom:`1px solid ${e.palette.divider}`,background:e.palette.background.paper,display:`flex`,alignItems:`center`,gap:e.spacing(1),flexShrink:0})),Gt=s(`div`)(({theme:e})=>({flex:1,overflow:`auto`,padding:e.spacing(4)})),Kt=s(`div`)(({theme:e})=>({marginBottom:e.spacing(6)})),qt=s(`div`,{shouldForwardProp:e=>e!==`isActive`})(({theme:e,isActive:t})=>({fontSize:12,fontWeight:500,fontFamily:`monospace`,color:t?e.palette.primary.main:e.palette.text.secondary,marginBottom:e.spacing(1.5),cursor:`pointer`,display:`flex`,alignItems:`center`,gap:e.spacing(.75),"& .anchor-icon":{fontSize:14,opacity:+!!t,transition:`opacity 0.15s`},"&:hover .anchor-icon":{opacity:1}})),Jt=s(`div`)(({theme:e})=>({padding:e.spacing(4),borderRadius:e.shape.borderRadius,border:`1px solid ${e.palette.divider}`,width:`100%`,boxSizing:`border-box`})),Yt=s(`button`,{shouldForwardProp:e=>e!==`isSelected`})(({theme:e,isSelected:t})=>({width:20,height:20,borderRadius:e.shape.borderRadius,border:`none`,cursor:`pointer`,padding:0,outline:t?`3px solid ${e.palette.primary.main}`:`1px solid ${e.palette.primary.main}`,outlineOffset:+!!t,flexShrink:0})),Xt=()=>{let{themeMode:e,onSetThemeMode:t}=ne(),n=a(),[i,o]=r(),[s,l]=(0,A.useState)(Y[0]?.meta.background??`application`),u=(0,A.useRef)(null),d=i.get(`c`),h=i.get(`s`),g=(d?Y.find(e=>Q(e)===d):null)??Y[0],_=h,v=Y.reduce((e,t)=>(e[t.category]||(e[t.category]=[]),e[t.category].push(t),e),{});(0,A.useEffect)(()=>{l(g?.meta.background??`application`)},[g]),(0,A.useEffect)(()=>{if(!h){u.current?.scrollTo({top:0});return}requestAnimationFrame(()=>{let e=document.getElementById(h);if(e&&u.current){let t=u.current.getBoundingClientRect().top,n=e.getBoundingClientRect().top;u.current.scrollTo({top:u.current.scrollTop+n-t-32,behavior:`smooth`})}})},[h]);let y=e=>{o({c:Q(e)})},b=(e,t,n)=>{e.preventDefault(),o({c:Q(t),s:Z(n)})},x=e=>{let t=Z(e),n=new URLSearchParams({c:Q(g),s:t});o(n),navigator.clipboard.writeText(`${window.location.origin}${window.location.pathname}?${n}`).catch(e=>{console.error(`Failed to copy link to clipboard`,e)})},S=n.palette.background[s];return(0,j.jsxs)(Lt,{children:[(0,j.jsxs)(Rt,{children:[(0,j.jsxs)(zt,{children:[(0,j.jsx)(p,{variant:`body2`,sx:{fontWeight:700,fontFamily:`monospace`},children:`_stories`}),(0,j.jsx)(c,{title:`${e===`light`?`Dark`:`Light`} mode`,children:(0,j.jsx)(f,{size:`small`,onClick:t,children:e===`light`?(0,j.jsx)(te,{sx:{fontSize:16}}):(0,j.jsx)(ee,{sx:{fontSize:16}})})})]}),(0,j.jsx)($,{children:Object.entries(v).map(([e,t])=>(0,j.jsxs)(`div`,{children:[(0,j.jsx)(Bt,{children:e}),t.map(e=>(0,j.jsxs)(`div`,{children:[(0,j.jsx)(Vt,{isSelected:e.moduleKey===g?.moduleKey,onClick:()=>y(e),children:e.name}),e.moduleKey===g?.moduleKey&&e.stories.map(t=>(0,j.jsx)(Ht,{href:`?c=${Q(e)}&s=${Z(t.name)}`,isActive:_===Z(t.name),onClick:n=>b(n,e,t.name),children:t.name},t.name))]},e.moduleKey))]},e))})]}),(0,j.jsx)(Ut,{children:g?(0,j.jsxs)(j.Fragment,{children:[(0,j.jsxs)(Wt,{children:[(0,j.jsx)(p,{variant:`body2`,sx:{color:`text.disabled`,fontSize:12},children:g.category}),(0,j.jsx)(p,{variant:`body2`,sx:{color:`text.disabled`,fontSize:12},children:`/`}),(0,j.jsx)(p,{variant:`body2`,sx:{fontWeight:600,fontSize:14},children:g.name}),(0,j.jsxs)(m,{sx:{ml:`auto`,display:`flex`,alignItems:`center`,gap:1},children:[(0,j.jsx)(p,{variant:`caption`,sx:{color:`text.disabled`,mr:.25},children:`Background:`}),It.map(({key:e,label:t})=>(0,j.jsx)(c,{title:t,arrow:!0,children:(0,j.jsx)(Yt,{isSelected:s===e,onClick:()=>l(e),style:{background:n.palette.background[e]}})},e))]})]}),(0,j.jsx)(Gt,{ref:u,sx:{background:S},children:g.stories.map(e=>{let t=e.component;return(0,j.jsxs)(Kt,{children:[(0,j.jsxs)(qt,{id:Z(e.name),isActive:_===Z(e.name),onClick:()=>x(e.name),children:[e.name,(0,j.jsx)(Nt,{className:`anchor-icon`})]}),(0,j.jsx)(Jt,{children:(0,j.jsx)(t,{})})]},e.name)})})]}):(0,j.jsx)(m,{sx:{p:4},children:(0,j.jsxs)(p,{sx:{color:`text.secondary`},children:[`No stories found. Create a`,` `,(0,j.jsx)(m,{component:`code`,sx:{fontFamily:`monospace`},children:`*.story.tsx`}),` `,`file anywhere under`,` `,(0,j.jsx)(m,{component:`code`,sx:{fontFamily:`monospace`},children:`frontend/src/`}),` `,`to get started.`]})})})]})};export{Xt as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,t}from"./react-GZhdek4G.js";import{t as n}from"./jsx-runtime-BnvnyDTF.js";import{D as r,O as i,_ as a,v as o,x as s,y as c}from"./createSimplePaletteValueFilter-BRAMrHWJ.js";import{a as l}from"./Tooltip-BaILXXti.js";import{S as u}from"./TextField-oipjeg6n.js";import{n as d}from"./CircularProgress-C_LUU3DK.js";import{r as f}from"./ConditionallyRender---uTpMBn.js";var p=e(t(),1);function m(e){return i(`PrivateSwitchBase`,e)}r(`PrivateSwitchBase`,[`root`,`checked`,`disabled`,`input`,`edgeStart`,`edgeEnd`]);var h=n(),g=e=>{let{classes:t,checked:n,disabled:r,edge:i}=e;return s({root:[`root`,n&&`checked`,r&&`disabled`,i&&`edge${a(i)}`],input:[`input`]},m,t)},_=o(d,{name:`MuiSwitchBase`})({padding:9,borderRadius:`50%`,variants:[{props:{edge:`start`,size:`small`},style:{marginLeft:-3}},{props:({edge:e,ownerState:t})=>e===`start`&&t.size!==`small`,style:{marginLeft:-12}},{props:{edge:`end`,size:`small`},style:{marginRight:-3}},{props:({edge:e,ownerState:t})=>e===`end`&&t.size!==`small`,style:{marginRight:-12}}]}),v=o(`input`,{name:`MuiSwitchBase`,shouldForwardProp:c})({cursor:`inherit`,position:`absolute`,opacity:0,width:`100%`,height:`100%`,top:0,left:0,margin:0,padding:0,zIndex:1}),y=p.forwardRef(function(e,t){let{autoFocus:n,checked:r,checkedIcon:i,defaultChecked:a,disabled:o,disableFocusRipple:s=!1,edge:c=!1,icon:d,id:p,name:m,onBlur:y,onChange:b,onFocus:x,readOnly:S,required:C=!1,tabIndex:w,type:T,value:E,slots:D={},slotProps:O={},...k}=e,{nativeButton:A,...j}=k,[M,N]=l({controlled:r,default:!!a,name:`SwitchBase`,state:`checked`}),P=u(),F=e=>{x&&x(e),P&&P.onFocus&&P.onFocus(e)},I=e=>{y&&y(e),P&&P.onBlur&&P.onBlur(e)},L=e=>{if(e.nativeEvent.defaultPrevented||S)return;let t=e.target.checked;N(t),b&&b(e,t)},R=o;P&&R===void 0&&(R=P.disabled);let z=T===`checkbox`||T===`radio`,B={...e,checked:M,disabled:R,disableFocusRipple:s,edge:c},V=g(B),H={slots:D,slotProps:O},[U,W]=f(`root`,{ref:t,elementType:_,className:V.root,shouldForwardComponentProp:!0,externalForwardedProps:{...H,component:`span`,...j},getSlotProps:e=>({...e,onFocus:t=>{e.onFocus?.(t),F(t)},onBlur:t=>{e.onBlur?.(t),I(t)}}),ownerState:B,additionalProps:{centerRipple:!0,focusRipple:!s,role:void 0,tabIndex:null}}),[G,K]=f(`input`,{elementType:v,className:V.input,externalForwardedProps:H,getSlotProps:e=>({...e,onChange:t=>{e.onChange?.(t),L(t)}}),ownerState:B,additionalProps:{autoFocus:n,checked:r,defaultChecked:a,disabled:R,id:z?p:void 0,name:m,readOnly:S,required:C,tabIndex:w,type:T,...T===`checkbox`&&E===void 0?{}:{value:E}}});return(0,h.jsxs)(U,{...W,children:[(0,h.jsx)(G,{...K}),M?i:d]})});export{y as t};
|