unleash-server 5.1.8 → 5.2.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 (485) hide show
  1. package/dist/lib/create-config.js +5 -2
  2. package/dist/lib/create-config.js.map +1 -1
  3. package/dist/lib/db/access-store.d.ts +2 -1
  4. package/dist/lib/db/access-store.js +17 -3
  5. package/dist/lib/db/access-store.js.map +1 -1
  6. package/dist/lib/db/client-metrics-store-v2.js +19 -30
  7. package/dist/lib/db/client-metrics-store-v2.js.map +1 -1
  8. package/dist/lib/db/context-field-store.d.ts +4 -1
  9. package/dist/lib/db/context-field-store.js +44 -14
  10. package/dist/lib/db/context-field-store.js.map +1 -1
  11. package/dist/lib/db/environment-store.d.ts +1 -0
  12. package/dist/lib/db/environment-store.js +6 -0
  13. package/dist/lib/db/environment-store.js.map +1 -1
  14. package/dist/lib/db/event-store.js +2 -1
  15. package/dist/lib/db/event-store.js.map +1 -1
  16. package/dist/lib/db/feature-strategy-store.d.ts +2 -0
  17. package/dist/lib/db/feature-strategy-store.js +25 -0
  18. package/dist/lib/db/feature-strategy-store.js.map +1 -1
  19. package/dist/lib/db/feature-strategy-store.test.js +75 -0
  20. package/dist/lib/db/feature-strategy-store.test.js.map +1 -0
  21. package/dist/lib/db/group-store.d.ts +1 -1
  22. package/dist/lib/db/group-store.js +2 -2
  23. package/dist/lib/db/group-store.js.map +1 -1
  24. package/dist/lib/db/index.js +2 -2
  25. package/dist/lib/db/index.js.map +1 -1
  26. package/dist/lib/db/project-store.js +2 -1
  27. package/dist/lib/db/project-store.js.map +1 -1
  28. package/dist/lib/db/role-store.js +2 -2
  29. package/dist/lib/db/role-store.js.map +1 -1
  30. package/dist/lib/db/segment-store.d.ts +6 -2
  31. package/dist/lib/db/segment-store.js +27 -6
  32. package/dist/lib/db/segment-store.js.map +1 -1
  33. package/dist/lib/error/no-access-error.d.ts +3 -2
  34. package/dist/lib/error/no-access-error.js +10 -4
  35. package/dist/lib/error/no-access-error.js.map +1 -1
  36. package/dist/lib/error/unleash-error.test.js +8 -2
  37. package/dist/lib/error/unleash-error.test.js.map +1 -1
  38. package/dist/lib/features/access/createAccessService.js +5 -5
  39. package/dist/lib/features/access/createAccessService.js.map +1 -1
  40. package/dist/lib/features/export-import-toggles/createExportImportService.js +4 -2
  41. package/dist/lib/features/export-import-toggles/createExportImportService.js.map +1 -1
  42. package/dist/lib/features/export-import-toggles/export-import-api-usage.test.d.ts +1 -0
  43. package/dist/lib/features/export-import-toggles/export-import-api-usage.test.js +69 -0
  44. package/dist/lib/features/export-import-toggles/export-import-api-usage.test.js.map +1 -0
  45. package/dist/lib/features/export-import-toggles/export-import-controller.js +5 -1
  46. package/dist/lib/features/export-import-toggles/export-import-controller.js.map +1 -1
  47. package/dist/lib/features/export-import-toggles/export-import-service.js +7 -2
  48. package/dist/lib/features/export-import-toggles/export-import-service.js.map +1 -1
  49. package/dist/lib/features/feature-toggle/createFeatureToggleService.js +4 -4
  50. package/dist/lib/features/feature-toggle/createFeatureToggleService.js.map +1 -1
  51. package/dist/lib/features/playground/advanced-playground.test.d.ts +1 -0
  52. package/dist/lib/features/playground/advanced-playground.test.js +238 -0
  53. package/dist/lib/features/playground/advanced-playground.test.js.map +1 -0
  54. package/dist/lib/{util → features/playground}/feature-evaluator/client.d.ts +3 -2
  55. package/dist/lib/{util → features/playground}/feature-evaluator/client.js +1 -1
  56. package/dist/lib/features/playground/feature-evaluator/client.js.map +1 -0
  57. package/dist/lib/features/playground/feature-evaluator/constraint.js.map +1 -0
  58. package/dist/lib/features/playground/feature-evaluator/context.js.map +1 -0
  59. package/dist/lib/features/playground/feature-evaluator/feature-evaluator.js.map +1 -0
  60. package/dist/lib/features/playground/feature-evaluator/feature.js.map +1 -0
  61. package/dist/lib/{util → features/playground}/feature-evaluator/helpers.d.ts +1 -1
  62. package/dist/lib/features/playground/feature-evaluator/helpers.js.map +1 -0
  63. package/dist/lib/{util → features/playground}/feature-evaluator/index.d.ts +1 -1
  64. package/dist/lib/{util → features/playground}/feature-evaluator/index.js +2 -2
  65. package/dist/lib/features/playground/feature-evaluator/index.js.map +1 -0
  66. package/dist/lib/features/playground/feature-evaluator/repository/bootstrap-provider.js.map +1 -0
  67. package/dist/lib/features/playground/feature-evaluator/repository/index.js.map +1 -0
  68. package/dist/lib/features/playground/feature-evaluator/repository/storage-provider-in-mem.js.map +1 -0
  69. package/dist/lib/features/playground/feature-evaluator/repository/storage-provider.js.map +1 -0
  70. package/dist/lib/features/playground/feature-evaluator/strategy/application-hostname-strategy.js.map +1 -0
  71. package/dist/lib/features/playground/feature-evaluator/strategy/default-strategy.js.map +1 -0
  72. package/dist/lib/features/playground/feature-evaluator/strategy/flexible-rollout-strategy.js.map +1 -0
  73. package/dist/lib/features/playground/feature-evaluator/strategy/gradual-rollout-random.js.map +1 -0
  74. package/dist/lib/features/playground/feature-evaluator/strategy/gradual-rollout-session-id.js.map +1 -0
  75. package/dist/lib/features/playground/feature-evaluator/strategy/gradual-rollout-user-id.js.map +1 -0
  76. package/dist/lib/features/playground/feature-evaluator/strategy/index.js.map +1 -0
  77. package/dist/lib/features/playground/feature-evaluator/strategy/remote-address-strategy.js.map +1 -0
  78. package/dist/lib/features/playground/feature-evaluator/strategy/strategy.js.map +1 -0
  79. package/dist/lib/{util → features/playground}/feature-evaluator/strategy/unknown-strategy.js +1 -1
  80. package/dist/lib/features/playground/feature-evaluator/strategy/unknown-strategy.js.map +1 -0
  81. package/dist/lib/features/playground/feature-evaluator/strategy/user-with-id-strategy.js.map +1 -0
  82. package/dist/lib/features/playground/feature-evaluator/strategy/util.js.map +1 -0
  83. package/dist/lib/features/playground/feature-evaluator/variant.js.map +1 -0
  84. package/dist/lib/features/playground/generateObjectCombinations.d.ts +7 -0
  85. package/dist/lib/features/playground/generateObjectCombinations.js +16 -0
  86. package/dist/lib/features/playground/generateObjectCombinations.js.map +1 -0
  87. package/dist/lib/features/playground/generateObjectCombinations.test.d.ts +1 -0
  88. package/dist/lib/features/playground/generateObjectCombinations.test.js +33 -0
  89. package/dist/lib/features/playground/generateObjectCombinations.test.js.map +1 -0
  90. package/dist/lib/{util → features/playground}/offline-unleash-client.js +2 -2
  91. package/dist/lib/features/playground/offline-unleash-client.js.map +1 -0
  92. package/dist/lib/{util → features/playground}/offline-unleash-client.test.js +1 -1
  93. package/dist/lib/features/playground/offline-unleash-client.test.js.map +1 -0
  94. package/dist/lib/features/playground/playground-service.d.ts +34 -0
  95. package/dist/lib/features/playground/playground-service.js +114 -0
  96. package/dist/lib/features/playground/playground-service.js.map +1 -0
  97. package/dist/lib/features/playground/playground-view-model.d.ts +4 -0
  98. package/dist/lib/features/playground/playground-view-model.js +49 -0
  99. package/dist/lib/features/playground/playground-view-model.js.map +1 -0
  100. package/dist/lib/features/playground/playground-view-model.test.d.ts +1 -0
  101. package/dist/lib/features/playground/playground-view-model.test.js +122 -0
  102. package/dist/lib/features/playground/playground-view-model.test.js.map +1 -0
  103. package/dist/lib/features/playground/playground.d.ts +16 -0
  104. package/dist/lib/features/playground/playground.js +78 -0
  105. package/dist/lib/features/playground/playground.js.map +1 -0
  106. package/dist/lib/features/playground/playground.test.d.ts +1 -0
  107. package/dist/lib/{routes/admin-api → features/playground}/playground.test.js +3 -2
  108. package/dist/lib/features/playground/playground.test.js.map +1 -0
  109. package/dist/lib/features/playground/validateQueryComplexity.d.ts +1 -0
  110. package/dist/lib/features/playground/validateQueryComplexity.js +15 -0
  111. package/dist/lib/features/playground/validateQueryComplexity.js.map +1 -0
  112. package/dist/lib/features/playground/validateQueryComplexity.test.d.ts +1 -0
  113. package/dist/lib/features/playground/validateQueryComplexity.test.js +19 -0
  114. package/dist/lib/features/playground/validateQueryComplexity.test.js.map +1 -0
  115. package/dist/lib/middleware/rbac-middleware.d.ts +1 -1
  116. package/dist/lib/middleware/rbac-middleware.js +7 -4
  117. package/dist/lib/middleware/rbac-middleware.js.map +1 -1
  118. package/dist/lib/middleware/rbac-middleware.test.js +8 -8
  119. package/dist/lib/middleware/rbac-middleware.test.js.map +1 -1
  120. package/dist/lib/openapi/endpoint-descriptions.d.ts +4 -0
  121. package/dist/lib/openapi/endpoint-descriptions.js +4 -0
  122. package/dist/lib/openapi/endpoint-descriptions.js.map +1 -1
  123. package/dist/lib/openapi/index.js +7 -0
  124. package/dist/lib/openapi/index.js.map +1 -1
  125. package/dist/lib/openapi/meta-schema-rules.test.js +16 -25
  126. package/dist/lib/openapi/meta-schema-rules.test.js.map +1 -1
  127. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.d.ts +652 -0
  128. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.js +146 -0
  129. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.js.map +1 -0
  130. package/dist/lib/openapi/spec/advanced-playground-feature-schema.d.ts +1217 -0
  131. package/dist/lib/openapi/spec/advanced-playground-feature-schema.js +51 -0
  132. package/dist/lib/openapi/spec/advanced-playground-feature-schema.js.map +1 -0
  133. package/dist/lib/openapi/spec/advanced-playground-request-schema.d.ts +95 -0
  134. package/dist/lib/openapi/spec/advanced-playground-request-schema.js +49 -0
  135. package/dist/lib/openapi/spec/advanced-playground-request-schema.js.map +1 -0
  136. package/dist/lib/openapi/spec/advanced-playground-response-schema.d.ts +2560 -0
  137. package/dist/lib/openapi/spec/advanced-playground-response-schema.js +50 -0
  138. package/dist/lib/openapi/spec/advanced-playground-response-schema.js.map +1 -0
  139. package/dist/lib/openapi/spec/client-application-schema.d.ts +17 -0
  140. package/dist/lib/openapi/spec/client-application-schema.js +17 -0
  141. package/dist/lib/openapi/spec/client-application-schema.js.map +1 -1
  142. package/dist/lib/openapi/spec/client-feature-schema.d.ts +44 -13
  143. package/dist/lib/openapi/spec/client-feature-schema.js +17 -12
  144. package/dist/lib/openapi/spec/client-feature-schema.js.map +1 -1
  145. package/dist/lib/openapi/spec/client-features-query-schema.d.ts +12 -0
  146. package/dist/lib/openapi/spec/client-features-query-schema.js +12 -0
  147. package/dist/lib/openapi/spec/client-features-query-schema.js.map +1 -1
  148. package/dist/lib/openapi/spec/client-features-schema.d.ts +90 -14
  149. package/dist/lib/openapi/spec/client-features-schema.js +7 -0
  150. package/dist/lib/openapi/spec/client-features-schema.js.map +1 -1
  151. package/dist/lib/openapi/spec/client-features-schema.test.js +5 -12
  152. package/dist/lib/openapi/spec/client-features-schema.test.js.map +1 -1
  153. package/dist/lib/openapi/spec/client-metrics-schema.d.ts +1 -1
  154. package/dist/lib/openapi/spec/client-metrics-schema.js +1 -1
  155. package/dist/lib/openapi/spec/client-metrics-schema.js.map +1 -1
  156. package/dist/lib/openapi/spec/context-field-schema.d.ts +13 -0
  157. package/dist/lib/openapi/spec/context-field-schema.js +13 -0
  158. package/dist/lib/openapi/spec/context-field-schema.js.map +1 -1
  159. package/dist/lib/openapi/spec/context-field-strategies-schema.d.ts +43 -0
  160. package/dist/lib/openapi/spec/context-field-strategies-schema.js +51 -0
  161. package/dist/lib/openapi/spec/context-field-strategies-schema.js.map +1 -0
  162. package/dist/lib/openapi/spec/context-fields-schema.d.ts +13 -0
  163. package/dist/lib/openapi/spec/create-application-schema.d.ts +0 -1
  164. package/dist/lib/openapi/spec/create-application-schema.js +0 -1
  165. package/dist/lib/openapi/spec/create-application-schema.js.map +1 -1
  166. package/dist/lib/openapi/spec/export-result-schema.d.ts +137 -4
  167. package/dist/lib/openapi/spec/feature-environment-schema.d.ts +22 -1
  168. package/dist/lib/openapi/spec/feature-schema.d.ts +49 -2
  169. package/dist/lib/openapi/spec/feature-schema.test.js +1 -1
  170. package/dist/lib/openapi/spec/feature-schema.test.js.map +1 -1
  171. package/dist/lib/openapi/spec/feature-strategy-schema.d.ts +1 -1
  172. package/dist/lib/openapi/spec/feature-strategy-schema.js +1 -1
  173. package/dist/lib/openapi/spec/feature-strategy-schema.js.map +1 -1
  174. package/dist/lib/openapi/spec/feature-variants-schema.d.ts +26 -0
  175. package/dist/lib/openapi/spec/features-schema.d.ts +98 -4
  176. package/dist/lib/openapi/spec/health-check-schema.d.ts +3 -0
  177. package/dist/lib/openapi/spec/health-check-schema.js +3 -0
  178. package/dist/lib/openapi/spec/health-check-schema.js.map +1 -1
  179. package/dist/lib/openapi/spec/health-overview-schema.d.ts +105 -4
  180. package/dist/lib/openapi/spec/health-overview-schema.js +7 -0
  181. package/dist/lib/openapi/spec/health-overview-schema.js.map +1 -1
  182. package/dist/lib/openapi/spec/health-report-schema.d.ts +105 -4
  183. package/dist/lib/openapi/spec/import-toggles-schema.d.ts +274 -8
  184. package/dist/lib/openapi/spec/index.d.ts +3 -0
  185. package/dist/lib/openapi/spec/index.js +3 -0
  186. package/dist/lib/openapi/spec/index.js.map +1 -1
  187. package/dist/lib/openapi/spec/instance-admin-stats-schema.d.ts +65 -2
  188. package/dist/lib/openapi/spec/instance-admin-stats-schema.js +65 -2
  189. package/dist/lib/openapi/spec/instance-admin-stats-schema.js.map +1 -1
  190. package/dist/lib/openapi/spec/override-schema.d.ts +5 -0
  191. package/dist/lib/openapi/spec/override-schema.js +5 -0
  192. package/dist/lib/openapi/spec/override-schema.js.map +1 -1
  193. package/dist/lib/openapi/spec/password-schema.d.ts +3 -0
  194. package/dist/lib/openapi/spec/password-schema.js +3 -0
  195. package/dist/lib/openapi/spec/password-schema.js.map +1 -1
  196. package/dist/lib/openapi/spec/playground-feature-schema.d.ts +41 -1
  197. package/dist/lib/openapi/spec/playground-feature-schema.js +6 -1
  198. package/dist/lib/openapi/spec/playground-feature-schema.js.map +1 -1
  199. package/dist/lib/openapi/spec/playground-feature-schema.test.js +3 -0
  200. package/dist/lib/openapi/spec/playground-feature-schema.test.js.map +1 -1
  201. package/dist/lib/openapi/spec/playground-request-schema.d.ts +7 -1
  202. package/dist/lib/openapi/spec/playground-request-schema.js +1 -1
  203. package/dist/lib/openapi/spec/playground-request-schema.js.map +1 -1
  204. package/dist/lib/openapi/spec/playground-response-schema.d.ts +93 -3
  205. package/dist/lib/openapi/spec/playground-strategy-schema.d.ts +13 -1
  206. package/dist/lib/openapi/spec/playground-strategy-schema.js +13 -0
  207. package/dist/lib/openapi/spec/playground-strategy-schema.js.map +1 -1
  208. package/dist/lib/openapi/spec/profile-schema.d.ts +49 -2
  209. package/dist/lib/openapi/spec/project-overview-schema.d.ts +104 -4
  210. package/dist/lib/openapi/spec/project-overview-schema.js +6 -0
  211. package/dist/lib/openapi/spec/project-overview-schema.js.map +1 -1
  212. package/dist/lib/openapi/spec/push-variants-schema.d.ts +26 -0
  213. package/dist/lib/openapi/spec/sdk-context-schema.d.ts +6 -0
  214. package/dist/lib/openapi/spec/sdk-context-schema.js +14 -2
  215. package/dist/lib/openapi/spec/sdk-context-schema.js.map +1 -1
  216. package/dist/lib/openapi/spec/state-schema.d.ts +72 -4
  217. package/dist/lib/openapi/spec/variant-schema.d.ts +21 -0
  218. package/dist/lib/openapi/spec/variant-schema.js +13 -0
  219. package/dist/lib/openapi/spec/variant-schema.js.map +1 -1
  220. package/dist/lib/openapi/spec/variants-schema.d.ts +26 -0
  221. package/dist/lib/openapi/util/create-response-schema.d.ts +1 -0
  222. package/dist/lib/openapi/util/create-response-schema.js +7 -1
  223. package/dist/lib/openapi/util/create-response-schema.js.map +1 -1
  224. package/dist/lib/proxy/proxy-repository.js +1 -1
  225. package/dist/lib/proxy/proxy-repository.js.map +1 -1
  226. package/dist/lib/routes/admin-api/api-token.d.ts +2 -0
  227. package/dist/lib/routes/admin-api/api-token.js +120 -11
  228. package/dist/lib/routes/admin-api/api-token.js.map +1 -1
  229. package/dist/lib/routes/admin-api/context.d.ts +3 -0
  230. package/dist/lib/routes/admin-api/context.js +21 -0
  231. package/dist/lib/routes/admin-api/context.js.map +1 -1
  232. package/dist/lib/routes/admin-api/index.js +1 -1
  233. package/dist/lib/routes/admin-api/index.js.map +1 -1
  234. package/dist/lib/routes/admin-api/instance-admin.d.ts +3 -1
  235. package/dist/lib/routes/admin-api/instance-admin.js +41 -0
  236. package/dist/lib/routes/admin-api/instance-admin.js.map +1 -1
  237. package/dist/lib/routes/admin-api/metrics.test.js +12 -0
  238. package/dist/lib/routes/admin-api/metrics.test.js.map +1 -1
  239. package/dist/lib/routes/admin-api/project/api-token.js +7 -0
  240. package/dist/lib/routes/admin-api/project/api-token.js.map +1 -1
  241. package/dist/lib/routes/admin-api/user/user.js +5 -4
  242. package/dist/lib/routes/admin-api/user/user.js.map +1 -1
  243. package/dist/lib/routes/admin-api/user/user.test.js +30 -5
  244. package/dist/lib/routes/admin-api/user/user.test.js.map +1 -1
  245. package/dist/lib/routes/admin-api/user-admin.js +0 -1
  246. package/dist/lib/routes/admin-api/user-admin.js.map +1 -1
  247. package/dist/lib/routes/client-api/feature.js +4 -0
  248. package/dist/lib/routes/client-api/feature.js.map +1 -1
  249. package/dist/lib/routes/client-api/metrics.js +2 -0
  250. package/dist/lib/routes/client-api/metrics.js.map +1 -1
  251. package/dist/lib/routes/client-api/register.js +2 -0
  252. package/dist/lib/routes/client-api/register.js.map +1 -1
  253. package/dist/lib/routes/controller.d.ts +8 -7
  254. package/dist/lib/routes/controller.js +11 -10
  255. package/dist/lib/routes/controller.js.map +1 -1
  256. package/dist/lib/routes/health-check.js +2 -0
  257. package/dist/lib/routes/health-check.js.map +1 -1
  258. package/dist/lib/server-impl.js +1 -1
  259. package/dist/lib/server-impl.js.map +1 -1
  260. package/dist/lib/services/access-service.d.ts +6 -4
  261. package/dist/lib/services/access-service.js +47 -11
  262. package/dist/lib/services/access-service.js.map +1 -1
  263. package/dist/lib/services/access-service.test.js +39 -22
  264. package/dist/lib/services/access-service.test.js.map +1 -1
  265. package/dist/lib/services/api-token-service.d.ts +1 -0
  266. package/dist/lib/services/api-token-service.js +3 -0
  267. package/dist/lib/services/api-token-service.js.map +1 -1
  268. package/dist/lib/services/context-service.d.ts +4 -1
  269. package/dist/lib/services/context-service.js +14 -1
  270. package/dist/lib/services/context-service.js.map +1 -1
  271. package/dist/lib/services/feature-toggle-service.d.ts +1 -1
  272. package/dist/lib/services/feature-toggle-service.js +6 -7
  273. package/dist/lib/services/feature-toggle-service.js.map +1 -1
  274. package/dist/lib/services/group-service.js +1 -3
  275. package/dist/lib/services/group-service.js.map +1 -1
  276. package/dist/lib/services/index.d.ts +1 -1
  277. package/dist/lib/services/index.js +1 -1
  278. package/dist/lib/services/index.js.map +1 -1
  279. package/dist/lib/services/instance-stats-service.d.ts +2 -3
  280. package/dist/lib/services/project-service.js +1 -0
  281. package/dist/lib/services/project-service.js.map +1 -1
  282. package/dist/lib/services/user-service.d.ts +1 -0
  283. package/dist/lib/services/user-service.js +8 -0
  284. package/dist/lib/services/user-service.js.map +1 -1
  285. package/dist/lib/services/version-service.d.ts +37 -1
  286. package/dist/lib/services/version-service.js +76 -5
  287. package/dist/lib/services/version-service.js.map +1 -1
  288. package/dist/lib/services/version-service.test.js +196 -9
  289. package/dist/lib/services/version-service.test.js.map +1 -1
  290. package/dist/lib/types/experimental.d.ts +1 -1
  291. package/dist/lib/types/experimental.js +6 -2
  292. package/dist/lib/types/experimental.js.map +1 -1
  293. package/dist/lib/types/model.d.ts +9 -4
  294. package/dist/lib/types/model.js +1 -0
  295. package/dist/lib/types/model.js.map +1 -1
  296. package/dist/lib/types/option.d.ts +2 -0
  297. package/dist/lib/types/permissions.d.ts +34 -27
  298. package/dist/lib/types/permissions.js +85 -29
  299. package/dist/lib/types/permissions.js.map +1 -1
  300. package/dist/lib/types/services.d.ts +1 -1
  301. package/dist/lib/types/stores/access-store.d.ts +1 -1
  302. package/dist/lib/types/stores/context-field-store.d.ts +2 -0
  303. package/dist/lib/types/stores/environment-store.d.ts +1 -0
  304. package/dist/lib/types/stores/feature-strategies-store.d.ts +2 -0
  305. package/dist/lib/types/stores/feature-toggle-store.d.ts +1 -1
  306. package/dist/lib/types/stores/group-store.d.ts +1 -1
  307. package/dist/lib/util/constants.d.ts +7 -1
  308. package/dist/lib/util/constants.js +8 -2
  309. package/dist/lib/util/constants.js.map +1 -1
  310. package/dist/lib/util/ensureArray.d.ts +1 -0
  311. package/dist/lib/util/ensureArray.js +8 -0
  312. package/dist/lib/util/ensureArray.js.map +1 -0
  313. package/dist/lib/util/index.d.ts +1 -1
  314. package/dist/lib/util/index.js +1 -1
  315. package/dist/lib/util/index.js.map +1 -1
  316. package/dist/migrations/20230615122909-fix-env-sort-order.d.ts +2 -0
  317. package/dist/migrations/20230615122909-fix-env-sort-order.js +28 -0
  318. package/dist/migrations/20230615122909-fix-env-sort-order.js.map +1 -0
  319. package/dist/migrations/20230619105029-new-fine-grained-api-token-permissions.d.ts +2 -0
  320. package/dist/migrations/20230619105029-new-fine-grained-api-token-permissions.js +26 -0
  321. package/dist/migrations/20230619105029-new-fine-grained-api-token-permissions.js.map +1 -0
  322. package/dist/migrations/20230619110243-assign-apitoken-permissions-to-rootroles.d.ts +2 -0
  323. package/dist/migrations/20230619110243-assign-apitoken-permissions-to-rootroles.js +23 -0
  324. package/dist/migrations/20230619110243-assign-apitoken-permissions-to-rootroles.js.map +1 -0
  325. package/dist/migrations/20230621141239-refactor-api-token-permissions.d.ts +2 -0
  326. package/dist/migrations/20230621141239-refactor-api-token-permissions.js +19 -0
  327. package/dist/migrations/20230621141239-refactor-api-token-permissions.js.map +1 -0
  328. package/dist/server-dev.js +3 -3
  329. package/dist/server-dev.js.map +1 -1
  330. package/dist/test/arbitraries.test.js +3 -1
  331. package/dist/test/arbitraries.test.js.map +1 -1
  332. package/dist/test/config/test-config.js +0 -1
  333. package/dist/test/config/test-config.js.map +1 -1
  334. package/dist/test/e2e/api/admin/api-token.auth.e2e.test.js +542 -3
  335. package/dist/test/e2e/api/admin/api-token.auth.e2e.test.js.map +1 -1
  336. package/dist/test/e2e/api/admin/api-token.e2e.test.js +14 -1
  337. package/dist/test/e2e/api/admin/api-token.e2e.test.js.map +1 -1
  338. package/dist/test/e2e/api/admin/client-metrics.e2e.test.js +1 -8
  339. package/dist/test/e2e/api/admin/client-metrics.e2e.test.js.map +1 -1
  340. package/dist/test/e2e/api/admin/context.e2e.test.js +47 -1
  341. package/dist/test/e2e/api/admin/context.e2e.test.js.map +1 -1
  342. package/dist/test/e2e/api/admin/project/features.e2e.test.js +14 -14
  343. package/dist/test/e2e/api/admin/project/features.e2e.test.js.map +1 -1
  344. package/dist/test/e2e/api/admin/project/projects.e2e.test.js +14 -0
  345. package/dist/test/e2e/api/admin/project/projects.e2e.test.js.map +1 -1
  346. package/dist/test/e2e/helpers/test-helper.d.ts +1 -1
  347. package/dist/test/e2e/helpers/test-helper.js +4 -2
  348. package/dist/test/e2e/helpers/test-helper.js.map +1 -1
  349. package/dist/test/e2e/services/access-service.e2e.test.js +1 -1
  350. package/dist/test/e2e/services/access-service.e2e.test.js.map +1 -1
  351. package/dist/test/e2e/services/playground-service.test.js +2 -2
  352. package/dist/test/e2e/services/playground-service.test.js.map +1 -1
  353. package/dist/test/fixtures/access-service-mock.js +1 -1
  354. package/dist/test/fixtures/access-service-mock.js.map +1 -1
  355. package/dist/test/fixtures/fake-access-store.d.ts +5 -3
  356. package/dist/test/fixtures/fake-access-store.js +24 -9
  357. package/dist/test/fixtures/fake-access-store.js.map +1 -1
  358. package/dist/test/fixtures/fake-environment-store.d.ts +1 -0
  359. package/dist/test/fixtures/fake-environment-store.js +3 -0
  360. package/dist/test/fixtures/fake-environment-store.js.map +1 -1
  361. package/dist/test/fixtures/fake-feature-strategies-store.d.ts +2 -0
  362. package/dist/test/fixtures/fake-feature-strategies-store.js +7 -0
  363. package/dist/test/fixtures/fake-feature-strategies-store.js.map +1 -1
  364. package/dist/test/fixtures/fake-group-store.d.ts +1 -1
  365. package/dist/test/fixtures/fake-group-store.js +1 -1
  366. package/dist/test/fixtures/fake-group-store.js.map +1 -1
  367. package/dist/test/fixtures/fake-role-store.d.ts +1 -1
  368. package/dist/test/fixtures/fake-role-store.js +9 -4
  369. package/dist/test/fixtures/fake-role-store.js.map +1 -1
  370. package/frontend/build/index.html +1 -1
  371. package/frontend/build/static/AdvancedPlayground-520a25e1.js +1 -0
  372. package/frontend/build/static/CreateProject-c430691b.js +4 -0
  373. package/frontend/build/static/{Error-5606eccd.js → Error-492e8b38.js} +1 -1
  374. package/frontend/build/static/FeatureArchiveDialog-70daa567.js +10 -0
  375. package/frontend/build/static/{FeatureMetricsChart-1c6bb078.js → FeatureMetricsChart-bc99b364.js} +2 -2
  376. package/frontend/build/static/FeatureViewLazyExport-01d70575.js +7 -0
  377. package/frontend/build/static/LazyAdminExport-e2c90193.js +37 -0
  378. package/frontend/build/static/LazyProjectExport-fa62d2fe.js +13 -0
  379. package/frontend/build/static/NetworkOverview-3b72e4ea.js +1298 -0
  380. package/frontend/build/static/NetworkTraffic-365db744.js +1 -0
  381. package/frontend/build/static/Playground-b473b399.js +1 -0
  382. package/frontend/build/static/{Playground-6602cb1a.js → PlaygroundGuidancePopper-8e3e97db.js} +12 -12
  383. package/frontend/build/static/RoleCell-9bb513a8.js +1 -0
  384. package/frontend/build/static/StrategyItemContainer-1f7503c7.js +1 -0
  385. package/frontend/build/static/{chartjs-adapter-date-fns.esm-c75aa905.js → chartjs-adapter-date-fns.esm-db338d44.js} +1 -1
  386. package/frontend/build/static/flowchart-elk-definition-170a3958-a428dd25.js +134 -0
  387. package/frontend/build/static/index-0a56292a.js +450 -0
  388. package/frontend/build/static/{index-b3def5eb.js → index-d362ae7a.js} +1 -1
  389. package/frontend/build/static/{index-f8439975.js → index-dc5debe9.js} +1 -1
  390. package/frontend/build/static/is_dark-884249e0.js +1 -0
  391. package/frontend/build/static/mindmap-definition-44684416-3c9425ff.js +101 -0
  392. package/frontend/build/static/stringify-ec884b6d.js +1 -0
  393. package/frontend/build/static/timeline-definition-8e5a9bc6-d289cd6d.js +62 -0
  394. package/frontend/build/static/{unknownify-6683037a.js → unknownify-5b23bf29.js} +1 -1
  395. package/frontend/package.json +18 -17
  396. package/package.json +16 -13
  397. package/dist/lib/routes/admin-api/playground.d.ts +0 -12
  398. package/dist/lib/routes/admin-api/playground.js +0 -46
  399. package/dist/lib/routes/admin-api/playground.js.map +0 -1
  400. package/dist/lib/routes/admin-api/playground.test.js.map +0 -1
  401. package/dist/lib/services/playground-service.d.ts +0 -12
  402. package/dist/lib/services/playground-service.js +0 -65
  403. package/dist/lib/services/playground-service.js.map +0 -1
  404. package/dist/lib/util/feature-evaluator/client.js.map +0 -1
  405. package/dist/lib/util/feature-evaluator/constraint.js.map +0 -1
  406. package/dist/lib/util/feature-evaluator/context.js.map +0 -1
  407. package/dist/lib/util/feature-evaluator/feature-evaluator.js.map +0 -1
  408. package/dist/lib/util/feature-evaluator/feature.js.map +0 -1
  409. package/dist/lib/util/feature-evaluator/helpers.js.map +0 -1
  410. package/dist/lib/util/feature-evaluator/index.js.map +0 -1
  411. package/dist/lib/util/feature-evaluator/repository/bootstrap-provider.js.map +0 -1
  412. package/dist/lib/util/feature-evaluator/repository/index.js.map +0 -1
  413. package/dist/lib/util/feature-evaluator/repository/storage-provider-in-mem.js.map +0 -1
  414. package/dist/lib/util/feature-evaluator/repository/storage-provider.js.map +0 -1
  415. package/dist/lib/util/feature-evaluator/strategy/application-hostname-strategy.js.map +0 -1
  416. package/dist/lib/util/feature-evaluator/strategy/default-strategy.js.map +0 -1
  417. package/dist/lib/util/feature-evaluator/strategy/flexible-rollout-strategy.js.map +0 -1
  418. package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-random.js.map +0 -1
  419. package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-session-id.js.map +0 -1
  420. package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-user-id.js.map +0 -1
  421. package/dist/lib/util/feature-evaluator/strategy/index.js.map +0 -1
  422. package/dist/lib/util/feature-evaluator/strategy/remote-address-strategy.js.map +0 -1
  423. package/dist/lib/util/feature-evaluator/strategy/strategy.js.map +0 -1
  424. package/dist/lib/util/feature-evaluator/strategy/unknown-strategy.js.map +0 -1
  425. package/dist/lib/util/feature-evaluator/strategy/user-with-id-strategy.js.map +0 -1
  426. package/dist/lib/util/feature-evaluator/strategy/util.js.map +0 -1
  427. package/dist/lib/util/feature-evaluator/variant.js.map +0 -1
  428. package/dist/lib/util/offline-unleash-client.js.map +0 -1
  429. package/dist/lib/util/offline-unleash-client.test.js.map +0 -1
  430. package/frontend/build/static/CreateProject-217f67b6.js +0 -4
  431. package/frontend/build/static/FeatureArchiveDialog-c311c641.js +0 -4
  432. package/frontend/build/static/FeatureViewLazyExport-06cf4baa.js +0 -7
  433. package/frontend/build/static/LazyAdminExport-04c8032d.js +0 -43
  434. package/frontend/build/static/LazyProjectExport-d9663a8c.js +0 -19
  435. package/frontend/build/static/NetworkOverview-2bce4916.js +0 -1296
  436. package/frontend/build/static/NetworkTraffic-7db94d86.js +0 -1
  437. package/frontend/build/static/StrategyItemContainer-0140b94f.js +0 -1
  438. package/frontend/build/static/index-1f392976.js +0 -450
  439. package/frontend/build/static/useProjectRole-122ac4bb.js +0 -1
  440. package/frontend/build/static/v4-a960c1f4.js +0 -1
  441. /package/dist/lib/{routes/admin-api/playground.test.d.ts → db/feature-strategy-store.test.d.ts} +0 -0
  442. /package/dist/lib/{util → features/playground}/feature-evaluator/constraint.d.ts +0 -0
  443. /package/dist/lib/{util → features/playground}/feature-evaluator/constraint.js +0 -0
  444. /package/dist/lib/{util → features/playground}/feature-evaluator/context.d.ts +0 -0
  445. /package/dist/lib/{util → features/playground}/feature-evaluator/context.js +0 -0
  446. /package/dist/lib/{util → features/playground}/feature-evaluator/feature-evaluator.d.ts +0 -0
  447. /package/dist/lib/{util → features/playground}/feature-evaluator/feature-evaluator.js +0 -0
  448. /package/dist/lib/{util → features/playground}/feature-evaluator/feature.d.ts +0 -0
  449. /package/dist/lib/{util → features/playground}/feature-evaluator/feature.js +0 -0
  450. /package/dist/lib/{util → features/playground}/feature-evaluator/helpers.js +0 -0
  451. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/bootstrap-provider.d.ts +0 -0
  452. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/bootstrap-provider.js +0 -0
  453. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/index.d.ts +0 -0
  454. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/index.js +0 -0
  455. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/storage-provider-in-mem.d.ts +0 -0
  456. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/storage-provider-in-mem.js +0 -0
  457. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/storage-provider.d.ts +0 -0
  458. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/storage-provider.js +0 -0
  459. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/application-hostname-strategy.d.ts +0 -0
  460. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/application-hostname-strategy.js +0 -0
  461. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/default-strategy.d.ts +0 -0
  462. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/default-strategy.js +0 -0
  463. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/flexible-rollout-strategy.d.ts +0 -0
  464. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/flexible-rollout-strategy.js +0 -0
  465. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/gradual-rollout-random.d.ts +0 -0
  466. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/gradual-rollout-random.js +0 -0
  467. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/gradual-rollout-session-id.d.ts +0 -0
  468. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/gradual-rollout-session-id.js +0 -0
  469. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/gradual-rollout-user-id.d.ts +0 -0
  470. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/gradual-rollout-user-id.js +0 -0
  471. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/index.d.ts +0 -0
  472. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/index.js +0 -0
  473. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/remote-address-strategy.d.ts +0 -0
  474. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/remote-address-strategy.js +0 -0
  475. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/strategy.d.ts +0 -0
  476. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/strategy.js +0 -0
  477. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/unknown-strategy.d.ts +0 -0
  478. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/user-with-id-strategy.d.ts +0 -0
  479. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/user-with-id-strategy.js +0 -0
  480. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/util.d.ts +0 -0
  481. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/util.js +0 -0
  482. /package/dist/lib/{util → features/playground}/feature-evaluator/variant.d.ts +0 -0
  483. /package/dist/lib/{util → features/playground}/feature-evaluator/variant.js +0 -0
  484. /package/dist/lib/{util → features/playground}/offline-unleash-client.d.ts +0 -0
  485. /package/dist/lib/{util → features/playground}/offline-unleash-client.test.d.ts +0 -0
@@ -107,7 +107,7 @@ export declare const featureEnvironmentSchema: {
107
107
  };
108
108
  readonly featureStrategySchema: {
109
109
  readonly $id: "#/components/schemas/featureStrategySchema";
110
- readonly description: "A singles activation strategy configuration schema for a feature";
110
+ readonly description: "A single activation strategy configuration schema for a feature";
111
111
  readonly type: "object";
112
112
  readonly additionalProperties: false;
113
113
  readonly required: readonly ["name"];
@@ -224,23 +224,34 @@ export declare const featureEnvironmentSchema: {
224
224
  readonly $id: "#/components/schemas/variantSchema";
225
225
  readonly type: "object";
226
226
  readonly additionalProperties: false;
227
+ readonly description: "A variant allows for further separation of users into segments. See [our excellent documentation](https://docs.getunleash.io/reference/feature-toggle-variants#what-are-variants) for a more detailed description";
227
228
  readonly required: readonly ["name", "weight"];
228
229
  readonly properties: {
229
230
  readonly name: {
230
231
  readonly type: "string";
232
+ readonly description: "The variants name. Is unique for this feature toggle";
233
+ readonly example: "blue_group";
231
234
  };
232
235
  readonly weight: {
233
236
  readonly type: "number";
237
+ readonly description: "The weight is the likelihood of any one user getting this variant. It is a number between 0 and 1000. See the section on [variant weights](https://docs.getunleash.io/reference/feature-toggle-variants#variant-weight) for more information";
238
+ readonly minimum: 0;
239
+ readonly maximum: 1000;
234
240
  };
235
241
  readonly weightType: {
242
+ 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";
236
243
  readonly type: "string";
244
+ readonly example: "fix";
237
245
  };
238
246
  readonly stickiness: {
239
247
  readonly type: "string";
248
+ readonly description: "[Stickiness](https://docs.getunleash.io/reference/feature-toggle-variants#variant-stickiness) is how Unleash guarantees that the same user gets the same variant every time";
249
+ readonly example: "custom.context.field";
240
250
  };
241
251
  readonly payload: {
242
252
  readonly type: "object";
243
253
  readonly required: readonly ["type", "value"];
254
+ readonly description: "Extra data configured for this variant";
244
255
  readonly properties: {
245
256
  readonly type: {
246
257
  readonly type: "string";
@@ -249,8 +260,13 @@ export declare const featureEnvironmentSchema: {
249
260
  readonly type: "string";
250
261
  };
251
262
  };
263
+ readonly example: {
264
+ readonly type: "json";
265
+ readonly value: "{color: red}";
266
+ };
252
267
  };
253
268
  readonly overrides: {
269
+ readonly description: "Overrides assigning specific variants to specific users. The weighting system automatically assigns users to specific groups for you, but any overrides in this list will take precedence.";
254
270
  readonly type: "array";
255
271
  readonly items: {
256
272
  readonly $ref: "#/components/schemas/overrideSchema";
@@ -264,15 +280,20 @@ export declare const featureEnvironmentSchema: {
264
280
  readonly type: "object";
265
281
  readonly additionalProperties: false;
266
282
  readonly required: readonly ["contextName", "values"];
283
+ readonly description: "An override for deciding which variant should be assigned to a user based on the context name";
267
284
  readonly properties: {
268
285
  readonly contextName: {
286
+ readonly description: "The name of the context field used to determine overrides";
269
287
  readonly type: "string";
288
+ readonly example: "userId";
270
289
  };
271
290
  readonly values: {
291
+ readonly description: "Which values that should be overriden";
272
292
  readonly type: "array";
273
293
  readonly items: {
274
294
  readonly type: "string";
275
295
  };
296
+ readonly example: readonly ["red", "blue"];
276
297
  };
277
298
  };
278
299
  readonly components: {};
@@ -254,7 +254,7 @@ export declare const featureSchema: {
254
254
  };
255
255
  readonly featureStrategySchema: {
256
256
  readonly $id: "#/components/schemas/featureStrategySchema";
257
- readonly description: "A singles activation strategy configuration schema for a feature";
257
+ readonly description: "A single activation strategy configuration schema for a feature";
258
258
  readonly type: "object";
259
259
  readonly additionalProperties: false;
260
260
  readonly required: readonly ["name"];
@@ -371,23 +371,34 @@ export declare const featureSchema: {
371
371
  readonly $id: "#/components/schemas/variantSchema";
372
372
  readonly type: "object";
373
373
  readonly additionalProperties: false;
374
+ readonly description: "A variant allows for further separation of users into segments. See [our excellent documentation](https://docs.getunleash.io/reference/feature-toggle-variants#what-are-variants) for a more detailed description";
374
375
  readonly required: readonly ["name", "weight"];
375
376
  readonly properties: {
376
377
  readonly name: {
377
378
  readonly type: "string";
379
+ readonly description: "The variants name. Is unique for this feature toggle";
380
+ readonly example: "blue_group";
378
381
  };
379
382
  readonly weight: {
380
383
  readonly type: "number";
384
+ readonly description: "The weight is the likelihood of any one user getting this variant. It is a number between 0 and 1000. See the section on [variant weights](https://docs.getunleash.io/reference/feature-toggle-variants#variant-weight) for more information";
385
+ readonly minimum: 0;
386
+ readonly maximum: 1000;
381
387
  };
382
388
  readonly weightType: {
389
+ 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";
383
390
  readonly type: "string";
391
+ readonly example: "fix";
384
392
  };
385
393
  readonly stickiness: {
386
394
  readonly type: "string";
395
+ readonly description: "[Stickiness](https://docs.getunleash.io/reference/feature-toggle-variants#variant-stickiness) is how Unleash guarantees that the same user gets the same variant every time";
396
+ readonly example: "custom.context.field";
387
397
  };
388
398
  readonly payload: {
389
399
  readonly type: "object";
390
400
  readonly required: readonly ["type", "value"];
401
+ readonly description: "Extra data configured for this variant";
391
402
  readonly properties: {
392
403
  readonly type: {
393
404
  readonly type: "string";
@@ -396,8 +407,13 @@ export declare const featureSchema: {
396
407
  readonly type: "string";
397
408
  };
398
409
  };
410
+ readonly example: {
411
+ readonly type: "json";
412
+ readonly value: "{color: red}";
413
+ };
399
414
  };
400
415
  readonly overrides: {
416
+ readonly description: "Overrides assigning specific variants to specific users. The weighting system automatically assigns users to specific groups for you, but any overrides in this list will take precedence.";
401
417
  readonly type: "array";
402
418
  readonly items: {
403
419
  readonly $ref: "#/components/schemas/overrideSchema";
@@ -411,15 +427,20 @@ export declare const featureSchema: {
411
427
  readonly type: "object";
412
428
  readonly additionalProperties: false;
413
429
  readonly required: readonly ["contextName", "values"];
430
+ readonly description: "An override for deciding which variant should be assigned to a user based on the context name";
414
431
  readonly properties: {
415
432
  readonly contextName: {
433
+ readonly description: "The name of the context field used to determine overrides";
416
434
  readonly type: "string";
435
+ readonly example: "userId";
417
436
  };
418
437
  readonly values: {
438
+ readonly description: "Which values that should be overriden";
419
439
  readonly type: "array";
420
440
  readonly items: {
421
441
  readonly type: "string";
422
442
  };
443
+ readonly example: readonly ["red", "blue"];
423
444
  };
424
445
  };
425
446
  readonly components: {};
@@ -432,7 +453,7 @@ export declare const featureSchema: {
432
453
  };
433
454
  readonly featureStrategySchema: {
434
455
  readonly $id: "#/components/schemas/featureStrategySchema";
435
- readonly description: "A singles activation strategy configuration schema for a feature";
456
+ readonly description: "A single activation strategy configuration schema for a feature";
436
457
  readonly type: "object";
437
458
  readonly additionalProperties: false;
438
459
  readonly required: readonly ["name"];
@@ -550,15 +571,20 @@ export declare const featureSchema: {
550
571
  readonly type: "object";
551
572
  readonly additionalProperties: false;
552
573
  readonly required: readonly ["contextName", "values"];
574
+ readonly description: "An override for deciding which variant should be assigned to a user based on the context name";
553
575
  readonly properties: {
554
576
  readonly contextName: {
577
+ readonly description: "The name of the context field used to determine overrides";
555
578
  readonly type: "string";
579
+ readonly example: "userId";
556
580
  };
557
581
  readonly values: {
582
+ readonly description: "Which values that should be overriden";
558
583
  readonly type: "array";
559
584
  readonly items: {
560
585
  readonly type: "string";
561
586
  };
587
+ readonly example: readonly ["red", "blue"];
562
588
  };
563
589
  };
564
590
  readonly components: {};
@@ -575,23 +601,34 @@ export declare const featureSchema: {
575
601
  readonly $id: "#/components/schemas/variantSchema";
576
602
  readonly type: "object";
577
603
  readonly additionalProperties: false;
604
+ readonly description: "A variant allows for further separation of users into segments. See [our excellent documentation](https://docs.getunleash.io/reference/feature-toggle-variants#what-are-variants) for a more detailed description";
578
605
  readonly required: readonly ["name", "weight"];
579
606
  readonly properties: {
580
607
  readonly name: {
581
608
  readonly type: "string";
609
+ readonly description: "The variants name. Is unique for this feature toggle";
610
+ readonly example: "blue_group";
582
611
  };
583
612
  readonly weight: {
584
613
  readonly type: "number";
614
+ readonly description: "The weight is the likelihood of any one user getting this variant. It is a number between 0 and 1000. See the section on [variant weights](https://docs.getunleash.io/reference/feature-toggle-variants#variant-weight) for more information";
615
+ readonly minimum: 0;
616
+ readonly maximum: 1000;
585
617
  };
586
618
  readonly weightType: {
619
+ 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";
587
620
  readonly type: "string";
621
+ readonly example: "fix";
588
622
  };
589
623
  readonly stickiness: {
590
624
  readonly type: "string";
625
+ readonly description: "[Stickiness](https://docs.getunleash.io/reference/feature-toggle-variants#variant-stickiness) is how Unleash guarantees that the same user gets the same variant every time";
626
+ readonly example: "custom.context.field";
591
627
  };
592
628
  readonly payload: {
593
629
  readonly type: "object";
594
630
  readonly required: readonly ["type", "value"];
631
+ readonly description: "Extra data configured for this variant";
595
632
  readonly properties: {
596
633
  readonly type: {
597
634
  readonly type: "string";
@@ -600,8 +637,13 @@ export declare const featureSchema: {
600
637
  readonly type: "string";
601
638
  };
602
639
  };
640
+ readonly example: {
641
+ readonly type: "json";
642
+ readonly value: "{color: red}";
643
+ };
603
644
  };
604
645
  readonly overrides: {
646
+ readonly description: "Overrides assigning specific variants to specific users. The weighting system automatically assigns users to specific groups for you, but any overrides in this list will take precedence.";
605
647
  readonly type: "array";
606
648
  readonly items: {
607
649
  readonly $ref: "#/components/schemas/overrideSchema";
@@ -615,15 +657,20 @@ export declare const featureSchema: {
615
657
  readonly type: "object";
616
658
  readonly additionalProperties: false;
617
659
  readonly required: readonly ["contextName", "values"];
660
+ readonly description: "An override for deciding which variant should be assigned to a user based on the context name";
618
661
  readonly properties: {
619
662
  readonly contextName: {
663
+ readonly description: "The name of the context field used to determine overrides";
620
664
  readonly type: "string";
665
+ readonly example: "userId";
621
666
  };
622
667
  readonly values: {
668
+ readonly description: "Which values that should be overriden";
623
669
  readonly type: "array";
624
670
  readonly items: {
625
671
  readonly type: "string";
626
672
  };
673
+ readonly example: readonly ["red", "blue"];
627
674
  };
628
675
  };
629
676
  readonly components: {};
@@ -8,7 +8,7 @@ test('featureSchema', () => {
8
8
  {
9
9
  name: 'a',
10
10
  weight: 1,
11
- weightType: 'a',
11
+ weightType: 'fix',
12
12
  stickiness: 'a',
13
13
  overrides: [{ contextName: 'a', values: ['a'] }],
14
14
  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,GAAG;gBACf,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,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,7 +1,7 @@
1
1
  import { FromSchema } from 'json-schema-to-ts';
2
2
  export declare const featureStrategySchema: {
3
3
  readonly $id: "#/components/schemas/featureStrategySchema";
4
- readonly description: "A singles activation strategy configuration schema for a feature";
4
+ readonly description: "A single activation strategy configuration schema for a feature";
5
5
  readonly type: "object";
6
6
  readonly additionalProperties: false;
7
7
  readonly required: readonly ["name"];
@@ -5,7 +5,7 @@ const constraint_schema_1 = require("./constraint-schema");
5
5
  const parameters_schema_1 = require("./parameters-schema");
6
6
  exports.featureStrategySchema = {
7
7
  $id: '#/components/schemas/featureStrategySchema',
8
- description: 'A singles activation strategy configuration schema for a feature',
8
+ description: 'A single activation strategy configuration schema for a feature',
9
9
  type: 'object',
10
10
  additionalProperties: false,
11
11
  required: ['name'],
@@ -1 +1 @@
1
- {"version":3,"file":"feature-strategy-schema.js","sourceRoot":"","sources":["../../../../src/lib/openapi/spec/feature-strategy-schema.ts"],"names":[],"mappings":";;;AACA,2DAAuD;AACvD,2DAAuD;AAE1C,QAAA,qBAAqB,GAAG;IACjC,GAAG,EAAE,4CAA4C;IACjD,WAAW,EACP,kEAAkE;IACtE,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,CAAC;IAClB,UAAU,EAAE;QACR,EAAE,EAAE;YACA,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,iCAAiC;YAC9C,OAAO,EAAE,sCAAsC;SAClD;QACD,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,8BAA8B;YAC3C,OAAO,EAAE,iBAAiB;SAC7B;QACD,KAAK,EAAE;YACH,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,sCAAsC;YACnD,OAAO,EAAE,yBAAyB;YAClC,QAAQ,EAAE,IAAI;SACjB;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,SAAS;YACf,WAAW,EACP,oHAAoH;YACxH,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,IAAI;SACjB;QACD,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,iDAAiD;YAC9D,OAAO,EAAE,kBAAkB;SAC9B;QACD,SAAS,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,uCAAuC;YACpD,OAAO,EAAE,IAAI;SAChB;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,gDAAgD;YAC7D,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACf,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;aACjB;SACJ;QACD,WAAW,EAAE;YACT,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,oDAAoD;YACjE,KAAK,EAAE;gBACH,IAAI,EAAE,uCAAuC;aAChD;SACJ;QACD,UAAU,EAAE;YACR,IAAI,EAAE,uCAAuC;SAChD;KACJ;IACD,UAAU,EAAE;QACR,OAAO,EAAE;YACL,gBAAgB,EAAhB,oCAAgB;YAChB,gBAAgB,EAAhB,oCAAgB;SACnB;KACJ;CACK,CAAC"}
1
+ {"version":3,"file":"feature-strategy-schema.js","sourceRoot":"","sources":["../../../../src/lib/openapi/spec/feature-strategy-schema.ts"],"names":[],"mappings":";;;AACA,2DAAuD;AACvD,2DAAuD;AAE1C,QAAA,qBAAqB,GAAG;IACjC,GAAG,EAAE,4CAA4C;IACjD,WAAW,EACP,iEAAiE;IACrE,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,CAAC;IAClB,UAAU,EAAE;QACR,EAAE,EAAE;YACA,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,iCAAiC;YAC9C,OAAO,EAAE,sCAAsC;SAClD;QACD,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,8BAA8B;YAC3C,OAAO,EAAE,iBAAiB;SAC7B;QACD,KAAK,EAAE;YACH,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,sCAAsC;YACnD,OAAO,EAAE,yBAAyB;YAClC,QAAQ,EAAE,IAAI;SACjB;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,SAAS;YACf,WAAW,EACP,oHAAoH;YACxH,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,IAAI;SACjB;QACD,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,iDAAiD;YAC9D,OAAO,EAAE,kBAAkB;SAC9B;QACD,SAAS,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,uCAAuC;YACpD,OAAO,EAAE,IAAI;SAChB;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,gDAAgD;YAC7D,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACf,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;aACjB;SACJ;QACD,WAAW,EAAE;YACT,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,oDAAoD;YACjE,KAAK,EAAE;gBACH,IAAI,EAAE,uCAAuC;aAChD;SACJ;QACD,UAAU,EAAE;YACR,IAAI,EAAE,uCAAuC;SAChD;KACJ;IACD,UAAU,EAAE;QACR,OAAO,EAAE;YACL,gBAAgB,EAAhB,oCAAgB;YAChB,gBAAgB,EAAhB,oCAAgB;SACnB;KACJ;CACK,CAAC"}
@@ -21,23 +21,34 @@ export declare const featureVariantsSchema: {
21
21
  readonly $id: "#/components/schemas/variantSchema";
22
22
  readonly type: "object";
23
23
  readonly additionalProperties: false;
24
+ readonly description: "A variant allows for further separation of users into segments. See [our excellent documentation](https://docs.getunleash.io/reference/feature-toggle-variants#what-are-variants) for a more detailed description";
24
25
  readonly required: readonly ["name", "weight"];
25
26
  readonly properties: {
26
27
  readonly name: {
27
28
  readonly type: "string";
29
+ readonly description: "The variants name. Is unique for this feature toggle";
30
+ readonly example: "blue_group";
28
31
  };
29
32
  readonly weight: {
30
33
  readonly type: "number";
34
+ readonly description: "The weight is the likelihood of any one user getting this variant. It is a number between 0 and 1000. See the section on [variant weights](https://docs.getunleash.io/reference/feature-toggle-variants#variant-weight) for more information";
35
+ readonly minimum: 0;
36
+ readonly maximum: 1000;
31
37
  };
32
38
  readonly weightType: {
39
+ 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";
33
40
  readonly type: "string";
41
+ readonly example: "fix";
34
42
  };
35
43
  readonly stickiness: {
36
44
  readonly type: "string";
45
+ readonly description: "[Stickiness](https://docs.getunleash.io/reference/feature-toggle-variants#variant-stickiness) is how Unleash guarantees that the same user gets the same variant every time";
46
+ readonly example: "custom.context.field";
37
47
  };
38
48
  readonly payload: {
39
49
  readonly type: "object";
40
50
  readonly required: readonly ["type", "value"];
51
+ readonly description: "Extra data configured for this variant";
41
52
  readonly properties: {
42
53
  readonly type: {
43
54
  readonly type: "string";
@@ -46,8 +57,13 @@ export declare const featureVariantsSchema: {
46
57
  readonly type: "string";
47
58
  };
48
59
  };
60
+ readonly example: {
61
+ readonly type: "json";
62
+ readonly value: "{color: red}";
63
+ };
49
64
  };
50
65
  readonly overrides: {
66
+ readonly description: "Overrides assigning specific variants to specific users. The weighting system automatically assigns users to specific groups for you, but any overrides in this list will take precedence.";
51
67
  readonly type: "array";
52
68
  readonly items: {
53
69
  readonly $ref: "#/components/schemas/overrideSchema";
@@ -61,15 +77,20 @@ export declare const featureVariantsSchema: {
61
77
  readonly type: "object";
62
78
  readonly additionalProperties: false;
63
79
  readonly required: readonly ["contextName", "values"];
80
+ readonly description: "An override for deciding which variant should be assigned to a user based on the context name";
64
81
  readonly properties: {
65
82
  readonly contextName: {
83
+ readonly description: "The name of the context field used to determine overrides";
66
84
  readonly type: "string";
85
+ readonly example: "userId";
67
86
  };
68
87
  readonly values: {
88
+ readonly description: "Which values that should be overriden";
69
89
  readonly type: "array";
70
90
  readonly items: {
71
91
  readonly type: "string";
72
92
  };
93
+ readonly example: readonly ["red", "blue"];
73
94
  };
74
95
  };
75
96
  readonly components: {};
@@ -82,15 +103,20 @@ export declare const featureVariantsSchema: {
82
103
  readonly type: "object";
83
104
  readonly additionalProperties: false;
84
105
  readonly required: readonly ["contextName", "values"];
106
+ readonly description: "An override for deciding which variant should be assigned to a user based on the context name";
85
107
  readonly properties: {
86
108
  readonly contextName: {
109
+ readonly description: "The name of the context field used to determine overrides";
87
110
  readonly type: "string";
111
+ readonly example: "userId";
88
112
  };
89
113
  readonly values: {
114
+ readonly description: "Which values that should be overriden";
90
115
  readonly type: "array";
91
116
  readonly items: {
92
117
  readonly type: "string";
93
118
  };
119
+ readonly example: readonly ["red", "blue"];
94
120
  };
95
121
  };
96
122
  readonly components: {};