unleash-server 8.0.2 → 8.0.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 (488) hide show
  1. package/dist/lib/addons/feature-event-formatter-md.d.ts.map +1 -1
  2. package/dist/lib/addons/feature-event-formatter-md.js +5 -3
  3. package/dist/lib/addons/feature-event-formatter-md.js.map +1 -1
  4. package/dist/lib/addons/feature-event-formatter-md.test.js +3 -1
  5. package/dist/lib/addons/feature-event-formatter-md.test.js.map +1 -1
  6. package/dist/lib/addons/webhook.d.ts.map +1 -1
  7. package/dist/lib/addons/webhook.js +28 -2
  8. package/dist/lib/addons/webhook.js.map +1 -1
  9. package/dist/lib/addons/webhook.test.js +72 -0
  10. package/dist/lib/addons/webhook.test.js.map +1 -1
  11. package/dist/lib/app.d.ts.map +1 -1
  12. package/dist/lib/app.js +2 -0
  13. package/dist/lib/app.js.map +1 -1
  14. package/dist/lib/create-config.d.ts.map +1 -1
  15. package/dist/lib/create-config.js +1 -0
  16. package/dist/lib/create-config.js.map +1 -1
  17. package/dist/lib/features/context/context-field-store.d.ts +1 -1
  18. package/dist/lib/features/context/context-field-store.d.ts.map +1 -1
  19. package/dist/lib/features/context/context-field-store.js +1 -5
  20. package/dist/lib/features/context/context-field-store.js.map +1 -1
  21. package/dist/lib/features/context/context-service.d.ts +5 -4
  22. package/dist/lib/features/context/context-service.d.ts.map +1 -1
  23. package/dist/lib/features/context/context-service.js +20 -27
  24. package/dist/lib/features/context/context-service.js.map +1 -1
  25. package/dist/lib/features/context/context-service.test.d.ts +2 -0
  26. package/dist/lib/features/context/context-service.test.d.ts.map +1 -0
  27. package/dist/lib/features/context/context-service.test.js +24 -0
  28. package/dist/lib/features/context/context-service.test.js.map +1 -0
  29. package/dist/lib/features/context/context.d.ts +1 -0
  30. package/dist/lib/features/context/context.d.ts.map +1 -1
  31. package/dist/lib/features/context/context.js +22 -10
  32. package/dist/lib/features/context/context.js.map +1 -1
  33. package/dist/lib/features/context/context.test.js +15 -1
  34. package/dist/lib/features/context/context.test.js.map +1 -1
  35. package/dist/lib/features/context/createContextService.d.ts +4 -1
  36. package/dist/lib/features/context/createContextService.d.ts.map +1 -1
  37. package/dist/lib/features/context/createContextService.js +2 -1
  38. package/dist/lib/features/context/createContextService.js.map +1 -1
  39. package/dist/lib/features/context/fake-context-field-store.d.ts +1 -1
  40. package/dist/lib/features/context/fake-context-field-store.d.ts.map +1 -1
  41. package/dist/lib/features/context/fake-context-field-store.js +1 -6
  42. package/dist/lib/features/context/fake-context-field-store.js.map +1 -1
  43. package/dist/lib/features/export-import-toggles/createExportImportService.js +1 -1
  44. package/dist/lib/features/export-import-toggles/createExportImportService.js.map +1 -1
  45. package/dist/lib/features/feature-toggle/converters/feature-toggle-row-converter.d.ts +1 -1
  46. package/dist/lib/features/feature-toggle/fakes/fake-feature-strategies-store.d.ts +2 -1
  47. package/dist/lib/features/feature-toggle/fakes/fake-feature-strategies-store.d.ts.map +1 -1
  48. package/dist/lib/features/feature-toggle/fakes/fake-feature-strategies-store.js +5 -0
  49. package/dist/lib/features/feature-toggle/fakes/fake-feature-strategies-store.js.map +1 -1
  50. package/dist/lib/features/feature-toggle/feature-toggle-controller.d.ts +1 -1
  51. package/dist/lib/features/feature-toggle/feature-toggle-controller.d.ts.map +1 -1
  52. package/dist/lib/features/feature-toggle/feature-toggle-controller.js +22 -2
  53. package/dist/lib/features/feature-toggle/feature-toggle-controller.js.map +1 -1
  54. package/dist/lib/features/feature-toggle/feature-toggle-service.d.ts +3 -2
  55. package/dist/lib/features/feature-toggle/feature-toggle-service.d.ts.map +1 -1
  56. package/dist/lib/features/feature-toggle/feature-toggle-service.js +11 -4
  57. package/dist/lib/features/feature-toggle/feature-toggle-service.js.map +1 -1
  58. package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.d.ts +2 -0
  59. package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.d.ts.map +1 -1
  60. package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.js +7 -0
  61. package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.js.map +1 -1
  62. package/dist/lib/features/feature-toggle/tests/feature-toggles.e2e.test.js +4 -0
  63. package/dist/lib/features/feature-toggle/tests/feature-toggles.e2e.test.js.map +1 -1
  64. package/dist/lib/features/feature-toggle/types/feature-toggle-strategies-store-type.d.ts +6 -0
  65. package/dist/lib/features/feature-toggle/types/feature-toggle-strategies-store-type.d.ts.map +1 -1
  66. package/dist/lib/features/playground/feature-evaluator/constraint.d.ts +2 -0
  67. package/dist/lib/features/playground/feature-evaluator/constraint.d.ts.map +1 -1
  68. package/dist/lib/features/playground/feature-evaluator/constraint.js +11 -1
  69. package/dist/lib/features/playground/feature-evaluator/constraint.js.map +1 -1
  70. package/dist/lib/features/playground/playground.test.js +2 -3
  71. package/dist/lib/features/playground/playground.test.js.map +1 -1
  72. package/dist/lib/features/release-plans/release-plan-template-store.d.ts +4 -0
  73. package/dist/lib/features/release-plans/release-plan-template-store.d.ts.map +1 -1
  74. package/dist/lib/features/release-plans/release-plan-template-store.js +25 -2
  75. package/dist/lib/features/release-plans/release-plan-template-store.js.map +1 -1
  76. package/dist/lib/features/release-plans/release-plan-template-store.test.js +75 -16
  77. package/dist/lib/features/release-plans/release-plan-template-store.test.js.map +1 -1
  78. package/dist/lib/features/release-plans/release-plan-template.d.ts +1 -0
  79. package/dist/lib/features/release-plans/release-plan-template.d.ts.map +1 -1
  80. package/dist/lib/features/scheduler/scheduler-service.test.js +1 -0
  81. package/dist/lib/features/scheduler/scheduler-service.test.js.map +1 -1
  82. package/dist/lib/features/unique-connection/unique-connection-store.e2e.test.js +3 -0
  83. package/dist/lib/features/unique-connection/unique-connection-store.e2e.test.js.map +1 -1
  84. package/dist/lib/middleware/rbac-middleware.d.ts.map +1 -1
  85. package/dist/lib/middleware/rbac-middleware.js +3 -4
  86. package/dist/lib/middleware/rbac-middleware.js.map +1 -1
  87. package/dist/lib/middleware/rbac-middleware.test.js +62 -24
  88. package/dist/lib/middleware/rbac-middleware.test.js.map +1 -1
  89. package/dist/lib/middleware/session-context.d.ts +20 -0
  90. package/dist/lib/middleware/session-context.d.ts.map +1 -0
  91. package/dist/lib/middleware/session-context.js +38 -0
  92. package/dist/lib/middleware/session-context.js.map +1 -0
  93. package/dist/lib/openapi/spec/admin-segment-schema.d.ts +1 -1
  94. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.d.ts +4 -4
  95. package/dist/lib/openapi/spec/advanced-playground-feature-schema.d.ts +8 -8
  96. package/dist/lib/openapi/spec/advanced-playground-response-schema.d.ts +17 -17
  97. package/dist/lib/openapi/spec/client-feature-schema.d.ts +2 -2
  98. package/dist/lib/openapi/spec/client-features-delta-schema.d.ts +5 -5
  99. package/dist/lib/openapi/spec/client-features-schema.d.ts +5 -5
  100. package/dist/lib/openapi/spec/client-segment-schema.d.ts +1 -1
  101. package/dist/lib/openapi/spec/constraint-schema.d.ts +2 -2
  102. package/dist/lib/openapi/spec/create-feature-strategy-schema.d.ts +1 -1
  103. package/dist/lib/openapi/spec/environment-project-schema.d.ts +2 -2
  104. package/dist/lib/openapi/spec/environments-project-schema.d.ts +4 -4
  105. package/dist/lib/openapi/spec/export-result-schema.d.ts +68 -68
  106. package/dist/lib/openapi/spec/feature-environment-schema.d.ts +17 -17
  107. package/dist/lib/openapi/spec/feature-schema.d.ts +34 -34
  108. package/dist/lib/openapi/spec/feature-search-environment-schema.d.ts +34 -34
  109. package/dist/lib/openapi/spec/feature-search-response-schema.d.ts +68 -68
  110. package/dist/lib/openapi/spec/feature-strategy-schema.d.ts +1 -1
  111. package/dist/lib/openapi/spec/health-overview-schema.d.ts +69 -69
  112. package/dist/lib/openapi/spec/health-report-schema.d.ts +69 -69
  113. package/dist/lib/openapi/spec/playground-constraint-schema.d.ts +1 -1
  114. package/dist/lib/openapi/spec/playground-feature-schema.arbitraries.d.ts +4 -0
  115. package/dist/lib/openapi/spec/playground-feature-schema.arbitraries.d.ts.map +1 -0
  116. package/dist/lib/openapi/spec/playground-feature-schema.arbitraries.js +91 -0
  117. package/dist/lib/openapi/spec/playground-feature-schema.arbitraries.js.map +1 -0
  118. package/dist/lib/openapi/spec/playground-feature-schema.d.ts +4 -4
  119. package/dist/lib/openapi/spec/playground-feature-schema.test.d.ts +1 -3
  120. package/dist/lib/openapi/spec/playground-feature-schema.test.d.ts.map +1 -1
  121. package/dist/lib/openapi/spec/playground-feature-schema.test.js +1 -89
  122. package/dist/lib/openapi/spec/playground-feature-schema.test.js.map +1 -1
  123. package/dist/lib/openapi/spec/playground-request-schema.arbitraries.d.ts +4 -0
  124. package/dist/lib/openapi/spec/playground-request-schema.arbitraries.d.ts.map +1 -0
  125. package/dist/lib/openapi/spec/playground-request-schema.arbitraries.js +9 -0
  126. package/dist/lib/openapi/spec/playground-request-schema.arbitraries.js.map +1 -0
  127. package/dist/lib/openapi/spec/playground-request-schema.test.d.ts +1 -3
  128. package/dist/lib/openapi/spec/playground-request-schema.test.d.ts.map +1 -1
  129. package/dist/lib/openapi/spec/playground-request-schema.test.js +1 -8
  130. package/dist/lib/openapi/spec/playground-request-schema.test.js.map +1 -1
  131. package/dist/lib/openapi/spec/playground-response-schema.d.ts +9 -9
  132. package/dist/lib/openapi/spec/playground-response-schema.test.js +2 -3
  133. package/dist/lib/openapi/spec/playground-response-schema.test.js.map +1 -1
  134. package/dist/lib/openapi/spec/playground-segment-schema.d.ts +1 -1
  135. package/dist/lib/openapi/spec/playground-strategy-schema.d.ts +2 -2
  136. package/dist/lib/openapi/spec/profile-schema.d.ts +34 -34
  137. package/dist/lib/openapi/spec/project-environment-schema.d.ts +1 -1
  138. package/dist/lib/openapi/spec/project-overview-schema.d.ts +69 -69
  139. package/dist/lib/openapi/spec/release-plan-milestone-schema.d.ts +4 -4
  140. package/dist/lib/openapi/spec/release-plan-milestone-strategy-schema.d.ts +2 -2
  141. package/dist/lib/openapi/spec/release-plan-schema.d.ts +8 -8
  142. package/dist/lib/openapi/spec/release-plan-template-schema.d.ts +14 -8
  143. package/dist/lib/openapi/spec/release-plan-template-schema.d.ts.map +1 -1
  144. package/dist/lib/openapi/spec/release-plan-template-schema.js +6 -0
  145. package/dist/lib/openapi/spec/release-plan-template-schema.js.map +1 -1
  146. package/dist/lib/openapi/spec/release-plan-templates-schema.d.ts +22 -16
  147. package/dist/lib/openapi/spec/release-plan-templates-schema.d.ts.map +1 -1
  148. package/dist/lib/openapi/spec/release-plans-schema.d.ts +16 -16
  149. package/dist/lib/openapi/spec/sdk-context-schema.arbitraries.d.ts +4 -0
  150. package/dist/lib/openapi/spec/sdk-context-schema.arbitraries.d.ts.map +1 -0
  151. package/dist/lib/openapi/spec/sdk-context-schema.arbitraries.js +12 -0
  152. package/dist/lib/openapi/spec/sdk-context-schema.arbitraries.js.map +1 -0
  153. package/dist/lib/openapi/spec/sdk-context-schema.test.d.ts +1 -3
  154. package/dist/lib/openapi/spec/sdk-context-schema.test.d.ts.map +1 -1
  155. package/dist/lib/openapi/spec/sdk-context-schema.test.js +1 -11
  156. package/dist/lib/openapi/spec/sdk-context-schema.test.js.map +1 -1
  157. package/dist/lib/openapi/spec/search-features-schema.d.ts +104 -104
  158. package/dist/lib/openapi/spec/segment-schema.d.ts +1 -1
  159. package/dist/lib/openapi/spec/segments-schema.d.ts +2 -2
  160. package/dist/lib/openapi/spec/ui-config-schema.d.ts +5 -0
  161. package/dist/lib/openapi/spec/ui-config-schema.d.ts.map +1 -1
  162. package/dist/lib/openapi/spec/ui-config-schema.js +5 -0
  163. package/dist/lib/openapi/spec/ui-config-schema.js.map +1 -1
  164. package/dist/lib/openapi/spec/update-feature-schema.d.ts +1 -1
  165. package/dist/lib/openapi/spec/update-feature-strategy-schema.d.ts +1 -1
  166. package/dist/lib/openapi/spec/upsert-segment-schema.d.ts +1 -1
  167. package/dist/lib/schema/feature-schema.test.js +1 -1
  168. package/dist/lib/schema/feature-schema.test.js.map +1 -1
  169. package/dist/lib/schema/html-input.d.ts +1 -1
  170. package/dist/lib/schema/html-input.d.ts.map +1 -1
  171. package/dist/lib/schema/html-input.js +5 -2
  172. package/dist/lib/schema/html-input.js.map +1 -1
  173. package/dist/lib/schema/html-input.test.js +1 -1
  174. package/dist/lib/schema/html-input.test.js.map +1 -1
  175. package/dist/lib/services/feature-tag-service.d.ts +1 -1
  176. package/dist/lib/services/feature-tag-service.d.ts.map +1 -1
  177. package/dist/lib/services/feature-tag-service.js +5 -1
  178. package/dist/lib/services/feature-tag-service.js.map +1 -1
  179. package/dist/lib/services/index.d.ts.map +1 -1
  180. package/dist/lib/services/index.js +1 -1
  181. package/dist/lib/services/index.js.map +1 -1
  182. package/dist/lib/services/project-schema.js +1 -1
  183. package/dist/lib/services/project-schema.js.map +1 -1
  184. package/dist/lib/types/events.d.ts +8 -0
  185. package/dist/lib/types/events.d.ts.map +1 -1
  186. package/dist/lib/types/events.js +4 -0
  187. package/dist/lib/types/events.js.map +1 -1
  188. package/dist/lib/types/experimental.d.ts +1 -1
  189. package/dist/lib/types/experimental.d.ts.map +1 -1
  190. package/dist/lib/types/experimental.js +6 -1
  191. package/dist/lib/types/experimental.js.map +1 -1
  192. package/dist/lib/types/option.d.ts +1 -0
  193. package/dist/lib/types/option.d.ts.map +1 -1
  194. package/dist/lib/types/permissions.d.ts +1 -0
  195. package/dist/lib/types/permissions.d.ts.map +1 -1
  196. package/dist/lib/types/permissions.js +2 -0
  197. package/dist/lib/types/permissions.js.map +1 -1
  198. package/dist/lib/types/stores.d.ts +1 -0
  199. package/dist/lib/types/stores.d.ts.map +1 -1
  200. package/dist/lib/types/stores.js.map +1 -1
  201. package/dist/lib/ui-config/ui-config-controller.d.ts +1 -2
  202. package/dist/lib/ui-config/ui-config-controller.d.ts.map +1 -1
  203. package/dist/lib/ui-config/ui-config-controller.js +3 -1
  204. package/dist/lib/ui-config/ui-config-controller.js.map +1 -1
  205. package/dist/lib/ui-config/ui-config-service.d.ts +3 -2
  206. package/dist/lib/ui-config/ui-config-service.d.ts.map +1 -1
  207. package/dist/lib/ui-config/ui-config-service.js +7 -1
  208. package/dist/lib/ui-config/ui-config-service.js.map +1 -1
  209. package/dist/lib/ui-config/ui-config.test.js +4 -0
  210. package/dist/lib/ui-config/ui-config.test.js.map +1 -1
  211. package/dist/lib/util/constants.d.ts +3 -1
  212. package/dist/lib/util/constants.d.ts.map +1 -1
  213. package/dist/lib/util/constants.js +11 -1
  214. package/dist/lib/util/constants.js.map +1 -1
  215. package/dist/mailtemplates/requested-cr-approval/requested-cr-approval.html.mustache +1 -1
  216. package/dist/migrations/20260706100000-add-project-column-to-release-plan-definitions.d.ts +3 -0
  217. package/dist/migrations/20260706100000-add-project-column-to-release-plan-definitions.d.ts.map +1 -0
  218. package/dist/migrations/20260706100000-add-project-column-to-release-plan-definitions.js +8 -0
  219. package/dist/migrations/20260706100000-add-project-column-to-release-plan-definitions.js.map +1 -0
  220. package/dist/migrations/20260708100000-add-project-release-template-permission.d.ts +3 -0
  221. package/dist/migrations/20260708100000-add-project-release-template-permission.d.ts.map +1 -0
  222. package/dist/migrations/20260708100000-add-project-release-template-permission.js +15 -0
  223. package/dist/migrations/20260708100000-add-project-release-template-permission.js.map +1 -0
  224. package/dist/server-dev.js +5 -1
  225. package/dist/server-dev.js.map +1 -1
  226. package/dist/test/arbitraries.d.ts +25 -0
  227. package/dist/test/arbitraries.d.ts.map +1 -0
  228. package/dist/test/arbitraries.js +143 -0
  229. package/dist/test/arbitraries.js.map +1 -0
  230. package/dist/test/arbitraries.test.d.ts +1 -24
  231. package/dist/test/arbitraries.test.d.ts.map +1 -1
  232. package/dist/test/arbitraries.test.js +1 -142
  233. package/dist/test/arbitraries.test.js.map +1 -1
  234. package/dist/test/e2e/api/admin/playground.e2e.test.js +2 -2
  235. package/dist/test/e2e/api/admin/playground.e2e.test.js.map +1 -1
  236. package/dist/test/e2e/services/playground-service.test.js +2 -2
  237. package/dist/test/e2e/services/playground-service.test.js.map +1 -1
  238. package/dist/test/fixtures/fake-segment-store.d.ts +1 -1
  239. package/dist/test/fixtures/fake-segment-store.d.ts.map +1 -1
  240. package/dist/test/fixtures/fake-segment-store.js +2 -2
  241. package/dist/test/fixtures/fake-segment-store.js.map +1 -1
  242. package/dist/test/prom-last-wins.d.ts +2 -0
  243. package/dist/test/prom-last-wins.d.ts.map +1 -0
  244. package/dist/test/prom-last-wins.js +25 -0
  245. package/dist/test/prom-last-wins.js.map +1 -0
  246. package/dist/test/reset-cross-file-state.d.ts +2 -0
  247. package/dist/test/reset-cross-file-state.d.ts.map +1 -0
  248. package/dist/test/reset-cross-file-state.js +57 -0
  249. package/dist/test/reset-cross-file-state.js.map +1 -0
  250. package/dist/test-setup.d.ts.map +1 -1
  251. package/dist/test-setup.js +4 -0
  252. package/dist/test-setup.js.map +1 -1
  253. package/frontend/build/index.html +1 -1
  254. package/frontend/build/static/AccordionSummary-KVRcLxLK.js +1 -0
  255. package/frontend/build/static/AdvancedPlayground-Cls80com.js +3 -0
  256. package/frontend/build/static/Alert-DQgOzmJF.js +1 -0
  257. package/frontend/build/static/Avatar-xU_puYmY.js +1 -0
  258. package/frontend/build/static/BackendConnections-CkI8tLcv.js +1 -0
  259. package/frontend/build/static/Box-rSzdGLLJ.js +1 -0
  260. package/frontend/build/static/Button-yGjgMTJI.js +1 -0
  261. package/frontend/build/static/Button.story-CBE27I2T.js +1 -0
  262. package/frontend/build/static/CircularProgress-CmGBJn6I.js +124 -0
  263. package/frontend/build/static/Close-DKD1r3T7.js +1 -0
  264. package/frontend/build/static/Close-nISwbNAY.js +1 -0
  265. package/frontend/build/static/CodeRenderer-RNHlNPBl.js +1094 -0
  266. package/frontend/build/static/CodeRenderer.story-Vw214z1Z.js +2 -0
  267. package/frontend/build/static/Collapse-COunT4rQ.js +1 -0
  268. package/frontend/build/static/ConditionallyRender-CEffh9Z-.js +1 -0
  269. package/frontend/build/static/ConnectSdkStep-DnH4iwnu.js +1 -0
  270. package/frontend/build/static/ConnectSdkStep.story-DeWPTOZK.js +1 -0
  271. package/frontend/build/static/CreateProject-eo1TZ1so.js +1 -0
  272. package/frontend/build/static/Dialog-DLpX4v6X.js +1 -0
  273. package/frontend/build/static/DialogWithAside-BxVspeMV.js +1 -0
  274. package/frontend/build/static/DialogWithAside.story-Dqmr9MnM.js +1 -0
  275. package/frontend/build/static/Divider-BYq1CcT0.js +1 -0
  276. package/frontend/build/static/EnterpriseEdge-D-g3JGCd.js +6 -0
  277. package/frontend/build/static/FeatureCard.story-B2Q-SD_-.js +1 -0
  278. package/frontend/build/static/FeatureMetricsChart-ETalRWKx.js +2 -0
  279. package/frontend/build/static/FeatureStaleDialog-CvD9ojNj.js +8 -0
  280. package/frontend/build/static/{FeatureViewLazyExport-8eQKTvdS.js → FeatureViewLazyExport-10Z3_Wda.js} +3 -3
  281. package/frontend/build/static/FileCopy-D1ZqmNek.js +1 -0
  282. package/frontend/build/static/FlagMetricsChart-dLfSDZ_x.js +2 -0
  283. package/frontend/build/static/FlagUsageSnippet-DOGwaqPZ.js +2 -0
  284. package/frontend/build/static/FlagUsageSnippet.story-tfMvt3kG.js +1 -0
  285. package/frontend/build/static/FormControlLabel-BrOlsUbv.js +1 -0
  286. package/frontend/build/static/FormField-CRXe4g4R.js +1 -0
  287. package/frontend/build/static/FrontendNetworkTrafficUsage-DGEwK1Qg.js +1 -0
  288. package/frontend/build/static/GenerateApiKey-C1aJtPh-.js +1 -0
  289. package/frontend/build/static/GenerateApiKey.story-DNMZG0qg.js +1 -0
  290. package/frontend/build/static/GenerateApiKeySummary-DkPI02tH.js +1 -0
  291. package/frontend/build/static/GenerateApiKeySummary.story-CruMFwTQ.js +1 -0
  292. package/frontend/build/static/{GridLayoutWrapper-B_YyjZ7l.js → GridLayoutWrapper-B3BIpxoE.js} +3 -3
  293. package/frontend/build/static/Grow-CuQu7Z-P.js +1 -0
  294. package/frontend/build/static/HelpOutlineOutlined-HDH1hus2.js +1 -0
  295. package/frontend/build/static/HelpResources.story-warJFqf6.js +1 -0
  296. package/frontend/build/static/Highlighter-BS0Ow0vZ.js +1 -0
  297. package/frontend/build/static/HtmlTooltip-3YsoM_F5.js +1 -0
  298. package/frontend/build/static/IconButton-BveFD3PF.js +1 -0
  299. package/frontend/build/static/ImpactMetricsPage-C57istn7.js +1 -0
  300. package/frontend/build/static/ImpactViewsPage-MKEHnt2w.js +1 -0
  301. package/frontend/build/static/LazyAdminExport-DfIYVWQD.js +38 -0
  302. package/frontend/build/static/LazyProjectExport-30GlUH0L.js +46 -0
  303. package/frontend/build/static/LifecycleChartComponent-Tj1pN5Tj.js +2 -0
  304. package/frontend/build/static/LineChartComponent-_RiDjL2-.js +1 -0
  305. package/frontend/build/static/Link-wv6er_Jy.js +1 -0
  306. package/frontend/build/static/Loader-CnLypnQx.js +1 -0
  307. package/frontend/build/static/{LogRocketRunner-Duzg1Kzh.js → LogRocketRunner-BS6AEpSK.js} +1 -1
  308. package/frontend/build/static/MarkCompletedDialogue-BeIA6eMj.js +1 -0
  309. package/frontend/build/static/Menu-DUeb4XP8.js +1 -0
  310. package/frontend/build/static/MenuBook-DZFyn--3.js +1 -0
  311. package/frontend/build/static/MenuItem-DNlBQQYG.js +1 -0
  312. package/frontend/build/static/Modal-DdH902AP.js +1 -0
  313. package/frontend/build/static/NetworkOverview-DF8c0k1P.js +1 -0
  314. package/frontend/build/static/{NetworkPrometheusAPIWarning-Bq62ygkV.js → NetworkPrometheusAPIWarning-B0v-FihJ.js} +1 -1
  315. package/frontend/build/static/NetworkTraffic-C1I4wwcb.js +1 -0
  316. package/frontend/build/static/NetworkTrafficUsage-DkdQx64o.js +1 -0
  317. package/frontend/build/static/NotificationStack.story-CdeU4r0p.js +1 -0
  318. package/frontend/build/static/OnboardingProgress-BuWQ2rjB.js +1 -0
  319. package/frontend/build/static/OnboardingProgress.story-CmQztiFV.js +1 -0
  320. package/frontend/build/static/OpenInNew-CHcHAi4B.js +1 -0
  321. package/frontend/build/static/PageContent-lT51j8jO.js +1 -0
  322. package/frontend/build/static/Paper-BvPQ0Zq6.js +1 -0
  323. package/frontend/build/static/PercentageDonut-CZVWd5fE.js +1 -0
  324. package/frontend/build/static/PermissionButton-Tj54K9Kc.js +1 -0
  325. package/frontend/build/static/Popover-FHiFav9d.js +1 -0
  326. package/frontend/build/static/Popper-Cut-_j4A.js +1 -0
  327. package/frontend/build/static/Portal-kwmlgXGI.js +1 -0
  328. package/frontend/build/static/Radio-Cj82h8o5.js +1 -0
  329. package/frontend/build/static/RadioGroup-BWTZb8iE.js +1 -0
  330. package/frontend/build/static/ReactJSONEditor-D65iiPmM.js +4 -0
  331. package/frontend/build/static/ReactJSONEditor.story-Bt3pxUGO.js +1 -0
  332. package/frontend/build/static/RoleCell-tqHUOlI7.js +1 -0
  333. package/frontend/build/static/RtlProvider-D1AlROju.js +1 -0
  334. package/frontend/build/static/Safeguard-DFEQulxy.js +1 -0
  335. package/frontend/build/static/SdkEvaluationStatus-B1rMywp-.js +17 -0
  336. package/frontend/build/static/SdkEvaluationStatus.story-BxgqLICz.js +1 -0
  337. package/frontend/build/static/Select-DdG1oq6O.js +3 -0
  338. package/frontend/build/static/SelectSdk-Boj2Ug-2.js +1 -0
  339. package/frontend/build/static/SelectSdk-CzRoKDb5.js +1 -0
  340. package/frontend/build/static/SelectSdk.story-BT9ke5Eb.js +1 -0
  341. package/frontend/build/static/SelectSdk.story-CdzotYoq.js +1 -0
  342. package/frontend/build/static/Spacing.story-CB6GkN5Z.js +1 -0
  343. package/frontend/build/static/StoriesPage-luLnHVc2.js +1 -0
  344. package/frontend/build/static/SwitchBase-cxExIOp0.js +1 -0
  345. package/frontend/build/static/TextField-Cf03Ror7.js +1 -0
  346. package/frontend/build/static/ThemeColors.story-Cx9bv5pL.js +1 -0
  347. package/frontend/build/static/TokenExplanation-CJjBSQ07.js +1 -0
  348. package/frontend/build/static/TokenExplanation.story-BoOaHRrQ.js +1 -0
  349. package/frontend/build/static/Tooltip-DPzrXyNS.js +1 -0
  350. package/frontend/build/static/TooltipResolver-CIBfA4vm.js +1 -0
  351. package/frontend/build/static/Truncator-CF0-SVks.js +1 -0
  352. package/frontend/build/static/Typography-nCkGT67u.js +1 -0
  353. package/frontend/build/static/Typography.story-CofmlvJB.js +1 -0
  354. package/frontend/build/static/UIContext-Dsr0TY8K.js +1 -0
  355. package/frontend/build/static/WhatsNewLayout.story-p4Cm8bgx.js +1 -0
  356. package/frontend/build/static/aggregateFeatureMetrics-D7AXsd2U.js +1 -0
  357. package/frontend/build/static/capitalize-DfXJDj8P.js +1 -0
  358. package/frontend/build/static/chartjs-plugin-annotation.esm-tsR8Pv5a.js +1 -0
  359. package/frontend/build/static/chunk-KS7C4IRE-PUpsdS_b.js +3 -0
  360. package/frontend/build/static/code-block-BZePA-4e.js +1 -0
  361. package/frontend/build/static/copy-to-clipboard-BCU4eeSw.js +1 -0
  362. package/frontend/build/static/createBox-DaDvp7MB.js +1 -0
  363. package/frontend/build/static/createSimplePaletteValueFilter-Bt9IjErz.js +1 -0
  364. package/frontend/build/static/createSvgIcon-D-6jHYkf.js +1 -0
  365. package/frontend/build/static/dividerClasses-DcI5JVLQ.js +1 -0
  366. package/frontend/build/static/{enterpriseEdgeCloud-C5u35XAw.js → enterpriseEdgeCloud-qnOcFE1S.js} +1 -1
  367. package/frontend/build/static/esm-DViSjNxt.js +12 -0
  368. package/frontend/build/static/formatAccessText-BhC1wtCg.js +1 -0
  369. package/frontend/build/static/httpErrorResponseHandler-BzpwldnE.js +1 -0
  370. package/frontend/build/static/impact-metrics-DrmGy_gn.png +0 -0
  371. package/frontend/build/static/{impact-metrics-icon-6dt-ye-h.js → impact-metrics-icon-Cg_ki-2e.js} +1 -1
  372. package/frontend/build/static/index-C2zVj2FI.js +287 -0
  373. package/frontend/build/static/{jsx-runtime-BnvnyDTF.js → jsx-runtime-DYfQNk55.js} +1 -1
  374. package/frontend/build/static/mcp-ADx0Sju7.png +0 -0
  375. package/frontend/build/static/{metricsFormatters-DhX-aU17.js → metricsFormatters-BmjW0KTj.js} +1 -1
  376. package/frontend/build/static/milestone-CciNgBhP.png +0 -0
  377. package/frontend/build/static/{mui-CoU2c-id.js → mui-C_omlwxE.js} +1 -1
  378. package/frontend/build/static/networkTrafficUsageHighlightPlugin-DPi6id5j.js +1 -0
  379. package/frontend/build/static/react-Ca03aNmg.js +1 -0
  380. package/frontend/build/static/resolveProps-CAVsjga5.js +1 -0
  381. package/frontend/build/static/servicenow-BmgZtZjb.svg +13 -0
  382. package/frontend/build/static/sharedTypes-CXnpeg4U.js +1 -0
  383. package/frontend/build/static/styled-CY_-vLWk.js +1 -0
  384. package/frontend/build/static/theme-DDCs0xPV.js +1 -0
  385. package/frontend/build/static/{themeStyles-DGVpwkcv.js → themeStyles-B99HStK1.js} +1 -1
  386. package/frontend/build/static/useApi-B7ZLy5tN.js +1 -0
  387. package/frontend/build/static/useApiGetter-C41iZzl2.js +1 -0
  388. package/frontend/build/static/useApiTokens-BQWPDfv2.js +1 -0
  389. package/frontend/build/static/useConditionalSWR-QWHOvx6V.js +1 -0
  390. package/frontend/build/static/useConditionallyHiddenColumns-DbQbB4u7.js +5 -0
  391. package/frontend/build/static/useCustomEvent-BnWpZ2E1.js +1 -0
  392. package/frontend/build/static/useEnhancedEffect-BBMUaXin.js +1 -0
  393. package/frontend/build/static/useEnvironments-Gu7r2cpc.js +2 -0
  394. package/frontend/build/static/useEventTracker-B0ILyjZB.js +1 -0
  395. package/frontend/build/static/useGroupedImpactMetricsData-jQ7IYFK3.js +1 -0
  396. package/frontend/build/static/useId-Bg4oXGUa.js +1 -0
  397. package/frontend/build/static/{useImpactMetrics-9qDSEpTn.js → useImpactMetrics-DXxTQl6p.js} +2 -2
  398. package/frontend/build/static/{useImpactMetricsEnabled-wRNO6-Oh.js → useImpactMetricsEnabled-B3om8V0b.js} +1 -1
  399. package/frontend/build/static/{useInstanceTrafficMetrics-CRCDB4TX.js → useInstanceTrafficMetrics-DkgcWjVM.js} +1 -1
  400. package/frontend/build/static/useLocationSettings-vlEPA_j3.js +1 -0
  401. package/frontend/build/static/useMediaQuery-BFm2lR-0.js +2 -0
  402. package/frontend/build/static/useOptionalPathParam-Cmh3Ejbi.js +1 -0
  403. package/frontend/build/static/{usePageTitle-CHzzFshF.js → usePageTitle-DD1IHvCw.js} +1 -1
  404. package/frontend/build/static/useSlot-Ce59-xJL.js +1 -0
  405. package/frontend/build/static/useSlotProps-v77xI-e5.js +1 -0
  406. package/frontend/build/static/useTheme-CTychWp2.js +10 -0
  407. package/frontend/build/static/useTimeout-B2sc1jSE.js +1 -0
  408. package/frontend/build/static/useToast-BUHn_9TC.js +1 -0
  409. package/frontend/build/static/{useUiConfig-DbVjTDpE.js → useUiConfig-BcfEDPWc.js} +1 -1
  410. package/frontend/build/static/useUiFlag-PbKW1iMa.js +1 -0
  411. package/frontend/package.json +13 -14
  412. package/package.json +6 -5
  413. package/frontend/build/static/AccordionSummary-wye3oOm6.js +0 -1
  414. package/frontend/build/static/AdvancedPlayground-DdeMb-6I.js +0 -3
  415. package/frontend/build/static/Alert-_bLyWbvx.js +0 -1
  416. package/frontend/build/static/BackendConnections-kgR0xyIH.js +0 -1
  417. package/frontend/build/static/Box-BQsxfFmC.js +0 -1
  418. package/frontend/build/static/Button-CebB8EPB.js +0 -1
  419. package/frontend/build/static/CircularProgress-C_LUU3DK.js +0 -101
  420. package/frontend/build/static/Close-DyTASMSq.js +0 -1
  421. package/frontend/build/static/Collapse-DPPTUMpf.js +0 -1
  422. package/frontend/build/static/ConditionallyRender---uTpMBn.js +0 -1
  423. package/frontend/build/static/CreateProject-BSlg0WYM.js +0 -1
  424. package/frontend/build/static/Dialog-C-xQxqWX.js +0 -1
  425. package/frontend/build/static/DialogWithAside-DzCSDyWo.js +0 -1110
  426. package/frontend/build/static/Divider-CsdWvu5F.js +0 -1
  427. package/frontend/build/static/EnterpriseEdge-CjslqYDM.js +0 -6
  428. package/frontend/build/static/FeatureMetricsChart-B4WryxcW.js +0 -2
  429. package/frontend/build/static/FeatureStaleDialog-EzReRTI5.js +0 -8
  430. package/frontend/build/static/FileCopy-B8HZEA83.js +0 -1
  431. package/frontend/build/static/FlagMetricsChart-hNQuwOxW.js +0 -2
  432. package/frontend/build/static/FormControlLabel-F5gDLixN.js +0 -1
  433. package/frontend/build/static/FrontendNetworkTrafficUsage-pcr83PWo.js +0 -1
  434. package/frontend/build/static/Grow-BIbmvKVy.js +0 -1
  435. package/frontend/build/static/HelpOutlineOutlined-CpMsVJZu.js +0 -1
  436. package/frontend/build/static/Highlighter-MomUaQww.js +0 -1
  437. package/frontend/build/static/HtmlTooltip-B9jv1G1R.js +0 -1
  438. package/frontend/build/static/ImpactMetricsPage-DGH_S9oz.js +0 -1
  439. package/frontend/build/static/ImpactViewsPage-DZqKPFvE.js +0 -1
  440. package/frontend/build/static/LazyAdminExport-B1ReAViz.js +0 -38
  441. package/frontend/build/static/LazyProjectExport-BMVcGpNI.js +0 -46
  442. package/frontend/build/static/LifecycleChartComponent-BeoRUO9q.js +0 -2
  443. package/frontend/build/static/LineChartComponent-BbCMbJ-m.js +0 -1
  444. package/frontend/build/static/Link-CfIScd2f.js +0 -1
  445. package/frontend/build/static/Loader-DdgXftPc.js +0 -1
  446. package/frontend/build/static/MarkCompletedDialogue-CcXyp8UE.js +0 -1
  447. package/frontend/build/static/NetworkOverview-0mBnFAZX.js +0 -1
  448. package/frontend/build/static/NetworkTraffic-DmG5Iv25.js +0 -1
  449. package/frontend/build/static/NetworkTrafficUsage-DccaVLYs.js +0 -1
  450. package/frontend/build/static/OnboardingProgress-Bp9sZ-ZM.js +0 -1
  451. package/frontend/build/static/PageContent-c0NDm5oD.js +0 -1
  452. package/frontend/build/static/PercentageDonut-DBDGNJlh.js +0 -1
  453. package/frontend/build/static/PermissionButton-B-IfzChn.js +0 -1
  454. package/frontend/build/static/Popover-CUTnSn2h.js +0 -1
  455. package/frontend/build/static/Radio-DL8ja0ll.js +0 -1
  456. package/frontend/build/static/RadioGroup-Ci3WHaOy.js +0 -1
  457. package/frontend/build/static/ReactJSONEditor-DeBI7JPg.js +0 -4
  458. package/frontend/build/static/RoleCell-DhYvu4YH.js +0 -1
  459. package/frontend/build/static/Safeguard-DErU6fSK.js +0 -1
  460. package/frontend/build/static/SelectSdk-Dr_pzQgX.js +0 -2
  461. package/frontend/build/static/StoriesPage-frGP1Bfr.js +0 -2
  462. package/frontend/build/static/SwitchBase-DWPIxZnN.js +0 -1
  463. package/frontend/build/static/TextField-oipjeg6n.js +0 -3
  464. package/frontend/build/static/Tooltip-BaILXXti.js +0 -1
  465. package/frontend/build/static/TooltipResolver-4A1YhwBy.js +0 -1
  466. package/frontend/build/static/Truncator-D2bO9ub6.js +0 -1
  467. package/frontend/build/static/Typography-BTdLWIUX.js +0 -1
  468. package/frontend/build/static/aggregateFeatureMetrics-B-67HaIZ.js +0 -1
  469. package/frontend/build/static/chartjs-plugin-annotation.esm-DP4wCpdA.js +0 -1
  470. package/frontend/build/static/chunk-QUQL4437-Dr42NpoL.js +0 -3
  471. package/frontend/build/static/createBox-Cf2UJsmc.js +0 -1
  472. package/frontend/build/static/createSimplePaletteValueFilter-BRAMrHWJ.js +0 -1
  473. package/frontend/build/static/dividerClasses-Cc45lyWo.js +0 -1
  474. package/frontend/build/static/esm-DdgY1Q5s.js +0 -12
  475. package/frontend/build/static/httpErrorResponseHandler-FMtt7Zqh.js +0 -1
  476. package/frontend/build/static/index-C04TEs4k.js +0 -290
  477. package/frontend/build/static/networkTrafficUsageHighlightPlugin-DlOtHZg3.js +0 -1
  478. package/frontend/build/static/react-GZhdek4G.js +0 -1
  479. package/frontend/build/static/useApiGetter-7FP8Avm4.js +0 -1
  480. package/frontend/build/static/useApiTokens-C8Dqw_X1.js +0 -1
  481. package/frontend/build/static/useConditionalSWR-DGgzun6i.js +0 -1
  482. package/frontend/build/static/useConditionallyHiddenColumns-C5q9zdfJ.js +0 -5
  483. package/frontend/build/static/useCustomEvent-Dj2V5RVb.js +0 -1
  484. package/frontend/build/static/useEnvironments-CTguhgy0.js +0 -2
  485. package/frontend/build/static/useGroupedImpactMetricsData-CW9qnV2y.js +0 -1
  486. package/frontend/build/static/useMediaQuery-DGx8zAkf.js +0 -2
  487. package/frontend/build/static/useOptionalPathParam-Cx3ru9yC.js +0 -1
  488. package/frontend/build/static/useTheme-CQqAmDLr.js +0 -9
@@ -1 +1 @@
1
- {"version":3,"file":"playground.test.js","sourceRoot":"","sources":["../../../../src/lib/features/playground/playground.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"playground.test.js","sourceRoot":"","sources":["../../../../src/lib/features/playground/playground.test.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,10 @@ export type ReleasePlanTemplateWriteModel = Omit<ReleasePlanTemplate, 'id' | 'cr
6
6
  export declare class ReleasePlanTemplateStore extends CRUDStore<ReleasePlanTemplate, ReleasePlanTemplateWriteModel, Row<ReleasePlanTemplate>, ReleasePlanTemplate, string> {
7
7
  constructor(db: Db, config: CrudStoreConfig);
8
8
  getAll(): Promise<ReleasePlanTemplate[]>;
9
+ getGlobalTemplates(): Promise<ReleasePlanTemplate[]>;
10
+ getProjectTemplates(project: string): Promise<ReleasePlanTemplate[]>;
11
+ getProjectAndGlobalTemplates(project: string): Promise<ReleasePlanTemplate[]>;
12
+ private getTemplates;
9
13
  count(query?: Partial<ReleasePlanTemplateWriteModel>): Promise<number>;
10
14
  checkNameAlreadyExists(name: string, id?: string): Promise<boolean>;
11
15
  processReleasePlanTemplateRows(templateRows: any): ReleasePlanTemplate;
@@ -1 +1 @@
1
- {"version":3,"file":"release-plan-template-store.d.ts","sourceRoot":"","sources":["../../../../src/lib/features/release-plans/release-plan-template-store.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,EAAE,SAAS,EAAE,KAAK,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AAKzC,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAC5C,mBAAmB,EACnB,IAAI,GAAG,WAAW,GAAG,YAAY,CACpC,CAAC;AAaF,qBAAa,wBAAyB,SAAQ,SAAS,CACnD,mBAAmB,EACnB,6BAA6B,EAC7B,GAAG,CAAC,mBAAmB,CAAC,EACxB,mBAAmB,EACnB,MAAM,CACT;gBACe,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,eAAe;IAI5B,MAAM,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAYxC,KAAK,CAChB,KAAK,CAAC,EAAE,OAAO,CAAC,6BAA6B,CAAC,GAC/C,OAAO,CAAC,MAAM,CAAC;IAYZ,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAezE,8BAA8B,CAAC,YAAY,KAAA,GAAG,mBAAmB;IAiE3D,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA+CxC,MAAM,CACjB,IAAI,EAAE,6BAA6B,GACpC,OAAO,CAAC,mBAAmB,CAAC;IASzB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAM3C"}
1
+ {"version":3,"file":"release-plan-template-store.d.ts","sourceRoot":"","sources":["../../../../src/lib/features/release-plans/release-plan-template-store.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,EAAE,SAAS,EAAE,KAAK,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAErD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AAKzC,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAC5C,mBAAmB,EACnB,IAAI,GAAG,WAAW,GAAG,YAAY,CACpC,CAAC;AAcF,qBAAa,wBAAyB,SAAQ,SAAS,CACnD,mBAAmB,EACnB,6BAA6B,EAC7B,GAAG,CAAC,mBAAmB,CAAC,EACxB,mBAAmB,EACnB,MAAM,CACT;gBACe,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,eAAe;IAI5B,MAAM,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAIjD,kBAAkB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAMpD,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAMpE,4BAA4B,CAC9B,OAAO,EAAE,MAAM,GAChB,OAAO,CAAC,mBAAmB,EAAE,CAAC;YAUnB,YAAY;IAgBX,KAAK,CAChB,KAAK,CAAC,EAAE,OAAO,CAAC,6BAA6B,CAAC,GAC/C,OAAO,CAAC,MAAM,CAAC;IAYZ,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAezE,8BAA8B,CAAC,YAAY,KAAA,GAAG,mBAAmB;IAkE3D,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAgDxC,MAAM,CACjB,IAAI,EAAE,6BAA6B,GACpC,OAAO,CAAC,mBAAmB,CAAC;IASzB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAM3C"}
@@ -8,6 +8,7 @@ const fromRow = (row) => {
8
8
  name: row.name,
9
9
  createdAt: row.created_at,
10
10
  description: row.description,
11
+ project: row.project,
11
12
  discriminator: row.discriminator,
12
13
  createdByUserId: row.created_by_user_id,
13
14
  };
@@ -17,10 +18,31 @@ export class ReleasePlanTemplateStore extends CRUDStore {
17
18
  super(TABLE, db, config, { fromRow });
18
19
  }
19
20
  async getAll() {
20
- const endTimer = this.timer('getAll');
21
+ return this.getGlobalTemplates();
22
+ }
23
+ async getGlobalTemplates() {
24
+ return this.getTemplates('getGlobalTemplates', (query) => {
25
+ query.whereNull('project');
26
+ });
27
+ }
28
+ async getProjectTemplates(project) {
29
+ return this.getTemplates('getProjectTemplates', (query) => {
30
+ query.where('project', project);
31
+ });
32
+ }
33
+ async getProjectAndGlobalTemplates(project) {
34
+ return this.getTemplates('getProjectAndGlobalTemplates', (query) => {
35
+ query
36
+ .where((qb) => qb.whereNull('project').orWhere('project', project))
37
+ .orderBy('project', 'asc', 'last');
38
+ });
39
+ }
40
+ async getTemplates(timerName, addProjectFilter) {
41
+ const endTimer = this.timer(timerName);
21
42
  const templates = await this.db(TABLE)
22
43
  .where('discriminator', 'template')
23
44
  .where('archived_at', null)
45
+ .modify(addProjectFilter)
24
46
  .orderBy('created_at');
25
47
  endTimer();
26
48
  return templates.map(({ milestones, ...template }) => fromRow(template));
@@ -55,6 +77,7 @@ export class ReleasePlanTemplateStore extends CRUDStore {
55
77
  discriminator: templateRows[0].templateDiscriminator,
56
78
  name: templateRows[0].templateName,
57
79
  description: templateRows[0].templateDescription,
80
+ project: templateRows[0].templateProject,
58
81
  createdByUserId: templateRows[0].templateCreatedByUserId,
59
82
  createdAt: templateRows[0].templateCreatedAt,
60
83
  milestones: templateRows.reduce((acc, row) => {
@@ -115,7 +138,7 @@ export class ReleasePlanTemplateStore extends CRUDStore {
115
138
  .leftJoin('milestone_strategy_segments AS mss', 'mss.milestone_strategy_id', 'ms.id')
116
139
  .orderBy('mi.sort_order', 'asc')
117
140
  .orderBy('ms.sort_order', 'asc')
118
- .select('rpd.id AS templateId', 'rpd.discriminator AS templateDiscriminator', 'rpd.name AS templateName', 'rpd.description as templateDescription', 'rpd.created_by_user_id as templateCreatedByUserId', 'rpd.created_at as templateCreatedAt', 'rpd.archived_at AS templateArchivedAt', 'mi.id AS milestoneId', 'mi.name AS milestoneName', 'mi.sort_order AS milestoneSortOrder', 'ms.id AS strategyId', 'ms.sort_order AS strategySortOrder', 'ms.title AS strategyTitle', 'ms.strategy_name AS strategyName', 'ms.parameters AS strategyParameters', 'ms.constraints AS strategyConstraints', 'ms.variants AS strategyVariants', 'ms.disabled AS strategyDisabled', 'mss.segment_id AS segmentId');
141
+ .select('rpd.id AS templateId', 'rpd.discriminator AS templateDiscriminator', 'rpd.name AS templateName', 'rpd.description as templateDescription', 'rpd.project as templateProject', 'rpd.created_by_user_id as templateCreatedByUserId', 'rpd.created_at as templateCreatedAt', 'rpd.archived_at AS templateArchivedAt', 'mi.id AS milestoneId', 'mi.name AS milestoneName', 'mi.sort_order AS milestoneSortOrder', 'ms.id AS strategyId', 'ms.sort_order AS strategySortOrder', 'ms.title AS strategyTitle', 'ms.strategy_name AS strategyName', 'ms.parameters AS strategyParameters', 'ms.constraints AS strategyConstraints', 'ms.variants AS strategyVariants', 'ms.disabled AS strategyDisabled', 'mss.segment_id AS segmentId');
119
142
  endTimer();
120
143
  if (!templateRows.length) {
121
144
  throw new NotFoundError(`Could not find template with id ${id}`);
@@ -1 +1 @@
1
- {"version":3,"file":"release-plan-template-store.js","sourceRoot":"","sources":["../../../../src/lib/features/release-plans/release-plan-template-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"release-plan-template-store.js","sourceRoot":"","sources":["../../../../src/lib/features/release-plans/release-plan-template-store.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ beforeAll(async () => {
9
9
  afterAll(async () => {
10
10
  await db.destroy();
11
11
  });
12
- test('insert returns createdAt from the database', async () => {
12
+ test('new templates are global by default', async () => {
13
13
  const store = new ReleasePlanTemplateStore(db.rawDatabase, config);
14
14
  const template = await store.insert({
15
15
  name: 'test-template',
@@ -17,12 +17,72 @@ test('insert returns createdAt from the database', async () => {
17
17
  discriminator: 'template',
18
18
  createdByUserId: 1,
19
19
  });
20
- expect(template.id).toBeDefined();
21
- expect(template.createdAt).toBeDefined();
22
- expect(template.createdAt).toBeInstanceOf(Date);
23
- expect(template.name).toBe('test-template');
20
+ expect(template).toMatchObject({
21
+ id: expect.any(String),
22
+ name: 'test-template',
23
+ createdAt: expect.any(Date),
24
+ project: null,
25
+ });
26
+ });
27
+ test('templates can be scoped to a project', async () => {
28
+ const store = new ReleasePlanTemplateStore(db.rawDatabase, config);
29
+ const projectTemplate = await store.insert({
30
+ name: 'project-scoped-template',
31
+ description: 'scoped to a project',
32
+ discriminator: 'template',
33
+ createdByUserId: 1,
34
+ project: 'default',
35
+ });
36
+ expect(projectTemplate).toMatchObject({ project: 'default' });
37
+ expect(await store.getById(projectTemplate.id)).toMatchObject({
38
+ project: 'default',
39
+ });
40
+ });
41
+ test('global templates are visible in every project, scoped ones only in their own and listed before global ones', async () => {
42
+ const store = new ReleasePlanTemplateStore(db.rawDatabase, config);
43
+ await db.rawDatabase('release_plan_definitions').del();
44
+ await db.stores.projectStore.create({
45
+ id: 'other-project',
46
+ name: 'other-project',
47
+ description: '',
48
+ });
49
+ await store.insert({
50
+ name: 'global-template',
51
+ discriminator: 'template',
52
+ createdByUserId: 1,
53
+ });
54
+ await store.insert({
55
+ name: 'default-template',
56
+ discriminator: 'template',
57
+ createdByUserId: 1,
58
+ project: 'default',
59
+ });
60
+ await store.insert({
61
+ name: 'other-template',
62
+ discriminator: 'template',
63
+ createdByUserId: 1,
64
+ project: 'other-project',
65
+ });
66
+ const globalTemplates = await store.getGlobalTemplates();
67
+ expect(globalTemplates.map(({ name }) => name)).toEqual([
68
+ 'global-template',
69
+ ]);
70
+ const defaultTemplates = await store.getProjectTemplates('default');
71
+ expect(defaultTemplates.map(({ name }) => name)).toEqual([
72
+ 'default-template',
73
+ ]);
74
+ const visibleInDefault = await store.getProjectAndGlobalTemplates('default');
75
+ expect(visibleInDefault.map(({ name }) => name)).toEqual([
76
+ 'default-template',
77
+ 'global-template',
78
+ ]);
79
+ const visibleInOther = await store.getProjectAndGlobalTemplates('other-project');
80
+ expect(visibleInOther.map(({ name }) => name)).toEqual([
81
+ 'other-template',
82
+ 'global-template',
83
+ ]);
24
84
  });
25
- test("store updates don't leak column names that don't belong in the model", async () => {
85
+ test('updates return exactly the template model fields', async () => {
26
86
  const store = new ReleasePlanTemplateStore(db.rawDatabase, config);
27
87
  const template = await store.insert({
28
88
  name: 'template1',
@@ -33,15 +93,14 @@ test("store updates don't leak column names that don't belong in the model", asy
33
93
  const updatedTemplate = await store.update(template.id, {
34
94
  description: 'new description',
35
95
  });
36
- // camelCased version of db column names that don't belong in the return type
37
- const unmappedColumns = [
38
- 'featureName',
39
- 'environment',
40
- 'activeMilestoneId',
41
- 'releasePlanTemplateId',
42
- ];
43
- for (const column of unmappedColumns) {
44
- expect(updatedTemplate).not.toHaveProperty(column);
45
- }
96
+ expect(Object.keys(updatedTemplate)).toEqual([
97
+ 'id',
98
+ 'name',
99
+ 'createdAt',
100
+ 'description',
101
+ 'project',
102
+ 'discriminator',
103
+ 'createdByUserId',
104
+ ]);
46
105
  });
47
106
  //# sourceMappingURL=release-plan-template-store.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"release-plan-template-store.test.js","sourceRoot":"","sources":["../../../../src/lib/features/release-plans/release-plan-template-store.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,MAEN,MAAM,4CAA4C,CAAC;AAEpD,IAAI,EAAW,CAAC;AAChB,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;AAElC,SAAS,CAAC,KAAK,IAAI,EAAE;IACjB,EAAE,GAAG,MAAM,MAAM,CAAC,oCAAoC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;AAC9E,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,KAAK,IAAI,EAAE;IAChB,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;IAC1D,MAAM,KAAK,GAAG,IAAI,wBAAwB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC;QAChC,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,iBAAiB;QAC9B,aAAa,EAAE,UAAU;QACzB,eAAe,EAAE,CAAC;KACrB,CAAC,CAAC;IAEH,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAClC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;IACzC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AAChD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;IACpF,MAAM,KAAK,GAAG,IAAI,wBAAwB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC;QAChC,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,UAAU;QACzB,eAAe,EAAE,CAAC;KACrB,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE;QACpD,WAAW,EAAE,iBAAiB;KACjC,CAAC,CAAC;IAEH,6EAA6E;IAC7E,MAAM,eAAe,GAAG;QACpB,aAAa;QACb,aAAa;QACb,mBAAmB;QACnB,uBAAuB;KAC1B,CAAC;IACF,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;QACnC,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IACvD,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"release-plan-template-store.test.js","sourceRoot":"","sources":["../../../../src/lib/features/release-plans/release-plan-template-store.test.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export interface ReleasePlanTemplate {
4
4
  discriminator: 'template';
5
5
  name: string;
6
6
  description?: string | null;
7
+ project?: string | null;
7
8
  createdByUserId: number;
8
9
  createdAt: Date;
9
10
  milestones?: ReleasePlanMilestone[];
@@ -1 +1 @@
1
- {"version":3,"file":"release-plan-template.d.ts","sourceRoot":"","sources":["../../../../src/lib/features/release-plans/release-plan-template.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAExE,MAAM,WAAW,mBAAmB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,UAAU,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACpC,UAAU,CAAC,EAAE,IAAI,CAAC;CACrB"}
1
+ {"version":3,"file":"release-plan-template.d.ts","sourceRoot":"","sources":["../../../../src/lib/features/release-plans/release-plan-template.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAExE,MAAM,WAAW,mBAAmB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,UAAU,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACpC,UAAU,CAAC,EAAE,IAAI,CAAC;CACrB"}
@@ -161,6 +161,7 @@ it('should emit scheduler job time event when scheduled function is run', async
161
161
  });
162
162
  await schedulerService.schedule(mockJob, 50, 'testJobId');
163
163
  await eventPromise;
164
+ schedulerService.stop();
164
165
  });
165
166
  test('Delays initial job execution by jitter duration', async () => {
166
167
  const { schedulerService } = createSchedulerTestService();
@@ -1 +1 @@
1
- {"version":3,"file":"scheduler-service.test.js","sourceRoot":"","sources":["../../../../src/lib/features/scheduler/scheduler-service.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,kBAAkB,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,cAAc,MAAM,gCAAgC,CAAC;AAC5D,OAAO,gBAAgB,MAAM,mCAAmC,CAAC;AAEjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,YAAY,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE5B,SAAS,EAAE,CAAC,MAAM;IACd,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,SAAS,GAAG,GAAG,EAAE;IACnB,MAAM,OAAO,GAAU,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAgB,GAAG,EAAE,CAAC,CAAC;QAC/B,KAAK,CAAC,GAAG,IAAW;YAChB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QACD,KAAK,KAAI,CAAC;QACV,IAAI,KAAI,CAAC;QACT,IAAI,KAAI,CAAC;QACT,KAAK,KAAI,CAAC;KACb,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC;IAEjC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;AAClC,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,KAAK,EAC/B,kBAAsC,EACtC,OAAgB,EAClB,EAAE;IACA,MAAM,kBAAkB,CAAC,qBAAqB,CAC1C,EAAE,OAAO,EAAE,EACX,eAAe,CAClB,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,0BAA0B,GAAG,CAAC,EAChC,cAAc,EACd,gBAAgB,MAIhB,EAAE,EAAE,EAAE;IACN,MAAM,MAAM,GAAG;QACX,GAAG,gBAAgB,EAAE;QACrB,QAAQ,EAAE,gBAAgB,IAAI,IAAI,YAAY,EAAE;KACnD,CAAC;IAEF,MAAM,MAAM,GAAG,cAAc,IAAI,MAAM,CAAC,SAAS,CAAC;IAElD,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;IAC5C,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE;QAChE,UAAU,KAAI,CAAC;KACS,CAAC,CAAC;IAC9B,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC1E,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CACzC,MAAM,EACN,kBAAkB,EAClB,MAAM,CAAC,QAAQ,CAClB,CAAC;IAEF,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,CAAC;AACpD,CAAC,CAAC;AAEF,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;IACzC,MAAM,EAAE,gBAAgB,EAAE,GAAG,0BAA0B,EAAE,CAAC;IAC1D,MAAM,SAAS,GAAG,CAAC,CAAC;IAEpB,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,EAAyB,CAAC;IAE3C,MAAM,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAE/D,MAAM,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACrC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;IAC7D,MAAM,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,GAC1C,0BAA0B,EAAE,CAAC;IAEjC,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,EAAyB,CAAC;IAE3C,MAAM,qBAAqB,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;IACtD,MAAM,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;IAEtD,MAAM,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACrC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;IACjD,MAAM,EAAE,gBAAgB,EAAE,GAAG,0BAA0B,EAAE,CAAC;IAE1D,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,EAAyB,CAAC;IAE3C,MAAM,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;IACtD,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IAEb,MAAM,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACrC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;IACtD,MAAM,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,GAC1C,0BAA0B,EAAE,CAAC;IAEjC,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,EAAyB,CAAC;IAE3C,MAAM,qBAAqB,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;IACtD,MAAM,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;IACtD,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IAEb,MAAM,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACrC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;IACrC,MAAM,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,GAC1C,0BAA0B,EAAE,CAAC;IAEjC,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,EAAyB,CAAC;IAE3C,MAAM,qBAAqB,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;IACtD,MAAM,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;IACtD,MAAM,qBAAqB,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;IACvD,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IAEb,MAAM,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACrC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;IAC/D,MAAM,EAAE,gBAAgB,EAAE,GAAG,0BAA0B,EAAE,CAAC;IAE1D,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,EAAyB,CAAC;IAC3C,MAAM,UAAU,GAAG,EAAE,CAAC,EAAE,EAAyB,CAAC;IAElD,MAAM,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;IACtD,MAAM,gBAAgB,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;IAC7D,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IAEb,MAAM,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC5C,gBAAgB,CAAC,IAAI,EAAE,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;IACrE,MAAM,EAAE,gBAAgB,EAAE,GAAG,0BAA0B,EAAE,CAAC;IAE1D,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,EAAyB,CAAC;IAC3C,MAAM,UAAU,GAAG,EAAE,CAAC,EAAE,EAAyB,CAAC;IAElD,MAAM,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;IACvD,MAAM,gBAAgB,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;IAC9D,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC;IAEd,MAAM,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC5C,gBAAgB,CAAC,IAAI,EAAE,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;IAC/C,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;IAC3C,MAAM,EAAE,gBAAgB,EAAE,GAAG,0BAA0B,CAAC;QACpD,cAAc,EAAE,MAAM;KACzB,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,KAAK,IAAI,EAAE;QACnB,MAAM,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IACzC,CAAC,CAAC;IAEF,MAAM,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;IAC1D,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IAEb,gBAAgB,CAAC,IAAI,EAAE,CAAC;IACxB,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAC3B,+CAA+C,CAClD,CAAC;IACF,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAChD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAC3B,gDAAgD,CACnD,CAAC;IACF,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;AACpD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;IAC9C,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;IAC3C,MAAM,EAAE,gBAAgB,EAAE,GAAG,0BAA0B,CAAC;QACpD,cAAc,EAAE,MAAM;KACzB,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,GAAG,EAAE;QACb,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;IACnC,CAAC,CAAC;IAEF,MAAM,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC;IACvD,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IAEb,gBAAgB,CAAC,IAAI,EAAE,CAAC;IACxB,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAC3B,+CAA+C,CAClD,CAAC;IACF,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IACvD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAC3B,gDAAgD,CACnD,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;IACjF,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;IACpC,MAAM,EAAE,gBAAgB,EAAE,GAAG,0BAA0B,CAAC;QACpD,gBAAgB,EAAE,QAAQ;KAC7B,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;QACvB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACjD,QAAQ,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;YAChD,IAAI,CAAC;gBACD,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAChC,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACnC,OAAO,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,MAAM,CAAC,CAAC,CAAC,CAAC;YACd,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,MAAM,gBAAgB,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;IAC1D,MAAM,YAAY,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;IAC/D,MAAM,EAAE,gBAAgB,EAAE,GAAG,0BAA0B,EAAE,CAAC;IAE1D,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,EAAyB,CAAC;IAC3C,MAAM,QAAQ,GAAG,EAAE,CAAC;IAEpB,MAAM,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACjE,MAAM,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAErC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IACb,MAAM,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACrC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;IACrF,MAAM,EAAE,gBAAgB,EAAE,GAAG,0BAA0B,EAAE,CAAC;IAE1D,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,EAAyB,CAAC;IAE3C,wBAAwB;IACxB,MAAM,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IACtD,MAAM,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAErC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;IAC9E,MAAM,EAAE,gBAAgB,EAAE,GAAG,0BAA0B,EAAE,CAAC;IAC1D,MAAM,SAAS,GAAG,CAAC,CAAC;IAEpB,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,EAAyB,CAAC;IAC3C,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;QACvB,GAAG,EAAE,CAAC;QACN,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,CAAC;IAEF,KAAK,gBAAgB,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAElE,qEAAqE;IACrE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IAEb,MAAM,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAErC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AAC5B,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"scheduler-service.test.js","sourceRoot":"","sources":["../../../../src/lib/features/scheduler/scheduler-service.test.ts"],"names":[],"mappings":"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"}
@@ -52,6 +52,9 @@ test('should update updated_at date', async () => {
52
52
  hll: hll.output().buckets,
53
53
  });
54
54
  const firstFetch = await uniqueConnectionStore.get('current');
55
+ // updated_at has millisecond precision; back-to-back inserts can land on
56
+ // the same timestamp and make isAfter() false.
57
+ await new Promise((resolve) => setTimeout(resolve, 5));
55
58
  await uniqueConnectionStore.insert({
56
59
  id: 'current',
57
60
  hll: hll.output().buckets,
@@ -1 +1 @@
1
- {"version":3,"file":"unique-connection-store.e2e.test.js","sourceRoot":"","sources":["../../../../src/lib/features/unique-connection/unique-connection-store.e2e.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAEN,MAAM,4CAA4C,CAAC;AACpD,OAAO,SAAS,MAAM,qCAAqC,CAAC;AAK5D,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,IAAI,MAAsB,CAAC;AAC3B,IAAI,EAAW,CAAC;AAChB,IAAI,qBAA6C,CAAC;AAElD,SAAS,CAAC,KAAK,IAAI,EAAE;IACjB,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,EAAE,SAAS,CAAC,CAAC;IACzD,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC;IACnB,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACzD,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,KAAK,IAAI,EAAE;IAChB,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,UAAU,CAAC,KAAK,IAAI,EAAE;IAClB,MAAM,qBAAqB,CAAC,SAAS,EAAE,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;IACrD,MAAM,GAAG,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;IAC5B,MAAM,qBAAqB,CAAC,MAAM,CAAC;QAC/B,EAAE,EAAE,SAAS;QACb,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO;KAC5B,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC9D,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,UAAW,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/C,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAChC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;IACzD,MAAM,GAAG,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;IAC5B,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IAC1C,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IAC1C,MAAM,qBAAqB,CAAC,MAAM,CAAC;QAC/B,EAAE,EAAE,SAAS;QACb,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO;KAC5B,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;IACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,UAAW,CAAC,GAAG,EAAE,CAAC,CAAC;IACpD,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAChC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;IAC7C,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAE9D,MAAM,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC;AAClC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;IAC7C,MAAM,GAAG,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;IAC5B,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IAC1C,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IAE1C,MAAM,qBAAqB,CAAC,MAAM,CAAC;QAC/B,EAAE,EAAE,SAAS;QACb,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO;KAC5B,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAE9D,MAAM,qBAAqB,CAAC,MAAM,CAAC;QAC/B,EAAE,EAAE,SAAS;QACb,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO;KAC5B,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,MAAM,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAE/D,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,SAAU,EAAE,UAAU,EAAE,SAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChF,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"unique-connection-store.e2e.test.js","sourceRoot":"","sources":["../../../../src/lib/features/unique-connection/unique-connection-store.e2e.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rbac-middleware.d.ts","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAC;AACzC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGvC,MAAM,WAAW,iBAAiB;IAC9B,aAAa,CACT,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,MAAM,EAAE,EACrB,SAAS,CAAC,EAAE,MAAM,EAClB,WAAW,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,OAAO,CAAC,CAAC;CACvB;AAED,wBAAgB,SAAS,CACrB,IAAI,EAAE,MAAM,EACZ,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,OAAO,EACzB,YAAY,CAAC,EAAE,MAAM,GACtB,MAAM,GAAG,SAAS,CAMpB;AAED,QAAA,MAAM,cAAc,GAChB,QAAQ,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,OAAO,CAAC,EACnD,uCAGG,IAAI,CAAC,cAAc,EAAE,oBAAoB,GAAG,cAAc,CAAC,EAC9D,eAAe,iBAAiB,KACjC,GAuGF,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"rbac-middleware.d.ts","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAC;AACzC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGvC,MAAM,WAAW,iBAAiB;IAC9B,aAAa,CACT,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,MAAM,EAAE,EACrB,SAAS,CAAC,EAAE,MAAM,EAClB,WAAW,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,OAAO,CAAC,CAAC;CACvB;AAED,wBAAgB,SAAS,CACrB,IAAI,EAAE,MAAM,EACZ,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,OAAO,EACzB,YAAY,CAAC,EAAE,MAAM,GACtB,MAAM,GAAG,SAAS,CAMpB;AAED,QAAA,MAAM,cAAc,GAChB,QAAQ,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,OAAO,CAAC,EACnD,uCAGG,IAAI,CAAC,cAAc,EAAE,oBAAoB,GAAG,cAAc,CAAC,EAC9D,eAAe,iBAAiB,KACjC,GAsGF,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -63,10 +63,9 @@ const rbacMiddleware = (config, { featureToggleStore, segmentStore, }, accessSer
63
63
  return false;
64
64
  }
65
65
  }
66
- // DELETE segment does not include information about the segment's project
67
- // This is needed to check if the user has the right permissions on a project level
68
- if (!projectId &&
69
- permissionsArray.includes(UPDATE_PROJECT_SEGMENT) &&
66
+ // Segment update/delete must be authorized against the segment's
67
+ // stored project, not a project supplied in the request body.
68
+ if (permissionsArray.includes(UPDATE_PROJECT_SEGMENT) &&
70
69
  params.id) {
71
70
  const { id } = params;
72
71
  const segment = await segmentStore.get(id);
@@ -1 +1 @@
1
- {"version":3,"file":"rbac-middleware.js","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rbac-middleware.js","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ import { vi } from 'vitest';
11
11
  let config;
12
12
  let featureToggleStore;
13
13
  let segmentStore;
14
+ const user = new User({ username: 'user', id: 1 });
14
15
  beforeEach(() => {
15
16
  featureToggleStore = new FakeFeatureToggleStore();
16
17
  segmentStore = new FakeSegmentStore();
@@ -156,10 +157,7 @@ test('should verify permission for root resource', async () => {
156
157
  const func = rbacMiddleware(config, { featureToggleStore, segmentStore }, accessService);
157
158
  const cb = vi.fn();
158
159
  const req = {
159
- user: new User({
160
- username: 'user',
161
- id: 1,
162
- }),
160
+ user,
163
161
  params: {},
164
162
  };
165
163
  func(req, undefined, cb);
@@ -174,10 +172,7 @@ test('should lookup projectId from params', async () => {
174
172
  const func = rbacMiddleware(config, { featureToggleStore, segmentStore }, accessService);
175
173
  const cb = vi.fn();
176
174
  const req = {
177
- user: new User({
178
- username: 'user',
179
- id: 1,
180
- }),
175
+ user,
181
176
  params: {
182
177
  projectId: 'some-proj',
183
178
  },
@@ -196,10 +191,7 @@ test('should lookup projectId from feature flag', async () => {
196
191
  const func = rbacMiddleware(config, { featureToggleStore, segmentStore }, accessService);
197
192
  const cb = vi.fn();
198
193
  const req = {
199
- user: new User({
200
- username: 'user',
201
- id: 1,
202
- }),
194
+ user,
203
195
  params: {
204
196
  featureName,
205
197
  },
@@ -217,10 +209,7 @@ test('should lookup projectId from data', async () => {
217
209
  const func = rbacMiddleware(config, { featureToggleStore, segmentStore }, accessService);
218
210
  const cb = vi.fn();
219
211
  const req = {
220
- user: new User({
221
- username: 'user',
222
- id: 1,
223
- }),
212
+ user,
224
213
  params: {},
225
214
  body: {
226
215
  featureName,
@@ -241,7 +230,7 @@ test('Does not double check permission if not changing project when updating fla
241
230
  const func = rbacMiddleware(config, { featureToggleStore, segmentStore }, accessService);
242
231
  const cb = vi.fn();
243
232
  const req = {
244
- user: new User({ username: 'user', id: 1 }),
233
+ user,
245
234
  params: { featureName },
246
235
  body: { featureName, project: oldProjectId },
247
236
  };
@@ -257,7 +246,7 @@ test('CREATE_TAG_TYPE does not need projectId', async () => {
257
246
  const func = rbacMiddleware(config, { featureToggleStore, segmentStore }, accessService);
258
247
  const cb = vi.fn();
259
248
  const req = {
260
- user: new User({ username: 'user', id: 1 }),
249
+ user,
261
250
  params: {},
262
251
  body: { name: 'new-tag-type', description: 'New tag type for testing' },
263
252
  };
@@ -273,7 +262,7 @@ test('UPDATE_TAG_TYPE does not need projectId', async () => {
273
262
  const func = rbacMiddleware(config, { featureToggleStore, segmentStore }, accessService);
274
263
  const cb = vi.fn();
275
264
  const req = {
276
- user: new User({ username: 'user', id: 1 }),
265
+ user,
277
266
  params: {},
278
267
  body: { name: 'new-tag-type', description: 'New tag type for testing' },
279
268
  };
@@ -289,7 +278,7 @@ test('DELETE_TAG_TYPE does not need projectId', async () => {
289
278
  const func = rbacMiddleware(config, { featureToggleStore, segmentStore }, accessService);
290
279
  const cb = vi.fn();
291
280
  const req = {
292
- user: new User({ username: 'user', id: 1 }),
281
+ user,
293
282
  params: {},
294
283
  body: { name: 'new-tag-type', description: 'New tag type for testing' },
295
284
  };
@@ -306,10 +295,7 @@ test('should not expect featureName for UPDATE_FEATURE when projectId specified'
306
295
  const func = rbacMiddleware(config, { featureToggleStore, segmentStore }, accessService);
307
296
  const cb = vi.fn();
308
297
  const req = {
309
- user: new User({
310
- username: 'user',
311
- id: 1,
312
- }),
298
+ user,
313
299
  params: {},
314
300
  body: {
315
301
  project: projectId,
@@ -319,4 +305,56 @@ test('should not expect featureName for UPDATE_FEATURE when projectId specified'
319
305
  await req.checkRbac(perms.UPDATE_FEATURE);
320
306
  expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, [perms.UPDATE_FEATURE], projectId, undefined);
321
307
  });
308
+ const segmentUpdateRequest = async ({ hasPermission, segmentProject, body, }) => {
309
+ const segment = await segmentStore.create({
310
+ name: 'segment',
311
+ project: segmentProject,
312
+ constraints: [],
313
+ createdAt: new Date(),
314
+ }, { username: 'creator' });
315
+ const middleware = rbacMiddleware(config, { featureToggleStore, segmentStore }, { hasPermission });
316
+ const req = {
317
+ user,
318
+ params: { id: String(segment.id) },
319
+ body,
320
+ };
321
+ middleware(req, undefined, () => { });
322
+ return req;
323
+ };
324
+ test('a user cannot update a segment in a project they lack access to by naming a project they can access in the body', async () => {
325
+ const req = await segmentUpdateRequest({
326
+ hasPermission: async (_user, _permissions, projectId) => projectId === 'my-project',
327
+ segmentProject: 'someone-elses-project',
328
+ body: { project: 'my-project' },
329
+ });
330
+ const allowed = await req.checkRbac([
331
+ perms.UPDATE_SEGMENT,
332
+ perms.UPDATE_PROJECT_SEGMENT,
333
+ ]);
334
+ expect(allowed).toBe(false);
335
+ });
336
+ test('a user can update a segment in a project they have access to', async () => {
337
+ const req = await segmentUpdateRequest({
338
+ hasPermission: async (_user, _permissions, projectId) => projectId === 'my-project',
339
+ segmentProject: 'my-project',
340
+ body: { project: 'my-project' },
341
+ });
342
+ const allowed = await req.checkRbac([
343
+ perms.UPDATE_SEGMENT,
344
+ perms.UPDATE_PROJECT_SEGMENT,
345
+ ]);
346
+ expect(allowed).toBe(true);
347
+ });
348
+ test('a user with the instance-wide update-segment permission can update a global segment', async () => {
349
+ const req = await segmentUpdateRequest({
350
+ hasPermission: async (_user, permissions) => permissions.includes(perms.UPDATE_SEGMENT),
351
+ segmentProject: undefined,
352
+ body: {},
353
+ });
354
+ const allowed = await req.checkRbac([
355
+ perms.UPDATE_SEGMENT,
356
+ perms.UPDATE_PROJECT_SEGMENT,
357
+ ]);
358
+ expect(allowed).toBe(true);
359
+ });
322
360
  //# sourceMappingURL=rbac-middleware.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rbac-middleware.test.js","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rbac-middleware.test.js","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.test.ts"],"names":[],"mappings":"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"}