unleash-server 4.2.0 → 4.3.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (263) hide show
  1. package/README.md +1 -0
  2. package/dist/lib/addons/addon.d.ts +2 -1
  3. package/dist/lib/addons/addon.js.map +1 -1
  4. package/dist/lib/addons/datadog.d.ts +2 -1
  5. package/dist/lib/addons/datadog.js.map +1 -1
  6. package/dist/lib/addons/datadog.test.js +3 -0
  7. package/dist/lib/addons/datadog.test.js.map +1 -1
  8. package/dist/lib/addons/feature-event-formatter-md.d.ts +1 -1
  9. package/dist/lib/addons/feature-event-formatter-md.js +13 -14
  10. package/dist/lib/addons/feature-event-formatter-md.js.map +1 -1
  11. package/dist/lib/addons/slack.d.ts +2 -1
  12. package/dist/lib/addons/slack.js.map +1 -1
  13. package/dist/lib/addons/slack.test.js +6 -0
  14. package/dist/lib/addons/slack.test.js.map +1 -1
  15. package/dist/lib/addons/teams.d.ts +2 -1
  16. package/dist/lib/addons/teams.js.map +1 -1
  17. package/dist/lib/addons/teams.test.js +3 -0
  18. package/dist/lib/addons/teams.test.js.map +1 -1
  19. package/dist/lib/addons/webhook.d.ts +8 -2
  20. package/dist/lib/addons/webhook.js +0 -1
  21. package/dist/lib/addons/webhook.js.map +1 -1
  22. package/dist/lib/addons/webhook.test.js +2 -0
  23. package/dist/lib/addons/webhook.test.js.map +1 -1
  24. package/dist/lib/create-config.js +11 -20
  25. package/dist/lib/create-config.js.map +1 -1
  26. package/dist/lib/create-config.test.js +0 -37
  27. package/dist/lib/create-config.test.js.map +1 -1
  28. package/dist/lib/db/client-instance-store.js +2 -2
  29. package/dist/lib/db/client-instance-store.js.map +1 -1
  30. package/dist/lib/db/client-metrics-db.js +2 -2
  31. package/dist/lib/db/client-metrics-db.js.map +1 -1
  32. package/dist/lib/db/client-metrics-store-v2.js +5 -1
  33. package/dist/lib/db/client-metrics-store-v2.js.map +1 -1
  34. package/dist/lib/db/client-metrics-store.js +2 -2
  35. package/dist/lib/db/client-metrics-store.js.map +1 -1
  36. package/dist/lib/db/event-store.d.ts +10 -6
  37. package/dist/lib/db/event-store.js +21 -1
  38. package/dist/lib/db/event-store.js.map +1 -1
  39. package/dist/lib/db/feature-strategy-store.js +1 -0
  40. package/dist/lib/db/feature-strategy-store.js.map +1 -1
  41. package/dist/lib/db/feature-toggle-store.d.ts +4 -1
  42. package/dist/lib/db/feature-toggle-store.js +27 -2
  43. package/dist/lib/db/feature-toggle-store.js.map +1 -1
  44. package/dist/lib/db/index.js +2 -0
  45. package/dist/lib/db/index.js.map +1 -1
  46. package/dist/lib/db/session-store.js +2 -1
  47. package/dist/lib/db/session-store.js.map +1 -1
  48. package/dist/lib/db/user-splash-store.d.ts +19 -0
  49. package/dist/lib/db/user-splash-store.js +70 -0
  50. package/dist/lib/db/user-splash-store.js.map +1 -0
  51. package/dist/lib/error/minimum-one-environment-error.d.ts +5 -0
  52. package/dist/lib/error/minimum-one-environment-error.js +24 -0
  53. package/dist/lib/error/minimum-one-environment-error.js.map +1 -0
  54. package/dist/lib/error/operation-denied-error.d.ts +4 -0
  55. package/dist/lib/error/operation-denied-error.js +24 -0
  56. package/dist/lib/error/operation-denied-error.js.map +1 -0
  57. package/dist/lib/metrics.js +20 -12
  58. package/dist/lib/metrics.js.map +1 -1
  59. package/dist/lib/metrics.test.js +1 -0
  60. package/dist/lib/metrics.test.js.map +1 -1
  61. package/dist/lib/middleware/rbac-middleware.js +2 -17
  62. package/dist/lib/middleware/rbac-middleware.js.map +1 -1
  63. package/dist/lib/middleware/rbac-middleware.test.js +0 -21
  64. package/dist/lib/middleware/rbac-middleware.test.js.map +1 -1
  65. package/dist/lib/middleware/secure-headers.js +2 -1
  66. package/dist/lib/middleware/secure-headers.js.map +1 -1
  67. package/dist/lib/middleware/session-db.js +2 -3
  68. package/dist/lib/middleware/session-db.js.map +1 -1
  69. package/dist/lib/routes/admin-api/event.d.ts +8 -4
  70. package/dist/lib/routes/admin-api/event.js +8 -10
  71. package/dist/lib/routes/admin-api/event.js.map +1 -1
  72. package/dist/lib/routes/admin-api/feature.js +7 -3
  73. package/dist/lib/routes/admin-api/feature.js.map +1 -1
  74. package/dist/lib/routes/admin-api/index.js +2 -0
  75. package/dist/lib/routes/admin-api/index.js.map +1 -1
  76. package/dist/lib/routes/admin-api/project/features.js +11 -8
  77. package/dist/lib/routes/admin-api/project/features.js.map +1 -1
  78. package/dist/lib/routes/admin-api/project/index.js +2 -0
  79. package/dist/lib/routes/admin-api/project/index.js.map +1 -1
  80. package/dist/lib/routes/admin-api/project/variants.d.ts +21 -0
  81. package/dist/lib/routes/admin-api/project/variants.js +41 -0
  82. package/dist/lib/routes/admin-api/project/variants.js.map +1 -0
  83. package/dist/lib/routes/admin-api/state.js +2 -3
  84. package/dist/lib/routes/admin-api/state.js.map +1 -1
  85. package/dist/lib/routes/admin-api/user-splash-controller.d.ts +10 -0
  86. package/dist/lib/routes/admin-api/user-splash-controller.js +28 -0
  87. package/dist/lib/routes/admin-api/user-splash-controller.js.map +1 -0
  88. package/dist/lib/routes/admin-api/user.d.ts +2 -1
  89. package/dist/lib/routes/admin-api/user.js +7 -2
  90. package/dist/lib/routes/admin-api/user.js.map +1 -1
  91. package/dist/lib/routes/client-api/feature.test.js +3 -2
  92. package/dist/lib/routes/client-api/feature.test.js.map +1 -1
  93. package/dist/lib/routes/client-api/metrics.d.ts +0 -1
  94. package/dist/lib/routes/client-api/metrics.js +2 -10
  95. package/dist/lib/routes/client-api/metrics.js.map +1 -1
  96. package/dist/lib/routes/util.js +18 -14
  97. package/dist/lib/routes/util.js.map +1 -1
  98. package/dist/lib/schema/feature-schema.d.ts +1 -0
  99. package/dist/lib/schema/feature-schema.js +6 -7
  100. package/dist/lib/schema/feature-schema.js.map +1 -1
  101. package/dist/lib/services/addon-service-test-simple-addon.d.ts +1 -1
  102. package/dist/lib/services/addon-service-test-simple-addon.js.map +1 -1
  103. package/dist/lib/services/addon-service.js +2 -2
  104. package/dist/lib/services/addon-service.js.map +1 -1
  105. package/dist/lib/services/api-token-service.js +2 -2
  106. package/dist/lib/services/api-token-service.js.map +1 -1
  107. package/dist/lib/services/client-metrics/client-metrics-service-v2.js +5 -6
  108. package/dist/lib/services/client-metrics/client-metrics-service-v2.js.map +1 -1
  109. package/dist/lib/services/client-metrics/client-metrics.test.js +74 -41
  110. package/dist/lib/services/client-metrics/client-metrics.test.js.map +1 -1
  111. package/dist/lib/services/client-metrics/index.d.ts +6 -5
  112. package/dist/lib/services/client-metrics/index.js +13 -10
  113. package/dist/lib/services/client-metrics/index.js.map +1 -1
  114. package/dist/lib/services/client-metrics/list.d.ts +19 -16
  115. package/dist/lib/services/client-metrics/list.js +6 -4
  116. package/dist/lib/services/client-metrics/list.js.map +1 -1
  117. package/dist/lib/services/client-metrics/list.test.js +9 -5
  118. package/dist/lib/services/client-metrics/list.test.js.map +1 -1
  119. package/dist/lib/services/client-metrics/ttl-list.d.ts +20 -13
  120. package/dist/lib/services/client-metrics/ttl-list.js +26 -15
  121. package/dist/lib/services/client-metrics/ttl-list.js.map +1 -1
  122. package/dist/lib/services/client-metrics/ttl-list.test.js +33 -9
  123. package/dist/lib/services/client-metrics/ttl-list.test.js.map +1 -1
  124. package/dist/lib/services/environment-service.d.ts +2 -1
  125. package/dist/lib/services/environment-service.js +10 -3
  126. package/dist/lib/services/environment-service.js.map +1 -1
  127. package/dist/lib/services/event-service.d.ts +1 -1
  128. package/dist/lib/services/event-service.js +1 -1
  129. package/dist/lib/services/event-service.js.map +1 -1
  130. package/dist/lib/services/feature-tag-service.js +7 -11
  131. package/dist/lib/services/feature-tag-service.js.map +1 -1
  132. package/dist/lib/services/{feature-toggle-service-v2.d.ts → feature-toggle-service.d.ts} +39 -20
  133. package/dist/lib/services/{feature-toggle-service-v2.js → feature-toggle-service.js} +233 -146
  134. package/dist/lib/services/feature-toggle-service.js.map +1 -0
  135. package/dist/lib/services/index.js +6 -2
  136. package/dist/lib/services/index.js.map +1 -1
  137. package/dist/lib/services/project-health-service.d.ts +2 -2
  138. package/dist/lib/services/project-health-service.js +4 -3
  139. package/dist/lib/services/project-health-service.js.map +1 -1
  140. package/dist/lib/services/project-service.d.ts +2 -3
  141. package/dist/lib/services/project-service.js +12 -18
  142. package/dist/lib/services/project-service.js.map +1 -1
  143. package/dist/lib/services/reset-token-service.js +2 -2
  144. package/dist/lib/services/reset-token-service.js.map +1 -1
  145. package/dist/lib/services/state-util.js +1 -1
  146. package/dist/lib/services/state-util.js.map +1 -1
  147. package/dist/lib/services/user-service.d.ts +3 -2
  148. package/dist/lib/services/user-service.js +37 -21
  149. package/dist/lib/services/user-service.js.map +1 -1
  150. package/dist/lib/services/user-splash-service.d.ts +12 -0
  151. package/dist/lib/services/user-splash-service.js +33 -0
  152. package/dist/lib/services/user-splash-service.js.map +1 -0
  153. package/dist/lib/services/version-service.js +2 -2
  154. package/dist/lib/services/version-service.js.map +1 -1
  155. package/dist/lib/types/events.d.ts +165 -2
  156. package/dist/lib/types/events.js +124 -4
  157. package/dist/lib/types/events.js.map +1 -1
  158. package/dist/lib/types/model.d.ts +4 -12
  159. package/dist/lib/types/model.js +6 -1
  160. package/dist/lib/types/model.js.map +1 -1
  161. package/dist/lib/types/services.d.ts +5 -2
  162. package/dist/lib/types/stores/event-store.d.ts +4 -3
  163. package/dist/lib/types/stores/feature-toggle-store.d.ts +3 -1
  164. package/dist/lib/types/stores/user-splash-store.d.ts +15 -0
  165. package/dist/lib/types/stores/user-splash-store.js +3 -0
  166. package/dist/lib/types/stores/user-splash-store.js.map +1 -0
  167. package/dist/lib/types/stores.d.ts +2 -0
  168. package/dist/lib/util/constants.d.ts +0 -2
  169. package/dist/lib/util/constants.js +1 -3
  170. package/dist/lib/util/constants.js.map +1 -1
  171. package/dist/migrations/20211105104316-add-feature-name-column-to-events.d.ts +2 -0
  172. package/dist/migrations/20211105104316-add-feature-name-column-to-events.js +16 -0
  173. package/dist/migrations/20211105104316-add-feature-name-column-to-events.js.map +1 -0
  174. package/dist/migrations/20211105105509-add-predata-column-to-events.d.ts +2 -0
  175. package/dist/migrations/20211105105509-add-predata-column-to-events.js +8 -0
  176. package/dist/migrations/20211105105509-add-predata-column-to-events.js.map +1 -0
  177. package/dist/migrations/20211108130333-create-user-splash-table.d.ts +2 -0
  178. package/dist/migrations/20211108130333-create-user-splash-table.js +18 -0
  179. package/dist/migrations/20211108130333-create-user-splash-table.js.map +1 -0
  180. package/dist/migrations/20211109103930-add-splash-entry-for-users.d.ts +2 -0
  181. package/dist/migrations/20211109103930-add-splash-entry-for-users.js +7 -0
  182. package/dist/migrations/20211109103930-add-splash-entry-for-users.js.map +1 -0
  183. package/dist/migrations/20211126112551-disable-default-environment.d.ts +2 -0
  184. package/dist/migrations/20211126112551-disable-default-environment.js +24 -0
  185. package/dist/migrations/20211126112551-disable-default-environment.js.map +1 -0
  186. package/dist/migrator.js +9 -2
  187. package/dist/migrator.js.map +1 -1
  188. package/dist/test/e2e/api/admin/client-metrics.e2e.test.js +18 -14
  189. package/dist/test/e2e/api/admin/client-metrics.e2e.test.js.map +1 -1
  190. package/dist/test/e2e/api/admin/feature-archive.e2e.test.js +1 -2
  191. package/dist/test/e2e/api/admin/feature-archive.e2e.test.js.map +1 -1
  192. package/dist/test/e2e/api/admin/feature.e2e.test.js +43 -20
  193. package/dist/test/e2e/api/admin/feature.e2e.test.js.map +1 -1
  194. package/dist/test/e2e/api/admin/metrics.e2e.test.js +5 -3
  195. package/dist/test/e2e/api/admin/metrics.e2e.test.js.map +1 -1
  196. package/dist/test/e2e/api/admin/project/environments.e2e.test.js +10 -0
  197. package/dist/test/e2e/api/admin/project/environments.e2e.test.js.map +1 -1
  198. package/dist/test/e2e/api/admin/project/features.e2e.test.js +145 -8
  199. package/dist/test/e2e/api/admin/project/features.e2e.test.js.map +1 -1
  200. package/dist/test/e2e/api/admin/project/project.health.e2e.test.js +60 -0
  201. package/dist/test/e2e/api/admin/project/project.health.e2e.test.js.map +1 -1
  202. package/dist/{lib/event-differ.test.d.ts → test/e2e/api/admin/project/variants.e2e.test.d.ts} +0 -0
  203. package/dist/test/e2e/api/admin/project/variants.e2e.test.js +727 -0
  204. package/dist/test/e2e/api/admin/project/variants.e2e.test.js.map +1 -0
  205. package/dist/test/e2e/api/admin/splash.e2e.test.d.ts +1 -0
  206. package/dist/test/e2e/api/admin/splash.e2e.test.js +51 -0
  207. package/dist/test/e2e/api/admin/splash.e2e.test.js.map +1 -0
  208. package/dist/test/e2e/api/admin/state.e2e.test.js +17 -13
  209. package/dist/test/e2e/api/admin/state.e2e.test.js.map +1 -1
  210. package/dist/test/e2e/api/admin/user-admin.e2e.test.js +2 -16
  211. package/dist/test/e2e/api/admin/user-admin.e2e.test.js.map +1 -1
  212. package/dist/test/e2e/api/client/feature.env.disabled.e2e.test.js +8 -4
  213. package/dist/test/e2e/api/client/feature.env.disabled.e2e.test.js.map +1 -1
  214. package/dist/test/e2e/api/client/feature.token.access.e2e.test.js +4 -4
  215. package/dist/test/e2e/api/client/feature.token.access.e2e.test.js.map +1 -1
  216. package/dist/test/e2e/api/client/register.e2e.test.js +1 -1
  217. package/dist/test/e2e/api/client/register.e2e.test.js.map +1 -1
  218. package/dist/test/e2e/services/addon-service.e2e.test.js +1 -1
  219. package/dist/test/e2e/services/addon-service.e2e.test.js.map +1 -1
  220. package/dist/test/e2e/services/api-token-service.e2e.test.js +5 -3
  221. package/dist/test/e2e/services/api-token-service.e2e.test.js.map +1 -1
  222. package/dist/test/e2e/services/client-metrics-service.e2e.test.js +5 -2
  223. package/dist/test/e2e/services/client-metrics-service.e2e.test.js.map +1 -1
  224. package/dist/test/e2e/services/environment-service.test.js +1 -1
  225. package/dist/test/e2e/services/environment-service.test.js.map +1 -1
  226. package/dist/test/e2e/services/feature-toggle-service-v2.e2e.test.js +14 -11
  227. package/dist/test/e2e/services/feature-toggle-service-v2.e2e.test.js.map +1 -1
  228. package/dist/test/e2e/services/project-health-service.e2e.test.js +2 -2
  229. package/dist/test/e2e/services/project-health-service.e2e.test.js.map +1 -1
  230. package/dist/test/e2e/services/project-service.e2e.test.js +2 -32
  231. package/dist/test/e2e/services/project-service.e2e.test.js.map +1 -1
  232. package/dist/test/e2e/services/session-service.e2e.test.js +5 -4
  233. package/dist/test/e2e/services/session-service.e2e.test.js.map +1 -1
  234. package/dist/test/e2e/services/user-service.e2e.test.js +3 -2
  235. package/dist/test/e2e/services/user-service.e2e.test.js.map +1 -1
  236. package/dist/test/e2e/stores/client-metrics-store-v2.e2e.test.js +4 -6
  237. package/dist/test/e2e/stores/client-metrics-store-v2.e2e.test.js.map +1 -1
  238. package/dist/test/e2e/stores/event-store.e2e.test.js +1 -1
  239. package/dist/test/e2e/stores/event-store.e2e.test.js.map +1 -1
  240. package/dist/test/e2e/stores/feature-toggle-store.e2e.test.js +1 -1
  241. package/dist/test/e2e/stores/feature-toggle-store.e2e.test.js.map +1 -1
  242. package/dist/test/e2e/stores/user-splash-store.e2e.test.d.ts +1 -0
  243. package/dist/test/e2e/stores/user-splash-store.e2e.test.js +74 -0
  244. package/dist/test/e2e/stores/user-splash-store.e2e.test.js.map +1 -0
  245. package/dist/test/fixtures/fake-event-store.d.ts +2 -1
  246. package/dist/test/fixtures/fake-event-store.js +3 -0
  247. package/dist/test/fixtures/fake-event-store.js.map +1 -1
  248. package/dist/test/fixtures/fake-feature-toggle-store.d.ts +3 -1
  249. package/dist/test/fixtures/fake-feature-toggle-store.js +9 -0
  250. package/dist/test/fixtures/fake-feature-toggle-store.js.map +1 -1
  251. package/dist/test/fixtures/fake-user-splash-store.d.ts +12 -0
  252. package/dist/test/fixtures/fake-user-splash-store.js +40 -0
  253. package/dist/test/fixtures/fake-user-splash-store.js.map +1 -0
  254. package/dist/test/fixtures/store.js +2 -0
  255. package/dist/test/fixtures/store.js.map +1 -1
  256. package/docs/api/oas/openapi.yaml +35 -55
  257. package/package.json +17 -18
  258. package/dist/lib/event-differ.d.ts +0 -1
  259. package/dist/lib/event-differ.js +0 -117
  260. package/dist/lib/event-differ.js.map +0 -1
  261. package/dist/lib/event-differ.test.js +0 -142
  262. package/dist/lib/event-differ.test.js.map +0 -1
  263. package/dist/lib/services/feature-toggle-service-v2.js.map +0 -1
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OperationDeniedError = void 0;
4
+ class OperationDeniedError extends Error {
5
+ constructor(message) {
6
+ super();
7
+ Error.captureStackTrace(this, this.constructor);
8
+ this.name = this.constructor.name;
9
+ this.message = message;
10
+ }
11
+ toJSON() {
12
+ return {
13
+ isJoi: true,
14
+ name: this.constructor.name,
15
+ details: [
16
+ {
17
+ message: this.message,
18
+ },
19
+ ],
20
+ };
21
+ }
22
+ }
23
+ exports.OperationDeniedError = OperationDeniedError;
24
+ //# sourceMappingURL=operation-denied-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-denied-error.js","sourceRoot":"","sources":["../../../src/lib/error/operation-denied-error.ts"],"names":[],"mappings":";;;AAAA,MAAa,oBAAqB,SAAQ,KAAK;IAC3C,YAAY,OAAe;QACvB,KAAK,EAAE,CAAC;QACR,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAEhD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,MAAM;QACF,OAAO;YACH,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;YAC3B,OAAO,EAAE;gBACL;oBACI,OAAO,EAAE,IAAI,CAAC,OAAO;iBACxB;aACJ;SACJ,CAAC;IACN,CAAC;CACJ;AApBD,oDAoBC"}
@@ -26,8 +26,7 @@ exports.createMetricsMonitor = void 0;
26
26
  const prom_client_1 = __importDefault(require("prom-client"));
27
27
  const events = __importStar(require("./metric-events"));
28
28
  const events_1 = require("./types/events");
29
- const TWO_HOURS = 2 * 60 * 60 * 1000;
30
- const ONE_MINUTE = 60 * 1000;
29
+ const date_fns_1 = require("date-fns");
31
30
  class MetricsMonitor {
32
31
  constructor() {
33
32
  this.timer = null;
@@ -99,24 +98,33 @@ class MetricsMonitor {
99
98
  }
100
99
  }
101
100
  collectStaticCounters();
102
- this.timer = setInterval(() => collectStaticCounters(), TWO_HOURS).unref();
101
+ this.timer = setInterval(() => collectStaticCounters(), (0, date_fns_1.hoursToMilliseconds)(2)).unref();
103
102
  eventBus.on(events.REQUEST_TIME, ({ path, method, time, statusCode }) => {
104
103
  requestDuration.labels(path, method, statusCode).observe(time);
105
104
  });
106
105
  eventBus.on(events.DB_TIME, ({ store, action, time }) => {
107
106
  dbDuration.labels(store, action).observe(time);
108
107
  });
109
- eventStore.on(events_1.FEATURE_CREATED, ({ data }) => {
110
- featureToggleUpdateTotal.labels(data.name).inc();
108
+ eventStore.on(events_1.FEATURE_CREATED, ({ featureName }) => {
109
+ featureToggleUpdateTotal.labels(featureName).inc();
111
110
  });
112
- eventStore.on(events_1.FEATURE_UPDATED, ({ data }) => {
113
- featureToggleUpdateTotal.labels(data.name).inc();
111
+ eventStore.on(events_1.FEATURE_UPDATED, ({ featureName }) => {
112
+ featureToggleUpdateTotal.labels(featureName).inc();
114
113
  });
115
- eventStore.on(events_1.FEATURE_ARCHIVED, ({ data }) => {
116
- featureToggleUpdateTotal.labels(data.name).inc();
114
+ eventStore.on(events_1.FEATURE_STRATEGY_ADD, ({ featureName }) => {
115
+ featureToggleUpdateTotal.labels(featureName).inc();
117
116
  });
118
- eventStore.on(events_1.FEATURE_REVIVED, ({ data }) => {
119
- featureToggleUpdateTotal.labels(data.name).inc();
117
+ eventStore.on(events_1.FEATURE_STRATEGY_REMOVE, ({ featureName }) => {
118
+ featureToggleUpdateTotal.labels(featureName).inc();
119
+ });
120
+ eventStore.on(events_1.FEATURE_STRATEGY_UPDATE, ({ featureName }) => {
121
+ featureToggleUpdateTotal.labels(featureName).inc();
122
+ });
123
+ eventStore.on(events_1.FEATURE_ARCHIVED, ({ featureName }) => {
124
+ featureToggleUpdateTotal.labels(featureName).inc();
125
+ });
126
+ eventStore.on(events_1.FEATURE_REVIVED, ({ featureName }) => {
127
+ featureToggleUpdateTotal.labels(featureName).inc();
120
128
  });
121
129
  clientMetricsStore.on('metrics', (m) => {
122
130
  // eslint-disable-next-line no-restricted-syntax
@@ -172,7 +180,7 @@ class MetricsMonitor {
172
180
  dbPoolPendingAcquires.set(data.pendingAcquires);
173
181
  });
174
182
  this.registerPoolMetrics(db.client.pool, eventBus);
175
- this.poolMetricsTimer = setInterval(() => this.registerPoolMetrics(db.client.pool, eventBus), ONE_MINUTE);
183
+ this.poolMetricsTimer = setInterval(() => this.registerPoolMetrics(db.client.pool, eventBus), (0, date_fns_1.minutesToMilliseconds)(1));
176
184
  this.poolMetricsTimer.unref();
177
185
  }
178
186
  }
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/lib/metrics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/lib/metrics.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8DAAiC;AAGjC,wDAA0C;AAC1C,2CASwB;AAGxB,uCAAsE;AAGtE,MAAqB,cAAc;IAK/B;QACI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;IACjC,CAAC;IAED,eAAe,CACX,MAAsB,EACtB,MAAsB,EACtB,OAAe,EACf,QAAsB,EACtB,EAAQ;QAER,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE;YAC9B,OAAO;SACV;QAED,MAAM,EACF,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,SAAS,EACT,YAAY,GACf,GAAG,MAAM,CAAC;QAEX,qBAAM,CAAC,qBAAqB,EAAE,CAAC;QAE/B,MAAM,eAAe,GAAG,IAAI,qBAAM,CAAC,OAAO,CAAC;YACvC,IAAI,EAAE,oCAAoC;YAC1C,IAAI,EAAE,mBAAmB;YACzB,UAAU,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC;YACxC,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC;SAC3C,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,qBAAM,CAAC,OAAO,CAAC;YAClC,IAAI,EAAE,2BAA2B;YACjC,IAAI,EAAE,wBAAwB;YAC9B,UAAU,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;YAC/B,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC;SAC3C,CAAC,CAAC;QACH,MAAM,wBAAwB,GAAG,IAAI,qBAAM,CAAC,OAAO,CAAC;YAChD,IAAI,EAAE,6BAA6B;YACnC,IAAI,EAAE,4CAA4C;YAClD,UAAU,EAAE,CAAC,QAAQ,CAAC;SACzB,CAAC,CAAC;QACH,MAAM,uBAAuB,GAAG,IAAI,qBAAM,CAAC,OAAO,CAAC;YAC/C,IAAI,EAAE,4BAA4B;YAClC,IAAI,EAAE,gDAAgD;YACtD,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC;SAC9C,CAAC,CAAC;QACH,MAAM,mBAAmB,GAAG,IAAI,qBAAM,CAAC,KAAK,CAAC;YACzC,IAAI,EAAE,uBAAuB;YAC7B,IAAI,EAAE,2BAA2B;YACjC,UAAU,EAAE,CAAC,SAAS,CAAC;SAC1B,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,qBAAM,CAAC,KAAK,CAAC;YAChC,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,iBAAiB;SAC1B,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,IAAI,qBAAM,CAAC,KAAK,CAAC;YACnC,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,oBAAoB;SAC7B,CAAC,CAAC;QAEH,KAAK,UAAU,qBAAqB;YAChC,IAAI,YAAY,GAAW,CAAC,CAAC;YAC7B,IAAI,UAAkB,CAAC;YACvB,IAAI,aAAqB,CAAC;YAC1B,IAAI;gBACA,YAAY,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC;oBAC1C,QAAQ,EAAE,KAAK;iBAClB,CAAC,CAAC;gBACH,UAAU,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;gBACrC,aAAa,GAAG,MAAM,YAAY,CAAC,KAAK,EAAE,CAAC;gBAC3C,oCAAoC;aACvC;YAAC,OAAO,CAAC,EAAE,GAAE;YAEd,mBAAmB,CAAC,KAAK,EAAE,CAAC;YAC5B,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACtD,IAAI,UAAU,EAAE;gBACZ,UAAU,CAAC,KAAK,EAAE,CAAC;gBACnB,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;aAC9B;YACD,IAAI,aAAa,EAAE;gBACf,aAAa,CAAC,KAAK,EAAE,CAAC;gBACtB,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;aACpC;QACL,CAAC;QAED,qBAAqB,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,WAAW,CACpB,GAAG,EAAE,CAAC,qBAAqB,EAAE,EAC7B,IAAA,8BAAmB,EAAC,CAAC,CAAC,CACzB,CAAC,KAAK,EAAE,CAAC;QAEV,QAAQ,CAAC,EAAE,CACP,MAAM,CAAC,YAAY,EACnB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE;YACnC,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACnE,CAAC,CACJ,CAAC;QAEF,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;YACpD,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,UAAU,CAAC,EAAE,CAAC,wBAAe,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE;YAC/C,wBAAwB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,CAAC;QACvD,CAAC,CAAC,CAAC;QACH,UAAU,CAAC,EAAE,CAAC,wBAAe,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE;YAC/C,wBAAwB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,CAAC;QACvD,CAAC,CAAC,CAAC;QACH,UAAU,CAAC,EAAE,CAAC,6BAAoB,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE;YACpD,wBAAwB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,CAAC;QACvD,CAAC,CAAC,CAAC;QACH,UAAU,CAAC,EAAE,CAAC,gCAAuB,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE;YACvD,wBAAwB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,CAAC;QACvD,CAAC,CAAC,CAAC;QACH,UAAU,CAAC,EAAE,CAAC,gCAAuB,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE;YACvD,wBAAwB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,CAAC;QACvD,CAAC,CAAC,CAAC;QACH,UAAU,CAAC,EAAE,CAAC,yBAAgB,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE;YAChD,wBAAwB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,CAAC;QACvD,CAAC,CAAC,CAAC;QACH,UAAU,CAAC,EAAE,CAAC,wBAAe,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE;YAC/C,wBAAwB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,CAAC;QACvD,CAAC,CAAC,CAAC;QAEH,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;YACnC,gDAAgD;YAChD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;gBAClD,uBAAuB;qBAClB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC;oBACpC,aAAa;qBACZ,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBACvB,uBAAuB;qBAClB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC;oBACrC,aAAa;qBACZ,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;aACzB;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAED,cAAc;QACV,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACzC,CAAC;IAED,kBAAkB,CAAC,EAAQ,EAAE,QAAsB;QAC/C,IAAI,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE;YACjB,MAAM,SAAS,GAAG,IAAI,qBAAM,CAAC,KAAK,CAAC;gBAC/B,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,sBAAsB;aAC/B,CAAC,CAAC;YACH,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,SAAS,GAAG,IAAI,qBAAM,CAAC,KAAK,CAAC;gBAC/B,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,sBAAsB;aAC/B,CAAC,CAAC;YACH,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,UAAU,GAAG,IAAI,qBAAM,CAAC,KAAK,CAAC;gBAChC,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,qCAAqC;aAC9C,CAAC,CAAC;YACH,MAAM,UAAU,GAAG,IAAI,qBAAM,CAAC,KAAK,CAAC;gBAChC,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,uCAAuC;aAChD,CAAC,CAAC;YACH,MAAM,oBAAoB,GAAG,IAAI,qBAAM,CAAC,KAAK,CAAC;gBAC1C,IAAI,EAAE,yBAAyB;gBAC/B,IAAI,EAAE,2DAA2D;aACpE,CAAC,CAAC;YACH,MAAM,qBAAqB,GAAG,IAAI,qBAAM,CAAC,KAAK,CAAC;gBAC3C,IAAI,EAAE,0BAA0B;gBAChC,IAAI,EAAE,wEAAwE;aACjF,CAAC,CAAC;YAEH,QAAQ,CAAC,EAAE,CAAC,uBAAc,EAAE,CAAC,IAAI,EAAE,EAAE;gBACjC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC1B,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC1B,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBAC9C,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACpD,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACnD,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAC/B,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,EACxD,IAAA,gCAAqB,EAAC,CAAC,CAAC,CAC3B,CAAC;YACF,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;SACjC;IACL,CAAC;IAED,6EAA6E;IAC7E,mBAAmB,CAAC,IAAS,EAAE,QAAsB;QACjD,IAAI;YACA,QAAQ,CAAC,IAAI,CAAC,uBAAc,EAAE;gBAC1B,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;gBACpB,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;gBACpB,cAAc,EAAE,IAAI,CAAC,iBAAiB,EAAE;gBACxC,eAAe,EAAE,IAAI,CAAC,kBAAkB,EAAE;aAC7C,CAAC,CAAC;YACH,oCAAoC;SACvC;QAAC,OAAO,CAAC,EAAE,GAAE;IAClB,CAAC;CACJ;AAlND,iCAkNC;AACD,SAAgB,oBAAoB;IAChC,OAAO,IAAI,cAAc,EAAE,CAAC;AAChC,CAAC;AAFD,oDAEC;AAED,MAAM,CAAC,OAAO,GAAG;IACb,oBAAoB;CACvB,CAAC"}
@@ -51,6 +51,7 @@ test('should collect metrics for requests', async () => {
51
51
  });
52
52
  test('should collect metrics for updated toggles', async () => {
53
53
  stores.eventStore.emit(events_2.FEATURE_UPDATED, {
54
+ featureName: 'TestToggle',
54
55
  data: { name: 'TestToggle' },
55
56
  });
56
57
  const metrics = await prometheusRegister.metrics();
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.test.js","sourceRoot":"","sources":["../../src/lib/metrics.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metrics.test.js","sourceRoot":"","sources":["../../src/lib/metrics.test.ts"],"names":[],"mappings":"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"}
@@ -22,25 +22,11 @@ const rbacMiddleware = (config, { featureToggleStore }, accessService) => {
22
22
  // For /api/admin/projects/:projectId we will find it as part of params
23
23
  let { projectId } = params;
24
24
  // Temporary workaround to figure out projectId for feature toggle updates.
25
- if (permission === permissions_1.DELETE_FEATURE) {
25
+ // will be removed in Unleash v5.0
26
+ if ([permissions_1.DELETE_FEATURE, permissions_1.UPDATE_FEATURE].includes(permission)) {
26
27
  const { featureName } = params;
27
28
  projectId = await featureToggleStore.getProjectId(featureName);
28
29
  }
29
- else if (permission === permissions_1.UPDATE_FEATURE) {
30
- // if projectId of feature is different from project in body
31
- // need to check that we have UPDATE_FEATURE access on both old and new project
32
- // TODO: Look at this to make it smoother once we get around to looking at project
33
- // Changing project of a toggle should most likely be a separate endpoint
34
- const { featureName } = params;
35
- projectId = await featureToggleStore.getProjectId(featureName);
36
- const newProjectId = req.body
37
- ? req.body.project || projectId
38
- : projectId;
39
- if (newProjectId !== projectId) {
40
- return (accessService.hasPermission(user, permission, projectId) &&
41
- accessService.hasPermission(user, permission, newProjectId));
42
- }
43
- }
44
30
  else if (permission === permissions_1.CREATE_FEATURE) {
45
31
  projectId = req.body.project || 'default';
46
32
  }
@@ -49,6 +35,5 @@ const rbacMiddleware = (config, { featureToggleStore }, accessService) => {
49
35
  return next();
50
36
  };
51
37
  };
52
- module.exports = rbacMiddleware;
53
38
  exports.default = rbacMiddleware;
54
39
  //# sourceMappingURL=rbac-middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rbac-middleware.js","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.ts"],"names":[],"mappings":";;AAAA,sEAAsE;AACtE,sDAK8B;AAa9B,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,uEAAuE;YACvE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;YAE3B,2EAA2E;YAC3E,IAAI,UAAU,KAAK,4BAAc,EAAE;gBAC/B,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;gBAC/B,SAAS,GAAG,MAAM,kBAAkB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;aAClE;iBAAM,IAAI,UAAU,KAAK,4BAAc,EAAE;gBACtC,4DAA4D;gBAC5D,+EAA+E;gBAC/E,kFAAkF;gBAClF,yEAAyE;gBACzE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;gBAC/B,SAAS,GAAG,MAAM,kBAAkB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;gBAC/D,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI;oBACzB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,SAAS;oBAC/B,CAAC,CAAC,SAAS,CAAC;gBAChB,IAAI,YAAY,KAAK,SAAS,EAAE;oBAC5B,OAAO,CACH,aAAa,CAAC,aAAa,CACvB,IAAI,EACJ,UAAU,EACV,SAAS,CACZ;wBACD,aAAa,CAAC,aAAa,CACvB,IAAI,EACJ,UAAU,EACV,YAAY,CACf,CACJ,CAAC;iBACL;aACJ;iBAAM,IAAI,UAAU,KAAK,4BAAc,EAAE;gBACtC,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,SAAS,CAAC;aAC7C;YAED,OAAO,aAAa,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QACpE,CAAC,CAAC;QACF,OAAO,IAAI,EAAE,CAAC;IAClB,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,CAAC,OAAO,GAAG,cAAc,CAAC;AAChC,kBAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"rbac-middleware.js","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.ts"],"names":[],"mappings":";;AAAA,sEAAsE;AACtE,sDAK8B;AAa9B,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,uEAAuE;YACvE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;YAE3B,2EAA2E;YAC3E,kCAAkC;YAClC,IAAI,CAAC,4BAAc,EAAE,4BAAc,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;gBACvD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;gBAC/B,SAAS,GAAG,MAAM,kBAAkB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;aAClE;iBAAM,IAAI,UAAU,KAAK,4BAAc,EAAE;gBACtC,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,SAAS,CAAC;aAC7C;YAED,OAAO,aAAa,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QACpE,CAAC,CAAC;QACF,OAAO,IAAI,EAAE,CAAC;IAClB,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,cAAc,CAAC"}
@@ -198,27 +198,6 @@ test('should lookup projectId from data', async () => {
198
198
  await req.checkRbac(perms.CREATE_FEATURE);
199
199
  expect(accessService.hasPermission).toHaveBeenCalledWith(req.user, perms.CREATE_FEATURE, projectId);
200
200
  });
201
- test('Need access to UPDATE_FEATURE on the project you change to', async () => {
202
- const oldProjectId = 'some-project-34';
203
- const newProjectId = 'some-project-35';
204
- const featureName = 'some-feature-toggle';
205
- const accessService = {
206
- hasPermission: jest.fn().mockReturnValue(true),
207
- };
208
- featureToggleStore.getProjectId = jest.fn().mockReturnValue(oldProjectId);
209
- const func = (0, rbac_middleware_1.default)(config, { featureToggleStore }, accessService);
210
- const cb = jest.fn();
211
- const req = {
212
- user: new user_1.default({ username: 'user', id: 1 }),
213
- params: { featureName },
214
- body: { featureName, project: newProjectId },
215
- };
216
- func(req, undefined, cb);
217
- await req.checkRbac(perms.UPDATE_FEATURE);
218
- expect(accessService.hasPermission).toHaveBeenCalledTimes(2);
219
- expect(accessService.hasPermission).toHaveBeenNthCalledWith(1, req.user, perms.UPDATE_FEATURE, oldProjectId);
220
- expect(accessService.hasPermission).toHaveBeenNthCalledWith(2, req.user, perms.UPDATE_FEATURE, newProjectId);
221
- });
222
201
  test('Does not double check permission if not changing project when updating toggle', async () => {
223
202
  const oldProjectId = 'some-project-34';
224
203
  const featureName = 'some-feature-toggle';
@@ -1 +1 @@
1
- {"version":3,"file":"rbac-middleware.test.js","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.test.ts"],"names":[],"mappings":"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"}
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,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;YAC1B,OAAO,EAAE,GAAG;YACZ,WAAW,EAAE,GAAG;YAChB,IAAI,EAAE,wBAAY,CAAC,KAAK;SAC3B,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,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;YAC3B,OAAO,EAAE,GAAG;YACZ,WAAW,EAAE,GAAG;YAChB,IAAI,EAAE,wBAAY,CAAC,MAAM;SAC5B,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,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,CACvB,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,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,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,CACf,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,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,CACZ,CAAC;AACN,CAAC,CAAC,CAAC"}
@@ -4,11 +4,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const helmet_1 = __importDefault(require("helmet"));
7
+ const date_fns_1 = require("date-fns");
7
8
  const secureHeaders = (config) => {
8
9
  if (config.secureHeaders) {
9
10
  return (0, helmet_1.default)({
10
11
  hsts: {
11
- maxAge: 63072000,
12
+ maxAge: (0, date_fns_1.hoursToSeconds)(24 * 365 * 2),
12
13
  includeSubDomains: true,
13
14
  preload: true,
14
15
  },
@@ -1 +1 @@
1
- {"version":3,"file":"secure-headers.js","sourceRoot":"","sources":["../../../src/lib/middleware/secure-headers.ts"],"names":[],"mappings":";;;;;AAAA,oDAA4B;AAI5B,MAAM,aAAa,GAA+C,CAAC,MAAM,EAAE,EAAE;IACzE,IAAI,MAAM,CAAC,aAAa,EAAE;QACtB,OAAO,IAAA,gBAAM,EAAC;YACV,IAAI,EAAE;gBACF,MAAM,EAAE,QAAQ;gBAChB,iBAAiB,EAAE,IAAI;gBACvB,OAAO,EAAE,IAAI;aAChB;YACD,qBAAqB,EAAE;gBACnB,UAAU,EAAE;oBACR,UAAU,EAAE,CAAC,QAAQ,CAAC;oBACtB,OAAO,EAAE;wBACL,QAAQ;wBACR,sBAAsB;wBACtB,mBAAmB;qBACtB;oBACD,QAAQ,EAAE;wBACN,QAAQ;wBACR,iBAAiB;wBACjB,sBAAsB;wBACtB,mBAAmB;wBACnB,OAAO;qBACV;oBACD,SAAS,EAAE,CAAC,QAAQ,CAAC;oBACrB,MAAM,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC;iBAC9C;aACJ;SACJ,CAAC,CAAC;KACN;IACD,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACtB,IAAI,EAAE,CAAC;IACX,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"secure-headers.js","sourceRoot":"","sources":["../../../src/lib/middleware/secure-headers.ts"],"names":[],"mappings":";;;;;AAAA,oDAA4B;AAG5B,uCAA0C;AAE1C,MAAM,aAAa,GAA+C,CAAC,MAAM,EAAE,EAAE;IACzE,IAAI,MAAM,CAAC,aAAa,EAAE;QACtB,OAAO,IAAA,gBAAM,EAAC;YACV,IAAI,EAAE;gBACF,MAAM,EAAE,IAAA,yBAAc,EAAC,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC;gBACpC,iBAAiB,EAAE,IAAI;gBACvB,OAAO,EAAE,IAAI;aAChB;YACD,qBAAqB,EAAE;gBACnB,UAAU,EAAE;oBACR,UAAU,EAAE,CAAC,QAAQ,CAAC;oBACtB,OAAO,EAAE;wBACL,QAAQ;wBACR,sBAAsB;wBACtB,mBAAmB;qBACtB;oBACD,QAAQ,EAAE;wBACN,QAAQ;wBACR,iBAAiB;wBACjB,sBAAsB;wBACtB,mBAAmB;wBACnB,OAAO;qBACV;oBACD,SAAS,EAAE,CAAC,QAAQ,CAAC;oBACrB,MAAM,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC;iBAC9C;aACJ;SACJ,CAAC,CAAC;KACN;IACD,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACtB,IAAI,EAAE,CAAC;IACX,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,aAAa,CAAC"}
@@ -5,12 +5,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const express_session_1 = __importDefault(require("express-session"));
7
7
  const connect_session_knex_1 = __importDefault(require("connect-session-knex"));
8
- const TWO_DAYS = 48 * 60 * 60 * 1000;
9
- const HOUR = 60 * 60 * 1000;
8
+ const date_fns_1 = require("date-fns");
10
9
  function sessionDb(config, knex) {
11
10
  let store;
12
11
  const { db } = config.session;
13
- const age = config.session.ttlHours * HOUR || TWO_DAYS;
12
+ const age = (0, date_fns_1.hoursToMilliseconds)(config.session.ttlHours) || (0, date_fns_1.hoursToMilliseconds)(48);
14
13
  const KnexSessionStore = (0, connect_session_knex_1.default)(express_session_1.default);
15
14
  if (db) {
16
15
  store = new KnexSessionStore({
@@ -1 +1 @@
1
- {"version":3,"file":"session-db.js","sourceRoot":"","sources":["../../../src/lib/middleware/session-db.ts"],"names":[],"mappings":";;;;;AACA,sEAAsC;AACtC,gFAAoD;AAIpD,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AACrC,MAAM,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAC5B,SAAS,SAAS,CACd,MAAoE,EACpE,IAAU;IAEV,IAAI,KAAK,CAAC;IACV,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC;IAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,IAAI,QAAQ,CAAC;IACvD,MAAM,gBAAgB,GAAG,IAAA,8BAAgB,EAAC,yBAAO,CAAC,CAAC;IACnD,IAAI,EAAE,EAAE;QACJ,KAAK,GAAG,IAAI,gBAAgB,CAAC;YACzB,SAAS,EAAE,iBAAiB;YAC5B,WAAW,EAAE,KAAK;YAClB,aAAa;YACb,IAAI;SACP,CAAC,CAAC;KACN;SAAM;QACH,KAAK,GAAG,IAAI,yBAAO,CAAC,WAAW,EAAE,CAAC;KACrC;IACD,OAAO,IAAA,yBAAO,EAAC;QACX,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,KAAK;QACb,iBAAiB,EAAE,KAAK;QACxB,KAAK;QACL,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;QAC9B,MAAM,EAAE;YACJ,IAAI,EACA,MAAM,CAAC,MAAM,CAAC,WAAW,KAAK,EAAE;gBAC5B,CAAC,CAAC,GAAG;gBACL,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW;YACnC,MAAM,EAAE,MAAM,CAAC,aAAa;YAC5B,MAAM,EAAE,GAAG;SACd;KACJ,CAAC,CAAC;AACP,CAAC;AACD,kBAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"session-db.js","sourceRoot":"","sources":["../../../src/lib/middleware/session-db.ts"],"names":[],"mappings":";;;;;AACA,sEAAsC;AACtC,gFAAoD;AAGpD,uCAA+C;AAE/C,SAAS,SAAS,CACd,MAAoE,EACpE,IAAU;IAEV,IAAI,KAAK,CAAC;IACV,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC;IAC9B,MAAM,GAAG,GACL,IAAA,8BAAmB,EAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAA,8BAAmB,EAAC,EAAE,CAAC,CAAC;IAC5E,MAAM,gBAAgB,GAAG,IAAA,8BAAgB,EAAC,yBAAO,CAAC,CAAC;IACnD,IAAI,EAAE,EAAE;QACJ,KAAK,GAAG,IAAI,gBAAgB,CAAC;YACzB,SAAS,EAAE,iBAAiB;YAC5B,WAAW,EAAE,KAAK;YAClB,aAAa;YACb,IAAI;SACP,CAAC,CAAC;KACN;SAAM;QACH,KAAK,GAAG,IAAI,yBAAO,CAAC,WAAW,EAAE,CAAC;KACrC;IACD,OAAO,IAAA,yBAAO,EAAC;QACX,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,KAAK;QACb,iBAAiB,EAAE,KAAK;QACxB,KAAK;QACL,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;QAC9B,MAAM,EAAE;YACJ,IAAI,EACA,MAAM,CAAC,MAAM,CAAC,WAAW,KAAK,EAAE;gBAC5B,CAAC,CAAC,GAAG;gBACL,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW;YACnC,MAAM,EAAE,MAAM,CAAC,aAAa;YAC5B,MAAM,EAAE,GAAG;SACd;KACJ,CAAC,CAAC;AACP,CAAC;AAED,kBAAe,SAAS,CAAC"}
@@ -1,10 +1,14 @@
1
+ import { Request, Response } from 'express';
1
2
  import { IUnleashConfig } from '../../types/option';
2
3
  import { IUnleashServices } from '../../types/services';
3
- declare const Controller: any;
4
+ import Controller from '../controller';
4
5
  export default class EventController extends Controller {
5
6
  private eventService;
6
7
  constructor(config: IUnleashConfig, { eventService }: Pick<IUnleashServices, 'eventService'>);
7
- getEvents(req: any, res: any): Promise<void>;
8
- getEventsForToggle(req: any, res: any): Promise<void>;
8
+ getEvents(req: Request<any, any, any, {
9
+ project?: string;
10
+ }>, res: Response): Promise<void>;
11
+ getEventsForToggle(req: Request<{
12
+ name: string;
13
+ }>, res: Response): Promise<void>;
9
14
  }
10
- export {};
@@ -1,34 +1,33 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  const permissions_1 = require("../../types/permissions");
4
- const Controller = require('../controller');
5
- const eventDiffer = require('../../event-differ');
7
+ const controller_1 = __importDefault(require("../controller"));
6
8
  const version = 1;
7
- class EventController extends Controller {
9
+ class EventController extends controller_1.default {
8
10
  constructor(config, { eventService }) {
9
11
  super(config);
10
12
  this.eventService = eventService;
11
13
  this.get('/', this.getEvents, permissions_1.ADMIN);
12
14
  this.get('/:name', this.getEventsForToggle);
13
15
  }
14
- // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
15
16
  async getEvents(req, res) {
17
+ const { project } = req.query;
16
18
  let events;
17
- if (req.query?.project) {
18
- events = await this.eventService.getEventsForProject(req.query.project);
19
+ if (project) {
20
+ events = await this.eventService.getEventsForProject(project);
19
21
  }
20
22
  else {
21
23
  events = await this.eventService.getEvents();
22
24
  }
23
- eventDiffer.addDiffs(events);
24
25
  res.json({ version, events });
25
26
  }
26
- // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
27
27
  async getEventsForToggle(req, res) {
28
28
  const toggleName = req.params.name;
29
29
  const events = await this.eventService.getEventsForToggle(toggleName);
30
30
  if (events) {
31
- eventDiffer.addDiffs(events);
32
31
  res.json({ toggleName, events });
33
32
  }
34
33
  else {
@@ -37,5 +36,4 @@ class EventController extends Controller {
37
36
  }
38
37
  }
39
38
  exports.default = EventController;
40
- module.exports = EventController;
41
39
  //# sourceMappingURL=event.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"event.js","sourceRoot":"","sources":["../../../../src/lib/routes/admin-api/event.ts"],"names":[],"mappings":";;AAGA,yDAAgD;AAEhD,MAAM,UAAU,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAE5C,MAAM,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAElD,MAAM,OAAO,GAAG,CAAC,CAAC;AAElB,MAAqB,eAAgB,SAAQ,UAAU;IAGnD,YACI,MAAsB,EACtB,EAAE,YAAY,EAA0C;QAExD,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,mBAAK,CAAC,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAChD,CAAC;IAED,6EAA6E;IAC7E,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG;QACpB,IAAI,MAAM,CAAC;QACX,IAAI,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE;YACpB,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAChD,GAAG,CAAC,KAAK,CAAC,OAAO,CACpB,CAAC;SACL;aAAM;YACH,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;SAChD;QACD,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,6EAA6E;IAC7E,KAAK,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAG;QAC7B,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAEtE,IAAI,MAAM,EAAE;YACR,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC7B,GAAG,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;SACpC;aAAM;YACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;SAC5D;IACL,CAAC;CACJ;AAvCD,kCAuCC;AAED,MAAM,CAAC,OAAO,GAAG,eAAe,CAAC"}
1
+ {"version":3,"file":"event.js","sourceRoot":"","sources":["../../../../src/lib/routes/admin-api/event.ts"],"names":[],"mappings":";;;;;AAIA,yDAAgD;AAEhD,+DAAuC;AAEvC,MAAM,OAAO,GAAG,CAAC,CAAC;AAElB,MAAqB,eAAgB,SAAQ,oBAAU;IAGnD,YACI,MAAsB,EACtB,EAAE,YAAY,EAA0C;QAExD,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,mBAAK,CAAC,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,SAAS,CACX,GAAiD,EACjD,GAAa;QAEb,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC;QAC9B,IAAI,MAAgB,CAAC;QACrB,IAAI,OAAO,EAAE;YACT,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;SACjE;aAAM;YACH,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;SAChD;QACD,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,kBAAkB,CACpB,GAA8B,EAC9B,GAAa;QAEb,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAEtE,IAAI,MAAM,EAAE;YACR,GAAG,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;SACpC;aAAM;YACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;SAC5D;IACL,CAAC;CACJ;AAxCD,kCAwCC"}
@@ -89,8 +89,12 @@ class FeatureController extends controller_1.default {
89
89
  const toggle = req.body;
90
90
  const validatedToggle = await feature_schema_1.featureSchema.validateAsync(toggle);
91
91
  const { enabled } = validatedToggle;
92
- const createdFeature = await this.service.createFeatureToggle(validatedToggle.project, validatedToggle, userName);
93
- const strategies = await Promise.all(toggle.strategies.map(async (s) => this.service.createStrategy(s, createdFeature.project, createdFeature.name, userName)));
92
+ const createdFeature = await this.service.createFeatureToggle(validatedToggle.project, validatedToggle, userName, true);
93
+ const strategies = await Promise.all(toggle.strategies.map(async (s) => this.service.createStrategy(s, {
94
+ projectId: createdFeature.project,
95
+ featureName: createdFeature.name,
96
+ environment: constants_1.DEFAULT_ENV,
97
+ }, userName)));
94
98
  await this.service.updateEnabled(createdFeature.project, createdFeature.name, constants_1.DEFAULT_ENV, enabled, userName);
95
99
  res.status(201).json({
96
100
  ...createdFeature,
@@ -108,7 +112,7 @@ class FeatureController extends controller_1.default {
108
112
  await this.service.updateFeatureToggle(projectId, value, userName);
109
113
  await this.service.removeAllStrategiesForEnv(featureName);
110
114
  if (updatedFeature.strategies) {
111
- await Promise.all(updatedFeature.strategies.map(async (s) => this.service.createStrategy(s, projectId, featureName, userName)));
115
+ await Promise.all(updatedFeature.strategies.map(async (s) => this.service.createStrategy(s, { projectId, featureName, environment: constants_1.DEFAULT_ENV }, userName)));
112
116
  }
113
117
  await this.service.updateEnabled(projectId, updatedFeature.name, constants_1.DEFAULT_ENV, updatedFeature.enabled, userName);
114
118
  const feature = await this.service.storeFeatureUpdatedEventLegacy(featureName, userName);
@@ -1 +1 @@
1
- {"version":3,"file":"feature.js","sourceRoot":"","sources":["../../../../src/lib/routes/admin-api/feature.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature.js","sourceRoot":"","sources":["../../../../src/lib/routes/admin-api/feature.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ const api_token_controller_1 = __importDefault(require("./api-token-controller")
24
24
  const user_admin_1 = __importDefault(require("./user-admin"));
25
25
  const email_1 = __importDefault(require("./email"));
26
26
  const user_feedback_controller_1 = __importDefault(require("./user-feedback-controller"));
27
+ const user_splash_controller_1 = __importDefault(require("./user-splash-controller"));
27
28
  const project_1 = __importDefault(require("./project"));
28
29
  const environments_controller_1 = require("./environments-controller");
29
30
  class AdminApi extends controller_1.default {
@@ -51,6 +52,7 @@ class AdminApi extends controller_1.default {
51
52
  this.app.use('/feedback', new user_feedback_controller_1.default(config, services).router);
52
53
  this.app.use('/projects', new project_1.default(config, services).router);
53
54
  this.app.use('/environments', new environments_controller_1.EnvironmentsController(config, services).router);
55
+ this.app.use('/splash', new user_splash_controller_1.default(config, services).router);
54
56
  }
55
57
  index(req, res) {
56
58
  res.json(api_def_json_1.default);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/routes/admin-api/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/routes/admin-api/index.ts"],"names":[],"mappings":"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"}
@@ -18,15 +18,18 @@ class ProjectFeaturesController extends controller_1.default {
18
18
  super(config);
19
19
  this.featureService = featureToggleServiceV2;
20
20
  this.logger = config.getLogger('/admin-api/project/features.ts');
21
+ // Environments
21
22
  this.get(`${PATH_ENV}`, this.getEnvironment);
22
23
  this.post(`${PATH_ENV}/on`, this.toggleEnvironmentOn, permissions_1.UPDATE_FEATURE);
23
24
  this.post(`${PATH_ENV}/off`, this.toggleEnvironmentOff, permissions_1.UPDATE_FEATURE);
25
+ // activation strategies
24
26
  this.get(`${PATH_STRATEGIES}`, this.getStrategies);
25
27
  this.post(`${PATH_STRATEGIES}`, this.addStrategy, permissions_1.UPDATE_FEATURE);
26
28
  this.get(`${PATH_STRATEGY}`, this.getStrategy);
27
29
  this.put(`${PATH_STRATEGY}`, this.updateStrategy, permissions_1.UPDATE_FEATURE);
28
30
  this.patch(`${PATH_STRATEGY}`, this.patchStrategy, permissions_1.UPDATE_FEATURE);
29
31
  this.delete(`${PATH_STRATEGY}`, this.deleteStrategy, permissions_1.UPDATE_FEATURE);
32
+ // feature toggles
30
33
  this.get(PATH, this.getFeatures);
31
34
  this.post(PATH, this.createFeature, permissions_1.CREATE_FEATURE);
32
35
  this.post(PATH_FEATURE_CLONE, this.cloneFeature, permissions_1.CREATE_FEATURE);
@@ -95,7 +98,7 @@ class ProjectFeaturesController extends controller_1.default {
95
98
  async addStrategy(req, res) {
96
99
  const { projectId, featureName, environment } = req.params;
97
100
  const userName = (0, extract_user_1.extractUsername)(req);
98
- const featureStrategy = await this.featureService.createStrategy(req.body, projectId, featureName, userName, environment);
101
+ const featureStrategy = await this.featureService.createStrategy(req.body, { environment, projectId, featureName }, userName);
99
102
  res.status(200).json(featureStrategy);
100
103
  }
101
104
  async getStrategies(req, res) {
@@ -104,18 +107,18 @@ class ProjectFeaturesController extends controller_1.default {
104
107
  res.status(200).json(featureStrategies);
105
108
  }
106
109
  async updateStrategy(req, res) {
107
- const { strategyId, environment, projectId } = req.params;
110
+ const { strategyId, environment, projectId, featureName } = req.params;
108
111
  const userName = (0, extract_user_1.extractUsername)(req);
109
- const updatedStrategy = await this.featureService.updateStrategy(strategyId, environment, projectId, userName, req.body);
112
+ const updatedStrategy = await this.featureService.updateStrategy(strategyId, req.body, { environment, projectId, featureName }, userName);
110
113
  res.status(200).json(updatedStrategy);
111
114
  }
112
115
  async patchStrategy(req, res) {
113
- const { strategyId, projectId, environment } = req.params;
116
+ const { strategyId, projectId, environment, featureName } = req.params;
114
117
  const userName = (0, extract_user_1.extractUsername)(req);
115
118
  const patch = req.body;
116
119
  const strategy = await this.featureService.getStrategy(strategyId);
117
120
  const { newDocument } = (0, fast_json_patch_1.applyPatch)(strategy, patch);
118
- const updatedStrategy = await this.featureService.updateStrategy(strategyId, environment, projectId, userName, newDocument);
121
+ const updatedStrategy = await this.featureService.updateStrategy(strategyId, newDocument, { environment, projectId, featureName }, userName);
119
122
  res.status(200).json(updatedStrategy);
120
123
  }
121
124
  async getStrategy(req, res) {
@@ -131,14 +134,14 @@ class ProjectFeaturesController extends controller_1.default {
131
134
  const userName = (0, extract_user_1.extractUsername)(req);
132
135
  const { strategyId } = req.params;
133
136
  this.logger.info(strategyId);
134
- const strategy = await this.featureService.deleteStrategy(strategyId, featureName, userName, projectId, environment);
137
+ const strategy = await this.featureService.deleteStrategy(strategyId, { environment, projectId, featureName }, userName);
135
138
  res.status(200).json(strategy);
136
139
  }
137
140
  async updateStrategyParameter(req, res) {
138
- const { strategyId, environment, projectId } = req.params;
141
+ const { strategyId, environment, projectId, featureName } = req.params;
139
142
  const userName = (0, extract_user_1.extractUsername)(req);
140
143
  const { name, value } = req.body;
141
- const updatedStrategy = await this.featureService.updateStrategyParameter(strategyId, name, value, userName, projectId, environment);
144
+ const updatedStrategy = await this.featureService.updateStrategyParameter(strategyId, name, value, { environment, projectId, featureName }, userName);
142
145
  res.status(200).json(updatedStrategy);
143
146
  }
144
147
  async getStrategyParameters(req, res) {