unleash-server 4.17.0-beta.6 → 4.17.0-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/db/suggest-change-store.d.ts +23 -3
- package/dist/lib/db/suggest-change-store.js +11 -4
- package/dist/lib/db/suggest-change-store.js.map +1 -1
- package/dist/lib/openapi/util/openapi-tags.d.ts +6 -0
- package/dist/lib/openapi/util/openapi-tags.js +4 -0
- package/dist/lib/openapi/util/openapi-tags.js.map +1 -1
- package/dist/lib/types/model.d.ts +4 -1
- package/dist/lib/types/model.js.map +1 -1
- package/dist/lib/types/stores/suggest-change-store.d.ts +2 -1
- package/dist/migrations/20221810114644-add-suggest-changes-table.js +2 -1
- package/dist/migrations/20221810114644-add-suggest-changes-table.js.map +1 -1
- package/dist/test/fixtures/fake-suggest-change-store.d.ts +2 -1
- package/dist/test/fixtures/fake-suggest-change-store.js +13 -4
- package/dist/test/fixtures/fake-suggest-change-store.js.map +1 -1
- package/package.json +1 -1
|
@@ -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:
|
|
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?:
|
|
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.
|
|
105
|
-
|
|
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:
|
|
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":";;;AAKA,0CAKwB;AAExB,MAAM,CAAC,GAAG;IACN,cAAc,EAAE,gBAAgB;IAChC,kBAAkB,EAAE,oBAAoB;CAC3C,CAAC;
|
|
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,12 +328,15 @@ 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
337
|
export interface ISuggestChange {
|
|
334
338
|
id?: number;
|
|
335
339
|
action: SuggestChangeAction;
|
|
336
|
-
feature: string;
|
|
337
340
|
payload: any;
|
|
338
341
|
createdBy?: Pick<User, 'id' | 'username' | 'imageUrl'>;
|
|
339
342
|
createdAt?: Date;
|
|
@@ -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;
|
|
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;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"}
|
|
@@ -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
|
|
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"}
|
|
@@ -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
|
-
|
|
9
|
+
deleteChange(id: number): Promise<void>;
|
|
10
|
+
addChangeToSet(change: PartialSome<ISuggestChange, 'id' | 'createdBy' | 'createdAt'>, 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
|
-
|
|
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.
|
|
21
|
-
|
|
22
|
-
|
|
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":";;AAQA,MAAqB,sBAAsB;IAA3C;QACI,mBAAc,GAAwB,EAAE,CAAC;
|
|
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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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "unleash-server",
|
|
3
3
|
"description": "Unleash is an enterprise ready feature toggles service. It provides different strategies for handling feature toggles.",
|
|
4
|
-
"version": "4.17.0-beta.
|
|
4
|
+
"version": "4.17.0-beta.7",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"unleash",
|
|
7
7
|
"feature toggle",
|