unleash-server 4.17.0-beta.6 → 4.17.0-beta.8

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.
@@ -4,7 +4,25 @@ import { LogProvider } from '../logger';
4
4
  import EventEmitter from 'events';
5
5
  import { Knex } from 'knex';
6
6
  import { PartialSome } from '../types/partial';
7
- import { ISuggestChange, ISuggestChangeset, SuggestChangesetState } from '../types/model';
7
+ import { ISuggestChange, ISuggestChangeset, SuggestChangeAction, SuggestChangesetState } from '../types/model';
8
+ interface ISuggestChangesetRow {
9
+ id: number;
10
+ state: SuggestChangesetState;
11
+ environment: string;
12
+ project: string;
13
+ created_at: Date;
14
+ created_by: number;
15
+ changeSetUsername: string;
16
+ changeSetAvatar: string;
17
+ changeId: number;
18
+ changeFeature: string;
19
+ changeAction: SuggestChangeAction;
20
+ changePayload: any;
21
+ changeCreatedAt: Date;
22
+ changeCreatedBy: number;
23
+ changeCreatedByUsername: string;
24
+ changeCreatedByAvatar: string;
25
+ }
8
26
  export declare class SuggestChangeStore implements ISuggestChangeStore {
9
27
  private logger;
10
28
  private eventBus;
@@ -17,11 +35,13 @@ export declare class SuggestChangeStore implements ISuggestChangeStore {
17
35
  getForEnvironment: (environment: string) => Promise<ISuggestChangeset[]>;
18
36
  get: (id: number) => Promise<ISuggestChangeset>;
19
37
  create: (suggestChangeSet: PartialSome<ISuggestChangeset, 'id' | 'createdBy' | 'createdAt'>, userId: number) => Promise<ISuggestChangeset>;
20
- addChangeToSet: (change: PartialSome<ISuggestChange, 'id' | 'createdBy' | 'createdAt'>, changeSetID: number, userId: number) => Promise<void>;
38
+ addChangeToSet: (change: ISuggestChange, feature: string, changeSetID: number, userId: number) => Promise<void>;
21
39
  delete: (id: number) => Promise<void>;
40
+ deleteChange: (id: number) => Promise<void>;
22
41
  deleteAll: () => Promise<void>;
23
42
  exists: (id: number) => Promise<boolean>;
24
- mapRows: (rows?: any[]) => ISuggestChangeset[];
43
+ mapRows: (rows?: ISuggestChangesetRow[]) => ISuggestChangeset[];
25
44
  destroy(): void;
26
45
  updateState(id: number, state: SuggestChangesetState): Promise<ISuggestChangeset>;
27
46
  }
47
+ export {};
@@ -101,25 +101,32 @@ class SuggestChangeStore {
101
101
  created_by: userId,
102
102
  })
103
103
  .returning('id');
104
- suggestChangeSet.changes.forEach((change) => {
105
- this.addChangeToSet(change, id, userId);
104
+ suggestChangeSet.features.forEach((feature) => {
105
+ feature.changes.forEach((change) => {
106
+ this.addChangeToSet(change, feature.name, id, userId);
107
+ });
106
108
  });
107
109
  return this.get(id);
108
110
  };
109
- this.addChangeToSet = async (change, changeSetID, userId) => {
111
+ this.addChangeToSet = async (change, feature, changeSetID, userId) => {
110
112
  await this.db(T.SUGGEST_CHANGE)
111
113
  .insert({
112
114
  action: change.action,
113
- feature: change.feature,
115
+ feature: feature,
114
116
  payload: change.payload,
115
117
  suggest_change_set_id: changeSetID,
116
118
  created_by: userId,
117
119
  })
120
+ .onConflict(['action', 'suggest_change_set_id', 'feature'])
121
+ .merge()
118
122
  .returning('id');
119
123
  };
120
124
  this.delete = (id) => {
121
125
  return this.db(T.SUGGEST_CHANGE_SET).where({ id }).del();
122
126
  };
127
+ this.deleteChange = (id) => {
128
+ return this.db(T.SUGGEST_CHANGE).where({ id }).del();
129
+ };
123
130
  this.deleteAll = () => {
124
131
  return this.db(T.SUGGEST_CHANGE_SET).del();
125
132
  };
@@ -1 +1 @@
1
- {"version":3,"file":"suggest-change-store.js","sourceRoot":"","sources":["../../../src/lib/db/suggest-change-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"suggest-change-store.js","sourceRoot":"","sources":["../../../src/lib/db/suggest-change-store.ts"],"names":[],"mappings":"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"}
@@ -49,6 +49,9 @@ declare const OPENAPI_TAGS: readonly [{
49
49
  }, {
50
50
  readonly name: "Public signup tokens";
51
51
  readonly description: "Create, update, and delete [Unleash Public Signup tokens](https://docs.getunleash.io/reference/public-signup-tokens).";
52
+ }, {
53
+ readonly name: "Segments";
54
+ readonly description: "Create, update, delete, and manage [segments](https://docs.getunleash.io/reference/segments).";
52
55
  }, {
53
56
  readonly name: "Strategies";
54
57
  readonly description: "Create, update, delete, manage [custom strategies](https://docs.getunleash.io/advanced/custom_activation_strategy).";
@@ -116,6 +119,9 @@ export declare const openApiTags: ({
116
119
  } | {
117
120
  readonly name: "Public signup tokens";
118
121
  readonly description: "Create, update, and delete [Unleash Public Signup tokens](https://docs.getunleash.io/reference/public-signup-tokens).";
122
+ } | {
123
+ readonly name: "Segments";
124
+ readonly description: "Create, update, delete, and manage [segments](https://docs.getunleash.io/reference/segments).";
119
125
  } | {
120
126
  readonly name: "Strategies";
121
127
  readonly description: "Create, update, delete, manage [custom strategies](https://docs.getunleash.io/advanced/custom_activation_strategy).";
@@ -64,6 +64,10 @@ const OPENAPI_TAGS = [
64
64
  name: 'Public signup tokens',
65
65
  description: 'Create, update, and delete [Unleash Public Signup tokens](https://docs.getunleash.io/reference/public-signup-tokens).',
66
66
  },
67
+ {
68
+ name: 'Segments',
69
+ description: 'Create, update, delete, and manage [segments](https://docs.getunleash.io/reference/segments).',
70
+ },
67
71
  {
68
72
  name: 'Strategies',
69
73
  description: 'Create, update, delete, manage [custom strategies](https://docs.getunleash.io/advanced/custom_activation_strategy).',
@@ -1 +1 @@
1
- {"version":3,"file":"openapi-tags.js","sourceRoot":"","sources":["../../../../src/lib/openapi/util/openapi-tags.ts"],"names":[],"mappings":";;;AAAA,+EAA+E;AAC/E,8EAA8E;AAC9E,2BAA2B;AAC3B,MAAM,YAAY,GAAG;IACjB;QACI,IAAI,EAAE,QAAQ;QACd,WAAW,EACP,iFAAiF;KACxF;IACD,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,iCAAiC,EAAE;IACpE;QACI,IAAI,EAAE,YAAY;QAClB,WAAW,EACP,mHAAmH;KAC1H;IACD;QACI,IAAI,EAAE,SAAS;QACf,WAAW,EACP,gHAAgH;KACvH;IACD,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,gCAAgC,EAAE;IAC/D;QACI,IAAI,EAAE,QAAQ;QACd,WAAW,EACP,+EAA+E;KACtF;IACD;QACI,IAAI,EAAE,SAAS;QACf,WAAW,EACP,8HAA8H;KACrI;IACD;QACI,IAAI,EAAE,cAAc;QACpB,WAAW,EACP,yIAAyI;KAChJ;IACD,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yCAAyC,EAAE;IAC1E;QACI,IAAI,EAAE,UAAU;QAChB,WAAW,EACP,sGAAsG;KAC7G;IACD;QACI,IAAI,EAAE,eAAe;QACrB,WAAW,EACP,0GAA0G;KACjH;IACD;QACI,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACP,sEAAsE;KAC7E;IACD;QACI,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,wDAAwD;KACxE;IACD;QACI,IAAI,EAAE,aAAa;QACnB,WAAW,EACP,uEAAuE;KAC9E;IACD;QACI,IAAI,EAAE,YAAY;QAClB,WAAW,EACP,2DAA2D;KAClE;IACD;QACI,IAAI,EAAE,UAAU;QAChB,WAAW,EACP,gGAAgG;KACvG;IACD;QACI,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACP,uHAAuH;KAC9H;IACD;QACI,IAAI,EAAE,YAAY;QAClB,WAAW,EACP,qHAAqH;KAC5H;IACD;QACI,IAAI,EAAE,MAAM;QACZ,WAAW,EACP,4FAA4F;KACnG;IACD,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,6BAA6B,EAAE;IAC7D;QACI,IAAI,EAAE,UAAU;QAChB,WAAW,EACP,kEAAkE;KACzE;IACD,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,2CAA2C,EAAE;CACpE,CAAC;AAEX,yDAAyD;AAC5C,QAAA,WAAW,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACvD,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAC/B,CAAC"}
1
+ {"version":3,"file":"openapi-tags.js","sourceRoot":"","sources":["../../../../src/lib/openapi/util/openapi-tags.ts"],"names":[],"mappings":";;;AAAA,+EAA+E;AAC/E,8EAA8E;AAC9E,2BAA2B;AAC3B,MAAM,YAAY,GAAG;IACjB;QACI,IAAI,EAAE,QAAQ;QACd,WAAW,EACP,iFAAiF;KACxF;IACD,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,iCAAiC,EAAE;IACpE;QACI,IAAI,EAAE,YAAY;QAClB,WAAW,EACP,mHAAmH;KAC1H;IACD;QACI,IAAI,EAAE,SAAS;QACf,WAAW,EACP,gHAAgH;KACvH;IACD,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,gCAAgC,EAAE;IAC/D;QACI,IAAI,EAAE,QAAQ;QACd,WAAW,EACP,+EAA+E;KACtF;IACD;QACI,IAAI,EAAE,SAAS;QACf,WAAW,EACP,8HAA8H;KACrI;IACD;QACI,IAAI,EAAE,cAAc;QACpB,WAAW,EACP,yIAAyI;KAChJ;IACD,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yCAAyC,EAAE;IAC1E;QACI,IAAI,EAAE,UAAU;QAChB,WAAW,EACP,sGAAsG;KAC7G;IACD;QACI,IAAI,EAAE,eAAe;QACrB,WAAW,EACP,0GAA0G;KACjH;IACD;QACI,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACP,sEAAsE;KAC7E;IACD;QACI,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,wDAAwD;KACxE;IACD;QACI,IAAI,EAAE,aAAa;QACnB,WAAW,EACP,uEAAuE;KAC9E;IACD;QACI,IAAI,EAAE,YAAY;QAClB,WAAW,EACP,2DAA2D;KAClE;IACD;QACI,IAAI,EAAE,UAAU;QAChB,WAAW,EACP,gGAAgG;KACvG;IACD;QACI,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACP,uHAAuH;KAC9H;IACD;QACI,IAAI,EAAE,UAAU;QAChB,WAAW,EACP,+FAA+F;KACtG;IACD;QACI,IAAI,EAAE,YAAY;QAClB,WAAW,EACP,qHAAqH;KAC5H;IACD;QACI,IAAI,EAAE,MAAM;QACZ,WAAW,EACP,4FAA4F;KACnG;IACD,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,6BAA6B,EAAE;IAC7D;QACI,IAAI,EAAE,UAAU;QAChB,WAAW,EACP,kEAAkE;KACzE;IACD,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,2CAA2C,EAAE;CACpE,CAAC;AAEX,yDAAyD;AAC5C,QAAA,WAAW,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACvD,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAC/B,CAAC"}
@@ -328,13 +328,16 @@ export interface ISuggestChangeset {
328
328
  environment: string;
329
329
  createdBy: Pick<User, 'id' | 'username' | 'imageUrl'>;
330
330
  createdAt: Date;
331
+ features: ISuggestChangeFeature[];
332
+ }
333
+ export interface ISuggestChangeFeature {
334
+ name: string;
331
335
  changes: ISuggestChange[];
332
336
  }
333
- export interface ISuggestChange {
337
+ export interface ISuggestChangeBase {
334
338
  id?: number;
335
339
  action: SuggestChangeAction;
336
- feature: string;
337
- payload: any;
340
+ payload: SuggestChangePayload;
338
341
  createdBy?: Pick<User, 'id' | 'username' | 'imageUrl'>;
339
342
  createdAt?: Date;
340
343
  }
@@ -345,12 +348,45 @@ export declare enum SuggestChangesetState {
345
348
  APPLIED = "Applied",
346
349
  CANCELLED = "Cancelled"
347
350
  }
348
- export declare enum SuggestChangeAction {
349
- UPDATE_ENABLED = "updateEnabled",
350
- ADD_STRATEGY = "strategyAdd",
351
- UPDATE_STRATEGY = "strategyUpdate",
352
- DELETE_STRATEGY = "strategyDelete"
351
+ declare type SuggestChangePayload = SuggestChangeEnabled | SuggestChangeAddStrategy | SuggestChangeEditStrategy | SuggestChangeDeleteStrategy;
352
+ export interface ISuggestChangeAddStrategy extends ISuggestChangeBase {
353
+ action: 'addStrategy';
354
+ payload: SuggestChangeAddStrategy;
355
+ }
356
+ export interface ISuggestChangeDeleteStrategy extends ISuggestChangeBase {
357
+ action: 'deleteStrategy';
358
+ payload: SuggestChangeDeleteStrategy;
359
+ }
360
+ export interface ISuggestChangeUpdateStrategy extends ISuggestChangeBase {
361
+ action: 'updateStrategy';
362
+ payload: SuggestChangeEditStrategy;
353
363
  }
364
+ export interface ISuggestChangeEnabled extends ISuggestChangeBase {
365
+ action: 'updateEnabled';
366
+ payload: SuggestChangeEnabled;
367
+ }
368
+ export declare type ISuggestChange = ISuggestChangeAddStrategy | ISuggestChangeDeleteStrategy | ISuggestChangeUpdateStrategy | ISuggestChangeEnabled;
369
+ declare type SuggestChangeEnabled = {
370
+ enabled: boolean;
371
+ };
372
+ declare type SuggestChangeAddStrategy = Pick<IFeatureStrategy, 'parameters' | 'constraints'> & {
373
+ name: string;
374
+ };
375
+ declare type SuggestChangeEditStrategy = SuggestChangeAddStrategy & {
376
+ id: string;
377
+ };
378
+ declare type SuggestChangeDeleteStrategy = {
379
+ deleteId: string;
380
+ };
381
+ export declare enum SuggestChangesetEvent {
382
+ CREATED = "CREATED",
383
+ UPDATED = "UPDATED",
384
+ SUBMITTED = "SUBMITTED",
385
+ APPROVED = "APPROVED",
386
+ REJECTED = "REJECTED",
387
+ CLOSED = "CLOSED"
388
+ }
389
+ export declare type SuggestChangeAction = 'updateEnabled' | 'addStrategy' | 'updateStrategy' | 'deleteStrategy';
354
390
  export interface ISuggestChangeEventData {
355
391
  feature: string;
356
392
  data: unknown;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SuggestChangeAction = exports.SuggestChangesetState = exports.RoleType = exports.RoleName = exports.PermissionType = exports.WeightType = void 0;
3
+ exports.SuggestChangesetEvent = exports.SuggestChangesetState = exports.RoleType = exports.RoleName = exports.PermissionType = exports.WeightType = void 0;
4
4
  var WeightType;
5
5
  (function (WeightType) {
6
6
  WeightType["VARIABLE"] = "variable";
@@ -33,11 +33,13 @@ var SuggestChangesetState;
33
33
  SuggestChangesetState["APPLIED"] = "Applied";
34
34
  SuggestChangesetState["CANCELLED"] = "Cancelled";
35
35
  })(SuggestChangesetState = exports.SuggestChangesetState || (exports.SuggestChangesetState = {}));
36
- var SuggestChangeAction;
37
- (function (SuggestChangeAction) {
38
- SuggestChangeAction["UPDATE_ENABLED"] = "updateEnabled";
39
- SuggestChangeAction["ADD_STRATEGY"] = "strategyAdd";
40
- SuggestChangeAction["UPDATE_STRATEGY"] = "strategyUpdate";
41
- SuggestChangeAction["DELETE_STRATEGY"] = "strategyDelete";
42
- })(SuggestChangeAction = exports.SuggestChangeAction || (exports.SuggestChangeAction = {}));
36
+ var SuggestChangesetEvent;
37
+ (function (SuggestChangesetEvent) {
38
+ SuggestChangesetEvent["CREATED"] = "CREATED";
39
+ SuggestChangesetEvent["UPDATED"] = "UPDATED";
40
+ SuggestChangesetEvent["SUBMITTED"] = "SUBMITTED";
41
+ SuggestChangesetEvent["APPROVED"] = "APPROVED";
42
+ SuggestChangesetEvent["REJECTED"] = "REJECTED";
43
+ SuggestChangesetEvent["CLOSED"] = "CLOSED";
44
+ })(SuggestChangesetEvent = exports.SuggestChangesetEvent || (exports.SuggestChangesetEvent = {}));
43
45
  //# sourceMappingURL=model.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/lib/types/model.ts"],"names":[],"mappings":";;;AAgBA,IAAY,UAGX;AAHD,WAAY,UAAU;IAClB,mCAAqB,CAAA;IACrB,yBAAW,CAAA;AACf,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB;AAsOD,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;AAyHD,IAAY,qBAMX;AAND,WAAY,qBAAqB;IAC7B,wCAAe,CAAA;IACf,8CAAqB,CAAA;IACrB,gDAAuB,CAAA;IACvB,4CAAmB,CAAA;IACnB,gDAAuB,CAAA;AAC3B,CAAC,EANW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAMhC;AAED,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC3B,uDAAgC,CAAA;IAChC,mDAA4B,CAAA;IAC5B,yDAAkC,CAAA;IAClC,yDAAkC,CAAA;AACtC,CAAC,EALW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAK9B"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/lib/types/model.ts"],"names":[],"mappings":";;;AAgBA,IAAY,UAGX;AAHD,WAAY,UAAU;IAClB,mCAAqB,CAAA;IACrB,yBAAW,CAAA;AACf,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB;AAsOD,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;AA6HD,IAAY,qBAMX;AAND,WAAY,qBAAqB;IAC7B,wCAAe,CAAA;IACf,8CAAqB,CAAA;IACrB,gDAAuB,CAAA;IACvB,4CAAmB,CAAA;IACnB,gDAAuB,CAAA;AAC3B,CAAC,EANW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAMhC;AA+CD,IAAY,qBAOX;AAPD,WAAY,qBAAqB;IAC7B,4CAAmB,CAAA;IACnB,4CAAmB,CAAA;IACnB,gDAAuB,CAAA;IACvB,8CAAqB,CAAA;IACrB,8CAAqB,CAAA;IACrB,0CAAiB,CAAA;AACrB,CAAC,EAPW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAOhC"}
@@ -3,8 +3,9 @@ import { ISuggestChange, ISuggestChangeset, SuggestChangesetState } from '../mod
3
3
  import { PartialSome } from '../partial';
4
4
  export interface ISuggestChangeStore extends Store<ISuggestChangeset, number> {
5
5
  create(suggestChangeSet: PartialSome<ISuggestChangeset, 'id' | 'createdBy' | 'createdAt'>, userId: number): Promise<ISuggestChangeset>;
6
- addChangeToSet(change: PartialSome<ISuggestChange, 'id' | 'createdBy' | 'createdAt'>, changeSetID: number, userId: number): Promise<void>;
6
+ addChangeToSet(change: PartialSome<ISuggestChange, 'id' | 'createdBy' | 'createdAt'>, feature: string, changeSetID: number, userId: number): Promise<void>;
7
7
  get(id: number): Promise<ISuggestChangeset>;
8
+ deleteChange(changeId: number): Promise<void>;
8
9
  updateState(id: number, state: SuggestChangesetState): Promise<ISuggestChangeset>;
9
10
  getAll(): Promise<ISuggestChangeset[]>;
10
11
  getForProject(project: string): Promise<ISuggestChangeset[]>;
@@ -17,7 +17,8 @@ CREATE TABLE IF NOT EXISTS suggest_change (
17
17
  payload jsonb not null default '[]'::jsonb,
18
18
  created_by integer not null references users (id) ON DELETE CASCADE,
19
19
  created_at timestamp default now(),
20
- suggest_change_set_id integer NOT NULL REFERENCES suggest_change_set(id) ON DELETE CASCADE
20
+ suggest_change_set_id integer NOT NULL REFERENCES suggest_change_set(id) ON DELETE CASCADE,
21
+ UNIQUE (feature, action, suggest_change_set_id)
21
22
  );
22
23
  `, callback);
23
24
  };
@@ -1 +1 @@
1
- {"version":3,"file":"20221810114644-add-suggest-changes-table.js","sourceRoot":"","sources":["../../src/migrations/20221810114644-add-suggest-changes-table.js"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,CAAC,EAAE,GAAG,UAAU,EAAE,EAAE,QAAQ;IAC/B,EAAE,CAAC,MAAM,CACL;;;;;;;;;;;;;;;;;;;CAmBP,EACO,QAAQ,CACX,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,CAAC,IAAI,GAAG,UAAU,EAAE,EAAE,QAAQ;IACjC,EAAE,CAAC,MAAM,CACL;;;SAGC,EACD,QAAQ,CACX,CAAC;AACN,CAAC,CAAC"}
1
+ {"version":3,"file":"20221810114644-add-suggest-changes-table.js","sourceRoot":"","sources":["../../src/migrations/20221810114644-add-suggest-changes-table.js"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,CAAC,EAAE,GAAG,UAAU,EAAE,EAAE,QAAQ;IAC/B,EAAE,CAAC,MAAM,CACL;;;;;;;;;;;;;;;;;;;;CAoBP,EACO,QAAQ,CACX,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,CAAC,IAAI,GAAG,UAAU,EAAE,EAAE,QAAQ;IACjC,EAAE,CAAC,MAAM,CACL;;;SAGC,EACD,QAAQ,CACX,CAAC;AACN,CAAC,CAAC"}
@@ -22,6 +22,7 @@ export default class FakeFeatureStrategiesStore implements IFeatureStrategiesSto
22
22
  removeAllStrategiesForFeatureEnv(feature_name: string, environment: string): Promise<void>;
23
23
  getAll(): Promise<IFeatureStrategy[]>;
24
24
  getStrategiesForFeatureEnv(project_name: string, feature_name: string, environment: string): Promise<IFeatureStrategy[]>;
25
+ getFeatureToggleForEnvironment(featureName: string, environment: string): Promise<FeatureToggleWithEnvironment>;
25
26
  getFeatureToggleWithEnvs(featureName: string, archived?: boolean): Promise<FeatureToggleWithEnvironment>;
26
27
  getFeatureOverview(projectId: string, archived: boolean): Promise<IFeatureOverview[]>;
27
28
  getFeatures(featureQuery?: IFeatureToggleQuery, archived?: boolean): Promise<IFeatureToggleClient[]>;
@@ -72,6 +72,15 @@ class FakeFeatureStrategiesStore {
72
72
  fS.environment === environment);
73
73
  return Promise.resolve(rows);
74
74
  }
75
+ async getFeatureToggleForEnvironment(featureName,
76
+ // eslint-disable-next-line
77
+ environment) {
78
+ const toggle = this.featureToggles.find((f) => f.name === featureName);
79
+ if (toggle) {
80
+ return { ...toggle, environments: [] };
81
+ }
82
+ throw new notfound_error_1.default(`Could not find feature with name ${featureName}`);
83
+ }
75
84
  async getFeatureToggleWithEnvs(featureName, archived = false) {
76
85
  const toggle = this.featureToggles.find((f) => f.name === featureName && f.archived === archived);
77
86
  if (toggle) {
@@ -1 +1 @@
1
- {"version":3,"file":"fake-feature-strategies-store.js","sourceRoot":"","sources":["../../../src/test/fixtures/fake-feature-strategies-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fake-feature-strategies-store.js","sourceRoot":"","sources":["../../../src/test/fixtures/fake-feature-strategies-store.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,8 @@ export default class FakeSuggestChangeStore implements ISuggestChangeStore {
6
6
  get(id: number): Promise<ISuggestChangeset>;
7
7
  count(): Promise<number>;
8
8
  delete(id: number): Promise<void>;
9
- addChangeToSet(change: PartialSome<ISuggestChange, 'id' | 'createdBy' | 'createdAt'>, changeSetID: number, userId: number): Promise<void>;
9
+ deleteChange(id: number): Promise<void>;
10
+ addChangeToSet(change: ISuggestChange, feature: string, changeSetID: number, userId: number): Promise<void>;
10
11
  getForEnvironment(environment: string): Promise<ISuggestChangeset[]>;
11
12
  getDraftsForUser(userId: number, project: string): Promise<ISuggestChangeset[]>;
12
13
  getForProject(project: string): Promise<ISuggestChangeset[]>;
@@ -15,11 +15,20 @@ class FakeSuggestChangeStore {
15
15
  async delete(id) {
16
16
  return Promise.resolve(undefined);
17
17
  }
18
- addChangeToSet(change, changeSetID, userId) {
18
+ // eslint-disable-next-line no-unused-vars,@typescript-eslint/no-unused-vars
19
+ async deleteChange(id) {
20
+ return Promise.resolve(undefined);
21
+ }
22
+ addChangeToSet(change, feature, changeSetID, userId) {
19
23
  const changeSet = this.suggestChanges.find((s) => s.id === changeSetID);
20
- changeSet.changes.push({
21
- createdBy: { id: userId, username: '', imageUrl: '' },
22
- ...change,
24
+ changeSet.features.push({
25
+ name: feature,
26
+ changes: [
27
+ {
28
+ createdBy: { id: userId, username: '', imageUrl: '' },
29
+ ...change,
30
+ },
31
+ ],
23
32
  });
24
33
  return Promise.resolve();
25
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fake-suggest-change-store.js","sourceRoot":"","sources":["../../../src/test/fixtures/fake-suggest-change-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fake-suggest-change-store.js","sourceRoot":"","sources":["../../../src/test/fixtures/fake-suggest-change-store.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@
15
15
  href="https://fonts.googleapis.com/css2?family=Sen:wght@400;700;800&display=swap"
16
16
  rel="stylesheet"
17
17
  />
18
- <script type="module" crossorigin src="/static/index.68e4e310.js"></script>
18
+ <script type="module" crossorigin src="/static/index.eeca97cc.js"></script>
19
19
  <link rel="stylesheet" href="/static/index.8ff70acc.css">
20
20
  </head>
21
21
  <body>