unleash-server 4.1.2 → 4.2.0-1
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/CHANGELOG.md +920 -0
- package/README.md +3 -2
- package/dist/lib/addons/addon.js +1 -1
- package/dist/lib/addons/addon.js.map +1 -1
- package/dist/lib/addons/slack.js +9 -9
- package/dist/lib/addons/slack.js.map +1 -1
- package/dist/lib/addons/teams.js +1 -1
- package/dist/lib/addons/teams.js.map +1 -1
- package/dist/lib/app.js +20 -20
- package/dist/lib/app.js.map +1 -1
- package/dist/lib/app.test.js +11 -7
- package/dist/lib/app.test.js.map +1 -1
- package/dist/lib/create-config.js +9 -9
- package/dist/lib/create-config.js.map +1 -1
- package/dist/lib/db/api-token-store.d.ts +2 -1
- package/dist/lib/db/api-token-store.js +5 -0
- package/dist/lib/db/api-token-store.js.map +1 -1
- package/dist/lib/db/client-metrics-store.d.ts +6 -0
- package/dist/lib/db/client-metrics-store.js +6 -1
- package/dist/lib/db/client-metrics-store.js.map +1 -1
- package/dist/lib/db/db-pool.js +1 -1
- package/dist/lib/db/db-pool.js.map +1 -1
- package/dist/lib/db/environment-store.d.ts +7 -7
- package/dist/lib/db/environment-store.js +59 -54
- package/dist/lib/db/environment-store.js.map +1 -1
- package/dist/lib/db/event-store.d.ts +5 -2
- package/dist/lib/db/event-store.js +27 -4
- package/dist/lib/db/event-store.js.map +1 -1
- package/dist/lib/db/event-store.test.js +2 -2
- package/dist/lib/db/event-store.test.js.map +1 -1
- package/dist/lib/db/feature-environment-store.d.ts +8 -6
- package/dist/lib/db/feature-environment-store.js +53 -19
- package/dist/lib/db/feature-environment-store.js.map +1 -1
- package/dist/lib/db/feature-strategy-store.d.ts +7 -11
- package/dist/lib/db/feature-strategy-store.js +77 -147
- package/dist/lib/db/feature-strategy-store.js.map +1 -1
- package/dist/lib/db/feature-toggle-client-store.d.ts +26 -0
- package/dist/lib/db/feature-toggle-client-store.js +106 -0
- package/dist/lib/db/feature-toggle-client-store.js.map +1 -0
- package/dist/lib/db/feature-toggle-store.d.ts +10 -22
- package/dist/lib/db/feature-toggle-store.js +9 -42
- package/dist/lib/db/feature-toggle-store.js.map +1 -1
- package/dist/lib/db/index.js +2 -0
- package/dist/lib/db/index.js.map +1 -1
- package/dist/lib/db/project-store.d.ts +4 -6
- package/dist/lib/db/project-store.js +7 -43
- package/dist/lib/db/project-store.js.map +1 -1
- package/dist/lib/event-hook.test.js +8 -7
- package/dist/lib/event-hook.test.js.map +1 -1
- package/dist/lib/logger.js +1 -1
- package/dist/lib/logger.js.map +1 -1
- package/dist/lib/logger.test.js +26 -4
- package/dist/lib/logger.test.js.map +1 -1
- package/dist/lib/metrics.test.js +3 -3
- package/dist/lib/metrics.test.js.map +1 -1
- package/dist/lib/middleware/api-token-middleware.js +10 -2
- package/dist/lib/middleware/api-token-middleware.js.map +1 -1
- package/dist/lib/middleware/api-token-middleware.test.js +44 -8
- package/dist/lib/middleware/api-token-middleware.test.js.map +1 -1
- package/dist/lib/middleware/content_type_checker.test.js +4 -4
- package/dist/lib/middleware/content_type_checker.test.js.map +1 -1
- package/dist/lib/middleware/demo-authentication.js +1 -1
- package/dist/lib/middleware/demo-authentication.js.map +1 -1
- package/dist/lib/middleware/no-authentication.test.js +3 -3
- package/dist/lib/middleware/no-authentication.test.js.map +1 -1
- package/dist/lib/middleware/oss-authentication.js +0 -3
- package/dist/lib/middleware/oss-authentication.js.map +1 -1
- package/dist/lib/middleware/oss-authentication.test.js +7 -7
- package/dist/lib/middleware/oss-authentication.test.js.map +1 -1
- package/dist/lib/middleware/rbac-middleware.js +2 -2
- package/dist/lib/middleware/rbac-middleware.js.map +1 -1
- package/dist/lib/middleware/rbac-middleware.test.js +51 -12
- package/dist/lib/middleware/rbac-middleware.test.js.map +1 -1
- package/dist/lib/middleware/secure-headers.js +1 -1
- package/dist/lib/middleware/secure-headers.js.map +1 -1
- package/dist/lib/middleware/session-db.js +2 -2
- package/dist/lib/middleware/session-db.js.map +1 -1
- package/dist/lib/routes/admin-api/addon.d.ts +4 -3
- package/dist/lib/routes/admin-api/addon.js +4 -4
- package/dist/lib/routes/admin-api/addon.js.map +1 -1
- package/dist/lib/routes/admin-api/api-token-controller.js +10 -38
- package/dist/lib/routes/admin-api/api-token-controller.js.map +1 -1
- package/dist/lib/routes/admin-api/archive.d.ts +4 -3
- package/dist/lib/routes/admin-api/archive.js +3 -3
- package/dist/lib/routes/admin-api/archive.js.map +1 -1
- package/dist/lib/routes/admin-api/config.test.js +5 -5
- package/dist/lib/routes/admin-api/config.test.js.map +1 -1
- package/dist/lib/routes/admin-api/context.d.ts +4 -3
- package/dist/lib/routes/admin-api/context.js +4 -4
- package/dist/lib/routes/admin-api/context.js.map +1 -1
- package/dist/lib/routes/admin-api/context.test.js +6 -6
- package/dist/lib/routes/admin-api/context.test.js.map +1 -1
- package/dist/lib/routes/admin-api/email.test.js +6 -6
- package/dist/lib/routes/admin-api/email.test.js.map +1 -1
- package/dist/lib/routes/admin-api/environments-controller.d.ts +4 -4
- package/dist/lib/routes/admin-api/environments-controller.js +17 -43
- package/dist/lib/routes/admin-api/environments-controller.js.map +1 -1
- package/dist/lib/routes/admin-api/event.js +7 -1
- package/dist/lib/routes/admin-api/event.js.map +1 -1
- package/dist/lib/routes/admin-api/events.test.js +5 -5
- package/dist/lib/routes/admin-api/events.test.js.map +1 -1
- package/dist/lib/routes/admin-api/feature.d.ts +11 -10
- package/dist/lib/routes/admin-api/feature.js +26 -24
- package/dist/lib/routes/admin-api/feature.js.map +1 -1
- package/dist/lib/routes/admin-api/metrics.js +25 -66
- package/dist/lib/routes/admin-api/metrics.js.map +1 -1
- package/dist/lib/routes/admin-api/metrics.test.js +6 -6
- package/dist/lib/routes/admin-api/metrics.test.js.map +1 -1
- package/dist/lib/routes/admin-api/project/environments.js +6 -15
- package/dist/lib/routes/admin-api/project/environments.js.map +1 -1
- package/dist/lib/routes/admin-api/project/features.d.ts +29 -11
- package/dist/lib/routes/admin-api/project/features.js +97 -35
- package/dist/lib/routes/admin-api/project/features.js.map +1 -1
- package/dist/lib/routes/admin-api/project/health-report.js +7 -18
- package/dist/lib/routes/admin-api/project/health-report.js.map +1 -1
- package/dist/lib/routes/admin-api/project/index.d.ts +3 -0
- package/dist/lib/routes/admin-api/project/index.js +8 -0
- package/dist/lib/routes/admin-api/project/index.js.map +1 -1
- package/dist/lib/routes/admin-api/state.d.ts +2 -1
- package/dist/lib/routes/admin-api/state.js +7 -6
- package/dist/lib/routes/admin-api/state.js.map +1 -1
- package/dist/lib/routes/admin-api/strategy.d.ts +1 -1
- package/dist/lib/routes/admin-api/strategy.js +24 -22
- package/dist/lib/routes/admin-api/strategy.js.map +1 -1
- package/dist/lib/routes/admin-api/strategy.test.js +6 -6
- package/dist/lib/routes/admin-api/strategy.test.js.map +1 -1
- package/dist/lib/routes/admin-api/tag-type.d.ts +4 -3
- package/dist/lib/routes/admin-api/tag-type.js +19 -50
- package/dist/lib/routes/admin-api/tag-type.js.map +1 -1
- package/dist/lib/routes/admin-api/tag.d.ts +3 -2
- package/dist/lib/routes/admin-api/tag.js +3 -4
- package/dist/lib/routes/admin-api/tag.js.map +1 -1
- package/dist/lib/routes/admin-api/tag.test.js +6 -6
- package/dist/lib/routes/admin-api/tag.test.js.map +1 -1
- package/dist/lib/routes/admin-api/user-admin.js +11 -37
- package/dist/lib/routes/admin-api/user-admin.js.map +1 -1
- package/dist/lib/routes/admin-api/user.test.js +5 -5
- package/dist/lib/routes/admin-api/user.test.js.map +1 -1
- package/dist/lib/routes/api-def.d.ts +49 -52
- package/dist/lib/routes/api-def.js +13 -9
- package/dist/lib/routes/api-def.js.map +1 -1
- package/dist/lib/routes/backstage.test.js +5 -5
- package/dist/lib/routes/backstage.test.js.map +1 -1
- package/dist/lib/routes/client-api/feature.d.ts +7 -8
- package/dist/lib/routes/client-api/feature.js +40 -28
- package/dist/lib/routes/client-api/feature.js.map +1 -1
- package/dist/lib/routes/client-api/feature.test.js +15 -15
- package/dist/lib/routes/client-api/feature.test.js.map +1 -1
- package/dist/lib/routes/client-api/metrics.d.ts +3 -2
- package/dist/lib/routes/client-api/metrics.js +8 -13
- package/dist/lib/routes/client-api/metrics.js.map +1 -1
- package/dist/lib/routes/client-api/metrics.test.js +7 -12
- package/dist/lib/routes/client-api/metrics.test.js.map +1 -1
- package/dist/lib/routes/client-api/register.js +3 -14
- package/dist/lib/routes/client-api/register.js.map +1 -1
- package/dist/lib/routes/client-api/register.test.js +5 -5
- package/dist/lib/routes/client-api/register.test.js.map +1 -1
- package/dist/lib/routes/controller.d.ts +1 -0
- package/dist/lib/routes/controller.js +4 -1
- package/dist/lib/routes/controller.js.map +1 -1
- package/dist/lib/routes/health-check.test.js +9 -9
- package/dist/lib/routes/health-check.test.js.map +1 -1
- package/dist/lib/routes/index.js +5 -5
- package/dist/lib/routes/index.js.map +1 -1
- package/dist/lib/routes/index.test.js +5 -5
- package/dist/lib/routes/index.test.js.map +1 -1
- package/dist/lib/routes/logout.test.js +15 -15
- package/dist/lib/routes/logout.test.js.map +1 -1
- package/dist/lib/routes/unleash-types.d.ts +1 -2
- package/dist/lib/routes/util.js +1 -0
- package/dist/lib/routes/util.js.map +1 -1
- package/dist/lib/schema/api-token-schema.d.ts +2 -0
- package/dist/lib/schema/api-token-schema.js +28 -0
- package/dist/lib/schema/api-token-schema.js.map +1 -0
- package/dist/lib/schema/feature-schema.test.js +17 -16
- package/dist/lib/schema/feature-schema.test.js.map +1 -1
- package/dist/lib/schema/project-schema.d.ts +2 -0
- package/dist/lib/schema/project-schema.js +12 -0
- package/dist/lib/schema/project-schema.js.map +1 -0
- package/dist/lib/server-impl.d.ts +2 -2
- package/dist/lib/server-impl.js +20 -18
- package/dist/lib/server-impl.js.map +1 -1
- package/dist/lib/server-impl.test.js +28 -21
- package/dist/lib/server-impl.test.js.map +1 -1
- package/dist/lib/services/access-service.d.ts +1 -1
- package/dist/lib/services/access-service.js.map +1 -1
- package/dist/lib/services/addon-service.js +2 -2
- package/dist/lib/services/addon-service.js.map +1 -1
- package/dist/lib/services/addon-service.test.js +1 -1
- package/dist/lib/services/addon-service.test.js.map +1 -1
- package/dist/lib/services/api-token-service.d.ts +3 -8
- package/dist/lib/services/api-token-service.js +43 -8
- package/dist/lib/services/api-token-service.js.map +1 -1
- package/dist/lib/services/client-metrics/client-metrics-schema.js +1 -0
- package/dist/lib/services/client-metrics/client-metrics-schema.js.map +1 -1
- package/dist/lib/services/client-metrics/client-metrics.test.js +18 -18
- package/dist/lib/services/client-metrics/client-metrics.test.js.map +1 -1
- package/dist/lib/services/client-metrics/index.js +5 -3
- package/dist/lib/services/client-metrics/index.js.map +1 -1
- package/dist/lib/services/context-schema.d.ts +3 -3
- package/dist/lib/services/context-schema.js +15 -11
- package/dist/lib/services/context-schema.js.map +1 -1
- package/dist/lib/services/email-service.js +5 -5
- package/dist/lib/services/email-service.js.map +1 -1
- package/dist/lib/services/environment-service.d.ts +4 -5
- package/dist/lib/services/environment-service.js +14 -14
- package/dist/lib/services/environment-service.js.map +1 -1
- package/dist/lib/services/event-service.d.ts +1 -0
- package/dist/lib/services/event-service.js +4 -3
- package/dist/lib/services/event-service.js.map +1 -1
- package/dist/lib/services/feature-toggle-service-v2.d.ts +27 -12
- package/dist/lib/services/feature-toggle-service-v2.js +157 -55
- package/dist/lib/services/feature-toggle-service-v2.js.map +1 -1
- package/dist/lib/services/index.js +1 -1
- package/dist/lib/services/index.js.map +1 -1
- package/dist/lib/services/project-health-service.d.ts +3 -1
- package/dist/lib/services/project-health-service.js +7 -3
- package/dist/lib/services/project-health-service.js.map +1 -1
- package/dist/lib/services/project-schema.d.ts +2 -3
- package/dist/lib/services/project-schema.js +12 -7
- package/dist/lib/services/project-schema.js.map +1 -1
- package/dist/lib/services/project-service.d.ts +4 -2
- package/dist/lib/services/project-service.js +21 -11
- package/dist/lib/services/project-service.js.map +1 -1
- package/dist/lib/services/state-schema.d.ts +2 -0
- package/dist/lib/services/state-schema.js +16 -6
- package/dist/lib/services/state-schema.js.map +1 -1
- package/dist/lib/services/state-service.d.ts +7 -0
- package/dist/lib/services/state-service.js +75 -17
- package/dist/lib/services/state-service.js.map +1 -1
- package/dist/lib/services/state-service.test.js +73 -28
- package/dist/lib/services/state-service.test.js.map +1 -1
- package/dist/lib/services/state-util.js +1 -1
- package/dist/lib/services/state-util.js.map +1 -1
- package/dist/lib/services/user-service.js +1 -1
- package/dist/lib/services/user-service.js.map +1 -1
- package/dist/lib/services/user-service.test.js +1 -1
- package/dist/lib/services/user-service.test.js.map +1 -1
- package/dist/lib/services/version-service.js +1 -1
- package/dist/lib/services/version-service.js.map +1 -1
- package/dist/lib/services/version-service.test.js +3 -3
- package/dist/lib/services/version-service.test.js.map +1 -1
- package/dist/lib/types/api-user.d.ts +11 -4
- package/dist/lib/types/api-user.js +4 -1
- package/dist/lib/types/api-user.js.map +1 -1
- package/dist/lib/types/events.d.ts +7 -0
- package/dist/lib/types/events.js +9 -1
- package/dist/lib/types/events.js.map +1 -1
- package/dist/lib/types/model.d.ts +25 -7
- package/dist/lib/types/model.js.map +1 -1
- package/dist/lib/types/models/api-token.d.ts +19 -0
- package/dist/lib/types/models/api-token.js +10 -0
- package/dist/lib/types/models/api-token.js.map +1 -0
- package/dist/lib/types/permissions.d.ts +2 -0
- package/dist/lib/types/permissions.js +3 -1
- package/dist/lib/types/permissions.js.map +1 -1
- package/dist/lib/types/stores/api-token-store.d.ts +1 -14
- package/dist/lib/types/stores/api-token-store.js +0 -6
- package/dist/lib/types/stores/api-token-store.js.map +1 -1
- package/dist/lib/types/stores/environment-store.d.ts +6 -6
- package/dist/lib/types/stores/event-store.d.ts +1 -0
- package/dist/lib/types/stores/feature-environment-store.d.ts +8 -6
- package/dist/lib/types/stores/feature-strategies-store.d.ts +6 -12
- package/dist/lib/types/stores/feature-toggle-client-store.d.ts +5 -0
- package/dist/lib/types/stores/feature-toggle-client-store.js +3 -0
- package/dist/lib/types/stores/feature-toggle-client-store.js.map +1 -0
- package/dist/lib/types/stores/feature-toggle-store.d.ts +7 -14
- package/dist/lib/types/stores/project-store.d.ts +5 -2
- package/dist/lib/types/stores.d.ts +2 -0
- package/dist/lib/types/user.js +1 -1
- package/dist/lib/types/user.js.map +1 -1
- package/dist/lib/util/constants.d.ts +1 -0
- package/dist/lib/util/constants.js +2 -1
- package/dist/lib/util/constants.js.map +1 -1
- package/dist/lib/util/extract-user.d.ts +2 -0
- package/dist/lib/util/extract-user.js +8 -0
- package/dist/lib/util/extract-user.js.map +1 -0
- package/dist/lib/util/format-base-uri.test.js +6 -6
- package/dist/lib/util/format-base-uri.test.js.map +1 -1
- package/dist/lib/util/graceful-shutdown.js +1 -1
- package/dist/lib/util/graceful-shutdown.js.map +1 -1
- package/dist/lib/util/rewriteHTML.test.js +4 -4
- package/dist/lib/util/rewriteHTML.test.js.map +1 -1
- package/dist/lib/util/snakeCase.d.ts +6 -0
- package/dist/lib/util/snakeCase.js +28 -0
- package/dist/lib/util/snakeCase.js.map +1 -0
- package/dist/{test/e2e/api/admin/boostrap.test.d.ts → lib/util/snakeCase.test.d.ts} +0 -0
- package/dist/lib/util/snakeCase.test.js +23 -0
- package/dist/lib/util/snakeCase.test.js.map +1 -0
- package/dist/migrations/20210831072631-add-sort-order-and-type-to-env.d.ts +5 -0
- package/dist/migrations/20210831072631-add-sort-order-and-type-to-env.js +14 -0
- package/dist/migrations/20210831072631-add-sort-order-and-type-to-env.js.map +1 -0
- package/dist/migrations/20210907124058-add-dbcritic-indices.d.ts +5 -0
- package/dist/migrations/20210907124058-add-dbcritic-indices.js +30 -0
- package/dist/migrations/20210907124058-add-dbcritic-indices.js.map +1 -0
- package/dist/migrations/20210907124850-add-dbcritic-primary-keys.d.ts +5 -0
- package/dist/migrations/20210907124850-add-dbcritic-primary-keys.js +18 -0
- package/dist/migrations/20210907124850-add-dbcritic-primary-keys.js.map +1 -0
- package/dist/migrations/20210908100701-add-enabled-to-environments.d.ts +5 -0
- package/dist/migrations/20210908100701-add-enabled-to-environments.js +14 -0
- package/dist/migrations/20210908100701-add-enabled-to-environments.js.map +1 -0
- package/dist/migrations/20210909085651-add-protected-field-to-environments.d.ts +5 -0
- package/dist/migrations/20210909085651-add-protected-field-to-environments.js +15 -0
- package/dist/migrations/20210909085651-add-protected-field-to-environments.js.map +1 -0
- package/dist/migrations/20210913103159-api-keys-scoping.d.ts +2 -0
- package/dist/migrations/20210913103159-api-keys-scoping.js +13 -0
- package/dist/migrations/20210913103159-api-keys-scoping.js.map +1 -0
- package/dist/migrations/20210915122001-add-project-and-environment-columns-to-events.d.ts +2 -0
- package/dist/migrations/20210915122001-add-project-and-environment-columns-to-events.js +22 -0
- package/dist/migrations/20210915122001-add-project-and-environment-columns-to-events.js.map +1 -0
- package/dist/migrations/20210920104218-rename-global-env-to-default-env.d.ts +2 -0
- package/dist/migrations/20210920104218-rename-global-env-to-default-env.js +25 -0
- package/dist/migrations/20210920104218-rename-global-env-to-default-env.js.map +1 -0
- package/dist/migrations/20210921105032-client-api-tokens-default.d.ts +2 -0
- package/dist/migrations/20210921105032-client-api-tokens-default.js +13 -0
- package/dist/migrations/20210921105032-client-api-tokens-default.js.map +1 -0
- package/dist/migrations/20210922084509-add-non-null-constraint-to-environment-type.d.ts +2 -0
- package/dist/migrations/20210922084509-add-non-null-constraint-to-environment-type.js +10 -0
- package/dist/migrations/20210922084509-add-non-null-constraint-to-environment-type.js.map +1 -0
- package/dist/migrations/20210922120521-add-tag-type-permission.d.ts +2 -0
- package/dist/migrations/20210922120521-add-tag-type-permission.js +19 -0
- package/dist/migrations/20210922120521-add-tag-type-permission.js.map +1 -0
- package/dist/migrations/20210928065411-remove-displayname-from-environments.d.ts +2 -0
- package/dist/migrations/20210928065411-remove-displayname-from-environments.js +10 -0
- package/dist/migrations/20210928065411-remove-displayname-from-environments.js.map +1 -0
- package/dist/migrations/20210928080601-add-development-and-production-environments.d.ts +2 -0
- package/dist/migrations/20210928080601-add-development-and-production-environments.js +16 -0
- package/dist/migrations/20210928080601-add-development-and-production-environments.js.map +1 -0
- package/dist/migrations/20210928082228-connect-default-environment-to-all-existing-projects.d.ts +2 -0
- package/dist/migrations/20210928082228-connect-default-environment-to-all-existing-projects.js +16 -0
- package/dist/migrations/20210928082228-connect-default-environment-to-all-existing-projects.js.map +1 -0
- package/dist/migrator.d.ts +3 -4
- package/dist/migrator.js +19 -5
- package/dist/migrator.js.map +1 -1
- package/dist/server-dev.js +1 -1
- package/dist/server-dev.js.map +1 -1
- package/dist/test/config/create-config.test.js +20 -20
- package/dist/test/config/create-config.test.js.map +1 -1
- package/dist/test/config/test-config.js +1 -1
- package/dist/test/config/test-config.js.map +1 -1
- package/dist/test/e2e/api/admin/addon.e2e.test.js +2 -2
- 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 -8
- package/dist/test/e2e/api/admin/api-token.auth.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/api-token.e2e.test.js +161 -12
- package/dist/test/e2e/api/admin/api-token.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/archive.test.js +2 -2
- package/dist/test/e2e/api/admin/archive.test.js.map +1 -1
- package/dist/test/e2e/api/admin/bootstrap.test.d.ts +1 -0
- package/dist/test/e2e/api/admin/{boostrap.test.js → bootstrap.test.js} +3 -3
- package/dist/test/e2e/api/admin/bootstrap.test.js.map +1 -0
- package/dist/test/e2e/api/admin/context.e2e.test.js +2 -2
- package/dist/test/e2e/api/admin/context.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/environment.test.js +82 -55
- package/dist/test/e2e/api/admin/environment.test.js.map +1 -1
- package/dist/test/e2e/api/admin/event.e2e.test.js +30 -2
- package/dist/test/e2e/api/admin/event.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/feature-archive.e2e.test.js +2 -2
- package/dist/test/e2e/api/admin/feature-archive.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/feature-type.test.js +2 -2
- package/dist/test/e2e/api/admin/feature-type.test.js.map +1 -1
- package/dist/test/e2e/api/admin/feature.auth.e2e.test.js +3 -3
- package/dist/test/e2e/api/admin/feature.auth.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/feature.custom-auth.e2e.test.js +3 -3
- package/dist/test/e2e/api/admin/feature.custom-auth.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/feature.e2e.test.js +71 -65
- package/dist/test/e2e/api/admin/feature.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/feedback.e2e.test.js +2 -2
- package/dist/test/e2e/api/admin/feedback.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/metrics.e2e.test.js +2 -2
- package/dist/test/e2e/api/admin/metrics.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/project/environments.e2e.test.d.ts +1 -0
- package/dist/test/e2e/api/admin/project/environments.e2e.test.js +65 -0
- package/dist/test/e2e/api/admin/project/environments.e2e.test.js.map +1 -0
- package/dist/test/e2e/api/admin/project/feature.strategy.e2e.test.js +503 -72
- package/dist/test/e2e/api/admin/project/feature.strategy.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/project/project.health.e2e.test.js +4 -2
- package/dist/test/e2e/api/admin/project/project.health.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/project/projects.e2e.test.d.ts +1 -0
- package/dist/test/e2e/api/admin/project/projects.e2e.test.js +30 -0
- package/dist/test/e2e/api/admin/project/projects.e2e.test.js.map +1 -0
- package/dist/test/e2e/api/admin/state.e2e.test.js +163 -2
- package/dist/test/e2e/api/admin/state.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/strategy.e2e.test.js +2 -2
- package/dist/test/e2e/api/admin/strategy.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/tag-types.e2e.test.js +2 -2
- package/dist/test/e2e/api/admin/tag-types.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/tags.e2e.test.js +2 -2
- package/dist/test/e2e/api/admin/tags.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/user-admin.e2e.test.js +3 -3
- package/dist/test/e2e/api/admin/user-admin.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/user.test.js +2 -2
- package/dist/test/e2e/api/admin/user.test.js.map +1 -1
- package/dist/test/e2e/api/auth/reset-password-controller.e2e.test.js +5 -5
- package/dist/test/e2e/api/auth/reset-password-controller.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/client/feature.e2e.test.js +74 -19
- package/dist/test/e2e/api/client/feature.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/client/feature.env.disabled.e2e.test.d.ts +1 -0
- package/dist/test/e2e/api/client/feature.env.disabled.e2e.test.js +49 -0
- package/dist/test/e2e/api/client/feature.env.disabled.e2e.test.js.map +1 -0
- package/dist/test/e2e/api/client/feature.token.access.e2e.test.d.ts +1 -0
- package/dist/test/e2e/api/client/feature.token.access.e2e.test.js +156 -0
- package/dist/test/e2e/api/client/feature.token.access.e2e.test.js.map +1 -0
- package/dist/test/e2e/api/client/metrics.e2e.access.e2e.test.d.ts +1 -0
- package/dist/test/e2e/api/client/metrics.e2e.access.e2e.test.js +42 -0
- package/dist/test/e2e/api/client/metrics.e2e.access.e2e.test.js.map +1 -0
- package/dist/test/e2e/api/client/metrics.e2e.test.js +12 -8
- package/dist/test/e2e/api/client/metrics.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/client/register.e2e.test.js +18 -14
- package/dist/test/e2e/api/client/register.e2e.test.js.map +1 -1
- package/dist/test/e2e/custom-auth.test.js +3 -3
- package/dist/test/e2e/custom-auth.test.js.map +1 -1
- package/dist/test/e2e/health.e2e.test.js +2 -2
- package/dist/test/e2e/health.e2e.test.js.map +1 -1
- package/dist/test/e2e/helpers/database-config.d.ts +1 -1
- package/dist/test/e2e/helpers/database-config.js +12 -8
- package/dist/test/e2e/helpers/database-config.js.map +1 -1
- package/dist/test/e2e/helpers/database-init.d.ts +7 -1
- package/dist/test/e2e/helpers/database-init.js +12 -11
- package/dist/test/e2e/helpers/database-init.js.map +1 -1
- package/dist/test/e2e/helpers/database.json +5 -2
- package/dist/test/e2e/helpers/test-helper.js +4 -4
- package/dist/test/e2e/helpers/test-helper.js.map +1 -1
- package/dist/test/e2e/routes/routes.test.js +2 -2
- package/dist/test/e2e/routes/routes.test.js.map +1 -1
- package/dist/test/e2e/services/access-service.e2e.test.js +1 -1
- package/dist/test/e2e/services/access-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/addon-service.e2e.test.js +2 -2
- package/dist/test/e2e/services/addon-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/api-token-service.e2e.test.js +30 -17
- package/dist/test/e2e/services/api-token-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/environment-service.test.js +38 -40
- package/dist/test/e2e/services/environment-service.test.js.map +1 -1
- package/dist/test/e2e/services/feature-toggle-service-v2.e2e.test.js +19 -13
- package/dist/test/e2e/services/feature-toggle-service-v2.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/project-health-service.e2e.test.js +12 -12
- package/dist/test/e2e/services/project-health-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/project-service.e2e.test.js +27 -4
- package/dist/test/e2e/services/project-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/reset-token-service.e2e.test.js +3 -3
- package/dist/test/e2e/services/reset-token-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/session-service.e2e.test.js +1 -1
- package/dist/test/e2e/services/session-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/setting-service.test.js +2 -2
- package/dist/test/e2e/services/setting-service.test.js.map +1 -1
- package/dist/test/e2e/services/user-service.e2e.test.js +2 -2
- package/dist/test/e2e/services/user-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/stores/client-application-store.e2e.test.js +1 -1
- package/dist/test/e2e/stores/client-application-store.e2e.test.js.map +1 -1
- package/dist/test/e2e/stores/event-store.e2e.test.js +1 -1
- package/dist/test/e2e/stores/event-store.e2e.test.js.map +1 -1
- package/dist/test/e2e/stores/feature-tag-store.e2e.test.js +4 -4
- package/dist/test/e2e/stores/feature-tag-store.e2e.test.js.map +1 -1
- package/dist/test/e2e/stores/feature-toggle-store.e2e.test.js +1 -1
- package/dist/test/e2e/stores/feature-toggle-store.e2e.test.js.map +1 -1
- package/dist/test/e2e/stores/feature-type-store.e2e.test.js +1 -1
- package/dist/test/e2e/stores/feature-type-store.e2e.test.js.map +1 -1
- package/dist/test/e2e/stores/project-store.e2e.test.js +5 -2
- package/dist/test/e2e/stores/project-store.e2e.test.js.map +1 -1
- package/dist/test/e2e/stores/setting-store.e2e.test.js +1 -1
- package/dist/test/e2e/stores/setting-store.e2e.test.js.map +1 -1
- package/dist/test/e2e/stores/user-feedback-store.e2e.test.js +1 -1
- package/dist/test/e2e/stores/user-feedback-store.e2e.test.js.map +1 -1
- package/dist/test/e2e/stores/user-store.e2e.test.js +1 -1
- package/dist/test/e2e/stores/user-store.e2e.test.js.map +1 -1
- package/dist/test/fixtures/fake-api-token-store.d.ts +2 -1
- package/dist/test/fixtures/fake-api-token-store.js.map +1 -1
- package/dist/test/fixtures/fake-environment-store.d.ts +5 -3
- package/dist/test/fixtures/fake-environment-store.js +22 -15
- package/dist/test/fixtures/fake-environment-store.js.map +1 -1
- package/dist/test/fixtures/fake-event-store.d.ts +1 -0
- package/dist/test/fixtures/fake-event-store.js +3 -0
- package/dist/test/fixtures/fake-event-store.js.map +1 -1
- package/dist/test/fixtures/fake-feature-environment-store.d.ts +7 -5
- package/dist/test/fixtures/fake-feature-environment-store.js +31 -10
- package/dist/test/fixtures/fake-feature-environment-store.js.map +1 -1
- package/dist/test/fixtures/fake-feature-strategies-store.d.ts +7 -13
- package/dist/test/fixtures/fake-feature-strategies-store.js +14 -51
- package/dist/test/fixtures/fake-feature-strategies-store.js.map +1 -1
- package/dist/test/fixtures/fake-feature-toggle-client-store.d.ts +9 -0
- package/dist/test/fixtures/fake-feature-toggle-client-store.js +50 -0
- package/dist/test/fixtures/fake-feature-toggle-client-store.js.map +1 -0
- package/dist/test/fixtures/fake-feature-toggle-store.d.ts +7 -9
- package/dist/test/fixtures/fake-feature-toggle-store.js +7 -14
- package/dist/test/fixtures/fake-feature-toggle-store.js.map +1 -1
- package/dist/test/fixtures/fake-project-store.d.ts +1 -2
- package/dist/test/fixtures/fake-project-store.js +0 -7
- package/dist/test/fixtures/fake-project-store.js.map +1 -1
- package/dist/test/fixtures/permissions.d.ts +3 -3
- package/dist/test/fixtures/permissions.js +5 -4
- package/dist/test/fixtures/permissions.js.map +1 -1
- package/dist/test/fixtures/store.js +2 -0
- package/dist/test/fixtures/store.js.map +1 -1
- package/package.json +51 -45
- package/dist/lib/extract-user.d.ts +0 -2
- package/dist/lib/extract-user.js +0 -6
- package/dist/lib/extract-user.js.map +0 -1
- package/dist/test/e2e/api/admin/boostrap.test.js.map +0 -1
- package/docs/api/oas/swagger-ui-bundle.js +0 -3
- package/docs/api/oas/swagger-ui-bundle.js.map +0 -1
- package/docs/api/oas/swagger-ui-es-bundle-core.js +0 -3
- package/docs/api/oas/swagger-ui-es-bundle-core.js.map +0 -1
- package/docs/api/oas/swagger-ui-es-bundle.js +0 -3
- package/docs/api/oas/swagger-ui-es-bundle.js.map +0 -1
- package/docs/api/oas/swagger-ui-standalone-preset.js +0 -3
- package/docs/api/oas/swagger-ui-standalone-preset.js.map +0 -1
- package/docs/api/oas/swagger-ui.css +0 -8906
- package/docs/api/oas/swagger-ui.css.map +0 -1
- package/docs/api/oas/swagger-ui.js +0 -3
- package/docs/api/oas/swagger-ui.js.map +0 -1
- package/docs/api/oas/swagger.json +0 -1479
|
@@ -12,15 +12,15 @@ const services_1 = require("../services");
|
|
|
12
12
|
const eventBus = new events_1.EventEmitter();
|
|
13
13
|
function getSetup() {
|
|
14
14
|
const base = `/random${Math.round(Math.random() * 1000)}`;
|
|
15
|
-
const stores = store_1.default();
|
|
16
|
-
const config = test_config_1.createTestConfig({
|
|
15
|
+
const stores = (0, store_1.default)();
|
|
16
|
+
const config = (0, test_config_1.createTestConfig)({
|
|
17
17
|
server: { baseUriPath: base },
|
|
18
18
|
});
|
|
19
|
-
const services = services_1.createServices(stores, config);
|
|
20
|
-
const app = app_1.default(config, stores, services, eventBus);
|
|
19
|
+
const services = (0, services_1.createServices)(stores, config);
|
|
20
|
+
const app = (0, app_1.default)(config, stores, services, eventBus);
|
|
21
21
|
return {
|
|
22
22
|
base,
|
|
23
|
-
request: supertest_1.default(app),
|
|
23
|
+
request: (0, supertest_1.default)(app),
|
|
24
24
|
destroy: () => {
|
|
25
25
|
services.versionService.destroy();
|
|
26
26
|
services.clientMetricsService.destroy();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../../src/lib/routes/index.test.ts"],"names":[],"mappings":";;;;;AAAA,0DAAkC;AAClC,mCAAsC;AACtC,+DAAiE;AACjE,sEAAqD;AACrD,iDAA4B;AAC5B,0CAA6C;AAE7C,MAAM,QAAQ,GAAG,IAAI,qBAAY,EAAE,CAAC;AAEpC,SAAS,QAAQ;IACb,MAAM,IAAI,GAAG,UAAU,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;IAC1D,MAAM,MAAM,GAAG,eAAY,
|
|
1
|
+
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../../src/lib/routes/index.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,10 +9,10 @@ const test_config_1 = require("../../test/config/test-config");
|
|
|
9
9
|
const logout_1 = __importDefault(require("./logout"));
|
|
10
10
|
test('should redirect to "/" after logout', async () => {
|
|
11
11
|
const baseUriPath = '';
|
|
12
|
-
const app = express_1.default();
|
|
13
|
-
const config = test_config_1.createTestConfig({ server: { baseUriPath } });
|
|
12
|
+
const app = (0, express_1.default)();
|
|
13
|
+
const config = (0, test_config_1.createTestConfig)({ server: { baseUriPath } });
|
|
14
14
|
app.use('/logout', new logout_1.default(config).router);
|
|
15
|
-
const request = supertest_1.default(app);
|
|
15
|
+
const request = (0, supertest_1.default)(app);
|
|
16
16
|
expect.assertions(0);
|
|
17
17
|
await request
|
|
18
18
|
.get(`${baseUriPath}/logout`)
|
|
@@ -21,10 +21,10 @@ test('should redirect to "/" after logout', async () => {
|
|
|
21
21
|
});
|
|
22
22
|
test('should redirect to "/basePath" after logout when baseUriPath is set', async () => {
|
|
23
23
|
const baseUriPath = '/basePath';
|
|
24
|
-
const app = express_1.default();
|
|
25
|
-
const config = test_config_1.createTestConfig({ server: { baseUriPath } });
|
|
24
|
+
const app = (0, express_1.default)();
|
|
25
|
+
const config = (0, test_config_1.createTestConfig)({ server: { baseUriPath } });
|
|
26
26
|
app.use('/logout', new logout_1.default(config).router);
|
|
27
|
-
const request = supertest_1.default(app);
|
|
27
|
+
const request = (0, supertest_1.default)(app);
|
|
28
28
|
expect.assertions(0);
|
|
29
29
|
await request
|
|
30
30
|
.get('/logout')
|
|
@@ -33,10 +33,10 @@ test('should redirect to "/basePath" after logout when baseUriPath is set', asyn
|
|
|
33
33
|
});
|
|
34
34
|
test('should set "Clear-Site-Data" header', async () => {
|
|
35
35
|
const baseUriPath = '';
|
|
36
|
-
const app = express_1.default();
|
|
37
|
-
const config = test_config_1.createTestConfig({ server: { baseUriPath } });
|
|
36
|
+
const app = (0, express_1.default)();
|
|
37
|
+
const config = (0, test_config_1.createTestConfig)({ server: { baseUriPath } });
|
|
38
38
|
app.use('/logout', new logout_1.default(config).router);
|
|
39
|
-
const request = supertest_1.default(app);
|
|
39
|
+
const request = (0, supertest_1.default)(app);
|
|
40
40
|
expect.assertions(0);
|
|
41
41
|
await request
|
|
42
42
|
.get(`${baseUriPath}/logout`)
|
|
@@ -48,14 +48,14 @@ test('should call destroy on session', async () => {
|
|
|
48
48
|
const fakeSession = {
|
|
49
49
|
destroy: jest.fn(),
|
|
50
50
|
};
|
|
51
|
-
const app = express_1.default();
|
|
52
|
-
const config = test_config_1.createTestConfig({ server: { baseUriPath } });
|
|
51
|
+
const app = (0, express_1.default)();
|
|
52
|
+
const config = (0, test_config_1.createTestConfig)({ server: { baseUriPath } });
|
|
53
53
|
app.use((req, res, next) => {
|
|
54
54
|
req.session = fakeSession;
|
|
55
55
|
next();
|
|
56
56
|
});
|
|
57
57
|
app.use('/logout', new logout_1.default(config).router);
|
|
58
|
-
const request = supertest_1.default(app);
|
|
58
|
+
const request = (0, supertest_1.default)(app);
|
|
59
59
|
await request.get(`${baseUriPath}/logout`);
|
|
60
60
|
expect(fakeSession.destroy.mock.calls.length).toBe(1);
|
|
61
61
|
});
|
|
@@ -64,14 +64,14 @@ test('should redirect to alternative logoutUrl', async () => {
|
|
|
64
64
|
destroy: jest.fn(),
|
|
65
65
|
logoutUrl: '/some-other-path',
|
|
66
66
|
};
|
|
67
|
-
const app = express_1.default();
|
|
68
|
-
const config = test_config_1.createTestConfig();
|
|
67
|
+
const app = (0, express_1.default)();
|
|
68
|
+
const config = (0, test_config_1.createTestConfig)();
|
|
69
69
|
app.use((req, res, next) => {
|
|
70
70
|
req.session = fakeSession;
|
|
71
71
|
next();
|
|
72
72
|
});
|
|
73
73
|
app.use('/logout', new logout_1.default(config).router);
|
|
74
|
-
const request = supertest_1.default(app);
|
|
74
|
+
const request = (0, supertest_1.default)(app);
|
|
75
75
|
await request
|
|
76
76
|
.get('/logout')
|
|
77
77
|
.expect(302)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logout.test.js","sourceRoot":"","sources":["../../../src/lib/routes/logout.test.ts"],"names":[],"mappings":";;;;;AAAA,0DAAkC;AAClC,sDAA8B;AAC9B,+DAAiE;AAEjE,sDAAwC;AAGxC,IAAI,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;IACnD,MAAM,WAAW,GAAG,EAAE,CAAC;IACvB,MAAM,GAAG,GAAG,iBAAO,
|
|
1
|
+
{"version":3,"file":"logout.test.js","sourceRoot":"","sources":["../../../src/lib/routes/logout.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Request } from 'express';
|
|
2
|
-
import * as core from 'express-serve-static-core';
|
|
3
2
|
import User from '../types/user';
|
|
4
|
-
export interface IAuthRequest<PARAM =
|
|
3
|
+
export interface IAuthRequest<PARAM = any, ResBody = any, ReqBody = any, ReqQuery = any> extends Request<PARAM, ResBody, ReqBody, ReqQuery> {
|
|
5
4
|
user: User;
|
|
6
5
|
logout: () => void;
|
|
7
6
|
session: any;
|
package/dist/lib/routes/util.js
CHANGED
|
@@ -32,6 +32,7 @@ const handleErrors = (res, logger, error) => {
|
|
|
32
32
|
case 'NotFoundError':
|
|
33
33
|
return res.status(404).json(error).end();
|
|
34
34
|
case 'InvalidOperationError':
|
|
35
|
+
return res.status(403).json(error).end();
|
|
35
36
|
case 'NameExistsError':
|
|
36
37
|
return res.status(409).json(error).end();
|
|
37
38
|
case 'ValidationError':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/lib/routes/util.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAsB;AAIT,QAAA,SAAS,GAAG,aAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACxC,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,QAAQ,EAAE;QACN,oBAAoB,EAAE,iCAAiC;KAC1D;IACD,QAAQ,CAAC,KAAK,EAAE,OAAO;QACnB,kDAAkD;QAClD,IAAI,kBAAkB,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE;YACrC,yDAAyD;YACzD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAE,CAAC;SACjE;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ,CAAC,CAAC,CAAC;AAES,QAAA,QAAQ,GAAG,iBAAS,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;AAEtE,MAAM,YAAY,GAIb,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;IAC/B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3B,aAAa;IACb,6CAA6C;IAC7C,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;IACnB,QAAQ,KAAK,CAAC,IAAI,EAAE;QAChB,KAAK,eAAe;YAChB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC;QAC7C,KAAK,eAAe;YAChB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC;QAC7C,KAAK,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/lib/routes/util.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createApiToken = void 0;
|
|
7
|
+
const joi_1 = __importDefault(require("joi"));
|
|
8
|
+
const api_token_1 = require("../types/models/api-token");
|
|
9
|
+
const constants_1 = require("../util/constants");
|
|
10
|
+
exports.createApiToken = joi_1.default
|
|
11
|
+
.object()
|
|
12
|
+
.keys({
|
|
13
|
+
username: joi_1.default.string().required(),
|
|
14
|
+
type: joi_1.default
|
|
15
|
+
.string()
|
|
16
|
+
.lowercase()
|
|
17
|
+
.required()
|
|
18
|
+
.valid(api_token_1.ApiTokenType.ADMIN, api_token_1.ApiTokenType.CLIENT),
|
|
19
|
+
expiresAt: joi_1.default.date().optional(),
|
|
20
|
+
project: joi_1.default.string().optional().default(api_token_1.ALL),
|
|
21
|
+
environment: joi_1.default.when('type', {
|
|
22
|
+
is: joi_1.default.string().valid(api_token_1.ApiTokenType.CLIENT),
|
|
23
|
+
then: joi_1.default.string().optional().default(constants_1.DEFAULT_ENV),
|
|
24
|
+
otherwise: joi_1.default.string().optional().default(api_token_1.ALL),
|
|
25
|
+
}),
|
|
26
|
+
})
|
|
27
|
+
.options({ stripUnknown: true, allowUnknown: false, abortEarly: false });
|
|
28
|
+
//# sourceMappingURL=api-token-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-token-schema.js","sourceRoot":"","sources":["../../../src/lib/schema/api-token-schema.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAsB;AACtB,yDAA8D;AAC9D,iDAAgD;AAEnC,QAAA,cAAc,GAAG,aAAG;KAC5B,MAAM,EAAE;KACR,IAAI,CAAC;IACF,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,IAAI,EAAE,aAAG;SACJ,MAAM,EAAE;SACR,SAAS,EAAE;SACX,QAAQ,EAAE;SACV,KAAK,CAAC,wBAAY,CAAC,KAAK,EAAE,wBAAY,CAAC,MAAM,CAAC;IACnD,SAAS,EAAE,aAAG,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAChC,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,eAAG,CAAC;IAC7C,WAAW,EAAE,aAAG,CAAC,IAAI,CAAC,MAAM,EAAE;QAC1B,EAAE,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,wBAAY,CAAC,MAAM,CAAC;QAC3C,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,uBAAW,CAAC;QAClD,SAAS,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,eAAG,CAAC;KAClD,CAAC;CACL,CAAC;KACD,OAAO,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const feature_schema_1 = require("./feature-schema");
|
|
3
4
|
test('should require URL firendly name', () => {
|
|
4
5
|
const toggle = {
|
|
5
6
|
name: 'io`dasd',
|
|
6
7
|
enabled: false,
|
|
7
8
|
strategies: [{ name: 'default' }],
|
|
8
9
|
};
|
|
9
|
-
const { error } = featureSchema.validate(toggle);
|
|
10
|
+
const { error } = feature_schema_1.featureSchema.validate(toggle);
|
|
10
11
|
expect(error.details[0].message).toEqual('"name" must be URL friendly');
|
|
11
12
|
});
|
|
12
13
|
test('should be valid toggle name', () => {
|
|
@@ -15,7 +16,7 @@ test('should be valid toggle name', () => {
|
|
|
15
16
|
enabled: false,
|
|
16
17
|
strategies: [{ name: 'default' }],
|
|
17
18
|
};
|
|
18
|
-
const { value } = featureSchema.validate(toggle);
|
|
19
|
+
const { value } = feature_schema_1.featureSchema.validate(toggle);
|
|
19
20
|
expect(value.name).toBe(toggle.name);
|
|
20
21
|
});
|
|
21
22
|
test('should strip extra variant fields', () => {
|
|
@@ -33,7 +34,7 @@ test('should strip extra variant fields', () => {
|
|
|
33
34
|
},
|
|
34
35
|
],
|
|
35
36
|
};
|
|
36
|
-
const { value } = featureSchema.validate(toggle);
|
|
37
|
+
const { value } = feature_schema_1.featureSchema.validate(toggle);
|
|
37
38
|
expect(value).not.toEqual(toggle);
|
|
38
39
|
expect(value.variants[0].unkown).toBeFalsy();
|
|
39
40
|
});
|
|
@@ -55,7 +56,7 @@ test('should allow weightType=fix', () => {
|
|
|
55
56
|
},
|
|
56
57
|
],
|
|
57
58
|
};
|
|
58
|
-
const { value } = featureSchema.validate(toggle);
|
|
59
|
+
const { value } = feature_schema_1.featureSchema.validate(toggle);
|
|
59
60
|
expect(value).toEqual(toggle);
|
|
60
61
|
});
|
|
61
62
|
test('should disallow weightType=unknown', () => {
|
|
@@ -74,7 +75,7 @@ test('should disallow weightType=unknown', () => {
|
|
|
74
75
|
},
|
|
75
76
|
],
|
|
76
77
|
};
|
|
77
|
-
const { error } = featureSchema.validate(toggle);
|
|
78
|
+
const { error } = feature_schema_1.featureSchema.validate(toggle);
|
|
78
79
|
expect(error.details[0].message).toEqual('"variants[0].weightType" must be one of [variable, fix]');
|
|
79
80
|
});
|
|
80
81
|
test('should be possible to define variant overrides', () => {
|
|
@@ -101,7 +102,7 @@ test('should be possible to define variant overrides', () => {
|
|
|
101
102
|
},
|
|
102
103
|
],
|
|
103
104
|
};
|
|
104
|
-
const { value, error } = featureSchema.validate(toggle);
|
|
105
|
+
const { value, error } = feature_schema_1.featureSchema.validate(toggle);
|
|
105
106
|
expect(value).toEqual(toggle);
|
|
106
107
|
expect(error).toBeFalsy();
|
|
107
108
|
});
|
|
@@ -125,7 +126,7 @@ test('variant overrides must have corect shape', async () => {
|
|
|
125
126
|
],
|
|
126
127
|
};
|
|
127
128
|
try {
|
|
128
|
-
await featureSchema.validateAsync(toggle);
|
|
129
|
+
await feature_schema_1.featureSchema.validateAsync(toggle);
|
|
129
130
|
}
|
|
130
131
|
catch (error) {
|
|
131
132
|
expect(error.details[0].message).toBe('"variants[0].overrides" must be an array');
|
|
@@ -152,7 +153,7 @@ test('should keep constraints', () => {
|
|
|
152
153
|
},
|
|
153
154
|
],
|
|
154
155
|
};
|
|
155
|
-
const { value, error } = featureSchema.validate(toggle);
|
|
156
|
+
const { value, error } = feature_schema_1.featureSchema.validate(toggle);
|
|
156
157
|
expect(value).toEqual(toggle);
|
|
157
158
|
expect(error).toBeFalsy();
|
|
158
159
|
});
|
|
@@ -175,7 +176,7 @@ test('should not accept empty constraint values', () => {
|
|
|
175
176
|
},
|
|
176
177
|
],
|
|
177
178
|
};
|
|
178
|
-
const { error } = featureSchema.validate(toggle);
|
|
179
|
+
const { error } = feature_schema_1.featureSchema.validate(toggle);
|
|
179
180
|
expect(error.details[0].message).toEqual('"strategies[0].constraints[0].values[0]" is not allowed to be empty');
|
|
180
181
|
});
|
|
181
182
|
test('should not accept empty list of constraint values', () => {
|
|
@@ -197,35 +198,35 @@ test('should not accept empty list of constraint values', () => {
|
|
|
197
198
|
},
|
|
198
199
|
],
|
|
199
200
|
};
|
|
200
|
-
const { error } = featureSchema.validate(toggle);
|
|
201
|
+
const { error } = feature_schema_1.featureSchema.validate(toggle);
|
|
201
202
|
expect(error.details[0].message).toEqual('"strategies[0].constraints[0].values" must contain at least 1 items');
|
|
202
203
|
});
|
|
203
204
|
test('Filter queries should accept a list of tag values', () => {
|
|
204
205
|
const query = {
|
|
205
206
|
tag: ['simple:valuea', 'simple:valueb'],
|
|
206
207
|
};
|
|
207
|
-
const { value } = querySchema.validate(query);
|
|
208
|
+
const { value } = feature_schema_1.querySchema.validate(query);
|
|
208
209
|
expect(value).toEqual({ tag: ['simple:valuea', 'simple:valueb'] });
|
|
209
210
|
});
|
|
210
211
|
test('Filter queries should reject tag values with missing type prefix', () => {
|
|
211
212
|
const query = {
|
|
212
213
|
tag: ['simple', 'simple'],
|
|
213
214
|
};
|
|
214
|
-
const { error } = querySchema.validate(query);
|
|
215
|
+
const { error } = feature_schema_1.querySchema.validate(query);
|
|
215
216
|
expect(error.details[0].message).toEqual('"tag[0]" with value "simple" fails to match the tag pattern');
|
|
216
217
|
});
|
|
217
218
|
test('Filter queries should allow project names', () => {
|
|
218
219
|
const query = {
|
|
219
220
|
project: ['projecta'],
|
|
220
221
|
};
|
|
221
|
-
const { value } = querySchema.validate(query);
|
|
222
|
+
const { value } = feature_schema_1.querySchema.validate(query);
|
|
222
223
|
expect(value).toEqual({ project: ['projecta'] });
|
|
223
224
|
});
|
|
224
225
|
test('Filter queries should reject project names that are not alphanum', () => {
|
|
225
226
|
const query = {
|
|
226
227
|
project: ['project name with space'],
|
|
227
228
|
};
|
|
228
|
-
const { error } = querySchema.validate(query);
|
|
229
|
+
const { error } = feature_schema_1.querySchema.validate(query);
|
|
229
230
|
expect(error.details[0].message).toEqual('"project[0]" must be URL friendly');
|
|
230
231
|
});
|
|
231
232
|
//# sourceMappingURL=feature-schema.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature-schema.test.js","sourceRoot":"","sources":["../../../src/lib/schema/feature-schema.test.
|
|
1
|
+
{"version":3,"file":"feature-schema.test.js","sourceRoot":"","sources":["../../../src/lib/schema/feature-schema.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.addEnvironment = void 0;
|
|
7
|
+
const joi_1 = __importDefault(require("joi"));
|
|
8
|
+
exports.addEnvironment = joi_1.default
|
|
9
|
+
.object()
|
|
10
|
+
.keys({ environment: joi_1.default.string().required() })
|
|
11
|
+
.options({ stripUnknown: true, allowUnknown: false, abortEarly: false });
|
|
12
|
+
//# sourceMappingURL=project-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-schema.js","sourceRoot":"","sources":["../../../src/lib/schema/project-schema.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAsB;AAET,QAAA,cAAc,GAAG,aAAG;KAC5B,MAAM,EAAE;KACR,IAAI,CAAC,EAAE,WAAW,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;KAC9C,OAAO,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IUnleash } from './types/core';
|
|
2
|
-
import { IUnleashConfig, IUnleashOptions } from './types/option';
|
|
2
|
+
import { IUnleashConfig, IUnleashOptions, IAuthType } from './types/option';
|
|
3
3
|
import { IUnleashServices } from './types/services';
|
|
4
4
|
import User, { IUser } from './types/user';
|
|
5
5
|
import { Logger, LogLevel } from './logger';
|
|
@@ -11,7 +11,7 @@ import * as eventType from './types/events';
|
|
|
11
11
|
import { RoleName } from './types/model';
|
|
12
12
|
declare function start(opts?: IUnleashOptions): Promise<IUnleash>;
|
|
13
13
|
declare function create(opts: IUnleashOptions): Promise<IUnleash>;
|
|
14
|
-
export { start, create, permissions, eventType, Controller, AuthenticationRequired, User, LogLevel, RoleName, };
|
|
14
|
+
export { start, create, permissions, eventType, Controller, AuthenticationRequired, User, LogLevel, RoleName, IAuthType, };
|
|
15
15
|
declare const _default: {
|
|
16
16
|
start: typeof start;
|
|
17
17
|
create: typeof create;
|
package/dist/lib/server-impl.js
CHANGED
|
@@ -22,12 +22,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
22
22
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
23
|
};
|
|
24
24
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.RoleName = exports.LogLevel = exports.User = exports.AuthenticationRequired = exports.Controller = exports.eventType = exports.permissions = exports.create = exports.start = void 0;
|
|
25
|
+
exports.IAuthType = exports.RoleName = exports.LogLevel = exports.User = exports.AuthenticationRequired = exports.Controller = exports.eventType = exports.permissions = exports.create = exports.start = void 0;
|
|
26
26
|
const events_1 = __importDefault(require("events"));
|
|
27
27
|
const stoppable_1 = __importDefault(require("stoppable"));
|
|
28
28
|
const util_1 = require("util");
|
|
29
29
|
const version_1 = __importDefault(require("./util/version"));
|
|
30
|
-
const migrator_1 =
|
|
30
|
+
const migrator_1 = require("../migrator");
|
|
31
31
|
const app_1 = __importDefault(require("./app"));
|
|
32
32
|
const metrics_1 = require("./metrics");
|
|
33
33
|
const db_1 = require("./db");
|
|
@@ -37,6 +37,8 @@ const event_hook_1 = require("./event-hook");
|
|
|
37
37
|
const graceful_shutdown_1 = __importDefault(require("./util/graceful-shutdown"));
|
|
38
38
|
const db_pool_1 = require("./db/db-pool");
|
|
39
39
|
const session_db_1 = __importDefault(require("./middleware/session-db"));
|
|
40
|
+
const option_1 = require("./types/option");
|
|
41
|
+
Object.defineProperty(exports, "IAuthType", { enumerable: true, get: function () { return option_1.IAuthType; } });
|
|
40
42
|
const user_1 = __importDefault(require("./types/user"));
|
|
41
43
|
exports.User = user_1.default;
|
|
42
44
|
const logger_1 = require("./logger");
|
|
@@ -56,15 +58,15 @@ async function createApp(config, startApp) {
|
|
|
56
58
|
const logger = config.getLogger('server-impl.js');
|
|
57
59
|
const serverVersion = version_1.default;
|
|
58
60
|
const eventBus = new events_1.default();
|
|
59
|
-
const db = db_pool_1.createDb(config);
|
|
60
|
-
const stores = db_1.createStores(config, eventBus, db);
|
|
61
|
-
const services = services_1.createServices(stores, config);
|
|
62
|
-
const metricsMonitor = metrics_1.createMetricsMonitor();
|
|
63
|
-
const unleashSession = session_db_1.default(config, db);
|
|
61
|
+
const db = (0, db_pool_1.createDb)(config);
|
|
62
|
+
const stores = (0, db_1.createStores)(config, eventBus, db);
|
|
63
|
+
const services = (0, services_1.createServices)(stores, config);
|
|
64
|
+
const metricsMonitor = (0, metrics_1.createMetricsMonitor)();
|
|
65
|
+
const unleashSession = (0, session_db_1.default)(config, db);
|
|
64
66
|
const stopUnleash = async (server) => {
|
|
65
67
|
logger.info('Shutting down Unleash...');
|
|
66
68
|
if (server) {
|
|
67
|
-
const stopServer = util_1.promisify(server.stop);
|
|
69
|
+
const stopServer = (0, util_1.promisify)(server.stop);
|
|
68
70
|
await stopServer();
|
|
69
71
|
}
|
|
70
72
|
metricsMonitor.stopMonitoring();
|
|
@@ -77,9 +79,9 @@ async function createApp(config, startApp) {
|
|
|
77
79
|
// eslint-disable-next-line no-param-reassign
|
|
78
80
|
config.server.secret = secret;
|
|
79
81
|
}
|
|
80
|
-
const app = app_1.default(config, stores, services, eventBus, unleashSession);
|
|
82
|
+
const app = (0, app_1.default)(config, stores, services, eventBus, unleashSession);
|
|
81
83
|
if (typeof config.eventHook === 'function') {
|
|
82
|
-
event_hook_1.addEventHook(config.eventHook, stores.eventStore);
|
|
84
|
+
(0, event_hook_1.addEventHook)(config.eventHook, stores.eventStore);
|
|
83
85
|
}
|
|
84
86
|
metricsMonitor.startMonitoring(config, stores, serverVersion, eventBus, db);
|
|
85
87
|
const unleash = {
|
|
@@ -100,7 +102,7 @@ async function createApp(config, startApp) {
|
|
|
100
102
|
}
|
|
101
103
|
return new Promise((resolve, reject) => {
|
|
102
104
|
if (startApp) {
|
|
103
|
-
const server = stoppable_1.default(app.listen(config.listen, () => logger.info('Unleash has started.', server.address())), config.server.gracefulShutdownTimeout);
|
|
105
|
+
const server = (0, stoppable_1.default)(app.listen(config.listen, () => logger.info('Unleash has started.', server.address())), config.server.gracefulShutdownTimeout);
|
|
104
106
|
server.keepAliveTimeout = config.server.keepAliveTimeout;
|
|
105
107
|
server.headersTimeout = config.server.headersTimeout;
|
|
106
108
|
server.on('listening', () => {
|
|
@@ -119,16 +121,16 @@ async function createApp(config, startApp) {
|
|
|
119
121
|
}
|
|
120
122
|
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
|
|
121
123
|
async function start(opts = {}) {
|
|
122
|
-
const config = create_config_1.createConfig(opts);
|
|
124
|
+
const config = (0, create_config_1.createConfig)(opts);
|
|
123
125
|
const logger = config.getLogger('server-impl.js');
|
|
124
126
|
try {
|
|
125
127
|
if (config.db.disableMigration) {
|
|
126
128
|
logger.info('DB migration: disabled');
|
|
127
129
|
}
|
|
128
130
|
else {
|
|
129
|
-
logger.
|
|
130
|
-
await migrator_1.
|
|
131
|
-
logger.
|
|
131
|
+
logger.debug('DB migration: start');
|
|
132
|
+
await (0, migrator_1.migrateDb)(config);
|
|
133
|
+
logger.debug('DB migration: end');
|
|
132
134
|
}
|
|
133
135
|
}
|
|
134
136
|
catch (err) {
|
|
@@ -137,21 +139,21 @@ async function start(opts = {}) {
|
|
|
137
139
|
}
|
|
138
140
|
const unleash = await createApp(config, true);
|
|
139
141
|
if (config.server.gracefulShutdownEnable) {
|
|
140
|
-
graceful_shutdown_1.default(unleash, logger);
|
|
142
|
+
(0, graceful_shutdown_1.default)(unleash, logger);
|
|
141
143
|
}
|
|
142
144
|
return unleash;
|
|
143
145
|
}
|
|
144
146
|
exports.start = start;
|
|
145
147
|
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
|
|
146
148
|
async function create(opts) {
|
|
147
|
-
const config = create_config_1.createConfig(opts);
|
|
149
|
+
const config = (0, create_config_1.createConfig)(opts);
|
|
148
150
|
const logger = config.getLogger('server-impl.js');
|
|
149
151
|
try {
|
|
150
152
|
if (config.db.disableMigration) {
|
|
151
153
|
logger.info('DB migrations disabled');
|
|
152
154
|
}
|
|
153
155
|
else {
|
|
154
|
-
await migrator_1.
|
|
156
|
+
await (0, migrator_1.migrateDb)(config);
|
|
155
157
|
}
|
|
156
158
|
}
|
|
157
159
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-impl.js","sourceRoot":"","sources":["../../src/lib/server-impl.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,0DAAuD;AACvD,+BAAiC;AACjC,6DAAqC;AACrC,
|
|
1
|
+
{"version":3,"file":"server-impl.js","sourceRoot":"","sources":["../../src/lib/server-impl.ts"],"names":[],"mappings":"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"}
|