@pushwoosh/rpc-v2-http-api-data 0.2.429 → 0.2.431

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/data.js CHANGED
@@ -18450,6 +18450,12 @@ export const data = {
18450
18450
  "method": "get",
18451
18451
  "path": "/api/applications/{application_code}/feature_flags/{key}"
18452
18452
  },
18453
+ "ListHistory": {
18454
+ "request": "pushwoosh.rpc_v2.feature_flags.ListFeatureFlagHistoryRequest",
18455
+ "response": "pushwoosh.rpc_v2.feature_flags.ListFeatureFlagHistoryResponse",
18456
+ "method": "get",
18457
+ "path": "/api/applications/{application_code}/feature_flags/{key}/history"
18458
+ },
18453
18459
  "Create": {
18454
18460
  "request": "pushwoosh.rpc_v2.feature_flags.CreateFeatureFlagRequest",
18455
18461
  "response": "pushwoosh.rpc_v2.feature_flags.CreateFeatureFlagResponse",
@@ -18817,6 +18823,76 @@ export const data = {
18817
18823
  }
18818
18824
  }
18819
18825
  },
18826
+ "pushwoosh.rpc_v2.feature_flags.ListFeatureFlagHistoryRequest": {
18827
+ "type": "I",
18828
+ "fields": {
18829
+ "applicationCode": {
18830
+ "type": "string"
18831
+ },
18832
+ "key": {
18833
+ "type": "string"
18834
+ },
18835
+ "page": {
18836
+ "type": "number"
18837
+ },
18838
+ "perPage": {
18839
+ "type": "number"
18840
+ }
18841
+ }
18842
+ },
18843
+ "pushwoosh.rpc_v2.feature_flags.FeatureFlagChange": {
18844
+ "type": "I",
18845
+ "fields": {
18846
+ "field": {
18847
+ "type": "string"
18848
+ },
18849
+ "before": {
18850
+ "type": "string"
18851
+ },
18852
+ "after": {
18853
+ "type": "string"
18854
+ }
18855
+ }
18856
+ },
18857
+ "pushwoosh.rpc_v2.feature_flags.FeatureFlagHistoryEntry": {
18858
+ "type": "I",
18859
+ "fields": {
18860
+ "version": {
18861
+ "type": "number"
18862
+ },
18863
+ "action": {
18864
+ "type": "string"
18865
+ },
18866
+ "userId": {
18867
+ "type": "number"
18868
+ },
18869
+ "userEmail": {
18870
+ "type": "string"
18871
+ },
18872
+ "created": {
18873
+ "type": "Date"
18874
+ },
18875
+ "flag": {
18876
+ "type": "pushwoosh.rpc_v2.feature_flags.FeatureFlag"
18877
+ },
18878
+ "changes": {
18879
+ "type": "pushwoosh.rpc_v2.feature_flags.FeatureFlagChange",
18880
+ "array": true
18881
+ }
18882
+ }
18883
+ },
18884
+ "pushwoosh.rpc_v2.feature_flags.ListFeatureFlagHistoryResponse": {
18885
+ "type": "I",
18886
+ "fields": {
18887
+ "entries": {
18888
+ "type": "pushwoosh.rpc_v2.feature_flags.FeatureFlagHistoryEntry",
18889
+ "array": true
18890
+ },
18891
+ "total": {
18892
+ "type": "number"
18893
+ }
18894
+ }
18895
+ },
18820
18896
  "pushwoosh.rpc_v2.filters.FiltersService": {
18821
18897
  "type": "S",
18822
18898
  "key": "filters",
@@ -133,6 +133,7 @@ export type FeatureFlagsService_FailedPreconditions = {
133
133
  };
134
134
  export type FeatureFlagsService_List = RpcMethod<ListFeatureFlagsRequest, ListFeatureFlagsResponse>;
135
135
  export type FeatureFlagsService_Get = RpcMethod<GetFeatureFlagRequest, GetFeatureFlagResponse>;
136
+ export type FeatureFlagsService_ListHistory = RpcMethod<ListFeatureFlagHistoryRequest, ListFeatureFlagHistoryResponse>;
136
137
  export type FeatureFlagsService_Create = RpcMethod<CreateFeatureFlagRequest, CreateFeatureFlagResponse>;
137
138
  export type FeatureFlagsService_Update = RpcMethod<UpdateFeatureFlagRequest, UpdateFeatureFlagResponse>;
138
139
  export type FeatureFlagsService_SetRulePercent = RpcMethod<SetFeatureFlagRulePercentRequest, SetFeatureFlagRulePercentResponse>;
@@ -154,6 +155,11 @@ export interface FeatureFlagsService {
154
155
  List: FeatureFlagsService_List;
155
156
  /** Returns one feature flag with its properties, rules and the version to send back with the next change. */
156
157
  Get: FeatureFlagsService_Get;
158
+ /**
159
+ * Returns the history of a feature flag, newest first: who changed it, when, with which action, the flag after
160
+ * the change and the fields that changed against the version before. Flags get history from their first change on.
161
+ */
162
+ ListHistory: FeatureFlagsService_ListHistory;
157
163
  /** Creates an active feature flag with its properties and ordered rules. Rule ids are generated by the server. Rule segments may hold only tag, geo, application and list conditions. */
158
164
  Create: FeatureFlagsService_Create;
159
165
  /** Replaces the name, description, properties and rules of a flag; the status is never changed here. Send the version from the last read; a changed flag is refused with VERSION_CONFLICT. Rules keep their rule_id; a rule without one is new. */
@@ -311,3 +317,36 @@ export type ReshuffleFeatureFlagRequest = {
311
317
  export type ReshuffleFeatureFlagResponse = {
312
318
  flag: FeatureFlag;
313
319
  };
320
+ export type ListFeatureFlagHistoryRequest = {
321
+ applicationCode?: string;
322
+ key?: string;
323
+ /** 0-based page; per_page defaults to 20 and is capped at 100 */
324
+ page?: number;
325
+ perPage?: number;
326
+ };
327
+ /**
328
+ * One changed field. Values are JSON; a rule is addressed as rules[<rule_id>], before is empty for an added rule
329
+ * and after is empty for a removed one.
330
+ */
331
+ export type FeatureFlagChange = {
332
+ field: string;
333
+ before: string;
334
+ after: string;
335
+ };
336
+ export type FeatureFlagHistoryEntry = {
337
+ version: number;
338
+ /** create, update, set_percent, kill, unkill, archive, restore or reshuffle */
339
+ action: string;
340
+ userId: number;
341
+ /** empty when the user is gone or the change came with an API token of no user */
342
+ userEmail: string;
343
+ created: Date;
344
+ /** the flag right after the change */
345
+ flag: FeatureFlag;
346
+ /** against the previous version; empty for create and for the oldest entry kept */
347
+ changes: FeatureFlagChange[];
348
+ };
349
+ export type ListFeatureFlagHistoryResponse = {
350
+ entries: FeatureFlagHistoryEntry[];
351
+ total: number;
352
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pushwoosh/rpc-v2-http-api-data",
3
- "version": "0.2.429",
3
+ "version": "0.2.431",
4
4
  "description": "RPC V2 HTTP API Types and Data",
5
5
  "main": "index.js",
6
6
  "module": "index.js",