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 +0,0 @@
1
- import{s as c,bs as E,j as e,N as d,cK as v,jR as f,bc as y,b9 as B,cm as q,r as A,bb as I,cY as F,cJ as P,C as p,V as x,L as j,jn as _,jg as M,jh as N,ji as k,jj as $,jk as z,jl as H,jm as O}from"./index-BAMIkcom.js";import{a as W}from"./formatTickValue-Csg87IVi.js";import{u as Y,a as G,B as J,S as K,T as V,P as Q,n as X,g as Z}from"./networkTrafficUsageHighlightPlugin-Dje5Vuvo.js";import{p as ee,c as l}from"./LazyAdminExport-BOTczpO1.js";import"./RoleCell-Da0TjMne.js";import"./useApiTokens-Btk4Hd2u.js";import"./PercentageDonut-BoaVP9ed.js";const S=c("article")(({theme:s})=>({minWidth:"200px",border:`2px solid ${s.palette.divider}`,borderRadius:s.shape.borderRadiusLarge,padding:s.spacing(3),display:"flex",flexDirection:"column",gap:s.spacing(2)})),T=c("h3")(({theme:s})=>({margin:0,fontSize:s.typography.body1.fontSize})),w=c("dl")(({theme:s})=>({display:"flex",flexDirection:"column",gap:s.spacing(2.5),padding:0,margin:0})),a=c("div")(({theme:s})=>({display:"flex",flexFlow:"row wrap",justifyContent:"space-between",gap:s.spacing(1,3),fontSize:s.typography.body2.fontSize,color:s.palette.text.secondary,"& dd":{margin:0,color:s.palette.text.primary}})),se=s=>{const r=n=>n.toLocaleString("en-US",{month:"short",year:"numeric"});if(s.grouping==="monthly"){const n=new Date,t=f(n,s.monthsBack),o=f(n,1);return`Average requests from ${r(t)} to ${r(o)}`}return`Requests used in ${r(ee(s.month))}`},ne=({period:s,usageTotal:r,includedTraffic:n,purchasedTraffic:t,currentMonth:o})=>{const{locationSettings:i}=E();return e.jsxs(S,{children:[e.jsx(T,{children:"Number of requests to Unleash"}),e.jsxs(w,{children:[e.jsxs(a,{children:[e.jsx("dt",{children:se(s)}),e.jsx("dd",{children:e.jsxs(d,{color:n>0?r<=n?"success":"error":"neutral",children:[r.toLocaleString(i.locale??"en-US")," ","requests"]})})]}),n>0&&e.jsxs(a,{children:[e.jsx("dt",{children:"Included in your plan"}),e.jsxs("dd",{children:[n.toLocaleString("en-US")," requests"]})]}),t>0&&o&&e.jsxs(a,{children:[e.jsx("dt",{children:"Additional traffic purchased"}),e.jsxs("dd",{children:[t.toLocaleString("en-US")," requests"]})]}),n>0&&o&&e.jsxs(a,{children:[e.jsx("dt",{children:"Total traffic available"}),e.jsxs("dd",{children:[(n+t).toLocaleString("en-US")," ","requests"]})]})]})]})},te=({overages:s,overageCost:r,estimatedMonthlyCost:n})=>e.jsxs(S,{children:[e.jsx(T,{children:"Accrued traffic charges"}),e.jsxs(w,{children:[e.jsxs(a,{children:[e.jsxs("dt",{children:["Request overages this month (",e.jsx(v,{href:"https://www.getunleash.io/pricing",children:"pricing"}),")"]}),e.jsxs("dd",{children:[s.toLocaleString()," requests"]})]}),e.jsxs(a,{children:[e.jsx("dt",{children:"Accrued traffic charges"}),e.jsx("dd",{children:e.jsxs(d,{color:"secondary",children:[r," USD"]})})]}),n>0&&e.jsxs(a,{children:[e.jsx("dt",{children:"Estimated charges based on current usage"}),e.jsx("dd",{children:e.jsxs(d,{color:"secondary",children:[n," USD"]})})]})]})]}),re=53,oe=259,m=1e6,ae=(s,r)=>!s||r==="pay-as-you-go"?re:oe;function ie(s,r,n){return s===void 0?ae(r,n):s}function ce(s){return s===void 0?0:s}const le=()=>{const{isEnterprise:s,uiConfig:r}=y(),n=B("/api/instance/trafficBundles"),{data:t,error:o,mutate:i}=q(n,de);return{trafficBundles:A.useMemo(()=>({includedTraffic:ie(t==null?void 0:t.includedTraffic,s(),r.billing)*m,purchasedTraffic:ce(t==null?void 0:t.purchasedTraffic)*m}),[t]),loading:!o&&!t,refetch:i}},de=s=>fetch(s).then(I("configuration")).then(r=>r.json()),ue=c("div")(({theme:s})=>({display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(200px, max-content))",flex:1,gap:s.spacing(2,4)})),ye=()=>{F("Network - Data Usage");const s=P("estimateTrafficDataCost"),{isOss:r}=y(),{trafficBundles:n}=le(),t=n.includedTraffic+n.purchasedTraffic,{chartDataSelection:o,setChartDataSelection:i,options:u}=Y(t),{chartData:C,usageTotal:h,overageCost:g,estimatedMonthlyCost:b,requestSummaryUsage:L}=G(t,o),U=o.grouping==="daily"&&o.month===l&&t>0&&h-t>0&&s,D=o.grouping==="daily"&&o.month===l,R=(o.grouping==="monthly"||o.month===l)&&t>0&&g>0;return e.jsx(p,{condition:r(),show:e.jsx(x,{severity:"warning",children:"Not enabled."}),elseShow:e.jsxs(e.Fragment,{children:[e.jsx(p,{condition:R,show:e.jsxs(x,{severity:"warning",sx:{mb:4},children:[e.jsx(J,{children:"Heads up!"})," You are currently consuming more requests than your plan includes and will be billed according to our terms. Please see"," ",e.jsx(j,{to:"https://www.getunleash.io/pricing",children:"this page"})," ","for more information. In order to reduce your traffic consumption, you may configure an"," ",e.jsx(j,{to:"https://docs.getunleash.io/unleash-edge",children:"Unleash Edge instance"})," ","in your own datacenter."]})}),e.jsxs(K,{children:[e.jsxs(V,{children:[e.jsxs(ue,{children:[e.jsx(ne,{period:o,usageTotal:L,includedTraffic:n.includedTraffic,purchasedTraffic:n.purchasedTraffic,currentMonth:D}),U&&e.jsx(te,{overageCost:g,overages:h-t,estimatedMonthlyCost:b})]}),e.jsx(Q,{selectedPeriod:o,setPeriod:i})]}),e.jsx(_,{data:C,plugins:[X],options:u,"aria-label":Z(o)})]})]})})};M.register(W,N,k,$,z,H,O);export{ye as default};
@@ -1 +0,0 @@
1
- import{s as c,bc as k,e as D,j as e,V as L,y as M,D as G,fN as S,B as f,dk as z,al as ne,dv as se,ao as oe,C as b,az as re,ap as ae,ay as K,cK as P,bt as ie,eE as le,bh as ce,i_ as de,L as q,eu as ue,ak as A,cc as I,r as d,ev as E,av as he,G as pe,H as xe,aj as $,fr as me,an as N,ei as je,eL as ge,ac as T,ad as fe,cG as V,b3 as ye,aY as Y,h as be,w as ke,aT as Ce,i as Te,aA as Q,gQ as w,hR as Ae,dP as ve,dO as Ee,T as R,e3 as Ne,F as we,fd as Se,e0 as Ie,fe as Re,gP as De,cm as Le,b9 as J,bb as X,ba as Pe,b8 as _e,b4 as Be,dY as Fe}from"./index-BAMIkcom.js";import{u as Oe}from"./useApiTokens-Btk4Hd2u.js";const Ue=c("div")(({theme:t})=>({display:"grid",gridTemplateColumns:"auto auto 1fr",gridAutoRows:"min-content",alignItems:"center",gap:t.spacing(1),marginTop:t.spacing(1.5)})),g=f,He=()=>{const{uiConfig:t}=k(),{setToastData:n}=D(),s=a=>()=>{z(a),n({type:"success",text:"Copied to clipboard"})},o=`${t.unleashUrl}/api/`,r=`${t.unleashUrl}/api/frontend/`;return e.jsxs(L,{severity:"info",children:[e.jsxs("p",{children:["Read the"," ",e.jsx("a",{href:"https://docs.getunleash.io/sdks",target:"_blank",rel:"noreferrer",children:"SDK overview"})," ","to connect Unleash to your application. Please note it can take up to ",e.jsx("strong",{children:"1 minute"})," before a new API key is activated."]}),e.jsxs(Ue,{children:[e.jsx(g,{children:e.jsx("strong",{children:"CLIENT API URL: "})}),e.jsx(g,{children:e.jsx("pre",{style:{display:"inline"},children:o})}),e.jsx(g,{children:e.jsx(M,{title:"Copy URL",arrow:!0,children:e.jsx(G,{onClick:s(o),size:"small",children:e.jsx(S,{})})})}),e.jsx(g,{children:e.jsx("strong",{children:"FRONTEND API URL: "})}),e.jsx(g,{children:e.jsx("pre",{style:{display:"inline"},children:r})}),e.jsx(g,{children:e.jsx(M,{title:"Copy URL",arrow:!0,children:e.jsx(G,{onClick:s(r),size:"small",children:e.jsx(S,{})})})})]})]})},Me=["Icon","createdAt","seenAt"],Ge=["Icon","project","seenAt"],ft=({compact:t=!1,setHiddenColumns:n,columns:s,loading:o,rows:r,headerGroups:a,globalFilter:i,prepareRow:p})=>{const u=ne(se.breakpoints.down("xl"));return oe([{condition:u,columns:Me},{condition:t,columns:Ge}],n,s),e.jsxs(e.Fragment,{children:[e.jsx(b,{condition:r.length>0,show:e.jsx(f,{sx:{mb:4},children:e.jsx(He,{})})}),e.jsx(f,{sx:{overflowX:"auto"},children:e.jsx(re,{value:i,children:e.jsx(ae,{rows:r,headerGroups:a,prepareRow:p})})}),e.jsx(b,{condition:r.length===0&&!o,show:e.jsx(b,{condition:(i==null?void 0:i.length)>0,show:e.jsxs(K,{children:["No tokens found matching “",i,"”"]}),elseShow:e.jsx(K,{children:e.jsxs("span",{children:["No tokens available. Read ",e.jsx(P,{href:"https://docs.getunleash.io/api-overview",target:"_blank",rel:"noreferrer",children:"API How-to guides"})," "," to learn more."]})})})})]})},Ke=(t,n)=>{const s=n>=t;return{limitReached:s,limitMessage:s?`You have reached the limit of ${t} API tokens`:void 0}},yt=({path:t,permission:n,project:s})=>{const o=ie(),{tokens:r,loading:a}=Oe(),{uiConfig:i}=k(),{limitReached:p,limitMessage:u}=Ke(i.resourceLimits.apiTokens,r.length);return e.jsx(le,{Icon:ce,onClick:()=>o(t),"data-testid":de,permission:n,projectId:s,maxWidth:"700px",disabled:a||p,tooltipProps:{title:u},children:"New API token"})},$e=c(q)(({theme:t})=>({textDecoration:"none",color:t.palette.links,"&:hover, &:focus":{textDecoration:"underline"}})),We=c("div")({display:"flex",alignItems:"center"}),ze=({projects:t,project:n})=>{const{searchQuery:s}=ue(),o=t&&Array.isArray(t)&&t.length>1?t:[];if(o.length>0)return e.jsx(A,{children:e.jsx(I,{title:o.map((r,a)=>e.jsxs(d.Fragment,{children:[a>0&&", ",!r||r==="*"?e.jsx(E,{search:s,children:"*"}):e.jsx($e,{to:`/projects/${r}`,children:e.jsx(E,{search:s,children:r})})]},r)),placement:"bottom-start",arrow:!0,tabIndex:0,children:e.jsxs("span",{children:[`${o.length}`," projects"]})})});if(o.length===1&&o[0]!=="*"||n&&n!=="*"){const r=n||o[0];return e.jsx(he,{to:`/projects/${r}`,title:r})}return e.jsx(A,{children:e.jsx(I,{title:"ALL current and future projects.",placement:"bottom",arrow:!0,children:e.jsx(We,{children:e.jsx(E,{search:s,children:"*"})})})})};var _={},qe=xe;Object.defineProperty(_,"__esModule",{value:!0});var Z=_.default=void 0,Ve=qe(pe()),Ye=e,Qe=(0,Ve.default)((0,Ye.jsx)("path",{d:"M21 10h-8.35C11.83 7.67 9.61 6 7 6c-3.31 0-6 2.69-6 6s2.69 6 6 6c2.61 0 4.83-1.67 5.65-4H13l2 2 2-2 2 2 4-4.04L21 10zM7 15c-1.65 0-3-1.35-3-3s1.35-3 3-3 3 1.35 3 3-1.35 3-3 3z"}),"Key");Z=_.default=Qe;const Je=({secret:t,project:n,projects:s})=>{const o=t!=null&&t.includes(":")?"v2":"v1",r=t==null?void 0:t.startsWith("*:"),a=s&&(s==null?void 0:s.length)>1||(s==null?void 0:s.length)===1&&s[0]!=="*"||n&&n!=="*";return o==="v2"&&!r&&!a},Xe=({...t})=>Je(t)?e.jsx($,{icon:e.jsx(I,{title:e.jsxs("p",{children:["This is an orphaned token. All of its original projects have been deleted and it now has access to all current and future projects. You should stop using this token and delete it. Read more in"," ",e.jsx(P,{target:"_blank",rel:"noopener noreferrer",href:"https://github.com/Unleash/unleash/releases/tag/v6.1.0",children:"release notes"}),"."]}),placement:"bottom-start",arrow:!0,children:e.jsx(me,{"aria-label":"Orphaned token",color:"warning","data-testid":"orphaned-token-icon"})})}):e.jsx($,{icon:e.jsx(Z,{color:"disabled"})}),bt=(t,n)=>{const s=d.useMemo(()=>({sortBy:[{id:"createdAt",desc:!0}]}),[]),o=d.useMemo(()=>[{id:"Icon",Cell:h=>e.jsx(Xe,{secret:h.row.original.secret,project:h.row.original.project,projects:h.row.original.projects}),disableSortBy:!0,disableGlobalFilter:!0,width:50},{Header:"Token name",accessor:"tokenName",Cell:N,minWidth:35},{Header:"Type",accessor:"type",Cell:({value:h})=>e.jsx(N,{value:W[h.toLowerCase()].label,subtitle:W[h.toLowerCase()].title,subtitleTooltip:!0}),width:180},{Header:"Project",accessor:"project",Cell:h=>e.jsx(ze,{project:h.row.original.project,projects:h.row.original.projects}),width:160},{Header:"Environment",accessor:"environment",Cell:N,width:120},{Header:"Created",accessor:"createdAt",Cell:je,width:150,disableGlobalFilter:!0},{Header:"Last seen",accessor:"seenAt",Cell:ge,width:140,disableGlobalFilter:!0},{Header:"Actions",width:120,id:"Actions",align:"center",disableSortBy:!0,disableGlobalFilter:!0,Cell:n}],[]),{getTableProps:r,getTableBodyProps:a,headerGroups:i,rows:p,prepareRow:u,state:j,setGlobalFilter:m,setHiddenColumns:y}=T.useTable({columns:o,data:t,initialState:s,sortTypes:fe,autoResetHiddenColumns:!1,disableSortRemove:!0},T.useGlobalFilter,T.useSortBy,T.useFlexLayout);return{getTableProps:r,getTableBodyProps:a,headerGroups:i,rows:p,prepareRow:u,state:j,setGlobalFilter:m,setHiddenColumns:y,columns:o}},W={client:{label:"BACKEND",title:"Connect backend SDK or Unleash Edge"},backend:{label:"BACKEND",title:"Connect backend SDK or Unleash Edge"},frontend:{label:"FRONTEND",title:"Connect frontend SDK"},admin:{label:"ADMIN",title:"Full access for managing Unleash"}},kt=({token:t,project:n,permission:s,track:o})=>{const{setToastData:r}=D(),a=i=>{z(i)&&(r({type:"success",text:"Token copied to clipboard"}),o&&typeof o=="function"&&o())};return e.jsx(V,{permission:s,projectId:n,tooltipProps:{title:"Copy token",arrow:!0},onClick:()=>a(t.secret),size:"large",children:e.jsx(S,{})})},Ze=c("ul")({marginBottom:0}),Ct=({token:t,permission:n,onRemove:s,project:o})=>{const[r,a]=d.useState(!1),{setToastData:i,setToastApiError:p}=D(),u=async()=>{try{await s(),a(!1),i({type:"success",text:"API token removed"})}catch(j){p(be(j))}};return e.jsxs(e.Fragment,{children:[e.jsx(V,{permission:n,projectId:o,tooltipProps:{title:"Delete token",arrow:!0},onClick:()=>a(!0),size:"large",children:e.jsx(ye,{})}),e.jsx(Y,{open:r,onClick:u,onClose:()=>a(!1),title:"Confirm deletion",children:e.jsxs("div",{children:["Are you sure you want to delete the following API token?",e.jsx("br",{}),e.jsxs(Ze,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"name"}),":"," ",e.jsx("code",{children:t.tokenName})]}),e.jsxs("li",{children:[e.jsx("strong",{children:"type"}),": ",e.jsx("code",{children:t.type})]}),e.jsxs("li",{children:[e.jsx("strong",{children:"environment"}),":"," ",e.jsx("code",{children:t.environment})]})]})]})})]})},et=c("div")(()=>({maxWidth:"400px"})),tt=c("form")(()=>({display:"flex",flexDirection:"column",height:"100%"})),nt=c(ke)(({theme:t})=>({width:"100%",marginBottom:t.spacing(2)})),st=c(Ce)(({theme:t})=>({marginBottom:t.spacing(2),minWidth:"400px",[t.breakpoints.down("sm")]:{minWidth:"379px"}})),ee=c("p")(({theme:t})=>({marginBottom:t.spacing(1)})),ot=c("label")(({theme:t})=>({marginBottom:t.spacing(1)})),rt=c(Te)(({theme:t})=>({marginLeft:t.spacing(3)})),at=c(f)({marginTop:"auto",display:"flex",justifyContent:"flex-end"}),Tt=({children:t,actions:n,handleSubmit:s,handleCancel:o})=>{var i;const{uiConfig:r}=k(),a=!!((i=r==null?void 0:r.flags)!=null&&i.UNLEASH_CLOUD);return e.jsxs(tt,{onSubmit:s,children:[e.jsx(b,{condition:a,show:e.jsxs(L,{severity:"info",sx:{mb:4},children:["Please be aware of our"," ",e.jsx(P,{href:"https://www.getunleash.io/fair-use-policy",children:"fair use policy"}),"."]})}),t,e.jsxs(at,{children:[n,e.jsx(rt,{onClick:o,children:"Cancel"})]})]})};var x=(t=>(t.ADMIN="ADMIN",t.CLIENT="CLIENT",t.FRONTEND="FRONTEND",t))(x||{});const At=t=>{var O,U;const{environments:n}=Q(),s=(O=n==null?void 0:n.find(l=>l.enabled))==null?void 0:O.name,o=w(Ae,t),r=[{key:x.CLIENT,label:"Backend SDK",title:"Creates a backend token to connect a backend SDK or Unleash Edge",enabled:w(ve)||o},{key:x.FRONTEND,label:"Frontend SDK",title:"Creates a frontend token to connect a frontend SDK",enabled:w(Ee)||o}],a=(U=r.find(l=>l.enabled))==null?void 0:U.key,[i,p]=d.useState(""),[u,j]=d.useState(a||x.CLIENT),[m,y]=d.useState([t||"*"]),[h,te]=d.useState(m),[B,C]=d.useState(),[F,v]=d.useState({});return d.useEffect(()=>{C(u==="ADMIN"?"*":s)},[u,s]),{tokenName:i,type:u,apiTokenTypes:r,projects:m,environment:B,setTokenName:p,setTokenType:l=>{l==="ADMIN"?(j(x.ADMIN),te(m),y(["*"]),C("*")):(j(l),y(h),C(s))},setProjects:y,setEnvironment:C,getApiTokenPayload:()=>({tokenName:i,type:u,environment:B,projects:m}),isValid:()=>{const l={};return i||(l.tokenName="Token name is required"),m.length===0&&(l.projects="At least one project is required"),v(l),Object.keys(l).length===0},clearErrors:l=>{if(l){const H={...F};delete H[l],v(H)}else v({})},errors:F}},vt=({open:t,setOpen:n,closeConfirm:s,token:o,type:r})=>e.jsxs(Y,{open:t,setOpen:n,onClick:s,primaryButtonText:"Close",title:"New token created",children:[e.jsx(R,{variant:"body1",children:"Your new token has been created successfully."}),e.jsx(Ne,{token:o}),e.jsx(b,{condition:r===x.FRONTEND,show:e.jsxs(L,{sx:{mt:2},severity:"info",children:["By default, all ",x.FRONTEND," tokens may be used from any CORS origin. If you'd like to configure a strict set of origins, please use the"," ",e.jsx(q,{to:"/admin/cors",target:"_blank",rel:"noreferrer",children:"CORS origins configuration page"}),"."]})})]}),Et=({tokenName:t,setTokenName:n,errors:s,clearErrors:o})=>e.jsxs(e.Fragment,{children:[e.jsx(ee,{children:"What would you like to call this token?"}),e.jsx(nt,{value:t,name:"tokenName",onChange:r=>n(r.target.value),label:"Token name",error:s.tokenName!==void 0,errorText:s.tokenName,onFocus:()=>o("tokenName"),autoFocus:!0})]}),Nt=({type:t,setType:n,apiTokenTypes:s})=>e.jsx(et,{children:e.jsxs(we,{sx:{mb:2,width:"100%"},children:[e.jsx(ot,{id:"token-type",children:"What do you want to connect?"}),e.jsx(Se,{"aria-labelledby":"token-type",defaultValue:"CLIENT",name:"radio-buttons-group",value:t,onChange:(o,r)=>n(r),children:s.map(({key:o,label:r,title:a,enabled:i})=>e.jsx(Ie,{value:o,sx:{mb:1},disabled:!i,control:e.jsx(Re,{sx:{ml:.75,alignSelf:"flex-start"}}),label:e.jsx(f,{children:e.jsxs(f,{children:[e.jsx(R,{children:r}),e.jsx(R,{variant:"body2",color:"text.secondary",children:a})]})})},o))})]})}),wt=({type:t,environment:n,setEnvironment:s})=>{const{environments:o}=Q(),r=t===x.ADMIN?[{key:"*",label:"ALL"}]:o.map(a=>({key:a.name,label:`${a.name.concat(a.enabled?"":" - deprecated")}`,title:a.name,disabled:!1}));return e.jsxs(e.Fragment,{children:[e.jsx(ee,{children:"Which environment should the token have access to?"}),e.jsx(st,{disabled:t===x.ADMIN,options:r,value:n,onChange:s,label:"Environment",id:"api_key_environment",name:"environment",IconComponent:De,fullWidth:!0})]})},it=t=>t.map(n=>({...n.user,joinedAt:new Date(n.joinedAt),createdBy:n.createdBy})),St=t=>{const{data:n,error:s,mutate:o}=Le(J(`api/admin/groups/${t}`),lt);return d.useMemo(()=>({group:n&&{...n,users:it((n==null?void 0:n.users)??[])},loading:!s&&!n,refetchGroup:()=>o(),error:s}),[n,s,o])},lt=t=>fetch(t).then(X("Group")).then(n=>n.json()),It=()=>{const{isEnterprise:t}=k(),{data:n,error:s,mutate:o}=Pe(t(),{serviceAccounts:[],rootRoles:[]},J("api/admin/service-account"),ct);return d.useMemo(()=>({serviceAccounts:(n==null?void 0:n.serviceAccounts)??[],roles:(n==null?void 0:n.rootRoles)??[],loading:!s&&!n,refetch:()=>o(),error:s}),[n,s,o])},ct=t=>fetch(t).then(X("Service Accounts")).then(n=>n.json()),dt=c("div")(({theme:t})=>({display:"flex",flexDirection:"column",gap:t.spacing(.5),"& > *:not(:last-child)":{borderBottom:`1px solid ${t.palette.divider}`,paddingBottom:t.spacing(1)}})),ut=c(_e)(()=>({display:"block"})),Rt=({role:t,roles:n,value:s})=>{const{isEnterprise:o}=k();if(o()){const r=n||[t];return e.jsx(A,{children:e.jsx(Be,{tooltip:e.jsx(dt,{children:r.map(a=>e.jsx(Fe,{roleId:a,tooltip:!0},a))}),children:e.jsx(ut,{children:s})})})}return e.jsx(A,{children:s})};export{ft as A,yt as C,wt as E,Ct as R,ee as S,x as T,kt as a,At as b,Tt as c,Et as d,Nt as e,vt as f,It as g,St as h,Rt as i,Z as j,it as m,bt as u};
@@ -1 +0,0 @@
1
- import{s as f,L as m,j as n,aY as g,b9 as d,cm as y,r as p,bd as v,bb as b,as as x,bc as k,cJ as E,aT as F}from"./index-BAMIkcom.js";const M=f(m)(({theme:a})=>({textDecoration:"none",color:a.palette.primary.main,fontWeight:a.fontWeight.bold})),j=({isOpen:a,onClose:s,features:e,project:t})=>n.jsxs(g,{title:"You can't archive a feature that other features depend on",open:a,primaryButtonText:"OK",onClick:s,children:[n.jsx("p",{children:"The following features depend on your feature:"}),n.jsx("ul",{children:e.map(r=>n.jsx("li",{children:n.jsx(M,{to:`/projects/${t}/features/${r}`,target:"_blank",rel:"noopener noreferrer",children:r})},r))})]}),L=d("api/admin/client-metrics/features"),U=(a,s)=>{const e=d(`api/admin/client-metrics/features/${a}/raw?hoursBack=${s}`),{data:t,error:r}=y(e,()=>R(e)),i=p.useCallback(()=>{v(L).catch(console.warn)},[]);return{featureMetrics:t==null?void 0:t.data,loading:!r&&!t,refetchFeatureMetrics:i,error:r}},R=a=>fetch(a).then(b("Features")).then(s=>s.json()).then(),T=48,$=({hoursBack:a,setHoursBack:s,label:e="Period"})=>{const{trackEvent:t}=x(),r=o=>{s(Number.parseInt(o,10)),t("feature-metrics",{props:{eventType:"change-period",hoursBack:o}})},{isEnterprise:i}=k(),h=E("extendedUsageMetrics"),l=i()&&h?[...u,...w]:u,c=l.map(o=>Number(o.key)).includes(a)?a:T;return p.useEffect(()=>{a!==c&&s(c)},[a]),n.jsx("div",{children:n.jsx(F,{name:"feature-metrics-period",label:e,id:"feature-metrics-period",options:l,value:String(c),onChange:r,fullWidth:!0})})},u=[{key:"1",label:"Last hour"},{key:"24",label:"Last 24 hours"},{key:"48",label:"Last 48 hours"}],w=[{key:`${7*24}`,label:"Last 7 days"},{key:`${30*24}`,label:"Last 30 days"},{key:`${90*24}`,label:"Last 90 days"}],C=a=>{const s=new Map;return a.forEach(e=>{let t=s.get(e.timestamp);if(t||(t={...e,yes:0,no:0,variants:{}},s.set(e.timestamp,t)),t.yes+=e.yes,t.no+=e.no,e.variants){t.variants=t.variants||{};for(const[r,i]of Object.entries(e.variants))t.variants[r]=(t.variants[r]||0)+i}}),Array.from(s.values()).map(e=>({...e,variants:e.variants&&Object.keys(e.variants).length===0?void 0:e.variants}))};export{j as F,T as a,C as b,$ as c,U as u};