unleash-server 7.4.0 → 7.4.2

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 (718) hide show
  1. package/README.md +8 -3
  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/addons/slack-definition.d.ts.map +1 -1
  8. package/dist/lib/addons/slack-definition.js +3 -1
  9. package/dist/lib/addons/slack-definition.js.map +1 -1
  10. package/dist/lib/app.test.js +4 -0
  11. package/dist/lib/app.test.js.map +1 -1
  12. package/dist/lib/create-config.d.ts.map +1 -1
  13. package/dist/lib/create-config.js +6 -1
  14. package/dist/lib/create-config.js.map +1 -1
  15. package/dist/lib/db/feature-environment-store.d.ts.map +1 -1
  16. package/dist/lib/db/feature-environment-store.js.map +1 -1
  17. package/dist/lib/db/index.d.ts.map +1 -1
  18. package/dist/lib/db/index.js +5 -2
  19. package/dist/lib/db/index.js.map +1 -1
  20. package/dist/lib/features/access/access-read-model.d.ts.map +1 -1
  21. package/dist/lib/features/access/access-read-model.js +3 -2
  22. package/dist/lib/features/access/access-read-model.js.map +1 -1
  23. package/dist/lib/features/client-feature-toggles/client-feature-toggle.controller.d.ts.map +1 -1
  24. package/dist/lib/features/client-feature-toggles/client-feature-toggle.controller.js +14 -7
  25. package/dist/lib/features/client-feature-toggles/client-feature-toggle.controller.js.map +1 -1
  26. package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta.test.js +54 -0
  27. package/dist/lib/features/client-feature-toggles/delta/client-feature-toggle-delta.test.js.map +1 -1
  28. package/dist/lib/features/client-feature-toggles/delta/delta-cache.d.ts +1 -0
  29. package/dist/lib/features/client-feature-toggles/delta/delta-cache.d.ts.map +1 -1
  30. package/dist/lib/features/client-feature-toggles/delta/delta-cache.js +14 -0
  31. package/dist/lib/features/client-feature-toggles/delta/delta-cache.js.map +1 -1
  32. package/dist/lib/{routes/admin-api/constraints.d.ts → features/constraints/constraints-controller.d.ts} +5 -5
  33. package/dist/lib/features/constraints/constraints-controller.d.ts.map +1 -0
  34. package/dist/lib/{routes/admin-api/constraints.js → features/constraints/constraints-controller.js} +6 -6
  35. package/dist/lib/features/constraints/constraints-controller.js.map +1 -0
  36. package/dist/lib/features/constraints/constraints-read-model-type.d.ts +6 -0
  37. package/dist/lib/features/constraints/constraints-read-model-type.d.ts.map +1 -0
  38. package/dist/lib/features/constraints/constraints-read-model-type.js +2 -0
  39. package/dist/lib/features/constraints/constraints-read-model-type.js.map +1 -0
  40. package/dist/lib/features/constraints/constraints-read-model.d.ts +11 -0
  41. package/dist/lib/features/constraints/constraints-read-model.d.ts.map +1 -0
  42. package/dist/lib/features/constraints/constraints-read-model.js +55 -0
  43. package/dist/lib/features/constraints/constraints-read-model.js.map +1 -0
  44. package/dist/lib/features/constraints/constraints-read-model.test.d.ts +2 -0
  45. package/dist/lib/features/constraints/constraints-read-model.test.d.ts.map +1 -0
  46. package/dist/lib/features/constraints/constraints-read-model.test.js +388 -0
  47. package/dist/lib/features/constraints/constraints-read-model.test.js.map +1 -0
  48. package/dist/lib/features/constraints/constraints.e2e.test.d.ts.map +1 -0
  49. package/dist/{test/e2e/api/admin → lib/features/constraints}/constraints.e2e.test.js +4 -4
  50. package/dist/lib/features/constraints/constraints.e2e.test.js.map +1 -0
  51. package/dist/lib/features/constraints/createConstraintsReadModel.d.ts +5 -0
  52. package/dist/lib/features/constraints/createConstraintsReadModel.d.ts.map +1 -0
  53. package/dist/lib/features/constraints/createConstraintsReadModel.js +9 -0
  54. package/dist/lib/features/constraints/createConstraintsReadModel.js.map +1 -0
  55. package/dist/lib/features/constraints/fake-constraints-read-model.d.ts +7 -0
  56. package/dist/lib/features/constraints/fake-constraints-read-model.d.ts.map +1 -0
  57. package/dist/lib/features/constraints/fake-constraints-read-model.js +11 -0
  58. package/dist/lib/features/constraints/fake-constraints-read-model.js.map +1 -0
  59. package/dist/lib/features/context/context-field-store-type.d.ts +2 -0
  60. package/dist/lib/features/context/context-field-store-type.d.ts.map +1 -1
  61. package/dist/lib/features/context/context-field-store.d.ts +2 -0
  62. package/dist/lib/features/context/context-field-store.d.ts.map +1 -1
  63. package/dist/lib/features/context/context-field-store.js +11 -0
  64. package/dist/lib/features/context/context-field-store.js.map +1 -1
  65. package/dist/lib/features/context/context-service.d.ts +8 -0
  66. package/dist/lib/features/context/context-service.d.ts.map +1 -1
  67. package/dist/lib/features/context/context-service.js +31 -0
  68. package/dist/lib/features/context/context-service.js.map +1 -1
  69. package/dist/lib/features/context/context.d.ts +10 -4
  70. package/dist/lib/features/context/context.d.ts.map +1 -1
  71. package/dist/lib/features/context/context.js +68 -33
  72. package/dist/lib/features/context/context.js.map +1 -1
  73. package/dist/lib/features/context/createContextService.js +1 -1
  74. package/dist/lib/features/context/createContextService.js.map +1 -1
  75. package/dist/lib/features/context/fake-context-field-store.d.ts +1 -0
  76. package/dist/lib/features/context/fake-context-field-store.d.ts.map +1 -1
  77. package/dist/lib/features/context/fake-context-field-store.js +4 -1
  78. package/dist/lib/features/context/fake-context-field-store.js.map +1 -1
  79. package/dist/lib/features/dependent-features/dependent-features-controller.d.ts.map +1 -1
  80. package/dist/lib/features/dependent-features/dependent-features-controller.js +0 -1
  81. package/dist/lib/features/dependent-features/dependent-features-controller.js.map +1 -1
  82. package/dist/lib/features/edgetokens/edge-hmac-verifier.d.ts +4 -0
  83. package/dist/lib/features/edgetokens/edge-hmac-verifier.d.ts.map +1 -0
  84. package/dist/lib/features/edgetokens/edge-hmac-verifier.js +83 -0
  85. package/dist/lib/features/edgetokens/edge-hmac-verifier.js.map +1 -0
  86. package/dist/lib/features/edgetokens/edge-token-store.d.ts +16 -0
  87. package/dist/lib/features/edgetokens/edge-token-store.d.ts.map +1 -0
  88. package/dist/lib/features/edgetokens/edge-token-store.js +101 -0
  89. package/dist/lib/features/edgetokens/edge-token-store.js.map +1 -0
  90. package/dist/lib/features/edgetokens/edge-tokens.d.ts +2 -0
  91. package/dist/lib/features/edgetokens/edge-tokens.d.ts.map +1 -0
  92. package/dist/lib/features/edgetokens/edge-tokens.js +16 -0
  93. package/dist/lib/features/edgetokens/edge-tokens.js.map +1 -0
  94. package/dist/lib/features/edgetokens/edge-tokens.test.d.ts +2 -0
  95. package/dist/lib/features/edgetokens/edge-tokens.test.d.ts.map +1 -0
  96. package/dist/lib/features/edgetokens/edge-tokens.test.js +22 -0
  97. package/dist/lib/features/edgetokens/edge-tokens.test.js.map +1 -0
  98. package/dist/lib/features/edgetokens/edge-verification.d.ts +3 -0
  99. package/dist/lib/features/edgetokens/edge-verification.d.ts.map +1 -0
  100. package/dist/lib/features/edgetokens/edge-verification.js +25 -0
  101. package/dist/lib/features/edgetokens/edge-verification.js.map +1 -0
  102. package/dist/lib/features/edgetokens/edge-verification.test.d.ts +2 -0
  103. package/dist/lib/features/edgetokens/edge-verification.test.d.ts.map +1 -0
  104. package/dist/lib/features/edgetokens/edge-verification.test.js +18 -0
  105. package/dist/lib/features/edgetokens/edge-verification.test.js.map +1 -0
  106. package/dist/lib/features/edgetokens/fake-edge-token-store.d.ts +11 -0
  107. package/dist/lib/features/edgetokens/fake-edge-token-store.d.ts.map +1 -0
  108. package/dist/lib/features/edgetokens/fake-edge-token-store.js +21 -0
  109. package/dist/lib/features/edgetokens/fake-edge-token-store.js.map +1 -0
  110. package/dist/lib/features/events/event-store.d.ts.map +1 -1
  111. package/dist/lib/features/events/event-store.js +14 -3
  112. package/dist/lib/features/events/event-store.js.map +1 -1
  113. package/dist/lib/features/export-import-toggles/export-import-service.d.ts.map +1 -1
  114. package/dist/lib/features/export-import-toggles/export-import-service.js +10 -1
  115. package/dist/lib/features/export-import-toggles/export-import-service.js.map +1 -1
  116. package/dist/lib/features/export-import-toggles/export-import.e2e.test.js +8 -3
  117. package/dist/lib/features/export-import-toggles/export-import.e2e.test.js.map +1 -1
  118. package/dist/lib/features/feature-lifecycle/feature-lifecycle-controller.d.ts.map +1 -1
  119. package/dist/lib/features/feature-lifecycle/feature-lifecycle-controller.js +6 -3
  120. package/dist/lib/features/feature-lifecycle/feature-lifecycle-controller.js.map +1 -1
  121. package/dist/lib/features/feature-lifecycle/feature-lifecycle-count-controller.d.ts +5 -4
  122. package/dist/lib/features/feature-lifecycle/feature-lifecycle-count-controller.d.ts.map +1 -1
  123. package/dist/lib/features/feature-lifecycle/feature-lifecycle-count-controller.js +11 -4
  124. package/dist/lib/features/feature-lifecycle/feature-lifecycle-count-controller.js.map +1 -1
  125. package/dist/lib/features/feature-lifecycle/feature-lifecycle-read-model-type.d.ts +1 -1
  126. package/dist/lib/features/feature-lifecycle/feature-lifecycle-read-model-type.d.ts.map +1 -1
  127. package/dist/lib/features/feature-lifecycle/feature-lifecycle-read-model.d.ts +1 -1
  128. package/dist/lib/features/feature-lifecycle/feature-lifecycle-read-model.d.ts.map +1 -1
  129. package/dist/lib/features/feature-lifecycle/feature-lifecycle-read-model.js +17 -18
  130. package/dist/lib/features/feature-lifecycle/feature-lifecycle-read-model.js.map +1 -1
  131. package/dist/lib/features/feature-lifecycle/feature-lifecycle-read-model.test.js +17 -0
  132. package/dist/lib/features/feature-lifecycle/feature-lifecycle-read-model.test.js.map +1 -1
  133. package/dist/lib/features/feature-links/createFeatureLinkService.d.ts +4 -1
  134. package/dist/lib/features/feature-links/createFeatureLinkService.d.ts.map +1 -1
  135. package/dist/lib/features/feature-links/createFeatureLinkService.js +7 -3
  136. package/dist/lib/features/feature-links/createFeatureLinkService.js.map +1 -1
  137. package/dist/lib/features/feature-links/feature-link-controller.d.ts.map +1 -1
  138. package/dist/lib/features/feature-links/feature-link-controller.js +6 -3
  139. package/dist/lib/features/feature-links/feature-link-controller.js.map +1 -1
  140. package/dist/lib/features/feature-links/feature-link-service.d.ts +3 -0
  141. package/dist/lib/features/feature-links/feature-link-service.d.ts.map +1 -1
  142. package/dist/lib/features/feature-links/feature-link-service.js +5 -0
  143. package/dist/lib/features/feature-links/feature-link-service.js.map +1 -1
  144. package/dist/lib/features/feature-links/feature-link-service.test.js +20 -3
  145. package/dist/lib/features/feature-links/feature-link-service.test.js.map +1 -1
  146. package/dist/lib/features/feature-search/createFeatureSearchService.d.ts +3 -2
  147. package/dist/lib/features/feature-search/createFeatureSearchService.d.ts.map +1 -1
  148. package/dist/lib/features/feature-search/createFeatureSearchService.js +4 -4
  149. package/dist/lib/features/feature-search/createFeatureSearchService.js.map +1 -1
  150. package/dist/lib/features/feature-search/feature-search-controller.js +2 -2
  151. package/dist/lib/features/feature-search/feature-search-controller.js.map +1 -1
  152. package/dist/lib/features/feature-search/feature-search-service.d.ts +4 -2
  153. package/dist/lib/features/feature-search/feature-search-service.d.ts.map +1 -1
  154. package/dist/lib/features/feature-search/feature-search-service.js +12 -3
  155. package/dist/lib/features/feature-search/feature-search-service.js.map +1 -1
  156. package/dist/lib/features/feature-search/feature.search.e2e.test.js +3 -3
  157. package/dist/lib/features/feature-search/feature.search.e2e.test.js.map +1 -1
  158. package/dist/lib/features/feature-toggle/configuration-revision-service.d.ts +2 -1
  159. package/dist/lib/features/feature-toggle/configuration-revision-service.d.ts.map +1 -1
  160. package/dist/lib/features/feature-toggle/configuration-revision-service.js +16 -0
  161. package/dist/lib/features/feature-toggle/configuration-revision-service.js.map +1 -1
  162. package/dist/lib/features/feature-toggle/converters/feature-toggle-row-converter.d.ts +1 -1
  163. package/dist/lib/features/feature-toggle/createFeatureToggleService.d.ts +2 -0
  164. package/dist/lib/features/feature-toggle/createFeatureToggleService.d.ts.map +1 -1
  165. package/dist/lib/features/feature-toggle/createFeatureToggleService.js +8 -2
  166. package/dist/lib/features/feature-toggle/createFeatureToggleService.js.map +1 -1
  167. package/dist/lib/features/feature-toggle/fakes/fake-features-read-model.d.ts +6 -0
  168. package/dist/lib/features/feature-toggle/fakes/fake-features-read-model.d.ts.map +1 -1
  169. package/dist/lib/features/feature-toggle/fakes/fake-features-read-model.js +6 -2
  170. package/dist/lib/features/feature-toggle/fakes/fake-features-read-model.js.map +1 -1
  171. package/dist/lib/features/feature-toggle/feature-toggle-service.d.ts +6 -6
  172. package/dist/lib/features/feature-toggle/feature-toggle-service.d.ts.map +1 -1
  173. package/dist/lib/features/feature-toggle/feature-toggle-service.js +6 -44
  174. package/dist/lib/features/feature-toggle/feature-toggle-service.js.map +1 -1
  175. package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.d.ts.map +1 -1
  176. package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.js +6 -0
  177. package/dist/lib/features/feature-toggle/feature-toggle-strategies-store.js.map +1 -1
  178. package/dist/lib/features/feature-toggle/tests/feature-toggle-service.constraint-validation.test.d.ts +2 -0
  179. package/dist/lib/features/feature-toggle/tests/feature-toggle-service.constraint-validation.test.d.ts.map +1 -0
  180. package/dist/lib/features/feature-toggle/tests/feature-toggle-service.constraint-validation.test.js +185 -0
  181. package/dist/lib/features/feature-toggle/tests/feature-toggle-service.constraint-validation.test.js.map +1 -0
  182. package/dist/lib/features/frontend-api/createFrontendApiService.d.ts.map +1 -1
  183. package/dist/lib/features/frontend-api/createFrontendApiService.js +2 -0
  184. package/dist/lib/features/frontend-api/createFrontendApiService.js.map +1 -1
  185. package/dist/lib/features/index.d.ts +1 -0
  186. package/dist/lib/features/index.d.ts.map +1 -1
  187. package/dist/lib/features/index.js +1 -0
  188. package/dist/lib/features/index.js.map +1 -1
  189. package/dist/lib/features/instance-stats/createInstanceStatsService.d.ts.map +1 -1
  190. package/dist/lib/features/instance-stats/createInstanceStatsService.js +0 -1
  191. package/dist/lib/features/instance-stats/createInstanceStatsService.js.map +1 -1
  192. package/dist/lib/features/instance-stats/getReadOnlyUsers.d.ts.map +1 -1
  193. package/dist/lib/features/instance-stats/getReadOnlyUsers.js +1 -16
  194. package/dist/lib/features/instance-stats/getReadOnlyUsers.js.map +1 -1
  195. package/dist/lib/features/instance-stats/instance-stats-service.d.ts +5 -3
  196. package/dist/lib/features/instance-stats/instance-stats-service.d.ts.map +1 -1
  197. package/dist/lib/features/instance-stats/instance-stats-service.js +15 -2
  198. package/dist/lib/features/instance-stats/instance-stats-service.js.map +1 -1
  199. package/dist/lib/features/metrics/last-seen/tests/last-seen-service.test.js +2 -2
  200. package/dist/lib/features/metrics/last-seen/tests/last-seen-service.test.js.map +1 -1
  201. package/dist/lib/features/metrics/shared/schema.d.ts.map +1 -1
  202. package/dist/lib/features/metrics/shared/schema.js +10 -2
  203. package/dist/lib/features/metrics/shared/schema.js.map +1 -1
  204. package/dist/lib/features/metrics/shared/schema.test.js +18 -0
  205. package/dist/lib/features/metrics/shared/schema.test.js.map +1 -1
  206. package/dist/lib/features/pat/createPatService.d.ts +6 -0
  207. package/dist/lib/features/pat/createPatService.d.ts.map +1 -0
  208. package/dist/lib/features/pat/createPatService.js +15 -0
  209. package/dist/lib/features/pat/createPatService.js.map +1 -0
  210. package/dist/lib/features/pat/fake-pat-store.d.ts +18 -0
  211. package/dist/lib/features/pat/fake-pat-store.d.ts.map +1 -0
  212. package/dist/lib/features/pat/fake-pat-store.js +52 -0
  213. package/dist/lib/features/pat/fake-pat-store.js.map +1 -0
  214. package/dist/lib/{services → features/pat}/pat-service.d.ts +3 -3
  215. package/dist/lib/features/pat/pat-service.d.ts.map +1 -0
  216. package/dist/lib/{services → features/pat}/pat-service.js +5 -5
  217. package/dist/lib/features/pat/pat-service.js.map +1 -0
  218. package/dist/lib/{types/stores/pat-store.d.ts → features/pat/pat-store-type.d.ts} +2 -2
  219. package/dist/lib/features/pat/pat-store-type.d.ts.map +1 -0
  220. package/dist/lib/features/pat/pat-store-type.js +2 -0
  221. package/dist/lib/features/pat/pat-store-type.js.map +1 -0
  222. package/dist/lib/{db → features/pat}/pat-store.d.ts +4 -4
  223. package/dist/lib/features/pat/pat-store.d.ts.map +1 -0
  224. package/dist/lib/{db → features/pat}/pat-store.js +1 -1
  225. package/dist/lib/features/pat/pat-store.js.map +1 -0
  226. package/dist/lib/features/personal-dashboard/personal-dashboard-controller.d.ts.map +1 -1
  227. package/dist/lib/features/personal-dashboard/personal-dashboard-controller.js +4 -2
  228. package/dist/lib/features/personal-dashboard/personal-dashboard-controller.js.map +1 -1
  229. package/dist/lib/features/playground/feature-evaluator/constraint.d.ts +2 -1
  230. package/dist/lib/features/playground/feature-evaluator/constraint.d.ts.map +1 -1
  231. package/dist/lib/features/playground/feature-evaluator/constraint.js +18 -0
  232. package/dist/lib/features/playground/feature-evaluator/constraint.js.map +1 -1
  233. package/dist/lib/features/playground/offline-unleash-client.test.js +105 -0
  234. package/dist/lib/features/playground/offline-unleash-client.test.js.map +1 -1
  235. package/dist/lib/features/private-project/privateProjectStore.js +1 -1
  236. package/dist/lib/features/private-project/privateProjectStore.js.map +1 -1
  237. package/dist/lib/features/project/project-controller.d.ts.map +1 -1
  238. package/dist/lib/features/project/project-controller.js +2 -0
  239. package/dist/lib/features/project/project-controller.js.map +1 -1
  240. package/dist/lib/features/project-environments/environment-service.d.ts.map +1 -1
  241. package/dist/lib/features/project-environments/environment-service.js +4 -0
  242. package/dist/lib/features/project-environments/environment-service.js.map +1 -1
  243. package/dist/lib/features/project-status/project-status-controller.d.ts.map +1 -1
  244. package/dist/lib/features/project-status/project-status-controller.js +2 -1
  245. package/dist/lib/features/project-status/project-status-controller.js.map +1 -1
  246. package/dist/lib/features/release-plans/createReleasePlanMilestoneStrategyService.d.ts +12 -0
  247. package/dist/lib/features/release-plans/createReleasePlanMilestoneStrategyService.d.ts.map +1 -0
  248. package/dist/lib/features/release-plans/createReleasePlanMilestoneStrategyService.js +26 -0
  249. package/dist/lib/features/release-plans/createReleasePlanMilestoneStrategyService.js.map +1 -0
  250. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.d.ts +20 -0
  251. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.d.ts.map +1 -0
  252. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.js +37 -0
  253. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.js.map +1 -0
  254. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.test.d.ts +2 -0
  255. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.test.d.ts.map +1 -0
  256. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.test.js +69 -0
  257. package/dist/lib/features/release-plans/release-plan-milestone-strategy-service.test.js.map +1 -0
  258. package/dist/lib/features/release-plans/release-plan-milestone-strategy-store.d.ts +10 -2
  259. package/dist/lib/features/release-plans/release-plan-milestone-strategy-store.d.ts.map +1 -1
  260. package/dist/lib/features/release-plans/release-plan-milestone-strategy-store.js +0 -1
  261. package/dist/lib/features/release-plans/release-plan-milestone-strategy-store.js.map +1 -1
  262. package/dist/lib/features/scheduler/schedule-services.d.ts.map +1 -1
  263. package/dist/lib/features/scheduler/schedule-services.js +3 -2
  264. package/dist/lib/features/scheduler/schedule-services.js.map +1 -1
  265. package/dist/lib/features/segment/admin-segment.e2e.test.js +117 -0
  266. package/dist/lib/features/segment/admin-segment.e2e.test.js.map +1 -1
  267. package/dist/lib/features/segment/createSegmentService.d.ts.map +1 -1
  268. package/dist/lib/features/segment/createSegmentService.js +7 -2
  269. package/dist/lib/features/segment/createSegmentService.js.map +1 -1
  270. package/dist/lib/features/segment/segment-controller.d.ts +2 -2
  271. package/dist/lib/features/segment/segment-controller.d.ts.map +1 -1
  272. package/dist/lib/features/segment/segment-controller.js +8 -5
  273. package/dist/lib/features/segment/segment-controller.js.map +1 -1
  274. package/dist/lib/features/segment/segment-service-interface.d.ts +2 -2
  275. package/dist/lib/features/segment/segment-service-interface.d.ts.map +1 -1
  276. package/dist/lib/features/segment/segment-service.d.ts +6 -3
  277. package/dist/lib/features/segment/segment-service.d.ts.map +1 -1
  278. package/dist/lib/features/segment/segment-service.js +35 -5
  279. package/dist/lib/features/segment/segment-service.js.map +1 -1
  280. package/dist/lib/features/users/createUserService.d.ts.map +1 -1
  281. package/dist/lib/features/users/createUserService.js +3 -1
  282. package/dist/lib/features/users/createUserService.js.map +1 -1
  283. package/dist/lib/features/users/user-store.d.ts.map +1 -1
  284. package/dist/lib/features/users/user-store.js +8 -0
  285. package/dist/lib/features/users/user-store.js.map +1 -1
  286. package/dist/lib/features/users/user-updates-read-model.d.ts +3 -0
  287. package/dist/lib/features/users/user-updates-read-model.d.ts.map +1 -1
  288. package/dist/lib/features/users/user-updates-read-model.js +3 -0
  289. package/dist/lib/features/users/user-updates-read-model.js.map +1 -1
  290. package/dist/lib/metric-events.d.ts +15 -2
  291. package/dist/lib/metric-events.d.ts.map +1 -1
  292. package/dist/lib/metric-events.js +2 -1
  293. package/dist/lib/metric-events.js.map +1 -1
  294. package/dist/lib/metrics.d.ts.map +1 -1
  295. package/dist/lib/metrics.js +63 -8
  296. package/dist/lib/metrics.js.map +1 -1
  297. package/dist/lib/metrics.test.js +3 -3
  298. package/dist/lib/metrics.test.js.map +1 -1
  299. package/dist/lib/middleware/conditional-middleware.d.ts +1 -1
  300. package/dist/lib/middleware/conditional-middleware.d.ts.map +1 -1
  301. package/dist/lib/middleware/conditional-middleware.js +2 -5
  302. package/dist/lib/middleware/conditional-middleware.js.map +1 -1
  303. package/dist/lib/middleware/response-time-metrics.test.js +4 -0
  304. package/dist/lib/middleware/response-time-metrics.test.js.map +1 -1
  305. package/dist/lib/middleware/secure-headers.d.ts.map +1 -1
  306. package/dist/lib/middleware/secure-headers.js +2 -0
  307. package/dist/lib/middleware/secure-headers.js.map +1 -1
  308. package/dist/lib/openapi/spec/admin-segment-schema.d.ts +1 -1
  309. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.d.ts +4 -4
  310. package/dist/lib/openapi/spec/advanced-playground-feature-schema.d.ts +8 -8
  311. package/dist/lib/openapi/spec/advanced-playground-response-schema.d.ts +17 -17
  312. package/dist/lib/openapi/spec/client-feature-schema.d.ts +2 -2
  313. package/dist/lib/openapi/spec/client-features-delta-schema.d.ts +5 -5
  314. package/dist/lib/openapi/spec/client-features-schema.d.ts +5 -5
  315. package/dist/lib/openapi/spec/client-features-schema.test.js +12 -0
  316. package/dist/lib/openapi/spec/client-features-schema.test.js.map +1 -1
  317. package/dist/lib/openapi/spec/client-metrics-schema.d.ts +1 -0
  318. package/dist/lib/openapi/spec/client-metrics-schema.d.ts.map +1 -1
  319. package/dist/lib/openapi/spec/client-metrics-schema.js +1 -0
  320. package/dist/lib/openapi/spec/client-metrics-schema.js.map +1 -1
  321. package/dist/lib/openapi/spec/client-segment-schema.d.ts +1 -1
  322. package/dist/lib/openapi/spec/constraint-schema.d.ts +2 -2
  323. package/dist/lib/openapi/spec/context-field-schema.d.ts +5 -0
  324. package/dist/lib/openapi/spec/context-field-schema.d.ts.map +1 -1
  325. package/dist/lib/openapi/spec/context-field-schema.js +5 -0
  326. package/dist/lib/openapi/spec/context-field-schema.js.map +1 -1
  327. package/dist/lib/openapi/spec/context-fields-schema.d.ts +5 -0
  328. package/dist/lib/openapi/spec/context-fields-schema.d.ts.map +1 -1
  329. package/dist/lib/openapi/spec/context-query-parameters.d.ts +12 -0
  330. package/dist/lib/openapi/spec/context-query-parameters.d.ts.map +1 -0
  331. package/dist/lib/openapi/spec/context-query-parameters.js +12 -0
  332. package/dist/lib/openapi/spec/context-query-parameters.js.map +1 -0
  333. package/dist/lib/openapi/spec/create-context-field-schema.d.ts +5 -0
  334. package/dist/lib/openapi/spec/create-context-field-schema.d.ts.map +1 -1
  335. package/dist/lib/openapi/spec/create-feature-strategy-schema.d.ts +1 -1
  336. package/dist/lib/openapi/spec/create-user-response-schema.d.ts +19 -1
  337. package/dist/lib/openapi/spec/create-user-response-schema.d.ts.map +1 -1
  338. package/dist/lib/openapi/spec/create-user-response-schema.js +8 -1
  339. package/dist/lib/openapi/spec/create-user-response-schema.js.map +1 -1
  340. package/dist/lib/openapi/spec/create-user-schema.d.ts +1 -1
  341. package/dist/lib/openapi/spec/create-user-schema.d.ts.map +1 -1
  342. package/dist/lib/openapi/spec/create-user-schema.js +8 -1
  343. package/dist/lib/openapi/spec/create-user-schema.js.map +1 -1
  344. package/dist/lib/openapi/spec/edge-environment-projects-list-schema.d.ts +41 -0
  345. package/dist/lib/openapi/spec/edge-environment-projects-list-schema.d.ts.map +1 -0
  346. package/dist/lib/openapi/spec/edge-environment-projects-list-schema.js +39 -0
  347. package/dist/lib/openapi/spec/edge-environment-projects-list-schema.js.map +1 -0
  348. package/dist/lib/openapi/spec/edge-token-schema.d.ts +6 -1
  349. package/dist/lib/openapi/spec/edge-token-schema.d.ts.map +1 -1
  350. package/dist/lib/openapi/spec/edge-token-schema.js +6 -1
  351. package/dist/lib/openapi/spec/edge-token-schema.js.map +1 -1
  352. package/dist/lib/openapi/spec/environment-project-schema.d.ts +2 -2
  353. package/dist/lib/openapi/spec/environments-project-schema.d.ts +4 -4
  354. package/dist/lib/openapi/spec/export-result-schema.d.ts +73 -68
  355. package/dist/lib/openapi/spec/export-result-schema.d.ts.map +1 -1
  356. package/dist/lib/openapi/spec/feature-environment-schema.d.ts +17 -17
  357. package/dist/lib/openapi/spec/feature-schema.d.ts +34 -34
  358. package/dist/lib/openapi/spec/feature-search-environment-schema.d.ts +34 -34
  359. package/dist/lib/openapi/spec/feature-search-response-schema.d.ts +36 -36
  360. package/dist/lib/openapi/spec/feature-strategy-schema.d.ts +1 -1
  361. package/dist/lib/openapi/spec/group-schema.d.ts +36 -0
  362. package/dist/lib/openapi/spec/group-schema.d.ts.map +1 -1
  363. package/dist/lib/openapi/spec/group-user-model-schema.d.ts +18 -0
  364. package/dist/lib/openapi/spec/group-user-model-schema.d.ts.map +1 -1
  365. package/dist/lib/openapi/spec/groups-schema.d.ts +72 -0
  366. package/dist/lib/openapi/spec/groups-schema.d.ts.map +1 -1
  367. package/dist/lib/openapi/spec/health-overview-schema.d.ts +69 -69
  368. package/dist/lib/openapi/spec/health-report-schema.d.ts +69 -69
  369. package/dist/lib/openapi/spec/index.d.ts +3 -0
  370. package/dist/lib/openapi/spec/index.d.ts.map +1 -1
  371. package/dist/lib/openapi/spec/index.js +3 -0
  372. package/dist/lib/openapi/spec/index.js.map +1 -1
  373. package/dist/lib/openapi/spec/instance-admin-stats-schema.d.ts +6 -0
  374. package/dist/lib/openapi/spec/instance-admin-stats-schema.d.ts.map +1 -1
  375. package/dist/lib/openapi/spec/instance-admin-stats-schema.js +6 -0
  376. package/dist/lib/openapi/spec/instance-admin-stats-schema.js.map +1 -1
  377. package/dist/lib/openapi/spec/me-schema.d.ts +18 -0
  378. package/dist/lib/openapi/spec/me-schema.d.ts.map +1 -1
  379. package/dist/lib/openapi/spec/playground-constraint-schema.d.ts +1 -1
  380. package/dist/lib/openapi/spec/playground-feature-schema.d.ts +4 -4
  381. package/dist/lib/openapi/spec/playground-response-schema.d.ts +9 -9
  382. package/dist/lib/openapi/spec/playground-segment-schema.d.ts +1 -1
  383. package/dist/lib/openapi/spec/playground-strategy-schema.d.ts +2 -2
  384. package/dist/lib/openapi/spec/profile-schema.d.ts +34 -34
  385. package/dist/lib/openapi/spec/project-environment-schema.d.ts +1 -1
  386. package/dist/lib/openapi/spec/project-overview-schema.d.ts +69 -69
  387. package/dist/lib/openapi/spec/public-signup-token-schema.d.ts +18 -0
  388. package/dist/lib/openapi/spec/public-signup-token-schema.d.ts.map +1 -1
  389. package/dist/lib/openapi/spec/public-signup-tokens-schema.d.ts +36 -0
  390. package/dist/lib/openapi/spec/public-signup-tokens-schema.d.ts.map +1 -1
  391. package/dist/lib/openapi/spec/release-plan-milestone-schema.d.ts +4 -4
  392. package/dist/lib/openapi/spec/release-plan-milestone-strategy-schema.d.ts +2 -2
  393. package/dist/lib/openapi/spec/release-plan-schema.d.ts +8 -8
  394. package/dist/lib/openapi/spec/release-plan-template-schema.d.ts +8 -8
  395. package/dist/lib/openapi/spec/resource-limits-schema.d.ts +6 -0
  396. package/dist/lib/openapi/spec/resource-limits-schema.d.ts.map +1 -1
  397. package/dist/lib/openapi/spec/resource-limits-schema.js +6 -0
  398. package/dist/lib/openapi/spec/resource-limits-schema.js.map +1 -1
  399. package/dist/lib/openapi/spec/search-features-schema.d.ts +72 -72
  400. package/dist/lib/openapi/spec/segment-schema.d.ts +1 -1
  401. package/dist/lib/openapi/spec/segments-schema.d.ts +2 -2
  402. package/dist/lib/openapi/spec/signup-data-schema.d.ts +42 -0
  403. package/dist/lib/openapi/spec/signup-data-schema.d.ts.map +1 -0
  404. package/dist/lib/openapi/spec/signup-data-schema.js +40 -0
  405. package/dist/lib/openapi/spec/signup-data-schema.js.map +1 -0
  406. package/dist/lib/openapi/spec/submit-signup-data-schema.d.ts +50 -0
  407. package/dist/lib/openapi/spec/submit-signup-data-schema.d.ts.map +1 -0
  408. package/dist/lib/openapi/spec/submit-signup-data-schema.js +26 -0
  409. package/dist/lib/openapi/spec/submit-signup-data-schema.js.map +1 -0
  410. package/dist/lib/openapi/spec/ui-config-schema.d.ts +11 -0
  411. package/dist/lib/openapi/spec/ui-config-schema.d.ts.map +1 -1
  412. package/dist/lib/openapi/spec/ui-config-schema.js +5 -0
  413. package/dist/lib/openapi/spec/ui-config-schema.js.map +1 -1
  414. package/dist/lib/openapi/spec/update-context-field-schema.d.ts +5 -0
  415. package/dist/lib/openapi/spec/update-context-field-schema.d.ts.map +1 -1
  416. package/dist/lib/openapi/spec/update-context-field-schema.js +5 -0
  417. package/dist/lib/openapi/spec/update-context-field-schema.js.map +1 -1
  418. package/dist/lib/openapi/spec/update-feature-schema.d.ts +1 -1
  419. package/dist/lib/openapi/spec/update-feature-strategy-schema.d.ts +18 -2
  420. package/dist/lib/openapi/spec/update-feature-strategy-schema.d.ts.map +1 -1
  421. package/dist/lib/openapi/spec/update-feature-strategy-schema.js +17 -1
  422. package/dist/lib/openapi/spec/update-feature-strategy-schema.js.map +1 -1
  423. package/dist/lib/openapi/spec/update-user-schema.d.ts +1 -1
  424. package/dist/lib/openapi/spec/update-user-schema.d.ts.map +1 -1
  425. package/dist/lib/openapi/spec/update-user-schema.js +8 -1
  426. package/dist/lib/openapi/spec/update-user-schema.js.map +1 -1
  427. package/dist/lib/openapi/spec/upsert-segment-schema.d.ts +1 -1
  428. package/dist/lib/openapi/spec/user-access-overview-schema.d.ts +18 -0
  429. package/dist/lib/openapi/spec/user-access-overview-schema.d.ts.map +1 -1
  430. package/dist/lib/openapi/spec/user-schema.d.ts +18 -0
  431. package/dist/lib/openapi/spec/user-schema.d.ts.map +1 -1
  432. package/dist/lib/openapi/spec/user-schema.js +18 -0
  433. package/dist/lib/openapi/spec/user-schema.js.map +1 -1
  434. package/dist/lib/openapi/spec/users-groups-base-schema.d.ts +72 -0
  435. package/dist/lib/openapi/spec/users-groups-base-schema.d.ts.map +1 -1
  436. package/dist/lib/openapi/spec/users-schema.d.ts +18 -0
  437. package/dist/lib/openapi/spec/users-schema.d.ts.map +1 -1
  438. package/dist/lib/openapi/spec/users-search-schema.d.ts +18 -0
  439. package/dist/lib/openapi/spec/users-search-schema.d.ts.map +1 -1
  440. package/dist/lib/openapi/spec/validated-edge-tokens-schema.d.ts +6 -1
  441. package/dist/lib/openapi/spec/validated-edge-tokens-schema.d.ts.map +1 -1
  442. package/dist/lib/openapi/util/api-operation.d.ts +23 -5
  443. package/dist/lib/openapi/util/api-operation.d.ts.map +1 -1
  444. package/dist/lib/openapi/util/api-stability.d.ts +3 -0
  445. package/dist/lib/openapi/util/api-stability.d.ts.map +1 -0
  446. package/dist/lib/openapi/util/api-stability.js +49 -0
  447. package/dist/lib/openapi/util/api-stability.js.map +1 -0
  448. package/dist/lib/openapi/util/api-stability.test.d.ts +2 -0
  449. package/dist/lib/openapi/util/api-stability.test.d.ts.map +1 -0
  450. package/dist/lib/openapi/util/api-stability.test.js +140 -0
  451. package/dist/lib/openapi/util/api-stability.test.js.map +1 -0
  452. package/dist/lib/openapi/util/openapi-tags.d.ts +6 -6
  453. package/dist/lib/openapi/util/openapi-tags.d.ts.map +1 -1
  454. package/dist/lib/openapi/util/openapi-tags.js +4 -4
  455. package/dist/lib/openapi/util/openapi-tags.js.map +1 -1
  456. package/dist/lib/routes/admin-api/index.js +1 -1
  457. package/dist/lib/routes/admin-api/index.js.map +1 -1
  458. package/dist/lib/routes/admin-api/instance-admin.d.ts.map +1 -1
  459. package/dist/lib/routes/admin-api/instance-admin.js +1 -0
  460. package/dist/lib/routes/admin-api/instance-admin.js.map +1 -1
  461. package/dist/lib/routes/admin-api/project/variants.d.ts.map +1 -1
  462. package/dist/lib/routes/admin-api/project/variants.js +5 -1
  463. package/dist/lib/routes/admin-api/project/variants.js.map +1 -1
  464. package/dist/lib/routes/admin-api/user-admin.d.ts.map +1 -1
  465. package/dist/lib/routes/admin-api/user-admin.js +4 -4
  466. package/dist/lib/routes/admin-api/user-admin.js.map +1 -1
  467. package/dist/lib/routes/admin-api/user-splash.d.ts.map +1 -1
  468. package/dist/lib/routes/admin-api/user-splash.js +2 -1
  469. package/dist/lib/routes/admin-api/user-splash.js.map +1 -1
  470. package/dist/lib/routes/edge-api/index.d.ts +4 -3
  471. package/dist/lib/routes/edge-api/index.d.ts.map +1 -1
  472. package/dist/lib/routes/edge-api/index.js +39 -7
  473. package/dist/lib/routes/edge-api/index.js.map +1 -1
  474. package/dist/lib/schema/feature-schema.test.js +1 -1
  475. package/dist/lib/schema/feature-schema.test.js.map +1 -1
  476. package/dist/lib/server-impl.d.ts +3 -2
  477. package/dist/lib/server-impl.d.ts.map +1 -1
  478. package/dist/lib/server-impl.js +4 -1
  479. package/dist/lib/server-impl.js.map +1 -1
  480. package/dist/lib/services/access-service.test.js +1 -2
  481. package/dist/lib/services/access-service.test.js.map +1 -1
  482. package/dist/lib/services/api-token-service.d.ts.map +1 -1
  483. package/dist/lib/services/api-token-service.js +3 -1
  484. package/dist/lib/services/api-token-service.js.map +1 -1
  485. package/dist/lib/services/context-schema.d.ts.map +1 -1
  486. package/dist/lib/services/context-schema.js +1 -0
  487. package/dist/lib/services/context-schema.js.map +1 -1
  488. package/dist/lib/services/edge-service.d.ts +22 -7
  489. package/dist/lib/services/edge-service.d.ts.map +1 -1
  490. package/dist/lib/services/edge-service.js +87 -9
  491. package/dist/lib/services/edge-service.js.map +1 -1
  492. package/dist/lib/services/index.d.ts +8 -3
  493. package/dist/lib/services/index.d.ts.map +1 -1
  494. package/dist/lib/services/index.js +26 -8
  495. package/dist/lib/services/index.js.map +1 -1
  496. package/dist/lib/services/openapi-service.d.ts +8 -2
  497. package/dist/lib/services/openapi-service.d.ts.map +1 -1
  498. package/dist/lib/services/openapi-service.js +49 -7
  499. package/dist/lib/services/openapi-service.js.map +1 -1
  500. package/dist/lib/services/openapi-service.test.d.ts +2 -0
  501. package/dist/lib/services/openapi-service.test.d.ts.map +1 -0
  502. package/dist/lib/services/openapi-service.test.js +41 -0
  503. package/dist/lib/services/openapi-service.test.js.map +1 -0
  504. package/dist/lib/services/user-service.d.ts +6 -1
  505. package/dist/lib/services/user-service.d.ts.map +1 -1
  506. package/dist/lib/services/user-service.js +16 -7
  507. package/dist/lib/services/user-service.js.map +1 -1
  508. package/dist/lib/services/user-service.test.js +25 -26
  509. package/dist/lib/services/user-service.test.js.map +1 -1
  510. package/dist/lib/services/version-service.d.ts +1 -0
  511. package/dist/lib/services/version-service.d.ts.map +1 -1
  512. package/dist/lib/services/version-service.js.map +1 -1
  513. package/dist/lib/services/version-service.test.js +1 -0
  514. package/dist/lib/services/version-service.test.js.map +1 -1
  515. package/dist/lib/types/experimental.d.ts +1 -1
  516. package/dist/lib/types/experimental.d.ts.map +1 -1
  517. package/dist/lib/types/experimental.js +10 -0
  518. package/dist/lib/types/experimental.js.map +1 -1
  519. package/dist/lib/types/model.d.ts +10 -1
  520. package/dist/lib/types/model.d.ts.map +1 -1
  521. package/dist/lib/types/model.js +1 -0
  522. package/dist/lib/types/model.js.map +1 -1
  523. package/dist/lib/types/option.d.ts +5 -0
  524. package/dist/lib/types/option.d.ts.map +1 -1
  525. package/dist/lib/types/permissions.d.ts +1 -0
  526. package/dist/lib/types/permissions.d.ts.map +1 -1
  527. package/dist/lib/types/permissions.js +2 -0
  528. package/dist/lib/types/permissions.js.map +1 -1
  529. package/dist/lib/types/stores/edge-store.d.ts +14 -0
  530. package/dist/lib/types/stores/edge-store.d.ts.map +1 -0
  531. package/dist/lib/types/stores/edge-store.js +2 -0
  532. package/dist/lib/types/stores/edge-store.js.map +1 -0
  533. package/dist/lib/types/stores/user-store.d.ts +4 -0
  534. package/dist/lib/types/stores/user-store.d.ts.map +1 -1
  535. package/dist/lib/types/stores.d.ts +6 -4
  536. package/dist/lib/types/stores.d.ts.map +1 -1
  537. package/dist/lib/types/stores.js +1 -1
  538. package/dist/lib/types/stores.js.map +1 -1
  539. package/dist/lib/types/user.d.ts +13 -1
  540. package/dist/lib/types/user.d.ts.map +1 -1
  541. package/dist/lib/types/user.js +5 -1
  542. package/dist/lib/types/user.js.map +1 -1
  543. package/dist/lib/ui-config/ui-config-service.d.ts.map +1 -1
  544. package/dist/lib/ui-config/ui-config-service.js +1 -0
  545. package/dist/lib/ui-config/ui-config-service.js.map +1 -1
  546. package/dist/lib/ui-config/ui-config.test.js +5 -1
  547. package/dist/lib/ui-config/ui-config.test.js.map +1 -1
  548. package/dist/lib/util/constants.d.ts +2 -1
  549. package/dist/lib/util/constants.d.ts.map +1 -1
  550. package/dist/lib/util/constants.js +2 -0
  551. package/dist/lib/util/constants.js.map +1 -1
  552. package/dist/lib/util/validators/constraint-types.d.ts +1 -0
  553. package/dist/lib/util/validators/constraint-types.d.ts.map +1 -1
  554. package/dist/lib/util/validators/constraint-types.js +12 -0
  555. package/dist/lib/util/validators/constraint-types.js.map +1 -1
  556. package/dist/lib/util/validators/constraint-types.test.js +25 -1
  557. package/dist/lib/util/validators/constraint-types.test.js.map +1 -1
  558. package/dist/mailtemplates/getting-started/getting-started.html.mustache +7 -2
  559. package/dist/mailtemplates/getting-started/getting-started.plain.mustache +6 -1
  560. package/dist/migrations/20251210144308-add-project-column-to-context-fields.d.ts +3 -0
  561. package/dist/migrations/20251210144308-add-project-column-to-context-fields.d.ts.map +1 -0
  562. package/dist/migrations/20251210144308-add-project-column-to-context-fields.js +8 -0
  563. package/dist/migrations/20251210144308-add-project-column-to-context-fields.js.map +1 -0
  564. package/dist/migrations/20251218153722-predefined-project-role-reader.d.ts +3 -0
  565. package/dist/migrations/20251218153722-predefined-project-role-reader.d.ts.map +1 -0
  566. package/dist/migrations/20251218153722-predefined-project-role-reader.js +24 -0
  567. package/dist/migrations/20251218153722-predefined-project-role-reader.js.map +1 -0
  568. package/dist/migrations/20260106164443-users-seat-type.d.ts +3 -0
  569. package/dist/migrations/20260106164443-users-seat-type.d.ts.map +1 -0
  570. package/dist/migrations/20260106164443-users-seat-type.js +8 -0
  571. package/dist/migrations/20260106164443-users-seat-type.js.map +1 -0
  572. package/dist/migrations/20260112111353-add-project-context-permission.d.ts +3 -0
  573. package/dist/migrations/20260112111353-add-project-context-permission.d.ts.map +1 -0
  574. package/dist/migrations/20260112111353-add-project-context-permission.js +9 -0
  575. package/dist/migrations/20260112111353-add-project-context-permission.js.map +1 -0
  576. package/dist/migrations/20260115122651-project-owner-crud-project-context.d.ts +3 -0
  577. package/dist/migrations/20260115122651-project-owner-crud-project-context.d.ts.map +1 -0
  578. package/dist/migrations/20260115122651-project-owner-crud-project-context.js +14 -0
  579. package/dist/migrations/20260115122651-project-owner-crud-project-context.js.map +1 -0
  580. package/dist/migrations/20260115122720-project-owner-crud-project-segment.d.ts +3 -0
  581. package/dist/migrations/20260115122720-project-owner-crud-project-segment.d.ts.map +1 -0
  582. package/dist/migrations/20260115122720-project-owner-crud-project-segment.js +14 -0
  583. package/dist/migrations/20260115122720-project-owner-crud-project-segment.js.map +1 -0
  584. package/dist/migrations/20260119100647-add-api-key-revision-id-to-edge-observability.d.ts +3 -0
  585. package/dist/migrations/20260119100647-add-api-key-revision-id-to-edge-observability.d.ts.map +1 -0
  586. package/dist/migrations/20260119100647-add-api-key-revision-id-to-edge-observability.js +8 -0
  587. package/dist/migrations/20260119100647-add-api-key-revision-id-to-edge-observability.js.map +1 -0
  588. package/dist/migrations/20260204150900-add-edge-hmac-verification-tables.d.ts +3 -0
  589. package/dist/migrations/20260204150900-add-edge-hmac-verification-tables.d.ts.map +1 -0
  590. package/dist/migrations/20260204150900-add-edge-hmac-verification-tables.js +39 -0
  591. package/dist/migrations/20260204150900-add-edge-hmac-verification-tables.js.map +1 -0
  592. package/dist/migrations/20260213095258-users-company-role-and-email-consent.d.ts +3 -0
  593. package/dist/migrations/20260213095258-users-company-role-and-email-consent.d.ts.map +1 -0
  594. package/dist/migrations/20260213095258-users-company-role-and-email-consent.js +12 -0
  595. package/dist/migrations/20260213095258-users-company-role-and-email-consent.js.map +1 -0
  596. package/dist/server-dev.js +7 -0
  597. package/dist/server-dev.js.map +1 -1
  598. package/dist/test/arbitraries.test.d.ts.map +1 -1
  599. package/dist/test/arbitraries.test.js +3 -9
  600. package/dist/test/arbitraries.test.js.map +1 -1
  601. package/dist/test/e2e/api/admin/context-api-include-query-params.e2e.test.d.ts +2 -0
  602. package/dist/test/e2e/api/admin/context-api-include-query-params.e2e.test.d.ts.map +1 -0
  603. package/dist/test/e2e/api/admin/context-api-include-query-params.e2e.test.js +81 -0
  604. package/dist/test/e2e/api/admin/context-api-include-query-params.e2e.test.js.map +1 -0
  605. package/dist/test/e2e/api/admin/context.e2e.test.js +1 -1
  606. package/dist/test/e2e/api/admin/context.e2e.test.js.map +1 -1
  607. package/dist/test/e2e/api/admin/instance-admin.e2e.test.js +1 -1
  608. package/dist/test/e2e/api/admin/playground.e2e.test.js +11 -10
  609. package/dist/test/e2e/api/admin/playground.e2e.test.js.map +1 -1
  610. package/dist/test/e2e/api/admin/project/variants.e2e.test.js +19 -0
  611. package/dist/test/e2e/api/admin/project/variants.e2e.test.js.map +1 -1
  612. package/dist/test/e2e/api/admin/project-context.e2e.test.d.ts +2 -0
  613. package/dist/test/e2e/api/admin/project-context.e2e.test.d.ts.map +1 -0
  614. package/dist/test/e2e/api/admin/project-context.e2e.test.js +102 -0
  615. package/dist/test/e2e/api/admin/project-context.e2e.test.js.map +1 -0
  616. package/dist/test/e2e/api/auth/reset-password-controller.e2e.test.js +3 -0
  617. package/dist/test/e2e/api/auth/reset-password-controller.e2e.test.js.map +1 -1
  618. package/dist/test/e2e/api/auth/simple-password-provider.e2e.test.js +3 -0
  619. package/dist/test/e2e/api/auth/simple-password-provider.e2e.test.js.map +1 -1
  620. package/dist/test/e2e/api/client/feature.e2e.test.js +15 -2
  621. package/dist/test/e2e/api/client/feature.e2e.test.js.map +1 -1
  622. package/dist/test/e2e/api/client/feature.optimal304.e2e.test.js +254 -113
  623. package/dist/test/e2e/api/client/feature.optimal304.e2e.test.js.map +1 -1
  624. package/dist/test/e2e/api/edge/create-token-request.test.d.ts +2 -0
  625. package/dist/test/e2e/api/edge/create-token-request.test.d.ts.map +1 -0
  626. package/dist/test/e2e/api/edge/create-token-request.test.js +215 -0
  627. package/dist/test/e2e/api/edge/create-token-request.test.js.map +1 -0
  628. package/dist/test/e2e/services/edge-service.e2e.test.js +106 -3
  629. package/dist/test/e2e/services/edge-service.e2e.test.js.map +1 -1
  630. package/dist/test/e2e/services/reset-token-service.e2e.test.js +3 -0
  631. package/dist/test/e2e/services/reset-token-service.e2e.test.js.map +1 -1
  632. package/dist/test/e2e/services/user-service.e2e.test.js +3 -0
  633. package/dist/test/e2e/services/user-service.e2e.test.js.map +1 -1
  634. package/dist/test/e2e/stores/event-store.e2e.test.js +17 -29
  635. package/dist/test/e2e/stores/event-store.e2e.test.js.map +1 -1
  636. package/dist/test/e2e/users/inactive/inactive-users-service.test.js +3 -1
  637. package/dist/test/e2e/users/inactive/inactive-users-service.test.js.map +1 -1
  638. package/dist/test/fixtures/fake-release-plan-milestone-strategy-store.d.ts +17 -0
  639. package/dist/test/fixtures/fake-release-plan-milestone-strategy-store.d.ts.map +1 -0
  640. package/dist/test/fixtures/fake-release-plan-milestone-strategy-store.js +44 -0
  641. package/dist/test/fixtures/fake-release-plan-milestone-strategy-store.js.map +1 -0
  642. package/dist/test/fixtures/store.d.ts.map +1 -1
  643. package/dist/test/fixtures/store.js +5 -2
  644. package/dist/test/fixtures/store.js.map +1 -1
  645. package/frontend/build/index.html +2 -2
  646. package/frontend/build/static/AdvancedPlayground-DRpxJMnK.js +3 -0
  647. package/frontend/build/static/BackendConnections-_n7OFNmD.js +1 -0
  648. package/frontend/build/static/{CreateProject-ChlGOrPC.js → CreateProject-068uYB82.js} +1 -1
  649. package/frontend/build/static/EnterpriseEdge-D8BFcFOL.js +3 -0
  650. package/frontend/build/static/{FeatureMetricsChart-Bt6HiI-s.js → FeatureMetricsChart-CmPDv0Qg.js} +2 -2
  651. package/frontend/build/static/FeatureStaleDialog-p_WEko7Q.js +7 -0
  652. package/frontend/build/static/FeatureViewLazyExport-CsvADBC_.js +10 -0
  653. package/frontend/build/static/FlagMetricsChart-D0cnIXiN.js +2 -0
  654. package/frontend/build/static/FrontendNetworkTrafficUsage-DF0QQUFI.js +1 -0
  655. package/frontend/build/static/GridLayoutWrapper-CvaFKuMM.js +3 -0
  656. package/frontend/build/static/ImpactMetricsPage-BQnbfPhs.js +1 -0
  657. package/frontend/build/static/LazyAdminExport-CaPIJWoT.js +38 -0
  658. package/frontend/build/static/{LazyProjectExport-DPAYnCIy.js → LazyProjectExport-DxVvRHV2.js} +19 -19
  659. package/frontend/build/static/{LifecycleChartComponent-DubZNJlv.js → LifecycleChartComponent-7r5tp81g.js} +3 -3
  660. package/frontend/build/static/{LineChartComponent-CY-8M35z.js → LineChartComponent-p_JFdSdE.js} +1 -1
  661. package/frontend/build/static/{MarkCompletedDialogue-BwS_OP77.js → MarkCompletedDialogue-BHRKKIec.js} +1 -1
  662. package/frontend/build/static/{NetworkOverview-p_eqqiwO.js → NetworkOverview-Dr4-ROCD.js} +1 -1
  663. package/frontend/build/static/{NetworkPrometheusAPIWarning-BhqdG7Dp.js → NetworkPrometheusAPIWarning-COfHXZmz.js} +1 -1
  664. package/frontend/build/static/{NetworkTraffic-NxX5X_w8.js → NetworkTraffic-Dm-2mi3M.js} +1 -1
  665. package/frontend/build/static/NetworkTrafficUsage-fGr4QA8t.js +1 -0
  666. package/frontend/build/static/{PercentageDonut-BoaVP9ed.js → PercentageDonut-DystLTgb.js} +1 -1
  667. package/frontend/build/static/{ReactJSONEditor-DfZdSwoC.js → ReactJSONEditor-CdN66QkS.js} +1 -1
  668. package/frontend/build/static/RoleCell-BjcvUPQZ.js +1 -0
  669. package/frontend/build/static/aggregateFeatureMetrics-60FrVlfS.js +1 -0
  670. package/frontend/build/static/docker-HG7DQx-Z.svg +5 -0
  671. package/frontend/build/static/{formatTickValue-Csg87IVi.js → formatTickValue-CODpmZvr.js} +2 -2
  672. package/frontend/build/static/impact-metrics-icon-a6_57VN1.svg +9 -0
  673. package/frontend/build/static/index-B_EIW-7Y.js +568 -0
  674. package/frontend/build/static/lenovo-DIzNtfrT.svg +3 -0
  675. package/frontend/build/static/lloyds-DxlC9g3t.svg +10 -0
  676. package/frontend/build/static/networkTrafficUsageHighlightPlugin-COgb9_ZU.js +1 -0
  677. package/frontend/build/static/samsung-DOytOsnV.svg +10 -0
  678. package/frontend/build/static/unleash_logo_dark_no_label-DHgOj_XN.svg +6 -0
  679. package/frontend/build/static/unleash_logo_white_no_label-BazgWvcx.svg +6 -0
  680. package/frontend/build/static/{useApiTokens-Btk4Hd2u.js → useApiTokens-CdZATTgS.js} +1 -1
  681. package/frontend/build/static/visa-CkneNM2O.svg +10 -0
  682. package/frontend/package.json +9 -7
  683. package/package.json +20 -17
  684. package/dist/lib/db/pat-store.d.ts.map +0 -1
  685. package/dist/lib/db/pat-store.js.map +0 -1
  686. package/dist/lib/features/instance-stats/getReadOnlyUsers.e2e.test.d.ts +0 -2
  687. package/dist/lib/features/instance-stats/getReadOnlyUsers.e2e.test.d.ts.map +0 -1
  688. package/dist/lib/features/instance-stats/getReadOnlyUsers.e2e.test.js +0 -36
  689. package/dist/lib/features/instance-stats/getReadOnlyUsers.e2e.test.js.map +0 -1
  690. package/dist/lib/routes/admin-api/constraints.d.ts.map +0 -1
  691. package/dist/lib/routes/admin-api/constraints.js.map +0 -1
  692. package/dist/lib/services/pat-service.d.ts.map +0 -1
  693. package/dist/lib/services/pat-service.js.map +0 -1
  694. package/dist/lib/types/stores/pat-store.d.ts.map +0 -1
  695. package/dist/lib/types/stores/pat-store.js +0 -2
  696. package/dist/lib/types/stores/pat-store.js.map +0 -1
  697. package/dist/test/e2e/api/admin/constraints.e2e.test.d.ts.map +0 -1
  698. package/dist/test/e2e/api/admin/constraints.e2e.test.js.map +0 -1
  699. package/dist/test/fixtures/fake-pat-store.d.ts +0 -16
  700. package/dist/test/fixtures/fake-pat-store.d.ts.map +0 -1
  701. package/dist/test/fixtures/fake-pat-store.js +0 -35
  702. package/dist/test/fixtures/fake-pat-store.js.map +0 -1
  703. package/frontend/build/static/AdvancedPlayground-CmMV64it.js +0 -3
  704. package/frontend/build/static/BackendConnections-MqHimHCS.js +0 -1
  705. package/frontend/build/static/EnterpriseEdge-cJFso1xz.js +0 -1
  706. package/frontend/build/static/FeatureStaleDialog-DZEtcHDT.js +0 -7
  707. package/frontend/build/static/FeatureViewLazyExport-BPB1jWYz.js +0 -10
  708. package/frontend/build/static/FlagMetricsChart-CvsBPrQG.js +0 -2
  709. package/frontend/build/static/FrontendNetworkTrafficUsage-D8l5Nldl.js +0 -1
  710. package/frontend/build/static/GridLayoutWrapper-2osRRgh4.js +0 -3
  711. package/frontend/build/static/ImpactMetricsPage-Chv_7_jx.js +0 -1
  712. package/frontend/build/static/LazyAdminExport-BOTczpO1.js +0 -38
  713. package/frontend/build/static/NetworkTrafficUsage-B-4F8Mzq.js +0 -1
  714. package/frontend/build/static/RoleCell-Da0TjMne.js +0 -1
  715. package/frontend/build/static/aggregateFeatureMetrics-yZy5qwho.js +0 -1
  716. package/frontend/build/static/index-BAMIkcom.js +0 -542
  717. package/frontend/build/static/networkTrafficUsageHighlightPlugin-Dje5Vuvo.js +0 -1
  718. /package/dist/{test/e2e/api/admin → lib/features/constraints}/constraints.e2e.test.d.ts +0 -0
@@ -1,8 +1,16 @@
1
1
  import openapi from '@wesleytodd/openapi';
2
2
  import { createOpenApiSchema, removeJsonSchemaProps, } from '../openapi/index.js';
3
3
  import { validateSchema } from '../openapi/validate.js';
4
+ import { calculateStability } from '../openapi/util/api-stability.js';
5
+ const getStabilityLevel = (operation) => {
6
+ if (!operation || typeof operation !== 'object') {
7
+ return undefined;
8
+ }
9
+ return operation['x-stability-level'];
10
+ };
4
11
  export class OpenApiService {
5
12
  constructor(config) {
13
+ this.isDevelopment = process.env.NODE_ENV === 'development';
6
14
  this.config = config;
7
15
  this.flagResolver = config.flagResolver;
8
16
  this.logger = config.getLogger('openapi-service.ts');
@@ -13,12 +21,17 @@ export class OpenApiService {
13
21
  });
14
22
  }
15
23
  validPath(op) {
16
- const { beta, enterpriseOnly, ...rest } = op;
24
+ // extract enterpriseOnly and release to avoid leaking into the OpenAPI spec
25
+ const { enterpriseOnly, release, ...openapiSpec } = op;
17
26
  const { baseUriPath = '' } = this.config.server ?? {};
18
27
  const openapiStaticAssets = `${baseUriPath}/openapi-static`;
19
- const betaBadge = beta
20
- ? `![Beta](${openapiStaticAssets}/Beta.svg) This is a beta endpoint and it may change or be removed in the future.
21
-
28
+ const currentVersion = this.api.document.info.version;
29
+ const stability = calculateStability(release, currentVersion);
30
+ const summaryWithStability = stability !== 'stable' && openapiSpec.summary
31
+ ? `[${stability.toUpperCase()}] ${openapiSpec.summary}`
32
+ : openapiSpec.summary;
33
+ const stabilityBadge = stability !== 'stable'
34
+ ? `**[${stability.toUpperCase()}]** This API is in ${stability} state, which means it may change or be removed in the future.
22
35
  `
23
36
  : '';
24
37
  const enterpriseBadge = enterpriseOnly
@@ -26,7 +39,7 @@ export class OpenApiService {
26
39
 
27
40
  `
28
41
  : '';
29
- const failDeprecated = (op.deprecated ?? false) && process.env.NODE_ENV === 'development';
42
+ const failDeprecated = (op.deprecated ?? false) && this.isDevelopment;
30
43
  if (failDeprecated) {
31
44
  return (req, res, _next) => {
32
45
  this.logger.warn(`Deprecated endpoint: ${op.operationId} at ${req.path}`);
@@ -36,14 +49,43 @@ export class OpenApiService {
36
49
  };
37
50
  }
38
51
  return this.api.validPath({
39
- ...rest,
40
- description: `${enterpriseBadge}${betaBadge}${op.description}`.replaceAll(/\n\s*/g, '\n\n'),
52
+ ...openapiSpec,
53
+ summary: summaryWithStability,
54
+ 'x-stability-level': stability,
55
+ description: `${enterpriseBadge}${stabilityBadge}${op.description}`.replaceAll(/\n\s*/g, '\n\n'),
41
56
  });
42
57
  }
43
58
  useDocs(app) {
59
+ // Serve a filtered OpenAPI document that hides alpha endpoints from Swagger UI.
60
+ app.get(`${this.docsPath()}.json`, (req, res, next) => {
61
+ try {
62
+ const doc = this.api.generateDocument(this.api.document, req.app._router || req.app.router, this.config.server.baseUriPath);
63
+ res.json(this.isDevelopment ? doc : this.removeAlphaOperations(doc));
64
+ }
65
+ catch (error) {
66
+ next(error);
67
+ }
68
+ });
44
69
  app.use(this.api);
45
70
  app.use(this.docsPath(), this.api.swaggerui());
46
71
  }
72
+ // Remove operations explicitly marked as alpha to keep them out of the rendered docs.
73
+ removeAlphaOperations(doc) {
74
+ if (!doc?.paths) {
75
+ return doc;
76
+ }
77
+ const filteredPaths = {};
78
+ for (const [path, methods] of Object.entries(doc.paths)) {
79
+ if (!methods) {
80
+ continue;
81
+ }
82
+ const entries = Object.entries(methods).filter(([, operation]) => getStabilityLevel(operation) !== 'alpha');
83
+ if (entries.length > 0) {
84
+ filteredPaths[path] = Object.fromEntries(entries);
85
+ }
86
+ }
87
+ return { ...doc, paths: filteredPaths };
88
+ }
47
89
  docsPath() {
48
90
  const { baseUriPath = '' } = this.config.server ?? {};
49
91
  return `${baseUriPath}/docs/openapi`;
@@ -1 +1 @@
1
- {"version":3,"file":"openapi-service.js","sourceRoot":"","sources":["../../../src/lib/services/openapi-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openapi-service.js","sourceRoot":"","sources":["../../../src/lib/services/openapi-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=openapi-service.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi-service.test.d.ts","sourceRoot":"","sources":["../../../src/lib/services/openapi-service.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,41 @@
1
+ import { OpenApiService } from './openapi-service.js';
2
+ import { createTestConfig } from '../../test/config/test-config.js';
3
+ const okResponse = { '200': { description: 'ok' } };
4
+ const buildDocument = () => ({
5
+ openapi: '3.0.0',
6
+ info: { title: 'Test API', version: '7.4.0' },
7
+ paths: {
8
+ '/alpha-only': {
9
+ get: {
10
+ responses: okResponse,
11
+ 'x-stability-level': 'alpha',
12
+ },
13
+ },
14
+ '/mixed': {
15
+ get: {
16
+ responses: okResponse,
17
+ 'x-stability-level': 'alpha',
18
+ },
19
+ post: {
20
+ responses: okResponse,
21
+ 'x-stability-level': 'beta',
22
+ },
23
+ },
24
+ '/stable': {
25
+ put: {
26
+ responses: okResponse,
27
+ },
28
+ },
29
+ },
30
+ });
31
+ test('removeAlphaOperations removes alpha operations and empty paths', () => {
32
+ const openApiService = new OpenApiService(createTestConfig());
33
+ const removeAlphaOperations = openApiService.removeAlphaOperations.bind(openApiService);
34
+ const doc = buildDocument();
35
+ const filtered = removeAlphaOperations(doc);
36
+ expect(filtered.paths?.['/alpha-only']).toBeUndefined();
37
+ expect(filtered.paths?.['/mixed']?.get).toBeUndefined();
38
+ expect(filtered.paths?.['/mixed']?.post).toBeDefined();
39
+ expect(filtered.paths?.['/stable']).toBeDefined();
40
+ });
41
+ //# sourceMappingURL=openapi-service.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi-service.test.js","sourceRoot":"","sources":["../../../src/lib/services/openapi-service.test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,MAAM,UAAU,GAAG,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC;AAKpD,MAAM,aAAa,GAAG,GAAuB,EAAE,CAAC,CAAC;IAC7C,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE;IAC7C,KAAK,EAAE;QACH,aAAa,EAAE;YACX,GAAG,EAAE;gBACD,SAAS,EAAE,UAAU;gBACrB,mBAAmB,EAAE,OAAO;aACL;SAC9B;QACD,QAAQ,EAAE;YACN,GAAG,EAAE;gBACD,SAAS,EAAE,UAAU;gBACrB,mBAAmB,EAAE,OAAO;aACL;YAC3B,IAAI,EAAE;gBACF,SAAS,EAAE,UAAU;gBACrB,mBAAmB,EAAE,MAAM;aACJ;SAC9B;QACD,SAAS,EAAE;YACP,GAAG,EAAE;gBACD,SAAS,EAAE,UAAU;aACxB;SACJ;KACJ;CACJ,CAAC,CAAC;AAEH,IAAI,CAAC,gEAAgE,EAAE,GAAG,EAAE;IACxE,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC9D,MAAM,qBAAqB,GACvB,cAKH,CAAC,qBAAqB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAE7C,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;IAC5B,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;IAE5C,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACxD,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;IACxD,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;AACtD,CAAC,CAAC,CAAC"}
@@ -10,6 +10,7 @@ import { RoleName } from '../types/model.js';
10
10
  import type SettingService from './setting-service.js';
11
11
  import type { TokenUserSchema } from '../openapi/index.js';
12
12
  import type EventService from '../features/events/event-service.js';
13
+ import type { ResourceLimitsService } from './index.js';
13
14
  export interface ICreateUserWithRole {
14
15
  name?: string;
15
16
  email?: string;
@@ -39,6 +40,7 @@ export declare class UserService {
39
40
  private sessionService;
40
41
  private emailService;
41
42
  private settingService;
43
+ private resourceLimitsService;
42
44
  private flagResolver;
43
45
  private passwordResetTimeouts;
44
46
  private baseUriPath;
@@ -51,6 +53,7 @@ export declare class UserService {
51
53
  eventService: EventService;
52
54
  sessionService: SessionService;
53
55
  settingService: SettingService;
56
+ resourceLimitsService: ResourceLimitsService;
54
57
  });
55
58
  validatePassword(password: string): boolean;
56
59
  initAdminUser({ createAdminUser, initialAdminUser, }: Pick<IAuthOption, 'createAdminUser' | 'initialAdminUser'>): Promise<void>;
@@ -81,7 +84,9 @@ export declare class UserService {
81
84
  loginUserWithoutPassword(email: string, autoCreateUser?: boolean): Promise<IUser>;
82
85
  loginUserSSO({ email, name, rootRole, autoCreate, }: ILoginUserRequest): Promise<IUser>;
83
86
  loginDemoAuthDefaultAdmin(): Promise<IUser>;
84
- changePassword(userId: number, password: string): Promise<void>;
87
+ changePassword(userId: number, password: string, { logoutUser }?: {
88
+ logoutUser?: boolean;
89
+ }): Promise<void>;
85
90
  changePasswordWithPreviouslyUsedPasswordCheck(userId: number, password: string): Promise<void>;
86
91
  changePasswordWithVerification(userId: number, newPassword: string, oldPassword: string): Promise<void>;
87
92
  getUserForToken(token: string): Promise<TokenUserSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"user-service.d.ts","sourceRoot":"","sources":["../../../src/lib/services/user-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user-service.d.ts","sourceRoot":"","sources":["../../../src/lib/services/user-service.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,9 @@ import { SYSTEM_USER, SYSTEM_USER_AUDIT, } from '../types/index.js';
17
17
  import { PasswordPreviouslyUsedError } from '../error/password-previously-used.js';
18
18
  import { RateLimitError } from '../error/rate-limit-error.js';
19
19
  import { USER_LOGIN } from '../metric-events.js';
20
+ owasp.config({
21
+ allowPassphrases: false,
22
+ });
20
23
  const saltRounds = 10;
21
24
  const disallowNPreviousPasswords = 5;
22
25
  export class UserService {
@@ -31,6 +34,7 @@ export class UserService {
31
34
  this.emailService = services.emailService;
32
35
  this.sessionService = services.sessionService;
33
36
  this.settingService = services.settingService;
37
+ this.resourceLimitsService = services.resourceLimitsService;
34
38
  this.flagResolver = flagResolver;
35
39
  this.maxParallelSessions = session.maxParallelSessions;
36
40
  this.baseUriPath = server.baseUriPath || '';
@@ -75,23 +79,26 @@ export class UserService {
75
79
  }
76
80
  }
77
81
  async getAll() {
78
- const users = await this.store.getAll();
82
+ const baseUsers = await this.store.getAll();
79
83
  const defaultRole = await this.accessService.getPredefinedRole(RoleName.VIEWER);
80
84
  const userRoles = await this.accessService.getRootRoleForAllUsers();
81
- const usersWithRootRole = users.map((u) => {
85
+ let users = baseUsers.map((u) => {
82
86
  const rootRole = userRoles.find((r) => r.userId === u.id);
83
87
  const roleId = rootRole ? rootRole.roleId : defaultRole.id;
84
88
  return { ...u, rootRole: roleId };
85
89
  });
86
90
  if (this.flagResolver.isEnabled('showUserDeviceCount')) {
87
91
  const sessionCounts = await this.sessionService.getSessionsCount();
88
- const usersWithSessionCounts = usersWithRootRole.map((u) => ({
92
+ users = users.map((u) => ({
89
93
  ...u,
90
94
  activeSessions: sessionCounts[u.id] || 0,
91
95
  }));
92
- return usersWithSessionCounts;
93
96
  }
94
- return usersWithRootRole;
97
+ const { readOnlyUsers } = await this.resourceLimitsService.getResourceLimits();
98
+ if (!this.flagResolver.isEnabled('readOnlyUsersUI') || !readOnlyUsers) {
99
+ users = users.map(({ seatType, ...user }) => user);
100
+ }
101
+ return users;
95
102
  }
96
103
  async getUser(id) {
97
104
  const user = await this.store.get(id);
@@ -311,12 +318,14 @@ export class UserService {
311
318
  this.eventBus.emit(USER_LOGIN, { loginOrder });
312
319
  return user;
313
320
  }
314
- async changePassword(userId, password) {
321
+ async changePassword(userId, password, { logoutUser } = { logoutUser: true }) {
315
322
  this.validatePassword(password);
316
323
  const passwordHash = await bcrypt.hash(password, saltRounds);
317
324
  await this.store.setPasswordHash(userId, passwordHash, disallowNPreviousPasswords);
318
- await this.sessionService.deleteSessionsForUser(userId);
319
325
  await this.resetTokenService.expireExistingTokensForUser(userId);
326
+ if (logoutUser) {
327
+ await this.sessionService.deleteSessionsForUser(userId);
328
+ }
320
329
  }
321
330
  async changePasswordWithPreviouslyUsedPasswordCheck(userId, password) {
322
331
  const previouslyUsed = await this.store.getPasswordsPreviouslyUsed(userId);
@@ -1 +1 @@
1
- {"version":3,"file":"user-service.js","sourceRoot":"","sources":["../../../src/lib/services/user-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user-service.js","sourceRoot":"","sources":["../../../src/lib/services/user-service.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,KAAK,MAAM,8BAA8B,CAAC;AACjD,OAAO,GAAG,MAAM,KAAK,CAAC;AAItB,OAAO,IAIN,MAAM,kBAAkB,CAAC;AAC1B,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAG1C,OAAO,aAAa,MAAM,4BAA4B,CAAC;AACvD,OAAO,oBAAoB,MAAM,oCAAoC,CAAC;AAStE,OAAO,sBAAsB,MAAM,gCAAgC,CAAC;AACpE,OAAO,EACH,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,GACnB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAEH,qBAAqB,GACxB,MAAM,2CAA2C,CAAC;AACnD,OAAO,aAAa,MAAM,4BAA4B,CAAC;AACvD,OAAO,YAAY,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EAEH,WAAW,EACX,iBAAiB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD,KAAK,CAAC,MAAM,CAAC;IACT,gBAAgB,EAAE,KAAK;CAC1B,CAAC,CAAC;AAwBH,MAAM,UAAU,GAAG,EAAE,CAAC;AACtB,MAAM,0BAA0B,GAAG,CAAC,CAAC;AAErC,MAAM,OAAO,WAAW;IA+BpB,YACI,MAAyC,EACzC,EACI,MAAM,EACN,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,OAAO,GAIV,EACD,QAQC;QA5BG,0BAAqB,GAAsC,EAAE,CAAC;QA8BlE,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,yBAAyB,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC;QAC1C,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;QAC5C,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC,iBAAiB,CAAC;QACpD,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC;QAC1C,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC;QAC9C,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC;QAC9C,IAAI,CAAC,qBAAqB,GAAG,QAAQ,CAAC,qBAAqB,CAAC;QAC5D,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;QACvD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;QAC5C,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IACxC,CAAC;IAED,gBAAgB,CAAC,QAAgB;QAC7B,IAAI,QAAQ,EAAE,CAAC;YACX,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM,IAAI,oBAAoB,CAAC,MAAM,CAAC,CAAC;YAC3C,CAAC;;gBAAM,OAAO,IAAI,CAAC;QACvB,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,sBAAsB,EAAE,CAAC;QACvC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,EAChB,eAAe,EACf,gBAAgB,GAInB;QACG,IAAI,CAAC,eAAe;YAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAE/C,OAAO,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,qBAAqB,CACvB,iBAAqC;QAErC,MAAM,QAAQ,GAAG,iBAAiB,EAAE,QAAQ,IAAI,OAAO,CAAC;QACxD,MAAM,QAAQ,GAAG,iBAAiB,EAAE,QAAQ,IAAI,aAAa,CAAC;QAE9D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAE3C,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;YAClB,4BAA4B;YAC5B,IAAI,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,+CAA+C,QAAQ,mBAAmB,QAAQ,GAAG,CACxF,CAAC;gBACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;oBACjC,QAAQ;iBACX,CAAC,CAAC;gBACH,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;gBAC7D,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAC5B,IAAI,CAAC,EAAE,EACP,YAAY,EACZ,0BAA0B,CAC7B,CAAC;gBACF,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CACpC,IAAI,CAAC,EAAE,EACP,QAAQ,CAAC,KAAK,CACjB,CAAC;YACN,CAAC;YAAC,OAAO,EAAE,EAAE,CAAC;gBACV,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,kCAAkC,QAAQ,GAAG,CAChD,CAAC;YACN,CAAC;QACL,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM;QACR,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAC1D,QAAQ,CAAC,MAAM,CAClB,CAAC;QACF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,sBAAsB,EAAE,CAAC;QACpE,IAAI,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC5B,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3D,OAAO,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,qBAAqB,CAAC,EAAE,CAAC;YACrD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,CAAC;YACnE,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACtB,GAAG,CAAC;gBACJ,cAAc,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC;aAC3C,CAAC,CAAC,CAAC;QACR,CAAC;QAED,MAAM,EAAE,aAAa,EAAE,GACnB,MAAM,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,EAAE,CAAC;QACzD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACpE,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU;QACpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACrB,MAAM,IAAI,aAAa,CAAC,+BAA+B,EAAE,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACjE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAa;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5C,CAAC;IAEO,aAAa,CAAC,KAAc;QAChC,IAAI,KAAK,EAAE,CAAC;YACR,GAAG,CAAC,MAAM,CACN,KAAK,EACL,GAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC;gBACf,YAAY,EAAE,IAAI;gBAClB,iBAAiB,EAAE,CAAC;aACvB,CAAC,EACF,OAAO,CACV,CAAC;QACN,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CACZ,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAuB,EAClE,YAAwB,iBAAiB;QAEzC,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM,IAAI,YAAY,CAAC,oCAAoC,CAAC,CAAC;QACjE,CAAC;QAED,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;QAEvC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAE1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7D,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,IAAI,YAAY,CAAC,qBAAqB,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YACjC,QAAQ;YACR,KAAK;YACL,IAAI;SACP,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAE5D,IAAI,QAAQ,EAAE,CAAC;YACX,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC7D,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAC5B,IAAI,CAAC,EAAE,EACP,YAAY,EACZ,0BAA0B,CAC7B,CAAC;QACN,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEhD,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,CAC9B,IAAI,gBAAgB,CAAC;YACjB,SAAS;YACT,WAAW;SACd,CAAC,CACL,CAAC;QAEF,OAAO,WAAW,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,iBAAiB,CACnB,EAAE,EAAE,EAAE,MAAM,EAAiC,EAC7C,YAAwB,iBAAiB;QAEzC,MAAM,oBAAoB,GACtB,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CACpC,qBAAqB,EACrB,EAAE,QAAQ,EAAE,KAAK,EAAE,CACtB,CAAC;QAEN,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACjC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC;YACjC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAC3D,MAAM,EACN,SAAS,CAAC,QAAQ,CACrB,CAAC;YACF,UAAU,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;QACtC,CAAC;QACD,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAClB,IAAuB,EACvB,UAAkB;QAElB,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;QAEvD,IAAI,eAAe,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAChC,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAC1C,IAAI,CAAC,IAAI,IAAI,EAAE,EACf,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,UAAU,EACf,UAAU,CACb,CAAC;gBACF,SAAS,GAAG,IAAI,CAAC;YACrB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,mDAAmD,EACnD,CAAC,CACJ,CAAC;YACN,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,uEAAuE,CAC1E,CAAC;QACN,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,UAAU,CACZ,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAe,EAC1C,SAAqB;QAErB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEvC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAE1B,IAAI,QAAQ,EAAE,CAAC;YACX,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,OAAO,GAAmB;YAC5B,IAAI,EAAE,IAAI,IAAI,OAAO,CAAC,IAAI;YAC1B,KAAK,EAAE,KAAK,IAAI,OAAO,CAAC,KAAK;SAChC,CAAC;QAEF,sEAAsE;QACtE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;YAC/C,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC;YACtC,CAAC,CAAC,OAAO,CAAC;QAEd,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAE/C,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,CAC9B,IAAI,gBAAgB,CAAC;YACjB,SAAS;YACT,OAAO,EAAE,OAAO;YAChB,QAAQ,EAAE,UAAU;SACvB,CAAC,CACL,CAAC;QAEF,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,SAAqB;QAClD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACrD,MAAM,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAExD,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEhC,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,CAC9B,IAAI,gBAAgB,CAAC;YACjB,WAAW,EAAE,IAAI;YACjB,SAAS;SACZ,CAAC,CACL,CAAC;IACN,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,SAAqB;QACvC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;QACjD,oFAAoF;QACpF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CACzD,QAAQ,CAAC,MAAM,CAClB,CAAC;QACF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnB,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACjC,OAAO,IAAI,gBAAgB,CAAC;oBACxB,WAAW,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,EAAE;oBACjD,SAAS;iBACZ,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC;gBAChC,GAAG,SAAS;gBACZ,IAAI,gBAAgB,CAAC;oBACjB,IAAI,EAAE,IAAI;oBACV,SAAS;iBACZ,CAAC;aACL,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CACX,eAAuB,EACvB,QAAgB,EAChB,MAA2C;QAE3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAC1C,qBAAqB,CACxB,CAAC;QAEF,IAAI,QAAQ,EAAE,QAAQ,EAAE,CAAC;YACrB,MAAM,IAAI,aAAa,CACnB,sDAAsD,CACzD,CAAC;QACN,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC;YACpC,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE;YAC5B,CAAC,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;QAEpC,IAAI,IAAuB,EAAE,YAAgC,CAAC;QAC9D,IAAI,CAAC;YACD,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC5C,YAAY,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC,CAAA,CAAC;QACnB,IAAI,IAAI,IAAI,YAAY,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAC3D,IAAI,KAAK,EAAE,CAAC;gBACR,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBAE5D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,kBAAkB,CACzD,IAAI,CAAC,EAAE,CACV,CAAC;gBACF,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC;oBACjC,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,6BAA6B,IAAI,CAAC,EAAE,iBAAiB,MAAM,CAAC,SAAS,SAAS,MAAM,CAAC,EAAE,GAAG,CAC7F,CAAC;gBACN,CAAC;gBAED,qDAAqD;gBACrD,MAAM,oBAAoB,GACtB,MAAM,IAAI,CAAC,cAAc,CAAC,0BAA0B,CAChD,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,GAAG,CAAC,EAAE,CAAC,CAAC,CAC5C,CAAC;gBACN,IAAI,CAAC,eAAe,GAAG,oBAAoB,CAAC;gBAC5C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC;gBAE/C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;gBAC/C,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QACD,MAAM,IAAI,gBAAgB,CACtB,gHAAgH,IAAI,CAAC,WAAW,uEAAuE,CAC1M,CAAC;IACN,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,wBAAwB,CAC1B,KAAa,EACb,iBAA0B,KAAK;QAE/B,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,EACf,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,UAAU,GAAG,KAAK,GACF;QAChB,IAAI,IAAW,CAAC;QAEhB,IAAI,CAAC;YACD,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9C,qCAAqC;YACrC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC7C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAC3D,IAAI,CAAC,EAAE,CACV,CAAC;gBACF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE;oBACjD,IAAI;oBACJ,KAAK;iBACR,CAAC,CAAC;gBAEH,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,CAC9B,IAAI,gBAAgB,CAAC;oBACjB,SAAS,EAAE,iBAAiB;oBAC5B,OAAO,EAAE;wBACL,GAAG,IAAI;wBACP,QAAQ,EAAE,WAAW,CAAC,EAAE;qBAC3B;oBACD,QAAQ,EAAE;wBACN,GAAG,WAAW;wBACd,QAAQ,EAAE,WAAW,CAAC,EAAE;qBAC3B;iBACJ,CAAC,CACL,CAAC;gBACF,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,WAAW,EAAE,CAAC;YACvC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,0DAA0D;YAC1D,IAAI,UAAU,EAAE,CAAC;gBACb,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CACxB;oBACI,KAAK;oBACL,IAAI;oBACJ,QAAQ,EAAE,QAAQ,IAAI,QAAQ,CAAC,MAAM;iBACxC,EACD,iBAAiB,CACpB,CAAC;YACN,CAAC;iBAAM,CAAC;gBACJ,MAAM,CAAC,CAAC;YACZ,CAAC;QACL,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,yBAAyB;QAC3B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QACpD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,cAAc,CAChB,MAAc,EACd,QAAgB,EAChB,EAAE,UAAU,KAA+B,EAAE,UAAU,EAAE,IAAI,EAAE;QAE/D,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAChC,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAE7D,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAC5B,MAAM,EACN,YAAY,EACZ,0BAA0B,CAC7B,CAAC;QACF,MAAM,IAAI,CAAC,iBAAiB,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC;QAEjE,IAAI,UAAU,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAC5D,CAAC;IACL,CAAC;IAED,KAAK,CAAC,6CAA6C,CAC/C,MAAc,EACd,QAAgB;QAEhB,MAAM,cAAc,GAChB,MAAM,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;QACxD,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,EAAE,CACtD,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,cAAc,CAAC,CAC/C,CAAC;QACF,IAAI,UAAU,EAAE,CAAC;YACb,MAAM,IAAI,2BAA2B,EAAE,CAAC;QAC5C,CAAC;QAED,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,8BAA8B,CAChC,MAAc,EACd,WAAmB,EACnB,WAAmB;QAEnB,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACrE,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QACrE,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,MAAM,IAAI,gBAAgB,CACtB,wFAAwF,IAAI,CAAC,WAAW,uEAAuE,CAClL,CAAC;QACN,CAAC;QAED,MAAM,IAAI,CAAC,6CAA6C,CACpD,MAAM,EACN,WAAW,CACd,CAAC;IACN,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,KAAa;QAC/B,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GACvB,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjE,OAAO;YACH,KAAK;YACL,SAAS;YACT,KAAK,EAAE,IAAI,CAAC,KAAM;YAClB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE;gBACF,EAAE,EAAE,IAAI,CAAC,QAAQ;gBACjB,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;gBAClC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;gBACpB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;aACvB;SACJ,CAAC;IACN,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa,CAAC,KAAa,EAAE,QAAgB;QAC/C,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAE/C,MAAM,IAAI,CAAC,6CAA6C,CACpD,IAAI,CAAC,EAAE,EACP,QAAQ,CACX,CAAC;QAEF,MAAM,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC;YACxC,MAAM,EAAE,IAAI,CAAC,EAAE;YACf,KAAK;SACR,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC1B,aAAqB,EACrB,OAAc,IAAI,IAAI,CAAC;QACnB,EAAE,EAAE,WAAW,CAAC,EAAE;QAClB,QAAQ,EAAE,WAAW,CAAC,QAAQ;KACjC,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,MAAM,IAAI,aAAa,CAAC,kBAAkB,aAAa,EAAE,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,cAAc,CACpB,8FAA8F,CACjG,CAAC;QACN,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,CACjE,QAAQ,CAAC,EAAE,EACX,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,IAAI,iBAAiB,CAAC,QAAQ,CAC5D,CAAC;QAEF,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE;YACtD,OAAO,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACnD,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,WAAW;QAE1B,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CACjC,QAAQ,CAAC,IAAK,EACd,aAAa,EACb,SAAS,CAAC,QAAQ,EAAE,CACvB,CAAC;QACF,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ;AAED,eAAe,WAAW,CAAC"}
@@ -15,6 +15,7 @@ import FakeSettingStore from '../../test/fixtures/fake-setting-store.js';
15
15
  import { extractAuditInfoFromUser } from '../util/index.js';
16
16
  import { createFakeEventsService } from '../features/index.js';
17
17
  import { vi, expect, test, describe, beforeEach } from 'vitest';
18
+ import { ResourceLimitsService } from './index.js';
18
19
  const config = createTestConfig();
19
20
  const systemUser = new User({ id: -1, username: 'system' });
20
21
  test.each([
@@ -33,6 +34,7 @@ test.each([
33
34
  const settingService = new SettingService({
34
35
  settingStore: new FakeSettingStore(),
35
36
  }, config, eventService);
37
+ const resourceLimitsService = new ResourceLimitsService(config);
36
38
  const service = new UserService({ userStore }, config, {
37
39
  accessService,
38
40
  resetTokenService,
@@ -40,6 +42,7 @@ test.each([
40
42
  eventService,
41
43
  sessionService,
42
44
  settingService,
45
+ resourceLimitsService,
43
46
  });
44
47
  const user = await service.createUser({
45
48
  username: 'test',
@@ -75,6 +78,7 @@ describe('Default admin initialization', () => {
75
78
  const settingService = new SettingService({
76
79
  settingStore: new FakeSettingStore(),
77
80
  }, config, eventService);
81
+ const resourceLimitsService = new ResourceLimitsService(config);
78
82
  userService = new UserService({ userStore }, config, {
79
83
  accessService,
80
84
  resetTokenService,
@@ -82,6 +86,7 @@ describe('Default admin initialization', () => {
82
86
  eventService,
83
87
  sessionService,
84
88
  settingService,
89
+ resourceLimitsService,
85
90
  });
86
91
  });
87
92
  test('Should create default admin user if `createAdminUser` is true and `initialAdminUser` is not set', async () => {
@@ -113,6 +118,7 @@ describe('Default admin initialization', () => {
113
118
  const settingService = new SettingService({
114
119
  settingStore: new FakeSettingStore(),
115
120
  }, config, eventService);
121
+ const resourceLimitsService = new ResourceLimitsService(config);
116
122
  const service = new UserService({ userStore }, config, {
117
123
  accessService,
118
124
  resetTokenService,
@@ -120,6 +126,7 @@ describe('Default admin initialization', () => {
120
126
  eventService,
121
127
  sessionService,
122
128
  settingService,
129
+ resourceLimitsService,
123
130
  });
124
131
  await service.initAdminUser({});
125
132
  await expect(service.loginUser('admin', 'unleash4all')).rejects.toThrow('The combination of password and username you provided is invalid');
@@ -135,29 +142,6 @@ describe('Default admin initialization', () => {
135
142
  });
136
143
  });
137
144
  });
138
- test('Should be a valid password', async () => {
139
- const userStore = new UserStoreMock();
140
- const accessService = new AccessServiceMock();
141
- const resetTokenStore = new FakeResetTokenStore();
142
- const resetTokenService = new ResetTokenService({ resetTokenStore }, config);
143
- const emailService = new EmailService(config);
144
- const sessionStore = new FakeSessionStore();
145
- const sessionService = new SessionService({ sessionStore }, config);
146
- const eventService = createFakeEventsService(config);
147
- const settingService = new SettingService({
148
- settingStore: new FakeSettingStore(),
149
- }, config, eventService);
150
- const service = new UserService({ userStore }, config, {
151
- accessService,
152
- resetTokenService,
153
- emailService,
154
- eventService,
155
- sessionService,
156
- settingService,
157
- });
158
- const valid = service.validatePassword('this is a strong password!');
159
- expect(valid).toBe(true);
160
- });
161
145
  test('Password must be at least 10 chars', async () => {
162
146
  const userStore = new UserStoreMock();
163
147
  const accessService = new AccessServiceMock();
@@ -170,6 +154,7 @@ test('Password must be at least 10 chars', async () => {
170
154
  const settingService = new SettingService({
171
155
  settingStore: new FakeSettingStore(),
172
156
  }, config, eventService);
157
+ const resourceLimitsService = new ResourceLimitsService(config);
173
158
  const service = new UserService({ userStore }, config, {
174
159
  accessService,
175
160
  resetTokenService,
@@ -177,6 +162,7 @@ test('Password must be at least 10 chars', async () => {
177
162
  eventService,
178
163
  sessionService,
179
164
  settingService,
165
+ resourceLimitsService,
180
166
  });
181
167
  expect(() => service.validatePassword('admin')).toThrow('The password must be at least 10 characters long.');
182
168
  expect(() => service.validatePassword('qwertyabcde')).toThrowError(OwaspValidationError);
@@ -193,6 +179,7 @@ test('The password must contain at least one uppercase letter.', async () => {
193
179
  const settingService = new SettingService({
194
180
  settingStore: new FakeSettingStore(),
195
181
  }, config, eventService);
182
+ const resourceLimitsService = new ResourceLimitsService(config);
196
183
  const service = new UserService({ userStore }, config, {
197
184
  accessService,
198
185
  resetTokenService,
@@ -200,6 +187,7 @@ test('The password must contain at least one uppercase letter.', async () => {
200
187
  eventService,
201
188
  sessionService,
202
189
  settingService,
190
+ resourceLimitsService,
203
191
  });
204
192
  expect(() => service.validatePassword('qwertyabcde')).toThrowError('The password must contain at least one uppercase letter.');
205
193
  expect(() => service.validatePassword('qwertyabcde')).toThrowError(OwaspValidationError);
@@ -216,6 +204,7 @@ test('The password must contain at least one number', async () => {
216
204
  const settingService = new SettingService({
217
205
  settingStore: new FakeSettingStore(),
218
206
  }, config, eventService);
207
+ const resourceLimitsService = new ResourceLimitsService(config);
219
208
  const service = new UserService({ userStore }, config, {
220
209
  accessService,
221
210
  resetTokenService,
@@ -223,6 +212,7 @@ test('The password must contain at least one number', async () => {
223
212
  eventService,
224
213
  sessionService,
225
214
  settingService,
215
+ resourceLimitsService,
226
216
  });
227
217
  expect(() => service.validatePassword('qwertyabcdE')).toThrowError('The password must contain at least one number.');
228
218
  expect(() => service.validatePassword('qwertyabcdE')).toThrowError(OwaspValidationError);
@@ -239,6 +229,7 @@ test('The password must contain at least one special character', async () => {
239
229
  const settingService = new SettingService({
240
230
  settingStore: new FakeSettingStore(),
241
231
  }, config, eventService);
232
+ const resourceLimitsService = new ResourceLimitsService(config);
242
233
  const service = new UserService({ userStore }, config, {
243
234
  accessService,
244
235
  resetTokenService,
@@ -246,11 +237,12 @@ test('The password must contain at least one special character', async () => {
246
237
  eventService,
247
238
  sessionService,
248
239
  settingService,
240
+ resourceLimitsService,
249
241
  });
250
242
  expect(() => service.validatePassword('qwertyabcdE2')).toThrowError('The password must contain at least one special character.');
251
243
  expect(() => service.validatePassword('qwertyabcdE2')).toThrowError(OwaspValidationError);
252
244
  });
253
- test('Should be a valid password with special chars', async () => {
245
+ test('The password should not be considered valid just because it is long', async () => {
254
246
  const userStore = new UserStoreMock();
255
247
  const accessService = new AccessServiceMock();
256
248
  const resetTokenStore = new FakeResetTokenStore();
@@ -262,6 +254,7 @@ test('Should be a valid password with special chars', async () => {
262
254
  const settingService = new SettingService({
263
255
  settingStore: new FakeSettingStore(),
264
256
  }, config, eventService);
257
+ const resourceLimitsService = new ResourceLimitsService(config);
265
258
  const service = new UserService({ userStore }, config, {
266
259
  accessService,
267
260
  resetTokenService,
@@ -269,9 +262,11 @@ test('Should be a valid password with special chars', async () => {
269
262
  eventService,
270
263
  sessionService,
271
264
  settingService,
265
+ resourceLimitsService,
272
266
  });
273
- const valid = service.validatePassword('this is a strong password!');
274
- expect(valid).toBe(true);
267
+ const longPassword = 'aiaiaiaiaiaiaiaiaiaia';
268
+ expect(() => service.validatePassword(longPassword)).toThrowError('The password must contain at least one uppercase letter.');
269
+ expect(() => service.validatePassword(longPassword)).toThrowError(OwaspValidationError);
275
270
  });
276
271
  test('Should send password reset email if user exists', async () => {
277
272
  const userStore = new UserStoreMock();
@@ -285,6 +280,7 @@ test('Should send password reset email if user exists', async () => {
285
280
  const settingService = new SettingService({
286
281
  settingStore: new FakeSettingStore(),
287
282
  }, config, eventService);
283
+ const resourceLimitsService = new ResourceLimitsService(config);
288
284
  const service = new UserService({ userStore }, config, {
289
285
  accessService,
290
286
  resetTokenService,
@@ -292,6 +288,7 @@ test('Should send password reset email if user exists', async () => {
292
288
  eventService,
293
289
  sessionService,
294
290
  settingService,
291
+ resourceLimitsService,
295
292
  });
296
293
  const unknownUser = service.createResetPasswordEmail('unknown@example.com');
297
294
  expect(unknownUser).rejects.toThrowError('Could not find user');
@@ -323,6 +320,7 @@ test('Should throttle password reset email', async () => {
323
320
  const settingService = new SettingService({
324
321
  settingStore: new FakeSettingStore(),
325
322
  }, config, eventService);
323
+ const resourceLimitsService = new ResourceLimitsService(config);
326
324
  const service = new UserService({ userStore }, config, {
327
325
  accessService,
328
326
  resetTokenService,
@@ -330,6 +328,7 @@ test('Should throttle password reset email', async () => {
330
328
  eventService,
331
329
  sessionService,
332
330
  settingService,
331
+ resourceLimitsService,
333
332
  });
334
333
  await userStore.insert({
335
334
  id: 123,
@@ -1 +1 @@
1
- {"version":3,"file":"user-service.test.js","sourceRoot":"","sources":["../../../src/lib/services/user-service.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user-service.test.js","sourceRoot":"","sources":["../../../src/lib/services/user-service.test.ts"],"names":[],"mappings":"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"}