unleash-server 4.14.2 → 4.14.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/db/event-store.d.ts +2 -3
- package/dist/lib/db/event-store.js +26 -36
- package/dist/lib/db/event-store.js.map +1 -1
- package/dist/lib/db/event-store.test.js +1 -1
- package/dist/lib/db/event-store.test.js.map +1 -1
- package/dist/lib/db/feature-strategy-store.js +3 -3
- package/dist/lib/db/feature-strategy-store.js.map +1 -1
- package/dist/lib/db/feature-toggle-client-store.d.ts +1 -1
- package/dist/lib/db/feature-toggle-client-store.js +6 -6
- package/dist/lib/db/feature-toggle-client-store.js.map +1 -1
- package/dist/lib/db/group-store.d.ts +0 -1
- package/dist/lib/db/group-store.js +1 -14
- package/dist/lib/db/group-store.js.map +1 -1
- package/dist/lib/db/user-store.js +8 -1
- package/dist/lib/db/user-store.js.map +1 -1
- package/dist/lib/openapi/index.d.ts +2388 -952
- package/dist/lib/openapi/index.js +8 -4
- package/dist/lib/openapi/index.js.map +1 -1
- package/dist/lib/openapi/spec/client-feature-schema.d.ts +72 -7
- package/dist/lib/openapi/spec/client-feature-schema.js +5 -3
- package/dist/lib/openapi/spec/client-feature-schema.js.map +1 -1
- package/dist/lib/openapi/spec/client-features-schema.d.ts +138 -16
- package/dist/lib/openapi/spec/client-features-schema.js +2 -2
- package/dist/lib/openapi/spec/client-features-schema.js.map +1 -1
- package/dist/lib/openapi/spec/client-features-schema.test.js +10 -0
- package/dist/lib/openapi/spec/client-features-schema.test.js.map +1 -1
- package/dist/lib/openapi/spec/constraint-schema.d.ts +51 -2
- package/dist/lib/openapi/spec/constraint-schema.js +17 -4
- package/dist/lib/openapi/spec/constraint-schema.js.map +1 -1
- package/dist/lib/openapi/spec/context-field-schema.test.js +5 -1
- package/dist/lib/openapi/spec/context-field-schema.test.js.map +1 -1
- package/dist/lib/openapi/spec/create-feature-strategy-schema.d.ts +12 -2
- package/dist/lib/openapi/spec/feature-environment-schema.d.ts +12 -2
- package/dist/lib/openapi/spec/feature-events-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/feature-events-schema.js +1 -1
- package/dist/lib/openapi/spec/feature-events-schema.js.map +1 -1
- package/dist/lib/openapi/spec/feature-schema.d.ts +25 -5
- package/dist/lib/openapi/spec/feature-schema.test.js +13 -1
- package/dist/lib/openapi/spec/feature-schema.test.js.map +1 -1
- package/dist/lib/openapi/spec/feature-strategy-schema.d.ts +12 -2
- package/dist/lib/openapi/spec/feature-variants-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/features-schema.d.ts +50 -10
- package/dist/lib/openapi/spec/group-schema.d.ts +1 -4
- package/dist/lib/openapi/spec/group-user-model-schema.d.ts +1 -4
- package/dist/lib/openapi/spec/group-user-model-schema.js +1 -4
- package/dist/lib/openapi/spec/group-user-model-schema.js.map +1 -1
- package/dist/lib/openapi/spec/groups-schema.d.ts +2 -8
- package/dist/lib/openapi/spec/groups-schema.test.js +0 -1
- package/dist/lib/openapi/spec/groups-schema.test.js.map +1 -1
- package/dist/lib/openapi/spec/health-overview-schema.d.ts +50 -10
- package/dist/lib/openapi/spec/health-report-schema.d.ts +50 -10
- package/dist/lib/openapi/spec/playground-constraint-schema.d.ts +47 -0
- package/dist/lib/openapi/spec/playground-constraint-schema.js +18 -0
- package/dist/lib/openapi/spec/playground-constraint-schema.js.map +1 -0
- package/dist/lib/openapi/spec/playground-feature-schema.d.ts +388 -2
- package/dist/lib/openapi/spec/playground-feature-schema.js +95 -9
- package/dist/lib/openapi/spec/playground-feature-schema.js.map +1 -1
- package/dist/lib/openapi/spec/playground-feature-schema.test.js +64 -3
- package/dist/lib/openapi/spec/playground-feature-schema.test.js.map +1 -1
- package/dist/lib/openapi/spec/playground-request-schema.d.ts +2 -0
- package/dist/lib/openapi/spec/playground-request-schema.js +6 -1
- package/dist/lib/openapi/spec/playground-request-schema.js.map +1 -1
- package/dist/lib/openapi/spec/playground-response-schema.d.ts +774 -3
- package/dist/lib/openapi/spec/playground-response-schema.js +15 -1
- package/dist/lib/openapi/spec/playground-response-schema.js.map +1 -1
- package/dist/lib/openapi/spec/playground-segment-schema.d.ts +79 -0
- package/dist/lib/openapi/spec/playground-segment-schema.js +36 -0
- package/dist/lib/openapi/spec/playground-segment-schema.js.map +1 -0
- package/dist/lib/openapi/spec/playground-strategy-schema.d.ts +257 -0
- package/dist/lib/openapi/spec/playground-strategy-schema.js +102 -0
- package/dist/lib/openapi/spec/playground-strategy-schema.js.map +1 -0
- package/dist/lib/openapi/spec/{bootstrap-ui-schema.test.d.ts → project-schema.test.d.ts} +0 -0
- package/dist/lib/openapi/spec/project-schema.test.js +17 -0
- package/dist/lib/openapi/spec/project-schema.test.js.map +1 -0
- package/dist/lib/openapi/spec/search-events-schema.d.ts +37 -0
- package/dist/lib/openapi/spec/search-events-schema.js +47 -0
- package/dist/lib/openapi/spec/search-events-schema.js.map +1 -0
- package/dist/lib/openapi/spec/segment-schema.d.ts +12 -2
- package/dist/lib/openapi/spec/state-schema.d.ts +61 -11
- package/dist/lib/{routes/admin-api/bootstrap-ui.test.d.ts → openapi/spec/tag-types-schema.test.d.ts} +0 -0
- package/dist/lib/openapi/spec/tag-types-schema.test.js +23 -0
- package/dist/lib/openapi/spec/tag-types-schema.test.js.map +1 -0
- package/dist/lib/openapi/spec/ui-config-schema.d.ts +3 -0
- package/dist/lib/openapi/spec/ui-config-schema.js +3 -0
- package/dist/lib/openapi/spec/ui-config-schema.js.map +1 -1
- package/dist/lib/openapi/spec/update-feature-schema.d.ts +12 -2
- package/dist/lib/openapi/spec/update-feature-strategy-schema.d.ts +12 -2
- package/dist/{test/e2e/api/admin/bootstrap.test.d.ts → lib/openapi/spec/user-schema.test.d.ts} +0 -0
- package/dist/lib/openapi/spec/user-schema.test.js +17 -0
- package/dist/lib/openapi/spec/user-schema.test.js.map +1 -0
- package/dist/lib/openapi/spec/users-groups-base-schema.d.ts +2 -8
- package/dist/lib/openapi/spec/variant-schema.d.ts +1 -1
- package/dist/lib/openapi/spec/variant-schema.js +1 -1
- package/dist/lib/openapi/spec/variant-schema.js.map +1 -1
- package/dist/lib/openapi/spec/variants-schema.d.ts +1 -1
- package/dist/lib/openapi/util/standard-responses.d.ts +6 -0
- package/dist/lib/openapi/util/standard-responses.js +10 -2
- package/dist/lib/openapi/util/standard-responses.js.map +1 -1
- package/dist/lib/routes/admin-api/config.d.ts +2 -1
- package/dist/lib/routes/admin-api/config.js +3 -1
- package/dist/lib/routes/admin-api/config.js.map +1 -1
- package/dist/lib/routes/admin-api/event.d.ts +3 -1
- package/dist/lib/routes/admin-api/event.js +30 -7
- package/dist/lib/routes/admin-api/event.js.map +1 -1
- package/dist/lib/routes/admin-api/index.js +0 -2
- package/dist/lib/routes/admin-api/index.js.map +1 -1
- package/dist/lib/routes/admin-api/playground.js.map +1 -1
- package/dist/lib/services/event-service.d.ts +2 -2
- package/dist/lib/services/event-service.js +2 -5
- package/dist/lib/services/event-service.js.map +1 -1
- package/dist/lib/services/feature-toggle-service.d.ts +1 -1
- package/dist/lib/services/feature-toggle-service.js +2 -2
- package/dist/lib/services/feature-toggle-service.js.map +1 -1
- package/dist/lib/services/group-service.d.ts +1 -1
- package/dist/lib/services/group-service.js +1 -5
- package/dist/lib/services/group-service.js.map +1 -1
- package/dist/lib/services/index.js +1 -0
- package/dist/lib/services/index.js.map +1 -1
- package/dist/lib/services/openapi-service.js +1 -1
- package/dist/lib/services/openapi-service.js.map +1 -1
- package/dist/lib/services/playground-service.d.ts +2 -1
- package/dist/lib/services/playground-service.js +30 -11
- package/dist/lib/services/playground-service.js.map +1 -1
- package/dist/lib/types/group.d.ts +1 -2
- package/dist/lib/types/group.js.map +1 -1
- package/dist/lib/types/stores/event-store.d.ts +2 -3
- package/dist/lib/types/stores/feature-toggle-client-store.d.ts +1 -1
- package/dist/lib/types/stores/group-store.d.ts +0 -1
- package/dist/lib/util/feature-evaluator/client.d.ts +25 -0
- package/dist/lib/util/feature-evaluator/client.js +135 -0
- package/dist/lib/util/feature-evaluator/client.js.map +1 -0
- package/dist/lib/util/feature-evaluator/constraint.d.ts +28 -0
- package/dist/lib/util/feature-evaluator/constraint.js +129 -0
- package/dist/lib/util/feature-evaluator/constraint.js.map +1 -0
- package/dist/lib/util/feature-evaluator/context.d.ts +13 -0
- package/dist/lib/util/feature-evaluator/context.js +3 -0
- package/dist/lib/util/feature-evaluator/context.js.map +1 -0
- package/dist/lib/util/feature-evaluator/feature-evaluator.d.ts +36 -0
- package/dist/lib/util/feature-evaluator/feature-evaluator.js +55 -0
- package/dist/lib/util/feature-evaluator/feature-evaluator.js.map +1 -0
- package/dist/lib/util/feature-evaluator/feature.d.ts +19 -0
- package/dist/lib/util/feature-evaluator/feature.js +3 -0
- package/dist/lib/util/feature-evaluator/feature.js.map +1 -0
- package/dist/lib/util/feature-evaluator/helpers.d.ts +6 -0
- package/dist/lib/util/feature-evaluator/helpers.js +32 -0
- package/dist/lib/util/feature-evaluator/helpers.js.map +1 -0
- package/dist/lib/util/feature-evaluator/index.d.ts +8 -0
- package/dist/lib/util/feature-evaluator/index.js +14 -0
- package/dist/lib/util/feature-evaluator/index.js.map +1 -0
- package/dist/lib/util/feature-evaluator/repository/bootstrap-provider.d.ts +16 -0
- package/dist/lib/util/feature-evaluator/repository/bootstrap-provider.js +25 -0
- package/dist/lib/util/feature-evaluator/repository/bootstrap-provider.js.map +1 -0
- package/dist/lib/util/feature-evaluator/repository/index.d.ts +35 -0
- package/dist/lib/util/feature-evaluator/repository/index.js +63 -0
- package/dist/lib/util/feature-evaluator/repository/index.js.map +1 -0
- package/dist/lib/util/feature-evaluator/repository/storage-provider-in-mem.d.ts +6 -0
- package/dist/lib/util/feature-evaluator/repository/storage-provider-in-mem.js +16 -0
- package/dist/lib/util/feature-evaluator/repository/storage-provider-in-mem.js.map +1 -0
- package/dist/lib/util/feature-evaluator/repository/storage-provider.d.ts +14 -0
- package/dist/lib/util/feature-evaluator/repository/storage-provider.js +50 -0
- package/dist/lib/util/feature-evaluator/repository/storage-provider.js.map +1 -0
- package/dist/lib/util/feature-evaluator/strategy/application-hostname-strategy.d.ts +8 -0
- package/dist/lib/util/feature-evaluator/strategy/application-hostname-strategy.js +23 -0
- package/dist/lib/util/feature-evaluator/strategy/application-hostname-strategy.js.map +1 -0
- package/dist/lib/util/feature-evaluator/strategy/default-strategy.d.ts +5 -0
- package/dist/lib/util/feature-evaluator/strategy/default-strategy.js +13 -0
- package/dist/lib/util/feature-evaluator/strategy/default-strategy.js.map +1 -0
- package/dist/lib/util/feature-evaluator/strategy/flexible-rollout-strategy.d.ts +12 -0
- package/dist/lib/util/feature-evaluator/strategy/flexible-rollout-strategy.js +49 -0
- package/dist/lib/util/feature-evaluator/strategy/flexible-rollout-strategy.js.map +1 -0
- package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-random.d.ts +9 -0
- package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-random.js +19 -0
- package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-random.js.map +1 -0
- package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-session-id.d.ts +9 -0
- package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-session-id.js +24 -0
- package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-session-id.js.map +1 -0
- package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-user-id.d.ts +9 -0
- package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-user-id.js +24 -0
- package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-user-id.js.map +1 -0
- package/dist/lib/util/feature-evaluator/strategy/index.d.ts +4 -0
- package/dist/lib/util/feature-evaluator/strategy/index.js +29 -0
- package/dist/lib/util/feature-evaluator/strategy/index.js.map +1 -0
- package/dist/lib/util/feature-evaluator/strategy/remote-address-strategy.d.ts +8 -0
- package/dist/lib/util/feature-evaluator/strategy/remote-address-strategy.js +35 -0
- package/dist/lib/util/feature-evaluator/strategy/remote-address-strategy.js.map +1 -0
- package/dist/lib/util/feature-evaluator/strategy/strategy.d.ts +41 -0
- package/dist/lib/util/feature-evaluator/strategy/strategy.js +75 -0
- package/dist/lib/util/feature-evaluator/strategy/strategy.js.map +1 -0
- package/dist/lib/util/feature-evaluator/strategy/unknown-strategy.d.ts +9 -0
- package/dist/lib/util/feature-evaluator/strategy/unknown-strategy.js +29 -0
- package/dist/lib/util/feature-evaluator/strategy/unknown-strategy.js.map +1 -0
- package/dist/lib/util/feature-evaluator/strategy/user-with-id-strategy.d.ts +8 -0
- package/dist/lib/util/feature-evaluator/strategy/user-with-id-strategy.js +16 -0
- package/dist/lib/util/feature-evaluator/strategy/user-with-id-strategy.js.map +1 -0
- package/dist/lib/util/feature-evaluator/strategy/util.d.ts +1 -0
- package/dist/lib/util/feature-evaluator/strategy/util.js +31 -0
- package/dist/lib/util/feature-evaluator/strategy/util.js.map +1 -0
- package/dist/lib/util/feature-evaluator/variant.d.ts +28 -0
- package/dist/lib/util/feature-evaluator/variant.js +73 -0
- package/dist/lib/util/feature-evaluator/variant.js.map +1 -0
- package/dist/lib/util/offline-unleash-client.d.ts +13 -2
- package/dist/lib/util/offline-unleash-client.js +12 -13
- package/dist/lib/util/offline-unleash-client.js.map +1 -1
- package/dist/lib/util/offline-unleash-client.test.d.ts +3 -1
- package/dist/lib/util/offline-unleash-client.test.js +349 -139
- package/dist/lib/util/offline-unleash-client.test.js.map +1 -1
- package/dist/migrations/20220808084524-add-group-permissions.d.ts +2 -0
- package/dist/migrations/20220808084524-add-group-permissions.js +12 -0
- package/dist/migrations/20220808084524-add-group-permissions.js.map +1 -0
- package/dist/migrations/20220808110415-add-projects-foreign-key.d.ts +2 -0
- package/dist/migrations/20220808110415-add-projects-foreign-key.js +14 -0
- package/dist/migrations/20220808110415-add-projects-foreign-key.js.map +1 -0
- package/dist/test/arbitraries.test.d.ts +12 -2
- package/dist/test/arbitraries.test.js +67 -9
- package/dist/test/arbitraries.test.js.map +1 -1
- package/dist/test/e2e/api/admin/config.e2e.test.js +2 -1
- package/dist/test/e2e/api/admin/config.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/event.e2e.test.js +57 -0
- package/dist/test/e2e/api/admin/event.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/feature.e2e.test.js +8 -7
- package/dist/test/e2e/api/admin/feature.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/playground.e2e.test.js +22 -0
- package/dist/test/e2e/api/admin/playground.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/access-service.e2e.test.js +38 -20
- package/dist/test/e2e/services/access-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/playground-service.test.d.ts +5 -1
- package/dist/test/e2e/services/playground-service.test.js +725 -37
- package/dist/test/e2e/services/playground-service.test.js.map +1 -1
- package/dist/test/e2e/services/project-service.e2e.test.js +12 -4
- package/dist/test/e2e/services/project-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/services/setting-service.test.js +9 -3
- package/dist/test/e2e/services/setting-service.test.js.map +1 -1
- package/dist/test/e2e/stores/event-store.e2e.test.js +6 -2
- package/dist/test/e2e/stores/event-store.e2e.test.js.map +1 -1
- package/dist/test/fixtures/fake-event-store.d.ts +1 -3
- package/dist/test/fixtures/fake-event-store.js +2 -8
- package/dist/test/fixtures/fake-event-store.js.map +1 -1
- package/dist/test/fixtures/fake-group-store.d.ts +0 -1
- package/dist/test/fixtures/fake-group-store.js +0 -3
- package/dist/test/fixtures/fake-group-store.js.map +1 -1
- package/package.json +15 -13
- package/dist/lib/openapi/spec/bootstrap-ui-schema.d.ts +0 -491
- package/dist/lib/openapi/spec/bootstrap-ui-schema.js +0 -94
- package/dist/lib/openapi/spec/bootstrap-ui-schema.js.map +0 -1
- package/dist/lib/openapi/spec/bootstrap-ui-schema.test.js +0 -145
- package/dist/lib/openapi/spec/bootstrap-ui-schema.test.js.map +0 -1
- package/dist/lib/openapi/spec/client-variant-schema.d.ts +0 -35
- package/dist/lib/openapi/spec/client-variant-schema.js +0 -37
- package/dist/lib/openapi/spec/client-variant-schema.js.map +0 -1
- package/dist/lib/routes/admin-api/bootstrap-ui.d.ts +0 -25
- package/dist/lib/routes/admin-api/bootstrap-ui.js +0 -82
- package/dist/lib/routes/admin-api/bootstrap-ui.js.map +0 -1
- package/dist/lib/routes/admin-api/bootstrap-ui.test.js +0 -60
- package/dist/lib/routes/admin-api/bootstrap-ui.test.js.map +0 -1
- package/dist/test/e2e/api/admin/bootstrap.test.js +0 -43
- package/dist/test/e2e/api/admin/bootstrap.test.js.map +0 -1
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const validate_1 = require("../validate");
|
|
4
|
-
test('bootstrapUiSchema', () => {
|
|
5
|
-
const data = {
|
|
6
|
-
uiConfig: {
|
|
7
|
-
flags: { E: true },
|
|
8
|
-
authenticationType: 'open-source',
|
|
9
|
-
unleashUrl: 'http://localhost:4242',
|
|
10
|
-
version: '4.14.0-beta.0',
|
|
11
|
-
baseUriPath: '',
|
|
12
|
-
versionInfo: {
|
|
13
|
-
current: { oss: '4.14.0-beta.0', enterprise: '' },
|
|
14
|
-
latest: {},
|
|
15
|
-
isLatest: true,
|
|
16
|
-
instanceId: '51c9190a-4ff5-4f47-b73a-7aebe06f9331',
|
|
17
|
-
},
|
|
18
|
-
},
|
|
19
|
-
user: {
|
|
20
|
-
isAPI: false,
|
|
21
|
-
id: 1,
|
|
22
|
-
username: 'admin',
|
|
23
|
-
imageUrl: 'https://gravatar.com/avatar/21232f297a57a5a743894a0e4a801fc3?size=42&default=retro',
|
|
24
|
-
seenAt: '2022-06-27T12:19:15.838Z',
|
|
25
|
-
loginAttempts: 0,
|
|
26
|
-
createdAt: '2022-04-08T10:59:25.072Z',
|
|
27
|
-
permissions: [
|
|
28
|
-
{ permission: 'READ_API_TOKEN' },
|
|
29
|
-
{
|
|
30
|
-
project: 'default',
|
|
31
|
-
environment: 'staging',
|
|
32
|
-
permission: 'CREATE_FEATURE_STRATEGY',
|
|
33
|
-
},
|
|
34
|
-
{
|
|
35
|
-
project: 'default',
|
|
36
|
-
environment: 'staging',
|
|
37
|
-
permission: 'UPDATE_FEATURE_STRATEGY',
|
|
38
|
-
},
|
|
39
|
-
{ project: 'default', permission: 'UPDATE_FEATURE' },
|
|
40
|
-
],
|
|
41
|
-
},
|
|
42
|
-
email: false,
|
|
43
|
-
context: [
|
|
44
|
-
{
|
|
45
|
-
name: 'appName',
|
|
46
|
-
description: 'Allows you to constrain on application name',
|
|
47
|
-
stickiness: false,
|
|
48
|
-
sortOrder: 2,
|
|
49
|
-
legalValues: [],
|
|
50
|
-
createdAt: '2022-04-08T10:59:24.374Z',
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
name: 'currentTime',
|
|
54
|
-
description: '',
|
|
55
|
-
stickiness: false,
|
|
56
|
-
sortOrder: 10,
|
|
57
|
-
legalValues: [],
|
|
58
|
-
createdAt: '2022-05-18T08:15:18.917Z',
|
|
59
|
-
},
|
|
60
|
-
{
|
|
61
|
-
name: 'environment',
|
|
62
|
-
description: 'Allows you to constrain on application environment',
|
|
63
|
-
stickiness: false,
|
|
64
|
-
sortOrder: 0,
|
|
65
|
-
legalValues: [],
|
|
66
|
-
createdAt: '2022-04-08T10:59:24.374Z',
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
name: 'userId',
|
|
70
|
-
description: 'Allows you to constrain on userId',
|
|
71
|
-
stickiness: false,
|
|
72
|
-
sortOrder: 1,
|
|
73
|
-
legalValues: [],
|
|
74
|
-
createdAt: '2022-04-08T10:59:24.374Z',
|
|
75
|
-
},
|
|
76
|
-
],
|
|
77
|
-
featureTypes: [
|
|
78
|
-
{
|
|
79
|
-
id: 'release',
|
|
80
|
-
name: 'Release',
|
|
81
|
-
description: 'Release feature toggles are used to release new features.',
|
|
82
|
-
lifetimeDays: 40,
|
|
83
|
-
},
|
|
84
|
-
{
|
|
85
|
-
id: 'experiment',
|
|
86
|
-
name: 'Experiment',
|
|
87
|
-
description: 'Experiment feature toggles are used to test and verify multiple different versions of a feature.',
|
|
88
|
-
lifetimeDays: 40,
|
|
89
|
-
},
|
|
90
|
-
{
|
|
91
|
-
id: 'operational',
|
|
92
|
-
name: 'Operational',
|
|
93
|
-
description: 'Operational feature toggles are used to control aspects of a rollout.',
|
|
94
|
-
lifetimeDays: 7,
|
|
95
|
-
},
|
|
96
|
-
],
|
|
97
|
-
tagTypes: [
|
|
98
|
-
{
|
|
99
|
-
name: 'simple',
|
|
100
|
-
description: 'Used to simplify filtering of features',
|
|
101
|
-
icon: '#',
|
|
102
|
-
},
|
|
103
|
-
{ name: 'hashtag', description: '', icon: null },
|
|
104
|
-
],
|
|
105
|
-
strategies: [
|
|
106
|
-
{
|
|
107
|
-
displayName: 'Standard',
|
|
108
|
-
name: 'default',
|
|
109
|
-
editable: false,
|
|
110
|
-
description: 'The standard strategy is strictly on / off for your entire userbase.',
|
|
111
|
-
parameters: [],
|
|
112
|
-
deprecated: false,
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
displayName: null,
|
|
116
|
-
name: 'gradualRolloutRandom',
|
|
117
|
-
editable: true,
|
|
118
|
-
description: 'Randomly activate the feature toggle. No stickiness.',
|
|
119
|
-
parameters: [
|
|
120
|
-
{
|
|
121
|
-
name: 'percentage',
|
|
122
|
-
type: 'percentage',
|
|
123
|
-
description: '',
|
|
124
|
-
required: false,
|
|
125
|
-
},
|
|
126
|
-
],
|
|
127
|
-
deprecated: true,
|
|
128
|
-
},
|
|
129
|
-
],
|
|
130
|
-
projects: [
|
|
131
|
-
{
|
|
132
|
-
name: 'Default',
|
|
133
|
-
id: 'default',
|
|
134
|
-
description: 'Default project',
|
|
135
|
-
health: 74,
|
|
136
|
-
featureCount: 10,
|
|
137
|
-
memberCount: 3,
|
|
138
|
-
updatedAt: '2022-06-28T17:33:53.963Z',
|
|
139
|
-
},
|
|
140
|
-
],
|
|
141
|
-
};
|
|
142
|
-
expect((0, validate_1.validateSchema)('#/components/schemas/bootstrapUiSchema', {})).not.toBeUndefined();
|
|
143
|
-
expect((0, validate_1.validateSchema)('#/components/schemas/bootstrapUiSchema', data)).toBeUndefined();
|
|
144
|
-
});
|
|
145
|
-
//# sourceMappingURL=bootstrap-ui-schema.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap-ui-schema.test.js","sourceRoot":"","sources":["../../../../src/lib/openapi/spec/bootstrap-ui-schema.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { FromSchema } from 'json-schema-to-ts';
|
|
2
|
-
export declare const clientVariantSchema: {
|
|
3
|
-
readonly $id: "#/components/schemas/clientVariantSchema";
|
|
4
|
-
readonly type: "object";
|
|
5
|
-
readonly additionalProperties: false;
|
|
6
|
-
readonly required: readonly ["name", "weight"];
|
|
7
|
-
readonly properties: {
|
|
8
|
-
readonly name: {
|
|
9
|
-
readonly type: "string";
|
|
10
|
-
};
|
|
11
|
-
readonly weight: {
|
|
12
|
-
readonly type: "number";
|
|
13
|
-
};
|
|
14
|
-
readonly weightType: {
|
|
15
|
-
readonly type: "string";
|
|
16
|
-
};
|
|
17
|
-
readonly stickiness: {
|
|
18
|
-
readonly type: "string";
|
|
19
|
-
};
|
|
20
|
-
readonly payload: {
|
|
21
|
-
readonly type: "object";
|
|
22
|
-
readonly required: readonly ["type", "value"];
|
|
23
|
-
readonly properties: {
|
|
24
|
-
readonly type: {
|
|
25
|
-
readonly type: "string";
|
|
26
|
-
};
|
|
27
|
-
readonly value: {
|
|
28
|
-
readonly type: "string";
|
|
29
|
-
};
|
|
30
|
-
};
|
|
31
|
-
};
|
|
32
|
-
};
|
|
33
|
-
readonly components: {};
|
|
34
|
-
};
|
|
35
|
-
export declare type ClientVariantSchema = FromSchema<typeof clientVariantSchema>;
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.clientVariantSchema = void 0;
|
|
4
|
-
exports.clientVariantSchema = {
|
|
5
|
-
$id: '#/components/schemas/clientVariantSchema',
|
|
6
|
-
type: 'object',
|
|
7
|
-
additionalProperties: false,
|
|
8
|
-
required: ['name', 'weight'],
|
|
9
|
-
properties: {
|
|
10
|
-
name: {
|
|
11
|
-
type: 'string',
|
|
12
|
-
},
|
|
13
|
-
weight: {
|
|
14
|
-
type: 'number',
|
|
15
|
-
},
|
|
16
|
-
weightType: {
|
|
17
|
-
type: 'string',
|
|
18
|
-
},
|
|
19
|
-
stickiness: {
|
|
20
|
-
type: 'string',
|
|
21
|
-
},
|
|
22
|
-
payload: {
|
|
23
|
-
type: 'object',
|
|
24
|
-
required: ['type', 'value'],
|
|
25
|
-
properties: {
|
|
26
|
-
type: {
|
|
27
|
-
type: 'string',
|
|
28
|
-
},
|
|
29
|
-
value: {
|
|
30
|
-
type: 'string',
|
|
31
|
-
},
|
|
32
|
-
},
|
|
33
|
-
},
|
|
34
|
-
},
|
|
35
|
-
components: {},
|
|
36
|
-
};
|
|
37
|
-
//# sourceMappingURL=client-variant-schema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client-variant-schema.js","sourceRoot":"","sources":["../../../../src/lib/openapi/spec/client-variant-schema.ts"],"names":[],"mappings":";;;AAEa,QAAA,mBAAmB,GAAG;IAC/B,GAAG,EAAE,0CAA0C;IAC/C,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC5B,UAAU,EAAE;QACR,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;SACjB;QACD,MAAM,EAAE;YACJ,IAAI,EAAE,QAAQ;SACjB;QACD,UAAU,EAAE;YACR,IAAI,EAAE,QAAQ;SACjB;QACD,UAAU,EAAE;YACR,IAAI,EAAE,QAAQ;SACjB;QACD,OAAO,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;YAC3B,UAAU,EAAE;gBACR,IAAI,EAAE;oBACF,IAAI,EAAE,QAAQ;iBACjB;gBACD,KAAK,EAAE;oBACH,IAAI,EAAE,QAAQ;iBACjB;aACJ;SACJ;KACJ;IACD,UAAU,EAAE,EAAE;CACR,CAAC"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Response } from 'express';
|
|
2
|
-
import Controller from '../controller';
|
|
3
|
-
import { AuthedRequest } from '../../types/core';
|
|
4
|
-
import { IUnleashConfig } from '../../types/option';
|
|
5
|
-
import { IUnleashServices } from '../../types/services';
|
|
6
|
-
import { BootstrapUiSchema } from '../../openapi/spec/bootstrap-ui-schema';
|
|
7
|
-
/**
|
|
8
|
-
* Provides admin UI configuration.
|
|
9
|
-
* Not to be confused with SDK bootstrapping.
|
|
10
|
-
*/
|
|
11
|
-
declare class BootstrapUIController extends Controller {
|
|
12
|
-
private logger;
|
|
13
|
-
private accessService;
|
|
14
|
-
private contextService;
|
|
15
|
-
private emailService;
|
|
16
|
-
private featureTypeService;
|
|
17
|
-
private projectService;
|
|
18
|
-
private strategyService;
|
|
19
|
-
private tagTypeService;
|
|
20
|
-
private versionService;
|
|
21
|
-
private openApiService;
|
|
22
|
-
constructor(config: IUnleashConfig, { contextService, tagTypeService, strategyService, projectService, accessService, emailService, versionService, featureTypeService, openApiService, }: Pick<IUnleashServices, 'contextService' | 'tagTypeService' | 'strategyService' | 'projectService' | 'accessService' | 'emailService' | 'versionService' | 'featureTypeService' | 'openApiService'>);
|
|
23
|
-
bootstrap(req: AuthedRequest, res: Response<BootstrapUiSchema>): Promise<void>;
|
|
24
|
-
}
|
|
25
|
-
export default BootstrapUIController;
|
|
@@ -1,82 +0,0 @@
|
|
|
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
|
-
const controller_1 = __importDefault(require("../controller"));
|
|
7
|
-
const version_1 = __importDefault(require("../../util/version"));
|
|
8
|
-
const permissions_1 = require("../../types/permissions");
|
|
9
|
-
const create_response_schema_1 = require("../../openapi/util/create-response-schema");
|
|
10
|
-
const bootstrap_ui_schema_1 = require("../../openapi/spec/bootstrap-ui-schema");
|
|
11
|
-
const serialize_dates_1 = require("../../types/serialize-dates");
|
|
12
|
-
/**
|
|
13
|
-
* Provides admin UI configuration.
|
|
14
|
-
* Not to be confused with SDK bootstrapping.
|
|
15
|
-
*/
|
|
16
|
-
class BootstrapUIController extends controller_1.default {
|
|
17
|
-
constructor(config, { contextService, tagTypeService, strategyService, projectService, accessService, emailService, versionService, featureTypeService, openApiService, }) {
|
|
18
|
-
super(config);
|
|
19
|
-
this.contextService = contextService;
|
|
20
|
-
this.tagTypeService = tagTypeService;
|
|
21
|
-
this.strategyService = strategyService;
|
|
22
|
-
this.projectService = projectService;
|
|
23
|
-
this.accessService = accessService;
|
|
24
|
-
this.featureTypeService = featureTypeService;
|
|
25
|
-
this.emailService = emailService;
|
|
26
|
-
this.versionService = versionService;
|
|
27
|
-
this.openApiService = openApiService;
|
|
28
|
-
this.logger = config.getLogger('routes/admin-api/bootstrap-ui.ts');
|
|
29
|
-
this.route({
|
|
30
|
-
method: 'get',
|
|
31
|
-
path: '',
|
|
32
|
-
handler: this.bootstrap,
|
|
33
|
-
permission: permissions_1.NONE,
|
|
34
|
-
middleware: [
|
|
35
|
-
openApiService.validPath({
|
|
36
|
-
tags: ['other'],
|
|
37
|
-
operationId: 'getBootstrapUiData',
|
|
38
|
-
responses: {
|
|
39
|
-
202: (0, create_response_schema_1.createResponseSchema)('bootstrapUiSchema'),
|
|
40
|
-
},
|
|
41
|
-
}),
|
|
42
|
-
],
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
async bootstrap(req, res) {
|
|
46
|
-
const jobs = [
|
|
47
|
-
this.contextService.getAll(),
|
|
48
|
-
this.featureTypeService.getAll(),
|
|
49
|
-
this.tagTypeService.getAll(),
|
|
50
|
-
this.strategyService.getStrategies(),
|
|
51
|
-
this.projectService.getProjects(),
|
|
52
|
-
this.accessService.getPermissionsForUser(req.user),
|
|
53
|
-
];
|
|
54
|
-
const [context, featureTypes, tagTypes, strategies, projects, userPermissions,] = await Promise.all(jobs);
|
|
55
|
-
const authenticationType = this.config.authentication && this.config.authentication.type;
|
|
56
|
-
const versionInfo = this.versionService.getVersionInfo();
|
|
57
|
-
const uiConfig = {
|
|
58
|
-
...this.config.ui,
|
|
59
|
-
authenticationType,
|
|
60
|
-
unleashUrl: this.config.server.unleashUrl,
|
|
61
|
-
version: version_1.default,
|
|
62
|
-
baseUriPath: this.config.server.baseUriPath,
|
|
63
|
-
versionInfo,
|
|
64
|
-
};
|
|
65
|
-
this.openApiService.respondWithValidation(200, res, bootstrap_ui_schema_1.bootstrapUiSchema.$id, {
|
|
66
|
-
uiConfig,
|
|
67
|
-
user: {
|
|
68
|
-
...(0, serialize_dates_1.serializeDates)(req.user),
|
|
69
|
-
permissions: userPermissions,
|
|
70
|
-
},
|
|
71
|
-
email: this.emailService.isEnabled(),
|
|
72
|
-
context: (0, serialize_dates_1.serializeDates)(context),
|
|
73
|
-
featureTypes,
|
|
74
|
-
tagTypes,
|
|
75
|
-
strategies,
|
|
76
|
-
projects: (0, serialize_dates_1.serializeDates)(projects),
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
exports.default = BootstrapUIController;
|
|
81
|
-
module.exports = BootstrapUIController;
|
|
82
|
-
//# sourceMappingURL=bootstrap-ui.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap-ui.js","sourceRoot":"","sources":["../../../../src/lib/routes/admin-api/bootstrap-ui.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,60 +0,0 @@
|
|
|
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
|
-
const supertest_1 = __importDefault(require("supertest"));
|
|
7
|
-
const test_config_1 = require("../../../test/config/test-config");
|
|
8
|
-
const random_id_1 = require("../../util/random-id");
|
|
9
|
-
const store_1 = __importDefault(require("../../../test/fixtures/store"));
|
|
10
|
-
const app_1 = __importDefault(require("../../app"));
|
|
11
|
-
const services_1 = require("../../services");
|
|
12
|
-
const uiConfig = {
|
|
13
|
-
headerBackground: 'red',
|
|
14
|
-
slogan: 'hello',
|
|
15
|
-
};
|
|
16
|
-
async function getSetup() {
|
|
17
|
-
const base = `/random${(0, random_id_1.randomId)()}`;
|
|
18
|
-
const config = (0, test_config_1.createTestConfig)({
|
|
19
|
-
server: { baseUriPath: base },
|
|
20
|
-
ui: uiConfig,
|
|
21
|
-
});
|
|
22
|
-
const stores = (0, store_1.default)();
|
|
23
|
-
const services = (0, services_1.createServices)(stores, config);
|
|
24
|
-
const app = await (0, app_1.default)(config, stores, services);
|
|
25
|
-
return {
|
|
26
|
-
base,
|
|
27
|
-
request: (0, supertest_1.default)(app),
|
|
28
|
-
destroy: () => {
|
|
29
|
-
services.versionService.destroy();
|
|
30
|
-
services.clientInstanceService.destroy();
|
|
31
|
-
services.apiTokenService.destroy();
|
|
32
|
-
},
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
let request;
|
|
36
|
-
let base;
|
|
37
|
-
let destroy;
|
|
38
|
-
beforeEach(async () => {
|
|
39
|
-
const setup = await getSetup();
|
|
40
|
-
request = setup.request;
|
|
41
|
-
base = setup.base;
|
|
42
|
-
destroy = setup.destroy;
|
|
43
|
-
});
|
|
44
|
-
afterEach(() => {
|
|
45
|
-
destroy();
|
|
46
|
-
});
|
|
47
|
-
test('should get ui config', async () => {
|
|
48
|
-
const { body } = await request
|
|
49
|
-
.get(`${base}/api/admin/ui-bootstrap`)
|
|
50
|
-
.expect('Content-Type', /json/)
|
|
51
|
-
.expect(200);
|
|
52
|
-
expect(body.uiConfig.slogan).toEqual('hello');
|
|
53
|
-
expect(body.email).toEqual(false);
|
|
54
|
-
expect(body.user).toHaveProperty('permissions');
|
|
55
|
-
expect(body.context).toBeInstanceOf(Array);
|
|
56
|
-
expect(body.tagTypes).toBeInstanceOf(Array);
|
|
57
|
-
expect(body.strategies).toBeInstanceOf(Array);
|
|
58
|
-
expect(body.projects).toBeInstanceOf(Array);
|
|
59
|
-
});
|
|
60
|
-
//# sourceMappingURL=bootstrap-ui.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap-ui.test.js","sourceRoot":"","sources":["../../../../src/lib/routes/admin-api/bootstrap-ui.test.ts"],"names":[],"mappings":";;;;;AAAA,0DAAkC;AAClC,kEAAoE;AACpE,oDAAgD;AAEhD,yEAAwD;AACxD,oDAA+B;AAC/B,6CAAgD;AAChD,MAAM,QAAQ,GAAG;IACb,gBAAgB,EAAE,KAAK;IACvB,MAAM,EAAE,OAAO;CAClB,CAAC;AAEF,KAAK,UAAU,QAAQ;IACnB,MAAM,IAAI,GAAG,UAAU,IAAA,oBAAQ,GAAE,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,IAAA,8BAAgB,EAAC;QAC5B,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;QAC7B,EAAE,EAAE,QAAQ;KACf,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,IAAA,eAAY,GAAE,CAAC;IAC9B,MAAM,QAAQ,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEhD,MAAM,GAAG,GAAG,MAAM,IAAA,aAAM,EAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEnD,OAAO;QACH,IAAI;QACJ,OAAO,EAAE,IAAA,mBAAS,EAAC,GAAG,CAAC;QACvB,OAAO,EAAE,GAAG,EAAE;YACV,QAAQ,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;YAClC,QAAQ,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC;YACzC,QAAQ,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;QACvC,CAAC;KACJ,CAAC;AACN,CAAC;AAED,IAAI,OAAO,CAAC;AACZ,IAAI,IAAI,CAAC;AACT,IAAI,OAAO,CAAC;AAEZ,UAAU,CAAC,KAAK,IAAI,EAAE;IAClB,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;IAC/B,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IAClB,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,SAAS,CAAC,GAAG,EAAE;IACX,OAAO,EAAE,CAAC;AACd,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;IACpC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,OAAO;SACzB,GAAG,CAAC,GAAG,IAAI,yBAAyB,CAAC;SACrC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC;SAC9B,MAAM,CAAC,GAAG,CAAC,CAAC;IAEjB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;IAChD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAChD,CAAC,CAAC,CAAC"}
|
|
@@ -1,43 +0,0 @@
|
|
|
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
|
-
const database_init_1 = __importDefault(require("../../helpers/database-init"));
|
|
7
|
-
const no_logger_1 = __importDefault(require("../../../fixtures/no-logger"));
|
|
8
|
-
const test_helper_1 = require("../../helpers/test-helper");
|
|
9
|
-
let app;
|
|
10
|
-
let db;
|
|
11
|
-
const email = 'user@getunleash.io';
|
|
12
|
-
beforeAll(async () => {
|
|
13
|
-
db = await (0, database_init_1.default)('ui_bootstrap_serial', no_logger_1.default);
|
|
14
|
-
app = await (0, test_helper_1.setupAppWithAuth)(db.stores);
|
|
15
|
-
});
|
|
16
|
-
afterAll(async () => {
|
|
17
|
-
await app.destroy();
|
|
18
|
-
await db.destroy();
|
|
19
|
-
});
|
|
20
|
-
test('Should get ui-bootstrap data', async () => {
|
|
21
|
-
// login
|
|
22
|
-
await app.request
|
|
23
|
-
.post('/auth/demo/login')
|
|
24
|
-
.send({
|
|
25
|
-
email,
|
|
26
|
-
})
|
|
27
|
-
.expect(200);
|
|
28
|
-
// get user data
|
|
29
|
-
await app.request
|
|
30
|
-
.get('/api/admin/ui-bootstrap')
|
|
31
|
-
.expect(200)
|
|
32
|
-
.expect('Content-Type', /json/)
|
|
33
|
-
.expect((res) => {
|
|
34
|
-
const bootstrap = res.body;
|
|
35
|
-
expect(bootstrap.context).toBeDefined();
|
|
36
|
-
expect(bootstrap.featureTypes).toBeDefined();
|
|
37
|
-
expect(bootstrap.uiConfig).toBeDefined();
|
|
38
|
-
expect(bootstrap.user).toBeDefined();
|
|
39
|
-
expect(bootstrap.context.length).toBeGreaterThan(0);
|
|
40
|
-
expect(bootstrap.user.email).toBe(email);
|
|
41
|
-
});
|
|
42
|
-
});
|
|
43
|
-
//# sourceMappingURL=bootstrap.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.test.js","sourceRoot":"","sources":["../../../../../src/test/e2e/api/admin/bootstrap.test.ts"],"names":[],"mappings":";;;;;AAAA,gFAAiD;AACjD,4EAAoD;AACpD,2DAA6D;AAE7D,IAAI,GAAG,CAAC;AACR,IAAI,EAAE,CAAC;AAEP,MAAM,KAAK,GAAG,oBAAoB,CAAC;AAEnC,SAAS,CAAC,KAAK,IAAI,EAAE;IACjB,EAAE,GAAG,MAAM,IAAA,uBAAM,EAAC,qBAAqB,EAAE,mBAAS,CAAC,CAAC;IACpD,GAAG,GAAG,MAAM,IAAA,8BAAgB,EAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,KAAK,IAAI,EAAE;IAChB,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;IAC5C,QAAQ;IACR,MAAM,GAAG,CAAC,OAAO;SACZ,IAAI,CAAC,kBAAkB,CAAC;SACxB,IAAI,CAAC;QACF,KAAK;KACR,CAAC;SACD,MAAM,CAAC,GAAG,CAAC,CAAC;IAEjB,gBAAgB;IAChB,MAAM,GAAG,CAAC,OAAO;SACZ,GAAG,CAAC,yBAAyB,CAAC;SAC9B,MAAM,CAAC,GAAG,CAAC;SACX,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC;SAC9B,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC;QAC3B,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QACxC,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;QACzC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,CAAC"}
|