unleash-server 5.4.3 → 5.5.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 (586) hide show
  1. package/README.md +5 -3
  2. package/dist/lib/addons/addon-schema.js +2 -1
  3. package/dist/lib/addons/addon-schema.js.map +1 -1
  4. package/dist/lib/addons/datadog-definition.js +22 -7
  5. package/dist/lib/addons/datadog-definition.js.map +1 -1
  6. package/dist/lib/addons/datadog.d.ts +7 -1
  7. package/dist/lib/addons/datadog.js +16 -3
  8. package/dist/lib/addons/datadog.js.map +1 -1
  9. package/dist/lib/addons/datadog.test.js +62 -0
  10. package/dist/lib/addons/datadog.test.js.map +1 -1
  11. package/dist/lib/addons/index.js +3 -11
  12. package/dist/lib/addons/index.js.map +1 -1
  13. package/dist/lib/addons/slack-app-definition.js +5 -24
  14. package/dist/lib/addons/slack-app-definition.js.map +1 -1
  15. package/dist/lib/addons/slack-app.d.ts +0 -1
  16. package/dist/lib/addons/slack-app.js +5 -17
  17. package/dist/lib/addons/slack-app.js.map +1 -1
  18. package/dist/lib/addons/slack-app.test.js +39 -25
  19. package/dist/lib/addons/slack-app.test.js.map +1 -1
  20. package/dist/lib/addons/slack-definition.js +11 -4
  21. package/dist/lib/addons/slack-definition.js.map +1 -1
  22. package/dist/lib/addons/teams-definition.js +5 -4
  23. package/dist/lib/addons/teams-definition.js.map +1 -1
  24. package/dist/lib/addons/webhook-definition.js +10 -12
  25. package/dist/lib/addons/webhook-definition.js.map +1 -1
  26. package/dist/lib/create-config.js +13 -1
  27. package/dist/lib/create-config.js.map +1 -1
  28. package/dist/lib/create-config.test.js +14 -0
  29. package/dist/lib/create-config.test.js.map +1 -1
  30. package/dist/lib/db/access-store.d.ts +23 -5
  31. package/dist/lib/db/access-store.js +263 -17
  32. package/dist/lib/db/access-store.js.map +1 -1
  33. package/dist/lib/db/access-store.test.js +83 -0
  34. package/dist/lib/db/access-store.test.js.map +1 -0
  35. package/dist/lib/db/client-applications-store.d.ts +1 -3
  36. package/dist/lib/db/client-applications-store.js +13 -24
  37. package/dist/lib/db/client-applications-store.js.map +1 -1
  38. package/dist/lib/db/event-store.js +1 -0
  39. package/dist/lib/db/event-store.js.map +1 -1
  40. package/dist/lib/db/feature-toggle-client-store.js +17 -4
  41. package/dist/lib/db/feature-toggle-client-store.js.map +1 -1
  42. package/dist/lib/db/feature-toggle-store.js +1 -1
  43. package/dist/lib/db/feature-toggle-store.js.map +1 -1
  44. package/dist/lib/db/group-store.d.ts +4 -2
  45. package/dist/lib/db/group-store.js +24 -0
  46. package/dist/lib/db/group-store.js.map +1 -1
  47. package/dist/lib/db/index.d.ts +1 -2
  48. package/dist/lib/db/index.js +5 -1
  49. package/dist/lib/db/index.js.map +1 -1
  50. package/dist/lib/db/project-stats-store.d.ts +2 -0
  51. package/dist/lib/db/project-stats-store.js +27 -0
  52. package/dist/lib/db/project-stats-store.js.map +1 -1
  53. package/dist/lib/db/project-store.d.ts +7 -1
  54. package/dist/lib/db/project-store.js +34 -1
  55. package/dist/lib/db/project-store.js.map +1 -1
  56. package/dist/lib/error/bad-data-error.d.ts +1 -1
  57. package/dist/lib/error/index.d.ts +2 -1
  58. package/dist/lib/error/index.js +3 -1
  59. package/dist/lib/error/index.js.map +1 -1
  60. package/dist/lib/error/pattern-error.d.ts +10 -0
  61. package/dist/lib/error/pattern-error.js +20 -0
  62. package/dist/lib/error/pattern-error.js.map +1 -0
  63. package/dist/lib/features/dependent-features/createDependentFeaturesService.d.ts +3 -0
  64. package/dist/lib/features/dependent-features/createDependentFeaturesService.js +11 -0
  65. package/dist/lib/features/dependent-features/createDependentFeaturesService.js.map +1 -0
  66. package/dist/lib/features/dependent-features/dependent-features-controller.d.ts +28 -0
  67. package/dist/lib/features/dependent-features/dependent-features-controller.js +151 -0
  68. package/dist/lib/features/dependent-features/dependent-features-controller.js.map +1 -0
  69. package/dist/lib/features/dependent-features/dependent-features-service.d.ts +11 -0
  70. package/dist/lib/features/dependent-features/dependent-features-service.js +40 -0
  71. package/dist/lib/features/dependent-features/dependent-features-service.js.map +1 -0
  72. package/dist/lib/features/dependent-features/dependent-features-store-type.d.ts +8 -0
  73. package/dist/lib/features/dependent-features/dependent-features-store-type.js +3 -0
  74. package/dist/lib/features/dependent-features/dependent-features-store-type.js.map +1 -0
  75. package/dist/lib/features/dependent-features/dependent-features-store.d.ts +12 -0
  76. package/dist/lib/features/dependent-features/dependent-features-store.js +56 -0
  77. package/dist/lib/features/dependent-features/dependent-features-store.js.map +1 -0
  78. package/dist/lib/features/dependent-features/dependent-features.d.ts +14 -0
  79. package/dist/lib/features/dependent-features/dependent-features.js +3 -0
  80. package/dist/lib/features/dependent-features/dependent-features.js.map +1 -0
  81. package/dist/lib/features/dependent-features/dependent.features.e2e.test.d.ts +1 -0
  82. package/dist/lib/features/dependent-features/dependent.features.e2e.test.js +82 -0
  83. package/dist/lib/features/dependent-features/dependent.features.e2e.test.js.map +1 -0
  84. package/dist/lib/features/dependent-features/fake-dependent-features-store.d.ts +8 -0
  85. package/dist/lib/features/dependent-features/fake-dependent-features-store.js +22 -0
  86. package/dist/lib/features/dependent-features/fake-dependent-features-store.js.map +1 -0
  87. package/dist/lib/features/export-import-toggles/createExportImportService.js +6 -3
  88. package/dist/lib/features/export-import-toggles/createExportImportService.js.map +1 -1
  89. package/dist/lib/features/export-import-toggles/export-import-service.d.ts +9 -3
  90. package/dist/lib/features/export-import-toggles/export-import-service.js +51 -21
  91. package/dist/lib/features/export-import-toggles/export-import-service.js.map +1 -1
  92. package/dist/lib/features/export-import-toggles/export-import.e2e.test.js +120 -50
  93. package/dist/lib/features/export-import-toggles/export-import.e2e.test.js.map +1 -1
  94. package/dist/lib/features/export-import-toggles/import-permissions-service.d.ts +1 -2
  95. package/dist/lib/features/export-import-toggles/import-toggles-store-type.d.ts +6 -0
  96. package/dist/lib/features/export-import-toggles/import-toggles-store.d.ts +2 -1
  97. package/dist/lib/features/export-import-toggles/import-toggles-store.js +25 -0
  98. package/dist/lib/features/export-import-toggles/import-toggles-store.js.map +1 -1
  99. package/dist/lib/features/export-import-toggles/import-validation-messages.d.ts +18 -2
  100. package/dist/lib/features/export-import-toggles/import-validation-messages.js +27 -11
  101. package/dist/lib/features/export-import-toggles/import-validation-messages.js.map +1 -1
  102. package/dist/lib/features/feature-naming-pattern/feature-naming-validation.d.ts +14 -0
  103. package/dist/lib/features/feature-naming-pattern/feature-naming-validation.js +46 -0
  104. package/dist/lib/features/feature-naming-pattern/feature-naming-validation.js.map +1 -0
  105. package/dist/lib/features/feature-naming-pattern/feature-naming-validation.test.d.ts +1 -0
  106. package/dist/lib/features/feature-naming-pattern/feature-naming-validation.test.js +116 -0
  107. package/dist/lib/features/feature-naming-pattern/feature-naming-validation.test.js.map +1 -0
  108. package/dist/lib/features/feature-toggle/createFeatureToggleService.js +11 -2
  109. package/dist/lib/features/feature-toggle/createFeatureToggleService.js.map +1 -1
  110. package/dist/lib/features/instance-stats/getActiveUsers.d.ts +9 -0
  111. package/dist/lib/features/instance-stats/getActiveUsers.e2e.test.d.ts +1 -0
  112. package/dist/lib/features/instance-stats/getActiveUsers.e2e.test.js +141 -0
  113. package/dist/lib/features/instance-stats/getActiveUsers.e2e.test.js.map +1 -0
  114. package/dist/lib/features/instance-stats/getActiveUsers.js +33 -0
  115. package/dist/lib/features/instance-stats/getActiveUsers.js.map +1 -0
  116. package/dist/lib/{services → features/instance-stats}/instance-stats-service.d.ts +13 -7
  117. package/dist/lib/{services → features/instance-stats}/instance-stats-service.js +16 -7
  118. package/dist/lib/features/instance-stats/instance-stats-service.js.map +1 -0
  119. package/dist/lib/features/instance-stats/instance-stats-service.test.d.ts +1 -0
  120. package/dist/lib/{services → features/instance-stats}/instance-stats-service.test.js +6 -5
  121. package/dist/lib/features/instance-stats/instance-stats-service.test.js.map +1 -0
  122. package/dist/lib/features/playground/advanced-playground.test.js +2 -3
  123. package/dist/lib/features/playground/advanced-playground.test.js.map +1 -1
  124. package/dist/lib/features/playground/feature-evaluator/variant.d.ts +1 -1
  125. package/dist/lib/features/playground/generateObjectCombinations.d.ts +1 -1
  126. package/dist/lib/features/playground/generateObjectCombinations.js +14 -4
  127. package/dist/lib/features/playground/generateObjectCombinations.js.map +1 -1
  128. package/dist/lib/features/playground/generateObjectCombinations.test.js +21 -0
  129. package/dist/lib/features/playground/generateObjectCombinations.test.js.map +1 -1
  130. package/dist/lib/features/playground/playground-service.d.ts +5 -3
  131. package/dist/lib/features/playground/playground-service.js +18 -3
  132. package/dist/lib/features/playground/playground-service.js.map +1 -1
  133. package/dist/lib/features/playground/playground.d.ts +2 -1
  134. package/dist/lib/features/playground/playground.js +2 -1
  135. package/dist/lib/features/playground/playground.js.map +1 -1
  136. package/dist/lib/features/private-project/createPrivateProjectChecker.d.ts +5 -0
  137. package/dist/lib/features/private-project/createPrivateProjectChecker.js +22 -0
  138. package/dist/lib/features/private-project/createPrivateProjectChecker.js.map +1 -0
  139. package/dist/lib/features/private-project/fakePrivateProjectChecker.d.ts +7 -0
  140. package/dist/lib/features/private-project/fakePrivateProjectChecker.js +15 -0
  141. package/dist/lib/features/private-project/fakePrivateProjectChecker.js.map +1 -0
  142. package/dist/lib/features/private-project/privateProjectChecker.d.ts +10 -0
  143. package/dist/lib/features/private-project/privateProjectChecker.js +22 -0
  144. package/dist/lib/features/private-project/privateProjectChecker.js.map +1 -0
  145. package/dist/lib/features/private-project/privateProjectCheckerType.d.ts +5 -0
  146. package/dist/lib/features/private-project/privateProjectCheckerType.js +3 -0
  147. package/dist/lib/features/private-project/privateProjectCheckerType.js.map +1 -0
  148. package/dist/lib/features/private-project/privateProjectStore.d.ts +18 -0
  149. package/dist/lib/features/private-project/privateProjectStore.js +70 -0
  150. package/dist/lib/features/private-project/privateProjectStore.js.map +1 -0
  151. package/dist/lib/features/private-project/privateProjectStoreType.d.ts +4 -0
  152. package/dist/lib/features/private-project/privateProjectStoreType.js +3 -0
  153. package/dist/lib/features/private-project/privateProjectStoreType.js.map +1 -0
  154. package/dist/lib/features/project/createProjectService.js +5 -8
  155. package/dist/lib/features/project/createProjectService.js.map +1 -1
  156. package/dist/lib/features/segment/createSegmentService.js +5 -2
  157. package/dist/lib/features/segment/createSegmentService.js.map +1 -1
  158. package/dist/lib/features/segment/segment-controller.d.ts +39 -0
  159. package/dist/lib/features/segment/segment-controller.js +291 -0
  160. package/dist/lib/features/segment/segment-controller.js.map +1 -0
  161. package/dist/lib/metrics.d.ts +1 -1
  162. package/dist/lib/metrics.js +30 -1
  163. package/dist/lib/metrics.js.map +1 -1
  164. package/dist/lib/metrics.test.js +3 -2
  165. package/dist/lib/metrics.test.js.map +1 -1
  166. package/dist/lib/middleware/rbac-middleware.d.ts +2 -0
  167. package/dist/lib/middleware/rbac-middleware.js +2 -0
  168. package/dist/lib/middleware/rbac-middleware.js.map +1 -1
  169. package/dist/lib/middleware/secure-headers.js +18 -0
  170. package/dist/lib/middleware/secure-headers.js.map +1 -1
  171. package/dist/lib/openapi/index.js +13 -0
  172. package/dist/lib/openapi/index.js.map +1 -1
  173. package/dist/lib/openapi/meta-schema-rules.test.js +14 -4
  174. package/dist/lib/openapi/meta-schema-rules.test.js.map +1 -1
  175. package/dist/lib/openapi/spec/addon-type-schema.d.ts +6 -1
  176. package/dist/lib/openapi/spec/addon-type-schema.js +6 -1
  177. package/dist/lib/openapi/spec/addon-type-schema.js.map +1 -1
  178. package/dist/lib/openapi/spec/addons-schema.d.ts +8 -3
  179. package/dist/lib/openapi/spec/addons-schema.js +8 -3
  180. package/dist/lib/openapi/spec/addons-schema.js.map +1 -1
  181. package/dist/lib/openapi/spec/admin-segment-schema.d.ts +115 -0
  182. package/dist/lib/openapi/spec/admin-segment-schema.js +75 -0
  183. package/dist/lib/openapi/spec/admin-segment-schema.js.map +1 -0
  184. package/dist/lib/openapi/spec/admin-segment-schema.test.d.ts +1 -0
  185. package/dist/lib/openapi/spec/admin-segment-schema.test.js +39 -0
  186. package/dist/lib/openapi/spec/admin-segment-schema.test.js.map +1 -0
  187. package/dist/lib/openapi/spec/admin-strategies-schema.d.ts +46 -0
  188. package/dist/lib/openapi/spec/admin-strategies-schema.js +54 -0
  189. package/dist/lib/openapi/spec/admin-strategies-schema.js.map +1 -0
  190. package/dist/lib/openapi/spec/admin-strategies-schema.test.d.ts +1 -0
  191. package/dist/lib/openapi/spec/admin-strategies-schema.test.js +40 -0
  192. package/dist/lib/openapi/spec/admin-strategies-schema.test.js.map +1 -0
  193. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.d.ts +51 -6
  194. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.js +3 -1
  195. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.js.map +1 -1
  196. package/dist/lib/openapi/spec/advanced-playground-feature-schema.d.ts +101 -11
  197. package/dist/lib/openapi/spec/advanced-playground-feature-schema.js +2 -0
  198. package/dist/lib/openapi/spec/advanced-playground-feature-schema.js.map +1 -1
  199. package/dist/lib/openapi/spec/advanced-playground-request-schema.d.ts +1 -0
  200. package/dist/lib/openapi/spec/advanced-playground-response-schema.d.ts +203 -22
  201. package/dist/lib/openapi/spec/advanced-playground-response-schema.js +2 -0
  202. package/dist/lib/openapi/spec/advanced-playground-response-schema.js.map +1 -1
  203. package/dist/lib/openapi/spec/client-feature-schema.d.ts +41 -6
  204. package/dist/lib/openapi/spec/client-feature-schema.js +9 -0
  205. package/dist/lib/openapi/spec/client-feature-schema.js.map +1 -1
  206. package/dist/lib/openapi/spec/client-features-schema.d.ts +75 -12
  207. package/dist/lib/openapi/spec/client-features-schema.js +2 -0
  208. package/dist/lib/openapi/spec/client-features-schema.js.map +1 -1
  209. package/dist/lib/openapi/spec/context-field-strategies-schema.d.ts +1 -1
  210. package/dist/lib/openapi/spec/context-field-strategies-schema.js +1 -1
  211. package/dist/lib/openapi/spec/context-field-strategies-schema.js.map +1 -1
  212. package/dist/lib/openapi/spec/create-api-token-schema.d.ts +1 -139
  213. package/dist/lib/openapi/spec/create-api-token-schema.js +16 -20
  214. package/dist/lib/openapi/spec/create-api-token-schema.js.map +1 -1
  215. package/dist/lib/openapi/spec/create-dependent-feature-schema.d.ts +29 -0
  216. package/dist/lib/openapi/spec/create-dependent-feature-schema.js +31 -0
  217. package/dist/lib/openapi/spec/create-dependent-feature-schema.js.map +1 -0
  218. package/dist/lib/openapi/spec/create-feature-naming-pattern-schema.d.ts +29 -0
  219. package/dist/lib/openapi/spec/create-feature-naming-pattern-schema.js +33 -0
  220. package/dist/lib/openapi/spec/create-feature-naming-pattern-schema.js.map +1 -0
  221. package/dist/lib/openapi/spec/create-feature-strategy-schema.d.ts +2 -2
  222. package/dist/lib/openapi/spec/create-strategy-schema.d.ts +15 -0
  223. package/dist/lib/openapi/spec/create-strategy-schema.js +15 -0
  224. package/dist/lib/openapi/spec/create-strategy-schema.js.map +1 -1
  225. package/dist/lib/openapi/spec/create-strategy-variant-schema.d.ts +2 -2
  226. package/dist/lib/openapi/spec/create-strategy-variant-schema.js +2 -2
  227. package/dist/lib/openapi/spec/create-strategy-variant-schema.js.map +1 -1
  228. package/dist/lib/openapi/spec/dependent-feature-schema.d.ts +30 -0
  229. package/dist/lib/openapi/spec/dependent-feature-schema.js +14 -0
  230. package/dist/lib/openapi/spec/dependent-feature-schema.js.map +1 -0
  231. package/dist/lib/openapi/spec/dora-features-schema.d.ts +20 -0
  232. package/dist/lib/openapi/spec/dora-features-schema.js +22 -0
  233. package/dist/lib/openapi/spec/dora-features-schema.js.map +1 -0
  234. package/dist/lib/openapi/spec/environment-project-schema.d.ts +4 -4
  235. package/dist/lib/openapi/spec/environments-project-schema.d.ts +4 -4
  236. package/dist/lib/openapi/spec/event-schema.d.ts +3 -3
  237. package/dist/lib/openapi/spec/events-schema.d.ts +3 -3
  238. package/dist/lib/openapi/spec/export-query-schema.d.ts +22 -15
  239. package/dist/lib/openapi/spec/export-query-schema.js +16 -15
  240. package/dist/lib/openapi/spec/export-query-schema.js.map +1 -1
  241. package/dist/lib/openapi/spec/export-result-schema.d.ts +26 -26
  242. package/dist/lib/openapi/spec/feature-environment-schema.d.ts +6 -6
  243. package/dist/lib/openapi/spec/feature-events-schema.d.ts +3 -3
  244. package/dist/lib/openapi/spec/feature-schema.d.ts +12 -12
  245. package/dist/lib/openapi/spec/feature-strategy-schema.d.ts +2 -2
  246. package/dist/lib/openapi/spec/feature-variants-schema.d.ts +2 -2
  247. package/dist/lib/openapi/spec/features-schema.d.ts +24 -24
  248. package/dist/lib/openapi/spec/health-overview-schema.d.ts +63 -33
  249. package/dist/lib/openapi/spec/health-overview-schema.js +6 -1
  250. package/dist/lib/openapi/spec/health-overview-schema.js.map +1 -1
  251. package/dist/lib/openapi/spec/health-report-schema.d.ts +63 -33
  252. package/dist/lib/openapi/spec/import-toggles-schema.d.ts +52 -52
  253. package/dist/lib/openapi/spec/index.d.ts +9 -0
  254. package/dist/lib/openapi/spec/index.js +9 -0
  255. package/dist/lib/openapi/spec/index.js.map +1 -1
  256. package/dist/lib/openapi/spec/instance-admin-stats-schema.d.ts +42 -0
  257. package/dist/lib/openapi/spec/instance-admin-stats-schema.js +42 -0
  258. package/dist/lib/openapi/spec/instance-admin-stats-schema.js.map +1 -1
  259. package/dist/lib/openapi/spec/parent-feature-options-schema.d.ts +11 -0
  260. package/dist/lib/openapi/spec/parent-feature-options-schema.js +13 -0
  261. package/dist/lib/openapi/spec/parent-feature-options-schema.js.map +1 -0
  262. package/dist/lib/openapi/spec/playground-feature-schema.d.ts +5 -5
  263. package/dist/lib/openapi/spec/playground-request-schema.d.ts +1 -0
  264. package/dist/lib/openapi/spec/playground-response-schema.d.ts +12 -10
  265. package/dist/lib/openapi/spec/playground-strategy-schema.d.ts +4 -4
  266. package/dist/lib/openapi/spec/playground-strategy-schema.js +1 -1
  267. package/dist/lib/openapi/spec/playground-strategy-schema.js.map +1 -1
  268. package/dist/lib/openapi/spec/profile-schema.d.ts +12 -12
  269. package/dist/lib/openapi/spec/project-dora-metrics-schema.d.ts +44 -0
  270. package/dist/lib/openapi/spec/project-dora-metrics-schema.js +28 -0
  271. package/dist/lib/openapi/spec/project-dora-metrics-schema.js.map +1 -0
  272. package/dist/lib/openapi/spec/project-environment-schema.d.ts +4 -4
  273. package/dist/lib/openapi/spec/project-overview-schema.d.ts +63 -33
  274. package/dist/lib/openapi/spec/project-overview-schema.js +6 -1
  275. package/dist/lib/openapi/spec/project-overview-schema.js.map +1 -1
  276. package/dist/lib/openapi/spec/project-schema.d.ts +1 -1
  277. package/dist/lib/openapi/spec/project-schema.js +1 -1
  278. package/dist/lib/openapi/spec/project-schema.js.map +1 -1
  279. package/dist/lib/openapi/spec/projects-schema.d.ts +1 -1
  280. package/dist/lib/openapi/spec/push-variants-schema.d.ts +2 -2
  281. package/dist/lib/openapi/spec/sdk-context-schema.d.ts +1 -0
  282. package/dist/lib/openapi/spec/sdk-context-schema.js +1 -0
  283. package/dist/lib/openapi/spec/sdk-context-schema.js.map +1 -1
  284. package/dist/lib/openapi/spec/sdk-flat-context-schema.d.ts +46 -0
  285. package/dist/lib/openapi/spec/sdk-flat-context-schema.js +15 -0
  286. package/dist/lib/openapi/spec/sdk-flat-context-schema.js.map +1 -0
  287. package/dist/lib/openapi/spec/search-events-schema.d.ts +1 -1
  288. package/dist/lib/openapi/spec/segments-schema.d.ts +177 -0
  289. package/dist/lib/openapi/spec/segments-schema.js +26 -0
  290. package/dist/lib/openapi/spec/segments-schema.js.map +1 -0
  291. package/dist/lib/openapi/spec/segments-schema.test.d.ts +1 -0
  292. package/dist/lib/openapi/spec/segments-schema.test.js +16 -0
  293. package/dist/lib/openapi/spec/segments-schema.test.js.map +1 -0
  294. package/dist/lib/openapi/spec/state-schema.d.ts +23 -23
  295. package/dist/lib/openapi/spec/strategy-variant-schema.d.ts +2 -2
  296. package/dist/lib/openapi/spec/update-feature-strategy-segments-schema.d.ts +35 -0
  297. package/dist/lib/openapi/spec/update-feature-strategy-segments-schema.js +37 -0
  298. package/dist/lib/openapi/spec/update-feature-strategy-segments-schema.js.map +1 -0
  299. package/dist/lib/openapi/spec/update-feature-strategy-segments-schema.test.d.ts +1 -0
  300. package/dist/lib/openapi/spec/update-feature-strategy-segments-schema.test.js +19 -0
  301. package/dist/lib/openapi/spec/update-feature-strategy-segments-schema.test.js.map +1 -0
  302. package/dist/lib/openapi/spec/upsert-segment-schema.d.ts +8 -15
  303. package/dist/lib/openapi/spec/upsert-segment-schema.js +8 -17
  304. package/dist/lib/openapi/spec/upsert-segment-schema.js.map +1 -1
  305. package/dist/lib/openapi/spec/upsert-segment-schema.test.d.ts +1 -0
  306. package/dist/lib/openapi/spec/upsert-segment-schema.test.js +35 -0
  307. package/dist/lib/openapi/spec/upsert-segment-schema.test.js.map +1 -0
  308. package/dist/lib/openapi/spec/validate-feature-schema.d.ts +6 -0
  309. package/dist/lib/openapi/spec/validate-feature-schema.js +6 -0
  310. package/dist/lib/openapi/spec/validate-feature-schema.js.map +1 -1
  311. package/dist/lib/openapi/spec/variant-schema.d.ts +2 -2
  312. package/dist/lib/openapi/spec/variant-schema.js +2 -2
  313. package/dist/lib/openapi/spec/variant-schema.js.map +1 -1
  314. package/dist/lib/openapi/spec/variants-schema.d.ts +2 -2
  315. package/dist/lib/openapi/util/all-of.d.ts +3 -0
  316. package/dist/lib/openapi/util/all-of.js +34 -0
  317. package/dist/lib/openapi/util/all-of.js.map +1 -0
  318. package/dist/lib/openapi/util/openapi-tags.d.ts +46 -58
  319. package/dist/lib/openapi/util/openapi-tags.js +27 -34
  320. package/dist/lib/openapi/util/openapi-tags.js.map +1 -1
  321. package/dist/lib/openapi/util/openapi-tags.test.d.ts +1 -0
  322. package/dist/lib/openapi/util/openapi-tags.test.js +15 -0
  323. package/dist/lib/openapi/util/openapi-tags.test.js.map +1 -0
  324. package/dist/lib/openapi/validate.js +0 -1
  325. package/dist/lib/openapi/validate.js.map +1 -1
  326. package/dist/lib/routes/admin-api/archive.d.ts +1 -1
  327. package/dist/lib/routes/admin-api/archive.js +3 -2
  328. package/dist/lib/routes/admin-api/archive.js.map +1 -1
  329. package/dist/lib/routes/admin-api/context.js +2 -1
  330. package/dist/lib/routes/admin-api/context.js.map +1 -1
  331. package/dist/lib/routes/admin-api/feature.js +2 -1
  332. package/dist/lib/routes/admin-api/feature.js.map +1 -1
  333. package/dist/lib/routes/admin-api/index.js +2 -0
  334. package/dist/lib/routes/admin-api/index.js.map +1 -1
  335. package/dist/lib/routes/admin-api/instance-admin.d.ts +2 -2
  336. package/dist/lib/routes/admin-api/instance-admin.js +7 -1
  337. package/dist/lib/routes/admin-api/instance-admin.js.map +1 -1
  338. package/dist/lib/routes/admin-api/metrics.d.ts +2 -1
  339. package/dist/lib/routes/admin-api/metrics.js +2 -1
  340. package/dist/lib/routes/admin-api/metrics.js.map +1 -1
  341. package/dist/lib/routes/admin-api/project/api-token.d.ts +2 -1
  342. package/dist/lib/routes/admin-api/project/api-token.js +12 -3
  343. package/dist/lib/routes/admin-api/project/api-token.js.map +1 -1
  344. package/dist/lib/routes/admin-api/project/environments.d.ts +2 -1
  345. package/dist/lib/routes/admin-api/project/environments.js +3 -1
  346. package/dist/lib/routes/admin-api/project/environments.js.map +1 -1
  347. package/dist/lib/routes/admin-api/project/index.d.ts +2 -1
  348. package/dist/lib/routes/admin-api/project/index.js +31 -0
  349. package/dist/lib/routes/admin-api/project/index.js.map +1 -1
  350. package/dist/lib/routes/admin-api/strategy.d.ts +1 -1
  351. package/dist/lib/routes/admin-api/strategy.js.map +1 -1
  352. package/dist/lib/routes/client-api/metrics.js +14 -8
  353. package/dist/lib/routes/client-api/metrics.js.map +1 -1
  354. package/dist/lib/routes/client-api/metrics.test.js +27 -0
  355. package/dist/lib/routes/client-api/metrics.test.js.map +1 -1
  356. package/dist/lib/routes/controller.d.ts +1 -1
  357. package/dist/lib/routes/controller.js +17 -10
  358. package/dist/lib/routes/controller.js.map +1 -1
  359. package/dist/lib/routes/proxy-api/index.js +5 -0
  360. package/dist/lib/routes/proxy-api/index.js.map +1 -1
  361. package/dist/lib/schema/role-schema.js +3 -1
  362. package/dist/lib/schema/role-schema.js.map +1 -1
  363. package/dist/lib/schema/role-schema.test.js +1 -1
  364. package/dist/lib/schema/role-schema.test.js.map +1 -1
  365. package/dist/lib/segments/segment-service-interface.d.ts +1 -1
  366. package/dist/lib/services/access-service.d.ts +29 -11
  367. package/dist/lib/services/access-service.js +53 -10
  368. package/dist/lib/services/access-service.js.map +1 -1
  369. package/dist/lib/services/access-service.test.js +2 -1
  370. package/dist/lib/services/access-service.test.js.map +1 -1
  371. package/dist/lib/services/addon-service.js +4 -2
  372. package/dist/lib/services/addon-service.js.map +1 -1
  373. package/dist/lib/services/addon-service.test.js +65 -0
  374. package/dist/lib/services/addon-service.test.js.map +1 -1
  375. package/dist/lib/services/client-metrics/instance-service.d.ts +5 -2
  376. package/dist/lib/services/client-metrics/instance-service.js +22 -3
  377. package/dist/lib/services/client-metrics/instance-service.js.map +1 -1
  378. package/dist/lib/services/client-metrics/instance-service.test.js +5 -4
  379. package/dist/lib/services/client-metrics/instance-service.test.js.map +1 -1
  380. package/dist/lib/services/context-service.d.ts +6 -2
  381. package/dist/lib/services/context-service.js +16 -2
  382. package/dist/lib/services/context-service.js.map +1 -1
  383. package/dist/lib/services/feature-service-potentially-stale.test.js +1 -1
  384. package/dist/lib/services/feature-service-potentially-stale.test.js.map +1 -1
  385. package/dist/lib/services/feature-toggle-service.d.ts +20 -7
  386. package/dist/lib/services/feature-toggle-service.js +109 -41
  387. package/dist/lib/services/feature-toggle-service.js.map +1 -1
  388. package/dist/lib/services/group-service.d.ts +4 -4
  389. package/dist/lib/services/group-service.js +17 -16
  390. package/dist/lib/services/group-service.js.map +1 -1
  391. package/dist/lib/services/index.d.ts +3 -2
  392. package/dist/lib/services/index.js +31 -17
  393. package/dist/lib/services/index.js.map +1 -1
  394. package/dist/lib/services/project-schema.js +9 -1
  395. package/dist/lib/services/project-schema.js.map +1 -1
  396. package/dist/lib/services/project-service.d.ts +16 -12
  397. package/dist/lib/services/project-service.js +127 -17
  398. package/dist/lib/services/project-service.js.map +1 -1
  399. package/dist/lib/services/scheduler-service.d.ts +1 -1
  400. package/dist/lib/services/scheduler-service.js +3 -3
  401. package/dist/lib/services/scheduler-service.js.map +1 -1
  402. package/dist/lib/services/scheduler-service.test.js +15 -15
  403. package/dist/lib/services/scheduler-service.test.js.map +1 -1
  404. package/dist/lib/services/segment-service.d.ts +4 -2
  405. package/dist/lib/services/segment-service.js +17 -10
  406. package/dist/lib/services/segment-service.js.map +1 -1
  407. package/dist/lib/services/state-service.test.js +13 -3
  408. package/dist/lib/services/state-service.test.js.map +1 -1
  409. package/dist/lib/services/version-service.test.js +3 -0
  410. package/dist/lib/services/version-service.test.js.map +1 -1
  411. package/dist/lib/types/events.d.ts +61 -1
  412. package/dist/lib/types/events.js +66 -4
  413. package/dist/lib/types/events.js.map +1 -1
  414. package/dist/lib/types/experimental.d.ts +1 -1
  415. package/dist/lib/types/experimental.js +9 -5
  416. package/dist/lib/types/experimental.js.map +1 -1
  417. package/dist/lib/types/group.d.ts +2 -2
  418. package/dist/lib/types/model.d.ts +31 -2
  419. package/dist/lib/types/model.js.map +1 -1
  420. package/dist/lib/types/no-auth-user.d.ts +1 -0
  421. package/dist/lib/types/no-auth-user.js +3 -1
  422. package/dist/lib/types/no-auth-user.js.map +1 -1
  423. package/dist/lib/types/option.d.ts +7 -0
  424. package/dist/lib/types/services.d.ts +6 -1
  425. package/dist/lib/types/stores/access-store.d.ts +23 -4
  426. package/dist/lib/types/stores/feature-strategies-store.d.ts +2 -1
  427. package/dist/lib/types/stores/group-store.d.ts +4 -2
  428. package/dist/lib/types/stores/project-stats-store-type.d.ts +2 -0
  429. package/dist/lib/types/stores/project-store.d.ts +7 -14
  430. package/dist/lib/types/stores/strategy-store.d.ts +3 -17
  431. package/dist/lib/types/stores.d.ts +5 -1
  432. package/dist/lib/util/findDuplicates.d.ts +1 -0
  433. package/dist/lib/util/findDuplicates.js +18 -0
  434. package/dist/lib/util/findDuplicates.js.map +1 -0
  435. package/dist/lib/util/findDuplicates.test.d.ts +1 -0
  436. package/dist/lib/util/findDuplicates.test.js +23 -0
  437. package/dist/lib/util/findDuplicates.test.js.map +1 -0
  438. package/dist/migrations/20230830121352-update-client-applications-usage-table.d.ts +2 -0
  439. package/dist/migrations/20230830121352-update-client-applications-usage-table.js +16 -0
  440. package/dist/migrations/20230830121352-update-client-applications-usage-table.js.map +1 -0
  441. package/dist/migrations/20230905122605-add-feature-naming-description.d.ts +2 -0
  442. package/dist/migrations/20230905122605-add-feature-naming-description.js +13 -0
  443. package/dist/migrations/20230905122605-add-feature-naming-description.js.map +1 -0
  444. package/dist/migrations/20230919104006-dependent-features.d.ts +2 -0
  445. package/dist/migrations/20230919104006-dependent-features.js +21 -0
  446. package/dist/migrations/20230919104006-dependent-features.js.map +1 -0
  447. package/dist/migrations/20230927071830-reset-pnps-feedback.d.ts +2 -0
  448. package/dist/migrations/20230927071830-reset-pnps-feedback.js +10 -0
  449. package/dist/migrations/20230927071830-reset-pnps-feedback.js.map +1 -0
  450. package/dist/server-dev.js +7 -4
  451. package/dist/server-dev.js.map +1 -1
  452. package/dist/test/e2e/api/admin/addon.e2e.test.js +0 -1
  453. package/dist/test/e2e/api/admin/addon.e2e.test.js.map +1 -1
  454. package/dist/test/e2e/api/admin/api-token.auth.e2e.test.js +8 -12
  455. package/dist/test/e2e/api/admin/api-token.auth.e2e.test.js.map +1 -1
  456. package/dist/test/e2e/api/admin/event.e2e.test.js +9 -2
  457. package/dist/test/e2e/api/admin/event.e2e.test.js.map +1 -1
  458. package/dist/test/e2e/api/admin/metrics.e2e.test.js +2 -10
  459. package/dist/test/e2e/api/admin/metrics.e2e.test.js.map +1 -1
  460. package/dist/test/e2e/api/admin/project/environments.e2e.test.js +8 -0
  461. package/dist/test/e2e/api/admin/project/environments.e2e.test.js.map +1 -1
  462. package/dist/test/e2e/api/admin/project/features.e2e.test.js +41 -15
  463. package/dist/test/e2e/api/admin/project/features.e2e.test.js.map +1 -1
  464. package/dist/test/e2e/api/admin/project/project.api.tokens.e2e.test.js +30 -3
  465. package/dist/test/e2e/api/admin/project/project.api.tokens.e2e.test.js.map +1 -1
  466. package/dist/test/e2e/api/admin/segment.e2e.test.d.ts +1 -0
  467. package/dist/test/e2e/api/admin/segment.e2e.test.js +272 -0
  468. package/dist/test/e2e/api/admin/segment.e2e.test.js.map +1 -0
  469. package/dist/test/e2e/api/admin/state.e2e.test.js +0 -11
  470. package/dist/test/e2e/api/admin/state.e2e.test.js.map +1 -1
  471. package/dist/test/e2e/api/admin/strategy.e2e.test.js +1 -1
  472. package/dist/test/e2e/api/client/feature.e2e.test.js +27 -3
  473. package/dist/test/e2e/api/client/feature.e2e.test.js.map +1 -1
  474. package/dist/test/e2e/api/client/feature.token.access.e2e.test.js +2 -2
  475. package/dist/test/e2e/api/client/feature.token.access.e2e.test.js.map +1 -1
  476. package/dist/test/e2e/api/client/segment.e2e.test.js +1 -1
  477. package/dist/test/e2e/api/client/segment.e2e.test.js.map +1 -1
  478. package/dist/test/e2e/api/proxy/proxy.e2e.test.js +34 -9
  479. package/dist/test/e2e/api/proxy/proxy.e2e.test.js.map +1 -1
  480. package/dist/test/e2e/helpers/app.utils.d.ts +6 -0
  481. package/dist/test/e2e/helpers/app.utils.js +16 -0
  482. package/dist/test/e2e/helpers/app.utils.js.map +1 -0
  483. package/dist/test/e2e/helpers/database.json +24 -0
  484. package/dist/test/e2e/services/access-service.e2e.test.js +549 -135
  485. package/dist/test/e2e/services/access-service.e2e.test.js.map +1 -1
  486. package/dist/test/e2e/services/api-token-service.e2e.test.js +4 -2
  487. package/dist/test/e2e/services/api-token-service.e2e.test.js.map +1 -1
  488. package/dist/test/e2e/services/client-metrics-service.e2e.test.js +2 -1
  489. package/dist/test/e2e/services/client-metrics-service.e2e.test.js.map +1 -1
  490. package/dist/test/e2e/services/feature-toggle-service-v2.e2e.test.js +38 -5
  491. package/dist/test/e2e/services/feature-toggle-service-v2.e2e.test.js.map +1 -1
  492. package/dist/test/e2e/services/group-service.e2e.test.js +16 -11
  493. package/dist/test/e2e/services/group-service.e2e.test.js.map +1 -1
  494. package/dist/test/e2e/services/playground-service.test.js +5 -2
  495. package/dist/test/e2e/services/playground-service.test.js.map +1 -1
  496. package/dist/test/e2e/services/project-health-service.e2e.test.js +4 -2
  497. package/dist/test/e2e/services/project-health-service.e2e.test.js.map +1 -1
  498. package/dist/test/e2e/services/project-service.e2e.test.js +242 -60
  499. package/dist/test/e2e/services/project-service.e2e.test.js.map +1 -1
  500. package/dist/test/fixtures/access-service-mock.d.ts +3 -4
  501. package/dist/test/fixtures/access-service-mock.js.map +1 -1
  502. package/dist/test/fixtures/fake-access-store.d.ts +15 -5
  503. package/dist/test/fixtures/fake-access-store.js +30 -3
  504. package/dist/test/fixtures/fake-access-store.js.map +1 -1
  505. package/dist/test/fixtures/fake-group-store.d.ts +4 -2
  506. package/dist/test/fixtures/fake-group-store.js +3 -0
  507. package/dist/test/fixtures/fake-group-store.js.map +1 -1
  508. package/dist/test/fixtures/fake-project-stats-store.d.ts +1 -0
  509. package/dist/test/fixtures/fake-project-stats-store.js +3 -0
  510. package/dist/test/fixtures/fake-project-stats-store.js.map +1 -1
  511. package/dist/test/fixtures/fake-project-store.d.ts +2 -1
  512. package/dist/test/fixtures/fake-project-store.js +3 -0
  513. package/dist/test/fixtures/fake-project-store.js.map +1 -1
  514. package/dist/test/fixtures/no-logger.d.ts +2 -1
  515. package/dist/test/fixtures/no-logger.js +8 -4
  516. package/dist/test/fixtures/no-logger.js.map +1 -1
  517. package/dist/test/fixtures/store.js +3 -0
  518. package/dist/test/fixtures/store.js.map +1 -1
  519. package/frontend/README.md +7 -1
  520. package/frontend/build/index.html +2 -2
  521. package/frontend/build/static/{AdvancedPlayground-1748fcdd.js → AdvancedPlayground-20059178.js} +11 -11
  522. package/frontend/build/static/CreateProject-6955728f.js +4 -0
  523. package/frontend/build/static/{Error-cbce6b64.js → Error-f56339ab.js} +1 -1
  524. package/frontend/build/static/FeatureArchiveDialog-33dc3a5b.js +10 -0
  525. package/frontend/build/static/{FeatureMetricsChart-8fd8a304.js → FeatureMetricsChart-5ad514bc.js} +2 -2
  526. package/frontend/build/static/FeatureViewLazyExport-85a68ed0.js +7 -0
  527. package/frontend/build/static/LazyAdminExport-e2677758.js +35 -0
  528. package/frontend/build/static/LazyProjectExport-969bb54e.js +24 -0
  529. package/frontend/build/static/Logo-android-218bddbb.svg +1 -0
  530. package/frontend/build/static/Logo-flutter-cc3c706f.svg +1 -0
  531. package/frontend/build/static/Logo-go-02475b3d.svg +1 -0
  532. package/frontend/build/static/Logo-java-6e556b26.svg +1 -0
  533. package/frontend/build/static/Logo-javascript-caebc06e.svg +1 -0
  534. package/frontend/build/static/Logo-net-0a33abee.svg +1 -0
  535. package/frontend/build/static/Logo-node-318ed025.svg +1 -0
  536. package/frontend/build/static/Logo-php-201f18c3.svg +1 -0
  537. package/frontend/build/static/Logo-python-4305760e.svg +1 -0
  538. package/frontend/build/static/Logo-react-18e98687.svg +1 -0
  539. package/frontend/build/static/Logo-ruby-58f46832.svg +1 -0
  540. package/frontend/build/static/Logo-rust-c83a80f9.svg +1 -0
  541. package/frontend/build/static/Logo-svelte-97dcb624.svg +1 -0
  542. package/frontend/build/static/Logo-swift-315f842b.svg +5 -0
  543. package/frontend/build/static/Logo-vue-0de73099.svg +1 -0
  544. package/frontend/build/static/{NetworkOverview-349a7bdd.js → NetworkOverview-894877e6.js} +2 -2
  545. package/frontend/build/static/{NetworkTraffic-60478e50.js → NetworkTraffic-81eff1ae.js} +1 -1
  546. package/frontend/build/static/ReactJSONEditor-59c8a094.js +129 -0
  547. package/frontend/build/static/RoleCell-35857d41.js +1 -0
  548. package/frontend/build/static/{StrategyItemContainer-a4caeace.js → StrategyItemContainer-b250f2d4.js} +1 -1
  549. package/frontend/build/static/{chartjs-adapter-date-fns.esm-03d2fbea.js → chartjs-adapter-date-fns.esm-c51fe022.js} +1 -1
  550. package/frontend/build/static/cr-db7653ac.png +0 -0
  551. package/frontend/build/static/datadog-543762b6.svg +5 -0
  552. package/frontend/build/static/edge-daisy-chaining-012bfdef.svg +48 -0
  553. package/frontend/build/static/edge-mode-5d25949b.svg +22 -0
  554. package/frontend/build/static/edge-offline-f6a0f761.svg +19 -0
  555. package/frontend/build/static/{flowchart-elk-definition-170a3958-fc100c77.js → flowchart-elk-definition-170a3958-a8c4a86a.js} +1 -1
  556. package/frontend/build/static/{index-866f9bf9.js → index-0515f416.js} +1 -1
  557. package/frontend/build/static/index-942e9eeb.js +463 -0
  558. package/frontend/build/static/{index-3c63138f.js → index-a59b2d65.js} +1 -1
  559. package/frontend/build/static/{is_dark-31c253e9.js → is_dark-464961a8.js} +1 -1
  560. package/frontend/build/static/jira-1abe7cbf.svg +17 -0
  561. package/frontend/build/static/{mindmap-definition-44684416-398682f9.js → mindmap-definition-44684416-3a71a9a5.js} +1 -1
  562. package/frontend/build/static/slack-36ce798a.svg +18 -0
  563. package/frontend/build/static/style-97d3ef98.css +1 -0
  564. package/frontend/build/static/teams-4e30b51f.svg +45 -0
  565. package/frontend/build/static/{timeline-definition-8e5a9bc6-04a0ae08.js → timeline-definition-8e5a9bc6-da4ebc88.js} +1 -1
  566. package/frontend/build/static/{unknownify-b8618d88.js → unknownify-3563456b.js} +1 -1
  567. package/frontend/build/static/unleash-integration-949d8966.svg +1 -0
  568. package/frontend/build/static/webhooks-b1b44207.svg +16 -0
  569. package/frontend/package.json +20 -18
  570. package/package.json +23 -23
  571. package/dist/lib/services/instance-stats-service.js.map +0 -1
  572. package/dist/lib/services/instance-stats-service.test.js.map +0 -1
  573. package/frontend/build/static/CreateProject-972fa820.js +0 -4
  574. package/frontend/build/static/FeatureArchiveDialog-8a281845.js +0 -10
  575. package/frontend/build/static/FeatureViewLazyExport-a215d53b.js +0 -7
  576. package/frontend/build/static/LazyAdminExport-ba7d55ca.js +0 -35
  577. package/frontend/build/static/LazyProjectExport-12bccd40.js +0 -17
  578. package/frontend/build/static/RoleCell-144e7eca.js +0 -1
  579. package/frontend/build/static/datadog-591b6a73.svg +0 -1
  580. package/frontend/build/static/index-17d74ac9.js +0 -454
  581. package/frontend/build/static/slack-c0af31c6.svg +0 -1
  582. package/frontend/build/static/style-770afaee.css +0 -1
  583. package/frontend/build/static/teams-62e72076.svg +0 -26
  584. package/frontend/build/static/webhooks-ffa904ac.svg +0 -1
  585. /package/dist/lib/{services/instance-stats-service.test.d.ts → db/access-store.test.d.ts} +0 -0
  586. /package/frontend/build/static/{jira-d9eb9af9.svg → jira-comment-d9eb9af9.svg} +0 -0
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.SchedulerService = exports.FavoritesService = exports.InstanceStatsService = exports.LastSeenService = exports.PublicSignupTokenService = exports.PatService = exports.EdgeService = exports.ProxyService = exports.GroupService = exports.PlaygroundService = exports.ClientSpecService = exports.OpenApiService = exports.SegmentService = exports.UserSplashService = exports.ProjectHealthService = exports.FeatureTagService = exports.EnvironmentService = exports.FeatureToggleService = exports.UserFeedbackService = exports.SessionService = exports.SettingService = exports.ResetTokenService = exports.UserService = exports.ApiTokenService = exports.AccessService = exports.EmailService = exports.VersionService = exports.ContextService = exports.AddonService = exports.StrategyService = exports.TagService = exports.TagTypeService = exports.ClientMetricsServiceV2 = exports.ClientInstanceService = exports.StateService = exports.ProjectService = exports.HealthService = exports.EventService = exports.FeatureTypeService = exports.createServices = exports.scheduleServices = void 0;
6
+ exports.DependentFeaturesService = exports.SchedulerService = exports.FavoritesService = exports.InstanceStatsService = exports.LastSeenService = exports.PublicSignupTokenService = exports.PatService = exports.EdgeService = exports.ProxyService = exports.GroupService = exports.PlaygroundService = exports.ClientSpecService = exports.OpenApiService = exports.SegmentService = exports.UserSplashService = exports.ProjectHealthService = exports.FeatureTagService = exports.EnvironmentService = exports.FeatureToggleService = exports.UserFeedbackService = exports.SessionService = exports.SettingService = exports.ResetTokenService = exports.UserService = exports.ApiTokenService = exports.AccessService = exports.EmailService = exports.VersionService = exports.ContextService = exports.AddonService = exports.StrategyService = exports.TagService = exports.TagTypeService = exports.ClientMetricsServiceV2 = exports.ClientInstanceService = exports.StateService = exports.ProjectService = exports.HealthService = exports.EventService = exports.FeatureTypeService = exports.createServices = exports.scheduleServices = void 0;
7
7
  const feature_type_service_1 = __importDefault(require("./feature-type-service"));
8
8
  exports.FeatureTypeService = feature_type_service_1.default;
9
9
  const event_service_1 = __importDefault(require("./event-service"));
@@ -76,7 +76,7 @@ const public_signup_token_service_1 = require("./public-signup-token-service");
76
76
  Object.defineProperty(exports, "PublicSignupTokenService", { enumerable: true, get: function () { return public_signup_token_service_1.PublicSignupTokenService; } });
77
77
  const last_seen_service_1 = require("./client-metrics/last-seen-service");
78
78
  Object.defineProperty(exports, "LastSeenService", { enumerable: true, get: function () { return last_seen_service_1.LastSeenService; } });
79
- const instance_stats_service_1 = require("./instance-stats-service");
79
+ const instance_stats_service_1 = require("../features/instance-stats/instance-stats-service");
80
80
  Object.defineProperty(exports, "InstanceStatsService", { enumerable: true, get: function () { return instance_stats_service_1.InstanceStatsService; } });
81
81
  const favorites_service_1 = require("./favorites-service");
82
82
  Object.defineProperty(exports, "FavoritesService", { enumerable: true, get: function () { return favorites_service_1.FavoritesService; } });
@@ -91,31 +91,38 @@ const configuration_revision_service_1 = __importDefault(require("../features/fe
91
91
  const features_1 = require("../features");
92
92
  const event_announcer_service_1 = __importDefault(require("./event-announcer-service"));
93
93
  const createGroupService_1 = require("../features/group/createGroupService");
94
+ const createPrivateProjectChecker_1 = require("../features/private-project/createPrivateProjectChecker");
95
+ const getActiveUsers_1 = require("../features/instance-stats/getActiveUsers");
96
+ const dependent_features_service_1 = require("../features/dependent-features/dependent-features-service");
97
+ Object.defineProperty(exports, "DependentFeaturesService", { enumerable: true, get: function () { return dependent_features_service_1.DependentFeaturesService; } });
98
+ const createDependentFeaturesService_1 = require("../features/dependent-features/createDependentFeaturesService");
94
99
  // TODO: will be moved to scheduler feature directory
95
100
  const scheduleServices = async (services) => {
96
101
  const { schedulerService, apiTokenService, instanceStatsService, clientInstanceService, projectService, projectHealthService, configurationRevisionService, maintenanceService, eventAnnouncerService, featureToggleService, } = services;
97
102
  if (await maintenanceService.isMaintenanceMode()) {
98
103
  schedulerService.pause();
99
104
  }
100
- schedulerService.schedule(apiTokenService.fetchActiveTokens.bind(apiTokenService), (0, date_fns_1.minutesToMilliseconds)(1));
101
- schedulerService.schedule(apiTokenService.updateLastSeen.bind(apiTokenService), (0, date_fns_1.minutesToMilliseconds)(3));
102
- schedulerService.schedule(instanceStatsService.refreshStatsSnapshot.bind(instanceStatsService), (0, date_fns_1.minutesToMilliseconds)(5));
103
- schedulerService.schedule(clientInstanceService.removeInstancesOlderThanTwoDays.bind(clientInstanceService), (0, date_fns_1.hoursToMilliseconds)(24));
104
- schedulerService.schedule(projectService.statusJob.bind(projectService), (0, date_fns_1.hoursToMilliseconds)(24));
105
- schedulerService.schedule(projectHealthService.setHealthRating.bind(projectHealthService), (0, date_fns_1.hoursToMilliseconds)(1));
106
- schedulerService.schedule(configurationRevisionService.updateMaxRevisionId.bind(configurationRevisionService), (0, date_fns_1.secondsToMilliseconds)(1));
107
- schedulerService.schedule(eventAnnouncerService.publishUnannouncedEvents.bind(eventAnnouncerService), (0, date_fns_1.secondsToMilliseconds)(1));
108
- schedulerService.schedule(featureToggleService.updatePotentiallyStaleFeatures.bind(featureToggleService), (0, date_fns_1.minutesToMilliseconds)(1));
105
+ schedulerService.schedule(apiTokenService.fetchActiveTokens.bind(apiTokenService), (0, date_fns_1.minutesToMilliseconds)(1), 'fetchActiveTokens');
106
+ schedulerService.schedule(apiTokenService.updateLastSeen.bind(apiTokenService), (0, date_fns_1.minutesToMilliseconds)(3), 'updateLastSeen');
107
+ schedulerService.schedule(instanceStatsService.refreshStatsSnapshot.bind(instanceStatsService), (0, date_fns_1.minutesToMilliseconds)(5), 'refreshStatsSnapshot');
108
+ schedulerService.schedule(clientInstanceService.removeInstancesOlderThanTwoDays.bind(clientInstanceService), (0, date_fns_1.hoursToMilliseconds)(24), 'removeInstancesOlderThanTwoDays');
109
+ schedulerService.schedule(projectService.statusJob.bind(projectService), (0, date_fns_1.hoursToMilliseconds)(24), 'statusJob');
110
+ schedulerService.schedule(projectHealthService.setHealthRating.bind(projectHealthService), (0, date_fns_1.hoursToMilliseconds)(1), 'setHealthRating');
111
+ schedulerService.schedule(configurationRevisionService.updateMaxRevisionId.bind(configurationRevisionService), (0, date_fns_1.secondsToMilliseconds)(1), 'updateMaxRevisionId');
112
+ schedulerService.schedule(eventAnnouncerService.publishUnannouncedEvents.bind(eventAnnouncerService), (0, date_fns_1.secondsToMilliseconds)(1), 'publishUnannouncedEvents');
113
+ schedulerService.schedule(featureToggleService.updatePotentiallyStaleFeatures.bind(featureToggleService), (0, date_fns_1.minutesToMilliseconds)(1), 'updatePotentiallyStaleFeatures');
109
114
  };
110
115
  exports.scheduleServices = scheduleServices;
111
116
  const createServices = (stores, config, db) => {
112
117
  const groupService = new group_service_1.GroupService(stores, config);
113
118
  const accessService = new access_service_1.AccessService(stores, config, groupService);
114
119
  const apiTokenService = new api_token_service_1.ApiTokenService(stores, config);
115
- const clientInstanceService = new instance_service_1.default(stores, config);
116
120
  const lastSeenService = new last_seen_service_1.LastSeenService(stores, config);
117
121
  const clientMetricsServiceV2 = new metrics_service_v2_1.default(stores, config, lastSeenService);
118
- const contextService = new context_service_1.default(stores, config);
122
+ const privateProjectChecker = db
123
+ ? (0, createPrivateProjectChecker_1.createPrivateProjectChecker)(db, config)
124
+ : (0, createPrivateProjectChecker_1.createFakePrivateProjectChecker)();
125
+ const contextService = new context_service_1.default(stores, config, privateProjectChecker);
119
126
  const emailService = new email_service_1.EmailService(config.email, config.getLogger);
120
127
  const eventService = new event_service_1.default(stores, config);
121
128
  const featureTypeService = new feature_type_service_1.default(stores, config);
@@ -143,12 +150,13 @@ const createServices = (stores, config, db) => {
143
150
  const changeRequestAccessReadModel = db
144
151
  ? (0, createChangeRequestAccessReadModel_1.createChangeRequestAccessReadModel)(db, config)
145
152
  : (0, createChangeRequestAccessReadModel_1.createFakeChangeRequestAccessService)();
146
- const segmentService = new segment_service_1.SegmentService(stores, changeRequestAccessReadModel, config);
147
- const featureToggleServiceV2 = new feature_toggle_service_1.default(stores, config, segmentService, accessService, changeRequestAccessReadModel);
153
+ const segmentService = new segment_service_1.SegmentService(stores, changeRequestAccessReadModel, config, privateProjectChecker);
154
+ const clientInstanceService = new instance_service_1.default(stores, config, privateProjectChecker);
155
+ const featureToggleServiceV2 = new feature_toggle_service_1.default(stores, config, segmentService, accessService, changeRequestAccessReadModel, privateProjectChecker);
148
156
  const environmentService = new environment_service_1.default(stores, config);
149
157
  const featureTagService = new feature_tag_service_1.default(stores, config);
150
158
  const favoritesService = new favorites_service_1.FavoritesService(stores, config);
151
- const projectService = new project_service_1.default(stores, config, accessService, featureToggleServiceV2, groupService, favoritesService);
159
+ const projectService = new project_service_1.default(stores, config, accessService, featureToggleServiceV2, groupService, favoritesService, privateProjectChecker);
152
160
  const projectHealthService = new project_health_service_1.default(stores, config, projectService);
153
161
  // TODO: this is a temporary seam to enable packaging by feature
154
162
  const exportImportService = db
@@ -163,6 +171,7 @@ const createServices = (stores, config, db) => {
163
171
  const playgroundService = new playground_service_1.PlaygroundService(config, {
164
172
  featureToggleServiceV2,
165
173
  segmentService,
174
+ privateProjectChecker,
166
175
  });
167
176
  const configurationRevisionService = new configuration_revision_service_1.default(stores, config);
168
177
  const proxyService = new proxy_service_1.ProxyService(config, stores, {
@@ -175,10 +184,12 @@ const createServices = (stores, config, db) => {
175
184
  const edgeService = new edge_service_1.default(stores, config);
176
185
  const patService = new pat_service_1.default(stores, config);
177
186
  const publicSignupTokenService = new public_signup_token_service_1.PublicSignupTokenService(stores, config, userService);
178
- const instanceStatsService = new instance_stats_service_1.InstanceStatsService(stores, config, versionService);
187
+ const instanceStatsService = new instance_stats_service_1.InstanceStatsService(stores, config, versionService, db ? (0, getActiveUsers_1.createGetActiveUsers)(db) : (0, getActiveUsers_1.createFakeGetActiveUsers)());
179
188
  const schedulerService = new scheduler_service_1.SchedulerService(config.getLogger);
180
189
  const maintenanceService = new maintenance_service_1.default(stores, config, settingService, schedulerService);
181
190
  const eventAnnouncerService = new event_announcer_service_1.default(stores, config);
191
+ const dependentFeaturesService = new dependent_features_service_1.DependentFeaturesService(stores.dependentFeaturesStore);
192
+ const transactionalDependentFeaturesService = (txDb) => (0, createDependentFeaturesService_1.createDependentFeaturesService)(txDb);
182
193
  return {
183
194
  accessService,
184
195
  accountService,
@@ -228,6 +239,9 @@ const createServices = (stores, config, db) => {
228
239
  configurationRevisionService,
229
240
  transactionalFeatureToggleService,
230
241
  transactionalGroupService,
242
+ privateProjectChecker,
243
+ dependentFeaturesService,
244
+ transactionalDependentFeaturesService,
231
245
  };
232
246
  };
233
247
  exports.createServices = createServices;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/services/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/services/index.ts"],"names":[],"mappings":"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"}
@@ -12,9 +12,17 @@ exports.projectSchema = joi_1.default
12
12
  id: util_1.nameType,
13
13
  name: joi_1.default.string().required(),
14
14
  description: joi_1.default.string().allow(null).allow('').optional(),
15
- mode: joi_1.default.string().valid('open', 'protected').default('open'),
15
+ mode: joi_1.default
16
+ .string()
17
+ .valid('open', 'protected', 'private')
18
+ .default('open'),
16
19
  defaultStickiness: joi_1.default.string().default('default'),
17
20
  featureLimit: joi_1.default.number().allow(null).optional(),
21
+ featureNaming: joi_1.default.object().keys({
22
+ pattern: joi_1.default.string().allow(null).allow('').optional(),
23
+ example: joi_1.default.string().allow(null).allow('').optional(),
24
+ description: joi_1.default.string().allow(null).allow('').optional(),
25
+ }),
18
26
  })
19
27
  .options({ allowUnknown: false, stripUnknown: true });
20
28
  //# sourceMappingURL=project-schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"project-schema.js","sourceRoot":"","sources":["../../../src/lib/services/project-schema.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAsB;AACtB,yCAA0C;AAE7B,QAAA,aAAa,GAAG,aAAG;KAC3B,MAAM,EAAE;KACR,IAAI,CAAC;IACF,EAAE,EAAE,eAAQ;IACZ,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,WAAW,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC1D,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAC7D,iBAAiB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;IAClD,YAAY,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;CACpD,CAAC;KACD,OAAO,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"project-schema.js","sourceRoot":"","sources":["../../../src/lib/services/project-schema.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAsB;AACtB,yCAA0C;AAE7B,QAAA,aAAa,GAAG,aAAG;KAC3B,MAAM,EAAE;KACR,IAAI,CAAC;IACF,EAAE,EAAE,eAAQ;IACZ,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,WAAW,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC1D,IAAI,EAAE,aAAG;SACJ,MAAM,EAAE;SACR,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC;SACrC,OAAO,CAAC,MAAM,CAAC;IACpB,iBAAiB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;IAClD,YAAY,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IACjD,aAAa,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC;QAC7B,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;QACtD,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;QACtD,WAAW,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;KAC7D,CAAC;CACL,CAAC;KACD,OAAO,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC"}
@@ -1,17 +1,14 @@
1
1
  import User, { IUser } from '../types/user';
2
- import { AccessService } from './access-service';
3
- import { FeatureToggle, IProject, IProjectOverview, IProjectWithCount, IUnleashConfig, IUnleashStores, IUserWithRole, IProjectRoleUsage } from '../types';
2
+ import { AccessService, AccessWithRoles } from './access-service';
3
+ import { FeatureToggle, IProject, IProjectOverview, IProjectWithCount, IUnleashConfig, IUnleashStores, IProjectRoleUsage, CreateProject } from '../types';
4
4
  import { IProjectQuery } from '../types/stores/project-store';
5
5
  import { IProjectAccessModel, IRoleDescriptor } from '../types/stores/access-store';
6
6
  import FeatureToggleService from './feature-toggle-service';
7
7
  import { GroupService } from './group-service';
8
- import { IGroupModelWithProjectRole, IGroupRole } from 'lib/types/group';
8
+ import { IGroupRole } from 'lib/types/group';
9
9
  import { FavoritesService } from './favorites-service';
10
- export interface AccessWithRoles {
11
- users: IUserWithRole[];
12
- roles: IRoleDescriptor[];
13
- groups: IGroupModelWithProjectRole[];
14
- }
10
+ import { ProjectDoraMetricsSchema } from 'lib/openapi';
11
+ import { IPrivateProjectChecker } from '../features/private-project/privateProjectCheckerType';
15
12
  declare type Days = number;
16
13
  declare type Count = number;
17
14
  export interface IProjectStats {
@@ -39,15 +36,16 @@ export default class ProjectService {
39
36
  private groupService;
40
37
  private logger;
41
38
  private featureToggleService;
42
- private tagStore;
39
+ private privateProjectChecker;
43
40
  private accountStore;
44
41
  private favoritesService;
45
42
  private projectStatsStore;
46
43
  private flagResolver;
47
- constructor({ projectStore, eventStore, featureToggleStore, featureTypeStore, environmentStore, featureEnvironmentStore, featureTagStore, accountStore, projectStatsStore, }: Pick<IUnleashStores, 'projectStore' | 'eventStore' | 'featureToggleStore' | 'featureTypeStore' | 'environmentStore' | 'featureEnvironmentStore' | 'featureTagStore' | 'accountStore' | 'projectStatsStore'>, config: IUnleashConfig, accessService: AccessService, featureToggleService: FeatureToggleService, groupService: GroupService, favoriteService: FavoritesService);
44
+ constructor({ projectStore, eventStore, featureToggleStore, featureTypeStore, environmentStore, featureEnvironmentStore, accountStore, projectStatsStore, }: Pick<IUnleashStores, 'projectStore' | 'eventStore' | 'featureToggleStore' | 'featureTypeStore' | 'environmentStore' | 'featureEnvironmentStore' | 'accountStore' | 'projectStatsStore'>, config: IUnleashConfig, accessService: AccessService, featureToggleService: FeatureToggleService, groupService: GroupService, favoriteService: FavoritesService, privateProjectChecker: IPrivateProjectChecker);
48
45
  getProjects(query?: IProjectQuery, userId?: number): Promise<IProjectWithCount[]>;
49
46
  getProject(id: string): Promise<IProject>;
50
- createProject(newProject: Pick<IProject, 'id' | 'name' | 'mode' | 'defaultStickiness'>, user: IUser): Promise<IProject>;
47
+ private validateAndProcessFeatureNamingPattern;
48
+ createProject(newProject: CreateProject, user: IUser): Promise<IProject>;
51
49
  updateProject(updatedProject: IProject, user: User): Promise<void>;
52
50
  checkProjectsCompatibility(feature: FeatureToggle, newProjectId: string): Promise<boolean>;
53
51
  addEnvironmentToProject(project: string, environment: string): Promise<void>;
@@ -58,12 +56,18 @@ export default class ProjectService {
58
56
  getAccessToProject(projectId: string): Promise<AccessWithRoles>;
59
57
  addUser(projectId: string, roleId: number, userId: number, createdBy: string): Promise<void>;
60
58
  removeUser(projectId: string, roleId: number, userId: number, createdBy: string): Promise<void>;
59
+ removeUserAccess(projectId: string, userId: number, createdBy: string): Promise<void>;
60
+ removeGroupAccess(projectId: string, groupId: number, createdBy: string): Promise<void>;
61
61
  addGroup(projectId: string, roleId: number, groupId: number, modifiedBy: string): Promise<void>;
62
62
  removeGroup(projectId: string, roleId: number, groupId: number, modifiedBy: string): Promise<void>;
63
- addAccess(projectId: string, roleId: number, usersAndGroups: IProjectAccessModel, createdBy: string): Promise<void>;
63
+ addRoleAccess(projectId: string, roleId: number, usersAndGroups: IProjectAccessModel, createdBy: string): Promise<void>;
64
+ addAccess(projectId: string, roles: number[], groups: number[], users: number[], createdBy: string): Promise<void>;
65
+ setRolesForUser(projectId: string, userId: number, roles: number[], createdByUserName: string): Promise<void>;
66
+ setRolesForGroup(projectId: string, groupId: number, roles: number[], createdBy: string): Promise<void>;
64
67
  findProjectGroupRole(projectId: string, roleId: number): Promise<IGroupRole>;
65
68
  findProjectRole(projectId: string, roleId: number): Promise<IRoleDescriptor>;
66
69
  validateAtLeastOneOwner(projectId: string, currentRole: IRoleDescriptor): Promise<void>;
70
+ getDoraMetrics(projectId: string): Promise<ProjectDoraMetricsSchema>;
67
71
  changeRole(projectId: string, roleId: number, userId: number, createdBy: string): Promise<void>;
68
72
  changeGroupRole(projectId: string, roleId: number, userId: number, createdBy: string): Promise<void>;
69
73
  getMembers(projectId: string): Promise<number>;
@@ -17,9 +17,26 @@ const util_2 = require("../util");
17
17
  const time_to_production_1 = require("../features/feature-toggle/time-to-production/time-to-production");
18
18
  const unique_1 = require("../util/unique");
19
19
  const error_1 = require("../error");
20
+ const feature_naming_validation_1 = require("../features/feature-naming-pattern/feature-naming-validation");
20
21
  const getCreatedBy = (user) => user.email || user.username || 'unknown';
21
22
  class ProjectService {
22
- constructor({ projectStore, eventStore, featureToggleStore, featureTypeStore, environmentStore, featureEnvironmentStore, featureTagStore, accountStore, projectStatsStore, }, config, accessService, featureToggleService, groupService, favoriteService) {
23
+ constructor({ projectStore, eventStore, featureToggleStore, featureTypeStore, environmentStore, featureEnvironmentStore, accountStore, projectStatsStore, }, config, accessService, featureToggleService, groupService, favoriteService, privateProjectChecker) {
24
+ this.validateAndProcessFeatureNamingPattern = (featureNaming) => {
25
+ const validationResult = (0, feature_naming_validation_1.checkFeatureNamingData)(featureNaming);
26
+ if (validationResult.state === 'invalid') {
27
+ const [firstReason, ...remainingReasons] = validationResult.reasons.map((message) => ({
28
+ message,
29
+ }));
30
+ throw new error_1.BadDataError('The feature naming pattern data you provided was invalid.', [firstReason, ...remainingReasons]);
31
+ }
32
+ if (featureNaming.pattern && !featureNaming.example) {
33
+ featureNaming.example = null;
34
+ }
35
+ if (featureNaming.pattern && !featureNaming.description) {
36
+ featureNaming.description = null;
37
+ }
38
+ return featureNaming;
39
+ };
23
40
  this.store = projectStore;
24
41
  this.environmentStore = environmentStore;
25
42
  this.featureEnvironmentStore = featureEnvironmentStore;
@@ -29,7 +46,7 @@ class ProjectService {
29
46
  this.featureTypeStore = featureTypeStore;
30
47
  this.featureToggleService = featureToggleService;
31
48
  this.favoritesService = favoriteService;
32
- this.tagStore = featureTagStore;
49
+ this.privateProjectChecker = privateProjectChecker;
33
50
  this.accountStore = accountStore;
34
51
  this.groupService = groupService;
35
52
  this.projectStatsStore = projectStatsStore;
@@ -37,7 +54,17 @@ class ProjectService {
37
54
  this.flagResolver = config.flagResolver;
38
55
  }
39
56
  async getProjects(query, userId) {
40
- return this.store.getProjectsWithCounts(query, userId);
57
+ const projects = await this.store.getProjectsWithCounts(query, userId);
58
+ if (this.flagResolver.isEnabled('privateProjects') && userId) {
59
+ const projectAccess = await this.privateProjectChecker.getUserAccessibleProjects(userId);
60
+ if (projectAccess.mode === 'all') {
61
+ return projects;
62
+ }
63
+ else {
64
+ return projects.filter((project) => projectAccess.projects.includes(project.id));
65
+ }
66
+ }
67
+ return projects;
41
68
  }
42
69
  async getProject(id) {
43
70
  return this.store.get(id);
@@ -45,6 +72,9 @@ class ProjectService {
45
72
  async createProject(newProject, user) {
46
73
  const data = await project_schema_1.projectSchema.validateAsync(newProject);
47
74
  await this.validateUniqueId(data.id);
75
+ if (data.featureNaming) {
76
+ this.validateAndProcessFeatureNamingPattern(data.featureNaming);
77
+ }
48
78
  await this.store.create(data);
49
79
  const enabledEnvironments = await this.environmentStore.getAll({
50
80
  enabled: true,
@@ -64,13 +94,15 @@ class ProjectService {
64
94
  }
65
95
  async updateProject(updatedProject, user) {
66
96
  const preData = await this.store.get(updatedProject.id);
67
- const project = await project_schema_1.projectSchema.validateAsync(updatedProject);
68
- await this.store.update(project);
97
+ if (updatedProject.featureNaming) {
98
+ this.validateAndProcessFeatureNamingPattern(updatedProject.featureNaming);
99
+ }
100
+ await this.store.update(updatedProject);
69
101
  await this.eventStore.store({
70
102
  type: types_1.PROJECT_UPDATED,
71
- project: project.id,
103
+ project: updatedProject.id,
72
104
  createdBy: getCreatedBy(user),
73
- data: project,
105
+ data: updatedProject,
74
106
  preData,
75
107
  });
76
108
  }
@@ -137,16 +169,11 @@ class ProjectService {
137
169
  }
138
170
  // RBAC methods
139
171
  async getAccessToProject(projectId) {
140
- const [roles, users, groups] = await this.accessService.getProjectRoleAccess(projectId);
141
- return {
142
- roles,
143
- users,
144
- groups,
145
- };
172
+ return this.accessService.getProjectRoleAccess(projectId);
146
173
  }
147
174
  // Deprecated: See addAccess instead.
148
175
  async addUser(projectId, roleId, userId, createdBy) {
149
- const [roles, users] = await this.accessService.getProjectRoleAccess(projectId);
176
+ const { roles, users } = await this.accessService.getProjectRoleAccess(projectId);
150
177
  const user = await this.accountStore.get(userId);
151
178
  const role = roles.find((r) => r.id === roleId);
152
179
  if (!role) {
@@ -184,6 +211,30 @@ class ProjectService {
184
211
  },
185
212
  }));
186
213
  }
214
+ async removeUserAccess(projectId, userId, createdBy) {
215
+ const existingRoles = await this.accessService.getProjectRolesForUser(projectId, userId);
216
+ await this.accessService.removeUserAccess(projectId, userId);
217
+ await this.eventStore.store(new types_1.ProjectAccessUserRolesDeleted({
218
+ project: projectId,
219
+ createdBy,
220
+ preData: {
221
+ roles: existingRoles,
222
+ userId,
223
+ },
224
+ }));
225
+ }
226
+ async removeGroupAccess(projectId, groupId, createdBy) {
227
+ const existingRoles = await this.accessService.getProjectRolesForGroup(projectId, groupId);
228
+ await this.accessService.removeGroupAccess(projectId, groupId);
229
+ await this.eventStore.store(new types_1.ProjectAccessUserRolesDeleted({
230
+ project: projectId,
231
+ createdBy,
232
+ preData: {
233
+ roles: existingRoles,
234
+ groupId,
235
+ },
236
+ }));
237
+ }
187
238
  async addGroup(projectId, roleId, groupId, modifiedBy) {
188
239
  const role = await this.accessService.getRole(roleId);
189
240
  const group = await this.groupService.getGroup(groupId);
@@ -218,8 +269,8 @@ class ProjectService {
218
269
  },
219
270
  }));
220
271
  }
221
- async addAccess(projectId, roleId, usersAndGroups, createdBy) {
222
- await this.accessService.addAccessToProject(usersAndGroups.users, usersAndGroups.groups, projectId, roleId, createdBy);
272
+ async addRoleAccess(projectId, roleId, usersAndGroups, createdBy) {
273
+ await this.accessService.addRoleAccessToProject(usersAndGroups.users, usersAndGroups.groups, projectId, roleId, createdBy);
223
274
  await this.eventStore.store(new types_1.ProjectAccessAddedEvent({
224
275
  project: projectId,
225
276
  createdBy,
@@ -230,6 +281,50 @@ class ProjectService {
230
281
  },
231
282
  }));
232
283
  }
284
+ async addAccess(projectId, roles, groups, users, createdBy) {
285
+ await this.accessService.addAccessToProject(roles, groups, users, projectId, createdBy);
286
+ await this.eventStore.store(new types_1.ProjectAccessAddedEvent({
287
+ project: projectId,
288
+ createdBy,
289
+ data: {
290
+ roles,
291
+ groups,
292
+ users,
293
+ },
294
+ }));
295
+ }
296
+ async setRolesForUser(projectId, userId, roles, createdByUserName) {
297
+ const existingRoles = await this.accessService.getProjectRolesForUser(projectId, userId);
298
+ await this.accessService.setProjectRolesForUser(projectId, userId, roles);
299
+ await this.eventStore.store(new types_1.ProjectAccessUserRolesUpdated({
300
+ project: projectId,
301
+ createdBy: createdByUserName,
302
+ data: {
303
+ roles,
304
+ userId,
305
+ },
306
+ preData: {
307
+ roles: existingRoles,
308
+ userId,
309
+ },
310
+ }));
311
+ }
312
+ async setRolesForGroup(projectId, groupId, roles, createdBy) {
313
+ const existingRoles = await this.accessService.getProjectRolesForGroup(projectId, groupId);
314
+ await this.accessService.setProjectRolesForGroup(projectId, groupId, roles, createdBy);
315
+ await this.eventStore.store(new types_1.ProjectAccessGroupRolesUpdated({
316
+ project: projectId,
317
+ createdBy,
318
+ data: {
319
+ roles,
320
+ groupId,
321
+ },
322
+ preData: {
323
+ roles: existingRoles,
324
+ groupId,
325
+ },
326
+ }));
327
+ }
233
328
  async findProjectGroupRole(projectId, roleId) {
234
329
  const roles = await this.groupService.getRolesForProject(projectId);
235
330
  const role = roles.find((r) => r.roleId === roleId);
@@ -256,6 +351,20 @@ class ProjectService {
256
351
  }
257
352
  }
258
353
  }
354
+ async getDoraMetrics(projectId) {
355
+ const activeFeatureToggles = (await this.featureToggleStore.getAll({ project: projectId })).map((feature) => feature.name);
356
+ const archivedFeatureToggles = (await this.featureToggleStore.getAll({
357
+ project: projectId,
358
+ archived: true,
359
+ })).map((feature) => feature.name);
360
+ const featureToggleNames = [
361
+ ...activeFeatureToggles,
362
+ ...archivedFeatureToggles,
363
+ ];
364
+ const projectAverage = (0, time_to_production_1.calculateAverageTimeToProd)(await this.projectStatsStore.getTimeToProdDates(projectId));
365
+ const toggleAverage = await this.projectStatsStore.getTimeToProdDatesForFeatureToggles(projectId, featureToggleNames);
366
+ return { features: toggleAverage, projectAverage: projectAverage };
367
+ }
259
368
  async changeRole(projectId, roleId, userId, createdBy) {
260
369
  const usersWithRoles = await this.getAccessToProject(projectId);
261
370
  const user = usersWithRoles.users.find((u) => u.id === userId);
@@ -322,7 +431,7 @@ class ProjectService {
322
431
  return this.store.getMembersCountByProject(projectId);
323
432
  }
324
433
  async getProjectUsers(projectId) {
325
- const [, users, groups] = await this.accessService.getProjectRoleAccess(projectId);
434
+ const { groups, users } = await this.accessService.getProjectRoleAccess(projectId);
326
435
  const actualUsers = users.map((user) => ({
327
436
  id: user.id,
328
437
  email: user.email,
@@ -444,6 +553,7 @@ class ProjectService {
444
553
  description: project.description,
445
554
  mode: project.mode,
446
555
  featureLimit: project.featureLimit,
556
+ featureNaming: project.featureNaming,
447
557
  defaultStickiness: project.defaultStickiness,
448
558
  health: project.health || 0,
449
559
  favorite: favorite,
@@ -1 +1 @@
1
- {"version":3,"file":"project-service.js","sourceRoot":"","sources":["../../../src/lib/services/project-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project-service.js","sourceRoot":"","sources":["../../../src/lib/services/project-service.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ export declare class SchedulerService {
5
5
  private mode;
6
6
  private logger;
7
7
  constructor(getLogger: LogProvider);
8
- schedule(scheduledFunction: () => void, timeMs: number): Promise<void>;
8
+ schedule(scheduledFunction: () => void, timeMs: number, id: string): Promise<void>;
9
9
  stop(): void;
10
10
  pause(): void;
11
11
  resume(): void;
@@ -7,7 +7,7 @@ class SchedulerService {
7
7
  this.logger = getLogger('/services/scheduler-service.ts');
8
8
  this.mode = 'active';
9
9
  }
10
- async schedule(scheduledFunction, timeMs) {
10
+ async schedule(scheduledFunction, timeMs, id) {
11
11
  this.intervalIds.push(setInterval(async () => {
12
12
  try {
13
13
  if (this.mode === 'active') {
@@ -15,7 +15,7 @@ class SchedulerService {
15
15
  }
16
16
  }
17
17
  catch (e) {
18
- this.logger.error('scheduled job failed', e);
18
+ this.logger.error(`scheduled job failed | id: ${id} | ${e}`);
19
19
  }
20
20
  }, timeMs).unref());
21
21
  try {
@@ -24,7 +24,7 @@ class SchedulerService {
24
24
  }
25
25
  }
26
26
  catch (e) {
27
- this.logger.error('scheduled job failed', e);
27
+ this.logger.error(`scheduled job failed | id: ${id} | ${e}`);
28
28
  }
29
29
  }
30
30
  stop() {