unleash-server 4.4.5 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/dist/lib/app.d.ts +1 -1
  2. package/dist/lib/app.js +4 -8
  3. package/dist/lib/app.js.map +1 -1
  4. package/dist/lib/app.test.js +7 -7
  5. package/dist/lib/app.test.js.map +1 -1
  6. package/dist/lib/create-config.js +28 -0
  7. package/dist/lib/create-config.js.map +1 -1
  8. package/dist/lib/create-config.test.js +82 -1
  9. package/dist/lib/create-config.test.js.map +1 -1
  10. package/dist/lib/db/api-token-store.d.ts +1 -0
  11. package/dist/lib/db/api-token-store.js +5 -0
  12. package/dist/lib/db/api-token-store.js.map +1 -1
  13. package/dist/lib/db/feature-toggle-store.d.ts +1 -1
  14. package/dist/lib/db/feature-toggle-store.js +0 -3
  15. package/dist/lib/db/feature-toggle-store.js.map +1 -1
  16. package/dist/lib/middleware/oss-authentication.test.js +6 -6
  17. package/dist/lib/middleware/oss-authentication.test.js.map +1 -1
  18. package/dist/lib/routes/admin-api/config.test.js +4 -4
  19. package/dist/lib/routes/admin-api/config.test.js.map +1 -1
  20. package/dist/lib/routes/admin-api/context.test.js +4 -4
  21. package/dist/lib/routes/admin-api/context.test.js.map +1 -1
  22. package/dist/lib/routes/admin-api/email.test.js +8 -8
  23. package/dist/lib/routes/admin-api/email.test.js.map +1 -1
  24. package/dist/lib/routes/admin-api/events.test.js +4 -4
  25. package/dist/lib/routes/admin-api/events.test.js.map +1 -1
  26. package/dist/lib/routes/admin-api/feature.js +10 -7
  27. package/dist/lib/routes/admin-api/feature.js.map +1 -1
  28. package/dist/lib/routes/admin-api/metrics.test.js +4 -4
  29. package/dist/lib/routes/admin-api/metrics.test.js.map +1 -1
  30. package/dist/lib/routes/admin-api/strategy.test.js +33 -33
  31. package/dist/lib/routes/admin-api/strategy.test.js.map +1 -1
  32. package/dist/lib/routes/admin-api/tag.test.js +4 -4
  33. package/dist/lib/routes/admin-api/tag.test.js.map +1 -1
  34. package/dist/lib/routes/admin-api/user.test.js +1 -1
  35. package/dist/lib/routes/admin-api/user.test.js.map +1 -1
  36. package/dist/lib/routes/backstage.test.js +1 -1
  37. package/dist/lib/routes/backstage.test.js.map +1 -1
  38. package/dist/lib/routes/client-api/feature.test.js +4 -4
  39. package/dist/lib/routes/client-api/feature.test.js.map +1 -1
  40. package/dist/lib/routes/client-api/metrics.test.js +5 -5
  41. package/dist/lib/routes/client-api/metrics.test.js.map +1 -1
  42. package/dist/lib/routes/client-api/register.test.js +4 -4
  43. package/dist/lib/routes/client-api/register.test.js.map +1 -1
  44. package/dist/lib/routes/health-check.test.js +6 -6
  45. package/dist/lib/routes/health-check.test.js.map +1 -1
  46. package/dist/lib/routes/index.test.js +4 -4
  47. package/dist/lib/routes/index.test.js.map +1 -1
  48. package/dist/lib/server-impl.d.ts +2 -1
  49. package/dist/lib/server-impl.js +4 -2
  50. package/dist/lib/server-impl.js.map +1 -1
  51. package/dist/lib/services/api-token-service.d.ts +3 -2
  52. package/dist/lib/services/api-token-service.js +23 -15
  53. package/dist/lib/services/api-token-service.js.map +1 -1
  54. package/dist/lib/services/api-token-service.test.d.ts +1 -0
  55. package/dist/lib/services/api-token-service.test.js +32 -0
  56. package/dist/lib/services/api-token-service.test.js.map +1 -0
  57. package/dist/lib/services/feature-toggle-service.js +1 -1
  58. package/dist/lib/services/feature-toggle-service.js.map +1 -1
  59. package/dist/lib/services/state-service.js +6 -5
  60. package/dist/lib/services/state-service.js.map +1 -1
  61. package/dist/lib/types/api-user.js +0 -1
  62. package/dist/lib/types/api-user.js.map +1 -1
  63. package/dist/lib/types/model.d.ts +1 -1
  64. package/dist/lib/types/models/api-token.d.ts +1 -0
  65. package/dist/lib/types/models/api-token.js +17 -1
  66. package/dist/lib/types/models/api-token.js.map +1 -1
  67. package/dist/lib/types/option.d.ts +3 -0
  68. package/dist/lib/types/option.js.map +1 -1
  69. package/dist/lib/types/stores/api-token-store.d.ts +1 -0
  70. package/dist/lib/util/load-index-html.d.ts +2 -0
  71. package/dist/lib/util/load-index-html.js +26 -0
  72. package/dist/lib/util/load-index-html.js.map +1 -0
  73. package/dist/lib/util/rewriteHTML.d.ts +1 -1
  74. package/dist/lib/util/rewriteHTML.js +3 -2
  75. package/dist/lib/util/rewriteHTML.js.map +1 -1
  76. package/dist/server-dev.js +13 -0
  77. package/dist/server-dev.js.map +1 -1
  78. package/dist/test/config/test-config.js +0 -3
  79. package/dist/test/config/test-config.js.map +1 -1
  80. package/dist/test/e2e/api/admin/project/features.e2e.test.js +37 -0
  81. package/dist/test/e2e/api/admin/project/features.e2e.test.js.map +1 -1
  82. package/dist/test/e2e/api/admin/project/variants.e2e.test.js +22 -24
  83. package/dist/test/e2e/api/admin/project/variants.e2e.test.js.map +1 -1
  84. package/dist/test/e2e/api/admin/state.e2e.test.js +8 -7
  85. package/dist/test/e2e/api/admin/state.e2e.test.js.map +1 -1
  86. package/dist/test/e2e/api/client/feature.e2e.test.js +14 -14
  87. package/dist/test/e2e/api/client/feature.e2e.test.js.map +1 -1
  88. package/dist/test/e2e/helpers/test-helper.js +2 -2
  89. package/dist/test/e2e/helpers/test-helper.js.map +1 -1
  90. package/dist/test/e2e/services/environment-service.test.js +0 -1
  91. package/dist/test/e2e/services/environment-service.test.js.map +1 -1
  92. package/dist/test/fixtures/fake-api-token-store.d.ts +4 -1
  93. package/dist/test/fixtures/fake-api-token-store.js +10 -1
  94. package/dist/test/fixtures/fake-api-token-store.js.map +1 -1
  95. package/package.json +9 -8
@@ -35,13 +35,13 @@ export interface FeatureToggleDTO {
35
35
  type?: string;
36
36
  stale?: boolean;
37
37
  archived?: boolean;
38
- variants?: IVariant[];
39
38
  createdAt?: Date;
40
39
  }
41
40
  export interface FeatureToggle extends FeatureToggleDTO {
42
41
  project: string;
43
42
  lastSeenAt?: Date;
44
43
  createdAt?: Date;
44
+ variants?: IVariant[];
45
45
  }
46
46
  export interface IFeatureToggleClient {
47
47
  name: string;
@@ -17,3 +17,4 @@ export interface IApiToken extends IApiTokenCreate {
17
17
  environment: string;
18
18
  project: string;
19
19
  }
20
+ export declare const validateApiToken: ({ type, project, environment, }: Omit<IApiTokenCreate, 'secret'>) => void;
@@ -1,10 +1,26 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ApiTokenType = exports.ALL = void 0;
6
+ exports.validateApiToken = exports.ApiTokenType = exports.ALL = void 0;
7
+ const bad_data_error_1 = __importDefault(require("../../error/bad-data-error"));
4
8
  exports.ALL = '*';
5
9
  var ApiTokenType;
6
10
  (function (ApiTokenType) {
7
11
  ApiTokenType["CLIENT"] = "client";
8
12
  ApiTokenType["ADMIN"] = "admin";
9
13
  })(ApiTokenType = exports.ApiTokenType || (exports.ApiTokenType = {}));
14
+ const validateApiToken = ({ type, project, environment, }) => {
15
+ if (type === ApiTokenType.ADMIN && project !== exports.ALL) {
16
+ throw new bad_data_error_1.default('Admin token cannot be scoped to single project');
17
+ }
18
+ if (type === ApiTokenType.ADMIN && environment !== exports.ALL) {
19
+ throw new bad_data_error_1.default('Admin token cannot be scoped to single environment');
20
+ }
21
+ if (type === ApiTokenType.CLIENT && environment === exports.ALL) {
22
+ throw new bad_data_error_1.default('Client token cannot be scoped to all environments');
23
+ }
24
+ };
25
+ exports.validateApiToken = validateApiToken;
10
26
  //# sourceMappingURL=api-token.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-token.js","sourceRoot":"","sources":["../../../../src/lib/types/models/api-token.ts"],"names":[],"mappings":";;;AAAa,QAAA,GAAG,GAAG,GAAG,CAAC;AAEvB,IAAY,YAGX;AAHD,WAAY,YAAY;IACpB,iCAAiB,CAAA;IACjB,+BAAe,CAAA;AACnB,CAAC,EAHW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAGvB"}
1
+ {"version":3,"file":"api-token.js","sourceRoot":"","sources":["../../../../src/lib/types/models/api-token.ts"],"names":[],"mappings":";;;;;;AAAA,gFAAsD;AAEzC,QAAA,GAAG,GAAG,GAAG,CAAC;AAEvB,IAAY,YAGX;AAHD,WAAY,YAAY;IACpB,iCAAiB,CAAA;IACjB,+BAAe,CAAA;AACnB,CAAC,EAHW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAGvB;AAkBM,MAAM,gBAAgB,GAAG,CAAC,EAC7B,IAAI,EACJ,OAAO,EACP,WAAW,GACmB,EAAQ,EAAE;IACxC,IAAI,IAAI,KAAK,YAAY,CAAC,KAAK,IAAI,OAAO,KAAK,WAAG,EAAE;QAChD,MAAM,IAAI,wBAAY,CAClB,gDAAgD,CACnD,CAAC;KACL;IAED,IAAI,IAAI,KAAK,YAAY,CAAC,KAAK,IAAI,WAAW,KAAK,WAAG,EAAE;QACpD,MAAM,IAAI,wBAAY,CAClB,oDAAoD,CACvD,CAAC;KACL;IAED,IAAI,IAAI,KAAK,YAAY,CAAC,MAAM,IAAI,WAAW,KAAK,WAAG,EAAE;QACrD,MAAM,IAAI,wBAAY,CAClB,mDAAmD,CACtD,CAAC;KACL;AACL,CAAC,CAAC;AAtBW,QAAA,gBAAgB,oBAsB3B"}
@@ -1,6 +1,7 @@
1
1
  /// <reference types="node" />
2
2
  import EventEmitter from 'events';
3
3
  import { LogLevel, LogProvider } from '../logger';
4
+ import { IApiTokenCreate } from './models/api-token';
4
5
  export declare type EventHook = (eventName: string, data: object) => void;
5
6
  export interface ISSLOption {
6
7
  rejectUnauthorized: boolean;
@@ -48,6 +49,7 @@ export interface IAuthOption {
48
49
  type: IAuthType;
49
50
  customAuthHandler?: Function;
50
51
  createAdminUser: boolean;
52
+ initApiTokens: IApiTokenCreate[];
51
53
  }
52
54
  export interface IImportOption {
53
55
  file: string;
@@ -61,6 +63,7 @@ export interface IServerOption {
61
63
  keepAliveTimeout: number;
62
64
  headersTimeout: number;
63
65
  baseUriPath: string;
66
+ cdnPrefix?: string;
64
67
  unleashUrl: string;
65
68
  serverMetrics: boolean;
66
69
  enableRequestLogger: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"option.js","sourceRoot":"","sources":["../../../src/lib/types/option.ts"],"names":[],"mappings":";;;AAyCA,IAAY,SAOX;AAPD,WAAY,SAAS;IACjB,wCAA2B,CAAA;IAC3B,0BAAa,CAAA;IACb,sCAAyB,CAAA;IACzB,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;IACjB,0BAAa,CAAA;AACjB,CAAC,EAPW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAOpB"}
1
+ {"version":3,"file":"option.js","sourceRoot":"","sources":["../../../src/lib/types/option.ts"],"names":[],"mappings":";;;AA0CA,IAAY,SAOX;AAPD,WAAY,SAAS;IACjB,wCAA2B,CAAA;IAC3B,0BAAa,CAAA;IACb,sCAAyB,CAAA;IACzB,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;IACjB,0BAAa,CAAA;AACjB,CAAC,EAPW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAOpB"}
@@ -5,4 +5,5 @@ export interface IApiTokenStore extends Store<IApiToken, string> {
5
5
  insert(newToken: IApiTokenCreate): Promise<IApiToken>;
6
6
  setExpiry(secret: string, expiresAt: Date): Promise<IApiToken>;
7
7
  markSeenAt(secrets: string[]): Promise<void>;
8
+ count(): Promise<number>;
8
9
  }
@@ -0,0 +1,2 @@
1
+ import { IUnleashConfig } from '../server-impl';
2
+ export declare function loadIndexHTML(config: IUnleashConfig, publicFolder: string): Promise<string>;
@@ -0,0 +1,26 @@
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.loadIndexHTML = void 0;
7
+ const fs_1 = __importDefault(require("fs"));
8
+ const rewriteHTML_1 = require("./rewriteHTML");
9
+ const path_1 = __importDefault(require("path"));
10
+ const node_fetch_1 = __importDefault(require("node-fetch"));
11
+ async function loadIndexHTML(config, publicFolder) {
12
+ const { cdnPrefix, baseUriPath = '' } = config.server;
13
+ let indexHTML;
14
+ if (cdnPrefix) {
15
+ const res = await (0, node_fetch_1.default)(`${cdnPrefix}/index.html`);
16
+ indexHTML = await res.text();
17
+ }
18
+ else {
19
+ indexHTML = fs_1.default
20
+ .readFileSync(path_1.default.join(publicFolder, 'index.html'))
21
+ .toString();
22
+ }
23
+ return (0, rewriteHTML_1.rewriteHTML)(indexHTML, baseUriPath, cdnPrefix);
24
+ }
25
+ exports.loadIndexHTML = loadIndexHTML;
26
+ //# sourceMappingURL=load-index-html.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-index-html.js","sourceRoot":"","sources":["../../../src/lib/util/load-index-html.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AAEpB,+CAA4C;AAC5C,gDAAwB;AACxB,4DAA+B;AAExB,KAAK,UAAU,aAAa,CAC/B,MAAsB,EACtB,YAAoB;IAEpB,MAAM,EAAE,SAAS,EAAE,WAAW,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC;IAEtD,IAAI,SAAiB,CAAC;IACtB,IAAI,SAAS,EAAE;QACX,MAAM,GAAG,GAAG,MAAM,IAAA,oBAAK,EAAC,GAAG,SAAS,aAAa,CAAC,CAAC;QACnD,SAAS,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;KAChC;SAAM;QACH,SAAS,GAAG,YAAE;aACT,YAAY,CAAC,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;aACnD,QAAQ,EAAE,CAAC;KACnB;IAED,OAAO,IAAA,yBAAW,EAAC,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;AAC1D,CAAC;AAjBD,sCAiBC"}
@@ -1 +1 @@
1
- export declare const rewriteHTML: (input: string, rewriteValue: string) => string;
1
+ export declare const rewriteHTML: (input: string, rewriteValue: string, cdnPrefix?: string) => string;
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.rewriteHTML = void 0;
4
- const rewriteHTML = (input, rewriteValue) => {
4
+ const rewriteHTML = (input, rewriteValue, cdnPrefix) => {
5
5
  let result = input;
6
6
  result = result.replace(/::baseUriPath::/gi, rewriteValue);
7
- result = result.replace(/\/static/gi, `${rewriteValue}/static`);
7
+ result = result.replace(/::cdnPrefix::/gi, cdnPrefix || '');
8
+ result = result.replace(/\/static/gi, `${cdnPrefix || rewriteValue}/static`);
8
9
  return result;
9
10
  };
10
11
  exports.rewriteHTML = rewriteHTML;
@@ -1 +1 @@
1
- {"version":3,"file":"rewriteHTML.js","sourceRoot":"","sources":["../../../src/lib/util/rewriteHTML.ts"],"names":[],"mappings":";;;AAAO,MAAM,WAAW,GAAG,CAAC,KAAa,EAAE,YAAoB,EAAU,EAAE;IACvE,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC;IAC3D,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,GAAG,YAAY,SAAS,CAAC,CAAC;IAEhE,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AANW,QAAA,WAAW,eAMtB"}
1
+ {"version":3,"file":"rewriteHTML.js","sourceRoot":"","sources":["../../../src/lib/util/rewriteHTML.ts"],"names":[],"mappings":";;;AAAO,MAAM,WAAW,GAAG,CACvB,KAAa,EACb,YAAoB,EACpB,SAAkB,EACZ,EAAE;IACR,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC;IAC3D,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;IAC5D,MAAM,GAAG,MAAM,CAAC,OAAO,CACnB,YAAY,EACZ,GAAG,SAAS,IAAI,YAAY,SAAS,CACxC,CAAC;IAEF,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAdW,QAAA,WAAW,eActB"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const server_impl_1 = require("./lib/server-impl");
4
4
  const create_config_1 = require("./lib/create-config");
5
5
  const logger_1 = require("./lib/logger");
6
+ const api_token_1 = require("./lib/types/models/api-token");
6
7
  process.nextTick(async () => {
7
8
  try {
8
9
  await (0, server_impl_1.start)((0, create_config_1.createConfig)({
@@ -19,6 +20,7 @@ process.nextTick(async () => {
19
20
  baseUriPath: '',
20
21
  // keepAliveTimeout: 1,
21
22
  gracefulShutdownEnable: true,
23
+ // cdnPrefix: 'https://cdn.getunleash.io/unleash/v4.4.1',
22
24
  },
23
25
  logLevel: logger_1.LogLevel.debug,
24
26
  enableOAS: true,
@@ -30,6 +32,17 @@ process.nextTick(async () => {
30
32
  enabled: true,
31
33
  },
32
34
  },
35
+ authentication: {
36
+ initApiTokens: [
37
+ {
38
+ environment: '*',
39
+ project: '*',
40
+ secret: '*:*.964a287e1b728cb5f4f3e0120df92cb5',
41
+ type: api_token_1.ApiTokenType.ADMIN,
42
+ username: 'some-user',
43
+ },
44
+ ],
45
+ },
33
46
  }));
34
47
  }
35
48
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"server-dev.js","sourceRoot":"","sources":["../src/server-dev.ts"],"names":[],"mappings":";;AAAA,mDAA0C;AAC1C,uDAAmD;AACnD,yCAAwC;AAExC,OAAO,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;IACxB,IAAI;QACA,MAAM,IAAA,mBAAK,EACP,IAAA,4BAAY,EAAC;YACT,EAAE,EAAE;gBACA,IAAI,EAAE,cAAc;gBACpB,QAAQ,EAAE,SAAS;gBACnB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,SAAS;gBACnB,GAAG,EAAE,KAAK;aACb;YACD,MAAM,EAAE;gBACJ,mBAAmB,EAAE,IAAI;gBACzB,WAAW,EAAE,EAAE;gBACf,uBAAuB;gBACvB,sBAAsB,EAAE,IAAI;aAC/B;YACD,QAAQ,EAAE,iBAAQ,CAAC,KAAK;YACxB,SAAS,EAAE,IAAI;YACf,YAAY,EAAE;gBACV,MAAM,EAAE,KAAK;aAChB;YACD,YAAY,EAAE;gBACV,SAAS,EAAE;oBACP,OAAO,EAAE,IAAI;iBAChB;aACJ;SACJ,CAAC,CACL,CAAC;KACL;IAAC,OAAO,KAAK,EAAE;QACZ,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;YAC7B,sCAAsC;YACtC,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;SACpE;aAAM;YACH,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO,CAAC,IAAI,EAAE,CAAC;SAClB;KACJ;AACL,CAAC,EAAE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"server-dev.js","sourceRoot":"","sources":["../src/server-dev.ts"],"names":[],"mappings":";;AAAA,mDAA0C;AAC1C,uDAAmD;AACnD,yCAAwC;AACxC,4DAA4D;AAE5D,OAAO,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;IACxB,IAAI;QACA,MAAM,IAAA,mBAAK,EACP,IAAA,4BAAY,EAAC;YACT,EAAE,EAAE;gBACA,IAAI,EAAE,cAAc;gBACpB,QAAQ,EAAE,SAAS;gBACnB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,SAAS;gBACnB,GAAG,EAAE,KAAK;aACb;YACD,MAAM,EAAE;gBACJ,mBAAmB,EAAE,IAAI;gBACzB,WAAW,EAAE,EAAE;gBACf,uBAAuB;gBACvB,sBAAsB,EAAE,IAAI;gBAC5B,yDAAyD;aAC5D;YACD,QAAQ,EAAE,iBAAQ,CAAC,KAAK;YACxB,SAAS,EAAE,IAAI;YACf,YAAY,EAAE;gBACV,MAAM,EAAE,KAAK;aAChB;YACD,YAAY,EAAE;gBACV,SAAS,EAAE;oBACP,OAAO,EAAE,IAAI;iBAChB;aACJ;YACD,cAAc,EAAE;gBACZ,aAAa,EAAE;oBACX;wBACI,WAAW,EAAE,GAAG;wBAChB,OAAO,EAAE,GAAG;wBACZ,MAAM,EAAE,sCAAsC;wBAC9C,IAAI,EAAE,wBAAY,CAAC,KAAK;wBACxB,QAAQ,EAAE,WAAW;qBACxB;iBACJ;aACJ;SACJ,CAAC,CACL,CAAC;KACL;IAAC,OAAO,KAAK,EAAE;QACZ,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;YAC7B,sCAAsC;YACtC,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;SACpE;aAAM;YACH,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO,CAAC,IAAI,EAAE,CAAC;SAClB;KACJ;AACL,CAAC,EAAE,CAAC,CAAC,CAAC"}
@@ -25,7 +25,4 @@ function createTestConfig(config) {
25
25
  return (0, create_config_1.createConfig)(options);
26
26
  }
27
27
  exports.createTestConfig = createTestConfig;
28
- module.exports = {
29
- createTestConfig,
30
- };
31
28
  //# sourceMappingURL=test-config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-config.js","sourceRoot":"","sources":["../../../src/test/config/test-config.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA8B;AAC9B,mDAIgC;AAChC,sEAA8C;AAE9C,2DAAuD;AAEvD,SAAS,QAAQ,CAAI,OAAqB;IACtC,OAAO,mBAAK,CAAC,GAAG,CAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,SAAgB,gBAAgB,CAAC,MAAwB;IACrD,MAAM,UAAU,GAAoB;QAChC,SAAS,EAAT,mBAAS;QACT,cAAc,EAAE,EAAE,IAAI,EAAE,kBAAS,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE;QAChE,MAAM,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE;QACnC,OAAO,EAAE;YACL,EAAE,EAAE,KAAK;SACZ;QACD,YAAY,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;KAClC,CAAC;IACF,MAAM,OAAO,GAAG,QAAQ,CAAkB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IAChE,OAAO,IAAA,4BAAY,EAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAZD,4CAYC;AAED,MAAM,CAAC,OAAO,GAAG;IACb,gBAAgB;CACnB,CAAC"}
1
+ {"version":3,"file":"test-config.js","sourceRoot":"","sources":["../../../src/test/config/test-config.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA8B;AAC9B,mDAIgC;AAChC,sEAA8C;AAE9C,2DAAuD;AAEvD,SAAS,QAAQ,CAAI,OAAqB;IACtC,OAAO,mBAAK,CAAC,GAAG,CAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,SAAgB,gBAAgB,CAAC,MAAwB;IACrD,MAAM,UAAU,GAAoB;QAChC,SAAS,EAAT,mBAAS;QACT,cAAc,EAAE,EAAE,IAAI,EAAE,kBAAS,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE;QAChE,MAAM,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE;QACnC,OAAO,EAAE;YACL,EAAE,EAAE,KAAK;SACZ;QACD,YAAY,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;KAClC,CAAC;IACF,MAAM,OAAO,GAAG,QAAQ,CAAkB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IAChE,OAAO,IAAA,4BAAY,EAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAZD,4CAYC"}
@@ -451,6 +451,43 @@ test('Should patch feature toggle', async () => {
451
451
  expect(updateForOurToggle.data.description).toBe('New desc');
452
452
  expect(updateForOurToggle.data.type).toBe('kill-switch');
453
453
  });
454
+ test('Should patch feature toggle and not remove variants', async () => {
455
+ const url = '/api/admin/projects/default/features';
456
+ const name = 'new.toggle.variants';
457
+ await app.request
458
+ .post(url)
459
+ .send({ name, description: 'some', type: 'release' })
460
+ .expect(201);
461
+ await app.request
462
+ .put(`${url}/${name}/variants`)
463
+ .send([
464
+ {
465
+ name: 'variant1',
466
+ weightType: 'variable',
467
+ weight: 500,
468
+ stickiness: 'default',
469
+ },
470
+ {
471
+ name: 'variant2',
472
+ weightType: 'variable',
473
+ weight: 500,
474
+ stickiness: 'default',
475
+ },
476
+ ])
477
+ .expect(200);
478
+ await app.request
479
+ .patch(`${url}/${name}`)
480
+ .send([
481
+ { op: 'replace', path: '/description', value: 'New desc' },
482
+ { op: 'replace', path: '/type', value: 'kill-switch' },
483
+ ])
484
+ .expect(200);
485
+ const { body: toggle } = await app.request.get(`${url}/${name}`);
486
+ expect(toggle.name).toBe(name);
487
+ expect(toggle.description).toBe('New desc');
488
+ expect(toggle.type).toBe('kill-switch');
489
+ expect(toggle.variants).toHaveLength(2);
490
+ });
454
491
  test('Patching feature toggles to stale should trigger FEATURE_STALE_ON event', async () => {
455
492
  const url = '/api/admin/projects/default/features';
456
493
  const name = 'toggle.stale.on.patch';
@@ -1 +1 @@
1
- {"version":3,"file":"features.e2e.test.js","sourceRoot":"","sources":["../../../../../../src/test/e2e/api/admin/project/features.e2e.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"features.e2e.test.js","sourceRoot":"","sources":["../../../../../../src/test/e2e/api/admin/project/features.e2e.test.ts"],"names":[],"mappings":"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"}
@@ -40,17 +40,15 @@ afterAll(async () => {
40
40
  test('Can get variants for a feature', async () => {
41
41
  const featureName = 'feature-variants';
42
42
  const variantName = 'fancy-variant';
43
- await db.stores.featureToggleStore.create('default', {
44
- name: featureName,
45
- variants: [
46
- {
47
- name: variantName,
48
- stickiness: 'default',
49
- weight: 1000,
50
- weightType: model_1.WeightType.VARIABLE,
51
- },
52
- ],
53
- });
43
+ await db.stores.featureToggleStore.create('default', { name: featureName });
44
+ await db.stores.featureToggleStore.saveVariants('default', featureName, [
45
+ {
46
+ name: variantName,
47
+ stickiness: 'default',
48
+ weight: 1000,
49
+ weightType: model_1.WeightType.VARIABLE,
50
+ },
51
+ ]);
54
52
  await app.request
55
53
  .get(`/api/admin/projects/default/features/${featureName}/variants`)
56
54
  .expect(200)
@@ -104,8 +102,8 @@ test('Can patch variants for a feature and get a response of new variant', async
104
102
  ];
105
103
  await db.stores.featureToggleStore.create('default', {
106
104
  name: featureName,
107
- variants,
108
105
  });
106
+ await db.stores.featureToggleStore.saveVariants('default', featureName, variants);
109
107
  const observer = jsonpatch.observe(variants);
110
108
  variants[0].name = expectedVariantName;
111
109
  const patch = jsonpatch.generate(observer);
@@ -133,8 +131,8 @@ test('Can add variant for a feature', async () => {
133
131
  ];
134
132
  await db.stores.featureToggleStore.create('default', {
135
133
  name: featureName,
136
- variants,
137
134
  });
135
+ await db.stores.featureToggleStore.saveVariants('default', featureName, variants);
138
136
  const observer = jsonpatch.observe(variants);
139
137
  variants.push({
140
138
  name: expectedVariantName,
@@ -169,8 +167,8 @@ test('Can remove variant for a feature', async () => {
169
167
  ];
170
168
  await db.stores.featureToggleStore.create('default', {
171
169
  name: featureName,
172
- variants,
173
170
  });
171
+ await db.stores.featureToggleStore.saveVariants('default', featureName, variants);
174
172
  const observer = jsonpatch.observe(variants);
175
173
  variants.pop();
176
174
  const patch = jsonpatch.generate(observer);
@@ -198,8 +196,8 @@ test('PUT overwrites current variant on feature', async () => {
198
196
  ];
199
197
  await db.stores.featureToggleStore.create('default', {
200
198
  name: featureName,
201
- variants,
202
199
  });
200
+ await db.stores.featureToggleStore.saveVariants('default', featureName, variants);
203
201
  const newVariants = [
204
202
  {
205
203
  name: 'variant1',
@@ -568,17 +566,18 @@ test('If sum of fixed variant weight equals 1000 variable variants gets weight 0
568
566
  });
569
567
  test('PATCH endpoint validates uniqueness of variant names', async () => {
570
568
  const featureName = 'variants-uniqueness-names';
569
+ const variants = [
570
+ {
571
+ name: 'variant1',
572
+ weight: 1000,
573
+ weightType: model_1.WeightType.VARIABLE,
574
+ stickiness: 'default',
575
+ },
576
+ ];
571
577
  await db.stores.featureToggleStore.create('default', {
572
578
  name: featureName,
573
- variants: [
574
- {
575
- name: 'variant1',
576
- weight: 1000,
577
- weightType: model_1.WeightType.VARIABLE,
578
- stickiness: 'default',
579
- },
580
- ],
581
579
  });
580
+ await db.stores.featureToggleStore.saveVariants('default', featureName, variants);
582
581
  const newVariants = [];
583
582
  const observer = jsonpatch.observe(newVariants);
584
583
  newVariants.push({
@@ -606,7 +605,6 @@ test('PUT endpoint validates uniqueness of variant names', async () => {
606
605
  const featureName = 'variants-put-uniqueness-names';
607
606
  await db.stores.featureToggleStore.create('default', {
608
607
  name: featureName,
609
- variants: [],
610
608
  });
611
609
  await app.request
612
610
  .put(`/api/admin/projects/default/features/${featureName}/variants`)