unleash-server 5.2.7 → 5.3.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 (787) hide show
  1. package/dist/lib/addons/addon-schema.js +10 -0
  2. package/dist/lib/addons/addon-schema.js.map +1 -1
  3. package/dist/lib/addons/addon.d.ts +1 -0
  4. package/dist/lib/addons/addon.js.map +1 -1
  5. package/dist/lib/addons/datadog-definition.js +21 -0
  6. package/dist/lib/addons/datadog-definition.js.map +1 -1
  7. package/dist/lib/addons/datadog.d.ts +8 -1
  8. package/dist/lib/addons/datadog.js +14 -2
  9. package/dist/lib/addons/datadog.js.map +1 -1
  10. package/dist/lib/addons/datadog.test.js +62 -0
  11. package/dist/lib/addons/datadog.test.js.map +1 -1
  12. package/dist/lib/addons/feature-event-formatter-md.d.ts +1 -0
  13. package/dist/lib/addons/feature-event-formatter-md.js +7 -0
  14. package/dist/lib/addons/feature-event-formatter-md.js.map +1 -1
  15. package/dist/lib/addons/index.d.ts +2 -1
  16. package/dist/lib/addons/index.js +12 -2
  17. package/dist/lib/addons/index.js.map +1 -1
  18. package/dist/lib/addons/installation-definition-schema.d.ts +2 -0
  19. package/dist/lib/addons/installation-definition-schema.js +13 -0
  20. package/dist/lib/addons/installation-definition-schema.js.map +1 -0
  21. package/dist/lib/addons/slack-app-definition.d.ts +3 -0
  22. package/dist/lib/addons/slack-app-definition.js +68 -0
  23. package/dist/lib/addons/slack-app-definition.js.map +1 -0
  24. package/dist/lib/addons/slack-app.d.ts +23 -0
  25. package/dist/lib/addons/slack-app.js +137 -0
  26. package/dist/lib/addons/slack-app.js.map +1 -0
  27. package/dist/lib/addons/slack-app.test.d.ts +1 -0
  28. package/dist/lib/addons/slack-app.test.js +191 -0
  29. package/dist/lib/addons/slack-app.test.js.map +1 -0
  30. package/dist/lib/addons/slack-definition.js +13 -0
  31. package/dist/lib/addons/slack-definition.js.map +1 -1
  32. package/dist/lib/addons/slack.d.ts +9 -1
  33. package/dist/lib/addons/slack.js +15 -3
  34. package/dist/lib/addons/slack.js.map +1 -1
  35. package/dist/lib/addons/slack.test.js +33 -0
  36. package/dist/lib/addons/slack.test.js.map +1 -1
  37. package/dist/lib/addons/teams-definition.js +13 -0
  38. package/dist/lib/addons/teams-definition.js.map +1 -1
  39. package/dist/lib/addons/teams.d.ts +6 -1
  40. package/dist/lib/addons/teams.js +11 -2
  41. package/dist/lib/addons/teams.js.map +1 -1
  42. package/dist/lib/addons/teams.test.js +28 -0
  43. package/dist/lib/addons/teams.test.js.map +1 -1
  44. package/dist/lib/addons/webhook-definition.js +13 -0
  45. package/dist/lib/addons/webhook-definition.js.map +1 -1
  46. package/dist/lib/addons/webhook.d.ts +1 -0
  47. package/dist/lib/addons/webhook.js +11 -1
  48. package/dist/lib/addons/webhook.js.map +1 -1
  49. package/dist/lib/addons/webhook.test.js +29 -0
  50. package/dist/lib/addons/webhook.test.js.map +1 -1
  51. package/dist/lib/create-config.js +2 -2
  52. package/dist/lib/create-config.js.map +1 -1
  53. package/dist/lib/db/access-store.d.ts +0 -1
  54. package/dist/lib/db/access-store.js +1 -14
  55. package/dist/lib/db/access-store.js.map +1 -1
  56. package/dist/lib/db/client-metrics-store-v2.js +7 -2
  57. package/dist/lib/db/client-metrics-store-v2.js.map +1 -1
  58. package/dist/lib/db/context-field-store.js +9 -18
  59. package/dist/lib/db/context-field-store.js.map +1 -1
  60. package/dist/lib/db/event-store.d.ts +2 -0
  61. package/dist/lib/db/event-store.js +19 -9
  62. package/dist/lib/db/event-store.js.map +1 -1
  63. package/dist/lib/db/feature-strategy-store.js +5 -0
  64. package/dist/lib/db/feature-strategy-store.js.map +1 -1
  65. package/dist/lib/db/feature-strategy-store.test.js +1 -0
  66. package/dist/lib/db/feature-strategy-store.test.js.map +1 -1
  67. package/dist/lib/db/feature-toggle-client-store.d.ts +7 -8
  68. package/dist/lib/db/feature-toggle-client-store.js +46 -24
  69. package/dist/lib/db/feature-toggle-client-store.js.map +1 -1
  70. package/dist/lib/db/feature-toggle-store.d.ts +6 -0
  71. package/dist/lib/db/feature-toggle-store.js +35 -0
  72. package/dist/lib/db/feature-toggle-store.js.map +1 -1
  73. package/dist/lib/db/feature-type-store.d.ts +1 -0
  74. package/dist/lib/db/feature-type-store.js +12 -0
  75. package/dist/lib/db/feature-type-store.js.map +1 -1
  76. package/dist/lib/db/group-store.d.ts +5 -7
  77. package/dist/lib/db/group-store.js +51 -25
  78. package/dist/lib/db/group-store.js.map +1 -1
  79. package/dist/lib/db/index.js +1 -1
  80. package/dist/lib/db/index.js.map +1 -1
  81. package/dist/lib/db/project-store.d.ts +3 -5
  82. package/dist/lib/db/project-store.js +19 -19
  83. package/dist/lib/db/project-store.js.map +1 -1
  84. package/dist/lib/db/segment-store.d.ts +2 -1
  85. package/dist/lib/db/segment-store.js +23 -20
  86. package/dist/lib/db/segment-store.js.map +1 -1
  87. package/dist/lib/db/segment-store.test.d.ts +1 -0
  88. package/dist/lib/db/segment-store.test.js +32 -0
  89. package/dist/lib/db/segment-store.test.js.map +1 -0
  90. package/dist/lib/error/bad-data-error.d.ts +1 -0
  91. package/dist/lib/error/bad-data-error.js +18 -5
  92. package/dist/lib/error/bad-data-error.js.map +1 -1
  93. package/dist/lib/error/content-type-error.d.ts +1 -0
  94. package/dist/lib/error/content-type-error.js +1 -0
  95. package/dist/lib/error/content-type-error.js.map +1 -1
  96. package/dist/lib/error/disabled-error.d.ts +1 -0
  97. package/dist/lib/error/disabled-error.js +4 -0
  98. package/dist/lib/error/disabled-error.js.map +1 -1
  99. package/dist/lib/error/feature-has-tag-error.d.ts +1 -0
  100. package/dist/lib/error/feature-has-tag-error.js +4 -0
  101. package/dist/lib/error/feature-has-tag-error.js.map +1 -1
  102. package/dist/lib/error/forbidden-error.d.ts +5 -0
  103. package/dist/lib/error/forbidden-error.js +12 -0
  104. package/dist/lib/error/forbidden-error.js.map +1 -0
  105. package/dist/lib/error/from-legacy-error.js +68 -0
  106. package/dist/lib/error/from-legacy-error.js.map +1 -1
  107. package/dist/lib/error/incompatible-project-error.d.ts +1 -0
  108. package/dist/lib/error/incompatible-project-error.js +1 -0
  109. package/dist/lib/error/incompatible-project-error.js.map +1 -1
  110. package/dist/lib/error/index.d.ts +3 -2
  111. package/dist/lib/error/index.js +5 -3
  112. package/dist/lib/error/index.js.map +1 -1
  113. package/dist/lib/error/invalid-operation-error.d.ts +1 -0
  114. package/dist/lib/error/invalid-operation-error.js +4 -0
  115. package/dist/lib/error/invalid-operation-error.js.map +1 -1
  116. package/dist/lib/error/invalid-token-error.d.ts +1 -0
  117. package/dist/lib/error/invalid-token-error.js +1 -0
  118. package/dist/lib/error/invalid-token-error.js.map +1 -1
  119. package/dist/lib/error/minimum-one-environment-error.d.ts +1 -0
  120. package/dist/lib/error/minimum-one-environment-error.js +4 -0
  121. package/dist/lib/error/minimum-one-environment-error.js.map +1 -1
  122. package/dist/lib/error/name-exists-error.d.ts +1 -0
  123. package/dist/lib/error/name-exists-error.js +4 -0
  124. package/dist/lib/error/name-exists-error.js.map +1 -1
  125. package/dist/lib/error/not-implemented-error.d.ts +1 -0
  126. package/dist/lib/error/not-implemented-error.js +4 -0
  127. package/dist/lib/error/not-implemented-error.js.map +1 -1
  128. package/dist/lib/error/notfound-error.d.ts +1 -0
  129. package/dist/lib/error/notfound-error.js +1 -0
  130. package/dist/lib/error/notfound-error.js.map +1 -1
  131. package/dist/lib/error/operation-denied-error.d.ts +1 -0
  132. package/dist/lib/error/operation-denied-error.js +4 -0
  133. package/dist/lib/error/operation-denied-error.js.map +1 -1
  134. package/dist/lib/error/owasp-validation-error.d.ts +1 -0
  135. package/dist/lib/error/owasp-validation-error.js +1 -0
  136. package/dist/lib/error/owasp-validation-error.js.map +1 -1
  137. package/dist/lib/error/password-mismatch.d.ts +1 -0
  138. package/dist/lib/error/password-mismatch.js +1 -0
  139. package/dist/lib/error/password-mismatch.js.map +1 -1
  140. package/dist/lib/error/password-undefined.d.ts +1 -0
  141. package/dist/lib/error/password-undefined.js +1 -0
  142. package/dist/lib/error/password-undefined.js.map +1 -1
  143. package/dist/lib/error/{no-access-error.d.ts → permission-error.d.ts} +3 -2
  144. package/dist/lib/error/{no-access-error.js → permission-error.js} +10 -7
  145. package/dist/lib/error/permission-error.js.map +1 -0
  146. package/dist/lib/error/project-without-owner-error.d.ts +1 -0
  147. package/dist/lib/error/project-without-owner-error.js +1 -0
  148. package/dist/lib/error/project-without-owner-error.js.map +1 -1
  149. package/dist/lib/error/role-in-use-error.d.ts +1 -0
  150. package/dist/lib/error/role-in-use-error.js +4 -0
  151. package/dist/lib/error/role-in-use-error.js.map +1 -1
  152. package/dist/lib/error/unauthorized-error.d.ts +1 -0
  153. package/dist/lib/error/unauthorized-error.js +4 -0
  154. package/dist/lib/error/unauthorized-error.js.map +1 -1
  155. package/dist/lib/error/unleash-error.d.ts +5 -3
  156. package/dist/lib/error/unleash-error.js +4 -61
  157. package/dist/lib/error/unleash-error.js.map +1 -1
  158. package/dist/lib/error/unleash-error.test.js +67 -37
  159. package/dist/lib/error/unleash-error.test.js.map +1 -1
  160. package/dist/lib/error/used-token-error.d.ts +1 -0
  161. package/dist/lib/error/used-token-error.js +1 -0
  162. package/dist/lib/error/used-token-error.js.map +1 -1
  163. package/dist/lib/features/export-import-toggles/export-import-controller.js +12 -7
  164. package/dist/lib/features/export-import-toggles/export-import-controller.js.map +1 -1
  165. package/dist/lib/features/export-import-toggles/import-permissions-service.js +1 -1
  166. package/dist/lib/features/export-import-toggles/import-permissions-service.js.map +1 -1
  167. package/dist/lib/features/feature-toggle/createFeatureToggleService.js +1 -1
  168. package/dist/lib/features/feature-toggle/createFeatureToggleService.js.map +1 -1
  169. package/dist/lib/features/group/createGroupService.d.ts +4 -0
  170. package/dist/lib/features/group/createGroupService.js +20 -0
  171. package/dist/lib/features/group/createGroupService.js.map +1 -0
  172. package/dist/lib/features/playground/feature-evaluator/client.d.ts +3 -1
  173. package/dist/lib/features/playground/feature-evaluator/client.js +33 -13
  174. package/dist/lib/features/playground/feature-evaluator/client.js.map +1 -1
  175. package/dist/lib/features/playground/feature-evaluator/strategy/strategy.d.ts +3 -1
  176. package/dist/lib/features/playground/feature-evaluator/strategy/strategy.js +14 -1
  177. package/dist/lib/features/playground/feature-evaluator/strategy/strategy.js.map +1 -1
  178. package/dist/lib/features/playground/feature-evaluator/variant.d.ts +4 -4
  179. package/dist/lib/features/playground/feature-evaluator/variant.js +14 -10
  180. package/dist/lib/features/playground/feature-evaluator/variant.js.map +1 -1
  181. package/dist/lib/features/playground/offline-unleash-client.js +7 -0
  182. package/dist/lib/features/playground/offline-unleash-client.js.map +1 -1
  183. package/dist/lib/features/playground/offline-unleash-client.test.js +69 -0
  184. package/dist/lib/features/playground/offline-unleash-client.test.js.map +1 -1
  185. package/dist/lib/features/playground/playground-service.js +5 -3
  186. package/dist/lib/features/playground/playground-service.js.map +1 -1
  187. package/dist/lib/features/playground/playground.js +12 -15
  188. package/dist/lib/features/playground/playground.js.map +1 -1
  189. package/dist/lib/middleware/api-token-middleware.js +1 -1
  190. package/dist/lib/middleware/api-token-middleware.js.map +1 -1
  191. package/dist/lib/openapi/index.js +15 -3
  192. package/dist/lib/openapi/index.js.map +1 -1
  193. package/dist/lib/openapi/meta-schema-rules.test.js +0 -126
  194. package/dist/lib/openapi/meta-schema-rules.test.js.map +1 -1
  195. package/dist/lib/openapi/spec/addon-type-schema.d.ts +57 -0
  196. package/dist/lib/openapi/spec/addon-type-schema.js +50 -0
  197. package/dist/lib/openapi/spec/addon-type-schema.js.map +1 -1
  198. package/dist/lib/openapi/spec/addons-schema.d.ts +64 -0
  199. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.d.ts +166 -4
  200. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.js +1 -2
  201. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.js.map +1 -1
  202. package/dist/lib/openapi/spec/advanced-playground-feature-schema.d.ts +331 -6
  203. package/dist/lib/openapi/spec/advanced-playground-response-schema.d.ts +662 -12
  204. package/dist/lib/openapi/spec/api-tokens-schema.d.ts +2 -2
  205. package/dist/lib/openapi/spec/api-tokens-schema.js +2 -2
  206. package/dist/lib/openapi/spec/api-tokens-schema.js.map +1 -1
  207. package/dist/lib/openapi/spec/batch-features-schema.d.ts +3 -0
  208. package/dist/lib/openapi/spec/batch-features-schema.js +3 -0
  209. package/dist/lib/openapi/spec/batch-features-schema.js.map +1 -1
  210. package/dist/lib/openapi/spec/batch-stale-schema.d.ts +7 -0
  211. package/dist/lib/openapi/spec/batch-stale-schema.js +7 -0
  212. package/dist/lib/openapi/spec/batch-stale-schema.js.map +1 -1
  213. package/dist/lib/openapi/spec/change-password-schema.d.ts +5 -0
  214. package/dist/lib/openapi/spec/change-password-schema.js +5 -0
  215. package/dist/lib/openapi/spec/change-password-schema.js.map +1 -1
  216. package/dist/lib/openapi/spec/client-feature-schema.d.ts +121 -3
  217. package/dist/lib/openapi/spec/client-feature-schema.js +2 -0
  218. package/dist/lib/openapi/spec/client-feature-schema.js.map +1 -1
  219. package/dist/lib/openapi/spec/client-features-schema.d.ts +246 -16
  220. package/dist/lib/openapi/spec/client-features-schema.js +5 -3
  221. package/dist/lib/openapi/spec/client-features-schema.js.map +1 -1
  222. package/dist/lib/openapi/spec/client-features-schema.test.js +1 -2
  223. package/dist/lib/openapi/spec/client-features-schema.test.js.map +1 -1
  224. package/dist/lib/openapi/spec/client-segment-schema.d.ts +75 -0
  225. package/dist/lib/openapi/spec/client-segment-schema.js +35 -0
  226. package/dist/lib/openapi/spec/client-segment-schema.js.map +1 -0
  227. package/dist/lib/openapi/spec/clone-feature-schema.d.ts +5 -0
  228. package/dist/lib/openapi/spec/clone-feature-schema.js +5 -0
  229. package/dist/lib/openapi/spec/clone-feature-schema.js.map +1 -1
  230. package/dist/lib/openapi/spec/context-field-schema.d.ts +22 -3
  231. package/dist/lib/openapi/spec/context-field-schema.js +17 -3
  232. package/dist/lib/openapi/spec/context-field-schema.js.map +1 -1
  233. package/dist/lib/openapi/spec/context-field-strategies-schema.d.ts +1 -1
  234. package/dist/lib/openapi/spec/context-field-strategies-schema.js +1 -1
  235. package/dist/lib/openapi/spec/context-field-strategies-schema.js.map +1 -1
  236. package/dist/lib/openapi/spec/context-fields-schema.d.ts +28 -3
  237. package/dist/lib/openapi/spec/context-fields-schema.js +1 -0
  238. package/dist/lib/openapi/spec/context-fields-schema.js.map +1 -1
  239. package/dist/lib/openapi/spec/create-api-token-schema.d.ts +130 -32
  240. package/dist/lib/openapi/spec/create-api-token-schema.js +71 -35
  241. package/dist/lib/openapi/spec/create-api-token-schema.js.map +1 -1
  242. package/dist/lib/openapi/spec/create-feature-schema.d.ts +9 -0
  243. package/dist/lib/openapi/spec/create-feature-schema.js +9 -0
  244. package/dist/lib/openapi/spec/create-feature-schema.js.map +1 -1
  245. package/dist/lib/openapi/spec/create-feature-strategy-schema.d.ts +63 -2
  246. package/dist/lib/openapi/spec/create-feature-strategy-schema.js +12 -2
  247. package/dist/lib/openapi/spec/create-feature-strategy-schema.js.map +1 -1
  248. package/dist/lib/openapi/spec/create-group-schema.d.ts +61 -0
  249. package/dist/lib/openapi/spec/create-group-schema.js +43 -0
  250. package/dist/lib/openapi/spec/create-group-schema.js.map +1 -0
  251. package/dist/lib/openapi/spec/create-strategy-schema.d.ts +52 -0
  252. package/dist/lib/openapi/spec/create-strategy-schema.js +60 -0
  253. package/dist/lib/openapi/spec/create-strategy-schema.js.map +1 -0
  254. package/dist/lib/openapi/spec/create-strategy-variant-schema.d.ts +54 -0
  255. package/dist/lib/openapi/spec/create-strategy-variant-schema.js +53 -0
  256. package/dist/lib/openapi/spec/create-strategy-variant-schema.js.map +1 -0
  257. package/dist/lib/openapi/spec/create-user-response-schema.d.ts +98 -0
  258. package/dist/lib/openapi/spec/create-user-response-schema.js +31 -0
  259. package/dist/lib/openapi/spec/create-user-response-schema.js.map +1 -0
  260. package/dist/lib/openapi/spec/create-user-schema.d.ts +21 -1
  261. package/dist/lib/openapi/spec/create-user-schema.js +24 -1
  262. package/dist/lib/openapi/spec/create-user-schema.js.map +1 -1
  263. package/dist/lib/openapi/spec/email-schema.d.ts +3 -0
  264. package/dist/lib/openapi/spec/email-schema.js +3 -0
  265. package/dist/lib/openapi/spec/email-schema.js.map +1 -1
  266. package/dist/lib/openapi/spec/environment-project-schema.d.ts +115 -2
  267. package/dist/lib/openapi/spec/environment-project-schema.js +2 -0
  268. package/dist/lib/openapi/spec/environment-project-schema.js.map +1 -1
  269. package/dist/lib/openapi/spec/environments-project-schema.d.ts +118 -2
  270. package/dist/lib/openapi/spec/environments-project-schema.js +3 -0
  271. package/dist/lib/openapi/spec/environments-project-schema.js.map +1 -1
  272. package/dist/lib/openapi/spec/environments-schema.d.ts +4 -0
  273. package/dist/lib/openapi/spec/environments-schema.js +4 -0
  274. package/dist/lib/openapi/spec/environments-schema.js.map +1 -1
  275. package/dist/lib/openapi/spec/event-schema.d.ts +130 -0
  276. package/dist/lib/openapi/spec/event-schema.js +42 -2
  277. package/dist/lib/openapi/spec/event-schema.js.map +1 -1
  278. package/dist/lib/openapi/spec/events-schema.d.ts +137 -0
  279. package/dist/lib/openapi/spec/events-schema.js +7 -0
  280. package/dist/lib/openapi/spec/events-schema.js.map +1 -1
  281. package/dist/lib/openapi/spec/export-query-schema.d.ts +7 -0
  282. package/dist/lib/openapi/spec/export-query-schema.js +7 -0
  283. package/dist/lib/openapi/spec/export-query-schema.js.map +1 -1
  284. package/dist/lib/openapi/spec/export-result-schema.d.ts +609 -17
  285. package/dist/lib/openapi/spec/export-result-schema.js +90 -0
  286. package/dist/lib/openapi/spec/export-result-schema.js.map +1 -1
  287. package/dist/lib/openapi/spec/feature-environment-schema.d.ts +125 -3
  288. package/dist/lib/openapi/spec/feature-environment-schema.js +6 -0
  289. package/dist/lib/openapi/spec/feature-environment-schema.js.map +1 -1
  290. package/dist/lib/openapi/spec/feature-events-schema.d.ts +141 -1
  291. package/dist/lib/openapi/spec/feature-events-schema.js +13 -1
  292. package/dist/lib/openapi/spec/feature-events-schema.js.map +1 -1
  293. package/dist/lib/openapi/spec/feature-schema.d.ts +251 -6
  294. package/dist/lib/openapi/spec/feature-schema.js +7 -0
  295. package/dist/lib/openapi/spec/feature-schema.js.map +1 -1
  296. package/dist/lib/openapi/spec/feature-schema.test.js +2 -2
  297. package/dist/lib/openapi/spec/feature-schema.test.js.map +1 -1
  298. package/dist/lib/openapi/spec/feature-strategy-schema.d.ts +61 -1
  299. package/dist/lib/openapi/spec/feature-strategy-schema.js +10 -1
  300. package/dist/lib/openapi/spec/feature-strategy-schema.js.map +1 -1
  301. package/dist/lib/openapi/spec/feature-type-schema.d.ts +11 -1
  302. package/dist/lib/openapi/spec/feature-type-schema.js +11 -1
  303. package/dist/lib/openapi/spec/feature-type-schema.js.map +1 -1
  304. package/dist/lib/openapi/spec/feature-types-schema.d.ts +42 -1
  305. package/dist/lib/openapi/spec/feature-types-schema.js +37 -0
  306. package/dist/lib/openapi/spec/feature-types-schema.js.map +1 -1
  307. package/dist/lib/openapi/spec/feature-variants-schema.d.ts +11 -2
  308. package/dist/lib/openapi/spec/feature-variants-schema.js +4 -0
  309. package/dist/lib/openapi/spec/feature-variants-schema.js.map +1 -1
  310. package/dist/lib/openapi/spec/features-schema.d.ts +501 -12
  311. package/dist/lib/openapi/spec/features-schema.js +6 -0
  312. package/dist/lib/openapi/spec/features-schema.js.map +1 -1
  313. package/dist/lib/openapi/spec/feedback-create-schema.d.ts +21 -0
  314. package/dist/lib/openapi/spec/feedback-create-schema.js +23 -0
  315. package/dist/lib/openapi/spec/feedback-create-schema.js.map +1 -0
  316. package/dist/lib/openapi/spec/feedback-response-schema.d.ts +33 -0
  317. package/dist/lib/openapi/spec/feedback-response-schema.js +35 -0
  318. package/dist/lib/openapi/spec/feedback-response-schema.js.map +1 -0
  319. package/dist/lib/openapi/spec/feedback-update-schema.d.ts +27 -0
  320. package/dist/lib/openapi/spec/feedback-update-schema.js +29 -0
  321. package/dist/lib/openapi/spec/feedback-update-schema.js.map +1 -0
  322. package/dist/lib/openapi/spec/group-schema.d.ts +107 -9
  323. package/dist/lib/openapi/spec/group-schema.js +20 -3
  324. package/dist/lib/openapi/spec/group-schema.js.map +1 -1
  325. package/dist/lib/openapi/spec/group-user-model-schema.d.ts +46 -3
  326. package/dist/lib/openapi/spec/group-user-model-schema.js +5 -0
  327. package/dist/lib/openapi/spec/group-user-model-schema.js.map +1 -1
  328. package/dist/lib/openapi/spec/groups-schema.d.ts +196 -15
  329. package/dist/lib/openapi/spec/groups-schema.js +2 -0
  330. package/dist/lib/openapi/spec/groups-schema.js.map +1 -1
  331. package/dist/lib/openapi/spec/health-overview-schema.d.ts +733 -16
  332. package/dist/lib/openapi/spec/health-overview-schema.js +10 -0
  333. package/dist/lib/openapi/spec/health-overview-schema.js.map +1 -1
  334. package/dist/lib/openapi/spec/health-report-schema.d.ts +733 -16
  335. package/dist/lib/openapi/spec/id-schema.d.ts +3 -0
  336. package/dist/lib/openapi/spec/id-schema.js +3 -0
  337. package/dist/lib/openapi/spec/id-schema.js.map +1 -1
  338. package/dist/lib/openapi/spec/import-toggles-schema.d.ts +1198 -63
  339. package/dist/lib/openapi/spec/import-toggles-schema.js +7 -0
  340. package/dist/lib/openapi/spec/import-toggles-schema.js.map +1 -1
  341. package/dist/lib/openapi/spec/import-toggles-validate-item-schema.d.ts +5 -0
  342. package/dist/lib/openapi/spec/import-toggles-validate-item-schema.js +5 -0
  343. package/dist/lib/openapi/spec/import-toggles-validate-item-schema.js.map +1 -1
  344. package/dist/lib/openapi/spec/import-toggles-validate-schema.d.ts +18 -0
  345. package/dist/lib/openapi/spec/import-toggles-validate-schema.js +17 -0
  346. package/dist/lib/openapi/spec/import-toggles-validate-schema.js.map +1 -1
  347. package/dist/lib/openapi/spec/index.d.ts +15 -3
  348. package/dist/lib/openapi/spec/index.js +15 -3
  349. package/dist/lib/openapi/spec/index.js.map +1 -1
  350. package/dist/lib/openapi/spec/legal-value-schema.d.ts +5 -0
  351. package/dist/lib/openapi/spec/legal-value-schema.js +5 -0
  352. package/dist/lib/openapi/spec/legal-value-schema.js.map +1 -1
  353. package/dist/lib/openapi/spec/login-schema.d.ts +5 -0
  354. package/dist/lib/openapi/spec/login-schema.js +5 -0
  355. package/dist/lib/openapi/spec/login-schema.js.map +1 -1
  356. package/dist/lib/openapi/spec/me-schema.d.ts +69 -11
  357. package/dist/lib/openapi/spec/me-schema.js +7 -3
  358. package/dist/lib/openapi/spec/me-schema.js.map +1 -1
  359. package/dist/lib/openapi/spec/name-schema.d.ts +3 -0
  360. package/dist/lib/openapi/spec/name-schema.js +3 -0
  361. package/dist/lib/openapi/spec/name-schema.js.map +1 -1
  362. package/dist/lib/openapi/spec/parameters-schema.d.ts +1 -0
  363. package/dist/lib/openapi/spec/parameters-schema.js +1 -0
  364. package/dist/lib/openapi/spec/parameters-schema.js.map +1 -1
  365. package/dist/lib/openapi/spec/password-schema.d.ts +7 -0
  366. package/dist/lib/openapi/spec/password-schema.js +7 -0
  367. package/dist/lib/openapi/spec/password-schema.js.map +1 -1
  368. package/dist/lib/openapi/spec/patches-schema.d.ts +1 -0
  369. package/dist/lib/openapi/spec/patches-schema.js +1 -0
  370. package/dist/lib/openapi/spec/patches-schema.js.map +1 -1
  371. package/dist/lib/openapi/spec/permission-schema.d.ts +7 -0
  372. package/dist/lib/openapi/spec/permission-schema.js +7 -0
  373. package/dist/lib/openapi/spec/permission-schema.js.map +1 -1
  374. package/dist/lib/openapi/spec/playground-feature-schema.d.ts +165 -3
  375. package/dist/lib/openapi/spec/playground-feature-schema.js +0 -1
  376. package/dist/lib/openapi/spec/playground-feature-schema.js.map +1 -1
  377. package/dist/lib/openapi/spec/playground-response-schema.d.ts +330 -5
  378. package/dist/lib/openapi/spec/playground-strategy-schema.d.ts +204 -0
  379. package/dist/lib/openapi/spec/playground-strategy-schema.js +49 -0
  380. package/dist/lib/openapi/spec/playground-strategy-schema.js.map +1 -1
  381. package/dist/lib/openapi/spec/profile-schema.d.ts +267 -7
  382. package/dist/lib/openapi/spec/profile-schema.js +5 -0
  383. package/dist/lib/openapi/spec/profile-schema.js.map +1 -1
  384. package/dist/lib/openapi/spec/project-environment-schema.d.ts +115 -2
  385. package/dist/lib/openapi/spec/project-environment-schema.js +2 -0
  386. package/dist/lib/openapi/spec/project-environment-schema.js.map +1 -1
  387. package/dist/lib/openapi/spec/project-overview-schema.d.ts +733 -16
  388. package/dist/lib/openapi/spec/project-overview-schema.js +10 -0
  389. package/dist/lib/openapi/spec/project-overview-schema.js.map +1 -1
  390. package/dist/lib/openapi/spec/proxy-client-schema.d.ts +3 -0
  391. package/dist/lib/openapi/spec/proxy-client-schema.js +3 -0
  392. package/dist/lib/openapi/spec/proxy-client-schema.js.map +1 -1
  393. package/dist/lib/openapi/spec/proxy-feature-schema.d.ts +20 -2
  394. package/dist/lib/openapi/spec/proxy-feature-schema.js +20 -3
  395. package/dist/lib/openapi/spec/proxy-feature-schema.js.map +1 -1
  396. package/dist/lib/openapi/spec/proxy-features-schema.d.ts +22 -1
  397. package/dist/lib/openapi/spec/proxy-features-schema.js +2 -0
  398. package/dist/lib/openapi/spec/proxy-features-schema.js.map +1 -1
  399. package/dist/lib/openapi/spec/public-signup-token-schema.d.ts +52 -4
  400. package/dist/lib/openapi/spec/public-signup-tokens-schema.d.ts +104 -8
  401. package/dist/lib/openapi/spec/push-variants-schema.d.ts +7 -2
  402. package/dist/lib/openapi/spec/requests-per-second-schema.d.ts +16 -0
  403. package/dist/lib/openapi/spec/requests-per-second-schema.js +22 -2
  404. package/dist/lib/openapi/spec/requests-per-second-schema.js.map +1 -1
  405. package/dist/lib/openapi/spec/requests-per-second-segmented-schema.d.ts +17 -0
  406. package/dist/lib/openapi/spec/requests-per-second-segmented-schema.js +1 -0
  407. package/dist/lib/openapi/spec/requests-per-second-segmented-schema.js.map +1 -1
  408. package/dist/lib/openapi/spec/role-schema.d.ts +11 -1
  409. package/dist/lib/openapi/spec/role-schema.js +11 -1
  410. package/dist/lib/openapi/spec/role-schema.js.map +1 -1
  411. package/dist/lib/openapi/spec/search-events-schema.d.ts +9 -0
  412. package/dist/lib/openapi/spec/search-events-schema.js +10 -0
  413. package/dist/lib/openapi/spec/search-events-schema.js.map +1 -1
  414. package/dist/lib/openapi/spec/segment-schema.d.ts +23 -6
  415. package/dist/lib/openapi/spec/segment-schema.js +18 -15
  416. package/dist/lib/openapi/spec/segment-schema.js.map +1 -1
  417. package/dist/lib/openapi/spec/set-strategy-sort-order-schema.d.ts +6 -0
  418. package/dist/lib/openapi/spec/set-strategy-sort-order-schema.js +6 -0
  419. package/dist/lib/openapi/spec/set-strategy-sort-order-schema.js.map +1 -1
  420. package/dist/lib/openapi/spec/set-ui-config-schema.d.ts +4 -0
  421. package/dist/lib/openapi/spec/set-ui-config-schema.js +4 -0
  422. package/dist/lib/openapi/spec/set-ui-config-schema.js.map +1 -1
  423. package/dist/lib/openapi/spec/splash-request-schema.d.ts +21 -0
  424. package/dist/lib/openapi/spec/splash-request-schema.js +23 -0
  425. package/dist/lib/openapi/spec/splash-request-schema.js.map +1 -0
  426. package/dist/lib/openapi/spec/splash-response-schema.d.ts +27 -0
  427. package/dist/lib/openapi/spec/splash-response-schema.js +21 -0
  428. package/dist/lib/openapi/spec/splash-response-schema.js.map +1 -0
  429. package/dist/lib/openapi/spec/state-schema.d.ts +523 -19
  430. package/dist/lib/openapi/spec/state-schema.js +2 -0
  431. package/dist/lib/openapi/spec/state-schema.js.map +1 -1
  432. package/dist/lib/openapi/spec/strategies-schema.d.ts +9 -3
  433. package/dist/lib/openapi/spec/strategies-schema.js +5 -0
  434. package/dist/lib/openapi/spec/strategies-schema.js.map +1 -1
  435. package/dist/lib/openapi/spec/strategy-schema.d.ts +4 -3
  436. package/dist/lib/openapi/spec/strategy-schema.js +4 -3
  437. package/dist/lib/openapi/spec/strategy-schema.js.map +1 -1
  438. package/dist/lib/openapi/spec/strategy-schema.test.js +5 -0
  439. package/dist/lib/openapi/spec/strategy-schema.test.js.map +1 -1
  440. package/dist/lib/openapi/spec/strategy-variant-schema.d.ts +54 -0
  441. package/dist/lib/openapi/spec/strategy-variant-schema.js +16 -0
  442. package/dist/lib/openapi/spec/strategy-variant-schema.js.map +1 -0
  443. package/dist/lib/openapi/spec/tag-type-schema.d.ts +7 -0
  444. package/dist/lib/openapi/spec/tag-type-schema.js +7 -0
  445. package/dist/lib/openapi/spec/tag-type-schema.js.map +1 -1
  446. package/dist/lib/openapi/spec/tag-types-schema.d.ts +11 -0
  447. package/dist/lib/openapi/spec/tag-types-schema.js +4 -0
  448. package/dist/lib/openapi/spec/tag-types-schema.js.map +1 -1
  449. package/dist/lib/openapi/spec/tag-with-version-schema.d.ts +3 -0
  450. package/dist/lib/openapi/spec/tag-with-version-schema.js +3 -0
  451. package/dist/lib/openapi/spec/tag-with-version-schema.js.map +1 -1
  452. package/dist/lib/openapi/spec/telemetry-settings-schema.d.ts +22 -0
  453. package/dist/lib/openapi/spec/telemetry-settings-schema.js +24 -0
  454. package/dist/lib/openapi/spec/telemetry-settings-schema.js.map +1 -0
  455. package/dist/lib/openapi/spec/token-user-schema.d.ts +23 -2
  456. package/dist/lib/openapi/spec/token-user-schema.js +12 -1
  457. package/dist/lib/openapi/spec/token-user-schema.js.map +1 -1
  458. package/dist/lib/openapi/spec/ui-config-schema.d.ts +77 -1
  459. package/dist/lib/openapi/spec/ui-config-schema.js +53 -0
  460. package/dist/lib/openapi/spec/ui-config-schema.js.map +1 -1
  461. package/dist/lib/openapi/spec/update-api-token-schema.d.ts +3 -0
  462. package/dist/lib/openapi/spec/update-api-token-schema.js +3 -0
  463. package/dist/lib/openapi/spec/update-api-token-schema.js.map +1 -1
  464. package/dist/lib/openapi/spec/update-feature-schema.d.ts +11 -14
  465. package/dist/lib/openapi/spec/update-feature-schema.js +11 -14
  466. package/dist/lib/openapi/spec/update-feature-schema.js.map +1 -1
  467. package/dist/lib/openapi/spec/update-feature-strategy-schema.d.ts +5 -0
  468. package/dist/lib/openapi/spec/update-feature-strategy-schema.js +4 -0
  469. package/dist/lib/openapi/spec/update-feature-strategy-schema.js.map +1 -1
  470. package/dist/lib/openapi/spec/update-feature-type-lifetime-schema.d.ts +19 -0
  471. package/dist/lib/openapi/spec/update-feature-type-lifetime-schema.js +21 -0
  472. package/dist/lib/openapi/spec/update-feature-type-lifetime-schema.js.map +1 -0
  473. package/dist/lib/openapi/spec/update-strategy-schema.d.ts +47 -0
  474. package/dist/lib/openapi/spec/update-strategy-schema.js +55 -0
  475. package/dist/lib/openapi/spec/update-strategy-schema.js.map +1 -0
  476. package/dist/lib/openapi/spec/update-tag-type-schema.d.ts +5 -0
  477. package/dist/lib/openapi/spec/update-tag-type-schema.js +5 -0
  478. package/dist/lib/openapi/spec/update-tag-type-schema.js.map +1 -1
  479. package/dist/lib/openapi/spec/update-user-schema.d.ts +15 -1
  480. package/dist/lib/openapi/spec/update-user-schema.js +18 -1
  481. package/dist/lib/openapi/spec/update-user-schema.js.map +1 -1
  482. package/dist/lib/openapi/spec/upsert-context-field-schema.d.ts +5 -0
  483. package/dist/lib/openapi/spec/user-schema.d.ts +41 -3
  484. package/dist/lib/openapi/spec/user-schema.js +41 -3
  485. package/dist/lib/openapi/spec/user-schema.js.map +1 -1
  486. package/dist/lib/openapi/spec/users-groups-base-schema.d.ts +194 -15
  487. package/dist/lib/openapi/spec/users-schema.d.ts +55 -4
  488. package/dist/lib/openapi/spec/users-schema.js +3 -0
  489. package/dist/lib/openapi/spec/users-schema.js.map +1 -1
  490. package/dist/lib/openapi/spec/users-search-schema.d.ts +41 -3
  491. package/dist/lib/openapi/spec/validate-feature-schema.d.ts +16 -0
  492. package/dist/lib/openapi/spec/validate-feature-schema.js +18 -0
  493. package/dist/lib/openapi/spec/validate-feature-schema.js.map +1 -0
  494. package/dist/lib/openapi/spec/validate-password-schema.d.ts +3 -0
  495. package/dist/lib/openapi/spec/validate-password-schema.js +3 -0
  496. package/dist/lib/openapi/spec/validate-password-schema.js.map +1 -1
  497. package/dist/lib/openapi/spec/validate-tag-type-schema.d.ts +10 -0
  498. package/dist/lib/openapi/spec/validate-tag-type-schema.js +3 -0
  499. package/dist/lib/openapi/spec/validate-tag-type-schema.js.map +1 -1
  500. package/dist/lib/openapi/spec/variant-flag-schema.d.ts +11 -0
  501. package/dist/lib/openapi/spec/variant-flag-schema.js +11 -0
  502. package/dist/lib/openapi/spec/variant-flag-schema.js.map +1 -1
  503. package/dist/lib/openapi/spec/variant-schema.d.ts +7 -2
  504. package/dist/lib/openapi/spec/variant-schema.js +7 -2
  505. package/dist/lib/openapi/spec/variant-schema.js.map +1 -1
  506. package/dist/lib/openapi/spec/variants-schema.d.ts +7 -2
  507. package/dist/lib/openapi/spec/version-schema.d.ts +16 -1
  508. package/dist/lib/openapi/spec/version-schema.js +16 -1
  509. package/dist/lib/openapi/spec/version-schema.js.map +1 -1
  510. package/dist/lib/openapi/util/openapi-tags.d.ts +14 -2
  511. package/dist/lib/openapi/util/openapi-tags.js +9 -1
  512. package/dist/lib/openapi/util/openapi-tags.js.map +1 -1
  513. package/dist/lib/openapi/util/standard-responses.d.ts +1 -1
  514. package/dist/lib/openapi/util/standard-responses.js +1 -1
  515. package/dist/lib/openapi/util/standard-responses.js.map +1 -1
  516. package/dist/lib/openapi/validate.js +1 -1
  517. package/dist/lib/openapi/validate.js.map +1 -1
  518. package/dist/lib/routes/admin-api/api-token.js +12 -0
  519. package/dist/lib/routes/admin-api/api-token.js.map +1 -1
  520. package/dist/lib/routes/admin-api/archive.d.ts +0 -1
  521. package/dist/lib/routes/admin-api/archive.js +20 -5
  522. package/dist/lib/routes/admin-api/archive.js.map +1 -1
  523. package/dist/lib/routes/admin-api/config.js +4 -0
  524. package/dist/lib/routes/admin-api/config.js.map +1 -1
  525. package/dist/lib/routes/admin-api/constraints.d.ts +2 -2
  526. package/dist/lib/routes/admin-api/constraints.js +5 -2
  527. package/dist/lib/routes/admin-api/constraints.js.map +1 -1
  528. package/dist/lib/routes/admin-api/context.d.ts +2 -1
  529. package/dist/lib/routes/admin-api/context.js +16 -4
  530. package/dist/lib/routes/admin-api/context.js.map +1 -1
  531. package/dist/lib/routes/admin-api/event.js +6 -3
  532. package/dist/lib/routes/admin-api/event.js.map +1 -1
  533. package/dist/lib/routes/admin-api/favorites.js +24 -4
  534. package/dist/lib/routes/admin-api/favorites.js.map +1 -1
  535. package/dist/lib/routes/admin-api/feature-type.d.ts +6 -0
  536. package/dist/lib/routes/admin-api/feature-type.js +37 -1
  537. package/dist/lib/routes/admin-api/feature-type.js.map +1 -1
  538. package/dist/lib/routes/admin-api/feature.d.ts +2 -3
  539. package/dist/lib/routes/admin-api/feature.js +14 -3
  540. package/dist/lib/routes/admin-api/feature.js.map +1 -1
  541. package/dist/lib/routes/admin-api/index.js +2 -0
  542. package/dist/lib/routes/admin-api/index.js.map +1 -1
  543. package/dist/lib/routes/admin-api/project/project-archive.js +13 -4
  544. package/dist/lib/routes/admin-api/project/project-archive.js.map +1 -1
  545. package/dist/lib/routes/admin-api/project/project-features.d.ts +1 -1
  546. package/dist/lib/routes/admin-api/project/project-features.js +116 -27
  547. package/dist/lib/routes/admin-api/project/project-features.js.map +1 -1
  548. package/dist/lib/routes/admin-api/project/variants.js +26 -16
  549. package/dist/lib/routes/admin-api/project/variants.js.map +1 -1
  550. package/dist/lib/routes/admin-api/strategy.d.ts +6 -3
  551. package/dist/lib/routes/admin-api/strategy.js +40 -12
  552. package/dist/lib/routes/admin-api/strategy.js.map +1 -1
  553. package/dist/lib/routes/admin-api/strategy.test.js +5 -5
  554. package/dist/lib/routes/admin-api/strategy.test.js.map +1 -1
  555. package/dist/lib/routes/admin-api/tag-type.js +21 -1
  556. package/dist/lib/routes/admin-api/tag-type.js.map +1 -1
  557. package/dist/lib/routes/admin-api/tag.js +17 -1
  558. package/dist/lib/routes/admin-api/tag.js.map +1 -1
  559. package/dist/lib/routes/admin-api/telemetry.d.ts +14 -0
  560. package/dist/lib/routes/admin-api/telemetry.js +41 -0
  561. package/dist/lib/routes/admin-api/telemetry.js.map +1 -0
  562. package/dist/lib/routes/admin-api/user/user.js +20 -4
  563. package/dist/lib/routes/admin-api/user/user.js.map +1 -1
  564. package/dist/lib/routes/admin-api/user-admin.d.ts +3 -2
  565. package/dist/lib/routes/admin-api/user-admin.js +88 -14
  566. package/dist/lib/routes/admin-api/user-admin.js.map +1 -1
  567. package/dist/lib/routes/admin-api/user-feedback.js +17 -7
  568. package/dist/lib/routes/admin-api/user-feedback.js.map +1 -1
  569. package/dist/lib/routes/admin-api/user-splash.js +9 -3
  570. package/dist/lib/routes/admin-api/user-splash.js.map +1 -1
  571. package/dist/lib/routes/auth/reset-password-controller.js +24 -4
  572. package/dist/lib/routes/auth/reset-password-controller.js.map +1 -1
  573. package/dist/lib/routes/auth/simple-password-provider.js +4 -0
  574. package/dist/lib/routes/auth/simple-password-provider.js.map +1 -1
  575. package/dist/lib/routes/client-api/feature.js +1 -1
  576. package/dist/lib/routes/client-api/feature.js.map +1 -1
  577. package/dist/lib/routes/client-api/feature.test.js +8 -3
  578. package/dist/lib/routes/client-api/feature.test.js.map +1 -1
  579. package/dist/lib/routes/client-api/metrics.js +3 -3
  580. package/dist/lib/routes/client-api/metrics.js.map +1 -1
  581. package/dist/lib/routes/controller.js +2 -2
  582. package/dist/lib/routes/controller.js.map +1 -1
  583. package/dist/lib/routes/index.js +1 -3
  584. package/dist/lib/routes/index.js.map +1 -1
  585. package/dist/lib/routes/proxy-api/index.d.ts +1 -1
  586. package/dist/lib/routes/proxy-api/index.js +27 -4
  587. package/dist/lib/routes/proxy-api/index.js.map +1 -1
  588. package/dist/lib/segments/segment-service-interface.d.ts +2 -1
  589. package/dist/lib/server-impl.js +1 -0
  590. package/dist/lib/server-impl.js.map +1 -1
  591. package/dist/lib/services/addon-service.d.ts +2 -1
  592. package/dist/lib/services/addon-service.js +6 -2
  593. package/dist/lib/services/addon-service.js.map +1 -1
  594. package/dist/lib/services/client-metrics/metrics-service-v2.js +24 -13
  595. package/dist/lib/services/client-metrics/metrics-service-v2.js.map +1 -1
  596. package/dist/lib/services/event-announcer-service.d.ts +8 -0
  597. package/dist/lib/services/event-announcer-service.js +13 -0
  598. package/dist/lib/services/event-announcer-service.js.map +1 -0
  599. package/dist/lib/services/feature-service-potentially-stale.test.d.ts +1 -0
  600. package/dist/lib/services/feature-service-potentially-stale.test.js +44 -0
  601. package/dist/lib/services/feature-service-potentially-stale.test.js.map +1 -0
  602. package/dist/lib/services/feature-toggle-service.d.ts +5 -2
  603. package/dist/lib/services/feature-toggle-service.js +95 -16
  604. package/dist/lib/services/feature-toggle-service.js.map +1 -1
  605. package/dist/lib/services/feature-type-service.d.ts +1 -0
  606. package/dist/lib/services/feature-type-service.js +14 -0
  607. package/dist/lib/services/feature-type-service.js.map +1 -1
  608. package/dist/lib/services/group-service.d.ts +4 -4
  609. package/dist/lib/services/group-service.js.map +1 -1
  610. package/dist/lib/services/index.js +9 -1
  611. package/dist/lib/services/index.js.map +1 -1
  612. package/dist/lib/services/project-schema.js +1 -0
  613. package/dist/lib/services/project-schema.js.map +1 -1
  614. package/dist/lib/services/project-service.d.ts +2 -4
  615. package/dist/lib/services/project-service.js +4 -9
  616. package/dist/lib/services/project-service.js.map +1 -1
  617. package/dist/lib/services/segment-service.d.ts +2 -1
  618. package/dist/lib/services/segment-service.js +3 -0
  619. package/dist/lib/services/segment-service.js.map +1 -1
  620. package/dist/lib/services/tag-type-service.d.ts +2 -2
  621. package/dist/lib/services/tag-type-service.js +5 -3
  622. package/dist/lib/services/tag-type-service.js.map +1 -1
  623. package/dist/lib/services/user-service.js +13 -7
  624. package/dist/lib/services/user-service.js.map +1 -1
  625. package/dist/lib/services/version-service.d.ts +1 -2
  626. package/dist/lib/services/version-service.js +2 -4
  627. package/dist/lib/services/version-service.js.map +1 -1
  628. package/dist/lib/services/version-service.test.js +0 -57
  629. package/dist/lib/services/version-service.test.js.map +1 -1
  630. package/dist/lib/types/authentication-required.d.ts +1 -0
  631. package/dist/lib/types/authentication-required.js +1 -0
  632. package/dist/lib/types/authentication-required.js.map +1 -1
  633. package/dist/lib/types/events.d.ts +138 -99
  634. package/dist/lib/types/events.js +136 -3
  635. package/dist/lib/types/events.js.map +1 -1
  636. package/dist/lib/types/experimental.d.ts +1 -1
  637. package/dist/lib/types/experimental.js +5 -5
  638. package/dist/lib/types/experimental.js.map +1 -1
  639. package/dist/lib/types/group.d.ts +7 -0
  640. package/dist/lib/types/group.js.map +1 -1
  641. package/dist/lib/types/model.d.ts +24 -2
  642. package/dist/lib/types/model.js.map +1 -1
  643. package/dist/lib/types/services.d.ts +3 -0
  644. package/dist/lib/types/stores/event-store.d.ts +1 -0
  645. package/dist/lib/types/stores/feature-toggle-client-store.d.ts +2 -1
  646. package/dist/lib/types/stores/feature-toggle-store.d.ts +6 -0
  647. package/dist/lib/types/stores/feature-type-store.d.ts +1 -0
  648. package/dist/lib/types/stores/group-store.d.ts +4 -4
  649. package/dist/lib/types/stores/project-store.d.ts +3 -6
  650. package/dist/lib/types/stores/segment-store.d.ts +2 -1
  651. package/dist/lib/util/is-email.d.ts +7 -0
  652. package/dist/lib/util/is-email.js +9 -0
  653. package/dist/lib/util/is-email.js.map +1 -1
  654. package/dist/lib/util/load-index-html.js +1 -1
  655. package/dist/lib/util/load-index-html.js.map +1 -1
  656. package/dist/migrations/20230630080126-delete-deprecated-permissions.d.ts +2 -0
  657. package/dist/migrations/20230630080126-delete-deprecated-permissions.js +15 -0
  658. package/dist/migrations/20230630080126-delete-deprecated-permissions.js.map +1 -0
  659. package/dist/migrations/20230706123907-events-announced-column.d.ts +2 -0
  660. package/dist/migrations/20230706123907-events-announced-column.js +15 -0
  661. package/dist/migrations/20230706123907-events-announced-column.js.map +1 -0
  662. package/dist/migrations/20230711094214-add-potentially-stale-flag.d.ts +2 -0
  663. package/dist/migrations/20230711094214-add-potentially-stale-flag.js +18 -0
  664. package/dist/migrations/20230711094214-add-potentially-stale-flag.js.map +1 -0
  665. package/dist/migrations/20230711163311-project-feature-limit.d.ts +2 -0
  666. package/dist/migrations/20230711163311-project-feature-limit.js +13 -0
  667. package/dist/migrations/20230711163311-project-feature-limit.js.map +1 -0
  668. package/dist/migrations/20230712091834-strategy-variants.d.ts +2 -0
  669. package/dist/migrations/20230712091834-strategy-variants.js +81 -0
  670. package/dist/migrations/20230712091834-strategy-variants.js.map +1 -0
  671. package/dist/server-dev.js +5 -3
  672. package/dist/server-dev.js.map +1 -1
  673. package/dist/test/arbitraries.test.js +1 -1
  674. package/dist/test/arbitraries.test.js.map +1 -1
  675. package/dist/test/e2e/api/admin/addon.e2e.test.js +2 -1
  676. package/dist/test/e2e/api/admin/addon.e2e.test.js.map +1 -1
  677. package/dist/test/e2e/api/admin/api-token.e2e.test.js +7 -1
  678. package/dist/test/e2e/api/admin/api-token.e2e.test.js.map +1 -1
  679. package/dist/test/e2e/api/admin/archive.test.js +7 -1
  680. package/dist/test/e2e/api/admin/archive.test.js.map +1 -1
  681. package/dist/test/e2e/api/admin/config.e2e.test.js +7 -1
  682. package/dist/test/e2e/api/admin/config.e2e.test.js.map +1 -1
  683. package/dist/test/e2e/api/admin/favorites.e2e.test.js +7 -1
  684. package/dist/test/e2e/api/admin/favorites.e2e.test.js.map +1 -1
  685. package/dist/test/e2e/api/admin/feature-type.test.js +41 -1
  686. package/dist/test/e2e/api/admin/feature-type.test.js.map +1 -1
  687. package/dist/test/e2e/api/admin/feedback.e2e.test.js +7 -1
  688. package/dist/test/e2e/api/admin/feedback.e2e.test.js.map +1 -1
  689. package/dist/test/e2e/api/admin/playground.e2e.test.js.map +1 -1
  690. package/dist/test/e2e/api/admin/project/features.e2e.test.js +152 -0
  691. package/dist/test/e2e/api/admin/project/features.e2e.test.js.map +1 -1
  692. package/dist/test/e2e/api/admin/project/variants.e2e.test.js +28 -12
  693. package/dist/test/e2e/api/admin/project/variants.e2e.test.js.map +1 -1
  694. package/dist/test/e2e/api/admin/splash.e2e.test.js +7 -1
  695. package/dist/test/e2e/api/admin/splash.e2e.test.js.map +1 -1
  696. package/dist/test/e2e/api/admin/state.e2e.test.js +6 -6
  697. package/dist/test/e2e/api/admin/state.e2e.test.js.map +1 -1
  698. package/dist/test/e2e/api/admin/user-admin.e2e.test.js +7 -1
  699. package/dist/test/e2e/api/admin/user-admin.e2e.test.js.map +1 -1
  700. package/dist/test/e2e/api/openapi/openapi.e2e.test.js +9 -6
  701. package/dist/test/e2e/api/openapi/openapi.e2e.test.js.map +1 -1
  702. package/dist/test/e2e/services/access-service.e2e.test.js +1 -1
  703. package/dist/test/e2e/services/access-service.e2e.test.js.map +1 -1
  704. package/dist/test/e2e/services/feature-toggle-service-v2.e2e.test.js +26 -4
  705. package/dist/test/e2e/services/feature-toggle-service-v2.e2e.test.js.map +1 -1
  706. package/dist/test/e2e/services/group-service.e2e.test.js +16 -0
  707. package/dist/test/e2e/services/group-service.e2e.test.js.map +1 -1
  708. package/dist/test/e2e/services/user-service.e2e.test.js +2 -2
  709. package/dist/test/e2e/services/user-service.e2e.test.js.map +1 -1
  710. package/dist/test/e2e/stores/event-store.e2e.test.js +3 -2
  711. package/dist/test/e2e/stores/event-store.e2e.test.js.map +1 -1
  712. package/dist/test/e2e/stores/feature-toggle-store.e2e.test.js +163 -0
  713. package/dist/test/e2e/stores/feature-toggle-store.e2e.test.js.map +1 -1
  714. package/dist/test/e2e/stores/feature-type-store.e2e.test.js +13 -0
  715. package/dist/test/e2e/stores/feature-type-store.e2e.test.js.map +1 -1
  716. package/dist/test/fixtures/fake-event-store.d.ts +1 -0
  717. package/dist/test/fixtures/fake-event-store.js +3 -0
  718. package/dist/test/fixtures/fake-event-store.js.map +1 -1
  719. package/dist/test/fixtures/fake-feature-toggle-client-store.d.ts +1 -0
  720. package/dist/test/fixtures/fake-feature-toggle-client-store.js +10 -0
  721. package/dist/test/fixtures/fake-feature-toggle-client-store.js.map +1 -1
  722. package/dist/test/fixtures/fake-feature-toggle-store.d.ts +6 -0
  723. package/dist/test/fixtures/fake-feature-toggle-store.js +6 -0
  724. package/dist/test/fixtures/fake-feature-toggle-store.js.map +1 -1
  725. package/dist/test/fixtures/fake-feature-type-store.d.ts +1 -0
  726. package/dist/test/fixtures/fake-feature-type-store.js +8 -0
  727. package/dist/test/fixtures/fake-feature-type-store.js.map +1 -1
  728. package/dist/test/fixtures/fake-group-store.d.ts +4 -4
  729. package/dist/test/fixtures/fake-group-store.js.map +1 -1
  730. package/dist/test/fixtures/fake-project-store.d.ts +3 -4
  731. package/dist/test/fixtures/fake-project-store.js +4 -13
  732. package/dist/test/fixtures/fake-project-store.js.map +1 -1
  733. package/dist/test/fixtures/fake-segment-store.d.ts +2 -1
  734. package/dist/test/fixtures/fake-segment-store.js +3 -0
  735. package/dist/test/fixtures/fake-segment-store.js.map +1 -1
  736. package/frontend/build/index.html +2 -2
  737. package/frontend/build/static/AdvancedPlayground-4c9d02ea.js +13 -0
  738. package/frontend/build/static/CreateProject-16b35d57.js +4 -0
  739. package/frontend/build/static/{Error-2c3030da.js → Error-50364f10.js} +1 -1
  740. package/frontend/build/static/{FeatureArchiveDialog-a529848e.js → FeatureArchiveDialog-fda1aa0c.js} +3 -3
  741. package/frontend/build/static/{FeatureMetricsChart-e8ede36a.js → FeatureMetricsChart-839cdf1e.js} +2 -2
  742. package/frontend/build/static/FeatureViewLazyExport-47bb7f13.js +7 -0
  743. package/frontend/build/static/LazyAdminExport-8ef0ca21.js +37 -0
  744. package/frontend/build/static/LazyProjectExport-49541c75.js +16 -0
  745. package/frontend/build/static/{NetworkOverview-e6f0a590.js → NetworkOverview-711050f3.js} +8 -8
  746. package/frontend/build/static/{NetworkTraffic-d1efc782.js → NetworkTraffic-e587c2c7.js} +1 -1
  747. package/frontend/build/static/RoleCell-9a62b4ed.js +1 -0
  748. package/frontend/build/static/StrategyItemContainer-4098c8ef.js +1 -0
  749. package/frontend/build/static/{chartjs-adapter-date-fns.esm-0d05c046.js → chartjs-adapter-date-fns.esm-d57aaddd.js} +1 -1
  750. package/frontend/build/static/demo-qr-c2ce85bd.png +0 -0
  751. package/frontend/build/static/{flowchart-elk-definition-170a3958-cc4ae597.js → flowchart-elk-definition-170a3958-4dece62b.js} +2 -2
  752. package/frontend/build/static/{index-a563ae6f.js → index-1c8194e0.js} +1 -1
  753. package/frontend/build/static/index-770afaee.css +1 -0
  754. package/frontend/build/static/{index-ade82986.js → index-9bb67f88.js} +1 -1
  755. package/frontend/build/static/index-9c528324.js +453 -0
  756. package/frontend/build/static/{is_dark-49e2e68f.js → is_dark-ba77f0b9.js} +1 -1
  757. package/frontend/build/static/{mindmap-definition-44684416-c6d3a96e.js → mindmap-definition-44684416-a4071c9f.js} +3 -3
  758. package/frontend/build/static/{timeline-definition-8e5a9bc6-920370f9.js → timeline-definition-8e5a9bc6-c996bf40.js} +2 -2
  759. package/frontend/build/static/{unknownify-30fed5e1.js → unknownify-db48ebae.js} +1 -1
  760. package/frontend/package.json +16 -16
  761. package/package.json +15 -13
  762. package/dist/lib/error/no-access-error.js.map +0 -1
  763. package/dist/lib/openapi/endpoint-descriptions.d.ts +0 -20
  764. package/dist/lib/openapi/endpoint-descriptions.js +0 -24
  765. package/dist/lib/openapi/endpoint-descriptions.js.map +0 -1
  766. package/dist/lib/openapi/spec/feedback-schema.d.ts +0 -24
  767. package/dist/lib/openapi/spec/feedback-schema.js +0 -26
  768. package/dist/lib/openapi/spec/feedback-schema.js.map +0 -1
  769. package/dist/lib/openapi/spec/splash-schema.d.ts +0 -20
  770. package/dist/lib/openapi/spec/splash-schema.js +0 -22
  771. package/dist/lib/openapi/spec/splash-schema.js.map +0 -1
  772. package/dist/lib/openapi/spec/upsert-strategy-schema.d.ts +0 -39
  773. package/dist/lib/openapi/spec/upsert-strategy-schema.js +0 -41
  774. package/dist/lib/openapi/spec/upsert-strategy-schema.js.map +0 -1
  775. package/frontend/build/static/AdvancedPlayground-bc3db7fd.js +0 -1
  776. package/frontend/build/static/CreateProject-4013b189.js +0 -4
  777. package/frontend/build/static/FeatureViewLazyExport-773303d1.js +0 -7
  778. package/frontend/build/static/LazyAdminExport-a9aeca56.js +0 -37
  779. package/frontend/build/static/LazyProjectExport-7c849a96.js +0 -13
  780. package/frontend/build/static/Playground-4fd4e26e.js +0 -1
  781. package/frontend/build/static/PlaygroundGuidancePopper-c761bfb7.js +0 -13
  782. package/frontend/build/static/RoleCell-cbb192fa.js +0 -1
  783. package/frontend/build/static/StrategyItemContainer-128fc163.js +0 -1
  784. package/frontend/build/static/demo-qr-1bebe2c9.png +0 -0
  785. package/frontend/build/static/index-66c635eb.css +0 -1
  786. package/frontend/build/static/index-bd571775.js +0 -450
  787. package/frontend/build/static/stringify-ec884b6d.js +0 -1
@@ -8,18 +8,30 @@ exports.featureEventsSchema = {
8
8
  type: 'object',
9
9
  additionalProperties: false,
10
10
  required: ['events'],
11
+ description: 'One or more events happening to a specific feature toggle',
11
12
  properties: {
12
- version: { type: 'number' },
13
+ version: {
14
+ type: 'integer',
15
+ description: 'An API versioning number',
16
+ minimum: 1,
17
+ enum: [1],
18
+ example: 1,
19
+ },
13
20
  toggleName: {
21
+ description: 'The name of the feature toggle these events relate to',
14
22
  type: 'string',
23
+ example: 'my.first.feature.toggle',
15
24
  },
16
25
  events: {
26
+ description: 'The list of events',
17
27
  type: 'array',
18
28
  items: { $ref: event_schema_1.eventSchema.$id },
19
29
  },
20
30
  totalEvents: {
31
+ description: 'How many events are there for this feature toggle',
21
32
  type: 'integer',
22
33
  minimum: 0,
34
+ example: 13,
23
35
  },
24
36
  },
25
37
  components: {
@@ -1 +1 @@
1
- {"version":3,"file":"feature-events-schema.js","sourceRoot":"","sources":["../../../../src/lib/openapi/spec/feature-events-schema.ts"],"names":[],"mappings":";;;AACA,iDAA6C;AAC7C,6CAAyC;AAE5B,QAAA,mBAAmB,GAAG;IAC/B,GAAG,EAAE,0CAA0C;IAC/C,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,QAAQ,CAAC;IACpB,UAAU,EAAE;QACR,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC3B,UAAU,EAAE;YACR,IAAI,EAAE,QAAQ;SACjB;QACD,MAAM,EAAE;YACJ,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,EAAE,IAAI,EAAE,0BAAW,CAAC,GAAG,EAAE;SACnC;QACD,WAAW,EAAE;YACT,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,CAAC;SACb;KACJ;IACD,UAAU,EAAE;QACR,OAAO,EAAE;YACL,WAAW,EAAX,0BAAW;YACX,SAAS,EAAT,sBAAS;SACZ;KACJ;CACK,CAAC"}
1
+ {"version":3,"file":"feature-events-schema.js","sourceRoot":"","sources":["../../../../src/lib/openapi/spec/feature-events-schema.ts"],"names":[],"mappings":";;;AACA,iDAA6C;AAC7C,6CAAyC;AAE5B,QAAA,mBAAmB,GAAG;IAC/B,GAAG,EAAE,0CAA0C;IAC/C,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,QAAQ,CAAC;IACpB,WAAW,EAAE,2DAA2D;IACxE,UAAU,EAAE;QACR,OAAO,EAAE;YACL,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,0BAA0B;YACvC,OAAO,EAAE,CAAC;YACV,IAAI,EAAE,CAAC,CAAC,CAAC;YACT,OAAO,EAAE,CAAC;SACb;QACD,UAAU,EAAE;YACR,WAAW,EACP,uDAAuD;YAC3D,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,yBAAyB;SACrC;QACD,MAAM,EAAE;YACJ,WAAW,EAAE,oBAAoB;YACjC,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,EAAE,IAAI,EAAE,0BAAW,CAAC,GAAG,EAAE;SACnC;QACD,WAAW,EAAE;YACT,WAAW,EAAE,mDAAmD;YAChE,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,EAAE;SACd;KACJ;IACD,UAAU,EAAE;QACR,OAAO,EAAE;YACL,WAAW,EAAX,0BAAW;YACX,SAAS,EAAT,sBAAS;SACZ;KACJ;CACK,CAAC"}
@@ -4,6 +4,7 @@ export declare const featureSchema: {
4
4
  readonly type: "object";
5
5
  readonly additionalProperties: false;
6
6
  readonly required: readonly ["name"];
7
+ readonly description: "A feature toggle definition";
7
8
  readonly properties: {
8
9
  readonly name: {
9
10
  readonly type: "string";
@@ -34,6 +35,7 @@ export declare const featureSchema: {
34
35
  readonly enabled: {
35
36
  readonly type: "boolean";
36
37
  readonly example: true;
38
+ readonly description: "`true` if the feature is enabled, otherwise `false`.";
37
39
  };
38
40
  readonly stale: {
39
41
  readonly type: "boolean";
@@ -55,18 +57,21 @@ export declare const featureSchema: {
55
57
  readonly format: "date-time";
56
58
  readonly nullable: true;
57
59
  readonly example: "2023-01-28T15:21:39.975Z";
60
+ readonly description: "The date the feature was created";
58
61
  };
59
62
  readonly archivedAt: {
60
63
  readonly type: "string";
61
64
  readonly format: "date-time";
62
65
  readonly nullable: true;
63
66
  readonly example: "2023-01-29T15:21:39.975Z";
67
+ readonly description: "The date the feature was archived";
64
68
  };
65
69
  readonly lastSeenAt: {
66
70
  readonly type: "string";
67
71
  readonly format: "date-time";
68
72
  readonly nullable: true;
69
73
  readonly example: "2023-01-28T16:21:39.975Z";
74
+ readonly description: "The date when metrics where last collected for the feature";
70
75
  };
71
76
  readonly environments: {
72
77
  readonly type: "array";
@@ -161,9 +166,12 @@ export declare const featureSchema: {
161
166
  readonly featureName: {
162
167
  readonly type: "string";
163
168
  readonly example: "disable-comments";
169
+ readonly description: "The name of the feature";
164
170
  };
165
171
  readonly environment: {
166
172
  readonly type: "string";
173
+ readonly example: "development";
174
+ readonly description: "The name of the environment";
167
175
  };
168
176
  readonly type: {
169
177
  readonly type: "string";
@@ -182,6 +190,7 @@ export declare const featureSchema: {
182
190
  };
183
191
  readonly variantCount: {
184
192
  readonly type: "number";
193
+ readonly description: "The number of defined variants";
185
194
  };
186
195
  readonly strategies: {
187
196
  readonly type: "array";
@@ -247,6 +256,7 @@ export declare const featureSchema: {
247
256
  readonly parametersSchema: {
248
257
  readonly $id: "#/components/schemas/parametersSchema";
249
258
  readonly type: "object";
259
+ readonly description: "A list of parameters for a strategy";
250
260
  readonly additionalProperties: {
251
261
  readonly type: "string";
252
262
  };
@@ -301,11 +311,18 @@ export declare const featureSchema: {
301
311
  };
302
312
  readonly constraints: {
303
313
  readonly type: "array";
304
- readonly description: "A list of the constraints attached to the strategy";
314
+ readonly description: "A list of the constraints attached to the strategy. See https://docs.getunleash.io/reference/strategy-constraints";
305
315
  readonly items: {
306
316
  readonly $ref: "#/components/schemas/constraintSchema";
307
317
  };
308
318
  };
319
+ readonly variants: {
320
+ readonly type: "array";
321
+ readonly description: "Strategy level variants";
322
+ readonly items: {
323
+ readonly $ref: "#/components/schemas/strategyVariantSchema";
324
+ };
325
+ };
309
326
  readonly parameters: {
310
327
  readonly $ref: "#/components/schemas/parametersSchema";
311
328
  };
@@ -359,13 +376,118 @@ export declare const featureSchema: {
359
376
  readonly parametersSchema: {
360
377
  readonly $id: "#/components/schemas/parametersSchema";
361
378
  readonly type: "object";
379
+ readonly description: "A list of parameters for a strategy";
362
380
  readonly additionalProperties: {
363
381
  readonly type: "string";
364
382
  };
365
383
  readonly components: {};
366
384
  };
385
+ readonly strategyVariantSchema: {
386
+ readonly $id: "#/components/schemas/strategyVariantSchema";
387
+ readonly type: "object";
388
+ readonly additionalProperties: false;
389
+ readonly description: "This is an experimental property. It may change or be removed as we work on it. Please don't depend on it yet. A strategy variant allows you to attach any data to strategies instead of only returning `true`/`false`. Strategy variants take precedence over feature variants.";
390
+ readonly required: readonly ["name", "weight", "weightType", "stickiness"];
391
+ readonly properties: {
392
+ readonly name: {
393
+ readonly type: "string";
394
+ readonly description: "The variant name. Must be unique for this feature toggle";
395
+ readonly example: "blue_group";
396
+ };
397
+ readonly weight: {
398
+ readonly type: "integer";
399
+ readonly description: "The weight is the likelihood of any one user getting this variant. It is an integer between 0 and 1000. See the section on [variant weights](https://docs.getunleash.io/reference/feature-toggle-variants#variant-weight) for more information";
400
+ readonly minimum: 0;
401
+ readonly maximum: 1000;
402
+ };
403
+ readonly weightType: {
404
+ readonly description: "Set to `fix` if this variant must have exactly the weight allocated to it. If the type is `variable`, the weight will adjust so that the total weight of all variants adds up to 1000. Refer to the [variant weight documentation](https://docs.getunleash.io/reference/feature-toggle-variants#variant-weight).";
405
+ readonly type: "string";
406
+ readonly example: "fix";
407
+ readonly enum: readonly ["variable", "fix"];
408
+ };
409
+ readonly stickiness: {
410
+ readonly type: "string";
411
+ readonly description: "The [stickiness](https://docs.getunleash.io/reference/feature-toggle-variants#variant-stickiness) to use for distribution of this variant. Stickiness is how Unleash guarantees that the same user gets the same variant every time";
412
+ readonly example: "custom.context.field";
413
+ };
414
+ readonly payload: {
415
+ readonly type: "object";
416
+ readonly required: readonly ["type", "value"];
417
+ readonly description: "Extra data configured for this variant";
418
+ readonly properties: {
419
+ readonly type: {
420
+ readonly description: "The type of the value. Commonly used types are string, json and csv.";
421
+ readonly type: "string";
422
+ readonly enum: readonly ["json", "csv", "string"];
423
+ };
424
+ readonly value: {
425
+ readonly description: "The actual value of payload";
426
+ readonly type: "string";
427
+ };
428
+ };
429
+ readonly example: {
430
+ readonly type: "json";
431
+ readonly value: "{\"color\": \"red\"}";
432
+ };
433
+ };
434
+ };
435
+ readonly components: {};
436
+ };
437
+ };
438
+ };
439
+ };
440
+ readonly strategyVariantSchema: {
441
+ readonly $id: "#/components/schemas/strategyVariantSchema";
442
+ readonly type: "object";
443
+ readonly additionalProperties: false;
444
+ readonly description: "This is an experimental property. It may change or be removed as we work on it. Please don't depend on it yet. A strategy variant allows you to attach any data to strategies instead of only returning `true`/`false`. Strategy variants take precedence over feature variants.";
445
+ readonly required: readonly ["name", "weight", "weightType", "stickiness"];
446
+ readonly properties: {
447
+ readonly name: {
448
+ readonly type: "string";
449
+ readonly description: "The variant name. Must be unique for this feature toggle";
450
+ readonly example: "blue_group";
451
+ };
452
+ readonly weight: {
453
+ readonly type: "integer";
454
+ readonly description: "The weight is the likelihood of any one user getting this variant. It is an integer between 0 and 1000. See the section on [variant weights](https://docs.getunleash.io/reference/feature-toggle-variants#variant-weight) for more information";
455
+ readonly minimum: 0;
456
+ readonly maximum: 1000;
457
+ };
458
+ readonly weightType: {
459
+ readonly description: "Set to `fix` if this variant must have exactly the weight allocated to it. If the type is `variable`, the weight will adjust so that the total weight of all variants adds up to 1000. Refer to the [variant weight documentation](https://docs.getunleash.io/reference/feature-toggle-variants#variant-weight).";
460
+ readonly type: "string";
461
+ readonly example: "fix";
462
+ readonly enum: readonly ["variable", "fix"];
463
+ };
464
+ readonly stickiness: {
465
+ readonly type: "string";
466
+ readonly description: "The [stickiness](https://docs.getunleash.io/reference/feature-toggle-variants#variant-stickiness) to use for distribution of this variant. Stickiness is how Unleash guarantees that the same user gets the same variant every time";
467
+ readonly example: "custom.context.field";
468
+ };
469
+ readonly payload: {
470
+ readonly type: "object";
471
+ readonly required: readonly ["type", "value"];
472
+ readonly description: "Extra data configured for this variant";
473
+ readonly properties: {
474
+ readonly type: {
475
+ readonly description: "The type of the value. Commonly used types are string, json and csv.";
476
+ readonly type: "string";
477
+ readonly enum: readonly ["json", "csv", "string"];
478
+ };
479
+ readonly value: {
480
+ readonly description: "The actual value of payload";
481
+ readonly type: "string";
482
+ };
483
+ };
484
+ readonly example: {
485
+ readonly type: "json";
486
+ readonly value: "{\"color\": \"red\"}";
487
+ };
367
488
  };
368
489
  };
490
+ readonly components: {};
369
491
  };
370
492
  readonly variantSchema: {
371
493
  readonly $id: "#/components/schemas/variantSchema";
@@ -388,7 +510,8 @@ export declare const featureSchema: {
388
510
  readonly weightType: {
389
511
  readonly description: "Set to fix if this variant must have exactly the weight allocated to it. If the type is variable, the weight will adjust so that the total weight of all variants adds up to 1000";
390
512
  readonly type: "string";
391
- readonly example: "fix";
513
+ readonly example: "variable";
514
+ readonly enum: readonly ["variable", "fix"];
392
515
  };
393
516
  readonly stickiness: {
394
517
  readonly type: "string";
@@ -399,17 +522,21 @@ export declare const featureSchema: {
399
522
  readonly type: "object";
400
523
  readonly required: readonly ["type", "value"];
401
524
  readonly description: "Extra data configured for this variant";
525
+ readonly additionalProperties: false;
402
526
  readonly properties: {
403
527
  readonly type: {
528
+ readonly description: "The type of the value. Commonly used types are string, json and csv.";
404
529
  readonly type: "string";
530
+ readonly enum: readonly ["json", "csv", "string"];
405
531
  };
406
532
  readonly value: {
533
+ readonly description: "The actual value of payload";
407
534
  readonly type: "string";
408
535
  };
409
536
  };
410
537
  readonly example: {
411
538
  readonly type: "json";
412
- readonly value: "{color: red}";
539
+ readonly value: "{\"color\": \"red\"}";
413
540
  };
414
541
  };
415
542
  readonly overrides: {
@@ -500,11 +627,18 @@ export declare const featureSchema: {
500
627
  };
501
628
  readonly constraints: {
502
629
  readonly type: "array";
503
- readonly description: "A list of the constraints attached to the strategy";
630
+ readonly description: "A list of the constraints attached to the strategy. See https://docs.getunleash.io/reference/strategy-constraints";
504
631
  readonly items: {
505
632
  readonly $ref: "#/components/schemas/constraintSchema";
506
633
  };
507
634
  };
635
+ readonly variants: {
636
+ readonly type: "array";
637
+ readonly description: "Strategy level variants";
638
+ readonly items: {
639
+ readonly $ref: "#/components/schemas/strategyVariantSchema";
640
+ };
641
+ };
508
642
  readonly parameters: {
509
643
  readonly $ref: "#/components/schemas/parametersSchema";
510
644
  };
@@ -558,14 +692,119 @@ export declare const featureSchema: {
558
692
  readonly parametersSchema: {
559
693
  readonly $id: "#/components/schemas/parametersSchema";
560
694
  readonly type: "object";
695
+ readonly description: "A list of parameters for a strategy";
561
696
  readonly additionalProperties: {
562
697
  readonly type: "string";
563
698
  };
564
699
  readonly components: {};
565
700
  };
701
+ readonly strategyVariantSchema: {
702
+ readonly $id: "#/components/schemas/strategyVariantSchema";
703
+ readonly type: "object";
704
+ readonly additionalProperties: false;
705
+ readonly description: "This is an experimental property. It may change or be removed as we work on it. Please don't depend on it yet. A strategy variant allows you to attach any data to strategies instead of only returning `true`/`false`. Strategy variants take precedence over feature variants.";
706
+ readonly required: readonly ["name", "weight", "weightType", "stickiness"];
707
+ readonly properties: {
708
+ readonly name: {
709
+ readonly type: "string";
710
+ readonly description: "The variant name. Must be unique for this feature toggle";
711
+ readonly example: "blue_group";
712
+ };
713
+ readonly weight: {
714
+ readonly type: "integer";
715
+ readonly description: "The weight is the likelihood of any one user getting this variant. It is an integer between 0 and 1000. See the section on [variant weights](https://docs.getunleash.io/reference/feature-toggle-variants#variant-weight) for more information";
716
+ readonly minimum: 0;
717
+ readonly maximum: 1000;
718
+ };
719
+ readonly weightType: {
720
+ readonly description: "Set to `fix` if this variant must have exactly the weight allocated to it. If the type is `variable`, the weight will adjust so that the total weight of all variants adds up to 1000. Refer to the [variant weight documentation](https://docs.getunleash.io/reference/feature-toggle-variants#variant-weight).";
721
+ readonly type: "string";
722
+ readonly example: "fix";
723
+ readonly enum: readonly ["variable", "fix"];
724
+ };
725
+ readonly stickiness: {
726
+ readonly type: "string";
727
+ readonly description: "The [stickiness](https://docs.getunleash.io/reference/feature-toggle-variants#variant-stickiness) to use for distribution of this variant. Stickiness is how Unleash guarantees that the same user gets the same variant every time";
728
+ readonly example: "custom.context.field";
729
+ };
730
+ readonly payload: {
731
+ readonly type: "object";
732
+ readonly required: readonly ["type", "value"];
733
+ readonly description: "Extra data configured for this variant";
734
+ readonly properties: {
735
+ readonly type: {
736
+ readonly description: "The type of the value. Commonly used types are string, json and csv.";
737
+ readonly type: "string";
738
+ readonly enum: readonly ["json", "csv", "string"];
739
+ };
740
+ readonly value: {
741
+ readonly description: "The actual value of payload";
742
+ readonly type: "string";
743
+ };
744
+ };
745
+ readonly example: {
746
+ readonly type: "json";
747
+ readonly value: "{\"color\": \"red\"}";
748
+ };
749
+ };
750
+ };
751
+ readonly components: {};
752
+ };
566
753
  };
567
754
  };
568
755
  };
756
+ readonly strategyVariantSchema: {
757
+ readonly $id: "#/components/schemas/strategyVariantSchema";
758
+ readonly type: "object";
759
+ readonly additionalProperties: false;
760
+ readonly description: "This is an experimental property. It may change or be removed as we work on it. Please don't depend on it yet. A strategy variant allows you to attach any data to strategies instead of only returning `true`/`false`. Strategy variants take precedence over feature variants.";
761
+ readonly required: readonly ["name", "weight", "weightType", "stickiness"];
762
+ readonly properties: {
763
+ readonly name: {
764
+ readonly type: "string";
765
+ readonly description: "The variant name. Must be unique for this feature toggle";
766
+ readonly example: "blue_group";
767
+ };
768
+ readonly weight: {
769
+ readonly type: "integer";
770
+ readonly description: "The weight is the likelihood of any one user getting this variant. It is an integer between 0 and 1000. See the section on [variant weights](https://docs.getunleash.io/reference/feature-toggle-variants#variant-weight) for more information";
771
+ readonly minimum: 0;
772
+ readonly maximum: 1000;
773
+ };
774
+ readonly weightType: {
775
+ readonly description: "Set to `fix` if this variant must have exactly the weight allocated to it. If the type is `variable`, the weight will adjust so that the total weight of all variants adds up to 1000. Refer to the [variant weight documentation](https://docs.getunleash.io/reference/feature-toggle-variants#variant-weight).";
776
+ readonly type: "string";
777
+ readonly example: "fix";
778
+ readonly enum: readonly ["variable", "fix"];
779
+ };
780
+ readonly stickiness: {
781
+ readonly type: "string";
782
+ readonly description: "The [stickiness](https://docs.getunleash.io/reference/feature-toggle-variants#variant-stickiness) to use for distribution of this variant. Stickiness is how Unleash guarantees that the same user gets the same variant every time";
783
+ readonly example: "custom.context.field";
784
+ };
785
+ readonly payload: {
786
+ readonly type: "object";
787
+ readonly required: readonly ["type", "value"];
788
+ readonly description: "Extra data configured for this variant";
789
+ readonly properties: {
790
+ readonly type: {
791
+ readonly description: "The type of the value. Commonly used types are string, json and csv.";
792
+ readonly type: "string";
793
+ readonly enum: readonly ["json", "csv", "string"];
794
+ };
795
+ readonly value: {
796
+ readonly description: "The actual value of payload";
797
+ readonly type: "string";
798
+ };
799
+ };
800
+ readonly example: {
801
+ readonly type: "json";
802
+ readonly value: "{\"color\": \"red\"}";
803
+ };
804
+ };
805
+ };
806
+ readonly components: {};
807
+ };
569
808
  readonly overrideSchema: {
570
809
  readonly $id: "#/components/schemas/overrideSchema";
571
810
  readonly type: "object";
@@ -592,6 +831,7 @@ export declare const featureSchema: {
592
831
  readonly parametersSchema: {
593
832
  readonly $id: "#/components/schemas/parametersSchema";
594
833
  readonly type: "object";
834
+ readonly description: "A list of parameters for a strategy";
595
835
  readonly additionalProperties: {
596
836
  readonly type: "string";
597
837
  };
@@ -618,7 +858,8 @@ export declare const featureSchema: {
618
858
  readonly weightType: {
619
859
  readonly description: "Set to fix if this variant must have exactly the weight allocated to it. If the type is variable, the weight will adjust so that the total weight of all variants adds up to 1000";
620
860
  readonly type: "string";
621
- readonly example: "fix";
861
+ readonly example: "variable";
862
+ readonly enum: readonly ["variable", "fix"];
622
863
  };
623
864
  readonly stickiness: {
624
865
  readonly type: "string";
@@ -629,17 +870,21 @@ export declare const featureSchema: {
629
870
  readonly type: "object";
630
871
  readonly required: readonly ["type", "value"];
631
872
  readonly description: "Extra data configured for this variant";
873
+ readonly additionalProperties: false;
632
874
  readonly properties: {
633
875
  readonly type: {
876
+ readonly description: "The type of the value. Commonly used types are string, json and csv.";
634
877
  readonly type: "string";
878
+ readonly enum: readonly ["json", "csv", "string"];
635
879
  };
636
880
  readonly value: {
881
+ readonly description: "The actual value of payload";
637
882
  readonly type: "string";
638
883
  };
639
884
  };
640
885
  readonly example: {
641
886
  readonly type: "json";
642
- readonly value: "{color: red}";
887
+ readonly value: "{\"color\": \"red\"}";
643
888
  };
644
889
  };
645
890
  readonly overrides: {
@@ -8,11 +8,13 @@ const parameters_schema_1 = require("./parameters-schema");
8
8
  const feature_strategy_schema_1 = require("./feature-strategy-schema");
9
9
  const tag_schema_1 = require("./tag-schema");
10
10
  const feature_environment_schema_1 = require("./feature-environment-schema");
11
+ const strategy_variant_schema_1 = require("./strategy-variant-schema");
11
12
  exports.featureSchema = {
12
13
  $id: '#/components/schemas/featureSchema',
13
14
  type: 'object',
14
15
  additionalProperties: false,
15
16
  required: ['name'],
17
+ description: 'A feature toggle definition',
16
18
  properties: {
17
19
  name: {
18
20
  type: 'string',
@@ -43,6 +45,7 @@ exports.featureSchema = {
43
45
  enabled: {
44
46
  type: 'boolean',
45
47
  example: true,
48
+ description: '`true` if the feature is enabled, otherwise `false`.',
46
49
  },
47
50
  stale: {
48
51
  type: 'boolean',
@@ -64,18 +67,21 @@ exports.featureSchema = {
64
67
  format: 'date-time',
65
68
  nullable: true,
66
69
  example: '2023-01-28T15:21:39.975Z',
70
+ description: 'The date the feature was created',
67
71
  },
68
72
  archivedAt: {
69
73
  type: 'string',
70
74
  format: 'date-time',
71
75
  nullable: true,
72
76
  example: '2023-01-29T15:21:39.975Z',
77
+ description: 'The date the feature was archived',
73
78
  },
74
79
  lastSeenAt: {
75
80
  type: 'string',
76
81
  format: 'date-time',
77
82
  nullable: true,
78
83
  example: '2023-01-28T16:21:39.975Z',
84
+ description: 'The date when metrics where last collected for the feature',
79
85
  },
80
86
  environments: {
81
87
  type: 'array',
@@ -114,6 +120,7 @@ exports.featureSchema = {
114
120
  constraintSchema: constraint_schema_1.constraintSchema,
115
121
  featureEnvironmentSchema: feature_environment_schema_1.featureEnvironmentSchema,
116
122
  featureStrategySchema: feature_strategy_schema_1.featureStrategySchema,
123
+ strategyVariantSchema: strategy_variant_schema_1.strategyVariantSchema,
117
124
  overrideSchema: override_schema_1.overrideSchema,
118
125
  parametersSchema: parameters_schema_1.parametersSchema,
119
126
  variantSchema: variant_schema_1.variantSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"feature-schema.js","sourceRoot":"","sources":["../../../../src/lib/openapi/spec/feature-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature-schema.js","sourceRoot":"","sources":["../../../../src/lib/openapi/spec/feature-schema.ts"],"names":[],"mappings":";;;AACA,qDAAiD;AACjD,2DAAuD;AACvD,uDAAmD;AACnD,2DAAuD;AACvD,uEAAkE;AAClE,6CAAyC;AACzC,6EAAwE;AACxE,uEAAkE;AAErD,QAAA,aAAa,GAAG;IACzB,GAAG,EAAE,oCAAoC;IACzC,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,CAAC;IAClB,WAAW,EAAE,6BAA6B;IAC1C,UAAU,EAAE;QACR,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,kBAAkB;YAC3B,WAAW,EAAE,qBAAqB;SACrC;QACD,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,aAAa;YACtB,WAAW,EACP,mFAAmF;SAC1F;QACD,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EACH,mEAAmE;YACvE,WAAW,EAAE,qCAAqC;SACrD;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,IAAI;YACb,WAAW,EAAE,mCAAmC;SACnD;QACD,OAAO,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,UAAU;YACnB,WAAW,EAAE,4CAA4C;SAC5D;QACD,OAAO,EAAE;YACL,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,IAAI;YACb,WAAW,EAAE,sDAAsD;SACtE;QACD,KAAK,EAAE;YACH,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;YACd,WAAW,EACP,sFAAsF;SAC7F;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,IAAI;YACb,WAAW,EACP,yDAAyD;SAChE;QACD,cAAc,EAAE;YACZ,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;YACd,WAAW,EACP,yFAAyF;SAChG;QACD,SAAS,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,WAAW;YACnB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,0BAA0B;YACnC,WAAW,EAAE,kCAAkC;SAClD;QACD,UAAU,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,WAAW;YACnB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,0BAA0B;YACnC,WAAW,EAAE,mCAAmC;SACnD;QACD,UAAU,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,WAAW;YACnB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,0BAA0B;YACnC,WAAW,EACP,4DAA4D;SACnE;QACD,YAAY,EAAE;YACV,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACH,IAAI,EAAE,+CAA+C;aACxD;YACD,WAAW,EACP,wDAAwD;SAC/D;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACH,IAAI,EAAE,oCAAoC;aAC7C;YACD,WAAW,EAAE,8BAA8B;YAC3C,UAAU,EAAE,IAAI;SACnB;QACD,UAAU,EAAE;YACR,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;aACjB;YACD,WAAW,EAAE,gDAAgD;YAC7D,UAAU,EAAE,IAAI;SACnB;QACD,IAAI,EAAE;YACF,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACH,IAAI,EAAE,gCAAgC;aACzC;YACD,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,0BAA0B;SAC1C;KACJ;IACD,UAAU,EAAE;QACR,OAAO,EAAE;YACL,gBAAgB,EAAhB,oCAAgB;YAChB,wBAAwB,EAAxB,qDAAwB;YACxB,qBAAqB,EAArB,+CAAqB;YACrB,qBAAqB,EAArB,+CAAqB;YACrB,cAAc,EAAd,gCAAc;YACd,gBAAgB,EAAhB,oCAAgB;YAChB,aAAa,EAAb,8BAAa;YACb,SAAS,EAAT,sBAAS;SACZ;KACJ;CACK,CAAC"}
@@ -11,7 +11,7 @@ test('featureSchema', () => {
11
11
  weightType: 'fix',
12
12
  stickiness: 'a',
13
13
  overrides: [{ contextName: 'a', values: ['a'] }],
14
- payload: { type: 'a', value: 'b' },
14
+ payload: { type: 'string', value: 'b' },
15
15
  },
16
16
  ],
17
17
  environments: [
@@ -72,7 +72,7 @@ test('featureSchema variant override values must be an array', () => {
72
72
  {
73
73
  name: 'a',
74
74
  weight: 1,
75
- weightType: 'a',
75
+ weightType: 'fix',
76
76
  stickiness: 'a',
77
77
  overrides: [{ contextName: 'a', values: 'b' }],
78
78
  payload: { type: 'a', value: 'b' },
@@ -1 +1 @@
1
- {"version":3,"file":"feature-schema.test.js","sourceRoot":"","sources":["../../../../src/lib/openapi/spec/feature-schema.test.ts"],"names":[],"mappings":";;AAAA,0CAA6C;AAG7C,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE;IACvB,MAAM,IAAI,GAAkB;QACxB,IAAI,EAAE,GAAG;QACT,QAAQ,EAAE;YACN;gBACI,IAAI,EAAE,GAAG;gBACT,MAAM,EAAE,CAAC;gBACT,UAAU,EAAE,KAAK;gBACjB,UAAU,EAAE,GAAG;gBACf,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChD,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;aACrC;SACJ;QACD,YAAY,EAAE;YACV;gBACI,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE;oBACR;wBACI,EAAE,EAAE,GAAG;wBACP,IAAI,EAAE,GAAG;wBACT,WAAW,EAAE;4BACT;gCACI,WAAW,EAAE,GAAG;gCAChB,QAAQ,EAAE,IAAI;6BACjB;yBACJ;wBACD,QAAQ,EAAE,CAAC,CAAC,CAAC;qBAChB;iBACJ;aACJ;SACJ;KACJ,CAAC;IAEF,MAAM,CACF,IAAA,yBAAc,EAAC,oCAAoC,EAAE,IAAI,CAAC,CAC7D,CAAC,aAAa,EAAE,CAAC;AACtB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACnC,MAAM,IAAI,GAAG;QACT,IAAI,EAAE,GAAG;QACT,YAAY,EAAE;YACV;gBACI,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE;oBACR,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,EAAE;iBACrD;aACJ;SACJ;KACJ,CAAC;IAEF,MAAM,CACF,IAAA,yBAAc,EAAC,oCAAoC,EAAE,IAAI,CAAC,CAC7D,CAAC,eAAe,EAAE,CAAC;AACxB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+DAA+D,EAAE,GAAG,EAAE;IACvE,MAAM,IAAI,GAAG;QACT,IAAI,EAAE,GAAG;QACT,QAAQ,EAAE;YACN;gBACI,IAAI,EAAE,GAAG;gBACT,MAAM,EAAE,CAAC;aACZ;SACJ;KACJ,CAAC;IAEF,MAAM,CACF,IAAA,yBAAc,EAAC,oCAAoC,EAAE,IAAI,CAAC,CAC7D,CAAC,aAAa,EAAE,CAAC;AACtB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,wDAAwD,EAAE,GAAG,EAAE;IAChE,MAAM,IAAI,GAAG;QACT,IAAI,EAAE,GAAG;QACT,QAAQ,EAAE;YACN;gBACI,IAAI,EAAE,GAAG;gBACT,MAAM,EAAE,CAAC;gBACT,UAAU,EAAE,GAAG;gBACf,UAAU,EAAE,GAAG;gBACf,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;gBAC9C,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;aACrC;SACJ;KACJ,CAAC;IAEF,MAAM,CACF,IAAA,yBAAc,EAAC,oCAAoC,EAAE,IAAI,CAAC,CAC7D,CAAC,eAAe,EAAE,CAAC;AACxB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"feature-schema.test.js","sourceRoot":"","sources":["../../../../src/lib/openapi/spec/feature-schema.test.ts"],"names":[],"mappings":";;AAAA,0CAA6C;AAG7C,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE;IACvB,MAAM,IAAI,GAAkB;QACxB,IAAI,EAAE,GAAG;QACT,QAAQ,EAAE;YACN;gBACI,IAAI,EAAE,GAAG;gBACT,MAAM,EAAE,CAAC;gBACT,UAAU,EAAE,KAAK;gBACjB,UAAU,EAAE,GAAG;gBACf,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChD,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE;aAC1C;SACJ;QACD,YAAY,EAAE;YACV;gBACI,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE;oBACR;wBACI,EAAE,EAAE,GAAG;wBACP,IAAI,EAAE,GAAG;wBACT,WAAW,EAAE;4BACT;gCACI,WAAW,EAAE,GAAG;gCAChB,QAAQ,EAAE,IAAI;6BACjB;yBACJ;wBACD,QAAQ,EAAE,CAAC,CAAC,CAAC;qBAChB;iBACJ;aACJ;SACJ;KACJ,CAAC;IAEF,MAAM,CACF,IAAA,yBAAc,EAAC,oCAAoC,EAAE,IAAI,CAAC,CAC7D,CAAC,aAAa,EAAE,CAAC;AACtB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACnC,MAAM,IAAI,GAAG;QACT,IAAI,EAAE,GAAG;QACT,YAAY,EAAE;YACV;gBACI,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE;oBACR,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,EAAE;iBACrD;aACJ;SACJ;KACJ,CAAC;IAEF,MAAM,CACF,IAAA,yBAAc,EAAC,oCAAoC,EAAE,IAAI,CAAC,CAC7D,CAAC,eAAe,EAAE,CAAC;AACxB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+DAA+D,EAAE,GAAG,EAAE;IACvE,MAAM,IAAI,GAAG;QACT,IAAI,EAAE,GAAG;QACT,QAAQ,EAAE;YACN;gBACI,IAAI,EAAE,GAAG;gBACT,MAAM,EAAE,CAAC;aACZ;SACJ;KACJ,CAAC;IAEF,MAAM,CACF,IAAA,yBAAc,EAAC,oCAAoC,EAAE,IAAI,CAAC,CAC7D,CAAC,aAAa,EAAE,CAAC;AACtB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,wDAAwD,EAAE,GAAG,EAAE;IAChE,MAAM,IAAI,GAAG;QACT,IAAI,EAAE,GAAG;QACT,QAAQ,EAAE;YACN;gBACI,IAAI,EAAE,GAAG;gBACT,MAAM,EAAE,CAAC;gBACT,UAAU,EAAE,KAAK;gBACjB,UAAU,EAAE,GAAG;gBACf,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;gBAC9C,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;aACrC;SACJ;KACJ,CAAC;IAEF,MAAM,CACF,IAAA,yBAAc,EAAC,oCAAoC,EAAE,IAAI,CAAC,CAC7D,CAAC,eAAe,EAAE,CAAC;AACxB,CAAC,CAAC,CAAC"}
@@ -48,11 +48,18 @@ export declare const featureStrategySchema: {
48
48
  };
49
49
  readonly constraints: {
50
50
  readonly type: "array";
51
- readonly description: "A list of the constraints attached to the strategy";
51
+ readonly description: "A list of the constraints attached to the strategy. See https://docs.getunleash.io/reference/strategy-constraints";
52
52
  readonly items: {
53
53
  readonly $ref: "#/components/schemas/constraintSchema";
54
54
  };
55
55
  };
56
+ readonly variants: {
57
+ readonly type: "array";
58
+ readonly description: "Strategy level variants";
59
+ readonly items: {
60
+ readonly $ref: "#/components/schemas/strategyVariantSchema";
61
+ };
62
+ };
56
63
  readonly parameters: {
57
64
  readonly $ref: "#/components/schemas/parametersSchema";
58
65
  };
@@ -106,11 +113,64 @@ export declare const featureStrategySchema: {
106
113
  readonly parametersSchema: {
107
114
  readonly $id: "#/components/schemas/parametersSchema";
108
115
  readonly type: "object";
116
+ readonly description: "A list of parameters for a strategy";
109
117
  readonly additionalProperties: {
110
118
  readonly type: "string";
111
119
  };
112
120
  readonly components: {};
113
121
  };
122
+ readonly strategyVariantSchema: {
123
+ readonly $id: "#/components/schemas/strategyVariantSchema";
124
+ readonly type: "object";
125
+ readonly additionalProperties: false;
126
+ readonly description: "This is an experimental property. It may change or be removed as we work on it. Please don't depend on it yet. A strategy variant allows you to attach any data to strategies instead of only returning `true`/`false`. Strategy variants take precedence over feature variants.";
127
+ readonly required: readonly ["name", "weight", "weightType", "stickiness"];
128
+ readonly properties: {
129
+ readonly name: {
130
+ readonly type: "string";
131
+ readonly description: "The variant name. Must be unique for this feature toggle";
132
+ readonly example: "blue_group";
133
+ };
134
+ readonly weight: {
135
+ readonly type: "integer";
136
+ readonly description: "The weight is the likelihood of any one user getting this variant. It is an integer between 0 and 1000. See the section on [variant weights](https://docs.getunleash.io/reference/feature-toggle-variants#variant-weight) for more information";
137
+ readonly minimum: 0;
138
+ readonly maximum: 1000;
139
+ };
140
+ readonly weightType: {
141
+ readonly description: "Set to `fix` if this variant must have exactly the weight allocated to it. If the type is `variable`, the weight will adjust so that the total weight of all variants adds up to 1000. Refer to the [variant weight documentation](https://docs.getunleash.io/reference/feature-toggle-variants#variant-weight).";
142
+ readonly type: "string";
143
+ readonly example: "fix";
144
+ readonly enum: readonly ["variable", "fix"];
145
+ };
146
+ readonly stickiness: {
147
+ readonly type: "string";
148
+ readonly description: "The [stickiness](https://docs.getunleash.io/reference/feature-toggle-variants#variant-stickiness) to use for distribution of this variant. Stickiness is how Unleash guarantees that the same user gets the same variant every time";
149
+ readonly example: "custom.context.field";
150
+ };
151
+ readonly payload: {
152
+ readonly type: "object";
153
+ readonly required: readonly ["type", "value"];
154
+ readonly description: "Extra data configured for this variant";
155
+ readonly properties: {
156
+ readonly type: {
157
+ readonly description: "The type of the value. Commonly used types are string, json and csv.";
158
+ readonly type: "string";
159
+ readonly enum: readonly ["json", "csv", "string"];
160
+ };
161
+ readonly value: {
162
+ readonly description: "The actual value of payload";
163
+ readonly type: "string";
164
+ };
165
+ };
166
+ readonly example: {
167
+ readonly type: "json";
168
+ readonly value: "{\"color\": \"red\"}";
169
+ };
170
+ };
171
+ };
172
+ readonly components: {};
173
+ };
114
174
  };
115
175
  };
116
176
  };