unleash-server 5.2.7 → 5.3.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 (787) hide show
  1. package/dist/lib/addons/addon-schema.js +10 -0
  2. package/dist/lib/addons/addon-schema.js.map +1 -1
  3. package/dist/lib/addons/addon.d.ts +1 -0
  4. package/dist/lib/addons/addon.js.map +1 -1
  5. package/dist/lib/addons/datadog-definition.js +21 -0
  6. package/dist/lib/addons/datadog-definition.js.map +1 -1
  7. package/dist/lib/addons/datadog.d.ts +8 -1
  8. package/dist/lib/addons/datadog.js +14 -2
  9. package/dist/lib/addons/datadog.js.map +1 -1
  10. package/dist/lib/addons/datadog.test.js +62 -0
  11. package/dist/lib/addons/datadog.test.js.map +1 -1
  12. package/dist/lib/addons/feature-event-formatter-md.d.ts +1 -0
  13. package/dist/lib/addons/feature-event-formatter-md.js +7 -0
  14. package/dist/lib/addons/feature-event-formatter-md.js.map +1 -1
  15. package/dist/lib/addons/index.d.ts +2 -1
  16. package/dist/lib/addons/index.js +12 -2
  17. package/dist/lib/addons/index.js.map +1 -1
  18. package/dist/lib/addons/installation-definition-schema.d.ts +2 -0
  19. package/dist/lib/addons/installation-definition-schema.js +13 -0
  20. package/dist/lib/addons/installation-definition-schema.js.map +1 -0
  21. package/dist/lib/addons/slack-app-definition.d.ts +3 -0
  22. package/dist/lib/addons/slack-app-definition.js +68 -0
  23. package/dist/lib/addons/slack-app-definition.js.map +1 -0
  24. package/dist/lib/addons/slack-app.d.ts +23 -0
  25. package/dist/lib/addons/slack-app.js +137 -0
  26. package/dist/lib/addons/slack-app.js.map +1 -0
  27. package/dist/lib/addons/slack-app.test.d.ts +1 -0
  28. package/dist/lib/addons/slack-app.test.js +191 -0
  29. package/dist/lib/addons/slack-app.test.js.map +1 -0
  30. package/dist/lib/addons/slack-definition.js +13 -0
  31. package/dist/lib/addons/slack-definition.js.map +1 -1
  32. package/dist/lib/addons/slack.d.ts +9 -1
  33. package/dist/lib/addons/slack.js +15 -3
  34. package/dist/lib/addons/slack.js.map +1 -1
  35. package/dist/lib/addons/slack.test.js +33 -0
  36. package/dist/lib/addons/slack.test.js.map +1 -1
  37. package/dist/lib/addons/teams-definition.js +13 -0
  38. package/dist/lib/addons/teams-definition.js.map +1 -1
  39. package/dist/lib/addons/teams.d.ts +6 -1
  40. package/dist/lib/addons/teams.js +11 -2
  41. package/dist/lib/addons/teams.js.map +1 -1
  42. package/dist/lib/addons/teams.test.js +28 -0
  43. package/dist/lib/addons/teams.test.js.map +1 -1
  44. package/dist/lib/addons/webhook-definition.js +13 -0
  45. package/dist/lib/addons/webhook-definition.js.map +1 -1
  46. package/dist/lib/addons/webhook.d.ts +1 -0
  47. package/dist/lib/addons/webhook.js +11 -1
  48. package/dist/lib/addons/webhook.js.map +1 -1
  49. package/dist/lib/addons/webhook.test.js +29 -0
  50. package/dist/lib/addons/webhook.test.js.map +1 -1
  51. package/dist/lib/create-config.js +2 -2
  52. package/dist/lib/create-config.js.map +1 -1
  53. package/dist/lib/db/access-store.d.ts +0 -1
  54. package/dist/lib/db/access-store.js +1 -14
  55. package/dist/lib/db/access-store.js.map +1 -1
  56. package/dist/lib/db/client-metrics-store-v2.js +7 -2
  57. package/dist/lib/db/client-metrics-store-v2.js.map +1 -1
  58. package/dist/lib/db/context-field-store.js +9 -18
  59. package/dist/lib/db/context-field-store.js.map +1 -1
  60. package/dist/lib/db/event-store.d.ts +2 -0
  61. package/dist/lib/db/event-store.js +19 -9
  62. package/dist/lib/db/event-store.js.map +1 -1
  63. package/dist/lib/db/feature-strategy-store.js +5 -0
  64. package/dist/lib/db/feature-strategy-store.js.map +1 -1
  65. package/dist/lib/db/feature-strategy-store.test.js +1 -0
  66. package/dist/lib/db/feature-strategy-store.test.js.map +1 -1
  67. package/dist/lib/db/feature-toggle-client-store.d.ts +7 -8
  68. package/dist/lib/db/feature-toggle-client-store.js +46 -24
  69. package/dist/lib/db/feature-toggle-client-store.js.map +1 -1
  70. package/dist/lib/db/feature-toggle-store.d.ts +6 -0
  71. package/dist/lib/db/feature-toggle-store.js +35 -0
  72. package/dist/lib/db/feature-toggle-store.js.map +1 -1
  73. package/dist/lib/db/feature-type-store.d.ts +1 -0
  74. package/dist/lib/db/feature-type-store.js +12 -0
  75. package/dist/lib/db/feature-type-store.js.map +1 -1
  76. package/dist/lib/db/group-store.d.ts +5 -7
  77. package/dist/lib/db/group-store.js +51 -25
  78. package/dist/lib/db/group-store.js.map +1 -1
  79. package/dist/lib/db/index.js +1 -1
  80. package/dist/lib/db/index.js.map +1 -1
  81. package/dist/lib/db/project-store.d.ts +3 -5
  82. package/dist/lib/db/project-store.js +19 -19
  83. package/dist/lib/db/project-store.js.map +1 -1
  84. package/dist/lib/db/segment-store.d.ts +2 -1
  85. package/dist/lib/db/segment-store.js +23 -20
  86. package/dist/lib/db/segment-store.js.map +1 -1
  87. package/dist/lib/db/segment-store.test.d.ts +1 -0
  88. package/dist/lib/db/segment-store.test.js +32 -0
  89. package/dist/lib/db/segment-store.test.js.map +1 -0
  90. package/dist/lib/error/bad-data-error.d.ts +1 -0
  91. package/dist/lib/error/bad-data-error.js +18 -5
  92. package/dist/lib/error/bad-data-error.js.map +1 -1
  93. package/dist/lib/error/content-type-error.d.ts +1 -0
  94. package/dist/lib/error/content-type-error.js +1 -0
  95. package/dist/lib/error/content-type-error.js.map +1 -1
  96. package/dist/lib/error/disabled-error.d.ts +1 -0
  97. package/dist/lib/error/disabled-error.js +4 -0
  98. package/dist/lib/error/disabled-error.js.map +1 -1
  99. package/dist/lib/error/feature-has-tag-error.d.ts +1 -0
  100. package/dist/lib/error/feature-has-tag-error.js +4 -0
  101. package/dist/lib/error/feature-has-tag-error.js.map +1 -1
  102. package/dist/lib/error/forbidden-error.d.ts +5 -0
  103. package/dist/lib/error/forbidden-error.js +12 -0
  104. package/dist/lib/error/forbidden-error.js.map +1 -0
  105. package/dist/lib/error/from-legacy-error.js +68 -0
  106. package/dist/lib/error/from-legacy-error.js.map +1 -1
  107. package/dist/lib/error/incompatible-project-error.d.ts +1 -0
  108. package/dist/lib/error/incompatible-project-error.js +1 -0
  109. package/dist/lib/error/incompatible-project-error.js.map +1 -1
  110. package/dist/lib/error/index.d.ts +3 -2
  111. package/dist/lib/error/index.js +5 -3
  112. package/dist/lib/error/index.js.map +1 -1
  113. package/dist/lib/error/invalid-operation-error.d.ts +1 -0
  114. package/dist/lib/error/invalid-operation-error.js +4 -0
  115. package/dist/lib/error/invalid-operation-error.js.map +1 -1
  116. package/dist/lib/error/invalid-token-error.d.ts +1 -0
  117. package/dist/lib/error/invalid-token-error.js +1 -0
  118. package/dist/lib/error/invalid-token-error.js.map +1 -1
  119. package/dist/lib/error/minimum-one-environment-error.d.ts +1 -0
  120. package/dist/lib/error/minimum-one-environment-error.js +4 -0
  121. package/dist/lib/error/minimum-one-environment-error.js.map +1 -1
  122. package/dist/lib/error/name-exists-error.d.ts +1 -0
  123. package/dist/lib/error/name-exists-error.js +4 -0
  124. package/dist/lib/error/name-exists-error.js.map +1 -1
  125. package/dist/lib/error/not-implemented-error.d.ts +1 -0
  126. package/dist/lib/error/not-implemented-error.js +4 -0
  127. package/dist/lib/error/not-implemented-error.js.map +1 -1
  128. package/dist/lib/error/notfound-error.d.ts +1 -0
  129. package/dist/lib/error/notfound-error.js +1 -0
  130. package/dist/lib/error/notfound-error.js.map +1 -1
  131. package/dist/lib/error/operation-denied-error.d.ts +1 -0
  132. package/dist/lib/error/operation-denied-error.js +4 -0
  133. package/dist/lib/error/operation-denied-error.js.map +1 -1
  134. package/dist/lib/error/owasp-validation-error.d.ts +1 -0
  135. package/dist/lib/error/owasp-validation-error.js +1 -0
  136. package/dist/lib/error/owasp-validation-error.js.map +1 -1
  137. package/dist/lib/error/password-mismatch.d.ts +1 -0
  138. package/dist/lib/error/password-mismatch.js +1 -0
  139. package/dist/lib/error/password-mismatch.js.map +1 -1
  140. package/dist/lib/error/password-undefined.d.ts +1 -0
  141. package/dist/lib/error/password-undefined.js +1 -0
  142. package/dist/lib/error/password-undefined.js.map +1 -1
  143. package/dist/lib/error/{no-access-error.d.ts → permission-error.d.ts} +3 -2
  144. package/dist/lib/error/{no-access-error.js → permission-error.js} +10 -7
  145. package/dist/lib/error/permission-error.js.map +1 -0
  146. package/dist/lib/error/project-without-owner-error.d.ts +1 -0
  147. package/dist/lib/error/project-without-owner-error.js +1 -0
  148. package/dist/lib/error/project-without-owner-error.js.map +1 -1
  149. package/dist/lib/error/role-in-use-error.d.ts +1 -0
  150. package/dist/lib/error/role-in-use-error.js +4 -0
  151. package/dist/lib/error/role-in-use-error.js.map +1 -1
  152. package/dist/lib/error/unauthorized-error.d.ts +1 -0
  153. package/dist/lib/error/unauthorized-error.js +4 -0
  154. package/dist/lib/error/unauthorized-error.js.map +1 -1
  155. package/dist/lib/error/unleash-error.d.ts +5 -3
  156. package/dist/lib/error/unleash-error.js +4 -61
  157. package/dist/lib/error/unleash-error.js.map +1 -1
  158. package/dist/lib/error/unleash-error.test.js +67 -37
  159. package/dist/lib/error/unleash-error.test.js.map +1 -1
  160. package/dist/lib/error/used-token-error.d.ts +1 -0
  161. package/dist/lib/error/used-token-error.js +1 -0
  162. package/dist/lib/error/used-token-error.js.map +1 -1
  163. package/dist/lib/features/export-import-toggles/export-import-controller.js +12 -7
  164. package/dist/lib/features/export-import-toggles/export-import-controller.js.map +1 -1
  165. package/dist/lib/features/export-import-toggles/import-permissions-service.js +1 -1
  166. package/dist/lib/features/export-import-toggles/import-permissions-service.js.map +1 -1
  167. package/dist/lib/features/feature-toggle/createFeatureToggleService.js +1 -1
  168. package/dist/lib/features/feature-toggle/createFeatureToggleService.js.map +1 -1
  169. package/dist/lib/features/group/createGroupService.d.ts +4 -0
  170. package/dist/lib/features/group/createGroupService.js +20 -0
  171. package/dist/lib/features/group/createGroupService.js.map +1 -0
  172. package/dist/lib/features/playground/feature-evaluator/client.d.ts +3 -1
  173. package/dist/lib/features/playground/feature-evaluator/client.js +33 -13
  174. package/dist/lib/features/playground/feature-evaluator/client.js.map +1 -1
  175. package/dist/lib/features/playground/feature-evaluator/strategy/strategy.d.ts +3 -1
  176. package/dist/lib/features/playground/feature-evaluator/strategy/strategy.js +14 -1
  177. package/dist/lib/features/playground/feature-evaluator/strategy/strategy.js.map +1 -1
  178. package/dist/lib/features/playground/feature-evaluator/variant.d.ts +4 -4
  179. package/dist/lib/features/playground/feature-evaluator/variant.js +14 -10
  180. package/dist/lib/features/playground/feature-evaluator/variant.js.map +1 -1
  181. package/dist/lib/features/playground/offline-unleash-client.js +7 -0
  182. package/dist/lib/features/playground/offline-unleash-client.js.map +1 -1
  183. package/dist/lib/features/playground/offline-unleash-client.test.js +69 -0
  184. package/dist/lib/features/playground/offline-unleash-client.test.js.map +1 -1
  185. package/dist/lib/features/playground/playground-service.js +5 -3
  186. package/dist/lib/features/playground/playground-service.js.map +1 -1
  187. package/dist/lib/features/playground/playground.js +12 -15
  188. package/dist/lib/features/playground/playground.js.map +1 -1
  189. package/dist/lib/middleware/api-token-middleware.js +1 -1
  190. package/dist/lib/middleware/api-token-middleware.js.map +1 -1
  191. package/dist/lib/openapi/index.js +15 -3
  192. package/dist/lib/openapi/index.js.map +1 -1
  193. package/dist/lib/openapi/meta-schema-rules.test.js +0 -126
  194. package/dist/lib/openapi/meta-schema-rules.test.js.map +1 -1
  195. package/dist/lib/openapi/spec/addon-type-schema.d.ts +57 -0
  196. package/dist/lib/openapi/spec/addon-type-schema.js +50 -0
  197. package/dist/lib/openapi/spec/addon-type-schema.js.map +1 -1
  198. package/dist/lib/openapi/spec/addons-schema.d.ts +64 -0
  199. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.d.ts +166 -4
  200. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.js +1 -2
  201. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.js.map +1 -1
  202. package/dist/lib/openapi/spec/advanced-playground-feature-schema.d.ts +331 -6
  203. package/dist/lib/openapi/spec/advanced-playground-response-schema.d.ts +662 -12
  204. package/dist/lib/openapi/spec/api-tokens-schema.d.ts +2 -2
  205. package/dist/lib/openapi/spec/api-tokens-schema.js +2 -2
  206. package/dist/lib/openapi/spec/api-tokens-schema.js.map +1 -1
  207. package/dist/lib/openapi/spec/batch-features-schema.d.ts +3 -0
  208. package/dist/lib/openapi/spec/batch-features-schema.js +3 -0
  209. package/dist/lib/openapi/spec/batch-features-schema.js.map +1 -1
  210. package/dist/lib/openapi/spec/batch-stale-schema.d.ts +7 -0
  211. package/dist/lib/openapi/spec/batch-stale-schema.js +7 -0
  212. package/dist/lib/openapi/spec/batch-stale-schema.js.map +1 -1
  213. package/dist/lib/openapi/spec/change-password-schema.d.ts +5 -0
  214. package/dist/lib/openapi/spec/change-password-schema.js +5 -0
  215. package/dist/lib/openapi/spec/change-password-schema.js.map +1 -1
  216. package/dist/lib/openapi/spec/client-feature-schema.d.ts +121 -3
  217. package/dist/lib/openapi/spec/client-feature-schema.js +2 -0
  218. package/dist/lib/openapi/spec/client-feature-schema.js.map +1 -1
  219. package/dist/lib/openapi/spec/client-features-schema.d.ts +246 -16
  220. package/dist/lib/openapi/spec/client-features-schema.js +5 -3
  221. package/dist/lib/openapi/spec/client-features-schema.js.map +1 -1
  222. package/dist/lib/openapi/spec/client-features-schema.test.js +1 -2
  223. package/dist/lib/openapi/spec/client-features-schema.test.js.map +1 -1
  224. package/dist/lib/openapi/spec/client-segment-schema.d.ts +75 -0
  225. package/dist/lib/openapi/spec/client-segment-schema.js +35 -0
  226. package/dist/lib/openapi/spec/client-segment-schema.js.map +1 -0
  227. package/dist/lib/openapi/spec/clone-feature-schema.d.ts +5 -0
  228. package/dist/lib/openapi/spec/clone-feature-schema.js +5 -0
  229. package/dist/lib/openapi/spec/clone-feature-schema.js.map +1 -1
  230. package/dist/lib/openapi/spec/context-field-schema.d.ts +22 -3
  231. package/dist/lib/openapi/spec/context-field-schema.js +17 -3
  232. package/dist/lib/openapi/spec/context-field-schema.js.map +1 -1
  233. package/dist/lib/openapi/spec/context-field-strategies-schema.d.ts +1 -1
  234. package/dist/lib/openapi/spec/context-field-strategies-schema.js +1 -1
  235. package/dist/lib/openapi/spec/context-field-strategies-schema.js.map +1 -1
  236. package/dist/lib/openapi/spec/context-fields-schema.d.ts +28 -3
  237. package/dist/lib/openapi/spec/context-fields-schema.js +1 -0
  238. package/dist/lib/openapi/spec/context-fields-schema.js.map +1 -1
  239. package/dist/lib/openapi/spec/create-api-token-schema.d.ts +130 -32
  240. package/dist/lib/openapi/spec/create-api-token-schema.js +71 -35
  241. package/dist/lib/openapi/spec/create-api-token-schema.js.map +1 -1
  242. package/dist/lib/openapi/spec/create-feature-schema.d.ts +9 -0
  243. package/dist/lib/openapi/spec/create-feature-schema.js +9 -0
  244. package/dist/lib/openapi/spec/create-feature-schema.js.map +1 -1
  245. package/dist/lib/openapi/spec/create-feature-strategy-schema.d.ts +63 -2
  246. package/dist/lib/openapi/spec/create-feature-strategy-schema.js +12 -2
  247. package/dist/lib/openapi/spec/create-feature-strategy-schema.js.map +1 -1
  248. package/dist/lib/openapi/spec/create-group-schema.d.ts +61 -0
  249. package/dist/lib/openapi/spec/create-group-schema.js +43 -0
  250. package/dist/lib/openapi/spec/create-group-schema.js.map +1 -0
  251. package/dist/lib/openapi/spec/create-strategy-schema.d.ts +52 -0
  252. package/dist/lib/openapi/spec/create-strategy-schema.js +60 -0
  253. package/dist/lib/openapi/spec/create-strategy-schema.js.map +1 -0
  254. package/dist/lib/openapi/spec/create-strategy-variant-schema.d.ts +54 -0
  255. package/dist/lib/openapi/spec/create-strategy-variant-schema.js +53 -0
  256. package/dist/lib/openapi/spec/create-strategy-variant-schema.js.map +1 -0
  257. package/dist/lib/openapi/spec/create-user-response-schema.d.ts +98 -0
  258. package/dist/lib/openapi/spec/create-user-response-schema.js +31 -0
  259. package/dist/lib/openapi/spec/create-user-response-schema.js.map +1 -0
  260. package/dist/lib/openapi/spec/create-user-schema.d.ts +21 -1
  261. package/dist/lib/openapi/spec/create-user-schema.js +24 -1
  262. package/dist/lib/openapi/spec/create-user-schema.js.map +1 -1
  263. package/dist/lib/openapi/spec/email-schema.d.ts +3 -0
  264. package/dist/lib/openapi/spec/email-schema.js +3 -0
  265. package/dist/lib/openapi/spec/email-schema.js.map +1 -1
  266. package/dist/lib/openapi/spec/environment-project-schema.d.ts +115 -2
  267. package/dist/lib/openapi/spec/environment-project-schema.js +2 -0
  268. package/dist/lib/openapi/spec/environment-project-schema.js.map +1 -1
  269. package/dist/lib/openapi/spec/environments-project-schema.d.ts +118 -2
  270. package/dist/lib/openapi/spec/environments-project-schema.js +3 -0
  271. package/dist/lib/openapi/spec/environments-project-schema.js.map +1 -1
  272. package/dist/lib/openapi/spec/environments-schema.d.ts +4 -0
  273. package/dist/lib/openapi/spec/environments-schema.js +4 -0
  274. package/dist/lib/openapi/spec/environments-schema.js.map +1 -1
  275. package/dist/lib/openapi/spec/event-schema.d.ts +130 -0
  276. package/dist/lib/openapi/spec/event-schema.js +42 -2
  277. package/dist/lib/openapi/spec/event-schema.js.map +1 -1
  278. package/dist/lib/openapi/spec/events-schema.d.ts +137 -0
  279. package/dist/lib/openapi/spec/events-schema.js +7 -0
  280. package/dist/lib/openapi/spec/events-schema.js.map +1 -1
  281. package/dist/lib/openapi/spec/export-query-schema.d.ts +7 -0
  282. package/dist/lib/openapi/spec/export-query-schema.js +7 -0
  283. package/dist/lib/openapi/spec/export-query-schema.js.map +1 -1
  284. package/dist/lib/openapi/spec/export-result-schema.d.ts +609 -17
  285. package/dist/lib/openapi/spec/export-result-schema.js +90 -0
  286. package/dist/lib/openapi/spec/export-result-schema.js.map +1 -1
  287. package/dist/lib/openapi/spec/feature-environment-schema.d.ts +125 -3
  288. package/dist/lib/openapi/spec/feature-environment-schema.js +6 -0
  289. package/dist/lib/openapi/spec/feature-environment-schema.js.map +1 -1
  290. package/dist/lib/openapi/spec/feature-events-schema.d.ts +141 -1
  291. package/dist/lib/openapi/spec/feature-events-schema.js +13 -1
  292. package/dist/lib/openapi/spec/feature-events-schema.js.map +1 -1
  293. package/dist/lib/openapi/spec/feature-schema.d.ts +251 -6
  294. package/dist/lib/openapi/spec/feature-schema.js +7 -0
  295. package/dist/lib/openapi/spec/feature-schema.js.map +1 -1
  296. package/dist/lib/openapi/spec/feature-schema.test.js +2 -2
  297. package/dist/lib/openapi/spec/feature-schema.test.js.map +1 -1
  298. package/dist/lib/openapi/spec/feature-strategy-schema.d.ts +61 -1
  299. package/dist/lib/openapi/spec/feature-strategy-schema.js +10 -1
  300. package/dist/lib/openapi/spec/feature-strategy-schema.js.map +1 -1
  301. package/dist/lib/openapi/spec/feature-type-schema.d.ts +11 -1
  302. package/dist/lib/openapi/spec/feature-type-schema.js +11 -1
  303. package/dist/lib/openapi/spec/feature-type-schema.js.map +1 -1
  304. package/dist/lib/openapi/spec/feature-types-schema.d.ts +42 -1
  305. package/dist/lib/openapi/spec/feature-types-schema.js +37 -0
  306. package/dist/lib/openapi/spec/feature-types-schema.js.map +1 -1
  307. package/dist/lib/openapi/spec/feature-variants-schema.d.ts +11 -2
  308. package/dist/lib/openapi/spec/feature-variants-schema.js +4 -0
  309. package/dist/lib/openapi/spec/feature-variants-schema.js.map +1 -1
  310. package/dist/lib/openapi/spec/features-schema.d.ts +501 -12
  311. package/dist/lib/openapi/spec/features-schema.js +6 -0
  312. package/dist/lib/openapi/spec/features-schema.js.map +1 -1
  313. package/dist/lib/openapi/spec/feedback-create-schema.d.ts +21 -0
  314. package/dist/lib/openapi/spec/feedback-create-schema.js +23 -0
  315. package/dist/lib/openapi/spec/feedback-create-schema.js.map +1 -0
  316. package/dist/lib/openapi/spec/feedback-response-schema.d.ts +33 -0
  317. package/dist/lib/openapi/spec/feedback-response-schema.js +35 -0
  318. package/dist/lib/openapi/spec/feedback-response-schema.js.map +1 -0
  319. package/dist/lib/openapi/spec/feedback-update-schema.d.ts +27 -0
  320. package/dist/lib/openapi/spec/feedback-update-schema.js +29 -0
  321. package/dist/lib/openapi/spec/feedback-update-schema.js.map +1 -0
  322. package/dist/lib/openapi/spec/group-schema.d.ts +107 -9
  323. package/dist/lib/openapi/spec/group-schema.js +20 -3
  324. package/dist/lib/openapi/spec/group-schema.js.map +1 -1
  325. package/dist/lib/openapi/spec/group-user-model-schema.d.ts +46 -3
  326. package/dist/lib/openapi/spec/group-user-model-schema.js +5 -0
  327. package/dist/lib/openapi/spec/group-user-model-schema.js.map +1 -1
  328. package/dist/lib/openapi/spec/groups-schema.d.ts +196 -15
  329. package/dist/lib/openapi/spec/groups-schema.js +2 -0
  330. package/dist/lib/openapi/spec/groups-schema.js.map +1 -1
  331. package/dist/lib/openapi/spec/health-overview-schema.d.ts +733 -16
  332. package/dist/lib/openapi/spec/health-overview-schema.js +10 -0
  333. package/dist/lib/openapi/spec/health-overview-schema.js.map +1 -1
  334. package/dist/lib/openapi/spec/health-report-schema.d.ts +733 -16
  335. package/dist/lib/openapi/spec/id-schema.d.ts +3 -0
  336. package/dist/lib/openapi/spec/id-schema.js +3 -0
  337. package/dist/lib/openapi/spec/id-schema.js.map +1 -1
  338. package/dist/lib/openapi/spec/import-toggles-schema.d.ts +1198 -63
  339. package/dist/lib/openapi/spec/import-toggles-schema.js +7 -0
  340. package/dist/lib/openapi/spec/import-toggles-schema.js.map +1 -1
  341. package/dist/lib/openapi/spec/import-toggles-validate-item-schema.d.ts +5 -0
  342. package/dist/lib/openapi/spec/import-toggles-validate-item-schema.js +5 -0
  343. package/dist/lib/openapi/spec/import-toggles-validate-item-schema.js.map +1 -1
  344. package/dist/lib/openapi/spec/import-toggles-validate-schema.d.ts +18 -0
  345. package/dist/lib/openapi/spec/import-toggles-validate-schema.js +17 -0
  346. package/dist/lib/openapi/spec/import-toggles-validate-schema.js.map +1 -1
  347. package/dist/lib/openapi/spec/index.d.ts +15 -3
  348. package/dist/lib/openapi/spec/index.js +15 -3
  349. package/dist/lib/openapi/spec/index.js.map +1 -1
  350. package/dist/lib/openapi/spec/legal-value-schema.d.ts +5 -0
  351. package/dist/lib/openapi/spec/legal-value-schema.js +5 -0
  352. package/dist/lib/openapi/spec/legal-value-schema.js.map +1 -1
  353. package/dist/lib/openapi/spec/login-schema.d.ts +5 -0
  354. package/dist/lib/openapi/spec/login-schema.js +5 -0
  355. package/dist/lib/openapi/spec/login-schema.js.map +1 -1
  356. package/dist/lib/openapi/spec/me-schema.d.ts +69 -11
  357. package/dist/lib/openapi/spec/me-schema.js +7 -3
  358. package/dist/lib/openapi/spec/me-schema.js.map +1 -1
  359. package/dist/lib/openapi/spec/name-schema.d.ts +3 -0
  360. package/dist/lib/openapi/spec/name-schema.js +3 -0
  361. package/dist/lib/openapi/spec/name-schema.js.map +1 -1
  362. package/dist/lib/openapi/spec/parameters-schema.d.ts +1 -0
  363. package/dist/lib/openapi/spec/parameters-schema.js +1 -0
  364. package/dist/lib/openapi/spec/parameters-schema.js.map +1 -1
  365. package/dist/lib/openapi/spec/password-schema.d.ts +7 -0
  366. package/dist/lib/openapi/spec/password-schema.js +7 -0
  367. package/dist/lib/openapi/spec/password-schema.js.map +1 -1
  368. package/dist/lib/openapi/spec/patches-schema.d.ts +1 -0
  369. package/dist/lib/openapi/spec/patches-schema.js +1 -0
  370. package/dist/lib/openapi/spec/patches-schema.js.map +1 -1
  371. package/dist/lib/openapi/spec/permission-schema.d.ts +7 -0
  372. package/dist/lib/openapi/spec/permission-schema.js +7 -0
  373. package/dist/lib/openapi/spec/permission-schema.js.map +1 -1
  374. package/dist/lib/openapi/spec/playground-feature-schema.d.ts +165 -3
  375. package/dist/lib/openapi/spec/playground-feature-schema.js +0 -1
  376. package/dist/lib/openapi/spec/playground-feature-schema.js.map +1 -1
  377. package/dist/lib/openapi/spec/playground-response-schema.d.ts +330 -5
  378. package/dist/lib/openapi/spec/playground-strategy-schema.d.ts +204 -0
  379. package/dist/lib/openapi/spec/playground-strategy-schema.js +49 -0
  380. package/dist/lib/openapi/spec/playground-strategy-schema.js.map +1 -1
  381. package/dist/lib/openapi/spec/profile-schema.d.ts +267 -7
  382. package/dist/lib/openapi/spec/profile-schema.js +5 -0
  383. package/dist/lib/openapi/spec/profile-schema.js.map +1 -1
  384. package/dist/lib/openapi/spec/project-environment-schema.d.ts +115 -2
  385. package/dist/lib/openapi/spec/project-environment-schema.js +2 -0
  386. package/dist/lib/openapi/spec/project-environment-schema.js.map +1 -1
  387. package/dist/lib/openapi/spec/project-overview-schema.d.ts +733 -16
  388. package/dist/lib/openapi/spec/project-overview-schema.js +10 -0
  389. package/dist/lib/openapi/spec/project-overview-schema.js.map +1 -1
  390. package/dist/lib/openapi/spec/proxy-client-schema.d.ts +3 -0
  391. package/dist/lib/openapi/spec/proxy-client-schema.js +3 -0
  392. package/dist/lib/openapi/spec/proxy-client-schema.js.map +1 -1
  393. package/dist/lib/openapi/spec/proxy-feature-schema.d.ts +20 -2
  394. package/dist/lib/openapi/spec/proxy-feature-schema.js +20 -3
  395. package/dist/lib/openapi/spec/proxy-feature-schema.js.map +1 -1
  396. package/dist/lib/openapi/spec/proxy-features-schema.d.ts +22 -1
  397. package/dist/lib/openapi/spec/proxy-features-schema.js +2 -0
  398. package/dist/lib/openapi/spec/proxy-features-schema.js.map +1 -1
  399. package/dist/lib/openapi/spec/public-signup-token-schema.d.ts +52 -4
  400. package/dist/lib/openapi/spec/public-signup-tokens-schema.d.ts +104 -8
  401. package/dist/lib/openapi/spec/push-variants-schema.d.ts +7 -2
  402. package/dist/lib/openapi/spec/requests-per-second-schema.d.ts +16 -0
  403. package/dist/lib/openapi/spec/requests-per-second-schema.js +22 -2
  404. package/dist/lib/openapi/spec/requests-per-second-schema.js.map +1 -1
  405. package/dist/lib/openapi/spec/requests-per-second-segmented-schema.d.ts +17 -0
  406. package/dist/lib/openapi/spec/requests-per-second-segmented-schema.js +1 -0
  407. package/dist/lib/openapi/spec/requests-per-second-segmented-schema.js.map +1 -1
  408. package/dist/lib/openapi/spec/role-schema.d.ts +11 -1
  409. package/dist/lib/openapi/spec/role-schema.js +11 -1
  410. package/dist/lib/openapi/spec/role-schema.js.map +1 -1
  411. package/dist/lib/openapi/spec/search-events-schema.d.ts +9 -0
  412. package/dist/lib/openapi/spec/search-events-schema.js +10 -0
  413. package/dist/lib/openapi/spec/search-events-schema.js.map +1 -1
  414. package/dist/lib/openapi/spec/segment-schema.d.ts +23 -6
  415. package/dist/lib/openapi/spec/segment-schema.js +18 -15
  416. package/dist/lib/openapi/spec/segment-schema.js.map +1 -1
  417. package/dist/lib/openapi/spec/set-strategy-sort-order-schema.d.ts +6 -0
  418. package/dist/lib/openapi/spec/set-strategy-sort-order-schema.js +6 -0
  419. package/dist/lib/openapi/spec/set-strategy-sort-order-schema.js.map +1 -1
  420. package/dist/lib/openapi/spec/set-ui-config-schema.d.ts +4 -0
  421. package/dist/lib/openapi/spec/set-ui-config-schema.js +4 -0
  422. package/dist/lib/openapi/spec/set-ui-config-schema.js.map +1 -1
  423. package/dist/lib/openapi/spec/splash-request-schema.d.ts +21 -0
  424. package/dist/lib/openapi/spec/splash-request-schema.js +23 -0
  425. package/dist/lib/openapi/spec/splash-request-schema.js.map +1 -0
  426. package/dist/lib/openapi/spec/splash-response-schema.d.ts +27 -0
  427. package/dist/lib/openapi/spec/splash-response-schema.js +21 -0
  428. package/dist/lib/openapi/spec/splash-response-schema.js.map +1 -0
  429. package/dist/lib/openapi/spec/state-schema.d.ts +523 -19
  430. package/dist/lib/openapi/spec/state-schema.js +2 -0
  431. package/dist/lib/openapi/spec/state-schema.js.map +1 -1
  432. package/dist/lib/openapi/spec/strategies-schema.d.ts +9 -3
  433. package/dist/lib/openapi/spec/strategies-schema.js +5 -0
  434. package/dist/lib/openapi/spec/strategies-schema.js.map +1 -1
  435. package/dist/lib/openapi/spec/strategy-schema.d.ts +4 -3
  436. package/dist/lib/openapi/spec/strategy-schema.js +4 -3
  437. package/dist/lib/openapi/spec/strategy-schema.js.map +1 -1
  438. package/dist/lib/openapi/spec/strategy-schema.test.js +5 -0
  439. package/dist/lib/openapi/spec/strategy-schema.test.js.map +1 -1
  440. package/dist/lib/openapi/spec/strategy-variant-schema.d.ts +54 -0
  441. package/dist/lib/openapi/spec/strategy-variant-schema.js +16 -0
  442. package/dist/lib/openapi/spec/strategy-variant-schema.js.map +1 -0
  443. package/dist/lib/openapi/spec/tag-type-schema.d.ts +7 -0
  444. package/dist/lib/openapi/spec/tag-type-schema.js +7 -0
  445. package/dist/lib/openapi/spec/tag-type-schema.js.map +1 -1
  446. package/dist/lib/openapi/spec/tag-types-schema.d.ts +11 -0
  447. package/dist/lib/openapi/spec/tag-types-schema.js +4 -0
  448. package/dist/lib/openapi/spec/tag-types-schema.js.map +1 -1
  449. package/dist/lib/openapi/spec/tag-with-version-schema.d.ts +3 -0
  450. package/dist/lib/openapi/spec/tag-with-version-schema.js +3 -0
  451. package/dist/lib/openapi/spec/tag-with-version-schema.js.map +1 -1
  452. package/dist/lib/openapi/spec/telemetry-settings-schema.d.ts +22 -0
  453. package/dist/lib/openapi/spec/telemetry-settings-schema.js +24 -0
  454. package/dist/lib/openapi/spec/telemetry-settings-schema.js.map +1 -0
  455. package/dist/lib/openapi/spec/token-user-schema.d.ts +23 -2
  456. package/dist/lib/openapi/spec/token-user-schema.js +12 -1
  457. package/dist/lib/openapi/spec/token-user-schema.js.map +1 -1
  458. package/dist/lib/openapi/spec/ui-config-schema.d.ts +77 -1
  459. package/dist/lib/openapi/spec/ui-config-schema.js +53 -0
  460. package/dist/lib/openapi/spec/ui-config-schema.js.map +1 -1
  461. package/dist/lib/openapi/spec/update-api-token-schema.d.ts +3 -0
  462. package/dist/lib/openapi/spec/update-api-token-schema.js +3 -0
  463. package/dist/lib/openapi/spec/update-api-token-schema.js.map +1 -1
  464. package/dist/lib/openapi/spec/update-feature-schema.d.ts +11 -14
  465. package/dist/lib/openapi/spec/update-feature-schema.js +11 -14
  466. package/dist/lib/openapi/spec/update-feature-schema.js.map +1 -1
  467. package/dist/lib/openapi/spec/update-feature-strategy-schema.d.ts +5 -0
  468. package/dist/lib/openapi/spec/update-feature-strategy-schema.js +4 -0
  469. package/dist/lib/openapi/spec/update-feature-strategy-schema.js.map +1 -1
  470. package/dist/lib/openapi/spec/update-feature-type-lifetime-schema.d.ts +19 -0
  471. package/dist/lib/openapi/spec/update-feature-type-lifetime-schema.js +21 -0
  472. package/dist/lib/openapi/spec/update-feature-type-lifetime-schema.js.map +1 -0
  473. package/dist/lib/openapi/spec/update-strategy-schema.d.ts +47 -0
  474. package/dist/lib/openapi/spec/update-strategy-schema.js +55 -0
  475. package/dist/lib/openapi/spec/update-strategy-schema.js.map +1 -0
  476. package/dist/lib/openapi/spec/update-tag-type-schema.d.ts +5 -0
  477. package/dist/lib/openapi/spec/update-tag-type-schema.js +5 -0
  478. package/dist/lib/openapi/spec/update-tag-type-schema.js.map +1 -1
  479. package/dist/lib/openapi/spec/update-user-schema.d.ts +15 -1
  480. package/dist/lib/openapi/spec/update-user-schema.js +18 -1
  481. package/dist/lib/openapi/spec/update-user-schema.js.map +1 -1
  482. package/dist/lib/openapi/spec/upsert-context-field-schema.d.ts +5 -0
  483. package/dist/lib/openapi/spec/user-schema.d.ts +41 -3
  484. package/dist/lib/openapi/spec/user-schema.js +41 -3
  485. package/dist/lib/openapi/spec/user-schema.js.map +1 -1
  486. package/dist/lib/openapi/spec/users-groups-base-schema.d.ts +194 -15
  487. package/dist/lib/openapi/spec/users-schema.d.ts +55 -4
  488. package/dist/lib/openapi/spec/users-schema.js +3 -0
  489. package/dist/lib/openapi/spec/users-schema.js.map +1 -1
  490. package/dist/lib/openapi/spec/users-search-schema.d.ts +41 -3
  491. package/dist/lib/openapi/spec/validate-feature-schema.d.ts +16 -0
  492. package/dist/lib/openapi/spec/validate-feature-schema.js +18 -0
  493. package/dist/lib/openapi/spec/validate-feature-schema.js.map +1 -0
  494. package/dist/lib/openapi/spec/validate-password-schema.d.ts +3 -0
  495. package/dist/lib/openapi/spec/validate-password-schema.js +3 -0
  496. package/dist/lib/openapi/spec/validate-password-schema.js.map +1 -1
  497. package/dist/lib/openapi/spec/validate-tag-type-schema.d.ts +10 -0
  498. package/dist/lib/openapi/spec/validate-tag-type-schema.js +3 -0
  499. package/dist/lib/openapi/spec/validate-tag-type-schema.js.map +1 -1
  500. package/dist/lib/openapi/spec/variant-flag-schema.d.ts +11 -0
  501. package/dist/lib/openapi/spec/variant-flag-schema.js +11 -0
  502. package/dist/lib/openapi/spec/variant-flag-schema.js.map +1 -1
  503. package/dist/lib/openapi/spec/variant-schema.d.ts +7 -2
  504. package/dist/lib/openapi/spec/variant-schema.js +7 -2
  505. package/dist/lib/openapi/spec/variant-schema.js.map +1 -1
  506. package/dist/lib/openapi/spec/variants-schema.d.ts +7 -2
  507. package/dist/lib/openapi/spec/version-schema.d.ts +16 -1
  508. package/dist/lib/openapi/spec/version-schema.js +16 -1
  509. package/dist/lib/openapi/spec/version-schema.js.map +1 -1
  510. package/dist/lib/openapi/util/openapi-tags.d.ts +14 -2
  511. package/dist/lib/openapi/util/openapi-tags.js +9 -1
  512. package/dist/lib/openapi/util/openapi-tags.js.map +1 -1
  513. package/dist/lib/openapi/util/standard-responses.d.ts +1 -1
  514. package/dist/lib/openapi/util/standard-responses.js +1 -1
  515. package/dist/lib/openapi/util/standard-responses.js.map +1 -1
  516. package/dist/lib/openapi/validate.js +1 -1
  517. package/dist/lib/openapi/validate.js.map +1 -1
  518. package/dist/lib/routes/admin-api/api-token.js +12 -0
  519. package/dist/lib/routes/admin-api/api-token.js.map +1 -1
  520. package/dist/lib/routes/admin-api/archive.d.ts +0 -1
  521. package/dist/lib/routes/admin-api/archive.js +20 -5
  522. package/dist/lib/routes/admin-api/archive.js.map +1 -1
  523. package/dist/lib/routes/admin-api/config.js +4 -0
  524. package/dist/lib/routes/admin-api/config.js.map +1 -1
  525. package/dist/lib/routes/admin-api/constraints.d.ts +2 -2
  526. package/dist/lib/routes/admin-api/constraints.js +5 -2
  527. package/dist/lib/routes/admin-api/constraints.js.map +1 -1
  528. package/dist/lib/routes/admin-api/context.d.ts +2 -1
  529. package/dist/lib/routes/admin-api/context.js +16 -4
  530. package/dist/lib/routes/admin-api/context.js.map +1 -1
  531. package/dist/lib/routes/admin-api/event.js +6 -3
  532. package/dist/lib/routes/admin-api/event.js.map +1 -1
  533. package/dist/lib/routes/admin-api/favorites.js +24 -4
  534. package/dist/lib/routes/admin-api/favorites.js.map +1 -1
  535. package/dist/lib/routes/admin-api/feature-type.d.ts +6 -0
  536. package/dist/lib/routes/admin-api/feature-type.js +37 -1
  537. package/dist/lib/routes/admin-api/feature-type.js.map +1 -1
  538. package/dist/lib/routes/admin-api/feature.d.ts +2 -3
  539. package/dist/lib/routes/admin-api/feature.js +14 -3
  540. package/dist/lib/routes/admin-api/feature.js.map +1 -1
  541. package/dist/lib/routes/admin-api/index.js +2 -0
  542. package/dist/lib/routes/admin-api/index.js.map +1 -1
  543. package/dist/lib/routes/admin-api/project/project-archive.js +13 -4
  544. package/dist/lib/routes/admin-api/project/project-archive.js.map +1 -1
  545. package/dist/lib/routes/admin-api/project/project-features.d.ts +1 -1
  546. package/dist/lib/routes/admin-api/project/project-features.js +116 -27
  547. package/dist/lib/routes/admin-api/project/project-features.js.map +1 -1
  548. package/dist/lib/routes/admin-api/project/variants.js +26 -16
  549. package/dist/lib/routes/admin-api/project/variants.js.map +1 -1
  550. package/dist/lib/routes/admin-api/strategy.d.ts +6 -3
  551. package/dist/lib/routes/admin-api/strategy.js +40 -12
  552. package/dist/lib/routes/admin-api/strategy.js.map +1 -1
  553. package/dist/lib/routes/admin-api/strategy.test.js +5 -5
  554. package/dist/lib/routes/admin-api/strategy.test.js.map +1 -1
  555. package/dist/lib/routes/admin-api/tag-type.js +21 -1
  556. package/dist/lib/routes/admin-api/tag-type.js.map +1 -1
  557. package/dist/lib/routes/admin-api/tag.js +17 -1
  558. package/dist/lib/routes/admin-api/tag.js.map +1 -1
  559. package/dist/lib/routes/admin-api/telemetry.d.ts +14 -0
  560. package/dist/lib/routes/admin-api/telemetry.js +41 -0
  561. package/dist/lib/routes/admin-api/telemetry.js.map +1 -0
  562. package/dist/lib/routes/admin-api/user/user.js +20 -4
  563. package/dist/lib/routes/admin-api/user/user.js.map +1 -1
  564. package/dist/lib/routes/admin-api/user-admin.d.ts +3 -2
  565. package/dist/lib/routes/admin-api/user-admin.js +88 -14
  566. package/dist/lib/routes/admin-api/user-admin.js.map +1 -1
  567. package/dist/lib/routes/admin-api/user-feedback.js +17 -7
  568. package/dist/lib/routes/admin-api/user-feedback.js.map +1 -1
  569. package/dist/lib/routes/admin-api/user-splash.js +9 -3
  570. package/dist/lib/routes/admin-api/user-splash.js.map +1 -1
  571. package/dist/lib/routes/auth/reset-password-controller.js +24 -4
  572. package/dist/lib/routes/auth/reset-password-controller.js.map +1 -1
  573. package/dist/lib/routes/auth/simple-password-provider.js +4 -0
  574. package/dist/lib/routes/auth/simple-password-provider.js.map +1 -1
  575. package/dist/lib/routes/client-api/feature.js +1 -1
  576. package/dist/lib/routes/client-api/feature.js.map +1 -1
  577. package/dist/lib/routes/client-api/feature.test.js +8 -3
  578. package/dist/lib/routes/client-api/feature.test.js.map +1 -1
  579. package/dist/lib/routes/client-api/metrics.js +3 -3
  580. package/dist/lib/routes/client-api/metrics.js.map +1 -1
  581. package/dist/lib/routes/controller.js +2 -2
  582. package/dist/lib/routes/controller.js.map +1 -1
  583. package/dist/lib/routes/index.js +1 -3
  584. package/dist/lib/routes/index.js.map +1 -1
  585. package/dist/lib/routes/proxy-api/index.d.ts +1 -1
  586. package/dist/lib/routes/proxy-api/index.js +27 -4
  587. package/dist/lib/routes/proxy-api/index.js.map +1 -1
  588. package/dist/lib/segments/segment-service-interface.d.ts +2 -1
  589. package/dist/lib/server-impl.js +1 -0
  590. package/dist/lib/server-impl.js.map +1 -1
  591. package/dist/lib/services/addon-service.d.ts +2 -1
  592. package/dist/lib/services/addon-service.js +6 -2
  593. package/dist/lib/services/addon-service.js.map +1 -1
  594. package/dist/lib/services/client-metrics/metrics-service-v2.js +24 -13
  595. package/dist/lib/services/client-metrics/metrics-service-v2.js.map +1 -1
  596. package/dist/lib/services/event-announcer-service.d.ts +8 -0
  597. package/dist/lib/services/event-announcer-service.js +13 -0
  598. package/dist/lib/services/event-announcer-service.js.map +1 -0
  599. package/dist/lib/services/feature-service-potentially-stale.test.d.ts +1 -0
  600. package/dist/lib/services/feature-service-potentially-stale.test.js +44 -0
  601. package/dist/lib/services/feature-service-potentially-stale.test.js.map +1 -0
  602. package/dist/lib/services/feature-toggle-service.d.ts +5 -2
  603. package/dist/lib/services/feature-toggle-service.js +95 -16
  604. package/dist/lib/services/feature-toggle-service.js.map +1 -1
  605. package/dist/lib/services/feature-type-service.d.ts +1 -0
  606. package/dist/lib/services/feature-type-service.js +14 -0
  607. package/dist/lib/services/feature-type-service.js.map +1 -1
  608. package/dist/lib/services/group-service.d.ts +4 -4
  609. package/dist/lib/services/group-service.js.map +1 -1
  610. package/dist/lib/services/index.js +9 -1
  611. package/dist/lib/services/index.js.map +1 -1
  612. package/dist/lib/services/project-schema.js +1 -0
  613. package/dist/lib/services/project-schema.js.map +1 -1
  614. package/dist/lib/services/project-service.d.ts +2 -4
  615. package/dist/lib/services/project-service.js +4 -9
  616. package/dist/lib/services/project-service.js.map +1 -1
  617. package/dist/lib/services/segment-service.d.ts +2 -1
  618. package/dist/lib/services/segment-service.js +3 -0
  619. package/dist/lib/services/segment-service.js.map +1 -1
  620. package/dist/lib/services/tag-type-service.d.ts +2 -2
  621. package/dist/lib/services/tag-type-service.js +5 -3
  622. package/dist/lib/services/tag-type-service.js.map +1 -1
  623. package/dist/lib/services/user-service.js +13 -7
  624. package/dist/lib/services/user-service.js.map +1 -1
  625. package/dist/lib/services/version-service.d.ts +1 -2
  626. package/dist/lib/services/version-service.js +2 -4
  627. package/dist/lib/services/version-service.js.map +1 -1
  628. package/dist/lib/services/version-service.test.js +0 -57
  629. package/dist/lib/services/version-service.test.js.map +1 -1
  630. package/dist/lib/types/authentication-required.d.ts +1 -0
  631. package/dist/lib/types/authentication-required.js +1 -0
  632. package/dist/lib/types/authentication-required.js.map +1 -1
  633. package/dist/lib/types/events.d.ts +138 -99
  634. package/dist/lib/types/events.js +136 -3
  635. package/dist/lib/types/events.js.map +1 -1
  636. package/dist/lib/types/experimental.d.ts +1 -1
  637. package/dist/lib/types/experimental.js +5 -5
  638. package/dist/lib/types/experimental.js.map +1 -1
  639. package/dist/lib/types/group.d.ts +7 -0
  640. package/dist/lib/types/group.js.map +1 -1
  641. package/dist/lib/types/model.d.ts +24 -2
  642. package/dist/lib/types/model.js.map +1 -1
  643. package/dist/lib/types/services.d.ts +3 -0
  644. package/dist/lib/types/stores/event-store.d.ts +1 -0
  645. package/dist/lib/types/stores/feature-toggle-client-store.d.ts +2 -1
  646. package/dist/lib/types/stores/feature-toggle-store.d.ts +6 -0
  647. package/dist/lib/types/stores/feature-type-store.d.ts +1 -0
  648. package/dist/lib/types/stores/group-store.d.ts +4 -4
  649. package/dist/lib/types/stores/project-store.d.ts +3 -6
  650. package/dist/lib/types/stores/segment-store.d.ts +2 -1
  651. package/dist/lib/util/is-email.d.ts +7 -0
  652. package/dist/lib/util/is-email.js +9 -0
  653. package/dist/lib/util/is-email.js.map +1 -1
  654. package/dist/lib/util/load-index-html.js +1 -1
  655. package/dist/lib/util/load-index-html.js.map +1 -1
  656. package/dist/migrations/20230630080126-delete-deprecated-permissions.d.ts +2 -0
  657. package/dist/migrations/20230630080126-delete-deprecated-permissions.js +15 -0
  658. package/dist/migrations/20230630080126-delete-deprecated-permissions.js.map +1 -0
  659. package/dist/migrations/20230706123907-events-announced-column.d.ts +2 -0
  660. package/dist/migrations/20230706123907-events-announced-column.js +15 -0
  661. package/dist/migrations/20230706123907-events-announced-column.js.map +1 -0
  662. package/dist/migrations/20230711094214-add-potentially-stale-flag.d.ts +2 -0
  663. package/dist/migrations/20230711094214-add-potentially-stale-flag.js +18 -0
  664. package/dist/migrations/20230711094214-add-potentially-stale-flag.js.map +1 -0
  665. package/dist/migrations/20230711163311-project-feature-limit.d.ts +2 -0
  666. package/dist/migrations/20230711163311-project-feature-limit.js +13 -0
  667. package/dist/migrations/20230711163311-project-feature-limit.js.map +1 -0
  668. package/dist/migrations/20230712091834-strategy-variants.d.ts +2 -0
  669. package/dist/migrations/20230712091834-strategy-variants.js +81 -0
  670. package/dist/migrations/20230712091834-strategy-variants.js.map +1 -0
  671. package/dist/server-dev.js +5 -3
  672. package/dist/server-dev.js.map +1 -1
  673. package/dist/test/arbitraries.test.js +1 -1
  674. package/dist/test/arbitraries.test.js.map +1 -1
  675. package/dist/test/e2e/api/admin/addon.e2e.test.js +2 -1
  676. package/dist/test/e2e/api/admin/addon.e2e.test.js.map +1 -1
  677. package/dist/test/e2e/api/admin/api-token.e2e.test.js +7 -1
  678. package/dist/test/e2e/api/admin/api-token.e2e.test.js.map +1 -1
  679. package/dist/test/e2e/api/admin/archive.test.js +7 -1
  680. package/dist/test/e2e/api/admin/archive.test.js.map +1 -1
  681. package/dist/test/e2e/api/admin/config.e2e.test.js +7 -1
  682. package/dist/test/e2e/api/admin/config.e2e.test.js.map +1 -1
  683. package/dist/test/e2e/api/admin/favorites.e2e.test.js +7 -1
  684. package/dist/test/e2e/api/admin/favorites.e2e.test.js.map +1 -1
  685. package/dist/test/e2e/api/admin/feature-type.test.js +41 -1
  686. package/dist/test/e2e/api/admin/feature-type.test.js.map +1 -1
  687. package/dist/test/e2e/api/admin/feedback.e2e.test.js +7 -1
  688. package/dist/test/e2e/api/admin/feedback.e2e.test.js.map +1 -1
  689. package/dist/test/e2e/api/admin/playground.e2e.test.js.map +1 -1
  690. package/dist/test/e2e/api/admin/project/features.e2e.test.js +152 -0
  691. package/dist/test/e2e/api/admin/project/features.e2e.test.js.map +1 -1
  692. package/dist/test/e2e/api/admin/project/variants.e2e.test.js +28 -12
  693. package/dist/test/e2e/api/admin/project/variants.e2e.test.js.map +1 -1
  694. package/dist/test/e2e/api/admin/splash.e2e.test.js +7 -1
  695. package/dist/test/e2e/api/admin/splash.e2e.test.js.map +1 -1
  696. package/dist/test/e2e/api/admin/state.e2e.test.js +6 -6
  697. package/dist/test/e2e/api/admin/state.e2e.test.js.map +1 -1
  698. package/dist/test/e2e/api/admin/user-admin.e2e.test.js +7 -1
  699. package/dist/test/e2e/api/admin/user-admin.e2e.test.js.map +1 -1
  700. package/dist/test/e2e/api/openapi/openapi.e2e.test.js +9 -6
  701. package/dist/test/e2e/api/openapi/openapi.e2e.test.js.map +1 -1
  702. package/dist/test/e2e/services/access-service.e2e.test.js +1 -1
  703. package/dist/test/e2e/services/access-service.e2e.test.js.map +1 -1
  704. package/dist/test/e2e/services/feature-toggle-service-v2.e2e.test.js +26 -4
  705. package/dist/test/e2e/services/feature-toggle-service-v2.e2e.test.js.map +1 -1
  706. package/dist/test/e2e/services/group-service.e2e.test.js +16 -0
  707. package/dist/test/e2e/services/group-service.e2e.test.js.map +1 -1
  708. package/dist/test/e2e/services/user-service.e2e.test.js +2 -2
  709. package/dist/test/e2e/services/user-service.e2e.test.js.map +1 -1
  710. package/dist/test/e2e/stores/event-store.e2e.test.js +3 -2
  711. package/dist/test/e2e/stores/event-store.e2e.test.js.map +1 -1
  712. package/dist/test/e2e/stores/feature-toggle-store.e2e.test.js +163 -0
  713. package/dist/test/e2e/stores/feature-toggle-store.e2e.test.js.map +1 -1
  714. package/dist/test/e2e/stores/feature-type-store.e2e.test.js +13 -0
  715. package/dist/test/e2e/stores/feature-type-store.e2e.test.js.map +1 -1
  716. package/dist/test/fixtures/fake-event-store.d.ts +1 -0
  717. package/dist/test/fixtures/fake-event-store.js +3 -0
  718. package/dist/test/fixtures/fake-event-store.js.map +1 -1
  719. package/dist/test/fixtures/fake-feature-toggle-client-store.d.ts +1 -0
  720. package/dist/test/fixtures/fake-feature-toggle-client-store.js +10 -0
  721. package/dist/test/fixtures/fake-feature-toggle-client-store.js.map +1 -1
  722. package/dist/test/fixtures/fake-feature-toggle-store.d.ts +6 -0
  723. package/dist/test/fixtures/fake-feature-toggle-store.js +6 -0
  724. package/dist/test/fixtures/fake-feature-toggle-store.js.map +1 -1
  725. package/dist/test/fixtures/fake-feature-type-store.d.ts +1 -0
  726. package/dist/test/fixtures/fake-feature-type-store.js +8 -0
  727. package/dist/test/fixtures/fake-feature-type-store.js.map +1 -1
  728. package/dist/test/fixtures/fake-group-store.d.ts +4 -4
  729. package/dist/test/fixtures/fake-group-store.js.map +1 -1
  730. package/dist/test/fixtures/fake-project-store.d.ts +3 -4
  731. package/dist/test/fixtures/fake-project-store.js +4 -13
  732. package/dist/test/fixtures/fake-project-store.js.map +1 -1
  733. package/dist/test/fixtures/fake-segment-store.d.ts +2 -1
  734. package/dist/test/fixtures/fake-segment-store.js +3 -0
  735. package/dist/test/fixtures/fake-segment-store.js.map +1 -1
  736. package/frontend/build/index.html +2 -2
  737. package/frontend/build/static/AdvancedPlayground-4c9d02ea.js +13 -0
  738. package/frontend/build/static/CreateProject-16b35d57.js +4 -0
  739. package/frontend/build/static/{Error-2c3030da.js → Error-50364f10.js} +1 -1
  740. package/frontend/build/static/{FeatureArchiveDialog-a529848e.js → FeatureArchiveDialog-fda1aa0c.js} +3 -3
  741. package/frontend/build/static/{FeatureMetricsChart-e8ede36a.js → FeatureMetricsChart-839cdf1e.js} +2 -2
  742. package/frontend/build/static/FeatureViewLazyExport-47bb7f13.js +7 -0
  743. package/frontend/build/static/LazyAdminExport-8ef0ca21.js +37 -0
  744. package/frontend/build/static/LazyProjectExport-49541c75.js +16 -0
  745. package/frontend/build/static/{NetworkOverview-e6f0a590.js → NetworkOverview-711050f3.js} +8 -8
  746. package/frontend/build/static/{NetworkTraffic-d1efc782.js → NetworkTraffic-e587c2c7.js} +1 -1
  747. package/frontend/build/static/RoleCell-9a62b4ed.js +1 -0
  748. package/frontend/build/static/StrategyItemContainer-4098c8ef.js +1 -0
  749. package/frontend/build/static/{chartjs-adapter-date-fns.esm-0d05c046.js → chartjs-adapter-date-fns.esm-d57aaddd.js} +1 -1
  750. package/frontend/build/static/demo-qr-c2ce85bd.png +0 -0
  751. package/frontend/build/static/{flowchart-elk-definition-170a3958-cc4ae597.js → flowchart-elk-definition-170a3958-4dece62b.js} +2 -2
  752. package/frontend/build/static/{index-a563ae6f.js → index-1c8194e0.js} +1 -1
  753. package/frontend/build/static/index-770afaee.css +1 -0
  754. package/frontend/build/static/{index-ade82986.js → index-9bb67f88.js} +1 -1
  755. package/frontend/build/static/index-9c528324.js +453 -0
  756. package/frontend/build/static/{is_dark-49e2e68f.js → is_dark-ba77f0b9.js} +1 -1
  757. package/frontend/build/static/{mindmap-definition-44684416-c6d3a96e.js → mindmap-definition-44684416-a4071c9f.js} +3 -3
  758. package/frontend/build/static/{timeline-definition-8e5a9bc6-920370f9.js → timeline-definition-8e5a9bc6-c996bf40.js} +2 -2
  759. package/frontend/build/static/{unknownify-30fed5e1.js → unknownify-db48ebae.js} +1 -1
  760. package/frontend/package.json +16 -16
  761. package/package.json +15 -13
  762. package/dist/lib/error/no-access-error.js.map +0 -1
  763. package/dist/lib/openapi/endpoint-descriptions.d.ts +0 -20
  764. package/dist/lib/openapi/endpoint-descriptions.js +0 -24
  765. package/dist/lib/openapi/endpoint-descriptions.js.map +0 -1
  766. package/dist/lib/openapi/spec/feedback-schema.d.ts +0 -24
  767. package/dist/lib/openapi/spec/feedback-schema.js +0 -26
  768. package/dist/lib/openapi/spec/feedback-schema.js.map +0 -1
  769. package/dist/lib/openapi/spec/splash-schema.d.ts +0 -20
  770. package/dist/lib/openapi/spec/splash-schema.js +0 -22
  771. package/dist/lib/openapi/spec/splash-schema.js.map +0 -1
  772. package/dist/lib/openapi/spec/upsert-strategy-schema.d.ts +0 -39
  773. package/dist/lib/openapi/spec/upsert-strategy-schema.js +0 -41
  774. package/dist/lib/openapi/spec/upsert-strategy-schema.js.map +0 -1
  775. package/frontend/build/static/AdvancedPlayground-bc3db7fd.js +0 -1
  776. package/frontend/build/static/CreateProject-4013b189.js +0 -4
  777. package/frontend/build/static/FeatureViewLazyExport-773303d1.js +0 -7
  778. package/frontend/build/static/LazyAdminExport-a9aeca56.js +0 -37
  779. package/frontend/build/static/LazyProjectExport-7c849a96.js +0 -13
  780. package/frontend/build/static/Playground-4fd4e26e.js +0 -1
  781. package/frontend/build/static/PlaygroundGuidancePopper-c761bfb7.js +0 -13
  782. package/frontend/build/static/RoleCell-cbb192fa.js +0 -1
  783. package/frontend/build/static/StrategyItemContainer-128fc163.js +0 -1
  784. package/frontend/build/static/demo-qr-1bebe2c9.png +0 -0
  785. package/frontend/build/static/index-66c635eb.css +0 -1
  786. package/frontend/build/static/index-bd571775.js +0 -450
  787. package/frontend/build/static/stringify-ec884b6d.js +0 -1
@@ -18,6 +18,7 @@ const COLUMNS = [
18
18
  'title',
19
19
  'parameters',
20
20
  'constraints',
21
+ 'variants',
21
22
  'created_at',
22
23
  'disabled',
23
24
  ];
@@ -45,6 +46,7 @@ function mapRow(row) {
45
46
  title: row.title,
46
47
  parameters: (0, util_1.mapValues)(row.parameters || {}, util_1.ensureStringValue),
47
48
  constraints: row.constraints || [],
49
+ variants: row.variants || [],
48
50
  createdAt: row.created_at,
49
51
  sortOrder: row.sort_order,
50
52
  disabled: row.disabled,
@@ -60,6 +62,7 @@ function mapInput(input) {
60
62
  title: input.title,
61
63
  parameters: input.parameters,
62
64
  constraints: JSON.stringify(input.constraints || []),
65
+ variants: JSON.stringify(input.variants || []),
63
66
  created_at: input.createdAt,
64
67
  sort_order: input.sortOrder,
65
68
  disabled: input.disabled,
@@ -80,6 +83,7 @@ function mapStrategyUpdate(input) {
80
83
  update.disabled = input.disabled;
81
84
  }
82
85
  update.constraints = JSON.stringify(input.constraints || []);
86
+ update.variants = JSON.stringify(input.variants || []);
83
87
  return update;
84
88
  }
85
89
  class FeatureStrategiesStore {
@@ -407,6 +411,7 @@ class FeatureStrategiesStore {
407
411
  const strategy = {
408
412
  name: r.strategy_name,
409
413
  constraints: r.constraints || [],
414
+ variants: r.strategy_variants || [],
410
415
  parameters: r.parameters,
411
416
  sortOrder: r.sort_order,
412
417
  id: r.strategy_id,
@@ -1 +1 @@
1
- {"version":3,"file":"feature-strategy-store.js","sourceRoot":"","sources":["../../../src/lib/db/feature-strategy-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature-strategy-store.js","sourceRoot":"","sources":["../../../src/lib/db/feature-strategy-store.ts"],"names":[],"mappings":"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"}
@@ -66,6 +66,7 @@ test('counts custom strategies in use', async () => {
66
66
  environment: 'default',
67
67
  parameters: {},
68
68
  constraints: [],
69
+ variants: [],
69
70
  });
70
71
  // Act
71
72
  const inUseCount = await featureStrategiesStore.getCustomStrategiesInUseCount();
@@ -1 +1 @@
1
- {"version":3,"file":"feature-strategy-store.test.js","sourceRoot":"","sources":["../../../src/lib/db/feature-strategy-store.test.ts"],"names":[],"mappings":";;;;;AAAA,yFAA0D;AAC1D,8EAAsD;AAKtD,IAAI,EAAE,CAAC;AAEP,SAAS,CAAC,KAAK,IAAI,EAAE;IACjB,EAAE,GAAG,MAAM,IAAA,uBAAM,EAAC,+BAA+B,EAAE,mBAAS,CAAC,CAAC;IAC9D,mBAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,KAAK,IAAI,EAAE;IAChB,IAAI,EAAE,EAAE;QACJ,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;KACtB;IACD,mBAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;IACjD,UAAU;IACV,MAAM,sBAAsB,GACxB,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC;IAErC,MAAM;IACN,MAAM,UAAU,GACZ,MAAM,sBAAsB,CAAC,6BAA6B,EAAE,CAAC;IAEjE,SAAS;IACT,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;IAC5D,UAAU;IACV,MAAM,kBAAkB,GAAuB,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC;IAC5E,MAAM,sBAAsB,GACxB,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC;IACrC,MAAM,aAAa,GAAkB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC;IAE7D,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE;QACjC,IAAI,EAAE,eAAe;KACxB,CAAC,CAAC;IAEH,aAAa,CAAC,cAAc,CAAC;QACzB,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,CAAC;QACX,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,EAAE;QACf,SAAS,EAAE,0BAA0B;KACxC,CAAC,CAAC;IAEH,MAAM;IACN,MAAM,UAAU,GACZ,MAAM,sBAAsB,CAAC,6BAA6B,EAAE,CAAC;IAEjE,SAAS;IACT,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;IAC/C,UAAU;IACV,MAAM,kBAAkB,GAAuB,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC;IAC5E,MAAM,sBAAsB,GACxB,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC;IACrC,MAAM,aAAa,GAAkB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC;IAE7D,MAAM,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE;QACvC,IAAI,EAAE,aAAa;KACtB,CAAC,CAAC;IAEH,MAAM,aAAa,CAAC,cAAc,CAAC;QAC/B,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,CAAC;QACX,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,EAAE;QACf,SAAS,EAAE,0BAA0B;KACxC,CAAC,CAAC;IAEH,MAAM,sBAAsB,CAAC,wBAAwB,CAAC;QAClD,SAAS,EAAE,SAAS;QACpB,WAAW,EAAE,aAAa;QAC1B,YAAY,EAAE,YAAY;QAC1B,WAAW,EAAE,SAAS;QACtB,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,EAAE;KAClB,CAAC,CAAC;IAEH,MAAM;IACN,MAAM,UAAU,GACZ,MAAM,sBAAsB,CAAC,6BAA6B,EAAE,CAAC;IAEjE,SAAS;IACT,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"feature-strategy-store.test.js","sourceRoot":"","sources":["../../../src/lib/db/feature-strategy-store.test.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,12 @@
1
1
  /// <reference types="node" />
2
2
  import { LogProvider } from '../logger';
3
- import { IFeatureToggleClient, IFeatureToggleClientStore, IFeatureToggleQuery } from '../types';
3
+ import { IFeatureToggleClient, IFeatureToggleClientStore, IFeatureToggleQuery, IFlagResolver } from '../types';
4
4
  import EventEmitter from 'events';
5
5
  import { Db } from './db';
6
6
  export interface IGetAllFeatures {
7
7
  featureQuery?: IFeatureToggleQuery;
8
8
  archived: boolean;
9
- isAdmin: boolean;
10
- includeStrategyIds?: boolean;
11
- includeDisabledStrategies?: boolean;
9
+ requestType: 'client' | 'admin' | 'playground';
12
10
  userId?: number;
13
11
  }
14
12
  export interface IGetAdminFeatures {
@@ -20,16 +18,17 @@ export default class FeatureToggleClientStore implements IFeatureToggleClientSto
20
18
  private db;
21
19
  private logger;
22
20
  private timer;
23
- constructor(db: Db, eventBus: EventEmitter, getLogger: LogProvider);
21
+ private flagResolver;
22
+ constructor(db: Db, eventBus: EventEmitter, getLogger: LogProvider, flagResolver: IFlagResolver);
24
23
  private getAll;
25
- private static rowToStrategy;
24
+ private rowToStrategy;
26
25
  private static rowToTag;
27
- private static removeIdsFromStrategies;
28
26
  private isUnseenStrategyRow;
29
27
  private addTag;
30
28
  private isNewTag;
31
29
  private addSegmentToStrategy;
32
30
  private addSegmentIdsToStrategy;
33
- getClient(featureQuery?: IFeatureToggleQuery, includeStrategyIds?: boolean, includeDisabledStrategies?: boolean): Promise<IFeatureToggleClient[]>;
31
+ getClient(featureQuery?: IFeatureToggleQuery): Promise<IFeatureToggleClient[]>;
32
+ getPlayground(featureQuery?: IFeatureToggleQuery): Promise<IFeatureToggleClient[]>;
34
33
  getAdmin({ featureQuery, userId, archived, }: IGetAdminFeatures): Promise<IFeatureToggleClient[]>;
35
34
  }
@@ -8,15 +8,18 @@ const metric_events_1 = require("../metric-events");
8
8
  const util_1 = require("../util");
9
9
  const feature_toggle_store_1 = __importDefault(require("./feature-toggle-store"));
10
10
  class FeatureToggleClientStore {
11
- constructor(db, eventBus, getLogger) {
11
+ constructor(db, eventBus, getLogger, flagResolver) {
12
12
  this.db = db;
13
13
  this.logger = getLogger('feature-toggle-client-store.ts');
14
14
  this.timer = (action) => metrics_helper_1.default.wrapTimer(eventBus, metric_events_1.DB_TIME, {
15
15
  store: 'feature-toggle',
16
16
  action,
17
17
  });
18
+ this.flagResolver = flagResolver;
18
19
  }
19
- async getAll({ featureQuery, archived, isAdmin, includeStrategyIds, userId, }) {
20
+ async getAll({ featureQuery, archived, requestType, userId, }) {
21
+ const isAdmin = requestType === 'admin';
22
+ const isPlayground = requestType === 'playground';
20
23
  const environment = featureQuery?.environment || util_1.DEFAULT_ENV;
21
24
  const stopTimer = this.timer('getFeatureAdmin');
22
25
  let selectColumns = [
@@ -33,9 +36,12 @@ class FeatureToggleClientStore {
33
36
  'fe.environment as environment',
34
37
  'fs.id as strategy_id',
35
38
  'fs.strategy_name as strategy_name',
39
+ 'fs.title as strategy_title',
36
40
  'fs.disabled as strategy_disabled',
37
41
  'fs.parameters as parameters',
38
42
  'fs.constraints as constraints',
43
+ 'fs.sort_order as sort_order',
44
+ 'fs.variants as strategy_variants',
39
45
  'segments.id as segment_id',
40
46
  'segments.constraints as segment_constraints',
41
47
  ];
@@ -91,7 +97,7 @@ class FeatureToggleClientStore {
91
97
  strategies: [],
92
98
  };
93
99
  if (this.isUnseenStrategyRow(feature, r) && !r.strategy_disabled) {
94
- feature.strategies?.push(FeatureToggleClientStore.rowToStrategy(r));
100
+ feature.strategies?.push(this.rowToStrategy(r));
95
101
  }
96
102
  if (this.isNewTag(feature, r)) {
97
103
  this.addTag(feature, r);
@@ -121,21 +127,40 @@ class FeatureToggleClientStore {
121
127
  return acc;
122
128
  }, {});
123
129
  const features = Object.values(featureToggles);
124
- if (!isAdmin && !includeStrategyIds) {
125
- // We should not send strategy IDs from the client API,
126
- // as this breaks old versions of the Go SDK (at least).
127
- FeatureToggleClientStore.removeIdsFromStrategies(features);
128
- }
129
- return features;
130
+ // strip away unwanted properties
131
+ const cleanedFeatures = features.map(({ strategies, ...rest }) => ({
132
+ ...rest,
133
+ strategies: strategies
134
+ ?.sort((strategy1, strategy2) => {
135
+ if (typeof strategy1.sortOrder === 'number' &&
136
+ typeof strategy2.sortOrder === 'number') {
137
+ return strategy1.sortOrder - strategy2.sortOrder;
138
+ }
139
+ return 0;
140
+ })
141
+ .map(({ id, title, sortOrder, ...strategy }) => ({
142
+ ...strategy,
143
+ ...(isPlayground && title ? { title } : {}),
144
+ // We should not send strategy IDs from the client API,
145
+ // as this breaks old versions of the Go SDK (at least).
146
+ ...(isAdmin || isPlayground ? { id } : {}),
147
+ })),
148
+ }));
149
+ return cleanedFeatures;
130
150
  }
131
- static rowToStrategy(row) {
132
- return {
151
+ rowToStrategy(row) {
152
+ const strategy = {
133
153
  id: row.strategy_id,
134
154
  name: row.strategy_name,
135
155
  title: row.strategy_title,
136
156
  constraints: row.constraints || [],
137
157
  parameters: (0, util_1.mapValues)(row.parameters || {}, util_1.ensureStringValue),
158
+ sortOrder: row.sort_order,
138
159
  };
160
+ if (this.flagResolver.isEnabled('strategyVariant')) {
161
+ strategy.variants = row.strategy_variants || [];
162
+ }
163
+ return strategy;
139
164
  }
140
165
  static rowToTag(row) {
141
166
  return {
@@ -143,13 +168,6 @@ class FeatureToggleClientStore {
143
168
  type: row.tag_type,
144
169
  };
145
170
  }
146
- static removeIdsFromStrategies(features) {
147
- features.forEach((feature) => {
148
- feature.strategies.forEach((strategy) => {
149
- delete strategy.id;
150
- });
151
- });
152
- }
153
171
  isUnseenStrategyRow(feature, row) {
154
172
  return (row.strategy_id &&
155
173
  !feature.strategies?.find((s) => s?.id === row.strategy_id));
@@ -179,22 +197,26 @@ class FeatureToggleClientStore {
179
197
  }
180
198
  strategy.segments.push(row.segment_id);
181
199
  }
182
- async getClient(featureQuery, includeStrategyIds, includeDisabledStrategies) {
200
+ async getClient(featureQuery) {
201
+ return this.getAll({
202
+ featureQuery,
203
+ archived: false,
204
+ requestType: 'client',
205
+ });
206
+ }
207
+ async getPlayground(featureQuery) {
183
208
  return this.getAll({
184
209
  featureQuery,
185
210
  archived: false,
186
- isAdmin: false,
187
- includeStrategyIds,
188
- includeDisabledStrategies,
211
+ requestType: 'playground',
189
212
  });
190
213
  }
191
214
  async getAdmin({ featureQuery, userId, archived, }) {
192
215
  return this.getAll({
193
216
  featureQuery,
194
217
  archived: Boolean(archived),
195
- isAdmin: true,
218
+ requestType: 'admin',
196
219
  userId,
197
- includeDisabledStrategies: true,
198
220
  });
199
221
  }
200
222
  }
@@ -1 +1 @@
1
- {"version":3,"file":"feature-toggle-client-store.js","sourceRoot":"","sources":["../../../src/lib/db/feature-toggle-client-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature-toggle-client-store.js","sourceRoot":"","sources":["../../../src/lib/db/feature-toggle-client-store.ts"],"names":[],"mappings":"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"}
@@ -70,5 +70,11 @@ export default class FeatureToggleStore implements IFeatureToggleStore {
70
70
  getVariants(featureName: string): Promise<IVariant[]>;
71
71
  getVariantsForEnv(featureName: string, environment: string): Promise<IVariant[]>;
72
72
  saveVariants(project: string, featureName: string, newVariants: IVariant[]): Promise<FeatureToggle>;
73
+ updatePotentiallyStaleFeatures(currentTime?: string): Promise<{
74
+ name: string;
75
+ potentiallyStale: boolean;
76
+ project: string;
77
+ }[]>;
78
+ isPotentiallyStale(featureName: string): Promise<boolean>;
73
79
  }
74
80
  export {};
@@ -258,6 +258,41 @@ class FeatureToggleStore {
258
258
  toggle.variants = newVariants;
259
259
  return toggle;
260
260
  }
261
+ async updatePotentiallyStaleFeatures(currentTime) {
262
+ const query = this.db.raw(`SELECT name, project, potentially_stale, (? > (features.created_at + ((
263
+ SELECT feature_types.lifetime_days
264
+ FROM feature_types
265
+ WHERE feature_types.id = features.type
266
+ ) * INTERVAL '1 day'))) as current_staleness
267
+ FROM features
268
+ WHERE NOT stale = true`, [currentTime || this.db.fn.now()]);
269
+ const featuresToUpdate = (await query).rows
270
+ .filter(({ potentially_stale, current_staleness }) => (potentially_stale ?? false) !==
271
+ (current_staleness ?? false))
272
+ .map(({ current_staleness, name, project }) => ({
273
+ potentiallyStale: current_staleness ?? false,
274
+ name,
275
+ project,
276
+ }));
277
+ await this.db(TABLE)
278
+ .update('potentially_stale', true)
279
+ .whereIn('name', featuresToUpdate
280
+ .filter((feature) => feature.potentiallyStale === true)
281
+ .map((feature) => feature.name));
282
+ await this.db(TABLE)
283
+ .update('potentially_stale', false)
284
+ .whereIn('name', featuresToUpdate
285
+ .filter((feature) => feature.potentiallyStale !== true)
286
+ .map((feature) => feature.name));
287
+ return featuresToUpdate;
288
+ }
289
+ async isPotentiallyStale(featureName) {
290
+ const result = await this.db(TABLE)
291
+ .first(['potentially_stale'])
292
+ .from(TABLE)
293
+ .where({ name: featureName });
294
+ return result?.potentially_stale ?? false;
295
+ }
261
296
  }
262
297
  exports.default = FeatureToggleStore;
263
298
  FeatureToggleStore.filterByArchived = (queryBuilder, archived) => {
@@ -1 +1 @@
1
- {"version":3,"file":"feature-toggle-store.js","sourceRoot":"","sources":["../../../src/lib/db/feature-toggle-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature-toggle-store.js","sourceRoot":"","sources":["../../../src/lib/db/feature-toggle-store.ts"],"names":[],"mappings":"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"}
@@ -13,5 +13,6 @@ declare class FeatureTypeStore implements IFeatureTypeStore {
13
13
  deleteAll(): Promise<void>;
14
14
  destroy(): void;
15
15
  exists(key: string): Promise<boolean>;
16
+ updateLifetime(id: string, newLifetimeDays: number | null): Promise<IFeatureType | undefined>;
16
17
  }
17
18
  export default FeatureTypeStore;
@@ -39,6 +39,18 @@ class FeatureTypeStore {
39
39
  const { present } = result.rows[0];
40
40
  return present;
41
41
  }
42
+ async updateLifetime(id, newLifetimeDays) {
43
+ const [updatedType] = await this.db(TABLE)
44
+ .update({ lifetime_days: newLifetimeDays })
45
+ .where({ id })
46
+ .returning(['*']);
47
+ if (updatedType) {
48
+ return this.rowToFeatureType(updatedType);
49
+ }
50
+ else {
51
+ return undefined;
52
+ }
53
+ }
42
54
  }
43
55
  exports.default = FeatureTypeStore;
44
56
  module.exports = FeatureTypeStore;
@@ -1 +1 @@
1
- {"version":3,"file":"feature-type-store.js","sourceRoot":"","sources":["../../../src/lib/db/feature-type-store.ts"],"names":[],"mappings":";;AAOA,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC;AAC/D,MAAM,KAAK,GAAG,eAAe,CAAC;AAS9B,MAAM,gBAAgB;IAKlB,YAAY,EAAM,EAAE,SAAsB;QACtC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,uBAAuB,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,MAAM;QACR,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC3C,CAAC;IAEO,gBAAgB,CAAC,GAAoB;QACzC,OAAO;YACH,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,YAAY,EAAE,GAAG,CAAC,aAAa;SAClC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,EAAU;QAChB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QACvD,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAY;QACxB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QACzD,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAW;QACpB,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,SAAS;QACX,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC;IAC/B,CAAC;IAED,OAAO,KAAU,CAAC;IAElB,KAAK,CAAC,MAAM,CAAC,GAAW;QACpB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAC5B,gCAAgC,KAAK,2BAA2B,EAChE,CAAC,GAAG,CAAC,CACR,CAAC;QACF,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnC,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ;AACD,kBAAe,gBAAgB,CAAC;AAChC,MAAM,CAAC,OAAO,GAAG,gBAAgB,CAAC"}
1
+ {"version":3,"file":"feature-type-store.js","sourceRoot":"","sources":["../../../src/lib/db/feature-type-store.ts"],"names":[],"mappings":";;AAOA,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC;AAC/D,MAAM,KAAK,GAAG,eAAe,CAAC;AAS9B,MAAM,gBAAgB;IAKlB,YAAY,EAAM,EAAE,SAAsB;QACtC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,uBAAuB,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,MAAM;QACR,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC3C,CAAC;IAEO,gBAAgB,CAAC,GAAoB;QACzC,OAAO;YACH,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,YAAY,EAAE,GAAG,CAAC,aAAa;SAClC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,EAAU;QAChB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QACvD,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAY;QACxB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QACzD,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAW;QACpB,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,SAAS;QACX,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC;IAC/B,CAAC;IAED,OAAO,KAAU,CAAC;IAElB,KAAK,CAAC,MAAM,CAAC,GAAW;QACpB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAC5B,gCAAgC,KAAK,2BAA2B,EAChE,CAAC,GAAG,CAAC,CACR,CAAC;QACF,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnC,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,cAAc,CAChB,EAAU,EACV,eAA8B;QAE9B,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;aACrC,MAAM,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC;aAC1C,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC;aACb,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAEtB,IAAI,WAAW,EAAE;YACb,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;SAC7C;aAAM;YACH,OAAO,SAAS,CAAC;SACpB;IACL,CAAC;CACJ;AACD,kBAAe,gBAAgB,CAAC;AAChC,MAAM,CAAC,OAAO,GAAG,gBAAgB,CAAC"}
@@ -1,13 +1,11 @@
1
1
  import { IGroupStore, IStoreGroup } from '../types/stores/group-store';
2
- import { Knex } from 'knex';
3
- import Group, { IGroup, IGroupModel, IGroupProject, IGroupRole, IGroupUser, IGroupUserModel } from '../types/group';
4
- import Transaction = Knex.Transaction;
2
+ import Group, { ICreateGroupModel, ICreateGroupUserModel, IGroup, IGroupProject, IGroupRole, IGroupUser } from '../types/group';
5
3
  import { Db } from './db';
6
4
  export default class GroupStore implements IGroupStore {
7
5
  private db;
8
6
  constructor(db: Db);
9
7
  getAllWithId(ids: number[]): Promise<Group[]>;
10
- update(group: IGroupModel): Promise<IGroup>;
8
+ update(group: ICreateGroupModel): Promise<IGroup>;
11
9
  getProjectGroupRoles(projectId: string): Promise<IGroupRole[]>;
12
10
  getGroupProjects(groupIds: number[]): Promise<IGroupProject[]>;
13
11
  getAllUsersByGroups(groupIds: number[]): Promise<IGroupUser[]>;
@@ -20,9 +18,9 @@ export default class GroupStore implements IGroupStore {
20
18
  get(id: number): Promise<Group>;
21
19
  create(group: IStoreGroup): Promise<Group>;
22
20
  count(): Promise<number>;
23
- addUsersToGroup(groupId: number, users: IGroupUserModel[], userName: string, transaction?: Transaction): Promise<void>;
24
- deleteUsersFromGroup(deletableUsers: IGroupUser[], transaction?: Transaction): Promise<void>;
25
- updateGroupUsers(groupId: number, newUsers: IGroupUserModel[], deletableUsers: IGroupUser[], userName: string): Promise<void>;
21
+ addUsersToGroup(groupId: number, users: ICreateGroupUserModel[], userName: string): Promise<void>;
22
+ deleteUsersFromGroup(deletableUsers: IGroupUser[]): Promise<void>;
23
+ updateGroupUsers(groupId: number, newUsers: ICreateGroupUserModel[], deletableUsers: IGroupUser[], userName: string): Promise<void>;
26
24
  getNewGroupsForExternalUser(userId: number, externalGroups: string[]): Promise<IGroup[]>;
27
25
  addUserToGroups(userId: number, groupIds: number[], createdBy?: string): Promise<void>;
28
26
  getOldGroupsForExternalUser(userId: number, externalGroups: string[]): Promise<IGroupUser[]>;
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const notfound_error_1 = __importDefault(require("../error/notfound-error"));
7
7
  const group_1 = __importDefault(require("../types/group"));
8
+ const error_1 = require("../error");
8
9
  const T = {
9
10
  GROUPS: 'groups',
10
11
  GROUP_USER: 'group_user',
@@ -66,11 +67,20 @@ class GroupStore {
66
67
  return groups.map(rowToGroup);
67
68
  }
68
69
  async update(group) {
69
- const rows = await this.db(T.GROUPS)
70
- .where({ id: group.id })
71
- .update(groupToRow(group))
72
- .returning(GROUP_COLUMNS);
73
- return rowToGroup(rows[0]);
70
+ try {
71
+ const rows = await this.db(T.GROUPS)
72
+ .where({ id: group.id })
73
+ .update(groupToRow(group))
74
+ .returning(GROUP_COLUMNS);
75
+ return rowToGroup(rows[0]);
76
+ }
77
+ catch (error) {
78
+ if (error.code === error_1.FOREIGN_KEY_VIOLATION &&
79
+ error.constraint === 'fk_group_role_id') {
80
+ throw new error_1.BadDataError(`Incorrect role id ${group.rootRole}`);
81
+ }
82
+ throw error;
83
+ }
74
84
  }
75
85
  async getProjectGroupRoles(projectId) {
76
86
  const rows = await this.db
@@ -135,36 +145,52 @@ class GroupStore {
135
145
  return rowToGroup(row);
136
146
  }
137
147
  async create(group) {
138
- const row = await this.db(T.GROUPS)
139
- .insert(groupToRow(group))
140
- .returning('*');
141
- return rowToGroup(row[0]);
148
+ try {
149
+ const row = await this.db(T.GROUPS)
150
+ .insert(groupToRow(group))
151
+ .returning('*');
152
+ return rowToGroup(row[0]);
153
+ }
154
+ catch (error) {
155
+ if (error.code === error_1.FOREIGN_KEY_VIOLATION &&
156
+ error.constraint === 'fk_group_role_id') {
157
+ throw new error_1.BadDataError(`Incorrect role id ${group.rootRole}`);
158
+ }
159
+ throw error;
160
+ }
142
161
  }
143
162
  async count() {
144
163
  return this.db(T.GROUPS)
145
164
  .count('*')
146
165
  .then((res) => Number(res[0].count));
147
166
  }
148
- async addUsersToGroup(groupId, users, userName, transaction) {
149
- const rows = (users || []).map((user) => {
150
- return {
151
- group_id: groupId,
152
- user_id: user.user.id,
153
- created_by: userName,
154
- };
155
- });
156
- return (transaction || this.db).batchInsert(T.GROUP_USER, rows);
157
- }
158
- async deleteUsersFromGroup(deletableUsers, transaction) {
159
- return (transaction || this.db)(T.GROUP_USER)
167
+ async addUsersToGroup(groupId, users, userName) {
168
+ try {
169
+ const rows = (users || []).map((user) => {
170
+ return {
171
+ group_id: groupId,
172
+ user_id: user.user.id,
173
+ created_by: userName,
174
+ };
175
+ });
176
+ return await this.db.batchInsert(T.GROUP_USER, rows);
177
+ }
178
+ catch (error) {
179
+ if (error.code === error_1.FOREIGN_KEY_VIOLATION &&
180
+ error.constraint === 'group_user_user_id_fkey') {
181
+ throw new error_1.BadDataError('Incorrect user id in the users group');
182
+ }
183
+ throw error;
184
+ }
185
+ }
186
+ async deleteUsersFromGroup(deletableUsers) {
187
+ return this.db(T.GROUP_USER)
160
188
  .whereIn(['group_id', 'user_id'], deletableUsers.map((user) => [user.groupId, user.userId]))
161
189
  .delete();
162
190
  }
163
191
  async updateGroupUsers(groupId, newUsers, deletableUsers, userName) {
164
- await this.db.transaction(async (tx) => {
165
- await this.addUsersToGroup(groupId, newUsers, userName, tx);
166
- await this.deleteUsersFromGroup(deletableUsers, tx);
167
- });
192
+ await this.addUsersToGroup(groupId, newUsers, userName);
193
+ await this.deleteUsersFromGroup(deletableUsers);
168
194
  }
169
195
  async getNewGroupsForExternalUser(userId, externalGroups) {
170
196
  const rows = await this.db(`${T.GROUPS} as g`)