unleash-server 4.2.3 → 4.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/lib/create-config.js +5 -15
- package/dist/lib/create-config.js.map +1 -1
- package/dist/lib/create-config.test.js +0 -37
- package/dist/lib/create-config.test.js.map +1 -1
- package/dist/lib/db/feature-strategy-store.js +1 -0
- package/dist/lib/db/feature-strategy-store.js.map +1 -1
- package/dist/lib/db/feature-toggle-store.d.ts +4 -1
- package/dist/lib/db/feature-toggle-store.js +27 -2
- 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/user-splash-store.d.ts +19 -0
- package/dist/lib/db/user-splash-store.js +70 -0
- package/dist/lib/db/user-splash-store.js.map +1 -0
- package/dist/lib/error/operation-denied-error.d.ts +4 -0
- package/dist/lib/error/operation-denied-error.js +24 -0
- package/dist/lib/error/operation-denied-error.js.map +1 -0
- package/dist/lib/routes/admin-api/context.js +1 -1
- package/dist/lib/routes/admin-api/context.js.map +1 -1
- package/dist/lib/routes/admin-api/feature.js +2 -2
- package/dist/lib/routes/admin-api/feature.js.map +1 -1
- package/dist/lib/routes/admin-api/index.js +2 -0
- package/dist/lib/routes/admin-api/index.js.map +1 -1
- package/dist/lib/routes/admin-api/project/features.js +3 -3
- package/dist/lib/routes/admin-api/project/features.js.map +1 -1
- package/dist/lib/routes/admin-api/project/index.js +2 -0
- package/dist/lib/routes/admin-api/project/index.js.map +1 -1
- package/dist/lib/routes/admin-api/project/variants.d.ts +21 -0
- package/dist/lib/routes/admin-api/project/variants.js +41 -0
- package/dist/lib/routes/admin-api/project/variants.js.map +1 -0
- package/dist/lib/routes/admin-api/tag-type.js +1 -1
- package/dist/lib/routes/admin-api/tag-type.js.map +1 -1
- package/dist/lib/routes/admin-api/user-admin.js +2 -2
- package/dist/lib/routes/admin-api/user-admin.js.map +1 -1
- package/dist/lib/routes/admin-api/user-feedback-controller.js +3 -2
- package/dist/lib/routes/admin-api/user-feedback-controller.js.map +1 -1
- package/dist/lib/routes/admin-api/user-splash-controller.d.ts +10 -0
- package/dist/lib/routes/admin-api/user-splash-controller.js +29 -0
- package/dist/lib/routes/admin-api/user-splash-controller.js.map +1 -0
- package/dist/lib/routes/admin-api/user.d.ts +2 -1
- package/dist/lib/routes/admin-api/user.js +9 -5
- package/dist/lib/routes/admin-api/user.js.map +1 -1
- package/dist/lib/routes/auth/reset-password-controller.js +4 -3
- package/dist/lib/routes/auth/reset-password-controller.js.map +1 -1
- package/dist/lib/routes/client-api/metrics.d.ts +0 -1
- package/dist/lib/routes/client-api/metrics.js +4 -11
- package/dist/lib/routes/client-api/metrics.js.map +1 -1
- package/dist/lib/routes/client-api/register.js +3 -1
- package/dist/lib/routes/client-api/register.js.map +1 -1
- package/dist/lib/routes/controller.d.ts +5 -5
- package/dist/lib/routes/controller.js +13 -9
- package/dist/lib/routes/controller.js.map +1 -1
- package/dist/lib/routes/util.js +18 -16
- package/dist/lib/routes/util.js.map +1 -1
- package/dist/lib/schema/feature-schema.d.ts +1 -0
- package/dist/lib/schema/feature-schema.js +6 -7
- package/dist/lib/schema/feature-schema.js.map +1 -1
- package/dist/lib/services/access-service.d.ts +1 -1
- package/dist/lib/services/access-service.js +1 -1
- package/dist/lib/services/access-service.js.map +1 -1
- package/dist/lib/services/client-metrics/client-metrics-service-v2.js +3 -3
- package/dist/lib/services/client-metrics/client-metrics-service-v2.js.map +1 -1
- package/dist/lib/services/feature-toggle-service.d.ts +11 -2
- package/dist/lib/services/feature-toggle-service.js +57 -2
- package/dist/lib/services/feature-toggle-service.js.map +1 -1
- package/dist/lib/services/index.js +3 -0
- package/dist/lib/services/index.js.map +1 -1
- package/dist/lib/services/project-health-service.js +1 -0
- package/dist/lib/services/project-health-service.js.map +1 -1
- package/dist/lib/services/project-service.d.ts +0 -1
- package/dist/lib/services/project-service.js +7 -15
- package/dist/lib/services/project-service.js.map +1 -1
- package/dist/lib/services/user-splash-service.d.ts +12 -0
- package/dist/lib/services/user-splash-service.js +33 -0
- package/dist/lib/services/user-splash-service.js.map +1 -0
- package/dist/lib/types/model.d.ts +4 -0
- package/dist/lib/types/model.js +6 -1
- package/dist/lib/types/model.js.map +1 -1
- package/dist/lib/types/permissions.d.ts +1 -0
- package/dist/lib/types/permissions.js +3 -1
- package/dist/lib/types/permissions.js.map +1 -1
- package/dist/lib/types/services.d.ts +2 -0
- package/dist/lib/types/stores/feature-toggle-store.d.ts +3 -1
- package/dist/lib/types/stores/user-splash-store.d.ts +15 -0
- package/dist/lib/types/stores/user-splash-store.js +3 -0
- package/dist/lib/types/stores/user-splash-store.js.map +1 -0
- package/dist/lib/types/stores.d.ts +2 -0
- package/dist/migrations/20211108130333-create-user-splash-table.d.ts +2 -0
- package/dist/migrations/20211108130333-create-user-splash-table.js +18 -0
- package/dist/migrations/20211108130333-create-user-splash-table.js.map +1 -0
- package/dist/migrations/20211109103930-add-splash-entry-for-users.d.ts +2 -0
- package/dist/migrations/20211109103930-add-splash-entry-for-users.js +7 -0
- package/dist/migrations/20211109103930-add-splash-entry-for-users.js.map +1 -0
- package/dist/migrations/20211126112551-disable-default-environment.d.ts +2 -0
- package/dist/migrations/20211126112551-disable-default-environment.js +24 -0
- package/dist/migrations/20211126112551-disable-default-environment.js.map +1 -0
- package/dist/test/e2e/api/admin/client-metrics.e2e.test.js +2 -2
- package/dist/test/e2e/api/admin/client-metrics.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/feature.e2e.test.js +24 -18
- package/dist/test/e2e/api/admin/feature.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/project/features.auth.e2e.test.d.ts +1 -0
- package/dist/test/e2e/api/admin/project/features.auth.e2e.test.js +61 -0
- package/dist/test/e2e/api/admin/project/features.auth.e2e.test.js.map +1 -0
- package/dist/test/e2e/api/admin/project/features.e2e.test.js +25 -0
- package/dist/test/e2e/api/admin/project/features.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/project/project.health.e2e.test.js +60 -0
- package/dist/test/e2e/api/admin/project/project.health.e2e.test.js.map +1 -1
- package/dist/test/e2e/api/admin/project/variants.e2e.test.d.ts +1 -0
- package/dist/test/e2e/api/admin/project/variants.e2e.test.js +727 -0
- package/dist/test/e2e/api/admin/project/variants.e2e.test.js.map +1 -0
- package/dist/test/e2e/api/admin/splash.e2e.test.d.ts +1 -0
- package/dist/test/e2e/api/admin/splash.e2e.test.js +51 -0
- package/dist/test/e2e/api/admin/splash.e2e.test.js.map +1 -0
- package/dist/test/e2e/services/project-service.e2e.test.js +0 -30
- package/dist/test/e2e/services/project-service.e2e.test.js.map +1 -1
- package/dist/test/e2e/stores/user-splash-store.e2e.test.d.ts +1 -0
- package/dist/test/e2e/stores/user-splash-store.e2e.test.js +74 -0
- package/dist/test/e2e/stores/user-splash-store.e2e.test.js.map +1 -0
- package/dist/test/fixtures/fake-feature-toggle-store.d.ts +3 -1
- package/dist/test/fixtures/fake-feature-toggle-store.js +9 -0
- package/dist/test/fixtures/fake-feature-toggle-store.js.map +1 -1
- package/dist/test/fixtures/fake-user-splash-store.d.ts +12 -0
- package/dist/test/fixtures/fake-user-splash-store.js +40 -0
- package/dist/test/fixtures/fake-user-splash-store.js.map +1 -0
- package/dist/test/fixtures/store.js +2 -0
- package/dist/test/fixtures/store.js.map +1 -1
- package/package.json +17 -16
package/dist/lib/types/model.js
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RoleType = exports.RoleName = exports.PermissionType = void 0;
|
|
3
|
+
exports.RoleType = exports.RoleName = exports.PermissionType = exports.WeightType = void 0;
|
|
4
|
+
var WeightType;
|
|
5
|
+
(function (WeightType) {
|
|
6
|
+
WeightType["VARIABLE"] = "variable";
|
|
7
|
+
WeightType["FIX"] = "fix";
|
|
8
|
+
})(WeightType = exports.WeightType || (exports.WeightType = {}));
|
|
4
9
|
var PermissionType;
|
|
5
10
|
(function (PermissionType) {
|
|
6
11
|
PermissionType["root"] = "root";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/lib/types/model.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/lib/types/model.ts"],"names":[],"mappings":";;;AAUA,IAAY,UAGX;AAHD,WAAY,UAAU;IAClB,mCAAqB,CAAA;IACrB,yBAAW,CAAA;AACf,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB;AAgND,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,+BAAa,CAAA;IACb,qCAAmB,CAAA;AACvB,CAAC,EAHW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAGzB;AAED,IAAY,QAOX;AAPD,WAAY,QAAQ;IAChB,wDAAwD;IACxD,2BAAe,CAAA;IACf,6BAAiB,CAAA;IACjB,6BAAiB,CAAA;IACjB,2BAAe,CAAA;IACf,6BAAiB,CAAA;AACrB,CAAC,EAPW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAOnB;AAED,IAAY,QAGX;AAHD,WAAY,QAAQ;IAChB,yBAAa,CAAA;IACb,+BAAmB,CAAA;AACvB,CAAC,EAHW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAGnB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export declare const ADMIN = "ADMIN";
|
|
2
2
|
export declare const CLIENT = "CLIENT";
|
|
3
|
+
export declare const NONE = "NONE";
|
|
3
4
|
export declare const CREATE_FEATURE = "CREATE_FEATURE";
|
|
4
5
|
export declare const UPDATE_FEATURE = "UPDATE_FEATURE";
|
|
5
6
|
export declare const DELETE_FEATURE = "DELETE_FEATURE";
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DELETE_TAG_TYPE = exports.UPDATE_TAG_TYPE = exports.DELETE_API_TOKEN = exports.CREATE_API_TOKEN = exports.UPDATE_API_TOKEN = exports.UPDATE_ROLE = exports.READ_ROLE = exports.DELETE_ADDON = exports.UPDATE_ADDON = exports.CREATE_ADDON = exports.DELETE_PROJECT = exports.UPDATE_PROJECT = exports.CREATE_PROJECT = exports.DELETE_CONTEXT_FIELD = exports.UPDATE_CONTEXT_FIELD = exports.CREATE_CONTEXT_FIELD = exports.UPDATE_APPLICATION = exports.DELETE_STRATEGY = exports.UPDATE_STRATEGY = exports.CREATE_STRATEGY = exports.DELETE_FEATURE = exports.UPDATE_FEATURE = exports.CREATE_FEATURE = exports.CLIENT = exports.ADMIN = void 0;
|
|
3
|
+
exports.DELETE_TAG_TYPE = exports.UPDATE_TAG_TYPE = exports.DELETE_API_TOKEN = exports.CREATE_API_TOKEN = exports.UPDATE_API_TOKEN = exports.UPDATE_ROLE = exports.READ_ROLE = exports.DELETE_ADDON = exports.UPDATE_ADDON = exports.CREATE_ADDON = exports.DELETE_PROJECT = exports.UPDATE_PROJECT = exports.CREATE_PROJECT = exports.DELETE_CONTEXT_FIELD = exports.UPDATE_CONTEXT_FIELD = exports.CREATE_CONTEXT_FIELD = exports.UPDATE_APPLICATION = exports.DELETE_STRATEGY = exports.UPDATE_STRATEGY = exports.CREATE_STRATEGY = exports.DELETE_FEATURE = exports.UPDATE_FEATURE = exports.CREATE_FEATURE = exports.NONE = exports.CLIENT = exports.ADMIN = void 0;
|
|
4
|
+
// Special
|
|
4
5
|
exports.ADMIN = 'ADMIN';
|
|
5
6
|
exports.CLIENT = 'CLIENT';
|
|
7
|
+
exports.NONE = 'NONE';
|
|
6
8
|
exports.CREATE_FEATURE = 'CREATE_FEATURE';
|
|
7
9
|
exports.UPDATE_FEATURE = 'UPDATE_FEATURE';
|
|
8
10
|
exports.DELETE_FEATURE = 'DELETE_FEATURE';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../../src/lib/types/permissions.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../../src/lib/types/permissions.ts"],"names":[],"mappings":";;;AAAA,UAAU;AACG,QAAA,KAAK,GAAG,OAAO,CAAC;AAChB,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,IAAI,GAAG,MAAM,CAAC;AAEd,QAAA,cAAc,GAAG,gBAAgB,CAAC;AAClC,QAAA,cAAc,GAAG,gBAAgB,CAAC;AAClC,QAAA,cAAc,GAAG,gBAAgB,CAAC;AAClC,QAAA,eAAe,GAAG,iBAAiB,CAAC;AACpC,QAAA,eAAe,GAAG,iBAAiB,CAAC;AACpC,QAAA,eAAe,GAAG,iBAAiB,CAAC;AACpC,QAAA,kBAAkB,GAAG,oBAAoB,CAAC;AAC1C,QAAA,oBAAoB,GAAG,sBAAsB,CAAC;AAC9C,QAAA,oBAAoB,GAAG,sBAAsB,CAAC;AAC9C,QAAA,oBAAoB,GAAG,sBAAsB,CAAC;AAC9C,QAAA,cAAc,GAAG,gBAAgB,CAAC;AAClC,QAAA,cAAc,GAAG,gBAAgB,CAAC;AAClC,QAAA,cAAc,GAAG,gBAAgB,CAAC;AAClC,QAAA,YAAY,GAAG,cAAc,CAAC;AAC9B,QAAA,YAAY,GAAG,cAAc,CAAC;AAC9B,QAAA,YAAY,GAAG,cAAc,CAAC;AAC9B,QAAA,SAAS,GAAG,WAAW,CAAC;AACxB,QAAA,WAAW,GAAG,aAAa,CAAC;AAC5B,QAAA,gBAAgB,GAAG,kBAAkB,CAAC;AACtC,QAAA,gBAAgB,GAAG,kBAAkB,CAAC;AACtC,QAAA,gBAAgB,GAAG,kBAAkB,CAAC;AACtC,QAAA,eAAe,GAAG,iBAAiB,CAAC;AACpC,QAAA,eAAe,GAAG,iBAAiB,CAAC"}
|
|
@@ -23,6 +23,7 @@ import EnvironmentService from '../services/environment-service';
|
|
|
23
23
|
import FeatureTagService from '../services/feature-tag-service';
|
|
24
24
|
import ProjectHealthService from '../services/project-health-service';
|
|
25
25
|
import ClientMetricsServiceV2 from '../services/client-metrics/client-metrics-service-v2';
|
|
26
|
+
import UserSplashService from '../services/user-splash-service';
|
|
26
27
|
export interface IUnleashServices {
|
|
27
28
|
accessService: AccessService;
|
|
28
29
|
addonService: AddonService;
|
|
@@ -50,4 +51,5 @@ export interface IUnleashServices {
|
|
|
50
51
|
userFeedbackService: UserFeedbackService;
|
|
51
52
|
userService: UserService;
|
|
52
53
|
versionService: VersionService;
|
|
54
|
+
userSplashService: UserSplashService;
|
|
53
55
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FeatureToggle, FeatureToggleDTO } from '../model';
|
|
1
|
+
import { FeatureToggle, FeatureToggleDTO, IVariant } from '../model';
|
|
2
2
|
import { Store } from './store';
|
|
3
3
|
export interface IFeatureToggleQuery {
|
|
4
4
|
archived: boolean;
|
|
@@ -14,4 +14,6 @@ export interface IFeatureToggleStore extends Store<FeatureToggle, string> {
|
|
|
14
14
|
archive(featureName: string): Promise<FeatureToggle>;
|
|
15
15
|
revive(featureName: string): Promise<FeatureToggle>;
|
|
16
16
|
getAll(query?: Partial<IFeatureToggleQuery>): Promise<FeatureToggle[]>;
|
|
17
|
+
getVariants(featureName: string): Promise<IVariant[]>;
|
|
18
|
+
saveVariants(featureName: string, newVariants: IVariant[]): Promise<FeatureToggle>;
|
|
17
19
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Store } from './store';
|
|
2
|
+
export interface IUserSplash {
|
|
3
|
+
seen: boolean;
|
|
4
|
+
splashId: string;
|
|
5
|
+
userId: number;
|
|
6
|
+
}
|
|
7
|
+
export interface IUserSplashKey {
|
|
8
|
+
userId: number;
|
|
9
|
+
splashId: string;
|
|
10
|
+
}
|
|
11
|
+
export interface IUserSplashStore extends Store<IUserSplash, IUserSplashKey> {
|
|
12
|
+
getAllUserSplashs(userId: number): Promise<IUserSplash[]>;
|
|
13
|
+
getSplash(userId: number, splashId: string): Promise<IUserSplash>;
|
|
14
|
+
updateSplash(splash: IUserSplash): Promise<IUserSplash>;
|
|
15
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-splash-store.js","sourceRoot":"","sources":["../../../../src/lib/types/stores/user-splash-store.ts"],"names":[],"mappings":""}
|
|
@@ -23,6 +23,7 @@ import { IFeatureStrategiesStore } from './stores/feature-strategies-store';
|
|
|
23
23
|
import { IEnvironmentStore } from './stores/environment-store';
|
|
24
24
|
import { IFeatureToggleClientStore } from './stores/feature-toggle-client-store';
|
|
25
25
|
import { IClientMetricsStoreV2 } from './stores/client-metrics-store-v2';
|
|
26
|
+
import { IUserSplashStore } from './stores/user-splash-store';
|
|
26
27
|
export interface IUnleashStores {
|
|
27
28
|
accessStore: IAccessStore;
|
|
28
29
|
addonStore: IAddonStore;
|
|
@@ -49,4 +50,5 @@ export interface IUnleashStores {
|
|
|
49
50
|
tagTypeStore: ITagTypeStore;
|
|
50
51
|
userFeedbackStore: IUserFeedbackStore;
|
|
51
52
|
userStore: IUserStore;
|
|
53
|
+
userSplashStore: IUserSplashStore;
|
|
52
54
|
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
exports.up = function (db, cb) {
|
|
3
|
+
db.runSql(`
|
|
4
|
+
CREATE TABLE IF NOT EXISTS user_splash
|
|
5
|
+
(user_id INTEGER NOT NULL references users (id) ON DELETE CASCADE,
|
|
6
|
+
splash_id TEXT,
|
|
7
|
+
seen BOOLEAN NOT NULL DEFAULT false,
|
|
8
|
+
PRIMARY KEY (user_id, splash_id));
|
|
9
|
+
CREATE INDEX user_splash_user_id_idx ON user_splash (user_id);
|
|
10
|
+
`, cb);
|
|
11
|
+
};
|
|
12
|
+
exports.down = function (db, cb) {
|
|
13
|
+
db.runSql(`
|
|
14
|
+
DROP INDEX user_splash_user_id_idx;
|
|
15
|
+
DROP TABLE user_splash;
|
|
16
|
+
`, cb);
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=20211108130333-create-user-splash-table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"20211108130333-create-user-splash-table.js","sourceRoot":"","sources":["../../src/migrations/20211108130333-create-user-splash-table.js"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,CAAC,EAAE,GAAG,UAAU,EAAE,EAAE,EAAE;IACzB,EAAE,CAAC,MAAM,CACL;;;;;;;SAOC,EACD,EAAE,CACL,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,CAAC,IAAI,GAAG,UAAU,EAAE,EAAE,EAAE;IAC3B,EAAE,CAAC,MAAM,CACL;;;CAGP,EACO,EAAE,CACL,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
exports.up = function (db, cb) {
|
|
2
|
+
db.runSql(`INSERT INTO user_splash(splash_id, user_id, seen) SELECT 'environment', u.id, false FROM users u`, cb);
|
|
3
|
+
};
|
|
4
|
+
exports.down = function (db, cb) {
|
|
5
|
+
db.runSql('DELETE FROM user_splash', cb);
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=20211109103930-add-splash-entry-for-users.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"20211109103930-add-splash-entry-for-users.js","sourceRoot":"","sources":["../../src/migrations/20211109103930-add-splash-entry-for-users.js"],"names":[],"mappings":"AAAA,OAAO,CAAC,EAAE,GAAG,UAAU,EAAE,EAAE,EAAE;IACzB,EAAE,CAAC,MAAM,CACL,kGAAkG,EAClG,EAAE,CACL,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,CAAC,IAAI,GAAG,UAAU,EAAE,EAAE,EAAE;IAC3B,EAAE,CAAC,MAAM,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAC;AAC7C,CAAC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
exports.up = function (db, cb) {
|
|
2
|
+
db.runSql(`
|
|
3
|
+
UPDATE environments
|
|
4
|
+
SET enabled = false
|
|
5
|
+
WHERE name = 'default'
|
|
6
|
+
AND NOT EXISTS (select * from features);
|
|
7
|
+
|
|
8
|
+
DELETE FROM project_environments
|
|
9
|
+
WHERE environment_name = 'default'
|
|
10
|
+
AND NOT EXISTS (select * from features);
|
|
11
|
+
|
|
12
|
+
INSERT INTO project_environments(project_id, environment_name)
|
|
13
|
+
SELECT 'default', 'development'
|
|
14
|
+
WHERE NOT EXISTS (select * from features);
|
|
15
|
+
|
|
16
|
+
INSERT INTO project_environments(project_id, environment_name)
|
|
17
|
+
SELECT 'default', 'production'
|
|
18
|
+
WHERE NOT EXISTS (select * from features);
|
|
19
|
+
`, cb);
|
|
20
|
+
};
|
|
21
|
+
exports.down = function (db, cb) {
|
|
22
|
+
db.runSql('', cb);
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=20211126112551-disable-default-environment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"20211126112551-disable-default-environment.js","sourceRoot":"","sources":["../../src/migrations/20211126112551-disable-default-environment.js"],"names":[],"mappings":"AAAA,OAAO,CAAC,EAAE,GAAG,UAAU,EAAE,EAAE,EAAE;IACzB,EAAE,CAAC,MAAM,CACL;;;;;;;;;;;;;;;;;OAiBD,EACC,EAAE,CACL,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,CAAC,IAAI,GAAG,UAAU,EAAE,EAAE,EAAE;IAC3B,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;AACtB,CAAC,CAAC"}
|
|
@@ -160,7 +160,7 @@ test('should return toggle summary', async () => {
|
|
|
160
160
|
});
|
|
161
161
|
test('should only include last hour of metrics return toggle summary', async () => {
|
|
162
162
|
const now = new Date();
|
|
163
|
-
const
|
|
163
|
+
const dateTwoHoursAgo = (0, date_fns_1.subHours)(now, 2);
|
|
164
164
|
const metrics = [
|
|
165
165
|
{
|
|
166
166
|
featureName: 'demo',
|
|
@@ -198,7 +198,7 @@ test('should only include last hour of metrics return toggle summary', async ()
|
|
|
198
198
|
featureName: 'demo',
|
|
199
199
|
appName: 'backend-api',
|
|
200
200
|
environment: 'test',
|
|
201
|
-
timestamp:
|
|
201
|
+
timestamp: dateTwoHoursAgo,
|
|
202
202
|
yes: 55,
|
|
203
203
|
no: 55,
|
|
204
204
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-metrics.e2e.test.js","sourceRoot":"","sources":["../../../../../src/test/e2e/api/admin/client-metrics.e2e.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"client-metrics.e2e.test.js","sourceRoot":"","sources":["../../../../../src/test/e2e/api/admin/client-metrics.e2e.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,6 +22,9 @@ beforeAll(async () => {
|
|
|
22
22
|
await app.services.featureToggleServiceV2.createFeatureToggle(projectId, toggle, username);
|
|
23
23
|
await app.services.featureToggleServiceV2.createStrategy(strategy, { projectId, featureName: toggle.name, environment: constants_1.DEFAULT_ENV }, username);
|
|
24
24
|
};
|
|
25
|
+
const createVariants = async (featureName, variants) => {
|
|
26
|
+
await app.services.featureToggleServiceV2.saveVariants(featureName, variants);
|
|
27
|
+
};
|
|
25
28
|
await createToggle({
|
|
26
29
|
name: 'featureX',
|
|
27
30
|
description: 'the #1 feature',
|
|
@@ -80,23 +83,23 @@ beforeAll(async () => {
|
|
|
80
83
|
await createToggle({
|
|
81
84
|
name: 'feature.with.variants',
|
|
82
85
|
description: 'A feature toggle with variants',
|
|
83
|
-
variants: [
|
|
84
|
-
{
|
|
85
|
-
name: 'control',
|
|
86
|
-
weight: 50,
|
|
87
|
-
weightType: 'variable',
|
|
88
|
-
overrides: [],
|
|
89
|
-
stickiness: 'default',
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
name: 'new',
|
|
93
|
-
weight: 50,
|
|
94
|
-
weightType: 'variable',
|
|
95
|
-
overrides: [],
|
|
96
|
-
stickiness: 'default',
|
|
97
|
-
},
|
|
98
|
-
],
|
|
99
86
|
});
|
|
87
|
+
await createVariants('feature.with.variants', [
|
|
88
|
+
{
|
|
89
|
+
name: 'control',
|
|
90
|
+
weight: 50,
|
|
91
|
+
weightType: 'variable',
|
|
92
|
+
overrides: [],
|
|
93
|
+
stickiness: 'default',
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
name: 'new',
|
|
97
|
+
weight: 50,
|
|
98
|
+
weightType: 'variable',
|
|
99
|
+
overrides: [],
|
|
100
|
+
stickiness: 'default',
|
|
101
|
+
},
|
|
102
|
+
]);
|
|
100
103
|
});
|
|
101
104
|
afterAll(async () => {
|
|
102
105
|
await app.destroy();
|
|
@@ -137,7 +140,7 @@ test('creates new feature toggle', async () => {
|
|
|
137
140
|
});
|
|
138
141
|
});
|
|
139
142
|
test('creates new feature toggle with variants', async () => {
|
|
140
|
-
expect.assertions(
|
|
143
|
+
expect.assertions(1);
|
|
141
144
|
return app.request
|
|
142
145
|
.post('/api/admin/features')
|
|
143
146
|
.send({
|
|
@@ -150,7 +153,10 @@ test('creates new feature toggle with variants', async () => {
|
|
|
150
153
|
],
|
|
151
154
|
})
|
|
152
155
|
.set('Content-Type', 'application/json')
|
|
153
|
-
.expect(201)
|
|
156
|
+
.expect(201)
|
|
157
|
+
.expect((res) => {
|
|
158
|
+
expect(res.body.variants).toHaveLength(2);
|
|
159
|
+
});
|
|
154
160
|
});
|
|
155
161
|
test('fetch feature toggle with variants', async () => {
|
|
156
162
|
expect.assertions(1);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.e2e.test.js","sourceRoot":"","sources":["../../../../../src/test/e2e/api/admin/feature.e2e.test.ts"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAE1B,gFAA8D;AAC9D,2DAAmE;AACnE,4EAAoD;AACpD,8DAA6D;AAE7D,IAAI,GAAiB,CAAC;AACtB,IAAI,EAAW,CAAC;AAEhB,MAAM,eAAe,GAAG;IACpB,IAAI,EAAE,SAAS;IACf,UAAU,EAAE,EAAE;IACd,WAAW,EAAE,EAAE;CAClB,CAAC;AAEF,SAAS,CAAC,KAAK,IAAI,EAAE;IACjB,EAAE,GAAG,MAAM,IAAA,uBAAM,EAAC,oBAAoB,EAAE,mBAAS,CAAC,CAAC;IACnD,GAAG,GAAG,MAAM,IAAA,sBAAQ,EAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IAEhC,MAAM,YAAY,GAAG,KAAK,EACtB,MAAwB,EACxB,WAAwC,eAAe,EACvD,YAAoB,SAAS,EAC7B,WAAmB,MAAM,EAC3B,EAAE;QACA,MAAM,GAAG,CAAC,QAAQ,CAAC,sBAAsB,CAAC,mBAAmB,CACzD,SAAS,EACT,MAAM,EACN,QAAQ,CACX,CAAC;QACF,MAAM,GAAG,CAAC,QAAQ,CAAC,sBAAsB,CAAC,cAAc,CACpD,QAAQ,EACR,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,uBAAW,EAAE,EACjE,QAAQ,CACX,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,YAAY,CAAC;QACf,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,gBAAgB;KAChC,CAAC,CAAC;IAEH,MAAM,YAAY,CACd;QACI,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,2BAA2B;KAC3C,EACD;QACI,IAAI,EAAE,KAAK;QACX,WAAW,EAAE,EAAE;QACf,UAAU,EAAE;YACR,GAAG,EAAE,KAAK;SACb;KACJ,CACJ,CAAC;IAEF,MAAM,YAAY,CACd;QACI,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,kBAAkB;KAClC,EACD;QACI,IAAI,EAAE,KAAK;QACX,WAAW,EAAE,EAAE;QACf,UAAU,EAAE;YACR,GAAG,EAAE,KAAK;SACb;KACJ,CACJ,CAAC;IAEF,MAAM,YAAY,CACd;QACI,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,gBAAgB;KAChC,EACD;QACI,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,EAAE;KACjB,CACJ,CAAC;IAEF,MAAM,GAAG,CAAC,QAAQ,CAAC,sBAAsB,CAAC,aAAa,CACnD,kBAAkB,EAClB,MAAM,CACT,CAAC;IAEF,MAAM,YAAY,CACd;QACI,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,2BAA2B;KAC3C,EACD;QACI,IAAI,EAAE,KAAK;QACX,WAAW,EAAE,EAAE;QACf,UAAU,EAAE;YACR,GAAG,EAAE,KAAK;SACb;KACJ,CACJ,CAAC;IAEF,MAAM,GAAG,CAAC,QAAQ,CAAC,sBAAsB,CAAC,aAAa,CACnD,kBAAkB,EAClB,MAAM,CACT,CAAC;IAEF,MAAM,YAAY,CACd;QACI,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,kBAAkB;KAClC,EACD;QACI,IAAI,EAAE,KAAK;QACX,WAAW,EAAE,EAAE;QACf,UAAU,EAAE;YACR,GAAG,EAAE,KAAK;SACb;KACJ,CACJ,CAAC;IAEF,MAAM,GAAG,CAAC,QAAQ,CAAC,sBAAsB,CAAC,aAAa,CACnD,kBAAkB,EAClB,MAAM,CACT,CAAC;IAEF,MAAM,YAAY,CAAC;QACf,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EAAE,gCAAgC;QAC7C,QAAQ,EAAE;YACN;gBACI,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,EAAE;gBACV,UAAU,EAAE,UAAU;gBACtB,SAAS,EAAE,EAAE;gBACb,UAAU,EAAE,SAAS;aACxB;YACD;gBACI,IAAI,EAAE,KAAK;gBACX,MAAM,EAAE,EAAE;gBACV,UAAU,EAAE,UAAU;gBACtB,SAAS,EAAE,EAAE;gBACb,UAAU,EAAE,SAAS;aACxB;SACJ;KACJ,CAAC,CAAC;AACP,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,iCAAiC,EAAE,KAAK,IAAI,EAAE,CAC/C,GAAG,CAAC,OAAO;KACN,GAAG,CAAC,qBAAqB,CAAC;KAC1B,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC;KAC9B,MAAM,CAAC,GAAG,CAAC;KACX,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;IACZ,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC,CAAC,CAAC,CAAC;AAEZ,IAAI,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;IACtC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO;SACb,GAAG,CAAC,8BAA8B,CAAC;SACnC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC;SAC9B,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;IACpD,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACxE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;IAC1C,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO;SACb,IAAI,CAAC,qBAAqB,CAAC;SAC3B,IAAI,CAAC;QACF,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC;SACD,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACvC,MAAM,CAAC,GAAG,CAAC;SACX,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC/C,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;IACxD,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO;SACb,IAAI,CAAC,qBAAqB,CAAC;SAC3B,IAAI,CAAC;QACF,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjC,QAAQ,EAAE;YACN,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE;YAChC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE;SACnC;KACJ,CAAC;SACD,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACvC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;IAClD,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO;SACb,GAAG,CAAC,2CAA2C,CAAC;SAChD,MAAM,CAAC,GAAG,CAAC;SACX,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;IACjE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,GAAG,CAAC,OAAO;SACZ,IAAI,CAAC,qBAAqB,CAAC;SAC3B,IAAI,CAAC;QACF,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC;SACD,MAAM,CAAC,GAAG,CAAC,CAAC;IACjB,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACtD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;IACzD,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO;SACb,IAAI,CAAC,qBAAqB,CAAC;SAC3B,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;SAClB,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACvC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;IAC3E,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO;SACb,GAAG,CAAC,sCAAsC,CAAC;SAC3C,IAAI,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SAClD,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACvC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;IACnE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO;SACb,GAAG,CAAC,8BAA8B,CAAC;SACnC,IAAI,CAAC;QACF,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC;SACD,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACvC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;IACxD,MAAM,GAAG,CAAC,OAAO;SACZ,GAAG,CAAC,8BAA8B,CAAC;SACnC,IAAI,CAAC;QACF,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,QAAQ;QACjB,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC;SACD,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACvC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,GAAG,CAAC,OAAO;SAC7B,GAAG,CAAC,8BAA8B,CAAC;SACnC,MAAM,CAAC,GAAG,CAAC,CAAC;IAEjB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;IAC7D,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO;SACb,IAAI,CAAC,6CAA6C,CAAC;SACnD,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACvC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;IACpD,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,WAAW,GAAG,kBAAkB,CAAC;IACvC,MAAM,QAAQ,GAAG,gBAAgB,CAAC;IAClC,MAAM,OAAO,GACT,MAAM,GAAG,CAAC,QAAQ,CAAC,sBAAsB,CAAC,mBAAmB,CACzD,SAAS,EACT;QACI,IAAI,EAAE,WAAW;KACpB,EACD,MAAM,CACT,CAAC;IACN,MAAM,GAAG,CAAC,QAAQ,CAAC,sBAAsB,CAAC,cAAc,CACpD,eAAe,EACf,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,uBAAW,EAAE,EAC/D,QAAQ,CACX,CAAC;IACF,OAAO,GAAG,CAAC,OAAO;SACb,IAAI,CAAC,uBAAuB,OAAO,CAAC,IAAI,SAAS,CAAC;SAClD,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACvC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;IAC1C,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1E,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;IAC/C,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAChF,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;IACjE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO;SACb,IAAI,CAAC,qBAAqB,CAAC;SAC3B,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;SAC1B,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACvC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;IACnE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO;SACb,IAAI,CAAC,8BAA8B,CAAC;SACpC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;SAC1B,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACvC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;IAC7E,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO;SACb,GAAG,CAAC,8BAA8B,CAAC;SACnC,IAAI,CAAC;QACF,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,4BAA4B;QACzC,OAAO,EAAE,KAAK;QACd,UAAU,EAAE;YACR;gBACI,IAAI,EAAE,KAAK;gBACX,UAAU,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE;aAC7B;SACJ;KACJ,CAAC;SACD,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACvC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;IAChE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO;SACb,IAAI,CAAC,qBAAqB,CAAC;SAC3B,IAAI,CAAC;QACF,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC;SACD,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACvC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;IACjE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC,OAAO;SACb,IAAI,CAAC,qBAAqB,CAAC;SAC3B,IAAI,CAAC;QACF,IAAI,EAAE,6BAA6B;QACnC,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjC,QAAQ,EAAE;YACN;gBACI,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,EAAE;gBACV,SAAS,EAAE;oBACP;wBACI,WAAW,EAAE,QAAQ;wBACrB,MAAM,EAAE,CAAC,KAAK,CAAC;qBAClB;iBACJ;aACJ;YACD,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE;SACnC;KACJ,CAAC;SACD,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACvC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;IACvD,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;QAC/C,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC,OAAO;SACb,GAAG,CAAC,qCAAqC,CAAC;SAC1C,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;IACpD,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;QAC/C,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC,OAAO;SACb,GAAG,CAAC,uCAAuC,CAAC;SAC5C,MAAM,CAAC,GAAG,CAAC;SACX,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;IACzC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;QAC/C,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC,CAAC;IACH,MAAM,GAAG,CAAC,OAAO;SACZ,IAAI,CAAC,uCAAuC,CAAC;SAC7C,IAAI,CAAC;QACF,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,QAAQ;KACjB,CAAC;SACD,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;IAC7C,OAAO,GAAG,CAAC,OAAO;SACb,GAAG,CAAC,uCAAuC,CAAC;SAC5C,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;IAC/E,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;QAC/C,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC,CAAC;IACH,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC,IAAI,CAAC;QACjE,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,QAAQ;KACjB,CAAC,CAAC;IACH,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC,IAAI,CAAC;QACjE,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,QAAQ;KACjB,CAAC,CAAC;IACH,OAAO,GAAG,CAAC,OAAO;SACb,GAAG,CAAC,uCAAuC,CAAC;SAC5C,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC;SAC9B,MAAM,CAAC,GAAG,CAAC;SACX,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;IACjC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,YAAY,GAAG,eAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzC,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;QAC/C,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG;QACR,KAAK,EAAE,eAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1B,IAAI,EAAE,QAAQ;KACjB,CAAC;IACF,MAAM,GAAG,CAAC,OAAO;SACZ,IAAI,CAAC,uBAAuB,YAAY,OAAO,CAAC;SAChD,IAAI,CAAC,GAAG,CAAC;SACT,MAAM,CAAC,GAAG,CAAC,CAAC;IACjB,MAAM,GAAG,CAAC,OAAO;SACZ,MAAM,CACH,uBAAuB,YAAY,SAAS,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CACtE;SACA,MAAM,CAAC,GAAG,CAAC,CAAC;IACjB,OAAO,GAAG,CAAC,OAAO;SACb,GAAG,CAAC,uBAAuB,YAAY,OAAO,CAAC;SAC/C,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC;SAC9B,MAAM,CAAC,GAAG,CAAC;SACX,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;IAC9C,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,YAAY,GAAG,eAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,MAAM,YAAY,GAAG,eAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;QAC/C,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC,CAAC;IACH,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;QAC/C,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,eAAK,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC1D,MAAM,GAAG,CAAC,OAAO;SACZ,IAAI,CAAC,uBAAuB,YAAY,OAAO,CAAC;SAChD,IAAI,CAAC,GAAG,CAAC;SACT,MAAM,CAAC,GAAG,CAAC,CAAC;IACjB,OAAO,GAAG,CAAC,OAAO;SACb,GAAG,CAAC,2BAA2B,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;SACvD,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC;SAC9B,MAAM,CAAC,GAAG,CAAC;SACX,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,CAAC;AACH,IAAI,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;IACpD,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,YAAY,GAAG,eAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,MAAM,YAAY,GAAG,eAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;QAC/C,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC,CAAC;IACH,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;QAC/C,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,eAAK,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC9D,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,eAAK,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC/D,MAAM,GAAG,CAAC,OAAO;SACZ,IAAI,CAAC,uBAAuB,YAAY,OAAO,CAAC;SAChD,IAAI,CAAC,GAAG,CAAC;SACT,MAAM,CAAC,GAAG,CAAC,CAAC;IACjB,MAAM,GAAG,CAAC,OAAO;SACZ,IAAI,CAAC,uBAAuB,YAAY,OAAO,CAAC;SAChD,IAAI,CAAC,IAAI,CAAC;SACV,MAAM,CAAC,GAAG,CAAC,CAAC;IACjB,OAAO,GAAG,CAAC,OAAO;SACb,GAAG,CACA,6BAA6B,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,UAAU,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CACxF;SACA,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC;SAC9B,MAAM,CAAC,GAAG,CAAC;SACX,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAC/D,IAAI,CACP,CAAC;QACF,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAC/D,IAAI,CACP,CAAC;IACN,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,CAAC;AACH,IAAI,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;IAC/D,MAAM,YAAY,GAAG,QAAQ,eAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;IAC5E,MAAM,YAAY,GAAG,eAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAEhE,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;QAC/C,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC,CAAC;IACH,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;QAC/C,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC,CAAC;IACH,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;QAC/C,IAAI,EAAE,uBAAuB;QAC7B,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,eAAK,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC1D,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,eAAK,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC/D,MAAM,GAAG,CAAC,OAAO;SACZ,IAAI,CAAC,uBAAuB,YAAY,OAAO,CAAC;SAChD,IAAI,CAAC,GAAG,CAAC;SACT,MAAM,CAAC,GAAG,CAAC,CAAC;IACjB,MAAM,GAAG,CAAC,OAAO;SACZ,IAAI,CAAC,uBAAuB,YAAY,OAAO,CAAC;SAChD,IAAI,CAAC,IAAI,CAAC;SACV,MAAM,CAAC,GAAG,CAAC,CAAC;IACjB,MAAM,GAAG,CAAC,OAAO;SACZ,IAAI,CAAC,gDAAgD,CAAC;SACtD,IAAI,CAAC,GAAG,CAAC;SACT,MAAM,CAAC,GAAG,CAAC,CAAC;IACjB,MAAM,GAAG,CAAC,OAAO;SACZ,GAAG,CAAC,2BAA2B,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;SACvD,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC;SAC9B,MAAM,CAAC,GAAG,CAAC;SACX,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,MAAM,GAAG,CAAC,OAAO;SACZ,GAAG,CAAC,2CAA2C,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;SACvE,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC;SAC9B,MAAM,CAAC,GAAG,CAAC;SACX,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;IAC7E,MAAM,YAAY,GAAG,QAAQ,eAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3E,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;QAC/C,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACpC,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,eAAK,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC1D,MAAM,GAAG,CAAC,OAAO;SACZ,IAAI,CAAC,uBAAuB,YAAY,OAAO,CAAC;SAChD,IAAI,CAAC,GAAG,CAAC;SACT,MAAM,CAAC,GAAG,CAAC,CAAC;IACjB,OAAO,GAAG,CAAC,OAAO;SACb,IAAI,CAAC,uBAAuB,YAAY,OAAO,CAAC;SAChD,IAAI,CAAC,GAAG,CAAC;SACT,MAAM,CAAC,GAAG,CAAC;SACX,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CACpC,GAAG,YAAY,0BAA0B,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,GAAG,CACpE,CAAC;IACN,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;IAC7C,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,GAAG,CAAC,OAAO;SACZ,IAAI,CAAC,uCAAuC,CAAC;SAC7C,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;IAE7C,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QAClE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"feature.e2e.test.js","sourceRoot":"","sources":["../../../../../src/test/e2e/api/admin/feature.e2e.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,61 @@
|
|
|
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 test_helper_1 = require("../../../helpers/test-helper");
|
|
8
|
+
const no_logger_1 = __importDefault(require("../../../../fixtures/no-logger"));
|
|
9
|
+
const constants_1 = require("../../../../../lib/util/constants");
|
|
10
|
+
const server_impl_1 = require("../../../../../lib/server-impl");
|
|
11
|
+
let app;
|
|
12
|
+
let db;
|
|
13
|
+
beforeAll(async () => {
|
|
14
|
+
db = await (0, database_init_1.default)('feature_strategy_auth_api_serial', no_logger_1.default);
|
|
15
|
+
app = await (0, test_helper_1.setupAppWithAuth)(db.stores);
|
|
16
|
+
});
|
|
17
|
+
afterEach(async () => {
|
|
18
|
+
const all = await db.stores.projectStore.getEnvironmentsForProject('default');
|
|
19
|
+
await Promise.all(all
|
|
20
|
+
.filter((env) => env !== constants_1.DEFAULT_ENV)
|
|
21
|
+
.map(async (env) => db.stores.projectStore.deleteEnvironmentForProject('default', env)));
|
|
22
|
+
});
|
|
23
|
+
afterAll(async () => {
|
|
24
|
+
await app.destroy();
|
|
25
|
+
await db.destroy();
|
|
26
|
+
});
|
|
27
|
+
test('Should not be possible to update feature toggle without permission', async () => {
|
|
28
|
+
const email = 'user@mail.com';
|
|
29
|
+
const url = '/api/admin/projects/default/features';
|
|
30
|
+
const name = 'auth.toggle.update';
|
|
31
|
+
await db.stores.featureToggleStore.create('default', { name });
|
|
32
|
+
await app.services.userService.createUser({
|
|
33
|
+
email,
|
|
34
|
+
rootRole: server_impl_1.RoleName.VIEWER,
|
|
35
|
+
});
|
|
36
|
+
await app.request.post('/auth/demo/login').send({
|
|
37
|
+
email,
|
|
38
|
+
});
|
|
39
|
+
await app.request
|
|
40
|
+
.put(`${url}/${name}`)
|
|
41
|
+
.send({ name, description: 'updated', type: 'kill-switch' })
|
|
42
|
+
.expect(403);
|
|
43
|
+
});
|
|
44
|
+
test('Should be possible to update feature toggle with permission', async () => {
|
|
45
|
+
const email = 'user2@mail.com';
|
|
46
|
+
const url = '/api/admin/projects/default/features';
|
|
47
|
+
const name = 'auth.toggle.update2';
|
|
48
|
+
await db.stores.featureToggleStore.create('default', { name });
|
|
49
|
+
await app.services.userService.createUser({
|
|
50
|
+
email,
|
|
51
|
+
rootRole: server_impl_1.RoleName.EDITOR,
|
|
52
|
+
});
|
|
53
|
+
await app.request.post('/auth/demo/login').send({
|
|
54
|
+
email,
|
|
55
|
+
});
|
|
56
|
+
await app.request
|
|
57
|
+
.put(`${url}/${name}`)
|
|
58
|
+
.send({ name, description: 'updated', type: 'kill-switch' })
|
|
59
|
+
.expect(200);
|
|
60
|
+
});
|
|
61
|
+
//# sourceMappingURL=features.auth.e2e.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features.auth.e2e.test.js","sourceRoot":"","sources":["../../../../../../src/test/e2e/api/admin/project/features.auth.e2e.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -471,6 +471,31 @@ test('Patching feature toggles to stale should trigger FEATURE_STALE_ON event',
|
|
|
471
471
|
const updateForOurToggle = events.find((e) => e.featureName === name);
|
|
472
472
|
expect(updateForOurToggle).toBeTruthy();
|
|
473
473
|
});
|
|
474
|
+
test('Trying to patch variants on a feature toggle should trigger an OperationDeniedError', async () => {
|
|
475
|
+
const url = '/api/admin/projects/default/features';
|
|
476
|
+
const name = 'toggle.variants.on.patch';
|
|
477
|
+
await app.request
|
|
478
|
+
.post(url)
|
|
479
|
+
.send({ name, description: 'some', type: 'release', stale: false });
|
|
480
|
+
await app.request
|
|
481
|
+
.patch(`${url}/${name}`)
|
|
482
|
+
.send([
|
|
483
|
+
{
|
|
484
|
+
op: 'add',
|
|
485
|
+
path: '/variants/1',
|
|
486
|
+
value: {
|
|
487
|
+
name: 'variant',
|
|
488
|
+
weightType: 'variable',
|
|
489
|
+
weight: 500,
|
|
490
|
+
stickiness: 'default',
|
|
491
|
+
},
|
|
492
|
+
},
|
|
493
|
+
])
|
|
494
|
+
.expect(403)
|
|
495
|
+
.expect((res) => {
|
|
496
|
+
expect(res.body.details[0].message).toEqual('Changing variants is done via PATCH operation to /api/admin/projects/:project/features/:feature/variants');
|
|
497
|
+
});
|
|
498
|
+
});
|
|
474
499
|
test('Patching feature toggles to active (turning stale to false) should trigger FEATURE_STALE_OFF event', async () => {
|
|
475
500
|
const url = '/api/admin/projects/default/features';
|
|
476
501
|
const name = 'toggle.stale.off.patch';
|