unleash-server 7.4.1 → 7.4.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 (478) hide show
  1. package/README.md +6 -1
  2. package/dist/lib/addons/feature-event-formatter-md.d.ts.map +1 -1
  3. package/dist/lib/addons/feature-event-formatter-md.js +1 -0
  4. package/dist/lib/addons/feature-event-formatter-md.js.map +1 -1
  5. package/dist/lib/addons/feature-event-formatter-md.test.js +45 -2
  6. package/dist/lib/addons/feature-event-formatter-md.test.js.map +1 -1
  7. package/dist/lib/create-config.d.ts.map +1 -1
  8. package/dist/lib/create-config.js +6 -1
  9. package/dist/lib/create-config.js.map +1 -1
  10. package/dist/lib/db/feature-environment-store.d.ts.map +1 -1
  11. package/dist/lib/db/feature-environment-store.js.map +1 -1
  12. package/dist/lib/db/index.d.ts.map +1 -1
  13. package/dist/lib/db/index.js +5 -2
  14. package/dist/lib/db/index.js.map +1 -1
  15. package/dist/lib/{routes/admin-api/constraints.d.ts → features/constraints/constraints-controller.d.ts} +5 -5
  16. package/dist/lib/features/constraints/constraints-controller.d.ts.map +1 -0
  17. package/dist/lib/{routes/admin-api/constraints.js → features/constraints/constraints-controller.js} +6 -6
  18. package/dist/lib/features/constraints/constraints-controller.js.map +1 -0
  19. package/dist/lib/features/constraints/constraints-read-model-type.d.ts +6 -0
  20. package/dist/lib/features/constraints/constraints-read-model-type.d.ts.map +1 -0
  21. package/dist/lib/features/constraints/constraints-read-model-type.js +2 -0
  22. package/dist/lib/features/constraints/constraints-read-model-type.js.map +1 -0
  23. package/dist/lib/features/constraints/constraints-read-model.d.ts +11 -0
  24. package/dist/lib/features/constraints/constraints-read-model.d.ts.map +1 -0
  25. package/dist/lib/features/constraints/constraints-read-model.js +55 -0
  26. package/dist/lib/features/constraints/constraints-read-model.js.map +1 -0
  27. package/dist/lib/features/constraints/constraints-read-model.test.d.ts +2 -0
  28. package/dist/lib/features/constraints/constraints-read-model.test.d.ts.map +1 -0
  29. package/dist/lib/features/constraints/constraints-read-model.test.js +388 -0
  30. package/dist/lib/features/constraints/constraints-read-model.test.js.map +1 -0
  31. package/dist/lib/features/constraints/constraints.e2e.test.d.ts.map +1 -0
  32. package/dist/{test/e2e/api/admin → lib/features/constraints}/constraints.e2e.test.js +4 -4
  33. package/dist/lib/features/constraints/constraints.e2e.test.js.map +1 -0
  34. package/dist/lib/features/constraints/createConstraintsReadModel.d.ts +5 -0
  35. package/dist/lib/features/constraints/createConstraintsReadModel.d.ts.map +1 -0
  36. package/dist/lib/features/constraints/createConstraintsReadModel.js +9 -0
  37. package/dist/lib/features/constraints/createConstraintsReadModel.js.map +1 -0
  38. package/dist/lib/features/constraints/fake-constraints-read-model.d.ts +7 -0
  39. package/dist/lib/features/constraints/fake-constraints-read-model.d.ts.map +1 -0
  40. package/dist/lib/features/constraints/fake-constraints-read-model.js +11 -0
  41. package/dist/lib/features/constraints/fake-constraints-read-model.js.map +1 -0
  42. package/dist/lib/features/context/context.d.ts.map +1 -1
  43. package/dist/lib/features/context/context.js +16 -10
  44. package/dist/lib/features/context/context.js.map +1 -1
  45. package/dist/lib/features/context/createContextService.js +1 -1
  46. package/dist/lib/features/context/createContextService.js.map +1 -1
  47. package/dist/lib/features/dependent-features/dependent-features-controller.d.ts.map +1 -1
  48. package/dist/lib/features/dependent-features/dependent-features-controller.js +0 -1
  49. package/dist/lib/features/dependent-features/dependent-features-controller.js.map +1 -1
  50. package/dist/lib/features/edgetokens/edge-hmac-verifier.d.ts +4 -0
  51. package/dist/lib/features/edgetokens/edge-hmac-verifier.d.ts.map +1 -0
  52. package/dist/lib/features/edgetokens/edge-hmac-verifier.js +83 -0
  53. package/dist/lib/features/edgetokens/edge-hmac-verifier.js.map +1 -0
  54. package/dist/lib/features/edgetokens/edge-token-store.d.ts +16 -0
  55. package/dist/lib/features/edgetokens/edge-token-store.d.ts.map +1 -0
  56. package/dist/lib/features/edgetokens/edge-token-store.js +101 -0
  57. package/dist/lib/features/edgetokens/edge-token-store.js.map +1 -0
  58. package/dist/lib/features/edgetokens/edge-tokens.d.ts +2 -0
  59. package/dist/lib/features/edgetokens/edge-tokens.d.ts.map +1 -0
  60. package/dist/lib/features/edgetokens/edge-tokens.js +16 -0
  61. package/dist/lib/features/edgetokens/edge-tokens.js.map +1 -0
  62. package/dist/lib/features/edgetokens/edge-tokens.test.d.ts +2 -0
  63. package/dist/lib/features/edgetokens/edge-tokens.test.d.ts.map +1 -0
  64. package/dist/lib/features/edgetokens/edge-tokens.test.js +22 -0
  65. package/dist/lib/features/edgetokens/edge-tokens.test.js.map +1 -0
  66. package/dist/lib/features/edgetokens/edge-verification.d.ts +3 -0
  67. package/dist/lib/features/edgetokens/edge-verification.d.ts.map +1 -0
  68. package/dist/lib/features/edgetokens/edge-verification.js +25 -0
  69. package/dist/lib/features/edgetokens/edge-verification.js.map +1 -0
  70. package/dist/lib/features/edgetokens/edge-verification.test.d.ts +2 -0
  71. package/dist/lib/features/edgetokens/edge-verification.test.d.ts.map +1 -0
  72. package/dist/lib/features/edgetokens/edge-verification.test.js +18 -0
  73. package/dist/lib/features/edgetokens/edge-verification.test.js.map +1 -0
  74. package/dist/lib/features/edgetokens/fake-edge-token-store.d.ts +11 -0
  75. package/dist/lib/features/edgetokens/fake-edge-token-store.d.ts.map +1 -0
  76. package/dist/lib/features/edgetokens/fake-edge-token-store.js +21 -0
  77. package/dist/lib/features/edgetokens/fake-edge-token-store.js.map +1 -0
  78. package/dist/lib/features/feature-lifecycle/feature-lifecycle-controller.d.ts.map +1 -1
  79. package/dist/lib/features/feature-lifecycle/feature-lifecycle-controller.js +6 -3
  80. package/dist/lib/features/feature-lifecycle/feature-lifecycle-controller.js.map +1 -1
  81. package/dist/lib/features/feature-lifecycle/feature-lifecycle-count-controller.d.ts.map +1 -1
  82. package/dist/lib/features/feature-lifecycle/feature-lifecycle-count-controller.js +2 -1
  83. package/dist/lib/features/feature-lifecycle/feature-lifecycle-count-controller.js.map +1 -1
  84. package/dist/lib/features/feature-links/feature-link-controller.d.ts.map +1 -1
  85. package/dist/lib/features/feature-links/feature-link-controller.js +6 -3
  86. package/dist/lib/features/feature-links/feature-link-controller.js.map +1 -1
  87. package/dist/lib/features/feature-search/feature.search.e2e.test.js +3 -3
  88. package/dist/lib/features/feature-search/feature.search.e2e.test.js.map +1 -1
  89. package/dist/lib/features/feature-toggle/converters/feature-toggle-row-converter.d.ts +1 -1
  90. package/dist/lib/features/feature-toggle/createFeatureToggleService.d.ts +2 -0
  91. package/dist/lib/features/feature-toggle/createFeatureToggleService.d.ts.map +1 -1
  92. package/dist/lib/features/feature-toggle/createFeatureToggleService.js +8 -2
  93. package/dist/lib/features/feature-toggle/createFeatureToggleService.js.map +1 -1
  94. package/dist/lib/features/feature-toggle/feature-toggle-service.d.ts +6 -6
  95. package/dist/lib/features/feature-toggle/feature-toggle-service.d.ts.map +1 -1
  96. package/dist/lib/features/feature-toggle/feature-toggle-service.js +6 -44
  97. package/dist/lib/features/feature-toggle/feature-toggle-service.js.map +1 -1
  98. package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.d.ts.map +1 -1
  99. package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.js +6 -0
  100. package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.js.map +1 -1
  101. package/dist/lib/features/feature-toggle/tests/feature-toggle-service.constraint-validation.test.d.ts +2 -0
  102. package/dist/lib/features/feature-toggle/tests/feature-toggle-service.constraint-validation.test.d.ts.map +1 -0
  103. package/dist/lib/features/feature-toggle/tests/feature-toggle-service.constraint-validation.test.js +185 -0
  104. package/dist/lib/features/feature-toggle/tests/feature-toggle-service.constraint-validation.test.js.map +1 -0
  105. package/dist/lib/features/frontend-api/createFrontendApiService.d.ts.map +1 -1
  106. package/dist/lib/features/frontend-api/createFrontendApiService.js +2 -0
  107. package/dist/lib/features/frontend-api/createFrontendApiService.js.map +1 -1
  108. package/dist/lib/features/index.d.ts +2 -0
  109. package/dist/lib/features/index.d.ts.map +1 -1
  110. package/dist/lib/features/index.js +2 -0
  111. package/dist/lib/features/index.js.map +1 -1
  112. package/dist/lib/features/instance-stats/createInstanceStatsService.d.ts.map +1 -1
  113. package/dist/lib/features/instance-stats/createInstanceStatsService.js +0 -1
  114. package/dist/lib/features/instance-stats/createInstanceStatsService.js.map +1 -1
  115. package/dist/lib/features/metrics/last-seen/tests/last-seen-service.test.js +2 -2
  116. package/dist/lib/features/metrics/last-seen/tests/last-seen-service.test.js.map +1 -1
  117. package/dist/lib/features/metrics/shared/schema.d.ts.map +1 -1
  118. package/dist/lib/features/metrics/shared/schema.js +10 -2
  119. package/dist/lib/features/metrics/shared/schema.js.map +1 -1
  120. package/dist/lib/features/metrics/shared/schema.test.js +18 -0
  121. package/dist/lib/features/metrics/shared/schema.test.js.map +1 -1
  122. package/dist/lib/features/pat/createPatService.d.ts +6 -0
  123. package/dist/lib/features/pat/createPatService.d.ts.map +1 -0
  124. package/dist/lib/features/pat/createPatService.js +15 -0
  125. package/dist/lib/features/pat/createPatService.js.map +1 -0
  126. package/dist/lib/features/pat/fake-pat-store.d.ts +18 -0
  127. package/dist/lib/features/pat/fake-pat-store.d.ts.map +1 -0
  128. package/dist/lib/features/pat/fake-pat-store.js +52 -0
  129. package/dist/lib/features/pat/fake-pat-store.js.map +1 -0
  130. package/dist/lib/{services → features/pat}/pat-service.d.ts +3 -3
  131. package/dist/lib/features/pat/pat-service.d.ts.map +1 -0
  132. package/dist/lib/{services → features/pat}/pat-service.js +5 -5
  133. package/dist/lib/features/pat/pat-service.js.map +1 -0
  134. package/dist/lib/{types/stores/pat-store.d.ts → features/pat/pat-store-type.d.ts} +2 -2
  135. package/dist/lib/features/pat/pat-store-type.d.ts.map +1 -0
  136. package/dist/lib/features/pat/pat-store-type.js +2 -0
  137. package/dist/lib/features/pat/pat-store-type.js.map +1 -0
  138. package/dist/lib/{db → features/pat}/pat-store.d.ts +4 -4
  139. package/dist/lib/features/pat/pat-store.d.ts.map +1 -0
  140. package/dist/lib/{db → features/pat}/pat-store.js +1 -1
  141. package/dist/lib/features/pat/pat-store.js.map +1 -0
  142. package/dist/lib/features/personal-dashboard/personal-dashboard-controller.d.ts.map +1 -1
  143. package/dist/lib/features/personal-dashboard/personal-dashboard-controller.js +4 -2
  144. package/dist/lib/features/personal-dashboard/personal-dashboard-controller.js.map +1 -1
  145. package/dist/lib/features/playground/feature-evaluator/constraint.d.ts +2 -1
  146. package/dist/lib/features/playground/feature-evaluator/constraint.d.ts.map +1 -1
  147. package/dist/lib/features/playground/feature-evaluator/constraint.js +18 -0
  148. package/dist/lib/features/playground/feature-evaluator/constraint.js.map +1 -1
  149. package/dist/lib/features/playground/offline-unleash-client.test.js +105 -0
  150. package/dist/lib/features/playground/offline-unleash-client.test.js.map +1 -1
  151. package/dist/lib/features/project-status/project-status-controller.d.ts.map +1 -1
  152. package/dist/lib/features/project-status/project-status-controller.js +2 -1
  153. package/dist/lib/features/project-status/project-status-controller.js.map +1 -1
  154. package/dist/lib/features/release-plans/createReleasePlanMilestoneStrategyService.d.ts +12 -0
  155. package/dist/lib/features/release-plans/createReleasePlanMilestoneStrategyService.d.ts.map +1 -0
  156. package/dist/lib/features/release-plans/createReleasePlanMilestoneStrategyService.js +26 -0
  157. package/dist/lib/features/release-plans/createReleasePlanMilestoneStrategyService.js.map +1 -0
  158. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.d.ts +20 -0
  159. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.d.ts.map +1 -0
  160. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.js +37 -0
  161. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.js.map +1 -0
  162. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.test.d.ts +2 -0
  163. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.test.d.ts.map +1 -0
  164. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.test.js +69 -0
  165. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.test.js.map +1 -0
  166. package/dist/lib/features/release-plans/release-plan-milestone-strategy-store.d.ts +10 -2
  167. package/dist/lib/features/release-plans/release-plan-milestone-strategy-store.d.ts.map +1 -1
  168. package/dist/lib/features/release-plans/release-plan-milestone-strategy-store.js +0 -1
  169. package/dist/lib/features/release-plans/release-plan-milestone-strategy-store.js.map +1 -1
  170. package/dist/lib/features/scheduler/schedule-services.d.ts.map +1 -1
  171. package/dist/lib/features/scheduler/schedule-services.js +3 -2
  172. package/dist/lib/features/scheduler/schedule-services.js.map +1 -1
  173. package/dist/lib/features/segment/admin-segment.e2e.test.js +117 -0
  174. package/dist/lib/features/segment/admin-segment.e2e.test.js.map +1 -1
  175. package/dist/lib/features/segment/createSegmentService.d.ts.map +1 -1
  176. package/dist/lib/features/segment/createSegmentService.js +7 -2
  177. package/dist/lib/features/segment/createSegmentService.js.map +1 -1
  178. package/dist/lib/features/segment/segment-controller.d.ts.map +1 -1
  179. package/dist/lib/features/segment/segment-controller.js +1 -1
  180. package/dist/lib/features/segment/segment-controller.js.map +1 -1
  181. package/dist/lib/features/segment/segment-service.d.ts +3 -1
  182. package/dist/lib/features/segment/segment-service.d.ts.map +1 -1
  183. package/dist/lib/features/segment/segment-service.js +4 -1
  184. package/dist/lib/features/segment/segment-service.js.map +1 -1
  185. package/dist/lib/features/users/user-store.d.ts.map +1 -1
  186. package/dist/lib/features/users/user-store.js +6 -0
  187. package/dist/lib/features/users/user-store.js.map +1 -1
  188. package/dist/lib/features/users/user-updates-read-model.d.ts +2 -0
  189. package/dist/lib/features/users/user-updates-read-model.d.ts.map +1 -1
  190. package/dist/lib/features/users/user-updates-read-model.js +2 -0
  191. package/dist/lib/features/users/user-updates-read-model.js.map +1 -1
  192. package/dist/lib/middleware/conditional-middleware.d.ts +1 -1
  193. package/dist/lib/middleware/conditional-middleware.d.ts.map +1 -1
  194. package/dist/lib/middleware/response-time-metrics.test.js +4 -0
  195. package/dist/lib/middleware/response-time-metrics.test.js.map +1 -1
  196. package/dist/lib/openapi/spec/admin-segment-schema.d.ts +1 -1
  197. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.d.ts +4 -4
  198. package/dist/lib/openapi/spec/advanced-playground-feature-schema.d.ts +8 -8
  199. package/dist/lib/openapi/spec/advanced-playground-response-schema.d.ts +17 -17
  200. package/dist/lib/openapi/spec/client-feature-schema.d.ts +2 -2
  201. package/dist/lib/openapi/spec/client-features-delta-schema.d.ts +5 -5
  202. package/dist/lib/openapi/spec/client-features-schema.d.ts +5 -5
  203. package/dist/lib/openapi/spec/client-features-schema.test.js +12 -0
  204. package/dist/lib/openapi/spec/client-features-schema.test.js.map +1 -1
  205. package/dist/lib/openapi/spec/client-metrics-schema.d.ts +1 -0
  206. package/dist/lib/openapi/spec/client-metrics-schema.d.ts.map +1 -1
  207. package/dist/lib/openapi/spec/client-metrics-schema.js +1 -0
  208. package/dist/lib/openapi/spec/client-metrics-schema.js.map +1 -1
  209. package/dist/lib/openapi/spec/client-segment-schema.d.ts +1 -1
  210. package/dist/lib/openapi/spec/constraint-schema.d.ts +2 -2
  211. package/dist/lib/openapi/spec/create-feature-strategy-schema.d.ts +1 -1
  212. package/dist/lib/openapi/spec/create-user-response-schema.d.ts +12 -0
  213. package/dist/lib/openapi/spec/create-user-response-schema.d.ts.map +1 -1
  214. package/dist/lib/openapi/spec/edge-environment-projects-list-schema.d.ts +41 -0
  215. package/dist/lib/openapi/spec/edge-environment-projects-list-schema.d.ts.map +1 -0
  216. package/dist/lib/openapi/spec/edge-environment-projects-list-schema.js +39 -0
  217. package/dist/lib/openapi/spec/edge-environment-projects-list-schema.js.map +1 -0
  218. package/dist/lib/openapi/spec/edge-token-schema.d.ts +6 -1
  219. package/dist/lib/openapi/spec/edge-token-schema.d.ts.map +1 -1
  220. package/dist/lib/openapi/spec/edge-token-schema.js +6 -1
  221. package/dist/lib/openapi/spec/edge-token-schema.js.map +1 -1
  222. package/dist/lib/openapi/spec/environment-project-schema.d.ts +2 -2
  223. package/dist/lib/openapi/spec/environments-project-schema.d.ts +4 -4
  224. package/dist/lib/openapi/spec/export-result-schema.d.ts +68 -68
  225. package/dist/lib/openapi/spec/feature-environment-schema.d.ts +17 -17
  226. package/dist/lib/openapi/spec/feature-schema.d.ts +34 -34
  227. package/dist/lib/openapi/spec/feature-search-environment-schema.d.ts +34 -34
  228. package/dist/lib/openapi/spec/feature-search-response-schema.d.ts +36 -36
  229. package/dist/lib/openapi/spec/feature-strategy-schema.d.ts +1 -1
  230. package/dist/lib/openapi/spec/group-schema.d.ts +24 -0
  231. package/dist/lib/openapi/spec/group-schema.d.ts.map +1 -1
  232. package/dist/lib/openapi/spec/group-user-model-schema.d.ts +12 -0
  233. package/dist/lib/openapi/spec/group-user-model-schema.d.ts.map +1 -1
  234. package/dist/lib/openapi/spec/groups-schema.d.ts +48 -0
  235. package/dist/lib/openapi/spec/groups-schema.d.ts.map +1 -1
  236. package/dist/lib/openapi/spec/health-overview-schema.d.ts +69 -69
  237. package/dist/lib/openapi/spec/health-report-schema.d.ts +69 -69
  238. package/dist/lib/openapi/spec/index.d.ts +3 -0
  239. package/dist/lib/openapi/spec/index.d.ts.map +1 -1
  240. package/dist/lib/openapi/spec/index.js +3 -0
  241. package/dist/lib/openapi/spec/index.js.map +1 -1
  242. package/dist/lib/openapi/spec/me-schema.d.ts +12 -0
  243. package/dist/lib/openapi/spec/me-schema.d.ts.map +1 -1
  244. package/dist/lib/openapi/spec/playground-constraint-schema.d.ts +1 -1
  245. package/dist/lib/openapi/spec/playground-feature-schema.d.ts +4 -4
  246. package/dist/lib/openapi/spec/playground-response-schema.d.ts +9 -9
  247. package/dist/lib/openapi/spec/playground-segment-schema.d.ts +1 -1
  248. package/dist/lib/openapi/spec/playground-strategy-schema.d.ts +2 -2
  249. package/dist/lib/openapi/spec/profile-schema.d.ts +34 -34
  250. package/dist/lib/openapi/spec/project-environment-schema.d.ts +1 -1
  251. package/dist/lib/openapi/spec/project-overview-schema.d.ts +69 -69
  252. package/dist/lib/openapi/spec/public-signup-token-schema.d.ts +12 -0
  253. package/dist/lib/openapi/spec/public-signup-token-schema.d.ts.map +1 -1
  254. package/dist/lib/openapi/spec/public-signup-tokens-schema.d.ts +24 -0
  255. package/dist/lib/openapi/spec/public-signup-tokens-schema.d.ts.map +1 -1
  256. package/dist/lib/openapi/spec/release-plan-milestone-schema.d.ts +4 -4
  257. package/dist/lib/openapi/spec/release-plan-milestone-strategy-schema.d.ts +2 -2
  258. package/dist/lib/openapi/spec/release-plan-schema.d.ts +8 -8
  259. package/dist/lib/openapi/spec/release-plan-template-schema.d.ts +8 -8
  260. package/dist/lib/openapi/spec/search-features-schema.d.ts +72 -72
  261. package/dist/lib/openapi/spec/segment-schema.d.ts +1 -1
  262. package/dist/lib/openapi/spec/segments-schema.d.ts +2 -2
  263. package/dist/lib/openapi/spec/signup-data-schema.d.ts +42 -0
  264. package/dist/lib/openapi/spec/signup-data-schema.d.ts.map +1 -0
  265. package/dist/lib/openapi/spec/signup-data-schema.js +40 -0
  266. package/dist/lib/openapi/spec/signup-data-schema.js.map +1 -0
  267. package/dist/lib/openapi/spec/submit-signup-data-schema.d.ts +50 -0
  268. package/dist/lib/openapi/spec/submit-signup-data-schema.d.ts.map +1 -0
  269. package/dist/lib/openapi/spec/submit-signup-data-schema.js +26 -0
  270. package/dist/lib/openapi/spec/submit-signup-data-schema.js.map +1 -0
  271. package/dist/lib/openapi/spec/ui-config-schema.d.ts +5 -0
  272. package/dist/lib/openapi/spec/ui-config-schema.d.ts.map +1 -1
  273. package/dist/lib/openapi/spec/ui-config-schema.js +5 -0
  274. package/dist/lib/openapi/spec/ui-config-schema.js.map +1 -1
  275. package/dist/lib/openapi/spec/update-feature-schema.d.ts +1 -1
  276. package/dist/lib/openapi/spec/update-feature-strategy-schema.d.ts +18 -2
  277. package/dist/lib/openapi/spec/update-feature-strategy-schema.d.ts.map +1 -1
  278. package/dist/lib/openapi/spec/update-feature-strategy-schema.js +17 -1
  279. package/dist/lib/openapi/spec/update-feature-strategy-schema.js.map +1 -1
  280. package/dist/lib/openapi/spec/upsert-segment-schema.d.ts +1 -1
  281. package/dist/lib/openapi/spec/user-access-overview-schema.d.ts +12 -0
  282. package/dist/lib/openapi/spec/user-access-overview-schema.d.ts.map +1 -1
  283. package/dist/lib/openapi/spec/user-schema.d.ts +12 -0
  284. package/dist/lib/openapi/spec/user-schema.d.ts.map +1 -1
  285. package/dist/lib/openapi/spec/user-schema.js +12 -0
  286. package/dist/lib/openapi/spec/user-schema.js.map +1 -1
  287. package/dist/lib/openapi/spec/users-groups-base-schema.d.ts +48 -0
  288. package/dist/lib/openapi/spec/users-groups-base-schema.d.ts.map +1 -1
  289. package/dist/lib/openapi/spec/users-schema.d.ts +12 -0
  290. package/dist/lib/openapi/spec/users-schema.d.ts.map +1 -1
  291. package/dist/lib/openapi/spec/users-search-schema.d.ts +12 -0
  292. package/dist/lib/openapi/spec/users-search-schema.d.ts.map +1 -1
  293. package/dist/lib/openapi/spec/validated-edge-tokens-schema.d.ts +6 -1
  294. package/dist/lib/openapi/spec/validated-edge-tokens-schema.d.ts.map +1 -1
  295. package/dist/lib/openapi/util/api-operation.d.ts +23 -3
  296. package/dist/lib/openapi/util/api-operation.d.ts.map +1 -1
  297. package/dist/lib/openapi/util/api-stability.d.ts +3 -0
  298. package/dist/lib/openapi/util/api-stability.d.ts.map +1 -0
  299. package/dist/lib/openapi/util/api-stability.js +49 -0
  300. package/dist/lib/openapi/util/api-stability.js.map +1 -0
  301. package/dist/lib/openapi/util/api-stability.test.d.ts +2 -0
  302. package/dist/lib/openapi/util/api-stability.test.d.ts.map +1 -0
  303. package/dist/lib/openapi/util/api-stability.test.js +140 -0
  304. package/dist/lib/openapi/util/api-stability.test.js.map +1 -0
  305. package/dist/lib/openapi/util/openapi-tags.d.ts +6 -6
  306. package/dist/lib/openapi/util/openapi-tags.d.ts.map +1 -1
  307. package/dist/lib/openapi/util/openapi-tags.js +4 -4
  308. package/dist/lib/openapi/util/openapi-tags.js.map +1 -1
  309. package/dist/lib/routes/admin-api/index.js +1 -1
  310. package/dist/lib/routes/admin-api/index.js.map +1 -1
  311. package/dist/lib/routes/admin-api/project/variants.d.ts.map +1 -1
  312. package/dist/lib/routes/admin-api/project/variants.js +5 -1
  313. package/dist/lib/routes/admin-api/project/variants.js.map +1 -1
  314. package/dist/lib/routes/admin-api/user/user.d.ts +1 -0
  315. package/dist/lib/routes/admin-api/user/user.d.ts.map +1 -1
  316. package/dist/lib/routes/admin-api/user/user.js +12 -1
  317. package/dist/lib/routes/admin-api/user/user.js.map +1 -1
  318. package/dist/lib/routes/admin-api/user-admin.d.ts.map +1 -1
  319. package/dist/lib/routes/admin-api/user-admin.js +4 -4
  320. package/dist/lib/routes/admin-api/user-admin.js.map +1 -1
  321. package/dist/lib/routes/edge-api/index.d.ts +4 -3
  322. package/dist/lib/routes/edge-api/index.d.ts.map +1 -1
  323. package/dist/lib/routes/edge-api/index.js +39 -7
  324. package/dist/lib/routes/edge-api/index.js.map +1 -1
  325. package/dist/lib/schema/feature-schema.test.js +1 -1
  326. package/dist/lib/schema/feature-schema.test.js.map +1 -1
  327. package/dist/lib/server-impl.d.ts +5 -4
  328. package/dist/lib/server-impl.d.ts.map +1 -1
  329. package/dist/lib/server-impl.js +6 -3
  330. package/dist/lib/server-impl.js.map +1 -1
  331. package/dist/lib/services/api-token-service.d.ts.map +1 -1
  332. package/dist/lib/services/api-token-service.js.map +1 -1
  333. package/dist/lib/services/edge-service.d.ts +22 -7
  334. package/dist/lib/services/edge-service.d.ts.map +1 -1
  335. package/dist/lib/services/edge-service.js +87 -9
  336. package/dist/lib/services/edge-service.js.map +1 -1
  337. package/dist/lib/services/index.d.ts +8 -3
  338. package/dist/lib/services/index.d.ts.map +1 -1
  339. package/dist/lib/services/index.js +23 -6
  340. package/dist/lib/services/index.js.map +1 -1
  341. package/dist/lib/services/openapi-service.d.ts +8 -2
  342. package/dist/lib/services/openapi-service.d.ts.map +1 -1
  343. package/dist/lib/services/openapi-service.js +49 -7
  344. package/dist/lib/services/openapi-service.js.map +1 -1
  345. package/dist/lib/services/openapi-service.test.d.ts +2 -0
  346. package/dist/lib/services/openapi-service.test.d.ts.map +1 -0
  347. package/dist/lib/services/openapi-service.test.js +41 -0
  348. package/dist/lib/services/openapi-service.test.js.map +1 -0
  349. package/dist/lib/services/user-service.d.ts +3 -1
  350. package/dist/lib/services/user-service.d.ts.map +1 -1
  351. package/dist/lib/services/user-service.js +7 -2
  352. package/dist/lib/services/user-service.js.map +1 -1
  353. package/dist/lib/services/user-service.test.js +4 -28
  354. package/dist/lib/services/user-service.test.js.map +1 -1
  355. package/dist/lib/types/experimental.d.ts +1 -1
  356. package/dist/lib/types/experimental.d.ts.map +1 -1
  357. package/dist/lib/types/experimental.js +6 -0
  358. package/dist/lib/types/experimental.js.map +1 -1
  359. package/dist/lib/types/model.d.ts +4 -0
  360. package/dist/lib/types/model.d.ts.map +1 -1
  361. package/dist/lib/types/model.js.map +1 -1
  362. package/dist/lib/types/option.d.ts +5 -0
  363. package/dist/lib/types/option.d.ts.map +1 -1
  364. package/dist/lib/types/stores/edge-store.d.ts +14 -0
  365. package/dist/lib/types/stores/edge-store.d.ts.map +1 -0
  366. package/dist/lib/types/stores/edge-store.js +2 -0
  367. package/dist/lib/types/stores/edge-store.js.map +1 -0
  368. package/dist/lib/types/stores/user-store.d.ts +4 -0
  369. package/dist/lib/types/stores/user-store.d.ts.map +1 -1
  370. package/dist/lib/types/stores.d.ts +6 -4
  371. package/dist/lib/types/stores.d.ts.map +1 -1
  372. package/dist/lib/types/stores.js +1 -1
  373. package/dist/lib/types/stores.js.map +1 -1
  374. package/dist/lib/types/user.d.ts +8 -1
  375. package/dist/lib/types/user.d.ts.map +1 -1
  376. package/dist/lib/types/user.js +3 -1
  377. package/dist/lib/types/user.js.map +1 -1
  378. package/dist/lib/ui-config/ui-config-service.d.ts.map +1 -1
  379. package/dist/lib/ui-config/ui-config-service.js +1 -0
  380. package/dist/lib/ui-config/ui-config-service.js.map +1 -1
  381. package/dist/lib/ui-config/ui-config.test.js +5 -1
  382. package/dist/lib/ui-config/ui-config.test.js.map +1 -1
  383. package/dist/lib/util/constants.d.ts +2 -1
  384. package/dist/lib/util/constants.d.ts.map +1 -1
  385. package/dist/lib/util/constants.js +2 -0
  386. package/dist/lib/util/constants.js.map +1 -1
  387. package/dist/lib/util/validators/constraint-types.d.ts +1 -0
  388. package/dist/lib/util/validators/constraint-types.d.ts.map +1 -1
  389. package/dist/lib/util/validators/constraint-types.js +12 -0
  390. package/dist/lib/util/validators/constraint-types.js.map +1 -1
  391. package/dist/lib/util/validators/constraint-types.test.js +25 -1
  392. package/dist/lib/util/validators/constraint-types.test.js.map +1 -1
  393. package/dist/mailtemplates/getting-started/getting-started.html.mustache +7 -2
  394. package/dist/mailtemplates/getting-started/getting-started.plain.mustache +6 -1
  395. package/dist/migrations/20260204150900-add-edge-hmac-verification-tables.d.ts +3 -0
  396. package/dist/migrations/20260204150900-add-edge-hmac-verification-tables.d.ts.map +1 -0
  397. package/dist/migrations/20260204150900-add-edge-hmac-verification-tables.js +39 -0
  398. package/dist/migrations/20260204150900-add-edge-hmac-verification-tables.js.map +1 -0
  399. package/dist/migrations/20260213095258-users-company-role-and-email-consent.d.ts +3 -0
  400. package/dist/migrations/20260213095258-users-company-role-and-email-consent.d.ts.map +1 -0
  401. package/dist/migrations/20260213095258-users-company-role-and-email-consent.js +12 -0
  402. package/dist/migrations/20260213095258-users-company-role-and-email-consent.js.map +1 -0
  403. package/dist/server-dev.js +3 -0
  404. package/dist/server-dev.js.map +1 -1
  405. package/dist/test/arbitraries.test.d.ts.map +1 -1
  406. package/dist/test/arbitraries.test.js +3 -9
  407. package/dist/test/arbitraries.test.js.map +1 -1
  408. package/dist/test/e2e/api/admin/context.e2e.test.js +1 -1
  409. package/dist/test/e2e/api/admin/context.e2e.test.js.map +1 -1
  410. package/dist/test/e2e/api/admin/project/variants.e2e.test.js +19 -0
  411. package/dist/test/e2e/api/admin/project/variants.e2e.test.js.map +1 -1
  412. package/dist/test/e2e/api/edge/create-token-request.test.d.ts +2 -0
  413. package/dist/test/e2e/api/edge/create-token-request.test.d.ts.map +1 -0
  414. package/dist/test/e2e/api/edge/create-token-request.test.js +215 -0
  415. package/dist/test/e2e/api/edge/create-token-request.test.js.map +1 -0
  416. package/dist/test/e2e/services/edge-service.e2e.test.js +106 -3
  417. package/dist/test/e2e/services/edge-service.e2e.test.js.map +1 -1
  418. package/dist/test/fixtures/fake-release-plan-milestone-strategy-store.d.ts +17 -0
  419. package/dist/test/fixtures/fake-release-plan-milestone-strategy-store.d.ts.map +1 -0
  420. package/dist/test/fixtures/fake-release-plan-milestone-strategy-store.js +44 -0
  421. package/dist/test/fixtures/fake-release-plan-milestone-strategy-store.js.map +1 -0
  422. package/dist/test/fixtures/store.d.ts.map +1 -1
  423. package/dist/test/fixtures/store.js +5 -2
  424. package/dist/test/fixtures/store.js.map +1 -1
  425. package/frontend/build/index.html +1 -1
  426. package/frontend/build/static/{AdvancedPlayground-B70Djk8B.js → AdvancedPlayground-BVQjoHnr.js} +2 -2
  427. package/frontend/build/static/BackendConnections-bRvUo06H.js +1 -0
  428. package/frontend/build/static/{CreateProject-Dnggz6io.js → CreateProject-z7K5-k8g.js} +1 -1
  429. package/frontend/build/static/{EnterpriseEdge-Dnk6MbDj.js → EnterpriseEdge-CAkbmuGs.js} +2 -2
  430. package/frontend/build/static/{FeatureMetricsChart-CFEixeGp.js → FeatureMetricsChart-TPw8l2qi.js} +2 -2
  431. package/frontend/build/static/FeatureStaleDialog-DwV5Mzh6.js +7 -0
  432. package/frontend/build/static/{FeatureViewLazyExport-CUnXEEwm.js → FeatureViewLazyExport-CBpSqVMU.js} +3 -3
  433. package/frontend/build/static/{FlagMetricsChart-ujKp_v58.js → FlagMetricsChart-DLcy8CzE.js} +2 -2
  434. package/frontend/build/static/FrontendNetworkTrafficUsage-CYJZFmkc.js +1 -0
  435. package/frontend/build/static/{GridLayoutWrapper-Cg_xypvQ.js → GridLayoutWrapper-CixVvIgD.js} +1 -1
  436. package/frontend/build/static/{ImpactMetricsPage-ZRSvDBg4.js → ImpactMetricsPage-AS6DHn5C.js} +1 -1
  437. package/frontend/build/static/{LazyAdminExport-B8GV3V8t.js → LazyAdminExport-dyqU9IvB.js} +14 -14
  438. package/frontend/build/static/{LazyProjectExport-B9SJl4_L.js → LazyProjectExport-B1vRaljX.js} +19 -19
  439. package/frontend/build/static/{LifecycleChartComponent-DulnIgCV.js → LifecycleChartComponent-BGuUP9oF.js} +3 -3
  440. package/frontend/build/static/{LineChartComponent-BVdLj0q6.js → LineChartComponent-DA6kG8Ei.js} +1 -1
  441. package/frontend/build/static/{MarkCompletedDialogue-Cu7y0hRZ.js → MarkCompletedDialogue-D2TM3HgS.js} +1 -1
  442. package/frontend/build/static/{NetworkOverview-CUmX-taY.js → NetworkOverview-aNdwr7xF.js} +1 -1
  443. package/frontend/build/static/{NetworkPrometheusAPIWarning-BwnVz0CY.js → NetworkPrometheusAPIWarning-f1m-ZHgX.js} +1 -1
  444. package/frontend/build/static/{NetworkTraffic-DCMn8UWo.js → NetworkTraffic-CzH9_YqS.js} +1 -1
  445. package/frontend/build/static/{NetworkTrafficUsage-DSZK447X.js → NetworkTrafficUsage-BqpcQ4JO.js} +1 -1
  446. package/frontend/build/static/{PercentageDonut-B2OwM0Er.js → PercentageDonut-cKg6eF-p.js} +1 -1
  447. package/frontend/build/static/{ReactJSONEditor-BPlzE1Zx.js → ReactJSONEditor-BH7GX57b.js} +1 -1
  448. package/frontend/build/static/RoleCell-D01N1lHV.js +1 -0
  449. package/frontend/build/static/{aggregateFeatureMetrics-Bcfo39hn.js → aggregateFeatureMetrics-DJ_IwcyH.js} +1 -1
  450. package/frontend/build/static/{formatTickValue-CqTJlzJZ.js → formatTickValue-ClJtK_xN.js} +2 -2
  451. package/frontend/build/static/index-Cz4lAJ3Y.js +568 -0
  452. package/frontend/build/static/{networkTrafficUsageHighlightPlugin-Dmm54dMG.js → networkTrafficUsageHighlightPlugin-Ce-A3Xr6.js} +1 -1
  453. package/frontend/build/static/unleash_logo_dark_no_label-DHgOj_XN.svg +6 -0
  454. package/frontend/build/static/unleash_logo_white_no_label-BazgWvcx.svg +6 -0
  455. package/frontend/build/static/{useApiTokens-D1XvAIIA.js → useApiTokens-Dx2wjhgw.js} +1 -1
  456. package/frontend/package.json +9 -7
  457. package/package.json +16 -13
  458. package/dist/lib/db/pat-store.d.ts.map +0 -1
  459. package/dist/lib/db/pat-store.js.map +0 -1
  460. package/dist/lib/routes/admin-api/constraints.d.ts.map +0 -1
  461. package/dist/lib/routes/admin-api/constraints.js.map +0 -1
  462. package/dist/lib/services/pat-service.d.ts.map +0 -1
  463. package/dist/lib/services/pat-service.js.map +0 -1
  464. package/dist/lib/types/stores/pat-store.d.ts.map +0 -1
  465. package/dist/lib/types/stores/pat-store.js +0 -2
  466. package/dist/lib/types/stores/pat-store.js.map +0 -1
  467. package/dist/test/e2e/api/admin/constraints.e2e.test.d.ts.map +0 -1
  468. package/dist/test/e2e/api/admin/constraints.e2e.test.js.map +0 -1
  469. package/dist/test/fixtures/fake-pat-store.d.ts +0 -16
  470. package/dist/test/fixtures/fake-pat-store.d.ts.map +0 -1
  471. package/dist/test/fixtures/fake-pat-store.js +0 -35
  472. package/dist/test/fixtures/fake-pat-store.js.map +0 -1
  473. package/frontend/build/static/BackendConnections-mlK6EAYQ.js +0 -1
  474. package/frontend/build/static/FeatureStaleDialog-DZoiwwdR.js +0 -7
  475. package/frontend/build/static/FrontendNetworkTrafficUsage-Dq8wwaXR.js +0 -1
  476. package/frontend/build/static/RoleCell-D5skjCJn.js +0 -1
  477. package/frontend/build/static/index-g9pKMnOR.js +0 -542
  478. /package/dist/{test/e2e/api/admin → lib/features/constraints}/constraints.e2e.test.d.ts +0 -0
@@ -1,4 +1,4 @@
1
- import type { Store } from './store.js';
1
+ import type { Store } from '../../types/stores/store.js';
2
2
  import type { CreatePatSchema, PatSchema } from '../../openapi/index.js';
3
3
  export interface IPatStore extends Store<PatSchema, number> {
4
4
  create(pat: CreatePatSchema, secret: string, userId: number): Promise<PatSchema>;
@@ -7,4 +7,4 @@ export interface IPatStore extends Store<PatSchema, number> {
7
7
  existsWithDescriptionByUser(description: string, userId: number): Promise<boolean>;
8
8
  countByUser(userId: number): Promise<number>;
9
9
  }
10
- //# sourceMappingURL=pat-store.d.ts.map
10
+ //# sourceMappingURL=pat-store-type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pat-store-type.d.ts","sourceRoot":"","sources":["../../../../src/lib/features/pat/pat-store-type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEzE,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC;IACvD,MAAM,CACF,GAAG,EAAE,eAAe,EACpB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,SAAS,CAAC,CAAC;IACtB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IACnD,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,2BAA2B,CACvB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAChD"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=pat-store-type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pat-store-type.js","sourceRoot":"","sources":["../../../../src/lib/features/pat/pat-store-type.ts"],"names":[],"mappings":""}
@@ -1,7 +1,7 @@
1
- import type { LogProvider } from '../logger.js';
2
- import type { IPatStore } from '../types/stores/pat-store.js';
3
- import type { Db } from './db.js';
4
- import type { CreatePatSchema, PatSchema } from '../openapi/index.js';
1
+ import type { LogProvider } from '../../logger.js';
2
+ import type { IPatStore } from './pat-store-type.js';
3
+ import type { Db } from '../../db/db.js';
4
+ import type { CreatePatSchema, PatSchema } from '../../openapi/index.js';
5
5
  export default class PatStore implements IPatStore {
6
6
  private db;
7
7
  private logger;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pat-store.d.ts","sourceRoot":"","sources":["../../../../src/lib/features/pat/pat-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAU,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAkCzE,MAAM,CAAC,OAAO,OAAO,QAAS,YAAW,SAAS;IAC9C,OAAO,CAAC,EAAE,CAAK;IAEf,OAAO,CAAC,MAAM,CAAS;gBAEX,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW;IAKpC,MAAM,CACR,GAAG,EAAE,eAAe,EACpB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,SAAS,CAAC;IAOf,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjC,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAIhC,OAAO,IAAI,IAAI;IAET,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASpC,2BAA2B,CAC7B,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC;IASb,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAS5C,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAQnC,MAAM,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAK9B,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;CAO3D"}
@@ -1,4 +1,4 @@
1
- import NotFoundError from '../error/notfound-error.js';
1
+ import NotFoundError from '../../error/notfound-error.js';
2
2
  const TABLE = 'personal_access_tokens';
3
3
  const PAT_PUBLIC_COLUMNS = [
4
4
  'id',
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pat-store.js","sourceRoot":"","sources":["../../../../src/lib/features/pat/pat-store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"personal-dashboard-controller.d.ts","sourceRoot":"","sources":["../../../../src/lib/features/personal-dashboard/personal-dashboard-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,cAAc,EAGtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,gBAAgB,EAAkB,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAIH,KAAK,uBAAuB,EAC/B,MAAM,wBAAwB,CAAC;AAChC,OAAO,UAAU,MAAM,4BAA4B,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAEH,KAAK,qCAAqC,EAC7C,MAAM,iEAAiE,CAAC;AAEzE,MAAM,CAAC,OAAO,OAAO,2BAA4B,SAAQ,UAAU;IAC/D,OAAO,CAAC,cAAc,CAAiB;IAEvC,OAAO,CAAC,wBAAwB,CAA2B;gBAGvD,MAAM,EAAE,cAAc,EACtB,EACI,cAAc,EACd,wBAAwB,GAC3B,EAAE,IAAI,CACH,gBAAgB,EAChB,gBAAgB,GAAG,0BAA0B,CAChD;IAiDC,oBAAoB,CACtB,GAAG,EAAE,YAAY,EACjB,GAAG,EAAE,QAAQ,CAAC,uBAAuB,CAAC,GACvC,OAAO,CAAC,IAAI,CAAC;IAkBV,kCAAkC,CACpC,GAAG,EAAE,YAAY,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,EACxC,GAAG,EAAE,QAAQ,CAAC,qCAAqC,CAAC,GACrD,OAAO,CAAC,IAAI,CAAC;CAkBnB"}
1
+ {"version":3,"file":"personal-dashboard-controller.d.ts","sourceRoot":"","sources":["../../../../src/lib/features/personal-dashboard/personal-dashboard-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,cAAc,EAGtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,gBAAgB,EAAkB,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAIH,KAAK,uBAAuB,EAC/B,MAAM,wBAAwB,CAAC;AAChC,OAAO,UAAU,MAAM,4BAA4B,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAEH,KAAK,qCAAqC,EAC7C,MAAM,iEAAiE,CAAC;AAEzE,MAAM,CAAC,OAAO,OAAO,2BAA4B,SAAQ,UAAU;IAC/D,OAAO,CAAC,cAAc,CAAiB;IAEvC,OAAO,CAAC,wBAAwB,CAA2B;gBAGvD,MAAM,EAAE,cAAc,EACtB,EACI,cAAc,EACd,wBAAwB,GAC3B,EAAE,IAAI,CACH,gBAAgB,EAChB,gBAAgB,GAAG,0BAA0B,CAChD;IAmDC,oBAAoB,CACtB,GAAG,EAAE,YAAY,EACjB,GAAG,EAAE,QAAQ,CAAC,uBAAuB,CAAC,GACvC,OAAO,CAAC,IAAI,CAAC;IAkBV,kCAAkC,CACpC,GAAG,EAAE,YAAY,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,EACxC,GAAG,EAAE,QAAQ,CAAC,qCAAqC,CAAC,GACrD,OAAO,CAAC,IAAI,CAAC;CAkBnB"}
@@ -14,7 +14,8 @@ export default class PersonalDashboardController extends Controller {
14
14
  permission: NONE,
15
15
  middleware: [
16
16
  openApiService.validPath({
17
- tags: ['Unstable'],
17
+ tags: ['Projects'],
18
+ release: { beta: '7', stable: '8' },
18
19
  summary: 'Get personal dashboard',
19
20
  description: 'Return all projects and flags that are relevant to the user.',
20
21
  operationId: 'getPersonalDashboard',
@@ -32,7 +33,8 @@ export default class PersonalDashboardController extends Controller {
32
33
  permission: NONE,
33
34
  middleware: [
34
35
  openApiService.validPath({
35
- tags: ['Unstable'],
36
+ tags: ['Projects'],
37
+ release: { beta: '7', stable: '8' },
36
38
  summary: 'Get personal project details',
37
39
  description: 'Return personal dashboard project events, owners, user roles and onboarding status',
38
40
  operationId: 'getPersonalDashboardProjectDetails',
@@ -1 +1 @@
1
- {"version":3,"file":"personal-dashboard-controller.js","sourceRoot":"","sources":["../../../../src/lib/features/personal-dashboard/personal-dashboard-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"personal-dashboard-controller.js","sourceRoot":"","sources":["../../../../src/lib/features/personal-dashboard/personal-dashboard-controller.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,8 @@ export declare enum Operator {
22
22
  DATE_BEFORE = "DATE_BEFORE",
23
23
  SEMVER_EQ = "SEMVER_EQ",
24
24
  SEMVER_GT = "SEMVER_GT",
25
- SEMVER_LT = "SEMVER_LT"
25
+ SEMVER_LT = "SEMVER_LT",
26
+ REGEX = "REGEX"
26
27
  }
27
28
  export type OperatorImpl = (constraint: Constraint, context: Context) => boolean;
28
29
  export declare const operators: Map<Operator, OperatorImpl>;
@@ -1 +1 @@
1
- {"version":3,"file":"constraint.d.ts","sourceRoot":"","sources":["../../../../../src/lib/features/playground/feature-evaluator/constraint.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAG5C,MAAM,WAAW,UAAU;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,oBAAY,QAAQ;IAChB,EAAE,OAAO;IACT,MAAM,WAAW;IACjB,aAAa,kBAAkB;IAC/B,eAAe,oBAAoB;IACnC,YAAY,iBAAiB;IAC7B,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,SAAS,cAAc;CAC1B;AAED,MAAM,MAAM,YAAY,GAAG,CACvB,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,KACf,OAAO,CAAC;AA6Gb,eAAO,MAAM,SAAS,6BAAoC,CAAC"}
1
+ {"version":3,"file":"constraint.d.ts","sourceRoot":"","sources":["../../../../../src/lib/features/playground/feature-evaluator/constraint.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAI5C,MAAM,WAAW,UAAU;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,oBAAY,QAAQ;IAChB,EAAE,OAAO;IACT,MAAM,WAAW;IACjB,aAAa,kBAAkB;IAC/B,eAAe,oBAAoB;IACnC,YAAY,iBAAiB;IAC7B,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,KAAK,UAAU;CAClB;AAED,MAAM,MAAM,YAAY,GAAG,CACvB,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,KACf,OAAO,CAAC;AAkIb,eAAO,MAAM,SAAS,6BAAoC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { gt as semverGt, lt as semverLt, eq as semverEq } from 'semver';
2
2
  import { resolveContextValue } from './helpers.js';
3
+ import { RE2JS } from 're2js';
3
4
  export var Operator;
4
5
  (function (Operator) {
5
6
  Operator["IN"] = "IN";
@@ -17,6 +18,7 @@ export var Operator;
17
18
  Operator["SEMVER_EQ"] = "SEMVER_EQ";
18
19
  Operator["SEMVER_GT"] = "SEMVER_GT";
19
20
  Operator["SEMVER_LT"] = "SEMVER_LT";
21
+ Operator["REGEX"] = "REGEX";
20
22
  })(Operator || (Operator = {}));
21
23
  const cleanValues = (values) => values.filter((v) => !!v).map((v) => v.trim());
22
24
  const InOperator = (constraint, context) => {
@@ -110,6 +112,21 @@ const NumberOperator = (constraint, context) => {
110
112
  }
111
113
  return false;
112
114
  };
115
+ const RegexOperator = (constraint, context) => {
116
+ const field = constraint.contextName;
117
+ const value = constraint.value;
118
+ const contextValue = resolveContextValue(context, field);
119
+ if (typeof contextValue !== 'string') {
120
+ return false;
121
+ }
122
+ try {
123
+ const regex = RE2JS.compile(value, constraint.caseInsensitive ? RE2JS.CASE_INSENSITIVE : undefined);
124
+ return regex.matcher(contextValue).find();
125
+ }
126
+ catch (_e) {
127
+ return false;
128
+ }
129
+ };
113
130
  export const operators = new Map();
114
131
  operators.set(Operator.IN, InOperator);
115
132
  operators.set(Operator.NOT_IN, InOperator);
@@ -126,4 +143,5 @@ operators.set(Operator.DATE_BEFORE, DateOperator);
126
143
  operators.set(Operator.SEMVER_EQ, SemverOperator);
127
144
  operators.set(Operator.SEMVER_GT, SemverOperator);
128
145
  operators.set(Operator.SEMVER_LT, SemverOperator);
146
+ operators.set(Operator.REGEX, RegexOperator);
129
147
  //# sourceMappingURL=constraint.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constraint.js","sourceRoot":"","sources":["../../../../../src/lib/features/playground/feature-evaluator/constraint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constraint.js","sourceRoot":"","sources":["../../../../../src/lib/features/playground/feature-evaluator/constraint.ts"],"names":[],"mappings":"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"}
@@ -95,6 +95,111 @@ describe('offline client', () => {
95
95
  expect(client.isEnabled(enabledFeature).result).toBeTruthy();
96
96
  expect(client.isEnabled(disabledFeature).result).toBeFalsy();
97
97
  });
98
+ it('regex constrains on appName', async () => {
99
+ const enabledFeature = 'toggle-name';
100
+ const notMatchingRegexFeature = 'not-matching-regex-toggle';
101
+ const matchIgnoreCaseFeature = 'match-ignore-case-toggle';
102
+ const invertedRegexFeature = 'inverted-regex-toggle';
103
+ const appName = 'test';
104
+ const client = await offlineUnleashClient({
105
+ features: [
106
+ {
107
+ name: enabledFeature,
108
+ enabled: true,
109
+ project: 'default',
110
+ strategies: [
111
+ {
112
+ name: 'default',
113
+ constraints: [
114
+ {
115
+ contextName: 'appName',
116
+ operator: 'REGEX',
117
+ value: 'test',
118
+ inverted: false,
119
+ caseInsensitive: false,
120
+ },
121
+ ],
122
+ },
123
+ ],
124
+ variants: [],
125
+ type: '',
126
+ stale: false,
127
+ },
128
+ {
129
+ name: notMatchingRegexFeature,
130
+ enabled: true,
131
+ project: 'default',
132
+ strategies: [
133
+ {
134
+ name: 'default',
135
+ constraints: [
136
+ {
137
+ contextName: 'appName',
138
+ operator: 'REGEX',
139
+ value: 'match-some-other-app-name',
140
+ inverted: false,
141
+ caseInsensitive: false,
142
+ },
143
+ ],
144
+ },
145
+ ],
146
+ variants: [],
147
+ type: '',
148
+ stale: false,
149
+ },
150
+ {
151
+ name: matchIgnoreCaseFeature,
152
+ enabled: true,
153
+ project: 'default',
154
+ strategies: [
155
+ {
156
+ name: 'default',
157
+ constraints: [
158
+ {
159
+ contextName: 'appName',
160
+ operator: 'REGEX',
161
+ value: 'TEST',
162
+ inverted: false,
163
+ caseInsensitive: true,
164
+ },
165
+ ],
166
+ },
167
+ ],
168
+ variants: [],
169
+ type: '',
170
+ stale: false,
171
+ },
172
+ {
173
+ name: invertedRegexFeature,
174
+ enabled: true,
175
+ project: 'default',
176
+ strategies: [
177
+ {
178
+ name: 'default',
179
+ constraints: [
180
+ {
181
+ contextName: 'appName',
182
+ operator: 'REGEX',
183
+ value: 'TEST',
184
+ inverted: true,
185
+ caseInsensitive: true,
186
+ },
187
+ ],
188
+ },
189
+ ],
190
+ variants: [],
191
+ type: '',
192
+ stale: false,
193
+ },
194
+ ],
195
+ context: { appName, environment: DEFAULT_ENV },
196
+ logError: console.log,
197
+ });
198
+ expect(client.isEnabled(enabledFeature).result).toBeTruthy();
199
+ expect(client.isEnabled(notMatchingRegexFeature).result).toBeFalsy();
200
+ expect(client.isEnabled(matchIgnoreCaseFeature).result).toBeTruthy();
201
+ expect(client.isEnabled(invertedRegexFeature).result).toBeFalsy();
202
+ });
98
203
  it('considers disabled features with a default strategy to be enabled', async () => {
99
204
  const name = 'toggle-name';
100
205
  const context = { appName: 'client-test' };
@@ -1 +1 @@
1
- {"version":3,"file":"offline-unleash-client.test.js","sourceRoot":"","sources":["../../../../src/lib/features/playground/offline-unleash-client.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"offline-unleash-client.test.js","sourceRoot":"","sources":["../../../../src/lib/features/playground/offline-unleash-client.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"project-status-controller.d.ts","sourceRoot":"","sources":["../../../../src/lib/features/project-status/project-status-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,UAAU,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAEH,KAAK,aAAa,EAClB,KAAK,cAAc,EAGtB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAkB,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAGH,KAAK,mBAAmB,EAC3B,MAAM,wBAAwB,CAAC;AAGhC,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,UAAU;IAC3D,OAAO,CAAC,oBAAoB,CAAuB;IAEnD,OAAO,CAAC,cAAc,CAAiB;IAEvC,OAAO,CAAC,YAAY,CAAgB;gBAExB,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,gBAAgB;IA2BxD,gBAAgB,CAClB,GAAG,EAAE,YAAY,CAAC,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAC3D,GAAG,EAAE,QAAQ,CAAC,mBAAmB,CAAC,GACnC,OAAO,CAAC,IAAI,CAAC;CAYnB"}
1
+ {"version":3,"file":"project-status-controller.d.ts","sourceRoot":"","sources":["../../../../src/lib/features/project-status/project-status-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,UAAU,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAEH,KAAK,aAAa,EAClB,KAAK,cAAc,EAGtB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAkB,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAGH,KAAK,mBAAmB,EAC3B,MAAM,wBAAwB,CAAC;AAGhC,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,UAAU;IAC3D,OAAO,CAAC,oBAAoB,CAAuB;IAEnD,OAAO,CAAC,cAAc,CAAiB;IAEvC,OAAO,CAAC,YAAY,CAAgB;gBAExB,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,gBAAgB;IA4BxD,gBAAgB,CAClB,GAAG,EAAE,YAAY,CAAC,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAC3D,GAAG,EAAE,QAAQ,CAAC,mBAAmB,CAAC,GACnC,OAAO,CAAC,IAAI,CAAC;CAYnB"}
@@ -15,7 +15,8 @@ export default class ProjectStatusController extends Controller {
15
15
  permission: NONE,
16
16
  middleware: [
17
17
  this.openApiService.validPath({
18
- tags: ['Unstable'],
18
+ tags: ['Projects'],
19
+ release: { beta: '7', stable: '8' },
19
20
  operationId: 'getProjectStatus',
20
21
  summary: 'Get project status',
21
22
  description: 'This endpoint returns information on the status the project, including activities, health, resources, and aggregated flag lifecycle data.',
@@ -1 +1 @@
1
- {"version":3,"file":"project-status-controller.js","sourceRoot":"","sources":["../../../../src/lib/features/project-status/project-status-controller.ts"],"names":[],"mappings":"AACA,OAAO,UAAU,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAIH,IAAI,EACJ,cAAc,GACjB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAGhF,OAAO,EACH,oBAAoB,EACpB,mBAAmB,GAEtB,MAAM,wBAAwB,CAAC;AAGhC,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,UAAU;IAO3D,YAAY,MAAsB,EAAE,QAA0B;QAC1D,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,oBAAoB,GAAG,QAAQ,CAAC,oBAAoB,CAAC;QAC1D,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC;QAC9C,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QAExC,IAAI,CAAC,KAAK,CAAC;YACP,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,IAAI,CAAC,gBAAgB;YAC9B,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE;gBACR,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC;oBAC1B,IAAI,EAAE,CAAC,UAAU,CAAC;oBAClB,WAAW,EAAE,kBAAkB;oBAC/B,OAAO,EAAE,oBAAoB;oBAC7B,WAAW,EACP,2IAA2I;oBAC/I,SAAS,EAAE;wBACP,GAAG,EAAE,oBAAoB,CAAC,qBAAqB,CAAC;wBAChD,GAAG,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;qBACzC;iBACJ,CAAC;aACL;SACJ,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,gBAAgB,CAClB,GAA2D,EAC3D,GAAkC;QAElC,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QACjC,MAAM,MAAM,GACR,MAAM,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAEhE,IAAI,CAAC,cAAc,CAAC,qBAAqB,CACrC,GAAG,EACH,GAAG,EACH,mBAAmB,CAAC,GAAG,EACvB,cAAc,CAAC,MAAM,CAAC,CACzB,CAAC;IACN,CAAC;CACJ"}
1
+ {"version":3,"file":"project-status-controller.js","sourceRoot":"","sources":["../../../../src/lib/features/project-status/project-status-controller.ts"],"names":[],"mappings":"AACA,OAAO,UAAU,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAIH,IAAI,EACJ,cAAc,GACjB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAGhF,OAAO,EACH,oBAAoB,EACpB,mBAAmB,GAEtB,MAAM,wBAAwB,CAAC;AAGhC,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,UAAU;IAO3D,YAAY,MAAsB,EAAE,QAA0B;QAC1D,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,oBAAoB,GAAG,QAAQ,CAAC,oBAAoB,CAAC;QAC1D,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC;QAC9C,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QAExC,IAAI,CAAC,KAAK,CAAC;YACP,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,IAAI,CAAC,gBAAgB;YAC9B,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE;gBACR,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC;oBAC1B,IAAI,EAAE,CAAC,UAAU,CAAC;oBAClB,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;oBACnC,WAAW,EAAE,kBAAkB;oBAC/B,OAAO,EAAE,oBAAoB;oBAC7B,WAAW,EACP,2IAA2I;oBAC/I,SAAS,EAAE;wBACP,GAAG,EAAE,oBAAoB,CAAC,qBAAqB,CAAC;wBAChD,GAAG,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;qBACzC;iBACJ,CAAC;aACL;SACJ,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,gBAAgB,CAClB,GAA2D,EAC3D,GAAkC;QAElC,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QACjC,MAAM,MAAM,GACR,MAAM,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAEhE,IAAI,CAAC,cAAc,CAAC,qBAAqB,CACrC,GAAG,EACH,GAAG,EACH,mBAAmB,CAAC,GAAG,EACvB,cAAc,CAAC,MAAM,CAAC,CACzB,CAAC;IACN,CAAC;CACJ"}
@@ -0,0 +1,12 @@
1
+ import type { IUnleashConfig } from '../../types/index.js';
2
+ import type { Db } from '../../db/db.js';
3
+ import { ReleasePlanMilestoneStrategyService } from './release-plan-milestone-strategy-service.js';
4
+ import { FakeReleasePlanMilestoneStrategyStore } from '../../../test/fixtures/fake-release-plan-milestone-strategy-store.js';
5
+ export declare const createReleasePlanMilestoneStrategyService: (db: Db, config: IUnleashConfig) => ReleasePlanMilestoneStrategyService;
6
+ export declare const createFakeReleasePlanMilestoneStrategyService: (config: IUnleashConfig) => {
7
+ projectStore: import("../../../test/fixtures/fake-project-store.js").default;
8
+ milestoneStrategyStore: FakeReleasePlanMilestoneStrategyStore;
9
+ featureToggleService: import("../feature-toggle/feature-toggle-service.js").FeatureToggleService;
10
+ releasePlanMilestoneStrategyService: ReleasePlanMilestoneStrategyService;
11
+ };
12
+ //# sourceMappingURL=createReleasePlanMilestoneStrategyService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createReleasePlanMilestoneStrategyService.d.ts","sourceRoot":"","sources":["../../../../src/lib/features/release-plans/createReleasePlanMilestoneStrategyService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,mCAAmC,EAAE,MAAM,8CAA8C,CAAC;AAMnG,OAAO,EAAE,qCAAqC,EAAE,MAAM,sEAAsE,CAAC;AAM7H,eAAO,MAAM,yCAAyC,GAClD,IAAI,EAAE,EACN,QAAQ,cAAc,KACvB,mCAiBF,CAAC;AAEF,eAAO,MAAM,6CAA6C,GACtD,QAAQ,cAAc;;;;;CAqBzB,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { ReleasePlanMilestoneStrategyService } from './release-plan-milestone-strategy-service.js';
2
+ import { ReleasePlanMilestoneStrategyStore } from './release-plan-milestone-strategy-store.js';
3
+ import { createFeatureToggleService, createFakeFeatureToggleService, } from '../feature-toggle/createFeatureToggleService.js';
4
+ import { FakeReleasePlanMilestoneStrategyStore } from '../../../test/fixtures/fake-release-plan-milestone-strategy-store.js';
5
+ import { createChangeRequestAccessReadModel, createFakeChangeRequestAccessService, } from '../change-request-access-service/createChangeRequestAccessReadModel.js';
6
+ export const createReleasePlanMilestoneStrategyService = (db, config) => {
7
+ const releasePlanMilestoneStrategyStore = new ReleasePlanMilestoneStrategyStore(db, {
8
+ eventBus: config.eventBus,
9
+ });
10
+ const featureToggleService = createFeatureToggleService(db, config);
11
+ const changeRequestAccessReadModel = createChangeRequestAccessReadModel(db, config);
12
+ return new ReleasePlanMilestoneStrategyService({ releasePlanMilestoneStrategyStore }, { featureToggleService }, changeRequestAccessReadModel, config);
13
+ };
14
+ export const createFakeReleasePlanMilestoneStrategyService = (config) => {
15
+ const milestoneStrategyStore = new FakeReleasePlanMilestoneStrategyStore();
16
+ const { featureToggleService, projectStore } = createFakeFeatureToggleService(config);
17
+ const changeRequestAccessReadModel = createFakeChangeRequestAccessService();
18
+ const releasePlanMilestoneStrategyService = new ReleasePlanMilestoneStrategyService({ releasePlanMilestoneStrategyStore: milestoneStrategyStore }, { featureToggleService }, changeRequestAccessReadModel, config);
19
+ return {
20
+ projectStore,
21
+ milestoneStrategyStore,
22
+ featureToggleService,
23
+ releasePlanMilestoneStrategyService,
24
+ };
25
+ };
26
+ //# sourceMappingURL=createReleasePlanMilestoneStrategyService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createReleasePlanMilestoneStrategyService.js","sourceRoot":"","sources":["../../../../src/lib/features/release-plans/createReleasePlanMilestoneStrategyService.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mCAAmC,EAAE,MAAM,8CAA8C,CAAC;AACnG,OAAO,EAAE,iCAAiC,EAAE,MAAM,4CAA4C,CAAC;AAC/F,OAAO,EACH,0BAA0B,EAC1B,8BAA8B,GACjC,MAAM,iDAAiD,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,sEAAsE,CAAC;AAC7H,OAAO,EACH,kCAAkC,EAClC,oCAAoC,GACvC,MAAM,wEAAwE,CAAC;AAEhF,MAAM,CAAC,MAAM,yCAAyC,GAAG,CACrD,EAAM,EACN,MAAsB,EACa,EAAE;IACrC,MAAM,iCAAiC,GACnC,IAAI,iCAAiC,CAAC,EAAE,EAAE;QACtC,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC5B,CAAC,CAAC;IACP,MAAM,oBAAoB,GAAG,0BAA0B,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACpE,MAAM,4BAA4B,GAAG,kCAAkC,CACnE,EAAE,EACF,MAAM,CACT,CAAC;IAEF,OAAO,IAAI,mCAAmC,CAC1C,EAAE,iCAAiC,EAAE,EACrC,EAAE,oBAAoB,EAAE,EACxB,4BAA4B,EAC5B,MAAM,CACT,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,6CAA6C,GAAG,CACzD,MAAsB,EACxB,EAAE;IACA,MAAM,sBAAsB,GAAG,IAAI,qCAAqC,EAAE,CAAC;IAC3E,MAAM,EAAE,oBAAoB,EAAE,YAAY,EAAE,GACxC,8BAA8B,CAAC,MAAM,CAAC,CAAC;IAE3C,MAAM,4BAA4B,GAAG,oCAAoC,EAAE,CAAC;IAC5E,MAAM,mCAAmC,GACrC,IAAI,mCAAmC,CACnC,EAAE,iCAAiC,EAAE,sBAAsB,EAAE,EAC7D,EAAE,oBAAoB,EAAE,EACxB,4BAA4B,EAC5B,MAAM,CACT,CAAC;IAEN,OAAO;QACH,YAAY;QACZ,sBAAsB;QACtB,oBAAoB;QACpB,mCAAmC;KACtC,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { IAuditUser, IUnleashConfig, MilestoneStrategyConfig, MilestoneStrategyConfigUpdate } from '../../types/index.js';
2
+ import type { IUser } from '../../types/user.js';
3
+ import { type IChangeRequestAccessReadModel, type IUnleashServices, type IUnleashStores } from '../../server-impl.js';
4
+ type MilestoneStrategyContext = {
5
+ projectId: string;
6
+ environment: string;
7
+ featureName: string;
8
+ };
9
+ export declare class ReleasePlanMilestoneStrategyService {
10
+ private readonly logger;
11
+ private readonly milestoneStrategyStore;
12
+ private readonly featureToggleService;
13
+ private changeRequestAccessReadModel;
14
+ constructor({ releasePlanMilestoneStrategyStore: milestoneStrategyStore, }: Pick<IUnleashStores, 'releasePlanMilestoneStrategyStore'>, { featureToggleService, }: Pick<IUnleashServices, 'featureToggleService'>, changeRequestAccessReadModel: IChangeRequestAccessReadModel, { getLogger }: Pick<IUnleashConfig, 'getLogger'>);
15
+ updateStrategy(id: string, strategy: Partial<MilestoneStrategyConfigUpdate>, context: MilestoneStrategyContext, auditUser: IAuditUser, user?: IUser): Promise<MilestoneStrategyConfig>;
16
+ private stopWhenChangeRequestsEnabled;
17
+ unprotectedUpdateStrategy(id: string, strategy: Partial<MilestoneStrategyConfigUpdate>, context: MilestoneStrategyContext, auditUser: IAuditUser, user?: IUser): Promise<MilestoneStrategyConfig>;
18
+ }
19
+ export {};
20
+ //# sourceMappingURL=release-plan-milestone-strategy-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"release-plan-milestone-strategy-service.d.ts","sourceRoot":"","sources":["../../../../src/lib/features/release-plans/release-plan-milestone-strategy-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,UAAU,EACV,cAAc,EACd,uBAAuB,EACvB,6BAA6B,EAChC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAIjD,OAAO,EAGH,KAAK,6BAA6B,EAClC,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACtB,MAAM,sBAAsB,CAAC;AAE9B,KAAK,wBAAwB,GAAG;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,qBAAa,mCAAmC;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAqC;IAC5E,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAuB;IAC5D,OAAO,CAAC,4BAA4B,CAAgC;gBAGhE,EACI,iCAAiC,EAAE,sBAAsB,GAC5D,EAAE,IAAI,CAAC,cAAc,EAAE,mCAAmC,CAAC,EAC5D,EACI,oBAAoB,GACvB,EAAE,IAAI,CAAC,gBAAgB,EAAE,sBAAsB,CAAC,EACjD,4BAA4B,EAAE,6BAA6B,EAC3D,EAAE,SAAS,EAAE,EAAE,IAAI,CAAC,cAAc,EAAE,WAAW,CAAC;IAU9C,cAAc,CAChB,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,OAAO,CAAC,6BAA6B,CAAC,EAChD,OAAO,EAAE,wBAAwB,EACjC,SAAS,EAAE,UAAU,EACrB,IAAI,CAAC,EAAE,KAAK,GACb,OAAO,CAAC,uBAAuB,CAAC;YAgBrB,6BAA6B;IAgBrC,yBAAyB,CAC3B,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,OAAO,CAAC,6BAA6B,CAAC,EAChD,OAAO,EAAE,wBAAwB,EACjC,SAAS,EAAE,UAAU,EACrB,IAAI,CAAC,EAAE,KAAK,GACb,OAAO,CAAC,uBAAuB,CAAC;CAgCtC"}
@@ -0,0 +1,37 @@
1
+ import { PermissionError, SKIP_CHANGE_REQUEST, } from '../../server-impl.js';
2
+ export class ReleasePlanMilestoneStrategyService {
3
+ constructor({ releasePlanMilestoneStrategyStore: milestoneStrategyStore, }, { featureToggleService, }, changeRequestAccessReadModel, { getLogger }) {
4
+ this.logger = getLogger('services/release-plan-milestone-strategy-service.ts');
5
+ this.milestoneStrategyStore = milestoneStrategyStore;
6
+ this.featureToggleService = featureToggleService;
7
+ this.changeRequestAccessReadModel = changeRequestAccessReadModel;
8
+ }
9
+ async updateStrategy(id, strategy, context, auditUser, user) {
10
+ await this.stopWhenChangeRequestsEnabled(context.projectId, context.environment, user);
11
+ return this.unprotectedUpdateStrategy(id, strategy, context, auditUser, user);
12
+ }
13
+ async stopWhenChangeRequestsEnabled(project, environment, user) {
14
+ const canBypass = await this.changeRequestAccessReadModel.canBypassChangeRequest(project, environment, user);
15
+ if (!canBypass) {
16
+ throw new PermissionError(SKIP_CHANGE_REQUEST);
17
+ }
18
+ }
19
+ async unprotectedUpdateStrategy(id, strategy, context, auditUser, user) {
20
+ const { projectId, environment, featureName } = context;
21
+ let isActive;
22
+ try {
23
+ isActive = Boolean(await this.featureToggleService.getStrategy(id));
24
+ }
25
+ catch {
26
+ isActive = false;
27
+ }
28
+ const shouldSyncStrategies = isActive;
29
+ if (shouldSyncStrategies) {
30
+ await this.featureToggleService.unprotectedUpdateStrategy(id, strategy, { projectId, environment, featureName }, auditUser, user);
31
+ }
32
+ const updatedStrategy = await this.milestoneStrategyStore.upsert(id, strategy);
33
+ this.logger.info(`${auditUser.username} updates milestone strategy ${id} for feature ${context.featureName}`);
34
+ return updatedStrategy;
35
+ }
36
+ }
37
+ //# sourceMappingURL=release-plan-milestone-strategy-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"release-plan-milestone-strategy-service.js","sourceRoot":"","sources":["../../../../src/lib/features/release-plans/release-plan-milestone-strategy-service.ts"],"names":[],"mappings":"AAUA,OAAO,EACH,eAAe,EACf,mBAAmB,GAItB,MAAM,sBAAsB,CAAC;AAQ9B,MAAM,OAAO,mCAAmC;IAM5C,YACI,EACI,iCAAiC,EAAE,sBAAsB,GACD,EAC5D,EACI,oBAAoB,GACyB,EACjD,4BAA2D,EAC3D,EAAE,SAAS,EAAqC;QAEhD,IAAI,CAAC,MAAM,GAAG,SAAS,CACnB,qDAAqD,CACxD,CAAC;QACF,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACrD,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,IAAI,CAAC,4BAA4B,GAAG,4BAA4B,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,cAAc,CAChB,EAAU,EACV,QAAgD,EAChD,OAAiC,EACjC,SAAqB,EACrB,IAAY;QAEZ,MAAM,IAAI,CAAC,6BAA6B,CACpC,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,WAAW,EACnB,IAAI,CACP,CAAC;QAEF,OAAO,IAAI,CAAC,yBAAyB,CACjC,EAAE,EACF,QAAQ,EACR,OAAO,EACP,SAAS,EACT,IAAI,CACP,CAAC;IACN,CAAC;IAEO,KAAK,CAAC,6BAA6B,CACvC,OAAe,EACf,WAAmB,EACnB,IAAY;QAEZ,MAAM,SAAS,GACX,MAAM,IAAI,CAAC,4BAA4B,CAAC,sBAAsB,CAC1D,OAAO,EACP,WAAW,EACX,IAAI,CACP,CAAC;QACN,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,MAAM,IAAI,eAAe,CAAC,mBAAmB,CAAC,CAAC;QACnD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC3B,EAAU,EACV,QAAgD,EAChD,OAAiC,EACjC,SAAqB,EACrB,IAAY;QAEZ,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;QAExD,IAAI,QAAiB,CAAC;QACtB,IAAI,CAAC;YACD,QAAQ,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;QACxE,CAAC;QAAC,MAAM,CAAC;YACL,QAAQ,GAAG,KAAK,CAAC;QACrB,CAAC;QAED,MAAM,oBAAoB,GAAG,QAAQ,CAAC;QACtC,IAAI,oBAAoB,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,oBAAoB,CAAC,yBAAyB,CACrD,EAAE,EACF,QAAQ,EACR,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,EACvC,SAAS,EACT,IAAI,CACP,CAAC;QACN,CAAC;QAED,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAC5D,EAAE,EACF,QAAQ,CACX,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,GAAG,SAAS,CAAC,QAAQ,+BAA+B,EAAE,gBAAgB,OAAO,CAAC,WAAW,EAAE,CAC9F,CAAC;QAEF,OAAO,eAAe,CAAC;IAC3B,CAAC;CACJ"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=release-plan-milestone-strategy-service.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"release-plan-milestone-strategy-service.test.d.ts","sourceRoot":"","sources":["../../../../src/lib/features/release-plans/release-plan-milestone-strategy-service.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,69 @@
1
+ import { createTestConfig } from '../../../test/config/test-config.js';
2
+ import { createFakeReleasePlanMilestoneStrategyService } from './createReleasePlanMilestoneStrategyService.js';
3
+ import { TEST_AUDIT_USER } from '../../types/core.js';
4
+ import { DEFAULT_ENV } from '../../util/constants.js';
5
+ import { ReleasePlanMilestoneStrategyService } from './release-plan-milestone-strategy-service.js';
6
+ import { FakeChangeRequestAccessReadModel } from '../change-request-access-service/fake-change-request-access-read-model.js';
7
+ import { SKIP_CHANGE_REQUEST } from '../../server-impl.js';
8
+ const defaultContext = {
9
+ projectId: 'default',
10
+ environment: DEFAULT_ENV,
11
+ featureName: 'Demo',
12
+ };
13
+ let featureToggleService;
14
+ let projectStore;
15
+ let milestoneStrategyStore;
16
+ let milestoneStrategyService;
17
+ beforeAll(() => {
18
+ const config = createTestConfig();
19
+ const fakeService = createFakeReleasePlanMilestoneStrategyService(config);
20
+ featureToggleService = fakeService.featureToggleService;
21
+ projectStore = fakeService.projectStore;
22
+ milestoneStrategyStore = fakeService.milestoneStrategyStore;
23
+ milestoneStrategyService = fakeService.releasePlanMilestoneStrategyService;
24
+ });
25
+ const createFeatureStrategy = async (milestoneStrategy) => {
26
+ return await featureToggleService.createStrategy({
27
+ id: milestoneStrategy.id,
28
+ name: milestoneStrategy.strategyName,
29
+ ...milestoneStrategy,
30
+ }, defaultContext, TEST_AUDIT_USER);
31
+ };
32
+ test('also updates feature strategy when present', async () => {
33
+ await projectStore.create({
34
+ id: defaultContext.projectId,
35
+ name: 'Default',
36
+ });
37
+ await featureToggleService.createFeatureToggle(defaultContext.projectId, { name: defaultContext.featureName }, TEST_AUDIT_USER);
38
+ const milestoneStrategy = await milestoneStrategyStore.insert({
39
+ milestoneId: 'milestone-1',
40
+ strategyName: 'default',
41
+ sortOrder: 0,
42
+ parameters: {},
43
+ constraints: [],
44
+ variants: [],
45
+ });
46
+ const featureStrategy = await createFeatureStrategy(milestoneStrategy);
47
+ await milestoneStrategyService.updateStrategy(featureStrategy.id, {
48
+ title: 'updated-title',
49
+ parameters: { rollout: '50' },
50
+ constraints: [],
51
+ variants: [],
52
+ }, defaultContext, TEST_AUDIT_USER);
53
+ const updatedFeatureStrategy = await featureToggleService.getStrategy(featureStrategy.id);
54
+ expect(updatedFeatureStrategy).toEqual(expect.objectContaining({
55
+ title: 'updated-title',
56
+ parameters: expect.objectContaining({ rollout: '50' }),
57
+ }));
58
+ });
59
+ test('throws PermissionError when user cannot bypass change requests', async () => {
60
+ const config = createTestConfig();
61
+ const service = new ReleasePlanMilestoneStrategyService({ releasePlanMilestoneStrategyStore: milestoneStrategyStore }, { featureToggleService }, new FakeChangeRequestAccessReadModel(false), config);
62
+ await expect(service.updateStrategy('some-id', {
63
+ title: 'updated-title',
64
+ parameters: { rollout: '50' },
65
+ constraints: [],
66
+ variants: [],
67
+ }, defaultContext, TEST_AUDIT_USER)).rejects.toThrow(SKIP_CHANGE_REQUEST);
68
+ });
69
+ //# sourceMappingURL=release-plan-milestone-strategy-service.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"release-plan-milestone-strategy-service.test.js","sourceRoot":"","sources":["../../../../src/lib/features/release-plans/release-plan-milestone-strategy-service.test.ts"],"names":[],"mappings":"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"}