unleash-server 7.2.1 → 7.2.3

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 (385) hide show
  1. package/README.md +21 -10
  2. package/dist/lib/db/feature-environment-store.d.ts +1 -1
  3. package/dist/lib/db/feature-environment-store.d.ts.map +1 -1
  4. package/dist/lib/db/feature-environment-store.js +42 -35
  5. package/dist/lib/db/feature-environment-store.js.map +1 -1
  6. package/dist/lib/db/index.d.ts.map +1 -1
  7. package/dist/lib/db/index.js +2 -0
  8. package/dist/lib/db/index.js.map +1 -1
  9. package/dist/lib/error/unleash-error.d.ts.map +1 -1
  10. package/dist/lib/error/unleash-error.js +2 -2
  11. package/dist/lib/error/unleash-error.js.map +1 -1
  12. package/dist/lib/events/index.d.ts +7 -1
  13. package/dist/lib/events/index.d.ts.map +1 -1
  14. package/dist/lib/events/index.js +12 -0
  15. package/dist/lib/events/index.js.map +1 -1
  16. package/dist/lib/features/api-tokens/createApiTokenService.d.ts +2 -0
  17. package/dist/lib/features/api-tokens/createApiTokenService.d.ts.map +1 -1
  18. package/dist/lib/features/api-tokens/createApiTokenService.js +6 -2
  19. package/dist/lib/features/api-tokens/createApiTokenService.js.map +1 -1
  20. package/dist/lib/features/client-feature-toggles/client-feature-toggle.controller.d.ts.map +1 -1
  21. package/dist/lib/features/client-feature-toggles/client-feature-toggle.controller.js +2 -9
  22. package/dist/lib/features/client-feature-toggles/client-feature-toggle.controller.js.map +1 -1
  23. package/dist/lib/features/dependent-features/dependent.features.e2e.test.js +28 -29
  24. package/dist/lib/features/dependent-features/dependent.features.e2e.test.js.map +1 -1
  25. package/dist/lib/features/feature-toggle/createFeatureToggleService.d.ts.map +1 -1
  26. package/dist/lib/features/feature-toggle/createFeatureToggleService.js +14 -4
  27. package/dist/lib/features/feature-toggle/createFeatureToggleService.js.map +1 -1
  28. package/dist/lib/features/feature-toggle/fakes/fake-feature-strategies-store.d.ts.map +1 -1
  29. package/dist/lib/features/feature-toggle/fakes/fake-feature-strategies-store.js +2 -1
  30. package/dist/lib/features/feature-toggle/fakes/fake-feature-strategies-store.js.map +1 -1
  31. package/dist/lib/features/feature-toggle/feature-toggle-service.d.ts +9 -3
  32. package/dist/lib/features/feature-toggle/feature-toggle-service.d.ts.map +1 -1
  33. package/dist/lib/features/feature-toggle/feature-toggle-service.js +23 -7
  34. package/dist/lib/features/feature-toggle/feature-toggle-service.js.map +1 -1
  35. package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.d.ts.map +1 -1
  36. package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.js +3 -3
  37. package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.js.map +1 -1
  38. package/dist/lib/features/feature-toggle/tests/feature-toggles.e2e.test.js +34 -35
  39. package/dist/lib/features/feature-toggle/tests/feature-toggles.e2e.test.js.map +1 -1
  40. package/dist/lib/features/metrics/client-metrics/metrics-service-v2.js +1 -1
  41. package/dist/lib/features/metrics/client-metrics/metrics-service-v2.js.map +1 -1
  42. package/dist/lib/features/metrics/impact/batch-histogram.d.ts +36 -0
  43. package/dist/lib/features/metrics/impact/batch-histogram.d.ts.map +1 -0
  44. package/dist/lib/features/metrics/impact/batch-histogram.js +87 -0
  45. package/dist/lib/features/metrics/impact/batch-histogram.js.map +1 -0
  46. package/dist/lib/features/metrics/impact/batch-histogram.test.d.ts +2 -0
  47. package/dist/lib/features/metrics/impact/batch-histogram.test.d.ts.map +1 -0
  48. package/dist/lib/features/metrics/impact/batch-histogram.test.js +137 -0
  49. package/dist/lib/features/metrics/impact/batch-histogram.test.js.map +1 -0
  50. package/dist/lib/features/metrics/impact/define-impact-metrics.d.ts +2 -0
  51. package/dist/lib/features/metrics/impact/define-impact-metrics.d.ts.map +1 -1
  52. package/dist/lib/features/metrics/impact/define-impact-metrics.js +4 -0
  53. package/dist/lib/features/metrics/impact/define-impact-metrics.js.map +1 -1
  54. package/dist/lib/features/metrics/impact/impact-metrics.e2e.test.js +49 -0
  55. package/dist/lib/features/metrics/impact/impact-metrics.e2e.test.js.map +1 -1
  56. package/dist/lib/features/metrics/impact/metrics-translator.d.ts +22 -4
  57. package/dist/lib/features/metrics/impact/metrics-translator.d.ts.map +1 -1
  58. package/dist/lib/features/metrics/impact/metrics-translator.js +58 -2
  59. package/dist/lib/features/metrics/impact/metrics-translator.js.map +1 -1
  60. package/dist/lib/features/metrics/impact/metrics-translator.test.js +83 -0
  61. package/dist/lib/features/metrics/impact/metrics-translator.test.js.map +1 -1
  62. package/dist/lib/features/metrics/shared/schema.d.ts +1 -0
  63. package/dist/lib/features/metrics/shared/schema.d.ts.map +1 -1
  64. package/dist/lib/features/metrics/shared/schema.js +27 -1
  65. package/dist/lib/features/metrics/shared/schema.js.map +1 -1
  66. package/dist/lib/features/project/createProjectService.d.ts.map +1 -1
  67. package/dist/lib/features/project/createProjectService.js +7 -5
  68. package/dist/lib/features/project/createProjectService.js.map +1 -1
  69. package/dist/lib/features/project/project-service.d.ts +3 -2
  70. package/dist/lib/features/project/project-service.d.ts.map +1 -1
  71. package/dist/lib/features/project/project-service.js +4 -3
  72. package/dist/lib/features/project/project-service.js.map +1 -1
  73. package/dist/lib/features/release-plans/release-plan-milestone-store.d.ts +2 -2
  74. package/dist/lib/features/release-plans/release-plan-milestone-store.d.ts.map +1 -1
  75. package/dist/lib/features/release-plans/release-plan-milestone-store.js +3 -0
  76. package/dist/lib/features/release-plans/release-plan-milestone-store.js.map +1 -1
  77. package/dist/lib/features/release-plans/release-plan-milestone.d.ts +6 -0
  78. package/dist/lib/features/release-plans/release-plan-milestone.d.ts.map +1 -1
  79. package/dist/lib/features/release-plans/release-plan-read-model-type.d.ts +5 -0
  80. package/dist/lib/features/release-plans/release-plan-read-model-type.d.ts.map +1 -0
  81. package/dist/lib/features/release-plans/release-plan-read-model-type.js +2 -0
  82. package/dist/lib/features/release-plans/release-plan-read-model-type.js.map +1 -0
  83. package/dist/lib/features/release-plans/release-plan-read-model.d.ts +11 -0
  84. package/dist/lib/features/release-plans/release-plan-read-model.d.ts.map +1 -0
  85. package/dist/lib/features/release-plans/release-plan-read-model.js +133 -0
  86. package/dist/lib/features/release-plans/release-plan-read-model.js.map +1 -0
  87. package/dist/lib/features/release-plans/release-plan-read-model.test.d.ts +2 -0
  88. package/dist/lib/features/release-plans/release-plan-read-model.test.d.ts.map +1 -0
  89. package/dist/lib/features/release-plans/release-plan-read-model.test.js +166 -0
  90. package/dist/lib/features/release-plans/release-plan-read-model.test.js.map +1 -0
  91. package/dist/lib/features/release-plans/release-plan-store.d.ts +1 -1
  92. package/dist/lib/features/release-plans/release-plan-store.d.ts.map +1 -1
  93. package/dist/lib/features/release-plans/release-plan-store.js +16 -15
  94. package/dist/lib/features/release-plans/release-plan-store.js.map +1 -1
  95. package/dist/lib/features/release-plans/release-plan-template.d.ts +2 -2
  96. package/dist/lib/features/release-plans/release-plan-template.d.ts.map +1 -1
  97. package/dist/lib/features/release-plans/release-plan.d.ts +1 -1
  98. package/dist/lib/features/release-plans/release-plan.d.ts.map +1 -1
  99. package/dist/lib/features/resource-limits/resource-limits-service.d.ts +8 -0
  100. package/dist/lib/features/resource-limits/resource-limits-service.d.ts.map +1 -0
  101. package/dist/lib/features/resource-limits/resource-limits-service.js +9 -0
  102. package/dist/lib/features/resource-limits/resource-limits-service.js.map +1 -0
  103. package/dist/lib/features/segment/createSegmentService.d.ts.map +1 -1
  104. package/dist/lib/features/segment/createSegmentService.js +5 -3
  105. package/dist/lib/features/segment/createSegmentService.js.map +1 -1
  106. package/dist/lib/features/segment/segment-service.d.ts +3 -2
  107. package/dist/lib/features/segment/segment-service.d.ts.map +1 -1
  108. package/dist/lib/features/segment/segment-service.js +3 -3
  109. package/dist/lib/features/segment/segment-service.js.map +1 -1
  110. package/dist/lib/features/users/user-store.d.ts +2 -0
  111. package/dist/lib/features/users/user-store.d.ts.map +1 -1
  112. package/dist/lib/features/users/user-store.js +3 -2
  113. package/dist/lib/features/users/user-store.js.map +1 -1
  114. package/dist/lib/features/users/user-updates-read-model.d.ts +27 -0
  115. package/dist/lib/features/users/user-updates-read-model.d.ts.map +1 -0
  116. package/dist/lib/features/users/user-updates-read-model.js +68 -0
  117. package/dist/lib/features/users/user-updates-read-model.js.map +1 -0
  118. package/dist/lib/features/users/user-updates-read-model.test.d.ts +2 -0
  119. package/dist/lib/features/users/user-updates-read-model.test.d.ts.map +1 -0
  120. package/dist/lib/features/users/user-updates-read-model.test.js +50 -0
  121. package/dist/lib/features/users/user-updates-read-model.test.js.map +1 -0
  122. package/dist/lib/metrics.d.ts.map +1 -1
  123. package/dist/lib/metrics.js +8 -6
  124. package/dist/lib/metrics.js.map +1 -1
  125. package/dist/lib/openapi/spec/bulk-metrics-schema.d.ts +126 -39
  126. package/dist/lib/openapi/spec/bulk-metrics-schema.d.ts.map +1 -1
  127. package/dist/lib/openapi/spec/event-schema.d.ts +1 -1
  128. package/dist/lib/openapi/spec/event-search-response-schema.d.ts +1 -1
  129. package/dist/lib/openapi/spec/events-schema.d.ts +1 -1
  130. package/dist/lib/openapi/spec/export-result-schema.d.ts +12304 -1250
  131. package/dist/lib/openapi/spec/export-result-schema.d.ts.map +1 -1
  132. package/dist/lib/openapi/spec/export-result-schema.js +12 -0
  133. package/dist/lib/openapi/spec/export-result-schema.js.map +1 -1
  134. package/dist/lib/openapi/spec/feature-environment-schema.d.ts +2767 -0
  135. package/dist/lib/openapi/spec/feature-environment-schema.d.ts.map +1 -1
  136. package/dist/lib/openapi/spec/feature-environment-schema.js +19 -0
  137. package/dist/lib/openapi/spec/feature-environment-schema.js.map +1 -1
  138. package/dist/lib/openapi/spec/feature-events-schema.d.ts +1 -1
  139. package/dist/lib/openapi/spec/feature-schema.d.ts +5808 -281
  140. package/dist/lib/openapi/spec/feature-schema.d.ts.map +1 -1
  141. package/dist/lib/openapi/spec/feature-schema.js +12 -0
  142. package/dist/lib/openapi/spec/feature-schema.js.map +1 -1
  143. package/dist/lib/openapi/spec/feature-search-environment-schema.d.ts +5613 -79
  144. package/dist/lib/openapi/spec/feature-search-environment-schema.d.ts.map +1 -1
  145. package/dist/lib/openapi/spec/feature-search-environment-schema.js +12 -0
  146. package/dist/lib/openapi/spec/feature-search-environment-schema.js.map +1 -1
  147. package/dist/lib/openapi/spec/feature-search-query-parameters.d.ts +2 -1
  148. package/dist/lib/openapi/spec/feature-search-query-parameters.d.ts.map +1 -1
  149. package/dist/lib/openapi/spec/feature-search-query-parameters.js +2 -1
  150. package/dist/lib/openapi/spec/feature-search-query-parameters.js.map +1 -1
  151. package/dist/lib/openapi/spec/feature-search-response-schema.d.ts +5613 -79
  152. package/dist/lib/openapi/spec/feature-search-response-schema.d.ts.map +1 -1
  153. package/dist/lib/openapi/spec/health-overview-schema.d.ts +11432 -605
  154. package/dist/lib/openapi/spec/health-overview-schema.d.ts.map +1 -1
  155. package/dist/lib/openapi/spec/health-overview-schema.js +8 -0
  156. package/dist/lib/openapi/spec/health-overview-schema.js.map +1 -1
  157. package/dist/lib/openapi/spec/health-report-schema.d.ts +11432 -605
  158. package/dist/lib/openapi/spec/health-report-schema.d.ts.map +1 -1
  159. package/dist/lib/openapi/spec/impact-metrics-schema.d.ts +126 -39
  160. package/dist/lib/openapi/spec/impact-metrics-schema.d.ts.map +1 -1
  161. package/dist/lib/openapi/spec/impact-metrics-schema.js +128 -39
  162. package/dist/lib/openapi/spec/impact-metrics-schema.js.map +1 -1
  163. package/dist/lib/openapi/spec/import-toggles-schema.d.ts +24822 -2714
  164. package/dist/lib/openapi/spec/import-toggles-schema.d.ts.map +1 -1
  165. package/dist/lib/openapi/spec/import-toggles-schema.js +12 -0
  166. package/dist/lib/openapi/spec/import-toggles-schema.js.map +1 -1
  167. package/dist/lib/openapi/spec/index.d.ts +6 -0
  168. package/dist/lib/openapi/spec/index.d.ts.map +1 -1
  169. package/dist/lib/openapi/spec/index.js +6 -0
  170. package/dist/lib/openapi/spec/index.js.map +1 -1
  171. package/dist/lib/openapi/spec/integration-event-schema.d.ts +1 -1
  172. package/dist/lib/openapi/spec/integration-events-schema.d.ts +2 -2
  173. package/dist/lib/openapi/spec/patch-schema.d.ts +1 -1
  174. package/dist/lib/openapi/spec/patch-schema.js +1 -1
  175. package/dist/lib/openapi/spec/patch-schema.js.map +1 -1
  176. package/dist/lib/openapi/spec/patches-schema.d.ts +1 -1
  177. package/dist/lib/openapi/spec/profile-schema.d.ts +5808 -281
  178. package/dist/lib/openapi/spec/profile-schema.d.ts.map +1 -1
  179. package/dist/lib/openapi/spec/project-overview-schema.d.ts +11641 -814
  180. package/dist/lib/openapi/spec/project-overview-schema.d.ts.map +1 -1
  181. package/dist/lib/openapi/spec/project-overview-schema.js +8 -0
  182. package/dist/lib/openapi/spec/project-overview-schema.js.map +1 -1
  183. package/dist/lib/openapi/spec/release-plan-milestone-schema.d.ts +716 -0
  184. package/dist/lib/openapi/spec/release-plan-milestone-schema.d.ts.map +1 -0
  185. package/dist/lib/openapi/spec/release-plan-milestone-schema.js +72 -0
  186. package/dist/lib/openapi/spec/release-plan-milestone-schema.js.map +1 -0
  187. package/dist/lib/openapi/spec/release-plan-milestone-strategy-schema.d.ts +361 -0
  188. package/dist/lib/openapi/spec/release-plan-milestone-strategy-schema.d.ts.map +1 -0
  189. package/dist/lib/openapi/spec/release-plan-milestone-strategy-schema.js +40 -0
  190. package/dist/lib/openapi/spec/release-plan-milestone-strategy-schema.js.map +1 -0
  191. package/dist/lib/openapi/spec/release-plan-schema.d.ts +1449 -0
  192. package/dist/lib/openapi/spec/release-plan-schema.d.ts.map +1 -0
  193. package/dist/lib/openapi/spec/release-plan-schema.js +74 -0
  194. package/dist/lib/openapi/spec/release-plan-schema.js.map +1 -0
  195. package/dist/lib/openapi/spec/release-plan-template-id-schema.d.ts +19 -0
  196. package/dist/lib/openapi/spec/release-plan-template-id-schema.d.ts.map +1 -0
  197. package/dist/lib/openapi/spec/release-plan-template-id-schema.js +17 -0
  198. package/dist/lib/openapi/spec/release-plan-template-id-schema.js.map +1 -0
  199. package/dist/lib/openapi/spec/release-plan-template-schema.d.ts +1434 -0
  200. package/dist/lib/openapi/spec/release-plan-template-schema.d.ts.map +1 -0
  201. package/dist/lib/openapi/spec/release-plan-template-schema.js +79 -0
  202. package/dist/lib/openapi/spec/release-plan-template-schema.js.map +1 -0
  203. package/dist/lib/openapi/spec/search-features-schema.d.ts +11793 -725
  204. package/dist/lib/openapi/spec/search-features-schema.d.ts.map +1 -1
  205. package/dist/lib/openapi/spec/transition-condition-schema.d.ts +19 -0
  206. package/dist/lib/openapi/spec/transition-condition-schema.d.ts.map +1 -0
  207. package/dist/lib/openapi/spec/transition-condition-schema.js +17 -0
  208. package/dist/lib/openapi/spec/transition-condition-schema.js.map +1 -0
  209. package/dist/lib/routes/admin-api/index.js +2 -2
  210. package/dist/lib/routes/admin-api/index.js.map +1 -1
  211. package/dist/lib/routes/backstage.test.js +17 -5
  212. package/dist/lib/routes/backstage.test.js.map +1 -1
  213. package/dist/lib/routes/util.d.ts.map +1 -1
  214. package/dist/lib/routes/util.js +19 -1
  215. package/dist/lib/routes/util.js.map +1 -1
  216. package/dist/lib/server-impl.d.ts +8 -3
  217. package/dist/lib/server-impl.d.ts.map +1 -1
  218. package/dist/lib/server-impl.js +5 -1
  219. package/dist/lib/server-impl.js.map +1 -1
  220. package/dist/lib/services/api-token-service.d.ts +3 -2
  221. package/dist/lib/services/api-token-service.d.ts.map +1 -1
  222. package/dist/lib/services/api-token-service.js +3 -3
  223. package/dist/lib/services/api-token-service.js.map +1 -1
  224. package/dist/lib/services/index.d.ts +5 -1
  225. package/dist/lib/services/index.d.ts.map +1 -1
  226. package/dist/lib/services/index.js +16 -2
  227. package/dist/lib/services/index.js.map +1 -1
  228. package/dist/lib/services/user-service.d.ts.map +1 -1
  229. package/dist/lib/services/user-service.js +19 -3
  230. package/dist/lib/services/user-service.js.map +1 -1
  231. package/dist/lib/types/events.d.ts +41 -0
  232. package/dist/lib/types/events.d.ts.map +1 -1
  233. package/dist/lib/types/events.js +29 -1
  234. package/dist/lib/types/events.js.map +1 -1
  235. package/dist/lib/types/experimental.d.ts +3 -1
  236. package/dist/lib/types/experimental.d.ts.map +1 -1
  237. package/dist/lib/types/experimental.js +7 -6
  238. package/dist/lib/types/experimental.js.map +1 -1
  239. package/dist/lib/types/stores/feature-environment-store.d.ts +1 -1
  240. package/dist/lib/types/stores/feature-environment-store.d.ts.map +1 -1
  241. package/dist/lib/types/stores.d.ts +2 -0
  242. package/dist/lib/types/stores.d.ts.map +1 -1
  243. package/dist/lib/types/stores.js.map +1 -1
  244. package/dist/lib/ui-config/ui-config-controller.d.ts +24 -0
  245. package/dist/lib/ui-config/ui-config-controller.d.ts.map +1 -0
  246. package/dist/lib/{routes/admin-api/config.js → ui-config/ui-config-controller.js} +21 -17
  247. package/dist/lib/ui-config/ui-config-controller.js.map +1 -0
  248. package/dist/lib/ui-config/ui-config-service.d.ts +18 -0
  249. package/dist/lib/ui-config/ui-config-service.d.ts.map +1 -0
  250. package/dist/lib/ui-config/ui-config-service.js +64 -0
  251. package/dist/lib/ui-config/ui-config-service.js.map +1 -0
  252. package/dist/lib/ui-config/ui-config.test.d.ts +2 -0
  253. package/dist/lib/ui-config/ui-config.test.d.ts.map +1 -0
  254. package/dist/lib/{routes/admin-api/config.test.js → ui-config/ui-config.test.js} +6 -6
  255. package/dist/lib/ui-config/ui-config.test.js.map +1 -0
  256. package/dist/lib/util/metrics/createGauge.d.ts +17 -1
  257. package/dist/lib/util/metrics/createGauge.d.ts.map +1 -1
  258. package/dist/lib/util/metrics/createGauge.js +49 -4
  259. package/dist/lib/util/metrics/createGauge.js.map +1 -1
  260. package/dist/lib/util/random-id.js +2 -2
  261. package/dist/lib/util/random-id.js.map +1 -1
  262. package/dist/lib/util/random-id.test.d.ts +2 -0
  263. package/dist/lib/util/random-id.test.d.ts.map +1 -0
  264. package/dist/lib/util/random-id.test.js +7 -0
  265. package/dist/lib/util/random-id.test.js.map +1 -0
  266. package/dist/migrations/20210218090213-generate-server-identifier.js +2 -2
  267. package/dist/migrations/20210218090213-generate-server-identifier.js.map +1 -1
  268. package/dist/migrations/20210615115226-migrate-strategies-to-feature-strategies.js +2 -2
  269. package/dist/migrations/20210615115226-migrate-strategies-to-feature-strategies.js.map +1 -1
  270. package/dist/migrations/20250923130348-add-users-updated-at.d.ts +3 -0
  271. package/dist/migrations/20250923130348-add-users-updated-at.d.ts.map +1 -0
  272. package/dist/migrations/20250923130348-add-users-updated-at.js +40 -0
  273. package/dist/migrations/20250923130348-add-users-updated-at.js.map +1 -0
  274. package/dist/migrations/20251002095623-not-null-constraints.d.ts +3 -0
  275. package/dist/migrations/20251002095623-not-null-constraints.d.ts.map +1 -0
  276. package/dist/migrations/20251002095623-not-null-constraints.js +20 -0
  277. package/dist/migrations/20251002095623-not-null-constraints.js.map +1 -0
  278. package/dist/migrations/20251003105758-add-milestone-started-at.d.ts +3 -0
  279. package/dist/migrations/20251003105758-add-milestone-started-at.d.ts.map +1 -0
  280. package/dist/migrations/20251003105758-add-milestone-started-at.js +8 -0
  281. package/dist/migrations/20251003105758-add-milestone-started-at.js.map +1 -0
  282. package/dist/migrations/20251006111609-add-milestone-progressions.d.ts +3 -0
  283. package/dist/migrations/20251006111609-add-milestone-progressions.d.ts.map +1 -0
  284. package/dist/migrations/20251006111609-add-milestone-progressions.js +15 -0
  285. package/dist/migrations/20251006111609-add-milestone-progressions.js.map +1 -0
  286. package/dist/migrations/20251009081052-add-milestone-progression-executed-at.d.ts +3 -0
  287. package/dist/migrations/20251009081052-add-milestone-progression-executed-at.d.ts.map +1 -0
  288. package/dist/migrations/20251009081052-add-milestone-progression-executed-at.js +14 -0
  289. package/dist/migrations/20251009081052-add-milestone-progression-executed-at.js.map +1 -0
  290. package/dist/migrations/20251009132935-add-edge-node-presence.d.ts +3 -0
  291. package/dist/migrations/20251009132935-add-edge-node-presence.d.ts.map +1 -0
  292. package/dist/migrations/20251009132935-add-edge-node-presence.js +29 -0
  293. package/dist/migrations/20251009132935-add-edge-node-presence.js.map +1 -0
  294. package/dist/migrations/20251013131405-milestone-progression-uniqueness.d.ts +3 -0
  295. package/dist/migrations/20251013131405-milestone-progression-uniqueness.d.ts.map +1 -0
  296. package/dist/migrations/20251013131405-milestone-progression-uniqueness.js +9 -0
  297. package/dist/migrations/20251013131405-milestone-progression-uniqueness.js.map +1 -0
  298. package/dist/server-dev.js +7 -1
  299. package/dist/server-dev.js.map +1 -1
  300. package/dist/test/e2e/api/admin/context.e2e.test.js +2 -3
  301. package/dist/test/e2e/api/admin/context.e2e.test.js.map +1 -1
  302. package/dist/test/e2e/api/admin/user-admin.e2e.test.js +2 -3
  303. package/dist/test/e2e/api/admin/user-admin.e2e.test.js.map +1 -1
  304. package/dist/test/e2e/api/client/feature.optimal304.e2e.test.js +17 -41
  305. package/dist/test/e2e/api/client/feature.optimal304.e2e.test.js.map +1 -1
  306. package/dist/test/e2e/helpers/database-init.js +2 -2
  307. package/dist/test/e2e/helpers/database-init.js.map +1 -1
  308. package/dist/test/e2e/services/user-service.e2e.test.js +129 -99
  309. package/dist/test/e2e/services/user-service.e2e.test.js.map +1 -1
  310. package/dist/test/e2e/stores/feature-environment-store.e2e.test.js +3 -1
  311. package/dist/test/e2e/stores/feature-environment-store.e2e.test.js.map +1 -1
  312. package/dist/test/e2e/users/user-store.e2e.test.d.ts.map +1 -0
  313. package/dist/test/e2e/users/user-store.e2e.test.js.map +1 -0
  314. package/dist/test/e2e/users/user-updates-read-model.e2e.test.d.ts +2 -0
  315. package/dist/test/e2e/users/user-updates-read-model.e2e.test.d.ts.map +1 -0
  316. package/dist/test/e2e/users/user-updates-read-model.e2e.test.js +88 -0
  317. package/dist/test/e2e/users/user-updates-read-model.e2e.test.js.map +1 -0
  318. package/dist/test/fixtures/fake/fake-release-plan-read-model.d.ts +8 -0
  319. package/dist/test/fixtures/fake/fake-release-plan-read-model.d.ts.map +1 -0
  320. package/dist/test/fixtures/fake/fake-release-plan-read-model.js +9 -0
  321. package/dist/test/fixtures/fake/fake-release-plan-read-model.js.map +1 -0
  322. package/dist/test/fixtures/store.d.ts.map +1 -1
  323. package/dist/test/fixtures/store.js +1 -0
  324. package/dist/test/fixtures/store.js.map +1 -1
  325. package/frontend/build/index.html +1 -1
  326. package/frontend/build/static/{AdvancedPlayground-CUkOz1YF.js → AdvancedPlayground-HWcSRQrt.js} +1 -1
  327. package/frontend/build/static/BackendConnections-Cug76pb0.js +1 -0
  328. package/frontend/build/static/{CreateProject-COHPsP3X.js → CreateProject-3uUrdDWJ.js} +1 -1
  329. package/frontend/build/static/FeatureMetricsChart-DLvE4xPU.js +2 -0
  330. package/frontend/build/static/FeatureStaleDialog-BFWmPzw7.js +7 -0
  331. package/frontend/build/static/FeatureViewLazyExport-DfivW7sC.js +10 -0
  332. package/frontend/build/static/{FlagMetricsChart-D0GI-ltv.js → FlagMetricsChart-DFDJ4xPh.js} +2 -2
  333. package/frontend/build/static/FrontendNetworkTrafficUsage-DVa2I8CC.js +1 -0
  334. package/frontend/build/static/GridLayoutWrapper-Mt7n_5lt.js +3 -0
  335. package/frontend/build/static/ImpactMetricsPage-B3ERxAH0.js +1 -0
  336. package/frontend/build/static/LazyAdminExport-s8FIvcqq.js +38 -0
  337. package/frontend/build/static/LazyProjectExport-DN00bJrc.js +728 -0
  338. package/frontend/build/static/{LifecycleChartComponent-BigwXcU3.js → LifecycleChartComponent-BOcT_Zpy.js} +3 -3
  339. package/frontend/build/static/LineChartComponent-CudSs6ri.js +1 -0
  340. package/frontend/build/static/{MarkCompletedDialogue-CS-kM4vW.js → MarkCompletedDialogue-4XT7ryE9.js} +1 -1
  341. package/frontend/build/static/{NetworkConnectedEdges-C2nfTRKM.js → NetworkConnectedEdges-CnEFuyuC.js} +1 -1
  342. package/frontend/build/static/{NetworkOverview-BKozpi8w.js → NetworkOverview-KDe9n7ZE.js} +1 -1
  343. package/frontend/build/static/{NetworkPrometheusAPIWarning-wqCXwcem.js → NetworkPrometheusAPIWarning-Cy93jJcu.js} +1 -1
  344. package/frontend/build/static/{NetworkTraffic-Co7oakIE.js → NetworkTraffic-BTN3OABv.js} +1 -1
  345. package/frontend/build/static/NetworkTrafficUsage-DwnXvons.js +1 -0
  346. package/frontend/build/static/PercentageDonut-CmWbqKEA.js +1 -0
  347. package/frontend/build/static/{ReactJSONEditor-BDMT4-_1.js → ReactJSONEditor-xNDjbhPU.js} +1 -1
  348. package/frontend/build/static/{RoleCell-COtuTPWk.js → RoleCell-DSglYWti.js} +1 -1
  349. package/frontend/build/static/{aggregateFeatureMetrics-ClblY5Ev.js → aggregateFeatureMetrics-B7oOoe9g.js} +1 -1
  350. package/frontend/build/static/{formatTickValue-DojfJagm.js → formatTickValue-4OyGeZqN.js} +2 -2
  351. package/frontend/build/static/index-D02pkj6r.js +542 -0
  352. package/frontend/build/static/metricsFormatters-7MLBOEud.js +1 -0
  353. package/frontend/build/static/{networkTrafficUsageHighlightPlugin-BMMmh5e_.js → networkTrafficUsageHighlightPlugin-CT-MfVrm.js} +1 -1
  354. package/frontend/build/static/strategyCustom-Db-ZtYWl.svg +23 -0
  355. package/frontend/build/static/strategyDefault-LnSyH2eZ.svg +17 -0
  356. package/frontend/build/static/strategyGradual-oCA99tj3.svg +18 -0
  357. package/frontend/build/static/strategyHosts-4lVYC2Bf.svg +23 -0
  358. package/frontend/build/static/strategyIPs-BHaXsOYV.svg +24 -0
  359. package/frontend/build/static/strategyOn-CX-xL0oK.svg +18 -0
  360. package/frontend/build/static/useApiTokens-wTDjjd8a.js +1 -0
  361. package/frontend/package.json +2 -2
  362. package/package.json +5 -7
  363. package/dist/lib/routes/admin-api/config.d.ts +0 -24
  364. package/dist/lib/routes/admin-api/config.d.ts.map +0 -1
  365. package/dist/lib/routes/admin-api/config.js.map +0 -1
  366. package/dist/lib/routes/admin-api/config.test.d.ts +0 -2
  367. package/dist/lib/routes/admin-api/config.test.d.ts.map +0 -1
  368. package/dist/lib/routes/admin-api/config.test.js.map +0 -1
  369. package/dist/test/e2e/stores/user-store.e2e.test.d.ts.map +0 -1
  370. package/dist/test/e2e/stores/user-store.e2e.test.js.map +0 -1
  371. package/frontend/build/static/BackendConnections-Bi1Fsohi.js +0 -1
  372. package/frontend/build/static/ChartItem-Ci-KFL7s.js +0 -1
  373. package/frontend/build/static/FeatureMetricsChart-ClbKeGOa.js +0 -2
  374. package/frontend/build/static/FeatureStaleDialog-DZvKjxPB.js +0 -7
  375. package/frontend/build/static/FeatureViewLazyExport-yCIrczZt.js +0 -10
  376. package/frontend/build/static/FrontendNetworkTrafficUsage-DlRkx8CV.js +0 -1
  377. package/frontend/build/static/ImpactMetricsPage-BYcbHNWC.js +0 -3
  378. package/frontend/build/static/LazyAdminExport-BjSYZTvt.js +0 -38
  379. package/frontend/build/static/LazyProjectExport-9mNkV9Jq.js +0 -728
  380. package/frontend/build/static/LineChartComponent-CPcDsiNa.js +0 -1
  381. package/frontend/build/static/NetworkTrafficUsage-DNDJZGXi.js +0 -1
  382. package/frontend/build/static/index-CqYZiU1N.js +0 -542
  383. package/frontend/build/static/useApiTokens-B6vbGXUF.js +0 -1
  384. /package/dist/test/e2e/{stores → users}/user-store.e2e.test.d.ts +0 -0
  385. /package/dist/test/e2e/{stores → users}/user-store.e2e.test.js +0 -0
@@ -7,7 +7,6 @@ import ApiUser from '../../../types/api-user.js';
7
7
  import { ApiTokenType } from '../../../types/model.js';
8
8
  import IncompatibleProjectError from '../../../error/incompatible-project-error.js';
9
9
  import { RoleName } from '../../../types/model.js';
10
- import { v4 as uuidv4 } from 'uuid';
11
10
  import { randomId } from '../../../util/random-id.js';
12
11
  import { DEFAULT_PROJECT, TEST_AUDIT_USER } from '../../../types/index.js';
13
12
  import { ForbiddenError } from '../../../error/index.js';
@@ -135,8 +134,8 @@ test('Trying to add a strategy configuration to environment not connected to fla
135
134
  });
136
135
  });
137
136
  test('should list dependencies and children', async () => {
138
- const parent = uuidv4();
139
- const child = uuidv4();
137
+ const parent = randomId();
138
+ const child = randomId();
140
139
  await app.createFeature(parent, 'default');
141
140
  await app.createFeature(child, 'default');
142
141
  await app.addDependency(child, parent);
@@ -152,8 +151,8 @@ test('should list dependencies and children', async () => {
152
151
  });
153
152
  });
154
153
  test('should not allow to change project with dependencies', async () => {
155
- const parent = uuidv4();
156
- const child = uuidv4();
154
+ const parent = randomId();
155
+ const child = randomId();
157
156
  await app.createFeature(parent, 'default');
158
157
  await app.createFeature(child, 'default');
159
158
  await app.addDependency(child, parent);
@@ -170,8 +169,8 @@ test('should not allow to change project with dependencies', async () => {
170
169
  user, 'default', TEST_AUDIT_USER)).rejects.errorWithMessage(new ForbiddenError('Changing project not allowed. Feature has dependencies.'));
171
170
  });
172
171
  test('Should not allow to archive/delete feature with children', async () => {
173
- const parent = uuidv4();
174
- const child = uuidv4();
172
+ const parent = randomId();
173
+ const child = randomId();
175
174
  await app.createFeature(parent, 'default');
176
175
  await app.createFeature(child, 'default');
177
176
  await app.addDependency(child, parent);
@@ -187,8 +186,8 @@ test('Should not allow to archive/delete feature with children', async () => {
187
186
  expect(deleteBody.message).toBe('You can not archive/delete this feature since other features depend on it.');
188
187
  });
189
188
  test('Should allow to archive/delete feature with children if no orphans are left', async () => {
190
- const parent = uuidv4();
191
- const child = uuidv4();
189
+ const parent = randomId();
190
+ const child = randomId();
192
191
  await app.createFeature(parent, 'default');
193
192
  await app.createFeature(child, 'default');
194
193
  await app.addDependency(child, parent);
@@ -199,9 +198,9 @@ test('Should allow to archive/delete feature with children if no orphans are lef
199
198
  .expect(200);
200
199
  });
201
200
  test('Should not allow to archive/delete feature when orphans are left', async () => {
202
- const parent = uuidv4();
203
- const child = uuidv4();
204
- const orphan = uuidv4();
201
+ const parent = randomId();
202
+ const child = randomId();
203
+ const orphan = randomId();
205
204
  await app.createFeature(parent, 'default');
206
205
  await app.createFeature(child, 'default');
207
206
  await app.createFeature(orphan, 'default');
@@ -215,9 +214,9 @@ test('Should not allow to archive/delete feature when orphans are left', async (
215
214
  expect(deleteBody.message).toBe('You can not archive/delete those features since other features depend on them.');
216
215
  });
217
216
  test('should clone feature with parent dependencies', async () => {
218
- const parent = uuidv4();
219
- const child = uuidv4();
220
- const childClone = uuidv4();
217
+ const parent = randomId();
218
+ const child = randomId();
219
+ const childClone = randomId();
221
220
  await app.createFeature(parent, 'default');
222
221
  await app.createFeature(child, 'default');
223
222
  await app.addDependency(child, parent);
@@ -1955,7 +1954,7 @@ test('Can create flag with impression data on different project', async () => {
1955
1954
  });
1956
1955
  });
1957
1956
  test('should handle strategy variants', async () => {
1958
- const feature = { name: uuidv4(), impressionData: false };
1957
+ const feature = { name: randomId(), impressionData: false };
1959
1958
  await app.createFeature(feature.name);
1960
1959
  const strategyWithInvalidVariant = {
1961
1960
  name: 'flexibleRollout',
@@ -2017,13 +2016,13 @@ test('should handle strategy variants', async () => {
2017
2016
  });
2018
2017
  test('should reject invalid constraint values for multi-valued constraints', async () => {
2019
2018
  const project = await db.stores.projectStore.create({
2020
- id: uuidv4(),
2021
- name: uuidv4(),
2019
+ id: randomId(),
2020
+ name: randomId(),
2022
2021
  description: '',
2023
2022
  mode: 'open',
2024
2023
  });
2025
2024
  const flag = await db.stores.featureToggleStore.create(project.id, {
2026
- name: uuidv4(),
2025
+ name: randomId(),
2027
2026
  impressionData: true,
2028
2027
  createdByUserId: 9999,
2029
2028
  });
@@ -2059,13 +2058,13 @@ test('should reject invalid constraint values for multi-valued constraints', asy
2059
2058
  });
2060
2059
  test('should add default constraint values for single-valued constraints', async () => {
2061
2060
  const project = await db.stores.projectStore.create({
2062
- id: uuidv4(),
2063
- name: uuidv4(),
2061
+ id: randomId(),
2062
+ name: randomId(),
2064
2063
  description: '',
2065
2064
  mode: 'open',
2066
2065
  });
2067
2066
  const flag = await db.stores.featureToggleStore.create(project.id, {
2068
- name: uuidv4(),
2067
+ name: randomId(),
2069
2068
  impressionData: true,
2070
2069
  createdByUserId: 9999,
2071
2070
  });
@@ -2111,13 +2110,13 @@ test('should add default constraint values for single-valued constraints', async
2111
2110
  });
2112
2111
  test('should allow long parameter values', async () => {
2113
2112
  const project = await db.stores.projectStore.create({
2114
- id: uuidv4(),
2115
- name: uuidv4(),
2116
- description: uuidv4(),
2113
+ id: randomId(),
2114
+ name: randomId(),
2115
+ description: randomId(),
2117
2116
  mode: 'open',
2118
2117
  });
2119
2118
  const flag = await db.stores.featureToggleStore.create(project.id, {
2120
- name: uuidv4(),
2119
+ name: randomId(),
2121
2120
  createdByUserId: 9999,
2122
2121
  });
2123
2122
  const strategy = {
@@ -2130,7 +2129,7 @@ test('should allow long parameter values', async () => {
2130
2129
  .expect(200);
2131
2130
  });
2132
2131
  test('should change strategy sort order when payload is valid', async () => {
2133
- const flag = { name: uuidv4(), impressionData: false };
2132
+ const flag = { name: randomId(), impressionData: false };
2134
2133
  await app.request
2135
2134
  .post('/api/admin/projects/default/features')
2136
2135
  .send({
@@ -2180,7 +2179,7 @@ test('should change strategy sort order when payload is valid', async () => {
2180
2179
  expect(strategiesOrdered[1].id).toBe(strategyOne.id);
2181
2180
  });
2182
2181
  test('should reject set sort order request when payload is invalid', async () => {
2183
- const flag = { name: uuidv4(), impressionData: false };
2182
+ const flag = { name: randomId(), impressionData: false };
2184
2183
  await app.request
2185
2184
  .post(`/api/admin/projects/default/features/${flag.name}/environments/${DEFAULT_ENV}/strategies/set-sort-order`)
2186
2185
  .send([
@@ -2194,7 +2193,7 @@ test('should reject set sort order request when payload is invalid', async () =>
2194
2193
  .expect(400);
2195
2194
  });
2196
2195
  test('should return strategies in correct order when new strategies are added', async () => {
2197
- const flag = { name: uuidv4(), impressionData: false };
2196
+ const flag = { name: randomId(), impressionData: false };
2198
2197
  await app.request
2199
2198
  .post('/api/admin/projects/default/features')
2200
2199
  .send({
@@ -2284,7 +2283,7 @@ test('should return strategies in correct order when new strategies are added',
2284
2283
  expect(strategiesReOrdered[3].id).toBe(strategyThree.id);
2285
2284
  });
2286
2285
  test('should create a strategy with segments', async () => {
2287
- const feature = { name: uuidv4(), impressionData: false };
2286
+ const feature = { name: randomId(), impressionData: false };
2288
2287
  await app.createFeature(feature.name);
2289
2288
  const segment = await createSegment('segmentOne');
2290
2289
  const { body: strategyOne } = await createStrategy(feature.name, {
@@ -2318,7 +2317,7 @@ test('should create a strategy with segments', async () => {
2318
2317
  });
2319
2318
  });
2320
2319
  test('should add multiple segments to a strategy', async () => {
2321
- const feature = { name: uuidv4(), impressionData: false };
2320
+ const feature = { name: randomId(), impressionData: false };
2322
2321
  await app.createFeature(feature.name);
2323
2322
  const segment = await createSegment('seg1');
2324
2323
  const segmentTwo = await createSegment('seg2');
@@ -2444,7 +2443,7 @@ test('Should batch stale features', async () => {
2444
2443
  expect(body.stale).toBeTruthy();
2445
2444
  });
2446
2445
  test('should return disabled strategies', async () => {
2447
- const flag = { name: uuidv4(), impressionData: false };
2446
+ const flag = { name: randomId(), impressionData: false };
2448
2447
  await app.request
2449
2448
  .post('/api/admin/projects/default/features')
2450
2449
  .send({
@@ -2477,7 +2476,7 @@ test('should return disabled strategies', async () => {
2477
2476
  expect(strategies[1].disabled).toBe(strategyTwo.disabled);
2478
2477
  });
2479
2478
  test('should disable strategies in place', async () => {
2480
- const flag = { name: uuidv4(), impressionData: false };
2479
+ const flag = { name: randomId(), impressionData: false };
2481
2480
  await app.request
2482
2481
  .post('/api/admin/projects/default/features')
2483
2482
  .send({
@@ -2749,7 +2748,7 @@ test('Updating feature strategy sort-order should trigger a an event', async ()
2749
2748
  });
2750
2749
  });
2751
2750
  test('should not be allowed to create with invalid strategy type name', async () => {
2752
- const feature = { name: uuidv4(), impressionData: false };
2751
+ const feature = { name: randomId(), impressionData: false };
2753
2752
  await app.createFeature(feature.name);
2754
2753
  await createStrategy(feature.name, {
2755
2754
  name: 'random-type',
@@ -2759,7 +2758,7 @@ test('should not be allowed to create with invalid strategy type name', async ()
2759
2758
  }, 400);
2760
2759
  });
2761
2760
  test('should not be allowed to update with invalid strategy type name', async () => {
2762
- const feature = { name: uuidv4(), impressionData: false };
2761
+ const feature = { name: randomId(), impressionData: false };
2763
2762
  await app.createFeature(feature.name);
2764
2763
  const { body: strategyOne } = await createStrategy(feature.name, {
2765
2764
  name: 'default',