@contractspec/lib.feature-flags 1.57.0 → 1.59.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 (53) hide show
  1. package/dist/browser/contracts/index.js +636 -0
  2. package/dist/browser/docs/feature-flags.docblock.js +71 -0
  3. package/dist/browser/docs/index.js +71 -0
  4. package/dist/browser/entities/index.js +306 -0
  5. package/dist/browser/evaluation/index.js +223 -0
  6. package/dist/browser/events.js +296 -0
  7. package/dist/browser/feature-flags.capability.js +28 -0
  8. package/dist/browser/feature-flags.feature.js +55 -0
  9. package/dist/browser/index.js +1583 -0
  10. package/dist/contracts/index.d.ts +944 -950
  11. package/dist/contracts/index.d.ts.map +1 -1
  12. package/dist/contracts/index.js +635 -906
  13. package/dist/docs/feature-flags.docblock.d.ts +2 -1
  14. package/dist/docs/feature-flags.docblock.d.ts.map +1 -0
  15. package/dist/docs/feature-flags.docblock.js +18 -22
  16. package/dist/docs/index.d.ts +2 -1
  17. package/dist/docs/index.d.ts.map +1 -0
  18. package/dist/docs/index.js +72 -1
  19. package/dist/entities/index.d.ts +159 -164
  20. package/dist/entities/index.d.ts.map +1 -1
  21. package/dist/entities/index.js +297 -315
  22. package/dist/evaluation/index.d.ts +119 -122
  23. package/dist/evaluation/index.d.ts.map +1 -1
  24. package/dist/evaluation/index.js +215 -212
  25. package/dist/events.d.ts +480 -486
  26. package/dist/events.d.ts.map +1 -1
  27. package/dist/events.js +272 -511
  28. package/dist/feature-flags.capability.d.ts +2 -7
  29. package/dist/feature-flags.capability.d.ts.map +1 -1
  30. package/dist/feature-flags.capability.js +29 -25
  31. package/dist/feature-flags.feature.d.ts +1 -6
  32. package/dist/feature-flags.feature.d.ts.map +1 -1
  33. package/dist/feature-flags.feature.js +54 -146
  34. package/dist/index.d.ts +7 -6
  35. package/dist/index.d.ts.map +1 -0
  36. package/dist/index.js +1584 -8
  37. package/dist/node/contracts/index.js +636 -0
  38. package/dist/node/docs/feature-flags.docblock.js +71 -0
  39. package/dist/node/docs/index.js +71 -0
  40. package/dist/node/entities/index.js +306 -0
  41. package/dist/node/evaluation/index.js +223 -0
  42. package/dist/node/events.js +296 -0
  43. package/dist/node/feature-flags.capability.js +28 -0
  44. package/dist/node/feature-flags.feature.js +55 -0
  45. package/dist/node/index.js +1583 -0
  46. package/package.json +117 -30
  47. package/dist/contracts/index.js.map +0 -1
  48. package/dist/docs/feature-flags.docblock.js.map +0 -1
  49. package/dist/entities/index.js.map +0 -1
  50. package/dist/evaluation/index.js.map +0 -1
  51. package/dist/events.js.map +0 -1
  52. package/dist/feature-flags.capability.js.map +0 -1
  53. package/dist/feature-flags.feature.js.map +0 -1
package/dist/events.js CHANGED
@@ -1,536 +1,297 @@
1
+ // @bun
2
+ // src/events.ts
1
3
  import { ScalarTypeEnum, defineSchemaModel } from "@contractspec/lib.schema";
2
4
  import { defineEvent } from "@contractspec/lib.contracts";
3
-
4
- //#region src/events.ts
5
- const FlagCreatedPayload = defineSchemaModel({
6
- name: "FlagCreatedEventPayload",
7
- description: "Payload when a feature flag is created",
8
- fields: {
9
- flagId: {
10
- type: ScalarTypeEnum.String_unsecure(),
11
- isOptional: false
12
- },
13
- key: {
14
- type: ScalarTypeEnum.String_unsecure(),
15
- isOptional: false
16
- },
17
- name: {
18
- type: ScalarTypeEnum.String_unsecure(),
19
- isOptional: false
20
- },
21
- status: {
22
- type: ScalarTypeEnum.String_unsecure(),
23
- isOptional: false
24
- },
25
- orgId: {
26
- type: ScalarTypeEnum.String_unsecure(),
27
- isOptional: true
28
- },
29
- createdBy: {
30
- type: ScalarTypeEnum.String_unsecure(),
31
- isOptional: true
32
- },
33
- createdAt: {
34
- type: ScalarTypeEnum.DateTime(),
35
- isOptional: false
36
- }
37
- }
5
+ var FlagCreatedPayload = defineSchemaModel({
6
+ name: "FlagCreatedEventPayload",
7
+ description: "Payload when a feature flag is created",
8
+ fields: {
9
+ flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
10
+ key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
11
+ name: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
12
+ status: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
13
+ orgId: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },
14
+ createdBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },
15
+ createdAt: { type: ScalarTypeEnum.DateTime(), isOptional: false }
16
+ }
38
17
  });
39
- const FlagUpdatedPayload = defineSchemaModel({
40
- name: "FlagUpdatedEventPayload",
41
- description: "Payload when a feature flag is updated",
42
- fields: {
43
- flagId: {
44
- type: ScalarTypeEnum.String_unsecure(),
45
- isOptional: false
46
- },
47
- key: {
48
- type: ScalarTypeEnum.String_unsecure(),
49
- isOptional: false
50
- },
51
- changes: {
52
- type: ScalarTypeEnum.JSON(),
53
- isOptional: false
54
- },
55
- updatedBy: {
56
- type: ScalarTypeEnum.String_unsecure(),
57
- isOptional: true
58
- },
59
- updatedAt: {
60
- type: ScalarTypeEnum.DateTime(),
61
- isOptional: false
62
- }
63
- }
18
+ var FlagUpdatedPayload = defineSchemaModel({
19
+ name: "FlagUpdatedEventPayload",
20
+ description: "Payload when a feature flag is updated",
21
+ fields: {
22
+ flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
23
+ key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
24
+ changes: { type: ScalarTypeEnum.JSON(), isOptional: false },
25
+ updatedBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },
26
+ updatedAt: { type: ScalarTypeEnum.DateTime(), isOptional: false }
27
+ }
64
28
  });
65
- const FlagDeletedPayload = defineSchemaModel({
66
- name: "FlagDeletedEventPayload",
67
- description: "Payload when a feature flag is deleted",
68
- fields: {
69
- flagId: {
70
- type: ScalarTypeEnum.String_unsecure(),
71
- isOptional: false
72
- },
73
- key: {
74
- type: ScalarTypeEnum.String_unsecure(),
75
- isOptional: false
76
- },
77
- deletedBy: {
78
- type: ScalarTypeEnum.String_unsecure(),
79
- isOptional: true
80
- },
81
- deletedAt: {
82
- type: ScalarTypeEnum.DateTime(),
83
- isOptional: false
84
- }
85
- }
29
+ var FlagDeletedPayload = defineSchemaModel({
30
+ name: "FlagDeletedEventPayload",
31
+ description: "Payload when a feature flag is deleted",
32
+ fields: {
33
+ flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
34
+ key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
35
+ deletedBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },
36
+ deletedAt: { type: ScalarTypeEnum.DateTime(), isOptional: false }
37
+ }
86
38
  });
87
- const FlagToggledPayload = defineSchemaModel({
88
- name: "FlagToggledEventPayload",
89
- description: "Payload when a feature flag status is toggled",
90
- fields: {
91
- flagId: {
92
- type: ScalarTypeEnum.String_unsecure(),
93
- isOptional: false
94
- },
95
- key: {
96
- type: ScalarTypeEnum.String_unsecure(),
97
- isOptional: false
98
- },
99
- previousStatus: {
100
- type: ScalarTypeEnum.String_unsecure(),
101
- isOptional: false
102
- },
103
- newStatus: {
104
- type: ScalarTypeEnum.String_unsecure(),
105
- isOptional: false
106
- },
107
- toggledBy: {
108
- type: ScalarTypeEnum.String_unsecure(),
109
- isOptional: true
110
- },
111
- toggledAt: {
112
- type: ScalarTypeEnum.DateTime(),
113
- isOptional: false
114
- }
115
- }
39
+ var FlagToggledPayload = defineSchemaModel({
40
+ name: "FlagToggledEventPayload",
41
+ description: "Payload when a feature flag status is toggled",
42
+ fields: {
43
+ flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
44
+ key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
45
+ previousStatus: {
46
+ type: ScalarTypeEnum.String_unsecure(),
47
+ isOptional: false
48
+ },
49
+ newStatus: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
50
+ toggledBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },
51
+ toggledAt: { type: ScalarTypeEnum.DateTime(), isOptional: false }
52
+ }
116
53
  });
117
- const RuleCreatedPayload = defineSchemaModel({
118
- name: "RuleCreatedEventPayload",
119
- description: "Payload when a targeting rule is created",
120
- fields: {
121
- ruleId: {
122
- type: ScalarTypeEnum.String_unsecure(),
123
- isOptional: false
124
- },
125
- flagId: {
126
- type: ScalarTypeEnum.String_unsecure(),
127
- isOptional: false
128
- },
129
- flagKey: {
130
- type: ScalarTypeEnum.String_unsecure(),
131
- isOptional: false
132
- },
133
- attribute: {
134
- type: ScalarTypeEnum.String_unsecure(),
135
- isOptional: false
136
- },
137
- operator: {
138
- type: ScalarTypeEnum.String_unsecure(),
139
- isOptional: false
140
- },
141
- createdAt: {
142
- type: ScalarTypeEnum.DateTime(),
143
- isOptional: false
144
- }
145
- }
54
+ var RuleCreatedPayload = defineSchemaModel({
55
+ name: "RuleCreatedEventPayload",
56
+ description: "Payload when a targeting rule is created",
57
+ fields: {
58
+ ruleId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
59
+ flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
60
+ flagKey: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
61
+ attribute: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
62
+ operator: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
63
+ createdAt: { type: ScalarTypeEnum.DateTime(), isOptional: false }
64
+ }
146
65
  });
147
- const RuleDeletedPayload = defineSchemaModel({
148
- name: "RuleDeletedEventPayload",
149
- description: "Payload when a targeting rule is deleted",
150
- fields: {
151
- ruleId: {
152
- type: ScalarTypeEnum.String_unsecure(),
153
- isOptional: false
154
- },
155
- flagId: {
156
- type: ScalarTypeEnum.String_unsecure(),
157
- isOptional: false
158
- },
159
- flagKey: {
160
- type: ScalarTypeEnum.String_unsecure(),
161
- isOptional: false
162
- },
163
- deletedAt: {
164
- type: ScalarTypeEnum.DateTime(),
165
- isOptional: false
166
- }
167
- }
66
+ var RuleDeletedPayload = defineSchemaModel({
67
+ name: "RuleDeletedEventPayload",
68
+ description: "Payload when a targeting rule is deleted",
69
+ fields: {
70
+ ruleId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
71
+ flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
72
+ flagKey: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
73
+ deletedAt: { type: ScalarTypeEnum.DateTime(), isOptional: false }
74
+ }
168
75
  });
169
- const ExperimentCreatedPayload = defineSchemaModel({
170
- name: "ExperimentCreatedEventPayload",
171
- description: "Payload when an experiment is created",
172
- fields: {
173
- experimentId: {
174
- type: ScalarTypeEnum.String_unsecure(),
175
- isOptional: false
176
- },
177
- key: {
178
- type: ScalarTypeEnum.String_unsecure(),
179
- isOptional: false
180
- },
181
- name: {
182
- type: ScalarTypeEnum.String_unsecure(),
183
- isOptional: false
184
- },
185
- flagId: {
186
- type: ScalarTypeEnum.String_unsecure(),
187
- isOptional: false
188
- },
189
- variants: {
190
- type: ScalarTypeEnum.JSON(),
191
- isOptional: false
192
- },
193
- createdBy: {
194
- type: ScalarTypeEnum.String_unsecure(),
195
- isOptional: true
196
- },
197
- createdAt: {
198
- type: ScalarTypeEnum.DateTime(),
199
- isOptional: false
200
- }
201
- }
76
+ var ExperimentCreatedPayload = defineSchemaModel({
77
+ name: "ExperimentCreatedEventPayload",
78
+ description: "Payload when an experiment is created",
79
+ fields: {
80
+ experimentId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
81
+ key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
82
+ name: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
83
+ flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
84
+ variants: { type: ScalarTypeEnum.JSON(), isOptional: false },
85
+ createdBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },
86
+ createdAt: { type: ScalarTypeEnum.DateTime(), isOptional: false }
87
+ }
202
88
  });
203
- const ExperimentStartedPayload = defineSchemaModel({
204
- name: "ExperimentStartedEventPayload",
205
- description: "Payload when an experiment starts",
206
- fields: {
207
- experimentId: {
208
- type: ScalarTypeEnum.String_unsecure(),
209
- isOptional: false
210
- },
211
- key: {
212
- type: ScalarTypeEnum.String_unsecure(),
213
- isOptional: false
214
- },
215
- flagId: {
216
- type: ScalarTypeEnum.String_unsecure(),
217
- isOptional: false
218
- },
219
- variants: {
220
- type: ScalarTypeEnum.JSON(),
221
- isOptional: false
222
- },
223
- audiencePercentage: {
224
- type: ScalarTypeEnum.Int_unsecure(),
225
- isOptional: false
226
- },
227
- startedBy: {
228
- type: ScalarTypeEnum.String_unsecure(),
229
- isOptional: true
230
- },
231
- startedAt: {
232
- type: ScalarTypeEnum.DateTime(),
233
- isOptional: false
234
- }
235
- }
89
+ var ExperimentStartedPayload = defineSchemaModel({
90
+ name: "ExperimentStartedEventPayload",
91
+ description: "Payload when an experiment starts",
92
+ fields: {
93
+ experimentId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
94
+ key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
95
+ flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
96
+ variants: { type: ScalarTypeEnum.JSON(), isOptional: false },
97
+ audiencePercentage: {
98
+ type: ScalarTypeEnum.Int_unsecure(),
99
+ isOptional: false
100
+ },
101
+ startedBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },
102
+ startedAt: { type: ScalarTypeEnum.DateTime(), isOptional: false }
103
+ }
236
104
  });
237
- const ExperimentStoppedPayload = defineSchemaModel({
238
- name: "ExperimentStoppedEventPayload",
239
- description: "Payload when an experiment stops",
240
- fields: {
241
- experimentId: {
242
- type: ScalarTypeEnum.String_unsecure(),
243
- isOptional: false
244
- },
245
- key: {
246
- type: ScalarTypeEnum.String_unsecure(),
247
- isOptional: false
248
- },
249
- reason: {
250
- type: ScalarTypeEnum.String_unsecure(),
251
- isOptional: false
252
- },
253
- winningVariant: {
254
- type: ScalarTypeEnum.String_unsecure(),
255
- isOptional: true
256
- },
257
- stoppedBy: {
258
- type: ScalarTypeEnum.String_unsecure(),
259
- isOptional: true
260
- },
261
- stoppedAt: {
262
- type: ScalarTypeEnum.DateTime(),
263
- isOptional: false
264
- }
265
- }
105
+ var ExperimentStoppedPayload = defineSchemaModel({
106
+ name: "ExperimentStoppedEventPayload",
107
+ description: "Payload when an experiment stops",
108
+ fields: {
109
+ experimentId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
110
+ key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
111
+ reason: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
112
+ winningVariant: {
113
+ type: ScalarTypeEnum.String_unsecure(),
114
+ isOptional: true
115
+ },
116
+ stoppedBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },
117
+ stoppedAt: { type: ScalarTypeEnum.DateTime(), isOptional: false }
118
+ }
266
119
  });
267
- const FlagEvaluatedPayload = defineSchemaModel({
268
- name: "FlagEvaluatedEventPayload",
269
- description: "Payload when a flag is evaluated (for analytics)",
270
- fields: {
271
- flagId: {
272
- type: ScalarTypeEnum.String_unsecure(),
273
- isOptional: false
274
- },
275
- flagKey: {
276
- type: ScalarTypeEnum.String_unsecure(),
277
- isOptional: false
278
- },
279
- subjectType: {
280
- type: ScalarTypeEnum.String_unsecure(),
281
- isOptional: false
282
- },
283
- subjectId: {
284
- type: ScalarTypeEnum.String_unsecure(),
285
- isOptional: false
286
- },
287
- result: {
288
- type: ScalarTypeEnum.Boolean(),
289
- isOptional: false
290
- },
291
- variant: {
292
- type: ScalarTypeEnum.String_unsecure(),
293
- isOptional: true
294
- },
295
- reason: {
296
- type: ScalarTypeEnum.String_unsecure(),
297
- isOptional: false
298
- },
299
- evaluatedAt: {
300
- type: ScalarTypeEnum.DateTime(),
301
- isOptional: false
302
- }
303
- }
120
+ var FlagEvaluatedPayload = defineSchemaModel({
121
+ name: "FlagEvaluatedEventPayload",
122
+ description: "Payload when a flag is evaluated (for analytics)",
123
+ fields: {
124
+ flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
125
+ flagKey: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
126
+ subjectType: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
127
+ subjectId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
128
+ result: { type: ScalarTypeEnum.Boolean(), isOptional: false },
129
+ variant: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },
130
+ reason: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
131
+ evaluatedAt: { type: ScalarTypeEnum.DateTime(), isOptional: false }
132
+ }
304
133
  });
305
- const VariantAssignedPayload = defineSchemaModel({
306
- name: "VariantAssignedEventPayload",
307
- description: "Payload when a subject is assigned to an experiment variant",
308
- fields: {
309
- experimentId: {
310
- type: ScalarTypeEnum.String_unsecure(),
311
- isOptional: false
312
- },
313
- experimentKey: {
314
- type: ScalarTypeEnum.String_unsecure(),
315
- isOptional: false
316
- },
317
- subjectType: {
318
- type: ScalarTypeEnum.String_unsecure(),
319
- isOptional: false
320
- },
321
- subjectId: {
322
- type: ScalarTypeEnum.String_unsecure(),
323
- isOptional: false
324
- },
325
- variant: {
326
- type: ScalarTypeEnum.String_unsecure(),
327
- isOptional: false
328
- },
329
- bucket: {
330
- type: ScalarTypeEnum.Int_unsecure(),
331
- isOptional: false
332
- },
333
- assignedAt: {
334
- type: ScalarTypeEnum.DateTime(),
335
- isOptional: false
336
- }
337
- }
134
+ var VariantAssignedPayload = defineSchemaModel({
135
+ name: "VariantAssignedEventPayload",
136
+ description: "Payload when a subject is assigned to an experiment variant",
137
+ fields: {
138
+ experimentId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
139
+ experimentKey: {
140
+ type: ScalarTypeEnum.String_unsecure(),
141
+ isOptional: false
142
+ },
143
+ subjectType: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
144
+ subjectId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
145
+ variant: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },
146
+ bucket: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },
147
+ assignedAt: { type: ScalarTypeEnum.DateTime(), isOptional: false }
148
+ }
338
149
  });
339
- /**
340
- * Emitted when a feature flag is created.
341
- */
342
- const FlagCreatedEvent = defineEvent({
343
- meta: {
344
- key: "flag.created",
345
- version: "1.0.0",
346
- description: "A feature flag has been created.",
347
- stability: "stable",
348
- owners: ["@platform.feature-flags"],
349
- tags: ["feature-flags", "create"]
350
- },
351
- payload: FlagCreatedPayload
150
+ var FlagCreatedEvent = defineEvent({
151
+ meta: {
152
+ key: "flag.created",
153
+ version: "1.0.0",
154
+ description: "A feature flag has been created.",
155
+ stability: "stable",
156
+ owners: ["@platform.feature-flags"],
157
+ tags: ["feature-flags", "create"]
158
+ },
159
+ payload: FlagCreatedPayload
352
160
  });
353
- /**
354
- * Emitted when a feature flag is updated.
355
- */
356
- const FlagUpdatedEvent = defineEvent({
357
- meta: {
358
- key: "flag.updated",
359
- version: "1.0.0",
360
- description: "A feature flag has been updated.",
361
- stability: "stable",
362
- owners: ["@platform.feature-flags"],
363
- tags: ["feature-flags", "update"]
364
- },
365
- payload: FlagUpdatedPayload
161
+ var FlagUpdatedEvent = defineEvent({
162
+ meta: {
163
+ key: "flag.updated",
164
+ version: "1.0.0",
165
+ description: "A feature flag has been updated.",
166
+ stability: "stable",
167
+ owners: ["@platform.feature-flags"],
168
+ tags: ["feature-flags", "update"]
169
+ },
170
+ payload: FlagUpdatedPayload
366
171
  });
367
- /**
368
- * Emitted when a feature flag is deleted.
369
- */
370
- const FlagDeletedEvent = defineEvent({
371
- meta: {
372
- key: "flag.deleted",
373
- version: "1.0.0",
374
- description: "A feature flag has been deleted.",
375
- stability: "stable",
376
- owners: ["@platform.feature-flags"],
377
- tags: ["feature-flags", "delete"]
378
- },
379
- payload: FlagDeletedPayload
172
+ var FlagDeletedEvent = defineEvent({
173
+ meta: {
174
+ key: "flag.deleted",
175
+ version: "1.0.0",
176
+ description: "A feature flag has been deleted.",
177
+ stability: "stable",
178
+ owners: ["@platform.feature-flags"],
179
+ tags: ["feature-flags", "delete"]
180
+ },
181
+ payload: FlagDeletedPayload
380
182
  });
381
- /**
382
- * Emitted when a feature flag status is toggled.
383
- */
384
- const FlagToggledEvent = defineEvent({
385
- meta: {
386
- key: "flag.toggled",
387
- version: "1.0.0",
388
- description: "A feature flag status has been toggled.",
389
- stability: "stable",
390
- owners: ["@platform.feature-flags"],
391
- tags: ["feature-flags", "toggle"]
392
- },
393
- payload: FlagToggledPayload
183
+ var FlagToggledEvent = defineEvent({
184
+ meta: {
185
+ key: "flag.toggled",
186
+ version: "1.0.0",
187
+ description: "A feature flag status has been toggled.",
188
+ stability: "stable",
189
+ owners: ["@platform.feature-flags"],
190
+ tags: ["feature-flags", "toggle"]
191
+ },
192
+ payload: FlagToggledPayload
394
193
  });
395
- /**
396
- * Emitted when a targeting rule is created.
397
- */
398
- const RuleCreatedEvent = defineEvent({
399
- meta: {
400
- key: "flag.rule_created",
401
- version: "1.0.0",
402
- description: "A targeting rule has been created.",
403
- stability: "stable",
404
- owners: ["@platform.feature-flags"],
405
- tags: [
406
- "feature-flags",
407
- "rule",
408
- "create"
409
- ]
410
- },
411
- payload: RuleCreatedPayload
194
+ var RuleCreatedEvent = defineEvent({
195
+ meta: {
196
+ key: "flag.rule_created",
197
+ version: "1.0.0",
198
+ description: "A targeting rule has been created.",
199
+ stability: "stable",
200
+ owners: ["@platform.feature-flags"],
201
+ tags: ["feature-flags", "rule", "create"]
202
+ },
203
+ payload: RuleCreatedPayload
412
204
  });
413
- /**
414
- * Emitted when a targeting rule is deleted.
415
- */
416
- const RuleDeletedEvent = defineEvent({
417
- meta: {
418
- key: "flag.rule_deleted",
419
- version: "1.0.0",
420
- description: "A targeting rule has been deleted.",
421
- stability: "stable",
422
- owners: ["@platform.feature-flags"],
423
- tags: [
424
- "feature-flags",
425
- "rule",
426
- "delete"
427
- ]
428
- },
429
- payload: RuleDeletedPayload
205
+ var RuleDeletedEvent = defineEvent({
206
+ meta: {
207
+ key: "flag.rule_deleted",
208
+ version: "1.0.0",
209
+ description: "A targeting rule has been deleted.",
210
+ stability: "stable",
211
+ owners: ["@platform.feature-flags"],
212
+ tags: ["feature-flags", "rule", "delete"]
213
+ },
214
+ payload: RuleDeletedPayload
430
215
  });
431
- /**
432
- * Emitted when an experiment is created.
433
- */
434
- const ExperimentCreatedEvent = defineEvent({
435
- meta: {
436
- key: "experiment.created",
437
- version: "1.0.0",
438
- description: "An experiment has been created.",
439
- stability: "stable",
440
- owners: ["@platform.feature-flags"],
441
- tags: [
442
- "feature-flags",
443
- "experiment",
444
- "create"
445
- ]
446
- },
447
- payload: ExperimentCreatedPayload
216
+ var ExperimentCreatedEvent = defineEvent({
217
+ meta: {
218
+ key: "experiment.created",
219
+ version: "1.0.0",
220
+ description: "An experiment has been created.",
221
+ stability: "stable",
222
+ owners: ["@platform.feature-flags"],
223
+ tags: ["feature-flags", "experiment", "create"]
224
+ },
225
+ payload: ExperimentCreatedPayload
448
226
  });
449
- /**
450
- * Emitted when an experiment starts.
451
- */
452
- const ExperimentStartedEvent = defineEvent({
453
- meta: {
454
- key: "experiment.started",
455
- version: "1.0.0",
456
- description: "An experiment has started.",
457
- stability: "stable",
458
- owners: ["@platform.feature-flags"],
459
- tags: [
460
- "feature-flags",
461
- "experiment",
462
- "start"
463
- ]
464
- },
465
- payload: ExperimentStartedPayload
227
+ var ExperimentStartedEvent = defineEvent({
228
+ meta: {
229
+ key: "experiment.started",
230
+ version: "1.0.0",
231
+ description: "An experiment has started.",
232
+ stability: "stable",
233
+ owners: ["@platform.feature-flags"],
234
+ tags: ["feature-flags", "experiment", "start"]
235
+ },
236
+ payload: ExperimentStartedPayload
466
237
  });
467
- /**
468
- * Emitted when an experiment stops.
469
- */
470
- const ExperimentStoppedEvent = defineEvent({
471
- meta: {
472
- key: "experiment.stopped",
473
- version: "1.0.0",
474
- description: "An experiment has stopped.",
475
- stability: "stable",
476
- owners: ["@platform.feature-flags"],
477
- tags: [
478
- "feature-flags",
479
- "experiment",
480
- "stop"
481
- ]
482
- },
483
- payload: ExperimentStoppedPayload
238
+ var ExperimentStoppedEvent = defineEvent({
239
+ meta: {
240
+ key: "experiment.stopped",
241
+ version: "1.0.0",
242
+ description: "An experiment has stopped.",
243
+ stability: "stable",
244
+ owners: ["@platform.feature-flags"],
245
+ tags: ["feature-flags", "experiment", "stop"]
246
+ },
247
+ payload: ExperimentStoppedPayload
484
248
  });
485
- /**
486
- * Emitted when a flag is evaluated (for analytics).
487
- */
488
- const FlagEvaluatedEvent = defineEvent({
489
- meta: {
490
- key: "flag.evaluated",
491
- version: "1.0.0",
492
- description: "A feature flag has been evaluated.",
493
- stability: "stable",
494
- owners: ["@platform.feature-flags"],
495
- tags: ["feature-flags", "evaluate"]
496
- },
497
- payload: FlagEvaluatedPayload
249
+ var FlagEvaluatedEvent = defineEvent({
250
+ meta: {
251
+ key: "flag.evaluated",
252
+ version: "1.0.0",
253
+ description: "A feature flag has been evaluated.",
254
+ stability: "stable",
255
+ owners: ["@platform.feature-flags"],
256
+ tags: ["feature-flags", "evaluate"]
257
+ },
258
+ payload: FlagEvaluatedPayload
498
259
  });
499
- /**
500
- * Emitted when a subject is assigned to an experiment variant.
501
- */
502
- const VariantAssignedEvent = defineEvent({
503
- meta: {
504
- key: "experiment.variant_assigned",
505
- version: "1.0.0",
506
- description: "A subject has been assigned to an experiment variant.",
507
- stability: "stable",
508
- owners: ["@platform.feature-flags"],
509
- tags: [
510
- "feature-flags",
511
- "experiment",
512
- "variant"
513
- ]
514
- },
515
- payload: VariantAssignedPayload
260
+ var VariantAssignedEvent = defineEvent({
261
+ meta: {
262
+ key: "experiment.variant_assigned",
263
+ version: "1.0.0",
264
+ description: "A subject has been assigned to an experiment variant.",
265
+ stability: "stable",
266
+ owners: ["@platform.feature-flags"],
267
+ tags: ["feature-flags", "experiment", "variant"]
268
+ },
269
+ payload: VariantAssignedPayload
516
270
  });
517
- /**
518
- * All feature flag events.
519
- */
520
- const FeatureFlagEvents = {
521
- FlagCreatedEvent,
522
- FlagUpdatedEvent,
523
- FlagDeletedEvent,
524
- FlagToggledEvent,
525
- RuleCreatedEvent,
526
- RuleDeletedEvent,
527
- ExperimentCreatedEvent,
528
- ExperimentStartedEvent,
529
- ExperimentStoppedEvent,
530
- FlagEvaluatedEvent,
531
- VariantAssignedEvent
271
+ var FeatureFlagEvents = {
272
+ FlagCreatedEvent,
273
+ FlagUpdatedEvent,
274
+ FlagDeletedEvent,
275
+ FlagToggledEvent,
276
+ RuleCreatedEvent,
277
+ RuleDeletedEvent,
278
+ ExperimentCreatedEvent,
279
+ ExperimentStartedEvent,
280
+ ExperimentStoppedEvent,
281
+ FlagEvaluatedEvent,
282
+ VariantAssignedEvent
283
+ };
284
+ export {
285
+ VariantAssignedEvent,
286
+ RuleDeletedEvent,
287
+ RuleCreatedEvent,
288
+ FlagUpdatedEvent,
289
+ FlagToggledEvent,
290
+ FlagEvaluatedEvent,
291
+ FlagDeletedEvent,
292
+ FlagCreatedEvent,
293
+ FeatureFlagEvents,
294
+ ExperimentStoppedEvent,
295
+ ExperimentStartedEvent,
296
+ ExperimentCreatedEvent
532
297
  };
533
-
534
- //#endregion
535
- export { ExperimentCreatedEvent, ExperimentStartedEvent, ExperimentStoppedEvent, FeatureFlagEvents, FlagCreatedEvent, FlagDeletedEvent, FlagEvaluatedEvent, FlagToggledEvent, FlagUpdatedEvent, RuleCreatedEvent, RuleDeletedEvent, VariantAssignedEvent };
536
- //# sourceMappingURL=events.js.map