unleash-server 5.4.3 → 5.5.0
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/README.md +5 -3
- package/dist/lib/addons/addon-schema.js +2 -1
- package/dist/lib/addons/addon-schema.js.map +1 -1
- package/dist/lib/addons/datadog-definition.js +22 -7
- package/dist/lib/addons/datadog-definition.js.map +1 -1
- package/dist/lib/addons/datadog.d.ts +7 -1
- package/dist/lib/addons/datadog.js +16 -3
- package/dist/lib/addons/datadog.js.map +1 -1
- package/dist/lib/addons/datadog.test.js +62 -0
- package/dist/lib/addons/datadog.test.js.map +1 -1
- package/dist/lib/addons/index.js +3 -11
- package/dist/lib/addons/index.js.map +1 -1
- package/dist/lib/addons/slack-app-definition.js +5 -24
- package/dist/lib/addons/slack-app-definition.js.map +1 -1
- package/dist/lib/addons/slack-app.d.ts +0 -1
- package/dist/lib/addons/slack-app.js +5 -17
- package/dist/lib/addons/slack-app.js.map +1 -1
- package/dist/lib/addons/slack-app.test.js +39 -25
- package/dist/lib/addons/slack-app.test.js.map +1 -1
- package/dist/lib/addons/slack-definition.js +11 -4
- package/dist/lib/addons/slack-definition.js.map +1 -1
- package/dist/lib/addons/teams-definition.js +5 -4
- package/dist/lib/addons/teams-definition.js.map +1 -1
- package/dist/lib/addons/webhook-definition.js +10 -12
- package/dist/lib/addons/webhook-definition.js.map +1 -1
- package/dist/lib/create-config.js +13 -1
- package/dist/lib/create-config.js.map +1 -1
- package/dist/lib/create-config.test.js +14 -0
- package/dist/lib/create-config.test.js.map +1 -1
- package/dist/lib/db/access-store.d.ts +23 -5
- package/dist/lib/db/access-store.js +263 -17
- package/dist/lib/db/access-store.js.map +1 -1
- package/dist/lib/db/access-store.test.js +83 -0
- package/dist/lib/db/access-store.test.js.map +1 -0
- package/dist/lib/db/client-applications-store.d.ts +1 -3
- package/dist/lib/db/client-applications-store.js +13 -24
- package/dist/lib/db/client-applications-store.js.map +1 -1
- package/dist/lib/db/event-store.js +1 -0
- package/dist/lib/db/event-store.js.map +1 -1
- package/dist/lib/db/feature-toggle-client-store.js +17 -4
- package/dist/lib/db/feature-toggle-client-store.js.map +1 -1
- package/dist/lib/db/feature-toggle-store.js +1 -1
- package/dist/lib/db/feature-toggle-store.js.map +1 -1
- package/dist/lib/db/group-store.d.ts +4 -2
- package/dist/lib/db/group-store.js +24 -0
- package/dist/lib/db/group-store.js.map +1 -1
- package/dist/lib/db/index.d.ts +1 -2
- package/dist/lib/db/index.js +5 -1
- package/dist/lib/db/index.js.map +1 -1
- package/dist/lib/db/project-stats-store.d.ts +2 -0
- package/dist/lib/db/project-stats-store.js +27 -0
- package/dist/lib/db/project-stats-store.js.map +1 -1
- package/dist/lib/db/project-store.d.ts +7 -1
- package/dist/lib/db/project-store.js +34 -1
- package/dist/lib/db/project-store.js.map +1 -1
- package/dist/lib/error/bad-data-error.d.ts +1 -1
- package/dist/lib/error/index.d.ts +2 -1
- package/dist/lib/error/index.js +3 -1
- package/dist/lib/error/index.js.map +1 -1
- package/dist/lib/error/pattern-error.d.ts +10 -0
- package/dist/lib/error/pattern-error.js +20 -0
- package/dist/lib/error/pattern-error.js.map +1 -0
- package/dist/lib/features/dependent-features/createDependentFeaturesService.d.ts +3 -0
- package/dist/lib/features/dependent-features/createDependentFeaturesService.js +11 -0
- package/dist/lib/features/dependent-features/createDependentFeaturesService.js.map +1 -0
- package/dist/lib/features/dependent-features/dependent-features-controller.d.ts +28 -0
- package/dist/lib/features/dependent-features/dependent-features-controller.js +151 -0
- package/dist/lib/features/dependent-features/dependent-features-controller.js.map +1 -0
- package/dist/lib/features/dependent-features/dependent-features-service.d.ts +11 -0
- package/dist/lib/features/dependent-features/dependent-features-service.js +40 -0
- package/dist/lib/features/dependent-features/dependent-features-service.js.map +1 -0
- package/dist/lib/features/dependent-features/dependent-features-store-type.d.ts +8 -0
- package/dist/lib/features/dependent-features/dependent-features-store-type.js +3 -0
- package/dist/lib/features/dependent-features/dependent-features-store-type.js.map +1 -0
- package/dist/lib/features/dependent-features/dependent-features-store.d.ts +12 -0
- package/dist/lib/features/dependent-features/dependent-features-store.js +56 -0
- package/dist/lib/features/dependent-features/dependent-features-store.js.map +1 -0
- package/dist/lib/features/dependent-features/dependent-features.d.ts +14 -0
- package/dist/lib/features/dependent-features/dependent-features.js +3 -0
- package/dist/lib/features/dependent-features/dependent-features.js.map +1 -0
- package/dist/lib/features/dependent-features/dependent.features.e2e.test.d.ts +1 -0
- package/dist/lib/features/dependent-features/dependent.features.e2e.test.js +82 -0
- package/dist/lib/features/dependent-features/dependent.features.e2e.test.js.map +1 -0
- package/dist/lib/features/dependent-features/fake-dependent-features-store.d.ts +8 -0
- package/dist/lib/features/dependent-features/fake-dependent-features-store.js +22 -0
- package/dist/lib/features/dependent-features/fake-dependent-features-store.js.map +1 -0
- package/dist/lib/features/export-import-toggles/createExportImportService.js +6 -3
- package/dist/lib/features/export-import-toggles/createExportImportService.js.map +1 -1
- package/dist/lib/features/export-import-toggles/export-import-service.d.ts +9 -3
- package/dist/lib/features/export-import-toggles/export-import-service.js +51 -21
- package/dist/lib/features/export-import-toggles/export-import-service.js.map +1 -1
- package/dist/lib/features/export-import-toggles/export-import.e2e.test.js +120 -50
- package/dist/lib/features/export-import-toggles/export-import.e2e.test.js.map +1 -1
- package/dist/lib/features/export-import-toggles/import-permissions-service.d.ts +1 -2
- package/dist/lib/features/export-import-toggles/import-toggles-store-type.d.ts +6 -0
- package/dist/lib/features/export-import-toggles/import-toggles-store.d.ts +2 -1
- package/dist/lib/features/export-import-toggles/import-toggles-store.js +25 -0
- package/dist/lib/features/export-import-toggles/import-toggles-store.js.map +1 -1
- package/dist/lib/features/export-import-toggles/import-validation-messages.d.ts +18 -2
- package/dist/lib/features/export-import-toggles/import-validation-messages.js +27 -11
- package/dist/lib/features/export-import-toggles/import-validation-messages.js.map +1 -1
- package/dist/lib/features/feature-naming-pattern/feature-naming-validation.d.ts +14 -0
- package/dist/lib/features/feature-naming-pattern/feature-naming-validation.js +46 -0
- package/dist/lib/features/feature-naming-pattern/feature-naming-validation.js.map +1 -0
- package/dist/lib/features/feature-naming-pattern/feature-naming-validation.test.d.ts +1 -0
- package/dist/lib/features/feature-naming-pattern/feature-naming-validation.test.js +116 -0
- package/dist/lib/features/feature-naming-pattern/feature-naming-validation.test.js.map +1 -0
- package/dist/lib/features/feature-toggle/createFeatureToggleService.js +11 -2
- package/dist/lib/features/feature-toggle/createFeatureToggleService.js.map +1 -1
- package/dist/lib/features/instance-stats/getActiveUsers.d.ts +9 -0
- package/dist/lib/features/instance-stats/getActiveUsers.e2e.test.d.ts +1 -0
- package/dist/lib/features/instance-stats/getActiveUsers.e2e.test.js +141 -0
- package/dist/lib/features/instance-stats/getActiveUsers.e2e.test.js.map +1 -0
- package/dist/lib/features/instance-stats/getActiveUsers.js +33 -0
- package/dist/lib/features/instance-stats/getActiveUsers.js.map +1 -0
- package/dist/lib/{services → features/instance-stats}/instance-stats-service.d.ts +13 -7
- package/dist/lib/{services → features/instance-stats}/instance-stats-service.js +16 -7
- package/dist/lib/features/instance-stats/instance-stats-service.js.map +1 -0
- package/dist/lib/features/instance-stats/instance-stats-service.test.d.ts +1 -0
- package/dist/lib/{services → features/instance-stats}/instance-stats-service.test.js +6 -5
- package/dist/lib/features/instance-stats/instance-stats-service.test.js.map +1 -0
- package/dist/lib/features/playground/advanced-playground.test.js +2 -3
- package/dist/lib/features/playground/advanced-playground.test.js.map +1 -1
- package/dist/lib/features/playground/feature-evaluator/variant.d.ts +1 -1
- package/dist/lib/features/playground/generateObjectCombinations.d.ts +1 -1
- package/dist/lib/features/playground/generateObjectCombinations.js +14 -4
- package/dist/lib/features/playground/generateObjectCombinations.js.map +1 -1
- package/dist/lib/features/playground/generateObjectCombinations.test.js +21 -0
- package/dist/lib/features/playground/generateObjectCombinations.test.js.map +1 -1
- package/dist/lib/features/playground/playground-service.d.ts +5 -3
- package/dist/lib/features/playground/playground-service.js +18 -3
- package/dist/lib/features/playground/playground-service.js.map +1 -1
- package/dist/lib/features/playground/playground.d.ts +2 -1
- package/dist/lib/features/playground/playground.js +2 -1
- package/dist/lib/features/playground/playground.js.map +1 -1
- package/dist/lib/features/private-project/createPrivateProjectChecker.d.ts +5 -0
- package/dist/lib/features/private-project/createPrivateProjectChecker.js +22 -0
- package/dist/lib/features/private-project/createPrivateProjectChecker.js.map +1 -0
- package/dist/lib/features/private-project/fakePrivateProjectChecker.d.ts +7 -0
- package/dist/lib/features/private-project/fakePrivateProjectChecker.js +15 -0
- package/dist/lib/features/private-project/fakePrivateProjectChecker.js.map +1 -0
- package/dist/lib/features/private-project/privateProjectChecker.d.ts +10 -0
- package/dist/lib/features/private-project/privateProjectChecker.js +22 -0
- package/dist/lib/features/private-project/privateProjectChecker.js.map +1 -0
- package/dist/lib/features/private-project/privateProjectCheckerType.d.ts +5 -0
- package/dist/lib/features/private-project/privateProjectCheckerType.js +3 -0
- package/dist/lib/features/private-project/privateProjectCheckerType.js.map +1 -0
- package/dist/lib/features/private-project/privateProjectStore.d.ts +18 -0
- package/dist/lib/features/private-project/privateProjectStore.js +70 -0
- package/dist/lib/features/private-project/privateProjectStore.js.map +1 -0
- package/dist/lib/features/private-project/privateProjectStoreType.d.ts +4 -0
- package/dist/lib/features/private-project/privateProjectStoreType.js +3 -0
- package/dist/lib/features/private-project/privateProjectStoreType.js.map +1 -0
- package/dist/lib/features/project/createProjectService.js +5 -8
- package/dist/lib/features/project/createProjectService.js.map +1 -1
- package/dist/lib/features/segment/createSegmentService.js +5 -2
- package/dist/lib/features/segment/createSegmentService.js.map +1 -1
- package/dist/lib/features/segment/segment-controller.d.ts +39 -0
- package/dist/lib/features/segment/segment-controller.js +291 -0
- package/dist/lib/features/segment/segment-controller.js.map +1 -0
- package/dist/lib/metrics.d.ts +1 -1
- package/dist/lib/metrics.js +30 -1
- package/dist/lib/metrics.js.map +1 -1
- package/dist/lib/metrics.test.js +3 -2
- package/dist/lib/metrics.test.js.map +1 -1
- package/dist/lib/middleware/rbac-middleware.d.ts +2 -0
- package/dist/lib/middleware/rbac-middleware.js +2 -0
- package/dist/lib/middleware/rbac-middleware.js.map +1 -1
- package/dist/lib/middleware/secure-headers.js +18 -0
- package/dist/lib/middleware/secure-headers.js.map +1 -1
- package/dist/lib/openapi/index.js +13 -0
- package/dist/lib/openapi/index.js.map +1 -1
- package/dist/lib/openapi/meta-schema-rules.test.js +14 -4
- package/dist/lib/openapi/meta-schema-rules.test.js.map +1 -1
- package/dist/lib/openapi/spec/addon-type-schema.d.ts +6 -1
- package/dist/lib/openapi/spec/addon-type-schema.js +6 -1
- package/dist/lib/openapi/spec/addon-type-schema.js.map +1 -1
- package/dist/lib/openapi/spec/addons-schema.d.ts +8 -3
- package/dist/lib/openapi/spec/addons-schema.js +8 -3
- package/dist/lib/openapi/spec/addons-schema.js.map +1 -1
- package/dist/lib/openapi/spec/admin-segment-schema.d.ts +115 -0
- package/dist/lib/openapi/spec/admin-segment-schema.js +75 -0
- package/dist/lib/openapi/spec/admin-segment-schema.js.map +1 -0
- package/dist/lib/openapi/spec/admin-segment-schema.test.d.ts +1 -0
- package/dist/lib/openapi/spec/admin-segment-schema.test.js +39 -0
- package/dist/lib/openapi/spec/admin-segment-schema.test.js.map +1 -0
- package/dist/lib/openapi/spec/admin-strategies-schema.d.ts +46 -0
- package/dist/lib/openapi/spec/admin-strategies-schema.js +54 -0
- package/dist/lib/openapi/spec/admin-strategies-schema.js.map +1 -0
- package/dist/lib/openapi/spec/admin-strategies-schema.test.d.ts +1 -0
- package/dist/lib/openapi/spec/admin-strategies-schema.test.js +40 -0
- package/dist/lib/openapi/spec/admin-strategies-schema.test.js.map +1 -0
- package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.d.ts +51 -6
- package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.js +3 -1
- package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.js.map +1 -1
- package/dist/lib/openapi/spec/advanced-playground-feature-schema.d.ts +101 -11
- package/dist/lib/openapi/spec/advanced-playground-feature-schema.js +2 -0
- package/dist/lib/openapi/spec/advanced-playground-feature-schema.js.map +1 -1
- package/dist/lib/openapi/spec/advanced-playground-request-schema.d.ts +1 -0
- package/dist/lib/openapi/spec/advanced-playground-response-schema.d.ts +203 -22
- package/dist/lib/openapi/spec/advanced-playground-response-schema.js +2 -0
- package/dist/lib/openapi/spec/advanced-playground-response-schema.js.map +1 -1
- package/dist/lib/openapi/spec/client-feature-schema.d.ts +41 -6
- package/dist/lib/openapi/spec/client-feature-schema.js +9 -0
- package/dist/lib/openapi/spec/client-feature-schema.js.map +1 -1
- package/dist/lib/openapi/spec/client-features-schema.d.ts +75 -12
- package/dist/lib/openapi/spec/client-features-schema.js +2 -0
- package/dist/lib/openapi/spec/client-features-schema.js.map +1 -1
- package/dist/lib/openapi/spec/context-field-strategies-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/context-field-strategies-schema.js +1 -1
- package/dist/lib/openapi/spec/context-field-strategies-schema.js.map +1 -1
- package/dist/lib/openapi/spec/create-api-token-schema.d.ts +1 -139
- package/dist/lib/openapi/spec/create-api-token-schema.js +16 -20
- package/dist/lib/openapi/spec/create-api-token-schema.js.map +1 -1
- package/dist/lib/openapi/spec/create-dependent-feature-schema.d.ts +29 -0
- package/dist/lib/openapi/spec/create-dependent-feature-schema.js +31 -0
- package/dist/lib/openapi/spec/create-dependent-feature-schema.js.map +1 -0
- package/dist/lib/openapi/spec/create-feature-naming-pattern-schema.d.ts +29 -0
- package/dist/lib/openapi/spec/create-feature-naming-pattern-schema.js +33 -0
- package/dist/lib/openapi/spec/create-feature-naming-pattern-schema.js.map +1 -0
- package/dist/lib/openapi/spec/create-feature-strategy-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/create-strategy-schema.d.ts +15 -0
- package/dist/lib/openapi/spec/create-strategy-schema.js +15 -0
- package/dist/lib/openapi/spec/create-strategy-schema.js.map +1 -1
- package/dist/lib/openapi/spec/create-strategy-variant-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/create-strategy-variant-schema.js +2 -2
- package/dist/lib/openapi/spec/create-strategy-variant-schema.js.map +1 -1
- package/dist/lib/openapi/spec/dependent-feature-schema.d.ts +30 -0
- package/dist/lib/openapi/spec/dependent-feature-schema.js +14 -0
- package/dist/lib/openapi/spec/dependent-feature-schema.js.map +1 -0
- package/dist/lib/openapi/spec/dora-features-schema.d.ts +20 -0
- package/dist/lib/openapi/spec/dora-features-schema.js +22 -0
- package/dist/lib/openapi/spec/dora-features-schema.js.map +1 -0
- package/dist/lib/openapi/spec/environment-project-schema.d.ts +4 -4
- package/dist/lib/openapi/spec/environments-project-schema.d.ts +4 -4
- package/dist/lib/openapi/spec/event-schema.d.ts +3 -3
- package/dist/lib/openapi/spec/events-schema.d.ts +3 -3
- package/dist/lib/openapi/spec/export-query-schema.d.ts +22 -15
- package/dist/lib/openapi/spec/export-query-schema.js +16 -15
- package/dist/lib/openapi/spec/export-query-schema.js.map +1 -1
- package/dist/lib/openapi/spec/export-result-schema.d.ts +26 -26
- package/dist/lib/openapi/spec/feature-environment-schema.d.ts +6 -6
- package/dist/lib/openapi/spec/feature-events-schema.d.ts +3 -3
- package/dist/lib/openapi/spec/feature-schema.d.ts +12 -12
- package/dist/lib/openapi/spec/feature-strategy-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/feature-variants-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/features-schema.d.ts +24 -24
- package/dist/lib/openapi/spec/health-overview-schema.d.ts +63 -33
- package/dist/lib/openapi/spec/health-overview-schema.js +6 -1
- package/dist/lib/openapi/spec/health-overview-schema.js.map +1 -1
- package/dist/lib/openapi/spec/health-report-schema.d.ts +63 -33
- package/dist/lib/openapi/spec/import-toggles-schema.d.ts +52 -52
- package/dist/lib/openapi/spec/index.d.ts +9 -0
- package/dist/lib/openapi/spec/index.js +9 -0
- package/dist/lib/openapi/spec/index.js.map +1 -1
- package/dist/lib/openapi/spec/instance-admin-stats-schema.d.ts +42 -0
- package/dist/lib/openapi/spec/instance-admin-stats-schema.js +42 -0
- package/dist/lib/openapi/spec/instance-admin-stats-schema.js.map +1 -1
- package/dist/lib/openapi/spec/parent-feature-options-schema.d.ts +11 -0
- package/dist/lib/openapi/spec/parent-feature-options-schema.js +13 -0
- package/dist/lib/openapi/spec/parent-feature-options-schema.js.map +1 -0
- package/dist/lib/openapi/spec/playground-feature-schema.d.ts +5 -5
- package/dist/lib/openapi/spec/playground-request-schema.d.ts +1 -0
- package/dist/lib/openapi/spec/playground-response-schema.d.ts +12 -10
- package/dist/lib/openapi/spec/playground-strategy-schema.d.ts +4 -4
- package/dist/lib/openapi/spec/playground-strategy-schema.js +1 -1
- package/dist/lib/openapi/spec/playground-strategy-schema.js.map +1 -1
- package/dist/lib/openapi/spec/profile-schema.d.ts +12 -12
- package/dist/lib/openapi/spec/project-dora-metrics-schema.d.ts +44 -0
- package/dist/lib/openapi/spec/project-dora-metrics-schema.js +28 -0
- package/dist/lib/openapi/spec/project-dora-metrics-schema.js.map +1 -0
- package/dist/lib/openapi/spec/project-environment-schema.d.ts +4 -4
- package/dist/lib/openapi/spec/project-overview-schema.d.ts +63 -33
- package/dist/lib/openapi/spec/project-overview-schema.js +6 -1
- package/dist/lib/openapi/spec/project-overview-schema.js.map +1 -1
- package/dist/lib/openapi/spec/project-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/project-schema.js +1 -1
- package/dist/lib/openapi/spec/project-schema.js.map +1 -1
- package/dist/lib/openapi/spec/projects-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/push-variants-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/sdk-context-schema.d.ts +1 -0
- package/dist/lib/openapi/spec/sdk-context-schema.js +1 -0
- package/dist/lib/openapi/spec/sdk-context-schema.js.map +1 -1
- package/dist/lib/openapi/spec/sdk-flat-context-schema.d.ts +46 -0
- package/dist/lib/openapi/spec/sdk-flat-context-schema.js +15 -0
- package/dist/lib/openapi/spec/sdk-flat-context-schema.js.map +1 -0
- package/dist/lib/openapi/spec/search-events-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/segments-schema.d.ts +177 -0
- package/dist/lib/openapi/spec/segments-schema.js +26 -0
- package/dist/lib/openapi/spec/segments-schema.js.map +1 -0
- package/dist/lib/openapi/spec/segments-schema.test.d.ts +1 -0
- package/dist/lib/openapi/spec/segments-schema.test.js +16 -0
- package/dist/lib/openapi/spec/segments-schema.test.js.map +1 -0
- package/dist/lib/openapi/spec/state-schema.d.ts +23 -23
- package/dist/lib/openapi/spec/strategy-variant-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/update-feature-strategy-segments-schema.d.ts +35 -0
- package/dist/lib/openapi/spec/update-feature-strategy-segments-schema.js +37 -0
- package/dist/lib/openapi/spec/update-feature-strategy-segments-schema.js.map +1 -0
- package/dist/lib/openapi/spec/update-feature-strategy-segments-schema.test.d.ts +1 -0
- package/dist/lib/openapi/spec/update-feature-strategy-segments-schema.test.js +19 -0
- package/dist/lib/openapi/spec/update-feature-strategy-segments-schema.test.js.map +1 -0
- package/dist/lib/openapi/spec/upsert-segment-schema.d.ts +8 -15
- package/dist/lib/openapi/spec/upsert-segment-schema.js +8 -17
- package/dist/lib/openapi/spec/upsert-segment-schema.js.map +1 -1
- package/dist/lib/openapi/spec/upsert-segment-schema.test.d.ts +1 -0
- package/dist/lib/openapi/spec/upsert-segment-schema.test.js +35 -0
- package/dist/lib/openapi/spec/upsert-segment-schema.test.js.map +1 -0
- package/dist/lib/openapi/spec/validate-feature-schema.d.ts +6 -0
- package/dist/lib/openapi/spec/validate-feature-schema.js +6 -0
- package/dist/lib/openapi/spec/validate-feature-schema.js.map +1 -1
- package/dist/lib/openapi/spec/variant-schema.d.ts +2 -2
- package/dist/lib/openapi/spec/variant-schema.js +2 -2
- package/dist/lib/openapi/spec/variant-schema.js.map +1 -1
- package/dist/lib/openapi/spec/variants-schema.d.ts +2 -2
- package/dist/lib/openapi/util/all-of.d.ts +3 -0
- package/dist/lib/openapi/util/all-of.js +34 -0
- package/dist/lib/openapi/util/all-of.js.map +1 -0
- package/dist/lib/openapi/util/openapi-tags.d.ts +46 -58
- package/dist/lib/openapi/util/openapi-tags.js +27 -34
- package/dist/lib/openapi/util/openapi-tags.js.map +1 -1
- package/dist/lib/openapi/util/openapi-tags.test.d.ts +1 -0
- package/dist/lib/openapi/util/openapi-tags.test.js +15 -0
- package/dist/lib/openapi/util/openapi-tags.test.js.map +1 -0
- package/dist/lib/openapi/validate.js +0 -1
- package/dist/lib/openapi/validate.js.map +1 -1
- package/dist/lib/routes/admin-api/archive.d.ts +1 -1
- package/dist/lib/routes/admin-api/archive.js +3 -2
- package/dist/lib/routes/admin-api/archive.js.map +1 -1
- package/dist/lib/routes/admin-api/context.js +2 -1
- package/dist/lib/routes/admin-api/context.js.map +1 -1
- package/dist/lib/routes/admin-api/feature.js +2 -1
- package/dist/lib/routes/admin-api/feature.js.map +1 -1
- package/dist/lib/routes/admin-api/index.js +2 -0
- package/dist/lib/routes/admin-api/index.js.map +1 -1
- package/dist/lib/routes/admin-api/instance-admin.d.ts +2 -2
- package/dist/lib/routes/admin-api/instance-admin.js +7 -1
- package/dist/lib/routes/admin-api/instance-admin.js.map +1 -1
- package/dist/lib/routes/admin-api/metrics.d.ts +2 -1
- package/dist/lib/routes/admin-api/metrics.js +2 -1
- package/dist/lib/routes/admin-api/metrics.js.map +1 -1
- package/dist/lib/routes/admin-api/project/api-token.d.ts +2 -1
- package/dist/lib/routes/admin-api/project/api-token.js +12 -3
- package/dist/lib/routes/admin-api/project/api-token.js.map +1 -1
- package/dist/lib/routes/admin-api/project/environments.d.ts +2 -1
- package/dist/lib/routes/admin-api/project/environments.js +3 -1
- package/dist/lib/routes/admin-api/project/environments.js.map +1 -1
- package/dist/lib/routes/admin-api/project/index.d.ts +2 -1
- package/dist/lib/routes/admin-api/project/index.js +31 -0
- package/dist/lib/routes/admin-api/project/index.js.map +1 -1
- package/dist/lib/routes/admin-api/strategy.d.ts +1 -1
- package/dist/lib/routes/admin-api/strategy.js.map +1 -1
- package/dist/lib/routes/client-api/metrics.js +14 -8
- package/dist/lib/routes/client-api/metrics.js.map +1 -1
- package/dist/lib/routes/client-api/metrics.test.js +27 -0
- package/dist/lib/routes/client-api/metrics.test.js.map +1 -1
- package/dist/lib/routes/controller.d.ts +1 -1
- package/dist/lib/routes/controller.js +17 -10
- package/dist/lib/routes/controller.js.map +1 -1
- package/dist/lib/routes/proxy-api/index.js +5 -0
- package/dist/lib/routes/proxy-api/index.js.map +1 -1
- package/dist/lib/schema/role-schema.js +3 -1
- package/dist/lib/schema/role-schema.js.map +1 -1
- package/dist/lib/schema/role-schema.test.js +1 -1
- package/dist/lib/schema/role-schema.test.js.map +1 -1
- package/dist/lib/segments/segment-service-interface.d.ts +1 -1
- package/dist/lib/services/access-service.d.ts +29 -11
- package/dist/lib/services/access-service.js +53 -10
- package/dist/lib/services/access-service.js.map +1 -1
- package/dist/lib/services/access-service.test.js +2 -1
- package/dist/lib/services/access-service.test.js.map +1 -1
- package/dist/lib/services/addon-service.js +4 -2
- package/dist/lib/services/addon-service.js.map +1 -1
- package/dist/lib/services/addon-service.test.js +65 -0
- package/dist/lib/services/addon-service.test.js.map +1 -1
- package/dist/lib/services/client-metrics/instance-service.d.ts +5 -2
- package/dist/lib/services/client-metrics/instance-service.js +22 -3
- package/dist/lib/services/client-metrics/instance-service.js.map +1 -1
- package/dist/lib/services/client-metrics/instance-service.test.js +5 -4
- package/dist/lib/services/client-metrics/instance-service.test.js.map +1 -1
- package/dist/lib/services/context-service.d.ts +6 -2
- package/dist/lib/services/context-service.js +16 -2
- package/dist/lib/services/context-service.js.map +1 -1
- package/dist/lib/services/feature-service-potentially-stale.test.js +1 -1
- package/dist/lib/services/feature-service-potentially-stale.test.js.map +1 -1
- package/dist/lib/services/feature-toggle-service.d.ts +20 -7
- package/dist/lib/services/feature-toggle-service.js +109 -41
- package/dist/lib/services/feature-toggle-service.js.map +1 -1
- package/dist/lib/services/group-service.d.ts +4 -4
- package/dist/lib/services/group-service.js +17 -16
- package/dist/lib/services/group-service.js.map +1 -1
- package/dist/lib/services/index.d.ts +3 -2
- package/dist/lib/services/index.js +31 -17
- package/dist/lib/services/index.js.map +1 -1
- package/dist/lib/services/project-schema.js +9 -1
- package/dist/lib/services/project-schema.js.map +1 -1
- package/dist/lib/services/project-service.d.ts +16 -12
- package/dist/lib/services/project-service.js +127 -17
- package/dist/lib/services/project-service.js.map +1 -1
- package/dist/lib/services/scheduler-service.d.ts +1 -1
- package/dist/lib/services/scheduler-service.js +3 -3
- package/dist/lib/services/scheduler-service.js.map +1 -1
- package/dist/lib/services/scheduler-service.test.js +15 -15
- package/dist/lib/services/scheduler-service.test.js.map +1 -1
- package/dist/lib/services/segment-service.d.ts +4 -2
- package/dist/lib/services/segment-service.js +17 -10
- package/dist/lib/services/segment-service.js.map +1 -1
- package/dist/lib/services/state-service.test.js +13 -3
- package/dist/lib/services/state-service.test.js.map +1 -1
- package/dist/lib/services/version-service.test.js +3 -0
- package/dist/lib/services/version-service.test.js.map +1 -1
- package/dist/lib/types/events.d.ts +61 -1
- package/dist/lib/types/events.js +66 -4
- package/dist/lib/types/events.js.map +1 -1
- package/dist/lib/types/experimental.d.ts +1 -1
- package/dist/lib/types/experimental.js +9 -5
- package/dist/lib/types/experimental.js.map +1 -1
- package/dist/lib/types/group.d.ts +2 -2
- package/dist/lib/types/model.d.ts +31 -2
- package/dist/lib/types/model.js.map +1 -1
- package/dist/lib/types/no-auth-user.d.ts +1 -0
- package/dist/lib/types/no-auth-user.js +3 -1
- package/dist/lib/types/no-auth-user.js.map +1 -1
- package/dist/lib/types/option.d.ts +7 -0
- package/dist/lib/types/services.d.ts +6 -1
- package/dist/lib/types/stores/access-store.d.ts +23 -4
- package/dist/lib/types/stores/feature-strategies-store.d.ts +2 -1
- package/dist/lib/types/stores/group-store.d.ts +4 -2
- package/dist/lib/types/stores/project-stats-store-type.d.ts +2 -0
- package/dist/lib/types/stores/project-store.d.ts +7 -14
- package/dist/lib/types/stores/strategy-store.d.ts +3 -17
- package/dist/lib/types/stores.d.ts +5 -1
- package/dist/lib/util/findDuplicates.d.ts +1 -0
- package/dist/lib/util/findDuplicates.js +18 -0
- package/dist/lib/util/findDuplicates.js.map +1 -0
- package/dist/lib/util/findDuplicates.test.d.ts +1 -0
- package/dist/lib/util/findDuplicates.test.js +23 -0
- package/dist/lib/util/findDuplicates.test.js.map +1 -0
- package/dist/migrations/20230830121352-update-client-applications-usage-table.d.ts +2 -0
- package/dist/migrations/20230830121352-update-client-applications-usage-table.js +16 -0
- package/dist/migrations/20230830121352-update-client-applications-usage-table.js.map +1 -0
- package/dist/migrations/20230905122605-add-feature-naming-description.d.ts +2 -0
- package/dist/migrations/20230905122605-add-feature-naming-description.js +13 -0
- package/dist/migrations/20230905122605-add-feature-naming-description.js.map +1 -0
- package/dist/migrations/20230919104006-dependent-features.d.ts +2 -0
- package/dist/migrations/20230919104006-dependent-features.js +21 -0
- package/dist/migrations/20230919104006-dependent-features.js.map +1 -0
- package/dist/migrations/20230927071830-reset-pnps-feedback.d.ts +2 -0
- package/dist/migrations/20230927071830-reset-pnps-feedback.js +10 -0
- package/dist/migrations/20230927071830-reset-pnps-feedback.js.map +1 -0
- package/dist/server-dev.js +7 -4
- package/dist/server-dev.js.map +1 -1
- package/dist/test/e2e/api/admin/addon.e2e.test.js +0 -1
- package/dist/test/e2e/api/admin/addon.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/api-token.auth.e2e.test.js +8 -12
- package/dist/test/e2e/api/admin/api-token.auth.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/event.e2e.test.js +9 -2
- package/dist/test/e2e/api/admin/event.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/metrics.e2e.test.js +2 -10
- package/dist/test/e2e/api/admin/metrics.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/project/environments.e2e.test.js +8 -0
- package/dist/test/e2e/api/admin/project/environments.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/project/features.e2e.test.js +41 -15
- package/dist/test/e2e/api/admin/project/features.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/project/project.api.tokens.e2e.test.js +30 -3
- package/dist/test/e2e/api/admin/project/project.api.tokens.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/segment.e2e.test.d.ts +1 -0
- package/dist/test/e2e/api/admin/segment.e2e.test.js +272 -0
- package/dist/test/e2e/api/admin/segment.e2e.test.js.map +1 -0
- package/dist/test/e2e/api/admin/state.e2e.test.js +0 -11
- package/dist/test/e2e/api/admin/state.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/strategy.e2e.test.js +1 -1
- package/dist/test/e2e/api/client/feature.e2e.test.js +27 -3
- package/dist/test/e2e/api/client/feature.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/client/feature.token.access.e2e.test.js +2 -2
- package/dist/test/e2e/api/client/feature.token.access.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/client/segment.e2e.test.js +1 -1
- package/dist/test/e2e/api/client/segment.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/proxy/proxy.e2e.test.js +34 -9
- package/dist/test/e2e/api/proxy/proxy.e2e.test.js.map +1 -1
- package/dist/test/e2e/helpers/app.utils.d.ts +6 -0
- package/dist/test/e2e/helpers/app.utils.js +16 -0
- package/dist/test/e2e/helpers/app.utils.js.map +1 -0
- package/dist/test/e2e/helpers/database.json +24 -0
- package/dist/test/e2e/services/access-service.e2e.test.js +549 -135
- package/dist/test/e2e/services/access-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/api-token-service.e2e.test.js +4 -2
- package/dist/test/e2e/services/api-token-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/client-metrics-service.e2e.test.js +2 -1
- package/dist/test/e2e/services/client-metrics-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/feature-toggle-service-v2.e2e.test.js +38 -5
- package/dist/test/e2e/services/feature-toggle-service-v2.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/group-service.e2e.test.js +16 -11
- package/dist/test/e2e/services/group-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/playground-service.test.js +5 -2
- package/dist/test/e2e/services/playground-service.test.js.map +1 -1
- package/dist/test/e2e/services/project-health-service.e2e.test.js +4 -2
- package/dist/test/e2e/services/project-health-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/project-service.e2e.test.js +242 -60
- package/dist/test/e2e/services/project-service.e2e.test.js.map +1 -1
- package/dist/test/fixtures/access-service-mock.d.ts +3 -4
- package/dist/test/fixtures/access-service-mock.js.map +1 -1
- package/dist/test/fixtures/fake-access-store.d.ts +15 -5
- package/dist/test/fixtures/fake-access-store.js +30 -3
- package/dist/test/fixtures/fake-access-store.js.map +1 -1
- package/dist/test/fixtures/fake-group-store.d.ts +4 -2
- package/dist/test/fixtures/fake-group-store.js +3 -0
- package/dist/test/fixtures/fake-group-store.js.map +1 -1
- package/dist/test/fixtures/fake-project-stats-store.d.ts +1 -0
- package/dist/test/fixtures/fake-project-stats-store.js +3 -0
- package/dist/test/fixtures/fake-project-stats-store.js.map +1 -1
- package/dist/test/fixtures/fake-project-store.d.ts +2 -1
- package/dist/test/fixtures/fake-project-store.js +3 -0
- package/dist/test/fixtures/fake-project-store.js.map +1 -1
- package/dist/test/fixtures/no-logger.d.ts +2 -1
- package/dist/test/fixtures/no-logger.js +8 -4
- package/dist/test/fixtures/no-logger.js.map +1 -1
- package/dist/test/fixtures/store.js +3 -0
- package/dist/test/fixtures/store.js.map +1 -1
- package/frontend/README.md +7 -1
- package/frontend/build/index.html +2 -2
- package/frontend/build/static/{AdvancedPlayground-1748fcdd.js → AdvancedPlayground-20059178.js} +11 -11
- package/frontend/build/static/CreateProject-6955728f.js +4 -0
- package/frontend/build/static/{Error-cbce6b64.js → Error-f56339ab.js} +1 -1
- package/frontend/build/static/FeatureArchiveDialog-33dc3a5b.js +10 -0
- package/frontend/build/static/{FeatureMetricsChart-8fd8a304.js → FeatureMetricsChart-5ad514bc.js} +2 -2
- package/frontend/build/static/FeatureViewLazyExport-85a68ed0.js +7 -0
- package/frontend/build/static/LazyAdminExport-e2677758.js +35 -0
- package/frontend/build/static/LazyProjectExport-969bb54e.js +24 -0
- package/frontend/build/static/Logo-android-218bddbb.svg +1 -0
- package/frontend/build/static/Logo-flutter-cc3c706f.svg +1 -0
- package/frontend/build/static/Logo-go-02475b3d.svg +1 -0
- package/frontend/build/static/Logo-java-6e556b26.svg +1 -0
- package/frontend/build/static/Logo-javascript-caebc06e.svg +1 -0
- package/frontend/build/static/Logo-net-0a33abee.svg +1 -0
- package/frontend/build/static/Logo-node-318ed025.svg +1 -0
- package/frontend/build/static/Logo-php-201f18c3.svg +1 -0
- package/frontend/build/static/Logo-python-4305760e.svg +1 -0
- package/frontend/build/static/Logo-react-18e98687.svg +1 -0
- package/frontend/build/static/Logo-ruby-58f46832.svg +1 -0
- package/frontend/build/static/Logo-rust-c83a80f9.svg +1 -0
- package/frontend/build/static/Logo-svelte-97dcb624.svg +1 -0
- package/frontend/build/static/Logo-swift-315f842b.svg +5 -0
- package/frontend/build/static/Logo-vue-0de73099.svg +1 -0
- package/frontend/build/static/{NetworkOverview-349a7bdd.js → NetworkOverview-894877e6.js} +2 -2
- package/frontend/build/static/{NetworkTraffic-60478e50.js → NetworkTraffic-81eff1ae.js} +1 -1
- package/frontend/build/static/ReactJSONEditor-59c8a094.js +129 -0
- package/frontend/build/static/RoleCell-35857d41.js +1 -0
- package/frontend/build/static/{StrategyItemContainer-a4caeace.js → StrategyItemContainer-b250f2d4.js} +1 -1
- package/frontend/build/static/{chartjs-adapter-date-fns.esm-03d2fbea.js → chartjs-adapter-date-fns.esm-c51fe022.js} +1 -1
- package/frontend/build/static/cr-db7653ac.png +0 -0
- package/frontend/build/static/datadog-543762b6.svg +5 -0
- package/frontend/build/static/edge-daisy-chaining-012bfdef.svg +48 -0
- package/frontend/build/static/edge-mode-5d25949b.svg +22 -0
- package/frontend/build/static/edge-offline-f6a0f761.svg +19 -0
- package/frontend/build/static/{flowchart-elk-definition-170a3958-fc100c77.js → flowchart-elk-definition-170a3958-a8c4a86a.js} +1 -1
- package/frontend/build/static/{index-866f9bf9.js → index-0515f416.js} +1 -1
- package/frontend/build/static/index-942e9eeb.js +463 -0
- package/frontend/build/static/{index-3c63138f.js → index-a59b2d65.js} +1 -1
- package/frontend/build/static/{is_dark-31c253e9.js → is_dark-464961a8.js} +1 -1
- package/frontend/build/static/jira-1abe7cbf.svg +17 -0
- package/frontend/build/static/{mindmap-definition-44684416-398682f9.js → mindmap-definition-44684416-3a71a9a5.js} +1 -1
- package/frontend/build/static/slack-36ce798a.svg +18 -0
- package/frontend/build/static/style-97d3ef98.css +1 -0
- package/frontend/build/static/teams-4e30b51f.svg +45 -0
- package/frontend/build/static/{timeline-definition-8e5a9bc6-04a0ae08.js → timeline-definition-8e5a9bc6-da4ebc88.js} +1 -1
- package/frontend/build/static/{unknownify-b8618d88.js → unknownify-3563456b.js} +1 -1
- package/frontend/build/static/unleash-integration-949d8966.svg +1 -0
- package/frontend/build/static/webhooks-b1b44207.svg +16 -0
- package/frontend/package.json +20 -18
- package/package.json +23 -23
- package/dist/lib/services/instance-stats-service.js.map +0 -1
- package/dist/lib/services/instance-stats-service.test.js.map +0 -1
- package/frontend/build/static/CreateProject-972fa820.js +0 -4
- package/frontend/build/static/FeatureArchiveDialog-8a281845.js +0 -10
- package/frontend/build/static/FeatureViewLazyExport-a215d53b.js +0 -7
- package/frontend/build/static/LazyAdminExport-ba7d55ca.js +0 -35
- package/frontend/build/static/LazyProjectExport-12bccd40.js +0 -17
- package/frontend/build/static/RoleCell-144e7eca.js +0 -1
- package/frontend/build/static/datadog-591b6a73.svg +0 -1
- package/frontend/build/static/index-17d74ac9.js +0 -454
- package/frontend/build/static/slack-c0af31c6.svg +0 -1
- package/frontend/build/static/style-770afaee.css +0 -1
- package/frontend/build/static/teams-62e72076.svg +0 -26
- package/frontend/build/static/webhooks-ffa904ac.svg +0 -1
- /package/dist/lib/{services/instance-stats-service.test.d.ts → db/access-store.test.d.ts} +0 -0
- /package/frontend/build/static/{jira-d9eb9af9.svg → jira-comment-d9eb9af9.svg} +0 -0
|
@@ -4,10 +4,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const types_1 = require("../types");
|
|
7
|
+
const error_1 = require("../error");
|
|
7
8
|
const bad_data_error_1 = __importDefault(require("../error/bad-data-error"));
|
|
8
9
|
const name_exists_error_1 = __importDefault(require("../error/name-exists-error"));
|
|
9
10
|
const invalid_operation_error_1 = __importDefault(require("../error/invalid-operation-error"));
|
|
10
|
-
const error_1 = require("../error");
|
|
11
11
|
const feature_schema_1 = require("../schema/feature-schema");
|
|
12
12
|
const notfound_error_1 = __importDefault(require("../error/notfound-error"));
|
|
13
13
|
const util_1 = require("../util");
|
|
@@ -15,13 +15,15 @@ const fast_json_patch_1 = require("fast-json-patch");
|
|
|
15
15
|
const constraint_types_1 = require("../util/validators/constraint-types");
|
|
16
16
|
const helpers_1 = require("../features/playground/feature-evaluator/helpers");
|
|
17
17
|
const unique_1 = require("../util/unique");
|
|
18
|
+
const feature_naming_validation_1 = require("../features/feature-naming-pattern/feature-naming-validation");
|
|
18
19
|
const oneOf = (values, match) => {
|
|
19
20
|
return values.some((value) => value === match);
|
|
20
21
|
};
|
|
21
22
|
class FeatureToggleService {
|
|
22
|
-
constructor({ featureStrategiesStore, featureToggleStore, featureToggleClientStore, projectStore, eventStore, featureTagStore, featureEnvironmentStore, contextFieldStore, }, { getLogger, flagResolver, }, segmentService, accessService, changeRequestAccessReadModel) {
|
|
23
|
+
constructor({ featureStrategiesStore, featureToggleStore, featureToggleClientStore, projectStore, eventStore, featureTagStore, featureEnvironmentStore, contextFieldStore, strategyStore, }, { getLogger, flagResolver, }, segmentService, accessService, changeRequestAccessReadModel, privateProjectChecker) {
|
|
23
24
|
this.logger = getLogger('services/feature-toggle-service.ts');
|
|
24
25
|
this.featureStrategiesStore = featureStrategiesStore;
|
|
26
|
+
this.strategyStore = strategyStore;
|
|
25
27
|
this.featureToggleStore = featureToggleStore;
|
|
26
28
|
this.featureToggleClientStore = featureToggleClientStore;
|
|
27
29
|
this.tagStore = featureTagStore;
|
|
@@ -33,6 +35,7 @@ class FeatureToggleService {
|
|
|
33
35
|
this.accessService = accessService;
|
|
34
36
|
this.flagResolver = flagResolver;
|
|
35
37
|
this.changeRequestAccessReadModel = changeRequestAccessReadModel;
|
|
38
|
+
this.privateProjectChecker = privateProjectChecker;
|
|
36
39
|
}
|
|
37
40
|
async validateFeaturesContext(featureNames, projectId) {
|
|
38
41
|
const features = await this.featureToggleStore.getAllByNames(featureNames);
|
|
@@ -51,16 +54,16 @@ class FeatureToggleService {
|
|
|
51
54
|
: `, but there's a feature with that name in project "${id}"`}`);
|
|
52
55
|
}
|
|
53
56
|
}
|
|
54
|
-
validateUpdatedProperties({ featureName, projectId },
|
|
55
|
-
if (
|
|
57
|
+
validateUpdatedProperties({ featureName, projectId }, existingStrategy) {
|
|
58
|
+
if (existingStrategy.projectId !== projectId) {
|
|
56
59
|
throw new invalid_operation_error_1.default('You can not change the projectId for an activation strategy.');
|
|
57
60
|
}
|
|
58
|
-
if (
|
|
61
|
+
if (existingStrategy.featureName !== featureName) {
|
|
59
62
|
throw new invalid_operation_error_1.default('You can not change the featureName for an activation strategy.');
|
|
60
63
|
}
|
|
61
|
-
if (
|
|
62
|
-
'stickiness' in
|
|
63
|
-
|
|
64
|
+
if (existingStrategy.parameters &&
|
|
65
|
+
'stickiness' in existingStrategy.parameters &&
|
|
66
|
+
existingStrategy.parameters.stickiness === '') {
|
|
64
67
|
throw new invalid_operation_error_1.default('You can not have an empty string for stickiness.');
|
|
65
68
|
}
|
|
66
69
|
}
|
|
@@ -73,6 +76,14 @@ class FeatureToggleService {
|
|
|
73
76
|
}));
|
|
74
77
|
}
|
|
75
78
|
}
|
|
79
|
+
async validateStrategyType(strategyName) {
|
|
80
|
+
if (strategyName !== undefined) {
|
|
81
|
+
const exists = await this.strategyStore.exists(strategyName);
|
|
82
|
+
if (!exists) {
|
|
83
|
+
throw new bad_data_error_1.default(`Could not find strategy type with name ${strategyName}`);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
76
87
|
async validateConstraints(constraints) {
|
|
77
88
|
const validations = constraints.map((constraint) => {
|
|
78
89
|
return this.validateConstraint(constraint);
|
|
@@ -134,11 +145,10 @@ class FeatureToggleService {
|
|
|
134
145
|
disabled: featureStrategy.disabled,
|
|
135
146
|
constraints: featureStrategy.constraints || [],
|
|
136
147
|
parameters: featureStrategy.parameters,
|
|
148
|
+
variants: featureStrategy.variants || [],
|
|
149
|
+
sortOrder: featureStrategy.sortOrder,
|
|
137
150
|
segments: segments.map((segment) => segment.id) ?? [],
|
|
138
151
|
};
|
|
139
|
-
if (this.flagResolver.isEnabled('strategyVariant')) {
|
|
140
|
-
result.sortOrder = featureStrategy.sortOrder;
|
|
141
|
-
}
|
|
142
152
|
return result;
|
|
143
153
|
}
|
|
144
154
|
async updateStrategiesSortOrder(context, sortOrders, createdBy, user) {
|
|
@@ -160,29 +170,27 @@ class FeatureToggleService {
|
|
|
160
170
|
await Promise.all(sortOrders.map(async ({ id, sortOrder }) => {
|
|
161
171
|
await this.featureStrategiesStore.updateSortOrder(id, sortOrder);
|
|
162
172
|
}));
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
await this.eventStore.store(event);
|
|
185
|
-
}
|
|
173
|
+
const newOrder = (await this.getStrategiesForEnvironment(project, featureName, environment))
|
|
174
|
+
.sort((strategy1, strategy2) => {
|
|
175
|
+
if (typeof strategy1.sortOrder === 'number' &&
|
|
176
|
+
typeof strategy2.sortOrder === 'number') {
|
|
177
|
+
return strategy1.sortOrder - strategy2.sortOrder;
|
|
178
|
+
}
|
|
179
|
+
return 0;
|
|
180
|
+
})
|
|
181
|
+
.map((strategy) => strategy.id);
|
|
182
|
+
const eventData = { strategyIds: newOrder };
|
|
183
|
+
const tags = await this.tagStore.getAllTagsForFeature(featureName);
|
|
184
|
+
const event = new types_1.StrategiesOrderChangedEvent({
|
|
185
|
+
featureName,
|
|
186
|
+
environment,
|
|
187
|
+
project,
|
|
188
|
+
createdBy,
|
|
189
|
+
preData: eventPreData,
|
|
190
|
+
data: eventData,
|
|
191
|
+
tags: tags,
|
|
192
|
+
});
|
|
193
|
+
await this.eventStore.store(event);
|
|
186
194
|
}
|
|
187
195
|
async createStrategy(strategyConfig, context, createdBy, user) {
|
|
188
196
|
await this.stopWhenChangeRequestsEnabled(context.projectId, context.environment, user);
|
|
@@ -191,6 +199,7 @@ class FeatureToggleService {
|
|
|
191
199
|
async unprotectedCreateStrategy(strategyConfig, context, createdBy) {
|
|
192
200
|
const { featureName, projectId, environment } = context;
|
|
193
201
|
await this.validateFeatureBelongsToProject(context);
|
|
202
|
+
await this.validateStrategyType(strategyConfig.name);
|
|
194
203
|
await this.validateProjectCanAccessSegments(projectId, strategyConfig.segments);
|
|
195
204
|
if (strategyConfig.constraints &&
|
|
196
205
|
strategyConfig.constraints.length > 0) {
|
|
@@ -270,6 +279,7 @@ class FeatureToggleService {
|
|
|
270
279
|
const { projectId, environment, featureName } = context;
|
|
271
280
|
const existingStrategy = await this.featureStrategiesStore.get(id);
|
|
272
281
|
this.validateUpdatedProperties(context, existingStrategy);
|
|
282
|
+
await this.validateStrategyType(updates.name);
|
|
273
283
|
await this.validateProjectCanAccessSegments(projectId, updates.segments);
|
|
274
284
|
if (existingStrategy.id === id) {
|
|
275
285
|
if (updates.constraints && updates.constraints.length > 0) {
|
|
@@ -431,7 +441,7 @@ class FeatureToggleService {
|
|
|
431
441
|
}
|
|
432
442
|
async getClientFeatures(query) {
|
|
433
443
|
const result = await this.featureToggleClientStore.getClient(query || {});
|
|
434
|
-
return result.map(({ name, type, enabled, project, stale, strategies, variants, description, impressionData, }) => ({
|
|
444
|
+
return result.map(({ name, type, enabled, project, stale, strategies, variants, description, impressionData, dependencies, }) => ({
|
|
435
445
|
name,
|
|
436
446
|
type,
|
|
437
447
|
enabled,
|
|
@@ -441,6 +451,7 @@ class FeatureToggleService {
|
|
|
441
451
|
variants,
|
|
442
452
|
description,
|
|
443
453
|
impressionData,
|
|
454
|
+
dependencies,
|
|
444
455
|
}));
|
|
445
456
|
}
|
|
446
457
|
async getPlaygroundFeatures(query) {
|
|
@@ -456,11 +467,18 @@ class FeatureToggleService {
|
|
|
456
467
|
* @returns
|
|
457
468
|
*/
|
|
458
469
|
async getFeatureToggles(query, userId, archived = false) {
|
|
459
|
-
|
|
470
|
+
const features = await this.featureToggleClientStore.getAdmin({
|
|
460
471
|
featureQuery: query,
|
|
461
472
|
userId,
|
|
462
473
|
archived,
|
|
463
474
|
});
|
|
475
|
+
if (this.flagResolver.isEnabled('privateProjects') && userId) {
|
|
476
|
+
const projectAccess = await this.privateProjectChecker.getUserAccessibleProjects(userId);
|
|
477
|
+
return projectAccess.mode === 'all'
|
|
478
|
+
? features
|
|
479
|
+
: features.filter((f) => projectAccess.projects.includes(f.project));
|
|
480
|
+
}
|
|
481
|
+
return features;
|
|
464
482
|
}
|
|
465
483
|
async getFeatureOverview(params) {
|
|
466
484
|
return this.featureStrategiesStore.getFeatureOverview(params);
|
|
@@ -471,6 +489,7 @@ class FeatureToggleService {
|
|
|
471
489
|
async createFeatureToggle(projectId, value, createdBy, isValidated = false) {
|
|
472
490
|
this.logger.info(`${createdBy} creates feature toggle ${value.name}`);
|
|
473
491
|
await this.validateName(value.name);
|
|
492
|
+
await this.validateFeatureFlagNameAgainstPattern(value.name, projectId);
|
|
474
493
|
const exists = await this.projectStore.hasProject(projectId);
|
|
475
494
|
if (await this.projectStore.isFeatureLimitReached(projectId)) {
|
|
476
495
|
throw new invalid_operation_error_1.default('You have reached the maximum number of feature toggles for this project.');
|
|
@@ -502,6 +521,40 @@ class FeatureToggleService {
|
|
|
502
521
|
}
|
|
503
522
|
throw new notfound_error_1.default(`Project with id ${projectId} does not exist`);
|
|
504
523
|
}
|
|
524
|
+
async checkFeatureFlagNamesAgainstProjectPattern(projectId, featureNames) {
|
|
525
|
+
if (this.flagResolver.isEnabled('featureNamingPattern')) {
|
|
526
|
+
const project = await this.projectStore.get(projectId);
|
|
527
|
+
const patternData = project.featureNaming;
|
|
528
|
+
const namingPattern = patternData?.pattern;
|
|
529
|
+
if (namingPattern) {
|
|
530
|
+
const result = (0, feature_naming_validation_1.checkFeatureFlagNamesAgainstPattern)(featureNames, namingPattern);
|
|
531
|
+
if (result.state === 'invalid') {
|
|
532
|
+
return { ...result, featureNaming: patternData };
|
|
533
|
+
}
|
|
534
|
+
}
|
|
535
|
+
}
|
|
536
|
+
return { state: 'valid' };
|
|
537
|
+
}
|
|
538
|
+
async validateFeatureFlagNameAgainstPattern(featureName, projectId) {
|
|
539
|
+
if (projectId) {
|
|
540
|
+
const result = await this.checkFeatureFlagNamesAgainstProjectPattern(projectId, [featureName]);
|
|
541
|
+
if (result.state === 'invalid') {
|
|
542
|
+
const namingPattern = result.featureNaming.pattern;
|
|
543
|
+
const namingExample = result.featureNaming.example;
|
|
544
|
+
const namingDescription = result.featureNaming.description;
|
|
545
|
+
const error = `The feature flag name "${featureName}" does not match the project's naming pattern: "${namingPattern}".`;
|
|
546
|
+
const example = namingExample
|
|
547
|
+
? ` Here's an example of a name that does match the pattern: "${namingExample}"."`
|
|
548
|
+
: '';
|
|
549
|
+
const description = namingDescription
|
|
550
|
+
? ` The pattern's description is: "${namingDescription}"`
|
|
551
|
+
: '';
|
|
552
|
+
throw new error_1.PatternError(`${error}${example}${description}`, [
|
|
553
|
+
`The flag name does not match the pattern.`,
|
|
554
|
+
]);
|
|
555
|
+
}
|
|
556
|
+
}
|
|
557
|
+
}
|
|
505
558
|
async cloneFeatureToggle(featureName, projectId, newFeatureName, replaceGroupId = true, // eslint-disable-line
|
|
506
559
|
userName) {
|
|
507
560
|
const changeRequestEnabled = await this.changeRequestAccessReadModel.isChangeRequestsEnabledForProject(projectId);
|
|
@@ -573,10 +626,11 @@ class FeatureToggleService {
|
|
|
573
626
|
name: strategy.strategyName,
|
|
574
627
|
constraints: strategy.constraints || [],
|
|
575
628
|
parameters: strategy.parameters,
|
|
629
|
+
variants: strategy.variants || [],
|
|
576
630
|
segments: [],
|
|
577
631
|
title: strategy.title,
|
|
578
632
|
disabled: strategy.disabled,
|
|
579
|
-
|
|
633
|
+
sortOrder: strategy.sortOrder,
|
|
580
634
|
};
|
|
581
635
|
if (segments && segments.length > 0) {
|
|
582
636
|
result = {
|
|
@@ -855,7 +909,7 @@ class FeatureToggleService {
|
|
|
855
909
|
})));
|
|
856
910
|
}
|
|
857
911
|
// TODO: add project id.
|
|
858
|
-
async
|
|
912
|
+
async reviveFeature(featureName, createdBy) {
|
|
859
913
|
const toggle = await this.featureToggleStore.revive(featureName);
|
|
860
914
|
const tags = await this.tagStore.getAllTagsForFeature(featureName);
|
|
861
915
|
await this.eventStore.store(new types_1.FeatureRevivedEvent({
|
|
@@ -865,8 +919,18 @@ class FeatureToggleService {
|
|
|
865
919
|
tags,
|
|
866
920
|
}));
|
|
867
921
|
}
|
|
868
|
-
async getMetadataForAllFeatures(archived) {
|
|
869
|
-
|
|
922
|
+
async getMetadataForAllFeatures(archived, userId) {
|
|
923
|
+
const features = await this.featureToggleStore.getAll({ archived });
|
|
924
|
+
if (this.flagResolver.isEnabled('privateProjects')) {
|
|
925
|
+
const projectAccess = await this.privateProjectChecker.getUserAccessibleProjects(userId);
|
|
926
|
+
if (projectAccess.mode === 'all') {
|
|
927
|
+
return features;
|
|
928
|
+
}
|
|
929
|
+
else {
|
|
930
|
+
return features.filter((f) => projectAccess.projects.includes(f.project));
|
|
931
|
+
}
|
|
932
|
+
}
|
|
933
|
+
return features;
|
|
870
934
|
}
|
|
871
935
|
async getMetadataForAllFeaturesByProjectId(archived, project) {
|
|
872
936
|
return this.featureToggleStore.getAll({ archived, project });
|
|
@@ -886,7 +950,7 @@ class FeatureToggleService {
|
|
|
886
950
|
}
|
|
887
951
|
async updateVariantsOnEnv(featureName, project, environment, newVariants, user) {
|
|
888
952
|
const oldVariants = await this.getVariantsForEnv(featureName, environment);
|
|
889
|
-
const { newDocument } = await (0, fast_json_patch_1.applyPatch)(oldVariants, newVariants);
|
|
953
|
+
const { newDocument } = await (0, fast_json_patch_1.applyPatch)((0, fast_json_patch_1.deepClone)(oldVariants), newVariants);
|
|
890
954
|
return this.crProtectedSaveVariantsOnEnv(project, featureName, environment, newDocument, user, oldVariants);
|
|
891
955
|
}
|
|
892
956
|
async saveVariants(featureName, project, newVariants, createdBy) {
|
|
@@ -914,6 +978,7 @@ class FeatureToggleService {
|
|
|
914
978
|
environment,
|
|
915
979
|
})).variants ||
|
|
916
980
|
[];
|
|
981
|
+
const tags = await this.tagStore.getAllTagsForFeature(featureName);
|
|
917
982
|
await this.eventStore.store(new types_1.EnvironmentVariantEvent({
|
|
918
983
|
featureName,
|
|
919
984
|
environment,
|
|
@@ -921,6 +986,7 @@ class FeatureToggleService {
|
|
|
921
986
|
createdBy: user,
|
|
922
987
|
oldVariants: theOldVariants,
|
|
923
988
|
newVariants: fixedVariants,
|
|
989
|
+
tags,
|
|
924
990
|
}));
|
|
925
991
|
await this.featureEnvironmentStore.setVariantsToFeatureEnvironments(featureName, [environment], fixedVariants);
|
|
926
992
|
return fixedVariants;
|
|
@@ -946,6 +1012,7 @@ class FeatureToggleService {
|
|
|
946
1012
|
});
|
|
947
1013
|
oldVariants[env] = featureEnv.variants || [];
|
|
948
1014
|
}
|
|
1015
|
+
const tags = await this.tagStore.getAllTagsForFeature(featureName);
|
|
949
1016
|
await this.eventStore.batchStore(environments.map((environment) => new types_1.EnvironmentVariantEvent({
|
|
950
1017
|
featureName,
|
|
951
1018
|
environment,
|
|
@@ -953,6 +1020,7 @@ class FeatureToggleService {
|
|
|
953
1020
|
createdBy: user,
|
|
954
1021
|
oldVariants: oldVariants[environment],
|
|
955
1022
|
newVariants: fixedVariants,
|
|
1023
|
+
tags,
|
|
956
1024
|
})));
|
|
957
1025
|
await this.featureEnvironmentStore.setVariantsToFeatureEnvironments(featureName, environments, fixedVariants);
|
|
958
1026
|
return fixedVariants;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature-toggle-service.js","sourceRoot":"","sources":["../../../src/lib/services/feature-toggle-service.ts"],"names":[],"mappings":";;;;;AAAA,oCA4CkB;AAElB,6EAAmD;AACnD,mFAAyD;AACzD,+FAAqE;AACrE,oCAKkB;AAClB,6DAKkC;AAClC,6EAAoD;AAKpD,kCAMiB;AACjB,qDAAmE;AACnE,0EAM6C;AAG7C,8EAG0D;AAI1D,2CAAwC;AAqBxC,MAAM,KAAK,GAAG,CAAC,MAAgB,EAAE,KAAa,EAAE,EAAE;IAC9C,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF,MAAM,oBAAoB;IA2BtB,YACI,EACI,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,YAAY,EACZ,UAAU,EACV,eAAe,EACf,uBAAuB,EACvB,iBAAiB,GAWpB,EACD,EACI,SAAS,EACT,YAAY,GACqC,EACrD,cAA+B,EAC/B,aAA4B,EAC5B,4BAA2D;QAE3D,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,oCAAoC,CAAC,CAAC;QAC9D,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACrD,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;QACzD,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACvD,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,4BAA4B,GAAG,4BAA4B,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,uBAAuB,CACzB,YAAsB,EACtB,SAAiB;QAEjB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,aAAa,CACxD,YAAY,CACf,CAAC;QAEF,MAAM,eAAe,GAAG,IAAA,eAAM,EAC1B,QAAQ;aACH,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;aACjC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,KAAK,SAAS,CAAC,CAClD,CAAC;QACF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5B,MAAM,IAAI,iCAAqB,CAC3B,4FAA4F,eAAe,CAAC,IAAI,CAC5G,GAAG,CACN,2DAA2D,SAAS,KAAK,CAC7E,CAAC;SACL;IACL,CAAC;IAED,KAAK,CAAC,+BAA+B,CAAC,EAClC,WAAW,EACX,SAAS,GACK;QACd,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QAEnE,IAAI,EAAE,KAAK,SAAS,EAAE;YAClB,MAAM,IAAI,wBAAa,CACnB,6BAA6B,WAAW,iBAAiB,SAAS,IAC9D,EAAE,KAAK,SAAS;gBACZ,CAAC,CAAC,GAAG;gBACL,CAAC,CAAC,sDAAsD,EAAE,GAClE,EAAE,CACL,CAAC;SACL;IACL,CAAC;IAED,yBAAyB,CACrB,EAAE,WAAW,EAAE,SAAS,EAAmB,EAC3C,QAA0B;QAE1B,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE;YAClC,MAAM,IAAI,iCAAqB,CAC3B,8DAA8D,CACjE,CAAC;SACL;QAED,IAAI,QAAQ,CAAC,WAAW,KAAK,WAAW,EAAE;YACtC,MAAM,IAAI,iCAAqB,CAC3B,gEAAgE,CACnE,CAAC;SACL;QAED,IACI,QAAQ,CAAC,UAAU;YACnB,YAAY,IAAI,QAAQ,CAAC,UAAU;YACnC,QAAQ,CAAC,UAAU,CAAC,UAAU,KAAK,EAAE,EACvC;YACE,MAAM,IAAI,iCAAqB,CAC3B,kDAAkD,CACrD,CAAC;SACL;IACL,CAAC;IAED,KAAK,CAAC,gCAAgC,CAClC,SAAiB,EACjB,UAAqB;QAErB,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;YACrC,MAAM,OAAO,CAAC,GAAG,CACb,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CACzB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CACrC,CACJ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAChB,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBACrB,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE;oBAClD,MAAM,IAAI,wBAAY,CAClB,gBAAgB,OAAO,CAAC,IAAI,aAAa,OAAO,CAAC,EAAE,gCAAgC,SAAS,IAAI,CACnG,CAAC;iBACL;YACL,CAAC,CAAC,CACL,CAAC;SACL;IACL,CAAC;IAED,KAAK,CAAC,mBAAmB,CACrB,WAA0B;QAE1B,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;YAC/C,OAAO,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,KAAkB;QACvC,MAAM,UAAU,GAAG,MAAM,iCAAgB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC/D,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC;QAChC,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CACtD,UAAU,CAAC,WAAW,CACzB,CAAC;QAEF,IAAI,KAAK,CAAC,oBAAa,EAAE,QAAQ,CAAC,EAAE;YAChC,MAAM,IAAA,iCAAc,EAAC,UAAU,CAAC,KAAK,CAAC,CAAC;SAC1C;QAED,IAAI,KAAK,CAAC,uBAAgB,EAAE,QAAQ,CAAC,EAAE;YACnC,MAAM,IAAA,iCAAc,EAAC,UAAU,CAAC,MAAM,CAAC,CAAC;SAC3C;QAED,IAAI,KAAK,CAAC,uBAAgB,EAAE,QAAQ,CAAC,EAAE;YACnC,mDAAmD;YACnD,sBAAsB;YACtB,IAAA,iCAAc,EAAC,UAAU,CAAC,KAAK,CAAC,CAAC;SACpC;QAED,IAAI,KAAK,CAAC,qBAAc,EAAE,QAAQ,CAAC,EAAE;YACjC,MAAM,IAAA,+BAAY,EAAC,UAAU,CAAC,KAAK,CAAC,CAAC;SACxC;QAED,IACI,iBAAiB;YACjB,iBAAiB,CAAC,WAAW;YAC7B,iBAAiB,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAC1C;YACE,MAAM,gBAAgB,GAAG,KAAK,CAC1B,CAAC,GAAG,qBAAc,EAAE,GAAG,uBAAgB,EAAE,GAAG,oBAAa,CAAC,EAC1D,QAAQ,CACX;gBACG,CAAC,CAAC,UAAU,CAAC,KAAK;gBAClB,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;YACxB,IAAA,sCAAmB,EACf,iBAAiB,CAAC,WAAW,EAC7B,gBAAgB,CACnB,CAAC;SACL;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,YAAY,CACd,OAAe,EACf,WAAmB,EACnB,SAAiB,EACjB,UAAuB;QAEvB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAEjE,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE;YAC5D,MAAM,IAAI,4BAAoB,CAC1B,0GAA0G,CAC7G,CAAC;SACL;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,4BAAU,EAC9B,IAAA,2BAAS,EAAC,aAAa,CAAC,EACxB,UAAU,CACb,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC1C,OAAO,EACP,WAAW,EACX,SAAS,EACT,WAAW,CACd,CAAC;QAEF,IAAI,aAAa,CAAC,KAAK,KAAK,WAAW,CAAC,KAAK,EAAE;YAC3C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;YAEnE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,yBAAiB,CAAC;gBAClB,KAAK,EAAE,WAAW,CAAC,KAAK;gBACxB,OAAO;gBACP,WAAW;gBACX,SAAS;gBACT,IAAI;aACP,CAAC,CACL,CAAC;SACL;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,uBAAuB,CACnB,eAAiC,EACjC,WAAuB,EAAE;QAEzB,MAAM,MAAM,GAA2B;YACnC,EAAE,EAAE,eAAe,CAAC,EAAE;YACtB,IAAI,EAAE,eAAe,CAAC,YAAY;YAClC,KAAK,EAAE,eAAe,CAAC,KAAK;YAC5B,QAAQ,EAAE,eAAe,CAAC,QAAQ;YAClC,WAAW,EAAE,eAAe,CAAC,WAAW,IAAI,EAAE;YAC9C,UAAU,EAAE,eAAe,CAAC,UAAU;YACtC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE;SACxD,CAAC;QAEF,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE;YAChD,MAAM,CAAC,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC;SAChD;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC3B,OAAgC,EAChC,UAAsC,EACtC,SAAiB,EACjB,IAAW;QAEX,MAAM,IAAI,CAAC,6BAA6B,CACpC,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,WAAW,EACnB,IAAI,CACP,CAAC;QAEF,OAAO,IAAI,CAAC,oCAAoC,CAC5C,OAAO,EACP,UAAU,EACV,SAAS,CACZ,CAAC;IACN,CAAC;IAED,KAAK,CAAC,oCAAoC,CACtC,OAAgC,EAChC,UAAsC,EACtC,SAAiB;QAEjB,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QACjE,MAAM,aAAa,GAAG,CAClB,MAAM,IAAI,CAAC,2BAA2B,CAClC,OAAO,EACP,WAAW,EACX,WAAW,CACd,CACJ;aACI,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE;YAC3B,IACI,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ;gBACvC,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ,EACzC;gBACE,OAAO,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;aACpD;YACD,OAAO,CAAC,CAAC;QACb,CAAC,CAAC;aACD,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAEpC,MAAM,YAAY,GAAgB,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;QAEjE,MAAM,OAAO,CAAC,GAAG,CACb,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;YACvC,MAAM,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAC7C,EAAE,EACF,SAAS,CACZ,CAAC;QACN,CAAC,CAAC,CACL,CAAC;QACF,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE;YAChD,MAAM,QAAQ,GAAG,CACb,MAAM,IAAI,CAAC,2BAA2B,CAClC,OAAO,EACP,WAAW,EACX,WAAW,CACd,CACJ;iBACI,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE;gBAC3B,IACI,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ;oBACvC,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ,EACzC;oBACE,OAAO,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;iBACpD;gBACD,OAAO,CAAC,CAAC;YACb,CAAC,CAAC;iBACD,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAEpC,MAAM,SAAS,GAAgB,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;YAEzD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;YACnE,MAAM,KAAK,GAAG,IAAI,mCAA2B,CAAC;gBAC1C,WAAW;gBACX,WAAW;gBACX,OAAO;gBACP,SAAS;gBACT,OAAO,EAAE,YAAY;gBACrB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,IAAI;aACb,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACtC;IACL,CAAC;IAED,KAAK,CAAC,cAAc,CAChB,cAAwC,EACxC,OAAgC,EAChC,SAAiB,EACjB,IAAW;QAEX,MAAM,IAAI,CAAC,6BAA6B,CACpC,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,WAAW,EACnB,IAAI,CACP,CAAC;QACF,OAAO,IAAI,CAAC,yBAAyB,CACjC,cAAc,EACd,OAAO,EACP,SAAS,CACZ,CAAC;IACN,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC3B,cAAwC,EACxC,OAAgC,EAChC,SAAiB;QAEjB,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;QACxD,MAAM,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC,CAAC;QAEpD,MAAM,IAAI,CAAC,gCAAgC,CACvC,SAAS,EACT,cAAc,CAAC,QAAQ,CAC1B,CAAC;QAEF,IACI,cAAc,CAAC,WAAW;YAC1B,cAAc,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EACvC;YACE,cAAc,CAAC,WAAW,GAAG,MAAM,IAAI,CAAC,mBAAmB,CACvD,cAAc,CAAC,WAAW,CAC7B,CAAC;SACL;QAED,IACI,cAAc,CAAC,UAAU;YACzB,YAAY,IAAI,cAAc,CAAC,UAAU;YACzC,cAAc,CAAC,UAAU,CAAC,UAAU,KAAK,EAAE,EAC7C;YACE,cAAc,CAAC,UAAU,CAAC,UAAU,GAAG,SAAS,CAAC;SACpD;QAED,IAAI,cAAc,CAAC,QAAQ,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/D,MAAM,oCAAmB,CAAC,aAAa,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YACjE,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CACxC,cAAc,CAAC,QAAQ,CAC1B,CAAC;YACF,cAAc,CAAC,QAAQ,GAAG,aAAa,CAAC;SAC3C;QAED,IAAI;YACA,MAAM,kBAAkB,GACpB,MAAM,IAAI,CAAC,sBAAsB,CAAC,wBAAwB,CAAC;gBACvD,YAAY,EAAE,cAAc,CAAC,IAAI;gBACjC,KAAK,EAAE,cAAc,CAAC,KAAK;gBAC3B,QAAQ,EAAE,cAAc,CAAC,QAAQ;gBACjC,WAAW,EAAE,cAAc,CAAC,WAAW,IAAI,EAAE;gBAC7C,QAAQ,EAAE,cAAc,CAAC,QAAQ,IAAI,EAAE;gBACvC,UAAU,EAAE,cAAc,CAAC,UAAU,IAAI,EAAE;gBAC3C,SAAS,EAAE,cAAc,CAAC,SAAS;gBACnC,SAAS;gBACT,WAAW;gBACX,WAAW;aACd,CAAC,CAAC;YAEP,IACI,cAAc,CAAC,QAAQ;gBACvB,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,EACxC;gBACE,MAAM,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAC5C,kBAAkB,CAAC,EAAE,EACrB,cAAc,CAAC,QAAQ,CAC1B,CAAC;aACL;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CACpD,kBAAkB,CAAC,EAAE,CACxB,CAAC;YAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,uBAAuB,CACzC,kBAAkB,EAClB,QAAQ,CACX,CAAC;YAEF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;YAEnE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,+BAAuB,CAAC;gBACxB,OAAO,EAAE,SAAS;gBAClB,WAAW;gBACX,SAAS;gBACT,WAAW;gBACX,IAAI,EAAE,QAAQ;gBACd,IAAI;aACP,CAAC,CACL,CAAC;YACF,OAAO,QAAQ,CAAC;SACnB;QAAC,OAAO,CAAC,EAAE;YACR,IAAI,CAAC,CAAC,IAAI,KAAK,6BAAqB,EAAE;gBAClC,MAAM,IAAI,wBAAY,CAClB,2DAA2D,CAC9D,CAAC;aACL;YACD,MAAM,CAAC,CAAC;SACX;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,cAAc,CAChB,EAAU,EACV,OAAkC,EAClC,OAAgC,EAChC,QAAgB,EAChB,IAAW;QAEX,MAAM,IAAI,CAAC,6BAA6B,CACpC,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,WAAW,EACnB,IAAI,CACP,CAAC;QACF,OAAO,IAAI,CAAC,yBAAyB,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC1B,WAAmB,EACnB,WAAmB,EACnB,SAAiB,EACjB,QAAgB;QAEhB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;QAEvD,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QACrE,MAAM,yBAAyB,GAAG,GAAG,EAAE,UAAU,CAAC,KAAK,CACnD,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAClC,CAAC;QACF,IAAI,yBAAyB,EAAE;YAC3B,MAAM,IAAI,CAAC,wBAAwB,CAC/B,SAAS,EACT,WAAW,EACX,WAAW,EACX,KAAK,EACL,QAAQ,CACX,CAAC;SACL;IACL,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC3B,EAAU,EACV,OAAkC,EAClC,OAAgC,EAChC,QAAgB;QAEhB,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;QACxD,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,gCAAgC,CACvC,SAAS,EACT,OAAO,CAAC,QAAQ,CACnB,CAAC;QAEF,IAAI,gBAAgB,CAAC,EAAE,KAAK,EAAE,EAAE;YAC5B,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;gBACvD,OAAO,CAAC,WAAW,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAChD,OAAO,CAAC,WAAW,CACtB,CAAC;aACL;YAED,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBACjD,MAAM,oCAAmB,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAC1D,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAC/D,OAAO,CAAC,QAAQ,GAAG,aAAa,CAAC;aACpC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAC7D,EAAE,EACF,OAAO,CACV,CAAC;YAEF,IAAI,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;gBACrD,MAAM,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAC5C,QAAQ,CAAC,EAAE,EACX,OAAO,CAAC,QAAQ,CACnB,CAAC;aACL;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CACpD,QAAQ,CAAC,EAAE,CACd,CAAC;YAEF,eAAe;YACf,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;YACnE,MAAM,IAAI,GAAG,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,uBAAuB,CACxC,gBAAgB,EAChB,QAAQ,CACX,CAAC;YACF,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,kCAA0B,CAAC;gBAC3B,OAAO,EAAE,SAAS;gBAClB,WAAW;gBACX,WAAW;gBACX,SAAS,EAAE,QAAQ;gBACnB,IAAI;gBACJ,OAAO;gBACP,IAAI;aACP,CAAC,CACL,CAAC;YACF,MAAM,IAAI,CAAC,wBAAwB,CAC/B,WAAW,EACX,WAAW,EACX,SAAS,EACT,QAAQ,CACX,CAAC;YACF,OAAO,IAAI,CAAC;SACf;QACD,MAAM,IAAI,wBAAa,CAAC,mCAAmC,EAAE,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,uBAAuB,CACzB,EAAU,EACV,IAAY,EACZ,KAAsB,EACtB,OAAgC,EAChC,QAAgB;QAEhB,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;QAExD,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAE1D,IAAI,gBAAgB,CAAC,EAAE,KAAK,EAAE,EAAE;YAC5B,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAC7D,EAAE,EACF,gBAAgB,CACnB,CAAC;YACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;YACnE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CACpD,QAAQ,CAAC,EAAE,CACd,CAAC;YACF,MAAM,IAAI,GAAG,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,uBAAuB,CACxC,gBAAgB,EAChB,QAAQ,CACX,CAAC;YACF,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,kCAA0B,CAAC;gBAC3B,WAAW;gBACX,OAAO,EAAE,SAAS;gBAClB,WAAW;gBACX,SAAS,EAAE,QAAQ;gBACnB,IAAI;gBACJ,OAAO;gBACP,IAAI;aACP,CAAC,CACL,CAAC;YACF,OAAO,IAAI,CAAC;SACf;QACD,MAAM,IAAI,wBAAa,CAAC,mCAAmC,EAAE,EAAE,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,cAAc,CAChB,EAAU,EACV,OAAgC,EAChC,SAAiB,EACjB,IAAW;QAEX,MAAM,IAAI,CAAC,6BAA6B,CACpC,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,WAAW,EACnB,IAAI,CACP,CAAC;QACF,OAAO,IAAI,CAAC,yBAAyB,CAAC,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC3B,EAAU,EACV,OAAgC,EAChC,SAAiB;QAEjB,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAE1D,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE7C,MAAM,iBAAiB,GACnB,MAAM,IAAI,CAAC,sBAAsB,CAAC,0BAA0B,CACxD,SAAS,EACT,WAAW,EACX,WAAW,CACd,CAAC;QAEN,MAAM,yBAAyB,GAAG,iBAAiB,CAAC,KAAK,CACrD,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAClC,CAAC;QAEF,IAAI,yBAAyB,EAAE;YAC3B,4EAA4E;YAC5E,MAAM,IAAI,CAAC,wBAAwB,CAC/B,SAAS,EACT,WAAW,EACX,WAAW,EACX,KAAK,EACL,SAAS,CACZ,CAAC;SACL;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QACnE,MAAM,OAAO,GAAG,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;QAE/D,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,kCAA0B,CAAC;YAC3B,WAAW;YACX,OAAO,EAAE,SAAS;YAClB,WAAW;YACX,SAAS;YACT,OAAO;YACP,IAAI;SACP,CAAC,CACL,CAAC;QAEF,6DAA6D;QAC7D,MAAM,IAAI,CAAC,uBAAuB,CAAC,gCAAgC,CAC/D,WAAW,EACX,WAAW,CACd,CAAC;IACN,CAAC;IAED,KAAK,CAAC,2BAA2B,CAC7B,OAAe,EACf,WAAmB,EACnB,cAAsB,kBAAW;QAEjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,qBAAqB,CACnE,WAAW,EACX,WAAW,CACd,CAAC;QACF,IAAI,MAAM,EAAE;YACR,MAAM,iBAAiB,GACnB,MAAM,IAAI,CAAC,sBAAsB,CAAC,0BAA0B,CACxD,OAAO,EACP,WAAW,EACX,WAAW,CACd,CAAC;YACN,MAAM,MAAM,GAA6B,EAAE,CAAC;YAC5C,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE;gBACnC,MAAM,QAAQ,GACV,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CACnD,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAC1B,IAAI,EAAE,CAAC;gBACZ,MAAM,CAAC,IAAI,CAAC;oBACR,EAAE,EAAE,KAAK,CAAC,EAAE;oBACZ,IAAI,EAAE,KAAK,CAAC,YAAY;oBACxB,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,QAAQ;iBACX,CAAC,CAAC;aACN;YACD,OAAO,MAAM,CAAC;SACjB;QACD,MAAM,IAAI,wBAAa,CACnB,WAAW,WAAW,8BAA8B,WAAW,EAAE,CACpE,CAAC;IACN,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,CAAC,EACb,WAAW,EACX,QAAQ,EACR,SAAS,EACT,mBAAmB,EACnB,MAAM,GACU;QAChB,IAAI,SAAS,EAAE;YACX,MAAM,IAAI,CAAC,+BAA+B,CAAC;gBACvC,WAAW;gBACX,SAAS;aACZ,CAAC,CAAC;SACN;QAED,IAAI,mBAAmB,EAAE;YACrB,OAAO,IAAI,CAAC,sBAAsB,CAAC,+BAA+B,CAC9D,WAAW,EACX,MAAM,EACN,QAAQ,CACX,CAAC;SACL;aAAM;YACH,OAAO,IAAI,CAAC,sBAAsB,CAAC,wBAAwB,CACvD,WAAW,EACX,MAAM,EACN,QAAQ,CACX,CAAC;SACL;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CAAC,WAAmB;QACjC,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,iBAAiB,CACnB,WAAmB,EACnB,WAAmB;QAEnB,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC;YAC9D,WAAW;YACX,WAAW;SACd,CAAC,CAAC;QACH,OAAO,kBAAkB,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,WAAmB;QACxC,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,iBAAiB,CACnB,KAA2B;QAE3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,SAAS,CACxD,KAAK,IAAI,EAAE,CACd,CAAC;QACF,OAAO,MAAM,CAAC,GAAG,CACb,CAAC,EACG,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,OAAO,EACP,KAAK,EACL,UAAU,EACV,QAAQ,EACR,WAAW,EACX,cAAc,GACjB,EAAE,EAAE,CAAC,CAAC;YACH,IAAI;YACJ,IAAI;YACJ,OAAO;YACP,OAAO;YACP,KAAK;YACL,UAAU;YACV,QAAQ;YACR,WAAW;YACX,cAAc;SACjB,CAAC,CACL,CAAC;IACN,CAAC;IAED,KAAK,CAAC,qBAAqB,CACvB,KAA2B;QAE3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,aAAa,CAC5D,KAAK,IAAI,EAAE,CACd,CAAC;QACF,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,iBAAiB,CACnB,KAA2B,EAC3B,MAAe,EACf,WAAoB,KAAK;QAEzB,OAAO,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC;YAC1C,YAAY,EAAE,KAAK;YACnB,MAAM;YACN,QAAQ;SACX,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,kBAAkB,CACpB,MAAiC;QAEjC,OAAO,IAAI,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,gBAAgB,CAClB,WAAmB;QAEnB,OAAO,IAAI,CAAC,sBAAsB,CAAC,wBAAwB,CACvD,WAAW,CACd,CAAC;IACN,CAAC;IAED,KAAK,CAAC,mBAAmB,CACrB,SAAiB,EACjB,KAAuB,EACvB,SAAiB,EACjB,cAAuB,KAAK;QAE5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,2BAA2B,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACtE,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAE7D,IAAI,MAAM,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE;YAC1D,MAAM,IAAI,iCAAqB,CAC3B,0EAA0E,CAC7E,CAAC;SACL;QACD,IAAI,MAAM,EAAE;YACR,IAAI,WAAW,CAAC;YAChB,IAAI,WAAW,EAAE;gBACb,WAAW,GAAG,KAAK,CAAC;aACvB;iBAAM;gBACH,WAAW,GAAG,MAAM,sCAAqB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;aAClE;YACD,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC;YACrC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CACtD,SAAS,EACT,WAAW,CACd,CAAC;YACF,MAAM,IAAI,CAAC,uBAAuB,CAAC,sCAAsC,CACrE,WAAW,EACX,SAAS,CACZ,CAAC;YAEF,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7C,MAAM,YAAY,GACd,MAAM,IAAI,CAAC,uBAAuB,CAAC,yBAAyB,CACxD,WAAW,CACd,CAAC;gBAEN,MAAM,IAAI,CAAC,uBAAuB,CAAC,gCAAgC,CAC/D,WAAW,EACX,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,EAC1C,KAAK,CAAC,QAAQ,CACjB,CAAC;aACL;YAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;YAEnE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,2BAAmB,CAAC;gBACpB,WAAW;gBACX,SAAS;gBACT,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,aAAa;gBACnB,IAAI;aACP,CAAC,CACL,CAAC;YAEF,OAAO,aAAa,CAAC;SACxB;QACD,MAAM,IAAI,wBAAa,CAAC,mBAAmB,SAAS,iBAAiB,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,kBAAkB,CACpB,WAAmB,EACnB,SAAiB,EACjB,cAAsB,EACtB,iBAA0B,IAAI,EAAE,sBAAsB;IACtD,QAAgB;QAEhB,MAAM,oBAAoB,GACtB,MAAM,IAAI,CAAC,4BAA4B,CAAC,iCAAiC,CACrE,SAAS,CACZ,CAAC;QACN,IAAI,oBAAoB,EAAE;YACtB,MAAM,IAAI,sBAAc,CACpB,gCAAgC,SAAS,+BAA+B,CAC3E,CAAC;SACL;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,GAAG,QAAQ,0BAA0B,WAAW,OAAO,cAAc,EAAE,CAC1E,CAAC;QACF,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;QAExC,MAAM,OAAO,GACT,MAAM,IAAI,CAAC,sBAAsB,CAAC,+BAA+B,CAC7D,WAAW,CACd,CAAC;QAEN,MAAM,SAAS,GAAG;YACd,GAAG,OAAO;YACV,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE,SAAS;SACtB,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC1C,SAAS,EACT,SAAS,EACT,QAAQ,CACX,CAAC;QAEF,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAClD,OAAO,IAAI,CAAC,uBAAuB,CAAC,+BAA+B,CAC/D,SAAS,CAAC,IAAI,EACd,CAAC,CAAC,IAAI,EACN,CAAC,CAAC,QAAQ,CACb,CAAC;QACN,CAAC,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CACvD,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACnB,IACI,cAAc;gBACd,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC,EACxC;gBACE,CAAC,CAAC,UAAU,CAAC,OAAO,GAAG,cAAc,CAAC;aACzC;YACD,MAAM,OAAO,GAAG;gBACZ,SAAS;gBACT,WAAW,EAAE,cAAc;gBAC3B,WAAW,EAAE,CAAC,CAAC,IAAI;aACtB,CAAC;YACF,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QACrD,CAAC,CAAC,CACL,CAAC;QAEF,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,aAAa,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC;QACvD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,mBAAmB,CACrB,SAAiB,EACjB,cAAgC,EAChC,QAAgB,EAChB,WAAmB;QAEnB,MAAM,IAAI,CAAC,+BAA+B,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;QAEvE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,2BAA2B,WAAW,EAAE,CAAC,CAAC;QAEtE,MAAM,WAAW,GAAG,MAAM,sCAAqB,CAAC,aAAa,CACzD,cAAc,CACjB,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAE/D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE;YAClE,GAAG,WAAW;YACd,IAAI,EAAE,WAAW;SACpB,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QAEnE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,kCAA0B,CAAC;YAC3B,SAAS,EAAE,QAAQ;YACnB,IAAI,EAAE,aAAa;YACnB,OAAO;YACP,WAAW;YACX,OAAO,EAAE,SAAS;YAClB,IAAI;SACP,CAAC,CACL,CAAC;QACF,OAAO,aAAa,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,SAAiB;QAC7C,OAAO,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;YACjC,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,SAAS;SACrB,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC3B,UAAkB,EAClB,cAAsB,kBAAW;QAEjC,MAAM,IAAI,CAAC,sBAAsB,CAAC,gCAAgC,CAC9D,UAAU,EACV,WAAW,CACd,CAAC;IACN,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,UAAkB;QAChC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAC9D,UAAU,CACb,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACrE,IAAI,MAAM,GAA2B;YACjC,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,IAAI,EAAE,QAAQ,CAAC,YAAY;YAC3B,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,EAAE;YACvC,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,6DAA6D;SAChE,CAAC;QAEF,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACjC,MAAM,GAAG;gBACL,GAAG,MAAM;gBACT,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;aAClD,CAAC;SACL;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,kBAAkB,CACpB,OAAe,EACf,WAAmB,EACnB,WAAmB;QAEnB,MAAM,WAAW,GACb,MAAM,IAAI,CAAC,uBAAuB,CAAC,sBAAsB,CACrD,WAAW,EACX,WAAW,CACd,CAAC;QACN,MAAM,UAAU,GACZ,MAAM,IAAI,CAAC,sBAAsB,CAAC,0BAA0B,CACxD,OAAO,EACP,WAAW,EACX,WAAW,CACd,CAAC;QACN,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAC9D,OAAO,EACP,WAAW,CACd,CAAC;QACF,OAAO;YACH,IAAI,EAAE,WAAW;YACjB,WAAW;YACX,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,UAAU;YACV,eAAe;SAClB,CAAC;IACN,CAAC;IAED,sCAAsC;IACtC,KAAK,CAAC,iBAAiB,CACnB,SAAiB,EACjB,WAAmB;QAEnB,MAAM,IAAI,CAAC,sBAAsB,CAAC,4CAA4C,CAC1E,SAAS,EACT,WAAW,CACd,CAAC;QACF,MAAM,IAAI,CAAC,YAAY,CAAC,2BAA2B,CAC/C,SAAS,EACT,WAAW,CACd,CAAC;IACN,CAAC;IAED,mBAAmB;IACnB,KAAK,CAAC,YAAY,CAAC,IAAY;QAC3B,MAAM,2BAAU,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,MAAM,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,IAAY;QACxC,IAAI,GAAW,CAAC;QAChB,IAAI;YACA,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACxD,GAAG,GAAG,OAAO,CAAC,QAAQ;gBAClB,CAAC,CAAC,kDAAkD;gBACpD,CAAC,CAAC,wCAAwC,CAAC;SAClD;QAAC,OAAO,KAAK,EAAE;YACZ,OAAO;SACV;QACD,MAAM,IAAI,2BAAe,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAY;QACzB,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,WAAW,CACb,WAAmB,EACnB,OAAgB,EAChB,SAAiB;QAEjB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC/D,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAC5B,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC;QACxB,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QAEnE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,yBAAiB,CAAC;YAClB,KAAK,EAAE,OAAO;YACd,OAAO;YACP,WAAW;YACX,SAAS;YACT,IAAI;SACP,CAAC,CACL,CAAC;QAEF,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,aAAa,CACf,WAAmB,EACnB,SAAiB,EACjB,SAAkB;QAElB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAE/D,IAAI,SAAS,EAAE;YACX,MAAM,IAAI,CAAC,+BAA+B,CAAC;gBACvC,WAAW;gBACX,SAAS;aACZ,CAAC,CAAC;SACN;QAED,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACnD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QACnE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,4BAAoB,CAAC;YACrB,WAAW;YACX,SAAS;YACT,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI;SACP,CAAC,CACL,CAAC;IACN,CAAC;IAED,KAAK,CAAC,cAAc,CAChB,YAAsB,EACtB,SAAiB,EACjB,SAAiB;QAEjB,MAAM,IAAI,CAAC,uBAAuB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAE5D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,aAAa,CACxD,YAAY,CACf,CAAC;QACF,MAAM,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;QAChE,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAC5B,QAAQ,CAAC,GAAG,CACR,CAAC,OAAO,EAAE,EAAE,CACR,IAAI,4BAAoB,CAAC;YACrB,WAAW,EAAE,OAAO,CAAC,IAAI;YACzB,SAAS;YACT,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,IAAI;iBACL,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC;iBACjD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACX,KAAK,EAAE,GAAG,CAAC,QAAQ;gBACnB,IAAI,EAAE,GAAG,CAAC,OAAO;aACpB,CAAC,CAAC;SACV,CAAC,CACT,CACJ,CAAC;IACN,CAAC;IAED,KAAK,CAAC,kBAAkB,CACpB,YAAsB,EACtB,KAAc,EACd,SAAiB,EACjB,SAAiB;QAEjB,MAAM,IAAI,CAAC,uBAAuB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAE5D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,aAAa,CACxD,YAAY,CACf,CAAC;QACF,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CACpC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,CACvC,CAAC;QACF,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,GAAG,CAC7C,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAC5B,CAAC;QACF,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;QACtE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;QACxE,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAC5B,gBAAgB,CAAC,GAAG,CAChB,CAAC,OAAO,EAAE,EAAE,CACR,IAAI,yBAAiB,CAAC;YAClB,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,SAAS;YAClB,WAAW,EAAE,OAAO,CAAC,IAAI;YACzB,SAAS;YACT,IAAI,EAAE,IAAI;iBACL,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC;iBACjD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACX,KAAK,EAAE,GAAG,CAAC,QAAQ;gBACnB,IAAI,EAAE,GAAG,CAAC,OAAO;aACpB,CAAC,CAAC;SACV,CAAC,CACT,CACJ,CAAC;IACN,CAAC;IAED,KAAK,CAAC,iBAAiB,CACnB,OAAe,EACf,YAAsB,EACtB,WAAmB,EACnB,OAAgB,EAChB,SAAiB,EACjB,IAAW,EACX,gCAAgC,GAAG,KAAK;QAExC,MAAM,OAAO,CAAC,GAAG,CACb,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAC7B,IAAI,CAAC,aAAa,CACd,OAAO,EACP,WAAW,EACX,WAAW,EACX,OAAO,EACP,SAAS,EACT,IAAI,EACJ,gCAAgC,CACnC,CACJ,CACJ,CAAC;IACN,CAAC;IAED,KAAK,CAAC,aAAa,CACf,OAAe,EACf,WAAmB,EACnB,WAAmB,EACnB,OAAgB,EAChB,SAAiB,EACjB,IAAW,EACX,gCAAgC,GAAG,KAAK;QAExC,MAAM,IAAI,CAAC,6BAA6B,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QACrE,IAAI,OAAO,EAAE;YACT,MAAM,IAAI,CAAC,8BAA8B,CACrC,OAAO,EACP,WAAW,EACX,WAAW,EACX,IAAI,CACP,CAAC;SACL;QAED,OAAO,IAAI,CAAC,wBAAwB,CAChC,OAAO,EACP,WAAW,EACX,WAAW,EACX,OAAO,EACP,SAAS,EACT,gCAAgC,CACnC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC1B,OAAe,EACf,WAAmB,EACnB,WAAmB,EACnB,OAAgB,EAChB,SAAiB,EACjB,gCAAgC,GAAG,KAAK;QAExC,MAAM,cAAc,GAChB,MAAM,IAAI,CAAC,uBAAuB,CAAC,qBAAqB,CACpD,WAAW,EACX,WAAW,CACd,CAAC;QAEN,IAAI,CAAC,cAAc,EAAE;YACjB,MAAM,IAAI,wBAAa,CACnB,8BAA8B,WAAW,iBAAiB,WAAW,EAAE,CAC1E,CAAC;SACL;QAED,IAAI,OAAO,EAAE;YACT,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,2BAA2B,CACrD,OAAO,EACP,WAAW,EACX,WAAW,CACd,CAAC;YACF,MAAM,qBAAqB,GAAG,UAAU,CAAC,IAAI,CACzC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAClC,CAAC;YAEF,IAAI,qBAAqB,IAAI,gCAAgC,EAAE;gBAC3D,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;oBAC9B,OAAO,IAAI,CAAC,cAAc,CACtB,QAAQ,CAAC,EAAE,EACX,EAAE,QAAQ,EAAE,KAAK,EAAE,EACnB;wBACI,WAAW;wBACX,SAAS,EAAE,OAAO;wBAClB,WAAW;qBACd,EACD,SAAS,CACZ,CAAC;gBACN,CAAC,CAAC,CAAC;aACN;YAED,MAAM,yBAAyB,GAAG,UAAU,CAAC,KAAK,CAC9C,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAClC,CAAC;YAEF,MAAM,YAAY,GACd,yBAAyB,IAAI,CAAC,gCAAgC,CAAC;YAEnE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,EAAE;gBACzC,MAAM,iCAAiC,GACnC,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,CACtC,OAAO,EACP,WAAW,CACd,CAAC;gBACN,MAAM,QAAQ,GACV,iCAAiC,IAAI,IAAI;oBACrC,CAAC,CAAC,IAAA,mCAAyB,EACrB,iCAAiC,EACjC,WAAW,CACd;oBACH,CAAC,CAAC,IAAA,4BAAkB,EAAC,WAAW,CAAC,CAAC;gBAE1C,MAAM,IAAI,CAAC,yBAAyB,CAChC,QAAQ,EACR;oBACI,WAAW;oBACX,SAAS,EAAE,OAAO;oBAClB,WAAW;iBACd,EACD,SAAS,CACZ,CAAC;aACL;SACJ;QACD,MAAM,wBAAwB,GAC1B,MAAM,IAAI,CAAC,uBAAuB,CAAC,2BAA2B,CAC1D,WAAW,EACX,WAAW,EACX,OAAO,CACV,CAAC;QACN,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAE/D,IAAI,wBAAwB,GAAG,CAAC,EAAE;YAC9B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;YACnE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,+BAAuB,CAAC;gBACxB,OAAO;gBACP,OAAO;gBACP,WAAW;gBACX,WAAW;gBACX,SAAS;gBACT,IAAI;aACP,CAAC,CACL,CAAC;SACL;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,cAAc;IACd,KAAK,CAAC,8BAA8B,CAChC,WAAmB,EACnB,SAAiB;QAEjB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QACnE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC;QAE/D,4CAA4C;QAC5C,0CAA0C;QAC1C,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YACxB,IAAI,EAAE,uBAAe;YACrB,SAAS;YACT,WAAW;YACX,IAAI,EAAE,OAAO;YACb,IAAI;YACJ,OAAO,EAAE,OAAO,CAAC,OAAO;SAC3B,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,cAAc;IACd,KAAK,CAAC,MAAM,CACR,SAAiB,EACjB,WAAmB,EACnB,WAAmB,EACnB,QAAgB;QAEhB,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC/C,MAAM,SAAS,GACX,MAAM,IAAI,CAAC,uBAAuB,CAAC,oBAAoB,CACnD,WAAW,EACX,WAAW,CACd,CAAC;QACN,OAAO,IAAI,CAAC,aAAa,CACrB,SAAS,EACT,WAAW,EACX,WAAW,EACX,CAAC,SAAS,EACV,QAAQ,CACX,CAAC;IACN,CAAC;IAED,cAAc;IACd,KAAK,CAAC,sBAAsB,CACxB,WAAmB;QAEnB,MAAM,OAAO,GACT,MAAM,IAAI,CAAC,sBAAsB,CAAC,wBAAwB,CACtD,WAAW,CACd,CAAC;QACN,MAAM,EAAE,YAAY,EAAE,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC;QACnD,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,kBAAW,CAAC,CAAC;QACpE,MAAM,UAAU,GAAG,UAAU,EAAE,UAAU,IAAI,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,UAAU,EAAE,OAAO,IAAI,KAAK,CAAC;QAC7C,OAAO,EAAE,GAAG,aAAa,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,aAAa,CACf,WAAmB,EACnB,UAAkB,EAClB,SAAiB;QAEjB,MAAM,oBAAoB,GACtB,MAAM,IAAI,CAAC,4BAA4B,CAAC,iCAAiC,CACrE,UAAU,CACb,CAAC;QACN,IAAI,oBAAoB,EAAE;YACtB,MAAM,IAAI,sBAAc,CACpB,yCAAyC,UAAU,+BAA+B,CACrF,CAAC;SACL;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC/D,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;QACnC,OAAO,CAAC,OAAO,GAAG,UAAU,CAAC;QAC7B,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAE1D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QACnE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,iCAAyB,CAAC;YAC1B,SAAS;YACT,UAAU;YACV,UAAU;YACV,WAAW;YACX,IAAI;SACP,CAAC,CACL,CAAC;IACN,CAAC;IAED,KAAK,CAAC,mBAAmB;QACrB,OAAO,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACvD,CAAC;IAED,wBAAwB;IACxB,KAAK,CAAC,aAAa,CAAC,WAAmB,EAAE,SAAiB;QACtD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC9D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QACnE,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAClD,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,2BAAmB,CAAC;YACpB,WAAW;YACX,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,SAAS;YACT,OAAO,EAAE,MAAM;YACf,IAAI;SACP,CAAC,CACL,CAAC;IACN,CAAC;IAED,KAAK,CAAC,cAAc,CAChB,YAAsB,EACtB,SAAiB,EACjB,SAAiB;QAEjB,MAAM,IAAI,CAAC,uBAAuB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAE5D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,aAAa,CACxD,YAAY,CACf,CAAC;QACF,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CACpC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,KAAK,IAAI,CACzC,CAAC;QACF,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,GAAG,CAC7C,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAC1B,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;QACxE,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;QAChE,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAC5B,gBAAgB,CAAC,GAAG,CAChB,CAAC,OAAO,EAAE,EAAE,CACR,IAAI,2BAAmB,CAAC;YACpB,WAAW,EAAE,OAAO,CAAC,IAAI;YACzB,SAAS;YACT,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,IAAI;iBACL,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC;iBACjD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACX,KAAK,EAAE,GAAG,CAAC,QAAQ;gBACnB,IAAI,EAAE,GAAG,CAAC,OAAO;aACpB,CAAC,CAAC;SACV,CAAC,CACT,CACJ,CAAC;IACN,CAAC;IAED,KAAK,CAAC,cAAc,CAChB,YAAsB,EACtB,SAAiB,EACjB,SAAiB;QAEjB,MAAM,IAAI,CAAC,uBAAuB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAE5D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,aAAa,CACxD,YAAY,CACf,CAAC;QACF,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CACpC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,KAAK,IAAI,CACzC,CAAC;QACF,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,GAAG,CAC7C,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAC1B,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;QACxE,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;QAChE,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAC5B,gBAAgB,CAAC,GAAG,CAChB,CAAC,OAAO,EAAE,EAAE,CACR,IAAI,2BAAmB,CAAC;YACpB,WAAW,EAAE,OAAO,CAAC,IAAI;YACzB,SAAS;YACT,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,IAAI;iBACL,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC;iBACjD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACX,KAAK,EAAE,GAAG,CAAC,QAAQ;gBACnB,IAAI,EAAE,GAAG,CAAC,OAAO;aACpB,CAAC,CAAC;SACV,CAAC,CACT,CACJ,CAAC;IACN,CAAC;IAED,wBAAwB;IACxB,KAAK,CAAC,YAAY,CAAC,WAAmB,EAAE,SAAiB;QACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QACnE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,2BAAmB,CAAC;YACpB,SAAS;YACT,WAAW;YACX,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI;SACP,CAAC,CACL,CAAC;IACN,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC3B,QAAiB;QAEjB,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,oCAAoC,CACtC,QAAiB,EACjB,OAAe;QAEf,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAY;QAC3B,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,4BAA4B,CAC9B,WAAmB,EACnB,YAAoB;QAEpB,MAAM,IAAI,CAAC,sBAAsB,CAAC,yCAAyC,CACvE,WAAW,EACX,YAAY,CACf,CAAC;IACN,CAAC;IAED,KAAK,CAAC,cAAc,CAChB,WAAmB,EACnB,OAAe,EACf,WAAwB,EACxB,IAAU;QAEV,MAAM,EAAE,GACJ,MAAM,IAAI,CAAC,sBAAsB,CAAC,+BAA+B,CAC7D,WAAW,CACd,CAAC;QACN,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACzC,IAAI,CAAC,mBAAmB,CACpB,WAAW,EACX,OAAO,EACP,GAAG,CAAC,IAAI,EACR,WAAW,EACX,IAAI,CACP,CAAC,IAAI,CAAC,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,GAAG,iBAAiB,CAAC,CAAC,CACpE,CAAC;QACF,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5B,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC1C,OAAO,EAAE,CAAC;IACd,CAAC;IAED,KAAK,CAAC,mBAAmB,CACrB,WAAmB,EACnB,OAAe,EACf,WAAmB,EACnB,WAAwB,EACxB,IAAU;QAEV,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAC5C,WAAW,EACX,WAAW,CACd,CAAC;QACF,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAA,4BAAU,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,4BAA4B,CACpC,OAAO,EACP,WAAW,EACX,WAAW,EACX,WAAW,EACX,IAAI,EACJ,WAAW,CACd,CAAC;IACN,CAAC;IAED,KAAK,CAAC,YAAY,CACd,WAAmB,EACnB,OAAe,EACf,WAAuB,EACvB,SAAiB;QAEjB,MAAM,oCAAmB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QACrD,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CACzD,WAAW,CACd,CAAC;QACF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAC5D,OAAO,EACP,WAAW,EACX,aAAa,CAChB,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QACnE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,2BAAmB,CAAC;YACpB,OAAO;YACP,WAAW;YACX,SAAS;YACT,IAAI;YACJ,WAAW;YACX,WAAW,EAAE,aAAa,CAAC,QAAsB;SACpD,CAAC,CACL,CAAC;QACF,OAAO,aAAa,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,iBAAiB,CACnB,SAAiB,EACjB,WAAmB,EACnB,WAAmB,EACnB,WAAuB,EACvB,IAAU,EACV,WAAwB;QAExB,MAAM,oCAAmB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QACrD,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAC1D,MAAM,cAAc,GAChB,WAAW;YACX,CACI,MAAM,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC;gBACnC,WAAW;gBACX,WAAW;aACd,CAAC,CACL,CAAC,QAAQ;YACV,EAAE,CAAC;QAEP,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,+BAAuB,CAAC;YACxB,WAAW;YACX,WAAW;YACX,OAAO,EAAE,SAAS;YAClB,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,cAAc;YAC3B,WAAW,EAAE,aAAa;SAC7B,CAAC,CACL,CAAC;QACF,MAAM,IAAI,CAAC,uBAAuB,CAAC,gCAAgC,CAC/D,WAAW,EACX,CAAC,WAAW,CAAC,EACb,aAAa,CAChB,CAAC;QACF,OAAO,aAAa,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,4BAA4B,CAC9B,SAAiB,EACjB,WAAmB,EACnB,WAAmB,EACnB,WAAuB,EACvB,IAAU,EACV,WAAwB;QAExB,MAAM,IAAI,CAAC,6BAA6B,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC,iBAAiB,CACzB,SAAS,EACT,WAAW,EACX,WAAW,EACX,WAAW,EACX,IAAI,EACJ,WAAW,CACd,CAAC;IACN,CAAC;IAED,KAAK,CAAC,4BAA4B,CAC9B,SAAiB,EACjB,WAAmB,EACnB,YAAsB,EACtB,WAAuB,EACvB,IAAU;QAEV,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE;YAC5B,MAAM,IAAI,CAAC,6BAA6B,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;SAC5D;QACD,OAAO,IAAI,CAAC,iBAAiB,CACzB,SAAS,EACT,WAAW,EACX,YAAY,EACZ,WAAW,EACX,IAAI,CACP,CAAC;IACN,CAAC;IAED,KAAK,CAAC,iBAAiB,CACnB,SAAiB,EACjB,WAAmB,EACnB,YAAsB,EACtB,WAAuB,EACvB,IAAU;QAEV,MAAM,oCAAmB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QACrD,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAkC,EAAE,CAAC;QACtD,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE;YAC5B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC;gBACtD,WAAW;gBACX,WAAW,EAAE,GAAG;aACnB,CAAC,CAAC;YACH,WAAW,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,QAAQ,IAAI,EAAE,CAAC;SAChD;QACD,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAC5B,YAAY,CAAC,GAAG,CACZ,CAAC,WAAW,EAAE,EAAE,CACZ,IAAI,+BAAuB,CAAC;YACxB,WAAW;YACX,WAAW;YACX,OAAO,EAAE,SAAS;YAClB,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,WAAW,CAAC,WAAW,CAAC;YACrC,WAAW,EAAE,aAAa;SAC7B,CAAC,CACT,CACJ,CAAC;QACF,MAAM,IAAI,CAAC,uBAAuB,CAAC,gCAAgC,CAC/D,WAAW,EACX,YAAY,EACZ,aAAa,CAChB,CAAC;QACF,OAAO,aAAa,CAAC;IACzB,CAAC;IAED,iBAAiB,CAAC,QAAoB;QAClC,IAAI,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACzC,OAAO,CAAC,CAAC,UAAU,KAAK,kBAAU,CAAC,QAAQ,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE;YACtD,MAAM,IAAI,wBAAY,CAClB,+CAA+C,CAClD,CAAC;SACL;QAED,IAAI,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACtC,OAAO,CAAC,CAAC,UAAU,KAAK,kBAAU,CAAC,GAAG,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,IAAI,YAAY,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAEnE,IAAI,YAAY,GAAG,IAAI,EAAE;YACrB,MAAM,IAAI,wBAAY,CAClB,gDAAgD,CACnD,CAAC;SACL;QAED,IAAI,aAAa,GAAG,IAAI,CAAC,KAAK,CAC1B,CAAC,IAAI,GAAG,YAAY,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAClD,CAAC;QACF,IAAI,SAAS,GAAG,CAAC,IAAI,GAAG,YAAY,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAAC;QAEhE,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC1C,CAAC,CAAC,MAAM,GAAG,aAAa,CAAC;YACzB,IAAI,SAAS,GAAG,CAAC,EAAE;gBACf,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC;gBACd,SAAS,EAAE,CAAC;aACf;YACD,OAAO,CAAC,CAAC;QACb,CAAC,CAAC,CAAC;QACH,OAAO,gBAAgB;aAClB,MAAM,CAAC,aAAa,CAAC;aACrB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACtD,CAAC;IAEO,KAAK,CAAC,6BAA6B,CACvC,OAAe,EACf,WAAmB,EACnB,IAAW;QAEX,MAAM,SAAS,GACX,MAAM,IAAI,CAAC,4BAA4B,CAAC,sBAAsB,CAC1D,OAAO,EACP,WAAW,EACX,IAAI,CACP,CAAC;QACN,IAAI,CAAC,SAAS,EAAE;YACZ,MAAM,IAAI,uBAAe,CAAC,2BAAmB,CAAC,CAAC;SAClD;IACL,CAAC;IAEO,KAAK,CAAC,8BAA8B,CACxC,OAAe,EACf,WAAmB,EACnB,WAAmB,EACnB,IAAW;QAEX,MAAM,cAAc,GAChB,MAAM,IAAI,CAAC,uBAAuB,CAAC,qBAAqB,CACpD,WAAW,EACX,WAAW,CACd,CAAC;QAEN,IAAI,cAAc,EAAE;YAChB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,2BAA2B,CACrD,OAAO,EACP,WAAW,EACX,WAAW,CACd,CAAC;YACF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;gBACzB,MAAM,gBAAgB,GAClB,IAAI;oBACJ,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CACnC,IAAI,EACJ,+BAAuB,EACvB,OAAO,EACP,WAAW,CACd,CAAC,CAAC;gBACP,IAAI,CAAC,gBAAgB,EAAE;oBACnB,MAAM,IAAI,uBAAe,CAAC,+BAAuB,CAAC,CAAC;iBACtD;aACJ;SACJ;IACL,CAAC;IAED,KAAK,CAAC,8BAA8B;QAChC,MAAM,wBAAwB,GAC1B,MAAM,IAAI,CAAC,kBAAkB,CAAC,8BAA8B,EAAE,CAAC;QACnE,IAAI,wBAAwB,CAAC,MAAM,GAAG,CAAC,EAAE;YACrC,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,CAC7B,MAAM,OAAO,CAAC,GAAG,CACb,wBAAwB;iBACnB,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC;iBAC7C,GAAG,CACA,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CACxB,IAAI,+BAAuB,CAAC;gBACxB,WAAW,EAAE,IAAI;gBACjB,OAAO;gBACP,IAAI,EAAE,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAC1C,IAAI,CACP;aACJ,CAAC,CACT,CACR,CACJ,CAAC;SACL;IACL,CAAC;CACJ;AAED,kBAAe,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"feature-toggle-service.js","sourceRoot":"","sources":["../../../src/lib/services/feature-toggle-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,10 +10,10 @@ export declare class GroupService {
|
|
|
10
10
|
mapGroupWithProjects(groupProjects: IGroupProject[], group: IGroupModel): IGroupModel;
|
|
11
11
|
getGroup(id: number): Promise<IGroupModel>;
|
|
12
12
|
createGroup(group: ICreateGroupModel, userName: string): Promise<IGroup>;
|
|
13
|
-
updateGroup(group:
|
|
14
|
-
getProjectGroups(projectId
|
|
15
|
-
deleteGroup(id: number): Promise<void>;
|
|
16
|
-
validateGroup(group: ICreateGroupModel, existingGroup?: IGroup): Promise<void>;
|
|
13
|
+
updateGroup(group: IGroupModel, userName: string): Promise<IGroup>;
|
|
14
|
+
getProjectGroups(projectId: string): Promise<IGroupModelWithProjectRole[]>;
|
|
15
|
+
deleteGroup(id: number, userName: string): Promise<void>;
|
|
16
|
+
validateGroup(group: IGroupModel | ICreateGroupModel, existingGroup?: IGroup): Promise<void>;
|
|
17
17
|
getRolesForProject(projectId: string): Promise<IGroupRole[]>;
|
|
18
18
|
private mapGroupWithUsers;
|
|
19
19
|
syncExternalGroups(userId: number, externalGroups: string[], createdBy?: string): Promise<void>;
|
|
@@ -68,24 +68,30 @@ class GroupService {
|
|
|
68
68
|
return newGroup;
|
|
69
69
|
}
|
|
70
70
|
async getProjectGroups(projectId) {
|
|
71
|
-
const
|
|
72
|
-
if (
|
|
73
|
-
const groups = await this.groupStore.getAllWithId(
|
|
71
|
+
const projectGroups = await this.groupStore.getProjectGroups(projectId);
|
|
72
|
+
if (projectGroups.length > 0) {
|
|
73
|
+
const groups = await this.groupStore.getAllWithId(projectGroups.map((g) => g.id));
|
|
74
74
|
const groupUsers = await this.groupStore.getAllUsersByGroups(groups.map((g) => g.id));
|
|
75
75
|
const users = await this.accountStore.getAllWithId(groupUsers.map((u) => u.userId));
|
|
76
|
-
return groups.
|
|
77
|
-
|
|
78
|
-
|
|
76
|
+
return groups.flatMap((group) => {
|
|
77
|
+
return projectGroups
|
|
78
|
+
.filter((gr) => gr.id === group.id)
|
|
79
|
+
.map((groupRole) => ({
|
|
79
80
|
...this.mapGroupWithUsers(group, groupUsers, users),
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
};
|
|
81
|
+
...groupRole,
|
|
82
|
+
}));
|
|
83
83
|
});
|
|
84
84
|
}
|
|
85
85
|
return [];
|
|
86
86
|
}
|
|
87
|
-
async deleteGroup(id) {
|
|
88
|
-
|
|
87
|
+
async deleteGroup(id, userName) {
|
|
88
|
+
const group = await this.groupStore.get(id);
|
|
89
|
+
await this.groupStore.delete(id);
|
|
90
|
+
await this.eventStore.store({
|
|
91
|
+
type: events_1.GROUP_DELETED,
|
|
92
|
+
createdBy: userName,
|
|
93
|
+
data: group,
|
|
94
|
+
});
|
|
89
95
|
}
|
|
90
96
|
async validateGroup(group, existingGroup) {
|
|
91
97
|
if (!group.name) {
|
|
@@ -96,11 +102,6 @@ class GroupService {
|
|
|
96
102
|
throw new name_exists_error_1.default('Group name already exists');
|
|
97
103
|
}
|
|
98
104
|
}
|
|
99
|
-
if (group.id &&
|
|
100
|
-
group.rootRole &&
|
|
101
|
-
(await this.groupStore.hasProjectRole(group.id))) {
|
|
102
|
-
throw new bad_data_error_1.default('This group already has a project role and cannot also be given a root role');
|
|
103
|
-
}
|
|
104
105
|
}
|
|
105
106
|
async getRolesForProject(projectId) {
|
|
106
107
|
return this.groupStore.getProjectGroupRoles(projectId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"group-service.js","sourceRoot":"","sources":["../../../src/lib/services/group-service.ts"],"names":[],"mappings":";;;;;;AAYA,6EAAmD;AACnD,
|
|
1
|
+
{"version":3,"file":"group-service.js","sourceRoot":"","sources":["../../../src/lib/services/group-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,10 +35,11 @@ import EdgeService from './edge-service';
|
|
|
35
35
|
import PatService from './pat-service';
|
|
36
36
|
import { PublicSignupTokenService } from './public-signup-token-service';
|
|
37
37
|
import { LastSeenService } from './client-metrics/last-seen-service';
|
|
38
|
-
import { InstanceStatsService } from '
|
|
38
|
+
import { InstanceStatsService } from '../features/instance-stats/instance-stats-service';
|
|
39
39
|
import { FavoritesService } from './favorites-service';
|
|
40
40
|
import { SchedulerService } from './scheduler-service';
|
|
41
41
|
import { Db } from '../db/db';
|
|
42
|
+
import { DependentFeaturesService } from '../features/dependent-features/dependent-features-service';
|
|
42
43
|
export declare const scheduleServices: (services: IUnleashServices) => Promise<void>;
|
|
43
44
|
export declare const createServices: (stores: IUnleashStores, config: IUnleashConfig, db?: Db) => IUnleashServices;
|
|
44
|
-
export { FeatureTypeService, EventService, HealthService, ProjectService, StateService, ClientInstanceService, ClientMetricsServiceV2, TagTypeService, TagService, StrategyService, AddonService, ContextService, VersionService, EmailService, AccessService, ApiTokenService, UserService, ResetTokenService, SettingService, SessionService, UserFeedbackService, FeatureToggleService, EnvironmentService, FeatureTagService, ProjectHealthService, UserSplashService, SegmentService, OpenApiService, ClientSpecService, PlaygroundService, GroupService, ProxyService, EdgeService, PatService, PublicSignupTokenService, LastSeenService, InstanceStatsService, FavoritesService, SchedulerService, };
|
|
45
|
+
export { FeatureTypeService, EventService, HealthService, ProjectService, StateService, ClientInstanceService, ClientMetricsServiceV2, TagTypeService, TagService, StrategyService, AddonService, ContextService, VersionService, EmailService, AccessService, ApiTokenService, UserService, ResetTokenService, SettingService, SessionService, UserFeedbackService, FeatureToggleService, EnvironmentService, FeatureTagService, ProjectHealthService, UserSplashService, SegmentService, OpenApiService, ClientSpecService, PlaygroundService, GroupService, ProxyService, EdgeService, PatService, PublicSignupTokenService, LastSeenService, InstanceStatsService, FavoritesService, SchedulerService, DependentFeaturesService, };
|