unleash-server 5.1.9 → 5.2.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 (475) hide show
  1. package/dist/lib/create-config.js +5 -2
  2. package/dist/lib/create-config.js.map +1 -1
  3. package/dist/lib/db/access-store.d.ts +2 -1
  4. package/dist/lib/db/access-store.js +17 -3
  5. package/dist/lib/db/access-store.js.map +1 -1
  6. package/dist/lib/db/client-metrics-store-v2.js +19 -30
  7. package/dist/lib/db/client-metrics-store-v2.js.map +1 -1
  8. package/dist/lib/db/context-field-store.d.ts +4 -1
  9. package/dist/lib/db/context-field-store.js +44 -14
  10. package/dist/lib/db/context-field-store.js.map +1 -1
  11. package/dist/lib/db/environment-store.d.ts +1 -0
  12. package/dist/lib/db/environment-store.js +6 -0
  13. package/dist/lib/db/environment-store.js.map +1 -1
  14. package/dist/lib/db/event-store.js +2 -1
  15. package/dist/lib/db/event-store.js.map +1 -1
  16. package/dist/lib/db/feature-strategy-store.d.ts +2 -0
  17. package/dist/lib/db/feature-strategy-store.js +25 -0
  18. package/dist/lib/db/feature-strategy-store.js.map +1 -1
  19. package/dist/lib/db/feature-strategy-store.test.js +75 -0
  20. package/dist/lib/db/feature-strategy-store.test.js.map +1 -0
  21. package/dist/lib/db/group-store.d.ts +1 -1
  22. package/dist/lib/db/group-store.js +2 -2
  23. package/dist/lib/db/group-store.js.map +1 -1
  24. package/dist/lib/db/index.js +2 -2
  25. package/dist/lib/db/index.js.map +1 -1
  26. package/dist/lib/db/role-store.js +2 -2
  27. package/dist/lib/db/role-store.js.map +1 -1
  28. package/dist/lib/db/segment-store.d.ts +6 -2
  29. package/dist/lib/db/segment-store.js +27 -6
  30. package/dist/lib/db/segment-store.js.map +1 -1
  31. package/dist/lib/error/no-access-error.d.ts +3 -2
  32. package/dist/lib/error/no-access-error.js +10 -4
  33. package/dist/lib/error/no-access-error.js.map +1 -1
  34. package/dist/lib/error/unleash-error.test.js +8 -2
  35. package/dist/lib/error/unleash-error.test.js.map +1 -1
  36. package/dist/lib/features/access/createAccessService.js +5 -5
  37. package/dist/lib/features/access/createAccessService.js.map +1 -1
  38. package/dist/lib/features/export-import-toggles/createExportImportService.js +4 -2
  39. package/dist/lib/features/export-import-toggles/createExportImportService.js.map +1 -1
  40. package/dist/lib/features/export-import-toggles/export-import-api-usage.test.d.ts +1 -0
  41. package/dist/lib/features/export-import-toggles/export-import-api-usage.test.js +69 -0
  42. package/dist/lib/features/export-import-toggles/export-import-api-usage.test.js.map +1 -0
  43. package/dist/lib/features/export-import-toggles/export-import-controller.js +5 -1
  44. package/dist/lib/features/export-import-toggles/export-import-controller.js.map +1 -1
  45. package/dist/lib/features/export-import-toggles/export-import-service.js +7 -2
  46. package/dist/lib/features/export-import-toggles/export-import-service.js.map +1 -1
  47. package/dist/lib/features/feature-toggle/createFeatureToggleService.js +4 -4
  48. package/dist/lib/features/feature-toggle/createFeatureToggleService.js.map +1 -1
  49. package/dist/lib/features/playground/advanced-playground.test.d.ts +1 -0
  50. package/dist/lib/features/playground/advanced-playground.test.js +238 -0
  51. package/dist/lib/features/playground/advanced-playground.test.js.map +1 -0
  52. package/dist/lib/{util → features/playground}/feature-evaluator/client.d.ts +3 -2
  53. package/dist/lib/{util → features/playground}/feature-evaluator/client.js +1 -1
  54. package/dist/lib/features/playground/feature-evaluator/client.js.map +1 -0
  55. package/dist/lib/features/playground/feature-evaluator/constraint.js.map +1 -0
  56. package/dist/lib/features/playground/feature-evaluator/context.js.map +1 -0
  57. package/dist/lib/features/playground/feature-evaluator/feature-evaluator.js.map +1 -0
  58. package/dist/lib/features/playground/feature-evaluator/feature.js.map +1 -0
  59. package/dist/lib/{util → features/playground}/feature-evaluator/helpers.d.ts +1 -1
  60. package/dist/lib/features/playground/feature-evaluator/helpers.js.map +1 -0
  61. package/dist/lib/{util → features/playground}/feature-evaluator/index.d.ts +1 -1
  62. package/dist/lib/{util → features/playground}/feature-evaluator/index.js +2 -2
  63. package/dist/lib/features/playground/feature-evaluator/index.js.map +1 -0
  64. package/dist/lib/features/playground/feature-evaluator/repository/bootstrap-provider.js.map +1 -0
  65. package/dist/lib/features/playground/feature-evaluator/repository/index.js.map +1 -0
  66. package/dist/lib/features/playground/feature-evaluator/repository/storage-provider-in-mem.js.map +1 -0
  67. package/dist/lib/features/playground/feature-evaluator/repository/storage-provider.js.map +1 -0
  68. package/dist/lib/features/playground/feature-evaluator/strategy/application-hostname-strategy.js.map +1 -0
  69. package/dist/lib/features/playground/feature-evaluator/strategy/default-strategy.js.map +1 -0
  70. package/dist/lib/features/playground/feature-evaluator/strategy/flexible-rollout-strategy.js.map +1 -0
  71. package/dist/lib/features/playground/feature-evaluator/strategy/gradual-rollout-random.js.map +1 -0
  72. package/dist/lib/features/playground/feature-evaluator/strategy/gradual-rollout-session-id.js.map +1 -0
  73. package/dist/lib/features/playground/feature-evaluator/strategy/gradual-rollout-user-id.js.map +1 -0
  74. package/dist/lib/features/playground/feature-evaluator/strategy/index.js.map +1 -0
  75. package/dist/lib/features/playground/feature-evaluator/strategy/remote-address-strategy.js.map +1 -0
  76. package/dist/lib/features/playground/feature-evaluator/strategy/strategy.js.map +1 -0
  77. package/dist/lib/{util → features/playground}/feature-evaluator/strategy/unknown-strategy.js +1 -1
  78. package/dist/lib/features/playground/feature-evaluator/strategy/unknown-strategy.js.map +1 -0
  79. package/dist/lib/features/playground/feature-evaluator/strategy/user-with-id-strategy.js.map +1 -0
  80. package/dist/lib/features/playground/feature-evaluator/strategy/util.js.map +1 -0
  81. package/dist/lib/features/playground/feature-evaluator/variant.js.map +1 -0
  82. package/dist/lib/features/playground/generateObjectCombinations.d.ts +7 -0
  83. package/dist/lib/features/playground/generateObjectCombinations.js +16 -0
  84. package/dist/lib/features/playground/generateObjectCombinations.js.map +1 -0
  85. package/dist/lib/features/playground/generateObjectCombinations.test.d.ts +1 -0
  86. package/dist/lib/features/playground/generateObjectCombinations.test.js +33 -0
  87. package/dist/lib/features/playground/generateObjectCombinations.test.js.map +1 -0
  88. package/dist/lib/{util → features/playground}/offline-unleash-client.js +2 -2
  89. package/dist/lib/features/playground/offline-unleash-client.js.map +1 -0
  90. package/dist/lib/{util → features/playground}/offline-unleash-client.test.js +1 -1
  91. package/dist/lib/features/playground/offline-unleash-client.test.js.map +1 -0
  92. package/dist/lib/features/playground/playground-service.d.ts +34 -0
  93. package/dist/lib/features/playground/playground-service.js +114 -0
  94. package/dist/lib/features/playground/playground-service.js.map +1 -0
  95. package/dist/lib/features/playground/playground-view-model.d.ts +4 -0
  96. package/dist/lib/features/playground/playground-view-model.js +49 -0
  97. package/dist/lib/features/playground/playground-view-model.js.map +1 -0
  98. package/dist/lib/features/playground/playground-view-model.test.d.ts +1 -0
  99. package/dist/lib/features/playground/playground-view-model.test.js +122 -0
  100. package/dist/lib/features/playground/playground-view-model.test.js.map +1 -0
  101. package/dist/lib/features/playground/playground.d.ts +16 -0
  102. package/dist/lib/features/playground/playground.js +78 -0
  103. package/dist/lib/features/playground/playground.js.map +1 -0
  104. package/dist/lib/features/playground/playground.test.d.ts +1 -0
  105. package/dist/lib/{routes/admin-api → features/playground}/playground.test.js +3 -2
  106. package/dist/lib/features/playground/playground.test.js.map +1 -0
  107. package/dist/lib/features/playground/validateQueryComplexity.d.ts +1 -0
  108. package/dist/lib/features/playground/validateQueryComplexity.js +15 -0
  109. package/dist/lib/features/playground/validateQueryComplexity.js.map +1 -0
  110. package/dist/lib/features/playground/validateQueryComplexity.test.d.ts +1 -0
  111. package/dist/lib/features/playground/validateQueryComplexity.test.js +19 -0
  112. package/dist/lib/features/playground/validateQueryComplexity.test.js.map +1 -0
  113. package/dist/lib/middleware/rbac-middleware.d.ts +1 -1
  114. package/dist/lib/middleware/rbac-middleware.js +7 -4
  115. package/dist/lib/middleware/rbac-middleware.js.map +1 -1
  116. package/dist/lib/middleware/rbac-middleware.test.js +8 -8
  117. package/dist/lib/middleware/rbac-middleware.test.js.map +1 -1
  118. package/dist/lib/openapi/endpoint-descriptions.d.ts +4 -0
  119. package/dist/lib/openapi/endpoint-descriptions.js +4 -0
  120. package/dist/lib/openapi/endpoint-descriptions.js.map +1 -1
  121. package/dist/lib/openapi/index.js +7 -0
  122. package/dist/lib/openapi/index.js.map +1 -1
  123. package/dist/lib/openapi/meta-schema-rules.test.js +16 -25
  124. package/dist/lib/openapi/meta-schema-rules.test.js.map +1 -1
  125. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.d.ts +652 -0
  126. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.js +146 -0
  127. package/dist/lib/openapi/spec/advanced-playground-environment-feature-schema.js.map +1 -0
  128. package/dist/lib/openapi/spec/advanced-playground-feature-schema.d.ts +1217 -0
  129. package/dist/lib/openapi/spec/advanced-playground-feature-schema.js +51 -0
  130. package/dist/lib/openapi/spec/advanced-playground-feature-schema.js.map +1 -0
  131. package/dist/lib/openapi/spec/advanced-playground-request-schema.d.ts +95 -0
  132. package/dist/lib/openapi/spec/advanced-playground-request-schema.js +49 -0
  133. package/dist/lib/openapi/spec/advanced-playground-request-schema.js.map +1 -0
  134. package/dist/lib/openapi/spec/advanced-playground-response-schema.d.ts +2560 -0
  135. package/dist/lib/openapi/spec/advanced-playground-response-schema.js +50 -0
  136. package/dist/lib/openapi/spec/advanced-playground-response-schema.js.map +1 -0
  137. package/dist/lib/openapi/spec/client-application-schema.d.ts +17 -0
  138. package/dist/lib/openapi/spec/client-application-schema.js +17 -0
  139. package/dist/lib/openapi/spec/client-application-schema.js.map +1 -1
  140. package/dist/lib/openapi/spec/client-feature-schema.d.ts +44 -13
  141. package/dist/lib/openapi/spec/client-feature-schema.js +17 -12
  142. package/dist/lib/openapi/spec/client-feature-schema.js.map +1 -1
  143. package/dist/lib/openapi/spec/client-features-query-schema.d.ts +12 -0
  144. package/dist/lib/openapi/spec/client-features-query-schema.js +12 -0
  145. package/dist/lib/openapi/spec/client-features-query-schema.js.map +1 -1
  146. package/dist/lib/openapi/spec/client-features-schema.d.ts +90 -14
  147. package/dist/lib/openapi/spec/client-features-schema.js +7 -0
  148. package/dist/lib/openapi/spec/client-features-schema.js.map +1 -1
  149. package/dist/lib/openapi/spec/client-features-schema.test.js +5 -12
  150. package/dist/lib/openapi/spec/client-features-schema.test.js.map +1 -1
  151. package/dist/lib/openapi/spec/client-metrics-schema.d.ts +1 -1
  152. package/dist/lib/openapi/spec/client-metrics-schema.js +1 -1
  153. package/dist/lib/openapi/spec/client-metrics-schema.js.map +1 -1
  154. package/dist/lib/openapi/spec/context-field-schema.d.ts +13 -0
  155. package/dist/lib/openapi/spec/context-field-schema.js +13 -0
  156. package/dist/lib/openapi/spec/context-field-schema.js.map +1 -1
  157. package/dist/lib/openapi/spec/context-field-strategies-schema.d.ts +43 -0
  158. package/dist/lib/openapi/spec/context-field-strategies-schema.js +51 -0
  159. package/dist/lib/openapi/spec/context-field-strategies-schema.js.map +1 -0
  160. package/dist/lib/openapi/spec/context-fields-schema.d.ts +13 -0
  161. package/dist/lib/openapi/spec/create-application-schema.d.ts +0 -1
  162. package/dist/lib/openapi/spec/create-application-schema.js +0 -1
  163. package/dist/lib/openapi/spec/create-application-schema.js.map +1 -1
  164. package/dist/lib/openapi/spec/export-result-schema.d.ts +137 -4
  165. package/dist/lib/openapi/spec/feature-environment-schema.d.ts +22 -1
  166. package/dist/lib/openapi/spec/feature-schema.d.ts +49 -2
  167. package/dist/lib/openapi/spec/feature-schema.test.js +1 -1
  168. package/dist/lib/openapi/spec/feature-schema.test.js.map +1 -1
  169. package/dist/lib/openapi/spec/feature-strategy-schema.d.ts +1 -1
  170. package/dist/lib/openapi/spec/feature-strategy-schema.js +1 -1
  171. package/dist/lib/openapi/spec/feature-strategy-schema.js.map +1 -1
  172. package/dist/lib/openapi/spec/feature-variants-schema.d.ts +26 -0
  173. package/dist/lib/openapi/spec/features-schema.d.ts +98 -4
  174. package/dist/lib/openapi/spec/health-check-schema.d.ts +3 -0
  175. package/dist/lib/openapi/spec/health-check-schema.js +3 -0
  176. package/dist/lib/openapi/spec/health-check-schema.js.map +1 -1
  177. package/dist/lib/openapi/spec/health-overview-schema.d.ts +98 -4
  178. package/dist/lib/openapi/spec/health-report-schema.d.ts +98 -4
  179. package/dist/lib/openapi/spec/import-toggles-schema.d.ts +274 -8
  180. package/dist/lib/openapi/spec/index.d.ts +3 -0
  181. package/dist/lib/openapi/spec/index.js +3 -0
  182. package/dist/lib/openapi/spec/index.js.map +1 -1
  183. package/dist/lib/openapi/spec/instance-admin-stats-schema.d.ts +65 -2
  184. package/dist/lib/openapi/spec/instance-admin-stats-schema.js +65 -2
  185. package/dist/lib/openapi/spec/instance-admin-stats-schema.js.map +1 -1
  186. package/dist/lib/openapi/spec/override-schema.d.ts +5 -0
  187. package/dist/lib/openapi/spec/override-schema.js +5 -0
  188. package/dist/lib/openapi/spec/override-schema.js.map +1 -1
  189. package/dist/lib/openapi/spec/password-schema.d.ts +3 -0
  190. package/dist/lib/openapi/spec/password-schema.js +3 -0
  191. package/dist/lib/openapi/spec/password-schema.js.map +1 -1
  192. package/dist/lib/openapi/spec/playground-feature-schema.d.ts +41 -1
  193. package/dist/lib/openapi/spec/playground-feature-schema.js +6 -1
  194. package/dist/lib/openapi/spec/playground-feature-schema.js.map +1 -1
  195. package/dist/lib/openapi/spec/playground-feature-schema.test.js +3 -0
  196. package/dist/lib/openapi/spec/playground-feature-schema.test.js.map +1 -1
  197. package/dist/lib/openapi/spec/playground-request-schema.d.ts +7 -1
  198. package/dist/lib/openapi/spec/playground-request-schema.js +1 -1
  199. package/dist/lib/openapi/spec/playground-request-schema.js.map +1 -1
  200. package/dist/lib/openapi/spec/playground-response-schema.d.ts +93 -3
  201. package/dist/lib/openapi/spec/playground-strategy-schema.d.ts +13 -1
  202. package/dist/lib/openapi/spec/playground-strategy-schema.js +13 -0
  203. package/dist/lib/openapi/spec/playground-strategy-schema.js.map +1 -1
  204. package/dist/lib/openapi/spec/profile-schema.d.ts +49 -2
  205. package/dist/lib/openapi/spec/project-overview-schema.d.ts +98 -4
  206. package/dist/lib/openapi/spec/push-variants-schema.d.ts +26 -0
  207. package/dist/lib/openapi/spec/sdk-context-schema.d.ts +6 -0
  208. package/dist/lib/openapi/spec/sdk-context-schema.js +14 -2
  209. package/dist/lib/openapi/spec/sdk-context-schema.js.map +1 -1
  210. package/dist/lib/openapi/spec/state-schema.d.ts +72 -4
  211. package/dist/lib/openapi/spec/variant-schema.d.ts +21 -0
  212. package/dist/lib/openapi/spec/variant-schema.js +13 -0
  213. package/dist/lib/openapi/spec/variant-schema.js.map +1 -1
  214. package/dist/lib/openapi/spec/variants-schema.d.ts +26 -0
  215. package/dist/lib/openapi/util/create-response-schema.d.ts +1 -0
  216. package/dist/lib/openapi/util/create-response-schema.js +7 -1
  217. package/dist/lib/openapi/util/create-response-schema.js.map +1 -1
  218. package/dist/lib/proxy/proxy-repository.js +1 -1
  219. package/dist/lib/proxy/proxy-repository.js.map +1 -1
  220. package/dist/lib/routes/admin-api/api-token.d.ts +2 -0
  221. package/dist/lib/routes/admin-api/api-token.js +120 -11
  222. package/dist/lib/routes/admin-api/api-token.js.map +1 -1
  223. package/dist/lib/routes/admin-api/context.d.ts +3 -0
  224. package/dist/lib/routes/admin-api/context.js +21 -0
  225. package/dist/lib/routes/admin-api/context.js.map +1 -1
  226. package/dist/lib/routes/admin-api/index.js +1 -1
  227. package/dist/lib/routes/admin-api/index.js.map +1 -1
  228. package/dist/lib/routes/admin-api/instance-admin.d.ts +3 -1
  229. package/dist/lib/routes/admin-api/instance-admin.js +41 -0
  230. package/dist/lib/routes/admin-api/instance-admin.js.map +1 -1
  231. package/dist/lib/routes/admin-api/metrics.test.js +12 -0
  232. package/dist/lib/routes/admin-api/metrics.test.js.map +1 -1
  233. package/dist/lib/routes/admin-api/project/api-token.js +7 -0
  234. package/dist/lib/routes/admin-api/project/api-token.js.map +1 -1
  235. package/dist/lib/routes/admin-api/user/user.js +5 -4
  236. package/dist/lib/routes/admin-api/user/user.js.map +1 -1
  237. package/dist/lib/routes/admin-api/user/user.test.js +30 -5
  238. package/dist/lib/routes/admin-api/user/user.test.js.map +1 -1
  239. package/dist/lib/routes/admin-api/user-admin.js +0 -1
  240. package/dist/lib/routes/admin-api/user-admin.js.map +1 -1
  241. package/dist/lib/routes/client-api/feature.js +4 -0
  242. package/dist/lib/routes/client-api/feature.js.map +1 -1
  243. package/dist/lib/routes/client-api/metrics.js +2 -0
  244. package/dist/lib/routes/client-api/metrics.js.map +1 -1
  245. package/dist/lib/routes/client-api/register.js +2 -0
  246. package/dist/lib/routes/client-api/register.js.map +1 -1
  247. package/dist/lib/routes/controller.d.ts +8 -7
  248. package/dist/lib/routes/controller.js +11 -10
  249. package/dist/lib/routes/controller.js.map +1 -1
  250. package/dist/lib/routes/health-check.js +2 -0
  251. package/dist/lib/routes/health-check.js.map +1 -1
  252. package/dist/lib/server-impl.js +1 -1
  253. package/dist/lib/server-impl.js.map +1 -1
  254. package/dist/lib/services/access-service.d.ts +6 -4
  255. package/dist/lib/services/access-service.js +47 -11
  256. package/dist/lib/services/access-service.js.map +1 -1
  257. package/dist/lib/services/access-service.test.js +39 -22
  258. package/dist/lib/services/access-service.test.js.map +1 -1
  259. package/dist/lib/services/api-token-service.d.ts +1 -0
  260. package/dist/lib/services/api-token-service.js +3 -0
  261. package/dist/lib/services/api-token-service.js.map +1 -1
  262. package/dist/lib/services/context-service.d.ts +4 -1
  263. package/dist/lib/services/context-service.js +14 -1
  264. package/dist/lib/services/context-service.js.map +1 -1
  265. package/dist/lib/services/feature-toggle-service.d.ts +1 -1
  266. package/dist/lib/services/feature-toggle-service.js +6 -7
  267. package/dist/lib/services/feature-toggle-service.js.map +1 -1
  268. package/dist/lib/services/group-service.js +1 -3
  269. package/dist/lib/services/group-service.js.map +1 -1
  270. package/dist/lib/services/index.d.ts +1 -1
  271. package/dist/lib/services/index.js +1 -1
  272. package/dist/lib/services/index.js.map +1 -1
  273. package/dist/lib/services/instance-stats-service.d.ts +2 -3
  274. package/dist/lib/services/user-service.d.ts +1 -0
  275. package/dist/lib/services/user-service.js +8 -0
  276. package/dist/lib/services/user-service.js.map +1 -1
  277. package/dist/lib/services/version-service.d.ts +37 -1
  278. package/dist/lib/services/version-service.js +76 -5
  279. package/dist/lib/services/version-service.js.map +1 -1
  280. package/dist/lib/services/version-service.test.js +196 -9
  281. package/dist/lib/services/version-service.test.js.map +1 -1
  282. package/dist/lib/types/experimental.d.ts +1 -1
  283. package/dist/lib/types/experimental.js +6 -2
  284. package/dist/lib/types/experimental.js.map +1 -1
  285. package/dist/lib/types/model.d.ts +8 -4
  286. package/dist/lib/types/model.js +1 -0
  287. package/dist/lib/types/model.js.map +1 -1
  288. package/dist/lib/types/option.d.ts +2 -0
  289. package/dist/lib/types/permissions.d.ts +34 -27
  290. package/dist/lib/types/permissions.js +85 -29
  291. package/dist/lib/types/permissions.js.map +1 -1
  292. package/dist/lib/types/services.d.ts +1 -1
  293. package/dist/lib/types/stores/access-store.d.ts +1 -1
  294. package/dist/lib/types/stores/context-field-store.d.ts +2 -0
  295. package/dist/lib/types/stores/environment-store.d.ts +1 -0
  296. package/dist/lib/types/stores/feature-strategies-store.d.ts +2 -0
  297. package/dist/lib/types/stores/feature-toggle-store.d.ts +1 -1
  298. package/dist/lib/types/stores/group-store.d.ts +1 -1
  299. package/dist/lib/util/constants.d.ts +7 -1
  300. package/dist/lib/util/constants.js +8 -2
  301. package/dist/lib/util/constants.js.map +1 -1
  302. package/dist/lib/util/ensureArray.d.ts +1 -0
  303. package/dist/lib/util/ensureArray.js +8 -0
  304. package/dist/lib/util/ensureArray.js.map +1 -0
  305. package/dist/lib/util/index.d.ts +1 -1
  306. package/dist/lib/util/index.js +1 -1
  307. package/dist/lib/util/index.js.map +1 -1
  308. package/dist/migrations/20230615122909-fix-env-sort-order.d.ts +2 -0
  309. package/dist/migrations/20230615122909-fix-env-sort-order.js +28 -0
  310. package/dist/migrations/20230615122909-fix-env-sort-order.js.map +1 -0
  311. package/dist/migrations/20230619105029-new-fine-grained-api-token-permissions.d.ts +2 -0
  312. package/dist/migrations/20230619105029-new-fine-grained-api-token-permissions.js +26 -0
  313. package/dist/migrations/20230619105029-new-fine-grained-api-token-permissions.js.map +1 -0
  314. package/dist/migrations/20230619110243-assign-apitoken-permissions-to-rootroles.d.ts +2 -0
  315. package/dist/migrations/20230619110243-assign-apitoken-permissions-to-rootroles.js +23 -0
  316. package/dist/migrations/20230619110243-assign-apitoken-permissions-to-rootroles.js.map +1 -0
  317. package/dist/migrations/20230621141239-refactor-api-token-permissions.d.ts +2 -0
  318. package/dist/migrations/20230621141239-refactor-api-token-permissions.js +19 -0
  319. package/dist/migrations/20230621141239-refactor-api-token-permissions.js.map +1 -0
  320. package/dist/server-dev.js +3 -3
  321. package/dist/server-dev.js.map +1 -1
  322. package/dist/test/arbitraries.test.js +3 -1
  323. package/dist/test/arbitraries.test.js.map +1 -1
  324. package/dist/test/config/test-config.js +0 -1
  325. package/dist/test/config/test-config.js.map +1 -1
  326. package/dist/test/e2e/api/admin/api-token.auth.e2e.test.js +542 -3
  327. package/dist/test/e2e/api/admin/api-token.auth.e2e.test.js.map +1 -1
  328. package/dist/test/e2e/api/admin/api-token.e2e.test.js +14 -1
  329. package/dist/test/e2e/api/admin/api-token.e2e.test.js.map +1 -1
  330. package/dist/test/e2e/api/admin/client-metrics.e2e.test.js +1 -8
  331. package/dist/test/e2e/api/admin/client-metrics.e2e.test.js.map +1 -1
  332. package/dist/test/e2e/api/admin/context.e2e.test.js +47 -1
  333. package/dist/test/e2e/api/admin/context.e2e.test.js.map +1 -1
  334. package/dist/test/e2e/api/admin/project/features.e2e.test.js +14 -14
  335. package/dist/test/e2e/api/admin/project/features.e2e.test.js.map +1 -1
  336. package/dist/test/e2e/helpers/test-helper.d.ts +1 -1
  337. package/dist/test/e2e/helpers/test-helper.js +4 -2
  338. package/dist/test/e2e/helpers/test-helper.js.map +1 -1
  339. package/dist/test/e2e/services/access-service.e2e.test.js +1 -1
  340. package/dist/test/e2e/services/access-service.e2e.test.js.map +1 -1
  341. package/dist/test/e2e/services/playground-service.test.js +2 -2
  342. package/dist/test/e2e/services/playground-service.test.js.map +1 -1
  343. package/dist/test/fixtures/access-service-mock.js +1 -1
  344. package/dist/test/fixtures/access-service-mock.js.map +1 -1
  345. package/dist/test/fixtures/fake-access-store.d.ts +5 -3
  346. package/dist/test/fixtures/fake-access-store.js +24 -9
  347. package/dist/test/fixtures/fake-access-store.js.map +1 -1
  348. package/dist/test/fixtures/fake-environment-store.d.ts +1 -0
  349. package/dist/test/fixtures/fake-environment-store.js +3 -0
  350. package/dist/test/fixtures/fake-environment-store.js.map +1 -1
  351. package/dist/test/fixtures/fake-feature-strategies-store.d.ts +2 -0
  352. package/dist/test/fixtures/fake-feature-strategies-store.js +7 -0
  353. package/dist/test/fixtures/fake-feature-strategies-store.js.map +1 -1
  354. package/dist/test/fixtures/fake-group-store.d.ts +1 -1
  355. package/dist/test/fixtures/fake-group-store.js +1 -1
  356. package/dist/test/fixtures/fake-group-store.js.map +1 -1
  357. package/dist/test/fixtures/fake-role-store.d.ts +1 -1
  358. package/dist/test/fixtures/fake-role-store.js +9 -4
  359. package/dist/test/fixtures/fake-role-store.js.map +1 -1
  360. package/frontend/build/index.html +1 -1
  361. package/frontend/build/static/AdvancedPlayground-520a25e1.js +1 -0
  362. package/frontend/build/static/CreateProject-c430691b.js +4 -0
  363. package/frontend/build/static/{Error-fa3099b2.js → Error-492e8b38.js} +1 -1
  364. package/frontend/build/static/FeatureArchiveDialog-70daa567.js +10 -0
  365. package/frontend/build/static/{FeatureMetricsChart-caa58088.js → FeatureMetricsChart-bc99b364.js} +2 -2
  366. package/frontend/build/static/FeatureViewLazyExport-01d70575.js +7 -0
  367. package/frontend/build/static/LazyAdminExport-e2c90193.js +37 -0
  368. package/frontend/build/static/LazyProjectExport-fa62d2fe.js +13 -0
  369. package/frontend/build/static/NetworkOverview-3b72e4ea.js +1298 -0
  370. package/frontend/build/static/NetworkTraffic-365db744.js +1 -0
  371. package/frontend/build/static/Playground-b473b399.js +1 -0
  372. package/frontend/build/static/{Playground-3eeb2ce7.js → PlaygroundGuidancePopper-8e3e97db.js} +12 -12
  373. package/frontend/build/static/RoleCell-9bb513a8.js +1 -0
  374. package/frontend/build/static/StrategyItemContainer-1f7503c7.js +1 -0
  375. package/frontend/build/static/{chartjs-adapter-date-fns.esm-d0669d39.js → chartjs-adapter-date-fns.esm-db338d44.js} +1 -1
  376. package/frontend/build/static/flowchart-elk-definition-170a3958-a428dd25.js +134 -0
  377. package/frontend/build/static/index-0a56292a.js +450 -0
  378. package/frontend/build/static/{index-70a530dd.js → index-d362ae7a.js} +1 -1
  379. package/frontend/build/static/{index-5ae801ef.js → index-dc5debe9.js} +1 -1
  380. package/frontend/build/static/is_dark-884249e0.js +1 -0
  381. package/frontend/build/static/mindmap-definition-44684416-3c9425ff.js +101 -0
  382. package/frontend/build/static/stringify-ec884b6d.js +1 -0
  383. package/frontend/build/static/timeline-definition-8e5a9bc6-d289cd6d.js +62 -0
  384. package/frontend/build/static/{unknownify-d86d026c.js → unknownify-5b23bf29.js} +1 -1
  385. package/frontend/package.json +18 -17
  386. package/package.json +16 -13
  387. package/dist/lib/routes/admin-api/playground.d.ts +0 -12
  388. package/dist/lib/routes/admin-api/playground.js +0 -46
  389. package/dist/lib/routes/admin-api/playground.js.map +0 -1
  390. package/dist/lib/routes/admin-api/playground.test.js.map +0 -1
  391. package/dist/lib/services/playground-service.d.ts +0 -12
  392. package/dist/lib/services/playground-service.js +0 -65
  393. package/dist/lib/services/playground-service.js.map +0 -1
  394. package/dist/lib/util/feature-evaluator/client.js.map +0 -1
  395. package/dist/lib/util/feature-evaluator/constraint.js.map +0 -1
  396. package/dist/lib/util/feature-evaluator/context.js.map +0 -1
  397. package/dist/lib/util/feature-evaluator/feature-evaluator.js.map +0 -1
  398. package/dist/lib/util/feature-evaluator/feature.js.map +0 -1
  399. package/dist/lib/util/feature-evaluator/helpers.js.map +0 -1
  400. package/dist/lib/util/feature-evaluator/index.js.map +0 -1
  401. package/dist/lib/util/feature-evaluator/repository/bootstrap-provider.js.map +0 -1
  402. package/dist/lib/util/feature-evaluator/repository/index.js.map +0 -1
  403. package/dist/lib/util/feature-evaluator/repository/storage-provider-in-mem.js.map +0 -1
  404. package/dist/lib/util/feature-evaluator/repository/storage-provider.js.map +0 -1
  405. package/dist/lib/util/feature-evaluator/strategy/application-hostname-strategy.js.map +0 -1
  406. package/dist/lib/util/feature-evaluator/strategy/default-strategy.js.map +0 -1
  407. package/dist/lib/util/feature-evaluator/strategy/flexible-rollout-strategy.js.map +0 -1
  408. package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-random.js.map +0 -1
  409. package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-session-id.js.map +0 -1
  410. package/dist/lib/util/feature-evaluator/strategy/gradual-rollout-user-id.js.map +0 -1
  411. package/dist/lib/util/feature-evaluator/strategy/index.js.map +0 -1
  412. package/dist/lib/util/feature-evaluator/strategy/remote-address-strategy.js.map +0 -1
  413. package/dist/lib/util/feature-evaluator/strategy/strategy.js.map +0 -1
  414. package/dist/lib/util/feature-evaluator/strategy/unknown-strategy.js.map +0 -1
  415. package/dist/lib/util/feature-evaluator/strategy/user-with-id-strategy.js.map +0 -1
  416. package/dist/lib/util/feature-evaluator/strategy/util.js.map +0 -1
  417. package/dist/lib/util/feature-evaluator/variant.js.map +0 -1
  418. package/dist/lib/util/offline-unleash-client.js.map +0 -1
  419. package/dist/lib/util/offline-unleash-client.test.js.map +0 -1
  420. package/frontend/build/static/CreateProject-0e1caafd.js +0 -4
  421. package/frontend/build/static/FeatureArchiveDialog-ec9e5524.js +0 -4
  422. package/frontend/build/static/FeatureViewLazyExport-4da2d0f1.js +0 -7
  423. package/frontend/build/static/LazyAdminExport-b294bdfc.js +0 -43
  424. package/frontend/build/static/LazyProjectExport-fc25f20d.js +0 -19
  425. package/frontend/build/static/NetworkOverview-9038e532.js +0 -1296
  426. package/frontend/build/static/NetworkTraffic-de75c58b.js +0 -1
  427. package/frontend/build/static/StrategyItemContainer-4f8afe80.js +0 -1
  428. package/frontend/build/static/index-e59cfb08.js +0 -450
  429. package/frontend/build/static/useProjectRole-cddab9e6.js +0 -1
  430. package/frontend/build/static/v4-a960c1f4.js +0 -1
  431. /package/dist/lib/{routes/admin-api/playground.test.d.ts → db/feature-strategy-store.test.d.ts} +0 -0
  432. /package/dist/lib/{util → features/playground}/feature-evaluator/constraint.d.ts +0 -0
  433. /package/dist/lib/{util → features/playground}/feature-evaluator/constraint.js +0 -0
  434. /package/dist/lib/{util → features/playground}/feature-evaluator/context.d.ts +0 -0
  435. /package/dist/lib/{util → features/playground}/feature-evaluator/context.js +0 -0
  436. /package/dist/lib/{util → features/playground}/feature-evaluator/feature-evaluator.d.ts +0 -0
  437. /package/dist/lib/{util → features/playground}/feature-evaluator/feature-evaluator.js +0 -0
  438. /package/dist/lib/{util → features/playground}/feature-evaluator/feature.d.ts +0 -0
  439. /package/dist/lib/{util → features/playground}/feature-evaluator/feature.js +0 -0
  440. /package/dist/lib/{util → features/playground}/feature-evaluator/helpers.js +0 -0
  441. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/bootstrap-provider.d.ts +0 -0
  442. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/bootstrap-provider.js +0 -0
  443. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/index.d.ts +0 -0
  444. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/index.js +0 -0
  445. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/storage-provider-in-mem.d.ts +0 -0
  446. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/storage-provider-in-mem.js +0 -0
  447. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/storage-provider.d.ts +0 -0
  448. /package/dist/lib/{util → features/playground}/feature-evaluator/repository/storage-provider.js +0 -0
  449. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/application-hostname-strategy.d.ts +0 -0
  450. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/application-hostname-strategy.js +0 -0
  451. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/default-strategy.d.ts +0 -0
  452. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/default-strategy.js +0 -0
  453. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/flexible-rollout-strategy.d.ts +0 -0
  454. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/flexible-rollout-strategy.js +0 -0
  455. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/gradual-rollout-random.d.ts +0 -0
  456. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/gradual-rollout-random.js +0 -0
  457. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/gradual-rollout-session-id.d.ts +0 -0
  458. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/gradual-rollout-session-id.js +0 -0
  459. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/gradual-rollout-user-id.d.ts +0 -0
  460. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/gradual-rollout-user-id.js +0 -0
  461. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/index.d.ts +0 -0
  462. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/index.js +0 -0
  463. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/remote-address-strategy.d.ts +0 -0
  464. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/remote-address-strategy.js +0 -0
  465. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/strategy.d.ts +0 -0
  466. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/strategy.js +0 -0
  467. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/unknown-strategy.d.ts +0 -0
  468. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/user-with-id-strategy.d.ts +0 -0
  469. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/user-with-id-strategy.js +0 -0
  470. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/util.d.ts +0 -0
  471. /package/dist/lib/{util → features/playground}/feature-evaluator/strategy/util.js +0 -0
  472. /package/dist/lib/{util → features/playground}/feature-evaluator/variant.d.ts +0 -0
  473. /package/dist/lib/{util → features/playground}/feature-evaluator/variant.js +0 -0
  474. /package/dist/lib/{util → features/playground}/offline-unleash-client.d.ts +0 -0
  475. /package/dist/lib/{util → features/playground}/offline-unleash-client.test.d.ts +0 -0
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const playground_view_model_1 = require("./playground-view-model");
4
+ describe('playground result to view model', () => {
5
+ it('adds edit links to playground models', () => {
6
+ const input = {
7
+ environment: 'development',
8
+ projects: '*',
9
+ context: { appName: 'playground', userId: '1' },
10
+ };
11
+ const featureResult = {
12
+ isEnabled: false,
13
+ isEnabledInCurrentEnvironment: false,
14
+ strategies: {
15
+ result: false,
16
+ data: [
17
+ {
18
+ name: 'flexibleRollout',
19
+ id: 'ea2c22c1-07fc-4cbe-934d-ffff57cd774b',
20
+ disabled: false,
21
+ parameters: {
22
+ groupId: 'test-playground',
23
+ rollout: '32',
24
+ stickiness: 'default',
25
+ },
26
+ result: {
27
+ enabled: false,
28
+ evaluationStatus: 'complete',
29
+ },
30
+ constraints: [],
31
+ segments: [],
32
+ },
33
+ ],
34
+ },
35
+ projectId: 'default',
36
+ variant: {
37
+ name: 'disabled',
38
+ enabled: false,
39
+ },
40
+ name: 'test-playground',
41
+ variants: [],
42
+ };
43
+ const viewModel = (0, playground_view_model_1.playgroundViewModel)(input, [featureResult]);
44
+ const transformedStrategy = viewModel.features[0].strategies.data[0];
45
+ // check that we're adding links correctly
46
+ expect(transformedStrategy).toMatchObject({
47
+ links: {
48
+ edit: expect.stringMatching(`/projects/${featureResult.projectId}/features/${featureResult.name}/strategies/edit?`) &&
49
+ expect.stringMatching(`environmentId=development`) &&
50
+ expect.stringMatching(`strategyId=${transformedStrategy.id}`),
51
+ },
52
+ });
53
+ // check that we're not changing anything else
54
+ expect(viewModel).toMatchObject({ input, features: [featureResult] });
55
+ });
56
+ it('adds edit links to advanced playground models', () => {
57
+ const input = {
58
+ environments: ['development'],
59
+ projects: '*',
60
+ context: { appName: 'playground', userId: '1' },
61
+ };
62
+ const featureResult = {
63
+ name: 'test-playground',
64
+ projectId: 'default',
65
+ environments: {
66
+ development: [
67
+ {
68
+ isEnabled: false,
69
+ isEnabledInCurrentEnvironment: true,
70
+ strategies: {
71
+ result: false,
72
+ data: [
73
+ {
74
+ name: 'flexibleRollout',
75
+ id: '2a7dfda6-acf1-4e53-8813-6559e8bd66b0',
76
+ disabled: false,
77
+ parameters: {
78
+ groupId: 'test-playground',
79
+ rollout: '50',
80
+ stickiness: 'default',
81
+ },
82
+ result: {
83
+ enabled: false,
84
+ evaluationStatus: 'complete',
85
+ },
86
+ constraints: [],
87
+ segments: [],
88
+ },
89
+ ],
90
+ },
91
+ projectId: 'default',
92
+ variant: {
93
+ name: 'disabled',
94
+ enabled: false,
95
+ },
96
+ name: 'test-playground',
97
+ environment: 'development',
98
+ context: {
99
+ appName: 'playground',
100
+ userId: '1',
101
+ },
102
+ variants: [],
103
+ },
104
+ ],
105
+ },
106
+ };
107
+ const viewModel = (0, playground_view_model_1.advancedPlaygroundViewModel)(input, [featureResult]);
108
+ const transformedStrategy = viewModel.features[0].environments.development[0].strategies
109
+ .data[0];
110
+ // ensure that we're adding the required data
111
+ expect(transformedStrategy).toMatchObject({
112
+ links: {
113
+ edit: expect.stringMatching(`/projects/${featureResult.projectId}/features/${featureResult.name}/strategies/edit?`) &&
114
+ expect.stringMatching(`environmentId=development`) &&
115
+ expect.stringMatching(`strategyId=${transformedStrategy.id}`),
116
+ },
117
+ });
118
+ // check that we're not changing anything else
119
+ expect(viewModel).toMatchObject({ input, features: [featureResult] });
120
+ });
121
+ });
122
+ //# sourceMappingURL=playground-view-model.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playground-view-model.test.js","sourceRoot":"","sources":["../../../../src/lib/features/playground/playground-view-model.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { Request, Response } from 'express';
2
+ import { IUnleashConfig } from '../../types/option';
3
+ import { IUnleashServices } from '../../types/services';
4
+ import Controller from '../../routes/controller';
5
+ import { PlaygroundResponseSchema } from '../../openapi/spec/playground-response-schema';
6
+ import { PlaygroundRequestSchema } from '../../openapi/spec/playground-request-schema';
7
+ import { AdvancedPlaygroundRequestSchema } from '../../openapi/spec/advanced-playground-request-schema';
8
+ import { AdvancedPlaygroundResponseSchema } from '../../openapi/spec/advanced-playground-response-schema';
9
+ export default class PlaygroundController extends Controller {
10
+ private openApiService;
11
+ private playgroundService;
12
+ private flagResolver;
13
+ constructor(config: IUnleashConfig, { openApiService, playgroundService, }: Pick<IUnleashServices, 'openApiService' | 'playgroundService'>);
14
+ evaluateContext(req: Request<any, any, PlaygroundRequestSchema>, res: Response<PlaygroundResponseSchema>): Promise<void>;
15
+ evaluateAdvancedContext(req: Request<any, any, AdvancedPlaygroundRequestSchema>, res: Response<AdvancedPlaygroundResponseSchema>): Promise<void>;
16
+ }
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const permissions_1 = require("../../types/permissions");
7
+ const controller_1 = __importDefault(require("../../routes/controller"));
8
+ const create_response_schema_1 = require("../../openapi/util/create-response-schema");
9
+ const endpoint_descriptions_1 = require("../../openapi/endpoint-descriptions");
10
+ const standard_responses_1 = require("../../openapi/util/standard-responses");
11
+ const create_request_schema_1 = require("../../openapi/util/create-request-schema");
12
+ const playground_response_schema_1 = require("../../openapi/spec/playground-response-schema");
13
+ const playground_view_model_1 = require("./playground-view-model");
14
+ class PlaygroundController extends controller_1.default {
15
+ constructor(config, { openApiService, playgroundService, }) {
16
+ super(config);
17
+ this.openApiService = openApiService;
18
+ this.playgroundService = playgroundService;
19
+ this.flagResolver = config.flagResolver;
20
+ this.route({
21
+ method: 'post',
22
+ path: '',
23
+ handler: this.evaluateContext,
24
+ permission: permissions_1.NONE,
25
+ middleware: [
26
+ openApiService.validPath({
27
+ operationId: 'getPlayground',
28
+ tags: ['Playground'],
29
+ responses: {
30
+ ...(0, standard_responses_1.getStandardResponses)(400, 401),
31
+ 200: (0, create_response_schema_1.createResponseSchema)('playgroundResponseSchema'),
32
+ },
33
+ requestBody: (0, create_request_schema_1.createRequestSchema)('playgroundRequestSchema'),
34
+ ...endpoint_descriptions_1.endpointDescriptions.admin.playground,
35
+ }),
36
+ ],
37
+ });
38
+ this.route({
39
+ method: 'post',
40
+ path: '/advanced',
41
+ handler: this.evaluateAdvancedContext,
42
+ permission: permissions_1.NONE,
43
+ middleware: [
44
+ openApiService.validPath({
45
+ operationId: 'getAdvancedPlayground',
46
+ tags: ['Unstable'],
47
+ responses: {
48
+ ...(0, standard_responses_1.getStandardResponses)(400, 401),
49
+ 200: (0, create_response_schema_1.createResponseSchema)('advancedPlaygroundResponseSchema'),
50
+ },
51
+ requestBody: (0, create_request_schema_1.createRequestSchema)('advancedPlaygroundRequestSchema'),
52
+ ...endpoint_descriptions_1.endpointDescriptions.admin.advancedPlayground,
53
+ }),
54
+ ],
55
+ });
56
+ }
57
+ async evaluateContext(req, res) {
58
+ const result = await this.playgroundService.evaluateQuery(req.body.projects || '*', req.body.environment, req.body.context);
59
+ const response = (0, playground_view_model_1.playgroundViewModel)(req.body, result);
60
+ this.openApiService.respondWithValidation(200, res, playground_response_schema_1.playgroundResponseSchema.$id, response);
61
+ }
62
+ async evaluateAdvancedContext(req, res) {
63
+ if (this.flagResolver.isEnabled('advancedPlayground')) {
64
+ const { payload } = this.flagResolver.getVariant('advancedPlayground');
65
+ const limit = payload?.value && Number.isInteger(parseInt(payload?.value))
66
+ ? parseInt(payload?.value)
67
+ : 15000;
68
+ const result = await this.playgroundService.evaluateAdvancedQuery(req.body.projects || '*', req.body.environments, req.body.context, limit);
69
+ const response = (0, playground_view_model_1.advancedPlaygroundViewModel)(req.body, result);
70
+ res.json(response);
71
+ }
72
+ else {
73
+ res.status(409).end();
74
+ }
75
+ }
76
+ }
77
+ exports.default = PlaygroundController;
78
+ //# sourceMappingURL=playground.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playground.js","sourceRoot":"","sources":["../../../../src/lib/features/playground/playground.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -9,14 +9,15 @@ const services_1 = require("../../services");
9
9
  const test_config_1 = require("../../../test/config/test-config");
10
10
  const store_1 = __importDefault(require("../../../test/fixtures/store"));
11
11
  const app_1 = __importDefault(require("../../app"));
12
- const playground_request_schema_1 = require("../../../lib/openapi/spec/playground-request-schema");
13
- const playground_request_schema_test_1 = require("../../../lib/openapi/spec/playground-request-schema.test");
12
+ const playground_request_schema_1 = require("../../openapi/spec/playground-request-schema");
13
+ const playground_request_schema_test_1 = require("../../openapi/spec/playground-request-schema.test");
14
14
  const arbitraries_test_1 = require("../../../test/arbitraries.test");
15
15
  async function getSetup() {
16
16
  const base = `/random${Math.round(Math.random() * 1000)}`;
17
17
  const stores = (0, store_1.default)();
18
18
  const config = (0, test_config_1.createTestConfig)({
19
19
  server: { baseUriPath: base },
20
+ experimental: { flags: { strictSchemaValidation: true } },
20
21
  });
21
22
  const services = (0, services_1.createServices)(stores, config);
22
23
  const app = await (0, app_1.default)(config, stores, services);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playground.test.js","sourceRoot":"","sources":["../../../../src/lib/features/playground/playground.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const validateQueryComplexity: (environmentsCount: number, featuresCount: number, contextCombinationsCount: number, limit?: number) => void;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validateQueryComplexity = void 0;
4
+ const error_1 = require("../../error");
5
+ const MAX_COMPLEXITY = 30000;
6
+ const validateQueryComplexity = (environmentsCount, featuresCount, contextCombinationsCount, limit = MAX_COMPLEXITY) => {
7
+ const totalCount = environmentsCount * featuresCount * contextCombinationsCount;
8
+ const reason = `Rejecting evaluation as it would generate ${totalCount} combinations exceeding ${limit} limit. `;
9
+ const action = `Please reduce the number of selected environments (${environmentsCount}), features (${featuresCount}), context field combinations (${contextCombinationsCount}).`;
10
+ if (totalCount > limit) {
11
+ throw new error_1.BadDataError(reason + action);
12
+ }
13
+ };
14
+ exports.validateQueryComplexity = validateQueryComplexity;
15
+ //# sourceMappingURL=validateQueryComplexity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateQueryComplexity.js","sourceRoot":"","sources":["../../../../src/lib/features/playground/validateQueryComplexity.ts"],"names":[],"mappings":";;;AAAA,uCAA2C;AAE3C,MAAM,cAAc,GAAG,KAAK,CAAC;AAEtB,MAAM,uBAAuB,GAAG,CACnC,iBAAyB,EACzB,aAAqB,EACrB,wBAAgC,EAChC,KAAK,GAAG,cAAc,EAClB,EAAE;IACN,MAAM,UAAU,GACZ,iBAAiB,GAAG,aAAa,GAAG,wBAAwB,CAAC;IAEjE,MAAM,MAAM,GAAG,6CAA6C,UAAU,2BAA2B,KAAK,UAAU,CAAC;IACjH,MAAM,MAAM,GAAG,sDAAsD,iBAAiB,gBAAgB,aAAa,kCAAkC,wBAAwB,IAAI,CAAC;IAElL,IAAI,UAAU,GAAG,KAAK,EAAE;QACpB,MAAM,IAAI,oBAAY,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;KAC3C;AACL,CAAC,CAAC;AAfW,QAAA,uBAAuB,2BAelC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const validateQueryComplexity_1 = require("./validateQueryComplexity");
4
+ const error_1 = require("../../error");
5
+ test('should not throw error when total combinations are under MAX_COMPLEXITY', () => {
6
+ const environmentsCount = 10;
7
+ const featuresCount = 10;
8
+ const contextCombinationsCount = 10;
9
+ expect(() => (0, validateQueryComplexity_1.validateQueryComplexity)(environmentsCount, featuresCount, contextCombinationsCount)).not.toThrow();
10
+ });
11
+ test('should throw BadDataError when total combinations are over MAX_COMPLEXITY', () => {
12
+ const environmentsCount = 2;
13
+ const featuresCount = 200;
14
+ const contextCombinationsCount = 10000;
15
+ const expectedMessage = `Rejecting evaluation as it would generate 4000000 combinations exceeding 30000 limit. Please reduce the number of selected environments (2), features (200), context field combinations (10000).`;
16
+ expect(() => (0, validateQueryComplexity_1.validateQueryComplexity)(environmentsCount, featuresCount, contextCombinationsCount)).toThrow(error_1.BadDataError);
17
+ expect(() => (0, validateQueryComplexity_1.validateQueryComplexity)(environmentsCount, featuresCount, contextCombinationsCount)).toThrow(expectedMessage);
18
+ });
19
+ //# sourceMappingURL=validateQueryComplexity.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateQueryComplexity.test.js","sourceRoot":"","sources":["../../../../src/lib/features/playground/validateQueryComplexity.test.ts"],"names":[],"mappings":";;AAAA,uEAAoE;AACpE,uCAA2C;AAE3C,IAAI,CAAC,yEAAyE,EAAE,GAAG,EAAE;IACjF,MAAM,iBAAiB,GAAG,EAAE,CAAC;IAC7B,MAAM,aAAa,GAAG,EAAE,CAAC;IACzB,MAAM,wBAAwB,GAAG,EAAE,CAAC;IAEpC,MAAM,CAAC,GAAG,EAAE,CACR,IAAA,iDAAuB,EACnB,iBAAiB,EACjB,aAAa,EACb,wBAAwB,CAC3B,CACJ,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;AACpB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2EAA2E,EAAE,GAAG,EAAE;IACnF,MAAM,iBAAiB,GAAG,CAAC,CAAC;IAC5B,MAAM,aAAa,GAAG,GAAG,CAAC;IAC1B,MAAM,wBAAwB,GAAG,KAAK,CAAC;IAEvC,MAAM,eAAe,GAAG,kMAAkM,CAAC;IAE3N,MAAM,CAAC,GAAG,EAAE,CACR,IAAA,iDAAuB,EACnB,iBAAiB,EACjB,aAAa,EACb,wBAAwB,CAC3B,CACJ,CAAC,OAAO,CAAC,oBAAY,CAAC,CAAC;IACxB,MAAM,CAAC,GAAG,EAAE,CACR,IAAA,iDAAuB,EACnB,iBAAiB,EACjB,aAAa,EACb,wBAAwB,CAC3B,CACJ,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;AAC/B,CAAC,CAAC,CAAC"}
@@ -2,7 +2,7 @@ import { IUnleashConfig } from '../types/option';
2
2
  import { IUnleashStores } from '../types/stores';
3
3
  import User from '../types/user';
4
4
  interface PermissionChecker {
5
- hasPermission(user: User, permission: string, projectId?: string, environment?: string): Promise<boolean>;
5
+ hasPermission(user: User, permissions: string[], projectId?: string, environment?: string): Promise<boolean>;
6
6
  }
7
7
  declare const rbacMiddleware: (config: Pick<IUnleashConfig, 'getLogger'>, { featureToggleStore }: Pick<IUnleashStores, 'featureToggleStore'>, accessService: PermissionChecker) => any;
8
8
  export default rbacMiddleware;
@@ -12,7 +12,10 @@ const rbacMiddleware = (config, { featureToggleStore }, accessService) => {
12
12
  const logger = config.getLogger('/middleware/rbac-middleware.ts');
13
13
  logger.debug('Enabling RBAC middleware');
14
14
  return (req, res, next) => {
15
- req.checkRbac = async (permission) => {
15
+ req.checkRbac = async (permissions) => {
16
+ const permissionsArray = Array.isArray(permissions)
17
+ ? permissions
18
+ : [permissions];
16
19
  const { user, params } = req;
17
20
  if (!user) {
18
21
  logger.error('RBAC requires a user to exist on the request.');
@@ -31,16 +34,16 @@ const rbacMiddleware = (config, { featureToggleStore }, accessService) => {
31
34
  // Temporary workaround to figure out projectId for feature toggle updates.
32
35
  // will be removed in Unleash v5.0
33
36
  if (!projectId &&
34
- [permissions_1.DELETE_FEATURE, permissions_1.UPDATE_FEATURE].includes(permission)) {
37
+ permissionsArray.some((permission) => [permissions_1.DELETE_FEATURE, permissions_1.UPDATE_FEATURE].includes(permission))) {
35
38
  const { featureName } = params;
36
39
  projectId = await featureToggleStore.getProjectId(featureName);
37
40
  }
38
41
  else if (projectId === undefined &&
39
- (permission == permissions_1.CREATE_FEATURE ||
42
+ permissionsArray.some((permission) => permission == permissions_1.CREATE_FEATURE ||
40
43
  permission.endsWith('FEATURE_STRATEGY'))) {
41
44
  projectId = 'default';
42
45
  }
43
- return accessService.hasPermission(user, permission, projectId, environment);
46
+ return accessService.hasPermission(user, permissionsArray, projectId, environment);
44
47
  };
45
48
  return next();
46
49
  };
@@ -1 +1 @@
1
- {"version":3,"file":"rbac-middleware.js","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.ts"],"names":[],"mappings":";;AAAA,sDAK8B;AAc9B,SAAS,SAAS,CACd,IAAY,EACZ,EAAE,MAAM,EAAE,IAAI,EAAO,EACrB,YAAqB;IAErB,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9C,IAAI,KAAK,KAAK,SAAS,EAAE;QACrB,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;KACzC;IACD,OAAO,KAAK,IAAI,YAAY,CAAC;AACjC,CAAC;AAED,MAAM,cAAc,GAAG,CACnB,MAAyC,EACzC,EAAE,kBAAkB,EAA8C,EAClE,aAAgC,EAC7B,EAAE;IACL,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,gCAAgC,CAAC,CAAC;IAClE,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAEzC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACtB,GAAG,CAAC,SAAS,GAAG,KAAK,EAAE,UAAkB,EAAE,EAAE;YACzC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;YAE7B,IAAI,CAAC,IAAI,EAAE;gBACP,MAAM,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;gBAC9D,OAAO,KAAK,CAAC;aAChB;YAED,IAAI,IAAI,CAAC,KAAK,EAAE;gBACZ,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,mBAAK,CAAC,CAAC;aAC3C;YAED,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;gBACV,MAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;gBAC5D,OAAO,KAAK,CAAC;aAChB;YAED,IAAI,SAAS,GACT,SAAS,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAC7D,IAAI,WAAW,GACX,SAAS,CAAC,aAAa,EAAE,GAAG,CAAC;gBAC7B,SAAS,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;YAEpC,2EAA2E;YAC3E,kCAAkC;YAClC,IACI,CAAC,SAAS;gBACV,CAAC,4BAAc,EAAE,4BAAc,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EACvD;gBACE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;gBAC/B,SAAS,GAAG,MAAM,kBAAkB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;aAClE;iBAAM,IACH,SAAS,KAAK,SAAS;gBACvB,CAAC,UAAU,IAAI,4BAAc;oBACzB,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,EAC9C;gBACE,SAAS,GAAG,SAAS,CAAC;aACzB;YAED,OAAO,aAAa,CAAC,aAAa,CAC9B,IAAI,EACJ,UAAU,EACV,SAAS,EACT,WAAW,CACd,CAAC;QACN,CAAC,CAAC;QACF,OAAO,IAAI,EAAE,CAAC;IAClB,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"rbac-middleware.js","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.ts"],"names":[],"mappings":";;AAAA,sDAK8B;AAc9B,SAAS,SAAS,CACd,IAAY,EACZ,EAAE,MAAM,EAAE,IAAI,EAAO,EACrB,YAAqB;IAErB,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9C,IAAI,KAAK,KAAK,SAAS,EAAE;QACrB,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;KACzC;IACD,OAAO,KAAK,IAAI,YAAY,CAAC;AACjC,CAAC;AAED,MAAM,cAAc,GAAG,CACnB,MAAyC,EACzC,EAAE,kBAAkB,EAA8C,EAClE,aAAgC,EAC7B,EAAE;IACL,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,gCAAgC,CAAC,CAAC;IAClE,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAEzC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACtB,GAAG,CAAC,SAAS,GAAG,KAAK,EAAE,WAA8B,EAAE,EAAE;YACrD,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;gBAC/C,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YAEpB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;YAE7B,IAAI,CAAC,IAAI,EAAE;gBACP,MAAM,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;gBAC9D,OAAO,KAAK,CAAC;aAChB;YAED,IAAI,IAAI,CAAC,KAAK,EAAE;gBACZ,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,mBAAK,CAAC,CAAC;aAC3C;YAED,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;gBACV,MAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;gBAC5D,OAAO,KAAK,CAAC;aAChB;YAED,IAAI,SAAS,GACT,SAAS,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAC7D,IAAI,WAAW,GACX,SAAS,CAAC,aAAa,EAAE,GAAG,CAAC;gBAC7B,SAAS,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;YAEpC,2EAA2E;YAC3E,kCAAkC;YAClC,IACI,CAAC,SAAS;gBACV,gBAAgB,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CACjC,CAAC,4BAAc,EAAE,4BAAc,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CACxD,EACH;gBACE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;gBAC/B,SAAS,GAAG,MAAM,kBAAkB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;aAClE;iBAAM,IACH,SAAS,KAAK,SAAS;gBACvB,gBAAgB,CAAC,IAAI,CACjB,CAAC,UAAU,EAAE,EAAE,CACX,UAAU,IAAI,4BAAc;oBAC5B,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAC9C,EACH;gBACE,SAAS,GAAG,SAAS,CAAC;aACzB;YAED,OAAO,aAAa,CAAC,aAAa,CAC9B,IAAI,EACJ,gBAAgB,EAChB,SAAS,EACT,WAAW,CACd,CAAC;QACN,CAAC,CAAC;QACF,OAAO,IAAI,EAAE,CAAC;IAClB,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,cAAc,CAAC"}
@@ -138,7 +138,7 @@ test('should verify permission for root resource', async () => {
138
138
  func(req, undefined, cb);
139
139
  await req.checkRbac(perms.ADMIN);
140
140
  expect(accessService.hasPermission).toHaveBeenCalledTimes(1);
141
- expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, perms.ADMIN, undefined, undefined);
141
+ expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, [perms.ADMIN], undefined, undefined);
142
142
  });
143
143
  test('should lookup projectId from params', async () => {
144
144
  const accessService = {
@@ -157,7 +157,7 @@ test('should lookup projectId from params', async () => {
157
157
  };
158
158
  func(req, undefined, cb);
159
159
  await req.checkRbac(perms.UPDATE_PROJECT);
160
- expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, perms.UPDATE_PROJECT, req.params.projectId, undefined);
160
+ expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, [perms.UPDATE_PROJECT], req.params.projectId, undefined);
161
161
  });
162
162
  test('should lookup projectId from feature toggle', async () => {
163
163
  const projectId = 'some-project-33';
@@ -179,7 +179,7 @@ test('should lookup projectId from feature toggle', async () => {
179
179
  };
180
180
  func(req, undefined, cb);
181
181
  await req.checkRbac(perms.UPDATE_FEATURE);
182
- expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, perms.UPDATE_FEATURE, projectId, undefined);
182
+ expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, [perms.UPDATE_FEATURE], projectId, undefined);
183
183
  });
184
184
  test('should lookup projectId from data', async () => {
185
185
  const projectId = 'some-project-33';
@@ -202,7 +202,7 @@ test('should lookup projectId from data', async () => {
202
202
  };
203
203
  func(req, undefined, cb);
204
204
  await req.checkRbac(perms.CREATE_FEATURE);
205
- expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, perms.CREATE_FEATURE, projectId, undefined);
205
+ expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, [perms.CREATE_FEATURE], projectId, undefined);
206
206
  });
207
207
  test('Does not double check permission if not changing project when updating toggle', async () => {
208
208
  const oldProjectId = 'some-project-34';
@@ -221,7 +221,7 @@ test('Does not double check permission if not changing project when updating tog
221
221
  func(req, undefined, cb);
222
222
  await req.checkRbac(perms.UPDATE_FEATURE);
223
223
  expect(accessService.hasPermission).toHaveBeenCalledTimes(1);
224
- expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, perms.UPDATE_FEATURE, oldProjectId, undefined);
224
+ expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, [perms.UPDATE_FEATURE], oldProjectId, undefined);
225
225
  });
226
226
  test('UPDATE_TAG_TYPE does not need projectId', async () => {
227
227
  const accessService = {
@@ -237,7 +237,7 @@ test('UPDATE_TAG_TYPE does not need projectId', async () => {
237
237
  func(req, undefined, cb);
238
238
  await req.checkRbac(perms.UPDATE_TAG_TYPE);
239
239
  expect(accessService.hasPermission).toHaveBeenCalledTimes(1);
240
- expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, perms.UPDATE_TAG_TYPE, undefined, undefined);
240
+ expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, [perms.UPDATE_TAG_TYPE], undefined, undefined);
241
241
  });
242
242
  test('DELETE_TAG_TYPE does not need projectId', async () => {
243
243
  const accessService = {
@@ -253,7 +253,7 @@ test('DELETE_TAG_TYPE does not need projectId', async () => {
253
253
  func(req, undefined, cb);
254
254
  await req.checkRbac(perms.DELETE_TAG_TYPE);
255
255
  expect(accessService.hasPermission).toHaveBeenCalledTimes(1);
256
- expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, perms.DELETE_TAG_TYPE, undefined, undefined);
256
+ expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, [perms.DELETE_TAG_TYPE], undefined, undefined);
257
257
  });
258
258
  test('should not expect featureName for UPDATE_FEATURE when projectId specified', async () => {
259
259
  const projectId = 'some-project-33';
@@ -274,6 +274,6 @@ test('should not expect featureName for UPDATE_FEATURE when projectId specified'
274
274
  };
275
275
  func(req, undefined, cb);
276
276
  await req.checkRbac(perms.UPDATE_FEATURE);
277
- expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, perms.UPDATE_FEATURE, projectId, undefined);
277
+ expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, [perms.UPDATE_FEATURE], projectId, undefined);
278
278
  });
279
279
  //# sourceMappingURL=rbac-middleware.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rbac-middleware.test.js","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wEAA+C;AAC/C,yDAAiC;AACjC,4DAA8C;AAE9C,+DAAiE;AACjE,iEAAwC;AAExC,8GAAmF;AACnF,yDAAyD;AAEzD,IAAI,MAAsB,CAAC;AAC3B,IAAI,kBAAuC,CAAC;AAE5C,UAAU,CAAC,GAAG,EAAE;IACZ,kBAAkB,GAAG,IAAI,mCAAsB,EAAE,CAAC;IAClD,MAAM,GAAG,IAAA,8BAAgB,GAAE,CAAC;AAChC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;IACzC,MAAM,aAAa,GAAG;QAClB,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE;KAC3B,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,EAAE,aAAa,CAAC,CAAC;IAE3E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAErB,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAEtB,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,aAAa;IACb,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,CAAC;IACnC,aAAa;IACb,MAAM,CAAC,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAClD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;IACrD,MAAM,aAAa,GAAG;QAClB,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE;KAC3B,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,EAAE,aAAa,CAAC,CAAC;IAE3E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,GAAG,GAAQ;QACb,IAAI,EAAE,IAAI,kBAAO,CAAC;YACd,SAAS,EAAE,KAAK;YAChB,WAAW,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;YAC1B,OAAO,EAAE,GAAG;YACZ,WAAW,EAAE,GAAG;YAChB,IAAI,EAAE,wBAAY,CAAC,KAAK;YACxB,MAAM,EAAE,GAAG;SACd,CAAC;KACL,CAAC;IAEF,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAEnD,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;IACzD,MAAM,aAAa,GAAG;QAClB,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE;KAC3B,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,EAAE,aAAa,CAAC,CAAC;IAE3E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,GAAG,GAAQ;QACb,IAAI,EAAE,IAAI,kBAAO,CAAC;YACd,SAAS,EAAE,KAAK;YAChB,WAAW,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;YAC3B,OAAO,EAAE,GAAG;YACZ,WAAW,EAAE,GAAG;YAChB,IAAI,EAAE,wBAAY,CAAC,MAAM;YACzB,MAAM,EAAE,GAAG;SACd,CAAC;KACL,CAAC;IAEF,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAEnD,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;AACjE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;IACpD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACxE,MAAM,aAAa,GAAG;QAClB,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE;KAC3B,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,EAAE,aAAa,CAAC,CAAC;IAE3E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,GAAG,GAAQ;QACb,IAAI,EAAE;YACF,QAAQ,EAAE,MAAM;SACnB;KACJ,CAAC;IAEF,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAEnD,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;IACpD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACxE,MAAM,aAAa,GAAG;QAClB,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE;KAC3B,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,EAAE,aAAa,CAAC,CAAC;IAE3E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,GAAG,GAAQ,EAAE,CAAC;IAEpB,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAEnD,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;AACjE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;IAC1D,MAAM,aAAa,GAAG;QAClB,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE;KAC3B,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,EAAE,aAAa,CAAC,CAAC;IAE3E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,GAAG,GAAQ;QACb,IAAI,EAAE,IAAI,cAAI,CAAC;YACX,QAAQ,EAAE,MAAM;YAChB,EAAE,EAAE,CAAC;SACR,CAAC;QACF,MAAM,EAAE,EAAE;KACb,CAAC;IAEF,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,MAAM,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAEjC,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC7D,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,oBAAoB,CACpD,GAAG,CAAC,IAAI,EACR,KAAK,CAAC,KAAK,EACX,SAAS,EACT,SAAS,CACZ,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;IACnD,MAAM,aAAa,GAAG;QAClB,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE;KAC3B,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,EAAE,aAAa,CAAC,CAAC;IAE3E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,GAAG,GAAQ;QACb,IAAI,EAAE,IAAI,cAAI,CAAC;YACX,QAAQ,EAAE,MAAM;YAChB,EAAE,EAAE,CAAC;SACR,CAAC;QACF,MAAM,EAAE;YACJ,SAAS,EAAE,WAAW;SACzB;KACJ,CAAC;IAEF,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,MAAM,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAE1C,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,oBAAoB,CACpD,GAAG,CAAC,IAAI,EACR,KAAK,CAAC,cAAc,EACpB,GAAG,CAAC,MAAM,CAAC,SAAS,EACpB,SAAS,CACZ,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;IAC3D,MAAM,SAAS,GAAG,iBAAiB,CAAC;IACpC,MAAM,WAAW,GAAG,qBAAqB,CAAC;IAE1C,MAAM,aAAa,GAAG;QAClB,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE;KAC3B,CAAC;IAEF,kBAAkB,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAEvE,MAAM,IAAI,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,EAAE,aAAa,CAAC,CAAC;IAE3E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,GAAG,GAAQ;QACb,IAAI,EAAE,IAAI,cAAI,CAAC;YACX,QAAQ,EAAE,MAAM;YAChB,EAAE,EAAE,CAAC;SACR,CAAC;QACF,MAAM,EAAE;YACJ,WAAW;SACd;KACJ,CAAC;IAEF,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,MAAM,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAE1C,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,oBAAoB,CACpD,GAAG,CAAC,IAAI,EACR,KAAK,CAAC,cAAc,EACpB,SAAS,EACT,SAAS,CACZ,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;IACjD,MAAM,SAAS,GAAG,iBAAiB,CAAC;IACpC,MAAM,WAAW,GAAG,qBAAqB,CAAC;IAE1C,MAAM,aAAa,GAAG;QAClB,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE;KAC3B,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,EAAE,aAAa,CAAC,CAAC;IAE3E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,GAAG,GAAQ;QACb,IAAI,EAAE,IAAI,cAAI,CAAC;YACX,QAAQ,EAAE,MAAM;YAChB,EAAE,EAAE,CAAC;SACR,CAAC;QACF,MAAM,EAAE,EAAE;QACV,IAAI,EAAE;YACF,WAAW;YACX,OAAO,EAAE,SAAS;SACrB;KACJ,CAAC;IAEF,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,MAAM,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAE1C,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,oBAAoB,CACpD,GAAG,CAAC,IAAI,EACR,KAAK,CAAC,cAAc,EACpB,SAAS,EACT,SAAS,CACZ,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+EAA+E,EAAE,KAAK,IAAI,EAAE;IAC7F,MAAM,YAAY,GAAG,iBAAiB,CAAC;IACvC,MAAM,WAAW,GAAG,qBAAqB,CAAC;IAC1C,MAAM,aAAa,GAAG;QAClB,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC;KACjD,CAAC;IACF,kBAAkB,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAE1E,MAAM,IAAI,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,EAAE,aAAa,CAAC,CAAC;IAC3E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,GAAG,GAAQ;QACb,IAAI,EAAE,IAAI,cAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;QAC3C,MAAM,EAAE,EAAE,WAAW,EAAE;QACvB,IAAI,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE;KAC/C,CAAC;IACF,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,MAAM,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAC1C,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC7D,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,oBAAoB,CACpD,GAAG,CAAC,IAAI,EACR,KAAK,CAAC,cAAc,EACpB,YAAY,EACZ,SAAS,CACZ,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;IACvD,MAAM,aAAa,GAAG;QAClB,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC;KACjD,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,EAAE,aAAa,CAAC,CAAC;IAC3E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,GAAG,GAAQ;QACb,IAAI,EAAE,IAAI,cAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;QAC3C,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,0BAA0B,EAAE;KAC1E,CAAC;IACF,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,MAAM,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAC3C,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC7D,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,oBAAoB,CACpD,GAAG,CAAC,IAAI,EACR,KAAK,CAAC,eAAe,EACrB,SAAS,EACT,SAAS,CACZ,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;IACvD,MAAM,aAAa,GAAG;QAClB,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC;KACjD,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,EAAE,aAAa,CAAC,CAAC;IAC3E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,GAAG,GAAQ;QACb,IAAI,EAAE,IAAI,cAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;QAC3C,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,0BAA0B,EAAE;KAC1E,CAAC;IACF,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,MAAM,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAC3C,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC7D,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,oBAAoB,CACpD,GAAG,CAAC,IAAI,EACR,KAAK,CAAC,eAAe,EACrB,SAAS,EACT,SAAS,CACZ,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;IACzF,MAAM,SAAS,GAAG,iBAAiB,CAAC;IAEpC,MAAM,aAAa,GAAG;QAClB,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE;KAC3B,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,EAAE,aAAa,CAAC,CAAC;IAE3E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,GAAG,GAAQ;QACb,IAAI,EAAE,IAAI,cAAI,CAAC;YACX,QAAQ,EAAE,MAAM;YAChB,EAAE,EAAE,CAAC;SACR,CAAC;QACF,MAAM,EAAE,EAAE;QACV,IAAI,EAAE;YACF,OAAO,EAAE,SAAS;SACrB;KACJ,CAAC;IAEF,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,MAAM,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAE1C,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,oBAAoB,CACpD,GAAG,CAAC,IAAI,EACR,KAAK,CAAC,cAAc,EACpB,SAAS,EACT,SAAS,CACZ,CAAC;AACN,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"rbac-middleware.test.js","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.test.ts"],"names":[],"mappings":"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"}
@@ -12,5 +12,9 @@ export declare const endpointDescriptions: {
12
12
  readonly description: "Use the provided `context`, `environment`, and `projects` to evaluate toggles on this Unleash instance. Returns a list of all toggles that match the parameters and what they evaluate to. The response also contains the input parameters that were provided.";
13
13
  readonly summary: "Evaluate an Unleash context against a set of environments and projects.";
14
14
  };
15
+ readonly advancedPlayground: {
16
+ readonly description: "Use the provided `context`, `environments`, and `projects` to evaluate toggles on this Unleash instance. You can use comma-separated values to provide multiple values to each context field. Returns a combinatorial list of all toggles that match the parameters and what they evaluate to. The response also contains the input parameters that were provided.";
17
+ readonly summary: "Batch evaluate an Unleash context against a set of environments and projects.";
18
+ };
15
19
  };
16
20
  };
@@ -15,6 +15,10 @@ exports.endpointDescriptions = {
15
15
  description: 'Use the provided `context`, `environment`, and `projects` to evaluate toggles on this Unleash instance. Returns a list of all toggles that match the parameters and what they evaluate to. The response also contains the input parameters that were provided.',
16
16
  summary: 'Evaluate an Unleash context against a set of environments and projects.',
17
17
  },
18
+ advancedPlayground: {
19
+ description: 'Use the provided `context`, `environments`, and `projects` to evaluate toggles on this Unleash instance. You can use comma-separated values to provide multiple values to each context field. Returns a combinatorial list of all toggles that match the parameters and what they evaluate to. The response also contains the input parameters that were provided.',
20
+ summary: 'Batch evaluate an Unleash context against a set of environments and projects.',
21
+ },
18
22
  },
19
23
  };
20
24
  //# sourceMappingURL=endpoint-descriptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint-descriptions.js","sourceRoot":"","sources":["../../../src/lib/openapi/endpoint-descriptions.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG;IAChC,KAAK,EAAE;QACH,MAAM,EAAE;YACJ,WAAW,EACP,yQAAyQ;YAC7Q,OAAO,EACH,0FAA0F;SACjG;QACD,gBAAgB,EAAE;YACd,WAAW,EACP,qIAAqI;YACzI,OAAO,EAAE,sDAAsD;SAClE;QACD,UAAU,EAAE;YACR,WAAW,EACP,gQAAgQ;YACpQ,OAAO,EACH,yEAAyE;SAChF;KACJ;CACK,CAAC"}
1
+ {"version":3,"file":"endpoint-descriptions.js","sourceRoot":"","sources":["../../../src/lib/openapi/endpoint-descriptions.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG;IAChC,KAAK,EAAE;QACH,MAAM,EAAE;YACJ,WAAW,EACP,yQAAyQ;YAC7Q,OAAO,EACH,0FAA0F;SACjG;QACD,gBAAgB,EAAE;YACd,WAAW,EACP,qIAAqI;YACzI,OAAO,EAAE,sDAAsD;SAClE;QACD,UAAU,EAAE;YACR,WAAW,EACP,gQAAgQ;YACpQ,OAAO,EACH,yEAAyE;SAChF;QACD,kBAAkB,EAAE;YAChB,WAAW,EACP,oWAAoW;YACxW,OAAO,EACH,+EAA+E;SACtF;KACJ;CACK,CAAC"}
@@ -31,6 +31,8 @@ const client_metrics_env_schema_1 = require("./spec/client-metrics-env-schema");
31
31
  const update_tags_schema_1 = require("./spec/update-tags-schema");
32
32
  const batch_stale_schema_1 = require("./spec/batch-stale-schema");
33
33
  const create_application_schema_1 = require("./spec/create-application-schema");
34
+ const context_field_strategies_schema_1 = require("./spec/context-field-strategies-schema");
35
+ const advanced_playground_environment_feature_schema_1 = require("./spec/advanced-playground-environment-feature-schema");
34
36
  // All schemas in `openapi/spec` should be listed here.
35
37
  exports.schemas = {
36
38
  adminCountSchema: spec_1.adminCountSchema,
@@ -40,6 +42,10 @@ exports.schemas = {
40
42
  addonCreateUpdateSchema: spec_1.addonCreateUpdateSchema,
41
43
  addonsSchema: spec_1.addonsSchema,
42
44
  addonTypeSchema: spec_1.addonTypeSchema,
45
+ advancedPlaygroundEnvironmentFeatureSchema: advanced_playground_environment_feature_schema_1.advancedPlaygroundEnvironmentFeatureSchema,
46
+ advancedPlaygroundFeatureSchema: spec_1.advancedPlaygroundFeatureSchema,
47
+ advancedPlaygroundRequestSchema: spec_1.advancedPlaygroundRequestSchema,
48
+ advancedPlaygroundResponseSchema: spec_1.advancedPlaygroundResponseSchema,
43
49
  apiTokenSchema: spec_1.apiTokenSchema,
44
50
  apiTokensSchema: spec_1.apiTokensSchema,
45
51
  applicationSchema: spec_1.applicationSchema,
@@ -179,6 +185,7 @@ exports.schemas = {
179
185
  importTogglesSchema: spec_1.importTogglesSchema,
180
186
  importTogglesValidateSchema: spec_1.importTogglesValidateSchema,
181
187
  importTogglesValidateItemSchema: spec_1.importTogglesValidateItemSchema,
188
+ contextFieldStrategiesSchema: context_field_strategies_schema_1.contextFieldStrategiesSchema,
182
189
  };
183
190
  // Remove JSONSchema keys that would result in an invalid OpenAPI spec.
184
191
  const removeJsonSchemaProps = (schema) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/openapi/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/openapi/index.ts"],"names":[],"mappings":"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"}