unleash-server 5.3.5 → 5.4.0

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 (454) hide show
  1. package/dist/lib/addons/slack-app-definition.js +8 -0
  2. package/dist/lib/addons/slack-app-definition.js.map +1 -1
  3. package/dist/lib/addons/slack-app.d.ts +1 -0
  4. package/dist/lib/addons/slack-app.js +12 -5
  5. package/dist/lib/addons/slack-app.js.map +1 -1
  6. package/dist/lib/addons/slack-app.test.js +12 -66
  7. package/dist/lib/addons/slack-app.test.js.map +1 -1
  8. package/dist/lib/create-config.js +1 -0
  9. package/dist/lib/create-config.js.map +1 -1
  10. package/dist/lib/db/access-store.d.ts +3 -1
  11. package/dist/lib/db/access-store.js +53 -0
  12. package/dist/lib/db/access-store.js.map +1 -1
  13. package/dist/lib/db/client-applications-store.d.ts +3 -1
  14. package/dist/lib/db/client-applications-store.js +73 -6
  15. package/dist/lib/db/client-applications-store.js.map +1 -1
  16. package/dist/lib/db/feature-environment-store.js +3 -0
  17. package/dist/lib/db/feature-environment-store.js.map +1 -1
  18. package/dist/lib/db/feature-strategy-store.d.ts +1 -0
  19. package/dist/lib/db/feature-strategy-store.js +21 -3
  20. package/dist/lib/db/feature-strategy-store.js.map +1 -1
  21. package/dist/lib/db/feature-strategy-store.test.js +40 -0
  22. package/dist/lib/db/feature-strategy-store.test.js.map +1 -1
  23. package/dist/lib/db/feature-toggle-client-store.js +5 -3
  24. package/dist/lib/db/feature-toggle-client-store.js.map +1 -1
  25. package/dist/lib/db/feature-toggle-store.d.ts +6 -1
  26. package/dist/lib/db/feature-toggle-store.js +37 -9
  27. package/dist/lib/db/feature-toggle-store.js.map +1 -1
  28. package/dist/lib/db/index.js +1 -1
  29. package/dist/lib/db/index.js.map +1 -1
  30. package/dist/lib/db/role-store.d.ts +3 -0
  31. package/dist/lib/db/role-store.js +21 -4
  32. package/dist/lib/db/role-store.js.map +1 -1
  33. package/dist/lib/features/access/createAccessService.js +2 -2
  34. package/dist/lib/features/access/createAccessService.js.map +1 -1
  35. package/dist/lib/features/change-request-access-service/change-request-access-read-model.d.ts +1 -0
  36. package/dist/lib/features/change-request-access-service/fake-change-request-access-read-model.d.ts +1 -0
  37. package/dist/lib/features/change-request-access-service/fake-change-request-access-read-model.js +3 -0
  38. package/dist/lib/features/change-request-access-service/fake-change-request-access-read-model.js.map +1 -1
  39. package/dist/lib/features/change-request-access-service/sql-change-request-access-read-model.d.ts +1 -0
  40. package/dist/lib/features/change-request-access-service/sql-change-request-access-read-model.js +10 -1
  41. package/dist/lib/features/change-request-access-service/sql-change-request-access-read-model.js.map +1 -1
  42. package/dist/lib/features/export-import-toggles/export-import-permissions.e2e.test.js +4 -0
  43. package/dist/lib/features/export-import-toggles/export-import-permissions.e2e.test.js.map +1 -1
  44. package/dist/lib/features/export-import-toggles/export-import-service.d.ts +2 -1
  45. package/dist/lib/features/export-import-toggles/export-import-service.js +30 -16
  46. package/dist/lib/features/export-import-toggles/export-import-service.js.map +1 -1
  47. package/dist/lib/features/export-import-toggles/export-import.e2e.test.js +24 -4
  48. package/dist/lib/features/export-import-toggles/export-import.e2e.test.js.map +1 -1
  49. package/dist/lib/features/export-import-toggles/import-context-validation.js +1 -1
  50. package/dist/lib/features/export-import-toggles/import-context-validation.js.map +1 -1
  51. package/dist/lib/features/export-import-toggles/import-toggles-store-type.d.ts +1 -0
  52. package/dist/lib/features/export-import-toggles/import-toggles-store.d.ts +1 -0
  53. package/dist/lib/features/export-import-toggles/import-toggles-store.js +8 -0
  54. package/dist/lib/features/export-import-toggles/import-toggles-store.js.map +1 -1
  55. package/dist/lib/features/export-import-toggles/import-validation-messages.d.ts +1 -1
  56. package/dist/lib/features/export-import-toggles/import-validation-messages.js +7 -1
  57. package/dist/lib/features/export-import-toggles/import-validation-messages.js.map +1 -1
  58. package/dist/lib/features/feature-toggle/createFeatureToggleService.js +9 -12
  59. package/dist/lib/features/feature-toggle/createFeatureToggleService.js.map +1 -1
  60. package/dist/lib/features/index.d.ts +1 -0
  61. package/dist/lib/features/index.js +1 -0
  62. package/dist/lib/features/index.js.map +1 -1
  63. package/dist/lib/features/playground/advanced-playground.test.js +57 -6
  64. package/dist/lib/features/playground/advanced-playground.test.js.map +1 -1
  65. package/dist/lib/features/playground/generateObjectCombinations.d.ts +2 -2
  66. package/dist/lib/features/playground/generateObjectCombinations.js +4 -1
  67. package/dist/lib/features/playground/generateObjectCombinations.js.map +1 -1
  68. package/dist/lib/features/playground/generateObjectCombinations.test.js +7 -6
  69. package/dist/lib/features/playground/generateObjectCombinations.test.js.map +1 -1
  70. package/dist/lib/features/playground/playground.js +1 -1
  71. package/dist/lib/features/playground/playground.js.map +1 -1
  72. package/dist/lib/features/segment/createSegmentService.d.ts +5 -0
  73. package/dist/lib/features/segment/createSegmentService.js +32 -0
  74. package/dist/lib/features/segment/createSegmentService.js.map +1 -0
  75. package/dist/lib/metrics.js +12 -0
  76. package/dist/lib/metrics.js.map +1 -1
  77. package/dist/lib/metrics.test.js +1 -1
  78. package/dist/lib/metrics.test.js.map +1 -1
  79. package/dist/lib/middleware/response-time-metrics.js +1 -1
  80. package/dist/lib/middleware/response-time-metrics.js.map +1 -1
  81. package/dist/lib/openapi/index.js +3 -1
  82. package/dist/lib/openapi/index.js.map +1 -1
  83. package/dist/lib/openapi/meta-schema-rules.test.js +2 -41
  84. package/dist/lib/openapi/meta-schema-rules.test.js.map +1 -1
  85. package/dist/lib/openapi/spec/admin-features-query-schema.d.ts +1 -0
  86. package/dist/lib/openapi/spec/admin-features-query-schema.js +1 -0
  87. package/dist/lib/openapi/spec/admin-features-query-schema.js.map +1 -1
  88. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.d.ts +4 -1
  89. package/dist/lib/openapi/spec/advanced-playground-feature-schema.d.ts +8 -2
  90. package/dist/lib/openapi/spec/advanced-playground-request-schema.d.ts +1 -1
  91. package/dist/lib/openapi/spec/advanced-playground-response-schema.d.ts +17 -5
  92. package/dist/lib/openapi/spec/application-schema.d.ts +33 -1
  93. package/dist/lib/openapi/spec/application-schema.js +12 -1
  94. package/dist/lib/openapi/spec/application-schema.js.map +1 -1
  95. package/dist/lib/openapi/spec/application-usage-schema.d.ts +25 -0
  96. package/dist/lib/openapi/spec/application-usage-schema.js +27 -0
  97. package/dist/lib/openapi/spec/application-usage-schema.js.map +1 -0
  98. package/dist/lib/openapi/spec/applications-schema.d.ts +57 -1
  99. package/dist/lib/openapi/spec/applications-schema.js +4 -1
  100. package/dist/lib/openapi/spec/applications-schema.js.map +1 -1
  101. package/dist/lib/openapi/spec/bulk-metrics-schema.d.ts +18 -4
  102. package/dist/lib/openapi/spec/bulk-registration-schema.d.ts +6 -1
  103. package/dist/lib/openapi/spec/client-metrics-env-schema.d.ts +6 -2
  104. package/dist/lib/openapi/spec/client-metrics-env-schema.js +0 -1
  105. package/dist/lib/openapi/spec/client-metrics-env-schema.js.map +1 -1
  106. package/dist/lib/openapi/spec/client-metrics-schema.d.ts +6 -1
  107. package/dist/lib/openapi/spec/create-application-schema.d.ts +0 -1
  108. package/dist/lib/openapi/spec/create-application-schema.js +0 -1
  109. package/dist/lib/openapi/spec/create-application-schema.js.map +1 -1
  110. package/dist/lib/openapi/spec/create-context-field-schema.d.ts +68 -0
  111. package/dist/lib/openapi/spec/create-context-field-schema.js +19 -0
  112. package/dist/lib/openapi/spec/create-context-field-schema.js.map +1 -0
  113. package/dist/lib/openapi/spec/create-feature-schema.d.ts +1 -0
  114. package/dist/lib/openapi/spec/create-feature-schema.js +1 -0
  115. package/dist/lib/openapi/spec/create-feature-schema.js.map +1 -1
  116. package/dist/lib/openapi/spec/create-feature-strategy-schema.d.ts +0 -1
  117. package/dist/lib/openapi/spec/create-group-schema.d.ts +0 -1
  118. package/dist/lib/openapi/spec/create-group-schema.js +0 -1
  119. package/dist/lib/openapi/spec/create-group-schema.js.map +1 -1
  120. package/dist/lib/openapi/spec/create-invited-user-schema.d.ts +9 -0
  121. package/dist/lib/openapi/spec/create-invited-user-schema.js +9 -0
  122. package/dist/lib/openapi/spec/create-invited-user-schema.js.map +1 -1
  123. package/dist/lib/openapi/spec/create-strategy-variant-schema.d.ts +0 -1
  124. package/dist/lib/openapi/spec/create-strategy-variant-schema.js +0 -1
  125. package/dist/lib/openapi/spec/create-strategy-variant-schema.js.map +1 -1
  126. package/dist/lib/openapi/spec/create-user-response-schema.d.ts +2 -1
  127. package/dist/lib/openapi/spec/create-user-response-schema.js +1 -1
  128. package/dist/lib/openapi/spec/create-user-response-schema.js.map +1 -1
  129. package/dist/lib/openapi/spec/date-schema.d.ts +6 -1
  130. package/dist/lib/openapi/spec/date-schema.js +14 -1
  131. package/dist/lib/openapi/spec/date-schema.js.map +1 -1
  132. package/dist/lib/openapi/spec/environment-project-schema.d.ts +0 -2
  133. package/dist/lib/openapi/spec/environments-project-schema.d.ts +0 -2
  134. package/dist/lib/openapi/spec/event-schema.d.ts +1 -3
  135. package/dist/lib/openapi/spec/event-schema.js +0 -1
  136. package/dist/lib/openapi/spec/event-schema.js.map +1 -1
  137. package/dist/lib/openapi/spec/events-schema.d.ts +1 -3
  138. package/dist/lib/openapi/spec/export-query-schema.d.ts +0 -1
  139. package/dist/lib/openapi/spec/export-query-schema.js +0 -1
  140. package/dist/lib/openapi/spec/export-query-schema.js.map +1 -1
  141. package/dist/lib/openapi/spec/export-result-schema.d.ts +17 -1
  142. package/dist/lib/openapi/spec/feature-environment-metrics-schema.d.ts +6 -1
  143. package/dist/lib/openapi/spec/feature-environment-schema.d.ts +7 -0
  144. package/dist/lib/openapi/spec/feature-environment-schema.js +7 -0
  145. package/dist/lib/openapi/spec/feature-environment-schema.js.map +1 -1
  146. package/dist/lib/openapi/spec/feature-events-schema.d.ts +1 -3
  147. package/dist/lib/openapi/spec/feature-metrics-schema.d.ts +12 -2
  148. package/dist/lib/openapi/spec/feature-schema.d.ts +9 -1
  149. package/dist/lib/openapi/spec/feature-schema.js +2 -1
  150. package/dist/lib/openapi/spec/feature-schema.js.map +1 -1
  151. package/dist/lib/openapi/spec/feature-strategy-segment-schema.d.ts +5 -0
  152. package/dist/lib/openapi/spec/feature-strategy-segment-schema.js +5 -0
  153. package/dist/lib/openapi/spec/feature-strategy-segment-schema.js.map +1 -1
  154. package/dist/lib/openapi/spec/feature-usage-schema.d.ts +12 -2
  155. package/dist/lib/openapi/spec/features-schema.d.ts +16 -1
  156. package/dist/lib/openapi/spec/group-schema.d.ts +10 -2
  157. package/dist/lib/openapi/spec/group-schema.js +6 -0
  158. package/dist/lib/openapi/spec/group-schema.js.map +1 -1
  159. package/dist/lib/openapi/spec/group-user-model-schema.d.ts +2 -1
  160. package/dist/lib/openapi/spec/groups-schema.d.ts +14 -4
  161. package/dist/lib/openapi/spec/health-overview-schema.d.ts +16 -5
  162. package/dist/lib/openapi/spec/health-report-schema.d.ts +16 -5
  163. package/dist/lib/openapi/spec/import-toggles-schema.d.ts +34 -2
  164. package/dist/lib/openapi/spec/index.d.ts +3 -1
  165. package/dist/lib/openapi/spec/index.js +3 -1
  166. package/dist/lib/openapi/spec/index.js.map +1 -1
  167. package/dist/lib/openapi/spec/maintenance-schema.d.ts +2 -0
  168. package/dist/lib/openapi/spec/maintenance-schema.js +2 -0
  169. package/dist/lib/openapi/spec/maintenance-schema.js.map +1 -1
  170. package/dist/lib/openapi/spec/me-schema.d.ts +2 -1
  171. package/dist/lib/openapi/spec/patch-schema.d.ts +12 -1
  172. package/dist/lib/openapi/spec/patch-schema.js +12 -1
  173. package/dist/lib/openapi/spec/patch-schema.js.map +1 -1
  174. package/dist/lib/openapi/spec/patches-schema.d.ts +12 -1
  175. package/dist/lib/openapi/spec/playground-feature-schema.d.ts +3 -0
  176. package/dist/lib/openapi/spec/playground-request-schema.d.ts +1 -1
  177. package/dist/lib/openapi/spec/playground-response-schema.d.ts +8 -2
  178. package/dist/lib/openapi/spec/playground-segment-schema.d.ts +1 -0
  179. package/dist/lib/openapi/spec/playground-segment-schema.js +1 -0
  180. package/dist/lib/openapi/spec/playground-segment-schema.js.map +1 -1
  181. package/dist/lib/openapi/spec/playground-strategy-schema.d.ts +2 -0
  182. package/dist/lib/openapi/spec/playground-strategy-schema.js +1 -0
  183. package/dist/lib/openapi/spec/playground-strategy-schema.js.map +1 -1
  184. package/dist/lib/openapi/spec/profile-schema.d.ts +9 -1
  185. package/dist/lib/openapi/spec/project-environment-schema.d.ts +0 -2
  186. package/dist/lib/openapi/spec/project-overview-schema.d.ts +20 -6
  187. package/dist/lib/openapi/spec/project-overview-schema.js +4 -1
  188. package/dist/lib/openapi/spec/project-overview-schema.js.map +1 -1
  189. package/dist/lib/openapi/spec/project-schema.d.ts +4 -0
  190. package/dist/lib/openapi/spec/project-schema.js +4 -0
  191. package/dist/lib/openapi/spec/project-schema.js.map +1 -1
  192. package/dist/lib/openapi/spec/projects-schema.d.ts +6 -0
  193. package/dist/lib/openapi/spec/projects-schema.js +2 -0
  194. package/dist/lib/openapi/spec/projects-schema.js.map +1 -1
  195. package/dist/lib/openapi/spec/public-signup-token-schema.d.ts +3 -1
  196. package/dist/lib/openapi/spec/public-signup-token-schema.js +1 -0
  197. package/dist/lib/openapi/spec/public-signup-token-schema.js.map +1 -1
  198. package/dist/lib/openapi/spec/public-signup-tokens-schema.d.ts +5 -2
  199. package/dist/lib/openapi/spec/push-variants-schema.d.ts +3 -0
  200. package/dist/lib/openapi/spec/push-variants-schema.js +3 -0
  201. package/dist/lib/openapi/spec/push-variants-schema.js.map +1 -1
  202. package/dist/lib/openapi/spec/reset-password-schema.d.ts +4 -0
  203. package/dist/lib/openapi/spec/reset-password-schema.js +4 -0
  204. package/dist/lib/openapi/spec/reset-password-schema.js.map +1 -1
  205. package/dist/lib/openapi/spec/sdk-context-schema.d.ts +1 -1
  206. package/dist/lib/openapi/spec/sdk-context-schema.js +1 -1
  207. package/dist/lib/openapi/spec/sdk-context-schema.js.map +1 -1
  208. package/dist/lib/openapi/spec/search-events-schema.d.ts +2 -2
  209. package/dist/lib/openapi/spec/search-events-schema.js +1 -6
  210. package/dist/lib/openapi/spec/search-events-schema.js.map +1 -1
  211. package/dist/lib/openapi/spec/sort-order-schema.d.ts +4 -1
  212. package/dist/lib/openapi/spec/sort-order-schema.js +4 -1
  213. package/dist/lib/openapi/spec/sort-order-schema.js.map +1 -1
  214. package/dist/lib/openapi/spec/state-schema.d.ts +39 -3
  215. package/dist/lib/openapi/spec/state-schema.js +14 -2
  216. package/dist/lib/openapi/spec/state-schema.js.map +1 -1
  217. package/dist/lib/openapi/spec/toggle-maintenance-schema.d.ts +2 -0
  218. package/dist/lib/openapi/spec/toggle-maintenance-schema.js +2 -0
  219. package/dist/lib/openapi/spec/toggle-maintenance-schema.js.map +1 -1
  220. package/dist/lib/openapi/spec/token-string-list-schema.d.ts +0 -1
  221. package/dist/lib/openapi/spec/token-string-list-schema.js +0 -1
  222. package/dist/lib/openapi/spec/token-string-list-schema.js.map +1 -1
  223. package/dist/lib/openapi/spec/token-user-schema.d.ts +1 -1
  224. package/dist/lib/openapi/spec/token-user-schema.js +1 -1
  225. package/dist/lib/openapi/spec/token-user-schema.js.map +1 -1
  226. package/dist/lib/openapi/spec/{upsert-context-field-schema.d.ts → update-context-field-schema.d.ts} +19 -8
  227. package/dist/lib/openapi/spec/update-context-field-schema.js +44 -0
  228. package/dist/lib/openapi/spec/update-context-field-schema.js.map +1 -0
  229. package/dist/lib/openapi/spec/update-user-schema.d.ts +0 -1
  230. package/dist/lib/openapi/spec/update-user-schema.js +0 -1
  231. package/dist/lib/openapi/spec/update-user-schema.js.map +1 -1
  232. package/dist/lib/openapi/spec/user-schema.d.ts +2 -1
  233. package/dist/lib/openapi/spec/user-schema.js +2 -1
  234. package/dist/lib/openapi/spec/user-schema.js.map +1 -1
  235. package/dist/lib/openapi/spec/users-groups-base-schema.d.ts +33 -4
  236. package/dist/lib/openapi/spec/users-groups-base-schema.js +24 -0
  237. package/dist/lib/openapi/spec/users-groups-base-schema.js.map +1 -1
  238. package/dist/lib/openapi/spec/users-schema.d.ts +3 -2
  239. package/dist/lib/openapi/spec/users-schema.js +1 -1
  240. package/dist/lib/openapi/spec/users-schema.js.map +1 -1
  241. package/dist/lib/openapi/spec/users-search-schema.d.ts +3 -1
  242. package/dist/lib/openapi/spec/users-search-schema.js +1 -0
  243. package/dist/lib/openapi/spec/users-search-schema.js.map +1 -1
  244. package/dist/lib/openapi/spec/variants-schema.d.ts +1 -0
  245. package/dist/lib/openapi/spec/variants-schema.js +1 -0
  246. package/dist/lib/openapi/spec/variants-schema.js.map +1 -1
  247. package/dist/lib/openapi/util/openapi-tags.d.ts +18 -0
  248. package/dist/lib/openapi/util/openapi-tags.js +12 -0
  249. package/dist/lib/openapi/util/openapi-tags.js.map +1 -1
  250. package/dist/lib/routes/admin-api/api-token.d.ts +5 -0
  251. package/dist/lib/routes/admin-api/api-token.js +28 -0
  252. package/dist/lib/routes/admin-api/api-token.js.map +1 -1
  253. package/dist/lib/routes/admin-api/archive.js +4 -0
  254. package/dist/lib/routes/admin-api/archive.js.map +1 -1
  255. package/dist/lib/routes/admin-api/client-metrics.js +2 -1
  256. package/dist/lib/routes/admin-api/client-metrics.js.map +1 -1
  257. package/dist/lib/routes/admin-api/context.d.ts +4 -3
  258. package/dist/lib/routes/admin-api/context.js +3 -4
  259. package/dist/lib/routes/admin-api/context.js.map +1 -1
  260. package/dist/lib/routes/admin-api/feature-type.js +2 -2
  261. package/dist/lib/routes/admin-api/feature-type.js.map +1 -1
  262. package/dist/lib/routes/admin-api/instance-admin.js +2 -0
  263. package/dist/lib/routes/admin-api/instance-admin.js.map +1 -1
  264. package/dist/lib/routes/admin-api/maintenance.d.ts +2 -1
  265. package/dist/lib/routes/admin-api/maintenance.js.map +1 -1
  266. package/dist/lib/routes/admin-api/project/environments.js +1 -0
  267. package/dist/lib/routes/admin-api/project/environments.js.map +1 -1
  268. package/dist/lib/routes/admin-api/project/project-features.js +2 -1
  269. package/dist/lib/routes/admin-api/project/project-features.js.map +1 -1
  270. package/dist/lib/routes/admin-api/public-signup.js +2 -1
  271. package/dist/lib/routes/admin-api/public-signup.js.map +1 -1
  272. package/dist/lib/routes/admin-api/strategy.d.ts +1 -1
  273. package/dist/lib/routes/admin-api/strategy.js +2 -2
  274. package/dist/lib/routes/admin-api/strategy.js.map +1 -1
  275. package/dist/lib/routes/admin-api/tag-type.js +2 -2
  276. package/dist/lib/routes/admin-api/tag-type.js.map +1 -1
  277. package/dist/lib/routes/admin-api/user-admin.js +2 -1
  278. package/dist/lib/routes/admin-api/user-admin.js.map +1 -1
  279. package/dist/lib/routes/client-api/register.d.ts +1 -0
  280. package/dist/lib/routes/client-api/register.js +8 -0
  281. package/dist/lib/routes/client-api/register.js.map +1 -1
  282. package/dist/lib/routes/index.js +1 -0
  283. package/dist/lib/routes/index.js.map +1 -1
  284. package/dist/lib/routes/public-invite.js +2 -1
  285. package/dist/lib/routes/public-invite.js.map +1 -1
  286. package/dist/lib/segments/segment-service-interface.d.ts +2 -0
  287. package/dist/lib/server-impl.js +3 -1
  288. package/dist/lib/server-impl.js.map +1 -1
  289. package/dist/lib/services/access-service.d.ts +6 -3
  290. package/dist/lib/services/access-service.js +17 -5
  291. package/dist/lib/services/access-service.js.map +1 -1
  292. package/dist/lib/services/access-service.test.js +49 -3
  293. package/dist/lib/services/access-service.test.js.map +1 -1
  294. package/dist/lib/services/client-metrics/instance-service.js +5 -7
  295. package/dist/lib/services/client-metrics/instance-service.js.map +1 -1
  296. package/dist/lib/services/client-metrics/last-seen-service.d.ts +4 -0
  297. package/dist/lib/services/client-metrics/last-seen-service.js +4 -1
  298. package/dist/lib/services/client-metrics/last-seen-service.js.map +1 -1
  299. package/dist/lib/services/client-metrics/models.d.ts +2 -0
  300. package/dist/lib/services/client-metrics/schema.js +1 -0
  301. package/dist/lib/services/client-metrics/schema.js.map +1 -1
  302. package/dist/lib/services/feature-service-potentially-stale.test.js +0 -1
  303. package/dist/lib/services/feature-service-potentially-stale.test.js.map +1 -1
  304. package/dist/lib/services/feature-toggle-service.js +20 -30
  305. package/dist/lib/services/feature-toggle-service.js.map +1 -1
  306. package/dist/lib/services/index.js +1 -1
  307. package/dist/lib/services/index.js.map +1 -1
  308. package/dist/lib/services/instance-stats-service.d.ts +2 -0
  309. package/dist/lib/services/instance-stats-service.js +6 -1
  310. package/dist/lib/services/instance-stats-service.js.map +1 -1
  311. package/dist/lib/services/maintenance-service.js +1 -1
  312. package/dist/lib/services/maintenance-service.js.map +1 -1
  313. package/dist/lib/services/maintenance-service.test.js +1 -1
  314. package/dist/lib/services/maintenance-service.test.js.map +1 -1
  315. package/dist/lib/services/project-service.d.ts +2 -1
  316. package/dist/lib/services/project-service.js +3 -0
  317. package/dist/lib/services/project-service.js.map +1 -1
  318. package/dist/lib/services/segment-service.d.ts +8 -2
  319. package/dist/lib/services/segment-service.js +34 -3
  320. package/dist/lib/services/segment-service.js.map +1 -1
  321. package/dist/lib/services/user-service.js +3 -3
  322. package/dist/lib/services/user-service.js.map +1 -1
  323. package/dist/lib/services/version-service.d.ts +1 -0
  324. package/dist/lib/services/version-service.js +8 -1
  325. package/dist/lib/services/version-service.js.map +1 -1
  326. package/dist/lib/types/events.d.ts +2 -1
  327. package/dist/lib/types/events.js +4 -2
  328. package/dist/lib/types/events.js.map +1 -1
  329. package/dist/lib/types/experimental.d.ts +1 -1
  330. package/dist/lib/types/experimental.js +6 -5
  331. package/dist/lib/types/experimental.js.map +1 -1
  332. package/dist/lib/types/model.d.ts +2 -0
  333. package/dist/lib/types/model.js.map +1 -1
  334. package/dist/lib/types/option.d.ts +2 -0
  335. package/dist/lib/types/project.d.ts +7 -0
  336. package/dist/lib/types/stores/access-store.d.ts +9 -0
  337. package/dist/lib/types/stores/client-applications-store.d.ts +5 -0
  338. package/dist/lib/types/stores/context-field-store.d.ts +3 -3
  339. package/dist/lib/types/stores/feature-toggle-store.d.ts +2 -1
  340. package/dist/lib/types/stores/role-store.d.ts +3 -0
  341. package/dist/migrations/20230802092725-add-last-seen-column-to-feature-environments.d.ts +2 -0
  342. package/dist/migrations/20230802092725-add-last-seen-column-to-feature-environments.js +84 -0
  343. package/dist/migrations/20230802092725-add-last-seen-column-to-feature-environments.js.map +1 -0
  344. package/dist/migrations/20230802141830-add-feature-and-environment-last-seen-at-to-features-view.d.ts +2 -0
  345. package/dist/migrations/20230802141830-add-feature-and-environment-last-seen-at-to-features-view.js +83 -0
  346. package/dist/migrations/20230802141830-add-feature-and-environment-last-seen-at-to-features-view.js.map +1 -0
  347. package/dist/migrations/20230803061359-change-request-optional-feature.d.ts +2 -0
  348. package/dist/migrations/20230803061359-change-request-optional-feature.js +13 -0
  349. package/dist/migrations/20230803061359-change-request-optional-feature.js.map +1 -0
  350. package/dist/migrations/20230808104232-update-root-roles-descriptions.d.ts +2 -0
  351. package/dist/migrations/20230808104232-update-root-roles-descriptions.js +15 -0
  352. package/dist/migrations/20230808104232-update-root-roles-descriptions.js.map +1 -0
  353. package/dist/migrations/20230814095253-change-request-rejections.d.ts +2 -0
  354. package/dist/migrations/20230814095253-change-request-rejections.js +18 -0
  355. package/dist/migrations/20230814095253-change-request-rejections.js.map +1 -0
  356. package/dist/migrations/20230814115436-change-request-timzone-timestamps.d.ts +2 -0
  357. package/dist/migrations/20230814115436-change-request-timzone-timestamps.js +15 -0
  358. package/dist/migrations/20230814115436-change-request-timzone-timestamps.js.map +1 -0
  359. package/dist/migrations/20230815065908-change-request-approve-reject-permission.d.ts +2 -0
  360. package/dist/migrations/20230815065908-change-request-approve-reject-permission.js +12 -0
  361. package/dist/migrations/20230815065908-change-request-approve-reject-permission.js.map +1 -0
  362. package/dist/migrations/20230817095805-client-applications-usage-table.d.ts +2 -0
  363. package/dist/migrations/20230817095805-client-applications-usage-table.js +17 -0
  364. package/dist/migrations/20230817095805-client-applications-usage-table.js.map +1 -0
  365. package/dist/migrations/20230818124614-update-client-applications-usage-table.d.ts +2 -0
  366. package/dist/migrations/20230818124614-update-client-applications-usage-table.js +25 -0
  367. package/dist/migrations/20230818124614-update-client-applications-usage-table.js.map +1 -0
  368. package/dist/server-dev.js +3 -2
  369. package/dist/server-dev.js.map +1 -1
  370. package/dist/test/config/test-config.js +1 -0
  371. package/dist/test/config/test-config.js.map +1 -1
  372. package/dist/test/e2e/api/admin/api-token.auth.e2e.test.js +12 -84
  373. package/dist/test/e2e/api/admin/api-token.auth.e2e.test.js.map +1 -1
  374. package/dist/test/e2e/api/admin/api-token.e2e.test.js +10 -2
  375. package/dist/test/e2e/api/admin/api-token.e2e.test.js.map +1 -1
  376. package/dist/test/e2e/api/admin/metrics.e2e.test.js +30 -4
  377. package/dist/test/e2e/api/admin/metrics.e2e.test.js.map +1 -1
  378. package/dist/test/e2e/api/admin/project/features.e2e.test.js +14 -15
  379. package/dist/test/e2e/api/admin/project/features.e2e.test.js.map +1 -1
  380. package/dist/test/e2e/api/client/metricsV2.e2e.test.js +19 -5
  381. package/dist/test/e2e/api/client/metricsV2.e2e.test.js.map +1 -1
  382. package/dist/test/e2e/api/openapi/openapi.e2e.test.js +23 -0
  383. package/dist/test/e2e/api/openapi/openapi.e2e.test.js.map +1 -1
  384. package/dist/test/e2e/helpers/test-helper.js +11 -1
  385. package/dist/test/e2e/helpers/test-helper.js.map +1 -1
  386. package/dist/test/e2e/services/access-service.e2e.test.js +2 -2
  387. package/dist/test/e2e/services/access-service.e2e.test.js.map +1 -1
  388. package/dist/test/e2e/services/api-token-service.e2e.test.js +1 -1
  389. package/dist/test/e2e/services/api-token-service.e2e.test.js.map +1 -1
  390. package/dist/test/e2e/services/environment-service.test.js +2 -0
  391. package/dist/test/e2e/services/environment-service.test.js.map +1 -1
  392. package/dist/test/e2e/services/feature-toggle-service-v2.e2e.test.js +1 -1
  393. package/dist/test/e2e/services/feature-toggle-service-v2.e2e.test.js.map +1 -1
  394. package/dist/test/e2e/services/playground-service.test.js +1 -1
  395. package/dist/test/e2e/services/playground-service.test.js.map +1 -1
  396. package/dist/test/e2e/services/project-health-service.e2e.test.js +1 -1
  397. package/dist/test/e2e/services/project-health-service.e2e.test.js.map +1 -1
  398. package/dist/test/e2e/services/project-service.e2e.test.js +1 -1
  399. package/dist/test/e2e/services/project-service.e2e.test.js.map +1 -1
  400. package/dist/test/e2e/services/user-service.e2e.test.js +10 -0
  401. package/dist/test/e2e/services/user-service.e2e.test.js.map +1 -1
  402. package/dist/test/fixtures/access-service-mock.js +1 -0
  403. package/dist/test/fixtures/access-service-mock.js.map +1 -1
  404. package/dist/test/fixtures/fake-access-store.d.ts +3 -1
  405. package/dist/test/fixtures/fake-access-store.js +6 -0
  406. package/dist/test/fixtures/fake-access-store.js.map +1 -1
  407. package/dist/test/fixtures/fake-feature-toggle-store.d.ts +2 -1
  408. package/dist/test/fixtures/fake-feature-toggle-store.js +19 -6
  409. package/dist/test/fixtures/fake-feature-toggle-store.js.map +1 -1
  410. package/dist/test/fixtures/fake-project-store.d.ts +1 -1
  411. package/dist/test/fixtures/fake-role-store.d.ts +3 -0
  412. package/dist/test/fixtures/fake-role-store.js +6 -0
  413. package/dist/test/fixtures/fake-role-store.js.map +1 -1
  414. package/frontend/build/index.html +2 -2
  415. package/frontend/build/static/{AdvancedPlayground-48dddbf4.js → AdvancedPlayground-2d715a2c.js} +3 -3
  416. package/frontend/build/static/{CreateProject-c1b0f704.js → CreateProject-5b1090c2.js} +1 -1
  417. package/frontend/build/static/{Error-e6f7c2ee.js → Error-e44ea66b.js} +1 -1
  418. package/frontend/build/static/FeatureArchiveDialog-b47b18e8.js +10 -0
  419. package/frontend/build/static/{FeatureMetricsChart-81da0ce4.js → FeatureMetricsChart-36caeeb7.js} +2 -2
  420. package/frontend/build/static/FeatureViewLazyExport-49d56afd.js +7 -0
  421. package/frontend/build/static/LazyAdminExport-87c9ab51.js +35 -0
  422. package/frontend/build/static/LazyProjectExport-c4634b2a.js +17 -0
  423. package/frontend/build/static/{NetworkOverview-cd06e59f.js → NetworkOverview-c762698b.js} +64 -64
  424. package/frontend/build/static/{NetworkTraffic-ba933617.js → NetworkTraffic-c8d9eb9b.js} +1 -1
  425. package/frontend/build/static/RoleCell-d1aa8288.js +1 -0
  426. package/frontend/build/static/{StrategyItemContainer-88c18285.js → StrategyItemContainer-c7c352a4.js} +1 -1
  427. package/frontend/build/static/changeRequestProcess-f2469ef4.svg +61 -0
  428. package/frontend/build/static/{chartjs-adapter-date-fns.esm-799be047.js → chartjs-adapter-date-fns.esm-9c67372b.js} +6 -6
  429. package/frontend/build/static/{flowchart-elk-definition-170a3958-543f0844.js → flowchart-elk-definition-170a3958-5ea9fc56.js} +1 -1
  430. package/frontend/build/static/{index-88f1c682.js → index-1aaa8c27.js} +1 -1
  431. package/frontend/build/static/{index-aa638b65.js → index-670c9345.js} +1 -1
  432. package/frontend/build/static/index-b7003840.js +454 -0
  433. package/frontend/build/static/{is_dark-735e3a95.js → is_dark-b445e102.js} +1 -1
  434. package/frontend/build/static/{mindmap-definition-44684416-ac92f950.js → mindmap-definition-44684416-254e936e.js} +1 -1
  435. package/frontend/build/static/pro-enterprise-feature-badge-8ac467c3.svg +7 -0
  436. package/frontend/build/static/pro-enterprise-feature-badge-light-81a18f9b.svg +6 -0
  437. package/frontend/build/static/{timeline-definition-8e5a9bc6-6c09f608.js → timeline-definition-8e5a9bc6-24fd1725.js} +1 -1
  438. package/frontend/build/static/{unknownify-0b176a78.js → unknownify-ea4585e8.js} +1 -1
  439. package/frontend/build/static/usage-line-00d00632.svg +3 -0
  440. package/frontend/build/static/usage-rate-cb18f02b.svg +3 -0
  441. package/frontend/package.json +13 -13
  442. package/package.json +11 -12
  443. package/dist/lib/openapi/spec/upsert-context-field-schema.js +0 -35
  444. package/dist/lib/openapi/spec/upsert-context-field-schema.js.map +0 -1
  445. package/frontend/build/static/FeatureArchiveDialog-9ad60db1.js +0 -10
  446. package/frontend/build/static/FeatureViewLazyExport-58a3e977.js +0 -7
  447. package/frontend/build/static/LazyAdminExport-c98b11d7.js +0 -37
  448. package/frontend/build/static/LazyProjectExport-14db2e37.js +0 -16
  449. package/frontend/build/static/RoleCell-c534790e.js +0 -1
  450. package/frontend/build/static/changeRequestProcess-a532ab60.svg +0 -1
  451. package/frontend/build/static/index-1c4c68c3.js +0 -453
  452. package/frontend/build/static/pro-enterprise-feature-badge-8fab99c5.svg +0 -5
  453. package/frontend/build/static/pro-enterprise-feature-badge-light-0227af08.svg +0 -1
  454. /package/frontend/build/static/{index-770afaee.css → style-770afaee.css} +0 -0
@@ -46,7 +46,7 @@ const PROJECT_ADMIN = [
46
46
  ];
47
47
  const isProjectPermission = (permission) => PROJECT_ADMIN.includes(permission);
48
48
  class AccessService {
49
- constructor({ accessStore, accountStore, roleStore, environmentStore, }, { getLogger, flagResolver, }, groupService) {
49
+ constructor({ accessStore, accountStore, roleStore, environmentStore, groupStore, }, { getLogger, flagResolver, }, groupService) {
50
50
  this.store = accessStore;
51
51
  this.accountStore = accountStore;
52
52
  this.roleStore = roleStore;
@@ -54,6 +54,7 @@ class AccessService {
54
54
  this.environmentStore = environmentStore;
55
55
  this.logger = getLogger('/services/access-service.ts');
56
56
  this.flagResolver = flagResolver;
57
+ this.groupStore = groupStore;
57
58
  }
58
59
  /**
59
60
  * Used to check if a user has access to the requested resource
@@ -219,6 +220,13 @@ class AccessService {
219
220
  }
220
221
  return [];
221
222
  }
223
+ async getGroupsForRole(roleId) {
224
+ const groupdIdList = await this.store.getGroupIdsForRole(roleId);
225
+ if (groupdIdList.length > 0) {
226
+ return this.groupStore.getAllWithId(groupdIdList);
227
+ }
228
+ return [];
229
+ }
222
230
  async getProjectUsersForRole(roleId, projectId) {
223
231
  const userRoleList = await this.store.getProjectUsersForRole(roleId, projectId);
224
232
  if (userRoleList.length > 0) {
@@ -243,6 +251,9 @@ class AccessService {
243
251
  const groups = await this.groupService.getProjectGroups(projectId);
244
252
  return [roles, users.flat(), groups];
245
253
  }
254
+ async getProjectRoleUsage(roleId) {
255
+ return this.store.getProjectUserAndGroupCountsForRole(roleId);
256
+ }
246
257
  async createDefaultProjectRoles(owner, projectId) {
247
258
  if (!projectId) {
248
259
  throw new Error('ProjectId cannot be empty');
@@ -288,7 +299,7 @@ class AccessService {
288
299
  ? constants_1.CUSTOM_ROOT_ROLE_TYPE
289
300
  : constants_1.CUSTOM_PROJECT_ROLE_TYPE;
290
301
  if (roleType === constants_1.CUSTOM_ROOT_ROLE_TYPE &&
291
- !this.flagResolver.isEnabled('customRootRoles')) {
302
+ this.flagResolver.isEnabled('customRootRolesKillSwitch')) {
292
303
  throw new invalid_operation_error_1.default('Custom root roles are not enabled.');
293
304
  }
294
305
  const baseRole = {
@@ -312,7 +323,7 @@ class AccessService {
312
323
  ? constants_1.CUSTOM_ROOT_ROLE_TYPE
313
324
  : constants_1.CUSTOM_PROJECT_ROLE_TYPE;
314
325
  if (roleType === constants_1.CUSTOM_ROOT_ROLE_TYPE &&
315
- !this.flagResolver.isEnabled('customRootRoles')) {
326
+ this.flagResolver.isEnabled('customRootRolesKillSwitch')) {
316
327
  throw new invalid_operation_error_1.default('Custom root roles are not enabled.');
317
328
  }
318
329
  await this.validateRole(role, role.id);
@@ -338,8 +349,9 @@ class AccessService {
338
349
  async deleteRole(id) {
339
350
  await this.validateRoleIsNotBuiltIn(id);
340
351
  const roleUsers = await this.getUsersForRole(id);
341
- if (roleUsers.length > 0) {
342
- throw new role_in_use_error_1.default('Role is in use by more than one user. You cannot delete a role that is in use without first removing the role from the users.');
352
+ const roleGroups = await this.getGroupsForRole(id);
353
+ if (roleUsers.length > 0 || roleGroups.length > 0) {
354
+ throw new role_in_use_error_1.default(`Role is in use by users(${roleUsers.length}) or groups(${roleGroups.length}). You cannot delete a role that is in use without first removing the role from the users and groups.`);
343
355
  }
344
356
  return this.roleStore.delete(id);
345
357
  }
@@ -1 +1 @@
1
- {"version":3,"file":"access-service.js","sourceRoot":"","sources":["../../../src/lib/services/access-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"access-service.js","sourceRoot":"","sources":["../../../src/lib/services/access-service.ts"],"names":[],"mappings":"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"}
@@ -6,14 +6,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const name_exists_error_1 = __importDefault(require("../error/name-exists-error"));
7
7
  const no_logger_1 = __importDefault(require("../../test/fixtures/no-logger"));
8
8
  const createAccessService_1 = require("../features/access/createAccessService");
9
+ const access_service_1 = require("./access-service");
9
10
  const test_config_1 = require("../../test/config/test-config");
10
11
  const constants_1 = require("../util/constants");
11
- function getSetup(customRootRoles = false) {
12
+ const fake_group_store_1 = __importDefault(require("../../test/fixtures/fake-group-store"));
13
+ const fake_account_store_1 = require("../../test/fixtures/fake-account-store");
14
+ const fake_role_store_1 = __importDefault(require("../../test/fixtures/fake-role-store"));
15
+ const fake_environment_store_1 = __importDefault(require("../../test/fixtures/fake-environment-store"));
16
+ const fake_access_store_1 = __importDefault(require("../../test/fixtures/fake-access-store"));
17
+ const group_service_1 = require("../services/group-service");
18
+ const fake_event_store_1 = __importDefault(require("../../test/fixtures/fake-event-store"));
19
+ function getSetup(customRootRolesKillSwitch = true) {
12
20
  const config = (0, test_config_1.createTestConfig)({
13
21
  getLogger: no_logger_1.default,
14
22
  experimental: {
15
23
  flags: {
16
- customRootRoles: customRootRoles,
24
+ customRootRolesKillSwitch,
17
25
  },
18
26
  },
19
27
  });
@@ -135,7 +143,7 @@ test('should be able to validate and cleanup with additional properties', async
135
143
  });
136
144
  });
137
145
  test('user with custom root role should get a user root role', async () => {
138
- const { accessService } = getSetup(true);
146
+ const { accessService } = getSetup(false);
139
147
  const customRootRole = await accessService.createRole({
140
148
  name: 'custom-root-role',
141
149
  description: 'test custom root role',
@@ -151,4 +159,42 @@ test('user with custom root role should get a user root role', async () => {
151
159
  expect(roles).toHaveLength(1);
152
160
  expect(roles[0].name).toBe('custom-root-role');
153
161
  });
162
+ test('throws error when trying to delete a project role in use by group', async () => {
163
+ const groupIdResultOverride = async () => {
164
+ return [1];
165
+ };
166
+ const config = (0, test_config_1.createTestConfig)({
167
+ getLogger: no_logger_1.default,
168
+ });
169
+ const eventStore = new fake_event_store_1.default();
170
+ const groupStore = new fake_group_store_1.default();
171
+ groupStore.getAllWithId = async () => {
172
+ return [{ name: 'group' }];
173
+ };
174
+ const accountStore = new fake_account_store_1.FakeAccountStore();
175
+ const roleStore = new fake_role_store_1.default();
176
+ const environmentStore = new fake_environment_store_1.default();
177
+ const accessStore = new fake_access_store_1.default();
178
+ accessStore.getGroupIdsForRole = groupIdResultOverride;
179
+ accessStore.getUserIdsForRole = async () => {
180
+ return [];
181
+ };
182
+ accessStore.get = async () => {
183
+ return { id: 1, type: 'custom', name: 'project role' };
184
+ };
185
+ const groupService = new group_service_1.GroupService({ groupStore, eventStore, accountStore }, { getLogger: no_logger_1.default });
186
+ const accessService = new access_service_1.AccessService({
187
+ accessStore,
188
+ accountStore,
189
+ roleStore,
190
+ environmentStore,
191
+ groupStore,
192
+ }, config, groupService);
193
+ try {
194
+ await accessService.deleteRole(1);
195
+ }
196
+ catch (e) {
197
+ expect(e.toString()).toBe('RoleInUseError: Role is in use by users(0) or groups(1). You cannot delete a role that is in use without first removing the role from the users and groups.');
198
+ }
199
+ });
154
200
  //# sourceMappingURL=access-service.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"access-service.test.js","sourceRoot":"","sources":["../../../src/lib/services/access-service.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"access-service.test.js","sourceRoot":"","sources":["../../../src/lib/services/access-service.test.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const schema_1 = require("./schema");
4
3
  const events_1 = require("../../types/events");
5
- const schema_2 = require("./schema");
4
+ const schema_1 = require("./schema");
6
5
  const date_fns_1 = require("date-fns");
7
- const schema_3 = require("./schema");
6
+ const schema_2 = require("./schema");
8
7
  class ClientInstanceService {
9
8
  constructor({ clientMetricsStoreV2, strategyStore, featureToggleStore, clientInstanceStore, clientApplicationsStore, eventStore, }, { getLogger }, bulkInterval = (0, date_fns_1.secondsToMilliseconds)(5), announcementInterval = (0, date_fns_1.minutesToMilliseconds)(5)) {
10
9
  this.apps = {};
@@ -24,7 +23,7 @@ class ClientInstanceService {
24
23
  this.timers.push(setInterval(() => this.announceUnannounced(), this.announcementInterval).unref());
25
24
  }
26
25
  async registerInstance(data, clientIp) {
27
- const value = await schema_3.clientMetricsSchema.validateAsync(data);
26
+ const value = await schema_2.clientMetricsSchema.validateAsync(data);
28
27
  await this.clientInstanceStore.setLastSeen({
29
28
  appName: value.appName,
30
29
  instanceId: value.instanceId,
@@ -33,7 +32,7 @@ class ClientInstanceService {
33
32
  });
34
33
  }
35
34
  async registerClient(data, clientIp) {
36
- const value = await schema_2.clientRegisterSchema.validateAsync(data);
35
+ const value = await schema_1.clientRegisterSchema.validateAsync(data);
37
36
  value.clientIp = clientIp;
38
37
  value.createdBy = clientIp;
39
38
  this.seenClients[this.clientKey(value)] = value;
@@ -115,8 +114,7 @@ class ClientInstanceService {
115
114
  await this.clientApplicationsStore.delete(appName);
116
115
  }
117
116
  async createApplication(input) {
118
- const applicationData = await schema_1.applicationSchema.validateAsync(input);
119
- await this.clientApplicationsStore.upsert(applicationData);
117
+ await this.clientApplicationsStore.upsert(input);
120
118
  }
121
119
  async removeInstancesOlderThanTwoDays() {
122
120
  return this.clientInstanceStore.removeInstancesOlderThanTwoDays();
@@ -1 +1 @@
1
- {"version":3,"file":"instance-service.js","sourceRoot":"","sources":["../../../../src/lib/services/client-metrics/instance-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instance-service.js","sourceRoot":"","sources":["../../../../src/lib/services/client-metrics/instance-service.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,10 @@
1
1
  import { IUnleashConfig } from '../../server-impl';
2
2
  import { IUnleashStores } from '../../types';
3
3
  import { IClientMetricsEnv } from '../../types/stores/client-metrics-store-v2';
4
+ export declare type LastSeenInput = {
5
+ featureName: string;
6
+ environment: string;
7
+ };
4
8
  export declare class LastSeenService {
5
9
  private timers;
6
10
  private lastSeenToggles;
@@ -23,7 +23,10 @@ class LastSeenService {
23
23
  updateLastSeen(clientMetrics) {
24
24
  clientMetrics
25
25
  .filter((clientMetric) => clientMetric.yes > 0 || clientMetric.no > 0)
26
- .forEach((clientMetric) => this.lastSeenToggles.add(clientMetric.featureName));
26
+ .forEach((clientMetric) => this.lastSeenToggles.add({
27
+ featureName: clientMetric.featureName,
28
+ environment: clientMetric.environment,
29
+ }));
27
30
  }
28
31
  destroy() {
29
32
  this.timers.forEach(clearInterval);
@@ -1 +1 @@
1
- {"version":3,"file":"last-seen-service.js","sourceRoot":"","sources":["../../../../src/lib/services/client-metrics/last-seen-service.ts"],"names":[],"mappings":";;;AAAA,uCAAiD;AAOjD,MAAa,eAAe;IASxB,YACI,EAAE,kBAAkB,EAA8C,EAClE,MAAsB,EACtB,gBAAgB,GAAG,IAAA,gCAAqB,EAAC,EAAE,CAAC;QAXxC,WAAM,GAAqB,EAAE,CAAC;QAE9B,oBAAe,GAAgB,IAAI,GAAG,EAAE,CAAC;QAW7C,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,CAC1B,+CAA+C,CAClD,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAC5D,CAAC;IACN,CAAC;IAED,KAAK,CAAC,KAAK;QACP,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;QACxC,IAAI,KAAK,GAAG,CAAC,EAAE;YACX,MAAM,eAAe,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;YAClD,IAAI,CAAC,eAAe,GAAG,IAAI,GAAG,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,0BAA0B,eAAe,CAAC,MAAM,UAAU,CAC7D,CAAC;YACF,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;SAC9D;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,cAAc,CAAC,aAAkC;QAC7C,aAAa;aACR,MAAM,CACH,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,EAAE,GAAG,CAAC,CAChE;aACA,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE,CACtB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,CACrD,CAAC;IACV,CAAC;IAED,OAAO;QACH,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACvC,CAAC;CACJ;AAlDD,0CAkDC"}
1
+ {"version":3,"file":"last-seen-service.js","sourceRoot":"","sources":["../../../../src/lib/services/client-metrics/last-seen-service.ts"],"names":[],"mappings":";;;AAAA,uCAAiD;AAYjD,MAAa,eAAe;IASxB,YACI,EAAE,kBAAkB,EAA8C,EAClE,MAAsB,EACtB,gBAAgB,GAAG,IAAA,gCAAqB,EAAC,EAAE,CAAC;QAXxC,WAAM,GAAqB,EAAE,CAAC;QAE9B,oBAAe,GAAuB,IAAI,GAAG,EAAE,CAAC;QAWpD,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,CAC1B,+CAA+C,CAClD,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAC5D,CAAC;IACN,CAAC;IAED,KAAK,CAAC,KAAK;QACP,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;QACxC,IAAI,KAAK,GAAG,CAAC,EAAE;YACX,MAAM,eAAe,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;YAClD,IAAI,CAAC,eAAe,GAAG,IAAI,GAAG,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,0BAA0B,eAAe,CAAC,MAAM,UAAU,CAC7D,CAAC;YACF,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;SAC9D;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,cAAc,CAAC,aAAkC;QAC7C,aAAa;aACR,MAAM,CACH,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,EAAE,GAAG,CAAC,CAChE;aACA,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE,CACtB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;YACrB,WAAW,EAAE,YAAY,CAAC,WAAW;YACrC,WAAW,EAAE,YAAY,CAAC,WAAW;SACxC,CAAC,CACL,CAAC;IACV,CAAC;IAED,OAAO;QACH,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACvC,CAAC;CACJ;AArDD,0CAqDC"}
@@ -22,5 +22,7 @@ export interface IApplication {
22
22
  createdAt?: Date;
23
23
  instances?: IClientInstance[];
24
24
  seenToggles?: Record<string, any>;
25
+ project?: string;
26
+ environment?: string;
25
27
  links?: Record<string, string>;
26
28
  }
@@ -82,5 +82,6 @@ exports.clientRegisterSchema = joi_1.default
82
82
  started: joi_1.default.date().required(),
83
83
  interval: joi_1.default.number().required(),
84
84
  environment: joi_1.default.string().optional(),
85
+ project: joi_1.default.string().optional(),
85
86
  });
86
87
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/lib/services/client-metrics/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/lib/services/client-metrics/schema.ts"],"names":[],"mappings":"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"}
@@ -36,7 +36,6 @@ test('Should only store events for potentially stale on', async () => {
36
36
  flagResolver: { isEnabled: () => true },
37
37
  experimental: {
38
38
  ...(config.experimental ?? {}),
39
- emitPotentiallyStaleEvents: true,
40
39
  },
41
40
  }, {}, {}, {});
42
41
  await featureToggleService.updatePotentiallyStaleFeatures();
@@ -1 +1 @@
1
- {"version":3,"file":"feature-service-potentially-stale.test.js","sourceRoot":"","sources":["../../../src/lib/services/feature-service-potentially-stale.test.ts"],"names":[],"mappings":";;;;;AAAA,oCAKkB;AAClB,+DAAiE;AACjE,sFAA4D;AAK5D,IAAI,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;IACjE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,cAAc,GAAG;QACnB,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE;QAChE,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE;KACpE,CAAC;IAEF,MAAM,MAAM,GAAG,IAAA,8BAAgB,GAAE,CAAC;IAClC,MAAM,oBAAoB,GAAG,IAAI,gCAAoB,CACjD;QACI,kBAAkB,EAAE;YAChB,8BAA8B,EAAE,GAAG,EAAE,CAAC,cAAc;SACvD;QACD,eAAe,EAAE;YACb,oBAAoB,EAAE,GAAG,EAAE,CAAC,EAAE;SACjC;QACD,UAAU,EAAE;YACR,UAAU,EAAE,CAAC,MAAgB,EAAE,EAAE;gBAC7B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC9B,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;gBAExB,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;oBACzB,WAAW,EAAE,UAAU;oBACvB,OAAO,EAAE,SAAS;oBAClB,IAAI,EAAE,oCAA4B;iBACrC,CAAC,CAAC;YACP,CAAC;SACJ;KACyB,EAC9B;QACI,GAAG,MAAM;QACT,YAAY,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE;QACvC,YAAY,EAAE;YACV,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;YAC9B,0BAA0B,EAAE,IAAI;SACnC;KACyB,EAC9B,EAAqB,EACrB,EAAmB,EACnB,EAAmC,CACtC,CAAC;IAEF,MAAM,oBAAoB,CAAC,8BAA8B,EAAE,CAAC;AAChE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"feature-service-potentially-stale.test.js","sourceRoot":"","sources":["../../../src/lib/services/feature-service-potentially-stale.test.ts"],"names":[],"mappings":";;;;;AAAA,oCAKkB;AAClB,+DAAiE;AACjE,sFAA4D;AAK5D,IAAI,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;IACjE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,cAAc,GAAG;QACnB,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE;QAChE,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE;KACpE,CAAC;IAEF,MAAM,MAAM,GAAG,IAAA,8BAAgB,GAAE,CAAC;IAClC,MAAM,oBAAoB,GAAG,IAAI,gCAAoB,CACjD;QACI,kBAAkB,EAAE;YAChB,8BAA8B,EAAE,GAAG,EAAE,CAAC,cAAc;SACvD;QACD,eAAe,EAAE;YACb,oBAAoB,EAAE,GAAG,EAAE,CAAC,EAAE;SACjC;QACD,UAAU,EAAE;YACR,UAAU,EAAE,CAAC,MAAgB,EAAE,EAAE;gBAC7B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC9B,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;gBAExB,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;oBACzB,WAAW,EAAE,UAAU;oBACvB,OAAO,EAAE,SAAS;oBAClB,IAAI,EAAE,oCAA4B;iBACrC,CAAC,CAAC;YACP,CAAC;SACJ;KACyB,EAC9B;QACI,GAAG,MAAM;QACT,YAAY,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE;QACvC,YAAY,EAAE;YACV,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;SACjC;KACyB,EAC9B,EAAqB,EACrB,EAAmB,EACnB,EAAmC,CACtC,CAAC;IAEF,MAAM,oBAAoB,CAAC,8BAA8B,EAAE,CAAC;AAChE,CAAC,CAAC,CAAC"}
@@ -431,24 +431,17 @@ class FeatureToggleService {
431
431
  }
432
432
  async getClientFeatures(query) {
433
433
  const result = await this.featureToggleClientStore.getClient(query || {});
434
- if (this.flagResolver.isEnabled('cleanClientApi')) {
435
- return result.map(({ name, type, enabled, project, stale, strategies, variants, description, createdAt, lastSeenAt, impressionData, }) => ({
436
- name,
437
- type,
438
- enabled,
439
- project,
440
- stale,
441
- strategies,
442
- variants,
443
- description,
444
- createdAt,
445
- lastSeenAt,
446
- impressionData,
447
- }));
448
- }
449
- else {
450
- return result;
451
- }
434
+ return result.map(({ name, type, enabled, project, stale, strategies, variants, description, impressionData, }) => ({
435
+ name,
436
+ type,
437
+ enabled,
438
+ project,
439
+ stale,
440
+ strategies,
441
+ variants,
442
+ description,
443
+ impressionData,
444
+ }));
452
445
  }
453
446
  async getPlaygroundFeatures(query) {
454
447
  const result = await this.featureToggleClientStore.getPlayground(query || {});
@@ -479,8 +472,7 @@ class FeatureToggleService {
479
472
  this.logger.info(`${createdBy} creates feature toggle ${value.name}`);
480
473
  await this.validateName(value.name);
481
474
  const exists = await this.projectStore.hasProject(projectId);
482
- if (this.flagResolver.isEnabled('newProjectLayout') &&
483
- (await this.projectStore.isFeatureLimitReached(projectId))) {
475
+ if (await this.projectStore.isFeatureLimitReached(projectId)) {
484
476
  throw new invalid_operation_error_1.default('You have reached the maximum number of feature toggles for this project.');
485
477
  }
486
478
  if (exists) {
@@ -1014,16 +1006,14 @@ class FeatureToggleService {
1014
1006
  }
1015
1007
  async updatePotentiallyStaleFeatures() {
1016
1008
  const potentiallyStaleFeatures = await this.featureToggleStore.updatePotentiallyStaleFeatures();
1017
- if (this.flagResolver.isEnabled('emitPotentiallyStaleEvents')) {
1018
- if (potentiallyStaleFeatures.length > 0) {
1019
- return this.eventStore.batchStore(await Promise.all(potentiallyStaleFeatures
1020
- .filter((feature) => feature.potentiallyStale)
1021
- .map(async ({ name, project }) => new types_1.PotentiallyStaleOnEvent({
1022
- featureName: name,
1023
- project,
1024
- tags: await this.tagStore.getAllTagsForFeature(name),
1025
- }))));
1026
- }
1009
+ if (potentiallyStaleFeatures.length > 0) {
1010
+ return this.eventStore.batchStore(await Promise.all(potentiallyStaleFeatures
1011
+ .filter((feature) => feature.potentiallyStale)
1012
+ .map(async ({ name, project }) => new types_1.PotentiallyStaleOnEvent({
1013
+ featureName: name,
1014
+ project,
1015
+ tags: await this.tagStore.getAllTagsForFeature(name),
1016
+ }))));
1027
1017
  }
1028
1018
  }
1029
1019
  }