unleash-server 4.15.4 → 4.16.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 (279) hide show
  1. package/dist/lib/app.js +3 -1
  2. package/dist/lib/app.js.map +1 -1
  3. package/dist/lib/create-config.js +4 -0
  4. package/dist/lib/create-config.js.map +1 -1
  5. package/dist/lib/db/access-store.d.ts +2 -2
  6. package/dist/lib/db/access-store.js.map +1 -1
  7. package/dist/lib/db/context-field-store.js +3 -2
  8. package/dist/lib/db/context-field-store.js.map +1 -1
  9. package/dist/lib/db/feature-strategy-store.js +1 -1
  10. package/dist/lib/db/feature-strategy-store.js.map +1 -1
  11. package/dist/lib/db/index.js +4 -0
  12. package/dist/lib/db/index.js.map +1 -1
  13. package/dist/lib/db/pat-store.d.ts +17 -0
  14. package/dist/lib/db/pat-store.js +74 -0
  15. package/dist/lib/db/pat-store.js.map +1 -0
  16. package/dist/lib/db/project-store.d.ts +2 -1
  17. package/dist/lib/db/project-store.js +21 -0
  18. package/dist/lib/db/project-store.js.map +1 -1
  19. package/dist/lib/db/public-signup-token-store.d.ts +29 -0
  20. package/dist/lib/db/public-signup-token-store.js +135 -0
  21. package/dist/lib/db/public-signup-token-store.js.map +1 -0
  22. package/dist/lib/db/segment-store.d.ts +1 -1
  23. package/dist/lib/db/user-store.d.ts +1 -0
  24. package/dist/lib/db/user-store.js +9 -0
  25. package/dist/lib/db/user-store.js.map +1 -1
  26. package/dist/lib/metrics.js +46 -20
  27. package/dist/lib/metrics.js.map +1 -1
  28. package/dist/lib/metrics.test.js +28 -11
  29. package/dist/lib/metrics.test.js.map +1 -1
  30. package/dist/lib/middleware/api-token-middleware.js +14 -10
  31. package/dist/lib/middleware/api-token-middleware.js.map +1 -1
  32. package/dist/lib/middleware/api-token-middleware.test.js +26 -1
  33. package/dist/lib/middleware/api-token-middleware.test.js.map +1 -1
  34. package/dist/lib/middleware/pat-middleware.d.ts +3 -0
  35. package/dist/lib/middleware/pat-middleware.js +25 -0
  36. package/dist/lib/middleware/pat-middleware.js.map +1 -0
  37. package/dist/lib/{routes/admin-api/user.test.d.ts → middleware/pat-middleware.test.d.ts} +0 -0
  38. package/dist/lib/middleware/pat-middleware.test.js +113 -0
  39. package/dist/lib/middleware/pat-middleware.test.js.map +1 -0
  40. package/dist/lib/middleware/response-time-metrics.d.ts +2 -1
  41. package/dist/lib/middleware/response-time-metrics.js +6 -1
  42. package/dist/lib/middleware/response-time-metrics.js.map +1 -1
  43. package/dist/lib/openapi/index.d.ts +2061 -1270
  44. package/dist/lib/openapi/index.js +43 -27
  45. package/dist/lib/openapi/index.js.map +1 -1
  46. package/dist/lib/openapi/spec/api-token-schema.d.ts +2 -1
  47. package/dist/lib/openapi/spec/api-token-schema.js +1 -1
  48. package/dist/lib/openapi/spec/api-token-schema.js.map +1 -1
  49. package/dist/lib/openapi/spec/api-tokens-schema.d.ts +1 -1
  50. package/dist/lib/openapi/spec/create-api-token-schema.d.ts +1 -1
  51. package/dist/lib/openapi/spec/create-api-token-schema.js +16 -1
  52. package/dist/lib/openapi/spec/create-api-token-schema.js.map +1 -1
  53. package/dist/lib/openapi/spec/create-invited-user-schema.d.ts +23 -0
  54. package/dist/lib/openapi/spec/create-invited-user-schema.js +25 -0
  55. package/dist/lib/openapi/spec/create-invited-user-schema.js.map +1 -0
  56. package/dist/lib/openapi/spec/pat-schema.d.ts +29 -0
  57. package/dist/lib/openapi/spec/pat-schema.js +31 -0
  58. package/dist/lib/openapi/spec/pat-schema.js.map +1 -0
  59. package/dist/lib/openapi/spec/pats-schema.d.ts +45 -0
  60. package/dist/lib/openapi/spec/pats-schema.js +22 -0
  61. package/dist/lib/openapi/spec/pats-schema.js.map +1 -0
  62. package/dist/lib/openapi/spec/profile-schema.d.ts +355 -0
  63. package/dist/lib/openapi/spec/profile-schema.js +35 -0
  64. package/dist/lib/openapi/spec/profile-schema.js.map +1 -0
  65. package/dist/{test/e2e/api/admin/user.test.d.ts → lib/openapi/spec/profile-schema.test.d.ts} +0 -0
  66. package/dist/lib/openapi/spec/profile-schema.test.js +19 -0
  67. package/dist/lib/openapi/spec/profile-schema.test.js.map +1 -0
  68. package/dist/lib/openapi/spec/public-signup-schema.test.d.ts +1 -0
  69. package/dist/lib/openapi/spec/public-signup-schema.test.js +19 -0
  70. package/dist/lib/openapi/spec/public-signup-schema.test.js.map +1 -0
  71. package/dist/lib/openapi/spec/public-signup-token-create-schema.d.ts +18 -0
  72. package/dist/lib/openapi/spec/public-signup-token-create-schema.js +20 -0
  73. package/dist/lib/openapi/spec/public-signup-token-create-schema.js.map +1 -0
  74. package/dist/lib/openapi/spec/public-signup-token-schema.d.ts +117 -0
  75. package/dist/lib/openapi/spec/public-signup-token-schema.js +63 -0
  76. package/dist/lib/openapi/spec/public-signup-token-schema.js.map +1 -0
  77. package/dist/lib/openapi/spec/public-signup-token-update-schema.d.ts +17 -0
  78. package/dist/lib/openapi/spec/public-signup-token-update-schema.js +19 -0
  79. package/dist/lib/openapi/spec/public-signup-token-update-schema.js.map +1 -0
  80. package/dist/lib/openapi/spec/public-signup-tokens-schema.d.ts +204 -0
  81. package/dist/lib/openapi/spec/public-signup-tokens-schema.js +28 -0
  82. package/dist/lib/openapi/spec/public-signup-tokens-schema.js.map +1 -0
  83. package/dist/lib/openapi/spec/set-ui-config-schema.d.ts +0 -1
  84. package/dist/lib/openapi/spec/set-ui-config-schema.js +0 -1
  85. package/dist/lib/openapi/spec/set-ui-config-schema.js.map +1 -1
  86. package/dist/lib/openapi/util/create-response-schema.d.ts +1 -0
  87. package/dist/lib/openapi/util/create-response-schema.js +23 -1
  88. package/dist/lib/openapi/util/create-response-schema.js.map +1 -1
  89. package/dist/lib/openapi/util/openapi-tags.d.ts +6 -0
  90. package/dist/lib/openapi/util/openapi-tags.js +4 -0
  91. package/dist/lib/openapi/util/openapi-tags.js.map +1 -1
  92. package/dist/lib/openapi/validate.js +7 -5
  93. package/dist/lib/openapi/validate.js.map +1 -1
  94. package/dist/lib/proxy/proxy-repository.d.ts +4 -1
  95. package/dist/lib/proxy/proxy-repository.js +15 -2
  96. package/dist/lib/proxy/proxy-repository.js.map +1 -1
  97. package/dist/lib/routes/admin-api/api-token.js +2 -2
  98. package/dist/lib/routes/admin-api/api-token.js.map +1 -1
  99. package/dist/lib/routes/admin-api/context.d.ts +1 -1
  100. package/dist/lib/routes/admin-api/context.js +6 -3
  101. package/dist/lib/routes/admin-api/context.js.map +1 -1
  102. package/dist/lib/routes/admin-api/feature.js +4 -2
  103. package/dist/lib/routes/admin-api/feature.js.map +1 -1
  104. package/dist/lib/routes/admin-api/index.js +6 -1
  105. package/dist/lib/routes/admin-api/index.js.map +1 -1
  106. package/dist/lib/routes/admin-api/public-signup.d.ts +24 -0
  107. package/dist/lib/routes/admin-api/public-signup.js +115 -0
  108. package/dist/lib/routes/admin-api/public-signup.js.map +1 -0
  109. package/dist/lib/routes/admin-api/public-signup.test.d.ts +1 -0
  110. package/dist/lib/routes/admin-api/public-signup.test.js +175 -0
  111. package/dist/lib/routes/admin-api/public-signup.test.js.map +1 -0
  112. package/dist/lib/routes/admin-api/strategy.d.ts +1 -1
  113. package/dist/lib/routes/admin-api/strategy.js +8 -3
  114. package/dist/lib/routes/admin-api/strategy.js.map +1 -1
  115. package/dist/lib/routes/admin-api/tag-type.js +6 -2
  116. package/dist/lib/routes/admin-api/tag-type.js.map +1 -1
  117. package/dist/lib/routes/admin-api/tag.d.ts +1 -1
  118. package/dist/lib/routes/admin-api/tag.js +6 -3
  119. package/dist/lib/routes/admin-api/tag.js.map +1 -1
  120. package/dist/lib/routes/admin-api/user/pat.d.ts +16 -0
  121. package/dist/lib/routes/admin-api/user/pat.js +80 -0
  122. package/dist/lib/routes/admin-api/user/pat.js.map +1 -0
  123. package/dist/lib/routes/admin-api/user/user.d.ts +21 -0
  124. package/dist/lib/routes/admin-api/{user.js → user/user.js} +36 -9
  125. package/dist/lib/routes/admin-api/user/user.js.map +1 -0
  126. package/dist/lib/routes/admin-api/user/user.test.d.ts +1 -0
  127. package/dist/lib/routes/admin-api/{user.test.js → user/user.test.js} +5 -5
  128. package/dist/lib/routes/admin-api/user/user.test.js.map +1 -0
  129. package/dist/lib/routes/client-api/index.d.ts +1 -2
  130. package/dist/lib/routes/client-api/index.js.map +1 -1
  131. package/dist/lib/routes/controller.d.ts +1 -0
  132. package/dist/lib/routes/controller.js +4 -0
  133. package/dist/lib/routes/controller.js.map +1 -1
  134. package/dist/lib/routes/index.d.ts +1 -2
  135. package/dist/lib/routes/index.js +10 -2
  136. package/dist/lib/routes/index.js.map +1 -1
  137. package/dist/lib/routes/logout.d.ts +3 -1
  138. package/dist/lib/routes/logout.js +8 -1
  139. package/dist/lib/routes/logout.js.map +1 -1
  140. package/dist/lib/routes/logout.test.js +76 -10
  141. package/dist/lib/routes/logout.test.js.map +1 -1
  142. package/dist/lib/routes/public-invite.d.ts +19 -0
  143. package/dist/lib/routes/public-invite.js +75 -0
  144. package/dist/lib/routes/public-invite.js.map +1 -0
  145. package/dist/lib/routes/public-invite.test.d.ts +1 -0
  146. package/dist/lib/routes/public-invite.test.js +176 -0
  147. package/dist/lib/routes/public-invite.test.js.map +1 -0
  148. package/dist/lib/server-impl.js +1 -1
  149. package/dist/lib/server-impl.js.map +1 -1
  150. package/dist/lib/server-impl.test.js +1 -0
  151. package/dist/lib/server-impl.test.js.map +1 -1
  152. package/dist/lib/services/access-service.d.ts +2 -2
  153. package/dist/lib/services/access-service.js.map +1 -1
  154. package/dist/lib/services/context-service.d.ts +1 -1
  155. package/dist/lib/services/context-service.js +2 -1
  156. package/dist/lib/services/context-service.js.map +1 -1
  157. package/dist/lib/services/index.d.ts +1 -3
  158. package/dist/lib/services/index.js +6 -0
  159. package/dist/lib/services/index.js.map +1 -1
  160. package/dist/lib/services/openapi-service.d.ts +3 -1
  161. package/dist/lib/services/openapi-service.js +2 -1
  162. package/dist/lib/services/openapi-service.js.map +1 -1
  163. package/dist/lib/services/pat-service.d.ts +14 -0
  164. package/dist/lib/services/pat-service.js +42 -0
  165. package/dist/lib/services/pat-service.js.map +1 -0
  166. package/dist/lib/services/project-service.d.ts +1 -0
  167. package/dist/lib/services/project-service.js +3 -0
  168. package/dist/lib/services/project-service.js.map +1 -1
  169. package/dist/lib/services/proxy-service.d.ts +2 -1
  170. package/dist/lib/services/proxy-service.js +3 -0
  171. package/dist/lib/services/proxy-service.js.map +1 -1
  172. package/dist/lib/services/public-signup-token-service.d.ts +29 -0
  173. package/dist/lib/services/public-signup-token-service.js +84 -0
  174. package/dist/lib/services/public-signup-token-service.js.map +1 -0
  175. package/dist/lib/services/strategy-service.d.ts +1 -1
  176. package/dist/lib/services/strategy-service.js +1 -0
  177. package/dist/lib/services/strategy-service.js.map +1 -1
  178. package/dist/lib/services/tag-service.d.ts +1 -1
  179. package/dist/lib/services/tag-service.js +1 -0
  180. package/dist/lib/services/tag-service.js.map +1 -1
  181. package/dist/lib/services/user-service.d.ts +2 -0
  182. package/dist/lib/services/user-service.js +13 -2
  183. package/dist/lib/services/user-service.js.map +1 -1
  184. package/dist/lib/services/user-service.test.js +81 -0
  185. package/dist/lib/services/user-service.test.js.map +1 -1
  186. package/dist/lib/types/events.d.ts +25 -0
  187. package/dist/lib/types/events.js +26 -1
  188. package/dist/lib/types/events.js.map +1 -1
  189. package/dist/lib/types/experimental.d.ts +4 -0
  190. package/dist/lib/types/experimental.js +3 -0
  191. package/dist/lib/types/experimental.js.map +1 -1
  192. package/dist/lib/types/models/pat.d.ts +17 -0
  193. package/dist/lib/types/models/pat.js +14 -0
  194. package/dist/lib/types/models/pat.js.map +1 -0
  195. package/dist/lib/types/models/public-signup-token.d.ts +12 -0
  196. package/dist/lib/types/models/public-signup-token.js +3 -0
  197. package/dist/lib/types/models/public-signup-token.js.map +1 -0
  198. package/dist/lib/types/option.d.ts +7 -0
  199. package/dist/lib/types/services.d.ts +7 -3
  200. package/dist/lib/types/stores/access-store.d.ts +4 -1
  201. package/dist/lib/types/stores/pat-store.d.ts +6 -0
  202. package/dist/lib/types/stores/pat-store.js +3 -0
  203. package/dist/lib/types/stores/pat-store.js.map +1 -0
  204. package/dist/lib/types/stores/project-store.d.ts +1 -0
  205. package/dist/lib/types/stores/public-signup-token-store.d.ts +15 -0
  206. package/dist/lib/types/stores/public-signup-token-store.js +3 -0
  207. package/dist/lib/types/stores/public-signup-token-store.js.map +1 -0
  208. package/dist/lib/types/stores/user-store.d.ts +1 -0
  209. package/dist/lib/types/stores.d.ts +4 -0
  210. package/dist/migrations/20220908093515-add-public-signup-tokens.d.ts +2 -0
  211. package/dist/migrations/20220908093515-add-public-signup-tokens.js +29 -0
  212. package/dist/migrations/20220908093515-add-public-signup-tokens.js.map +1 -0
  213. package/dist/migrations/20220912165344-pat-tokens.d.ts +2 -0
  214. package/dist/migrations/20220912165344-pat-tokens.js +16 -0
  215. package/dist/migrations/20220912165344-pat-tokens.js.map +1 -0
  216. package/dist/migrations/20220916093515-add-url-to-public-signup-tokens.d.ts +2 -0
  217. package/dist/migrations/20220916093515-add-url-to-public-signup-tokens.js +14 -0
  218. package/dist/migrations/20220916093515-add-url-to-public-signup-tokens.js.map +1 -0
  219. package/dist/migrations/20220927110212-add-enabled-to-public-signup-tokens.d.ts +2 -0
  220. package/dist/migrations/20220927110212-add-enabled-to-public-signup-tokens.js +14 -0
  221. package/dist/migrations/20220927110212-add-enabled-to-public-signup-tokens.js.map +1 -0
  222. package/dist/server-dev.js +2 -0
  223. package/dist/server-dev.js.map +1 -1
  224. package/dist/test/config/test-config.js +1 -0
  225. package/dist/test/config/test-config.js.map +1 -1
  226. package/dist/test/e2e/api/admin/public-signup-token.e2e.test.d.ts +1 -0
  227. package/dist/test/e2e/api/admin/public-signup-token.e2e.test.js +186 -0
  228. package/dist/test/e2e/api/admin/public-signup-token.e2e.test.js.map +1 -0
  229. package/dist/test/e2e/api/admin/user/pat.e2e.test.d.ts +1 -0
  230. package/dist/test/e2e/api/admin/user/pat.e2e.test.js +135 -0
  231. package/dist/test/e2e/api/admin/user/pat.e2e.test.js.map +1 -0
  232. package/dist/test/e2e/api/admin/user/user.test.d.ts +1 -0
  233. package/dist/test/e2e/api/admin/{user.test.js → user/user.test.js} +3 -3
  234. package/dist/test/e2e/api/admin/user/user.test.js.map +1 -0
  235. package/dist/test/e2e/api/admin/user-admin.e2e.test.js +5 -1
  236. package/dist/test/e2e/api/admin/user-admin.e2e.test.js.map +1 -1
  237. package/dist/test/e2e/api/auth/simple-password-provider.e2e.test.d.ts +1 -0
  238. package/dist/test/e2e/api/auth/simple-password-provider.e2e.test.js +83 -0
  239. package/dist/test/e2e/api/auth/simple-password-provider.e2e.test.js.map +1 -0
  240. package/dist/test/e2e/api/openapi/openapi.e2e.test.js +43 -2
  241. package/dist/test/e2e/api/openapi/openapi.e2e.test.js.map +1 -1
  242. package/dist/test/e2e/api/proxy/proxy.e2e.test.js +34 -0
  243. package/dist/test/e2e/api/proxy/proxy.e2e.test.js.map +1 -1
  244. package/dist/test/e2e/stores/context-field-store.e2e.test.d.ts +1 -0
  245. package/dist/test/e2e/stores/context-field-store.e2e.test.js +66 -0
  246. package/dist/test/e2e/stores/context-field-store.e2e.test.js.map +1 -0
  247. package/dist/test/fixtures/fake-access-store.d.ts +2 -2
  248. package/dist/test/fixtures/fake-access-store.js.map +1 -1
  249. package/dist/test/fixtures/fake-pat-store.d.ts +12 -0
  250. package/dist/test/fixtures/fake-pat-store.js +29 -0
  251. package/dist/test/fixtures/fake-pat-store.js.map +1 -0
  252. package/dist/test/fixtures/fake-project-store.d.ts +1 -0
  253. package/dist/test/fixtures/fake-project-store.js +4 -0
  254. package/dist/test/fixtures/fake-project-store.js.map +1 -1
  255. package/dist/test/fixtures/fake-public-signup-store.d.ts +22 -0
  256. package/dist/test/fixtures/fake-public-signup-store.js +76 -0
  257. package/dist/test/fixtures/fake-public-signup-store.js.map +1 -0
  258. package/dist/test/fixtures/fake-role-store.d.ts +1 -0
  259. package/dist/test/fixtures/fake-role-store.js +17 -8
  260. package/dist/test/fixtures/fake-role-store.js.map +1 -1
  261. package/dist/test/fixtures/fake-user-store.d.ts +1 -0
  262. package/dist/test/fixtures/fake-user-store.js +4 -0
  263. package/dist/test/fixtures/fake-user-store.js.map +1 -1
  264. package/dist/test/fixtures/store.js +4 -0
  265. package/dist/test/fixtures/store.js.map +1 -1
  266. package/frontend/build/index.html +2 -2
  267. package/frontend/build/static/{FeatureMetricsChart.77e4959a.js → FeatureMetricsChart.1c936764.js} +6 -6
  268. package/frontend/build/static/{Playground.ccde2d35.js → Playground.b0fca55a.js} +1 -1
  269. package/frontend/build/static/index.8ff70acc.css +1 -0
  270. package/frontend/build/static/index.b187adcd.js +422 -0
  271. package/frontend/package.json +5 -1
  272. package/package.json +7 -4
  273. package/dist/lib/routes/admin-api/user.d.ts +0 -18
  274. package/dist/lib/routes/admin-api/user.js.map +0 -1
  275. package/dist/lib/routes/admin-api/user.test.js.map +0 -1
  276. package/dist/test/e2e/api/admin/user.test.js.map +0 -1
  277. package/frontend/build/static/index.7cd6eb2a.js +0 -413
  278. package/frontend/build/static/index.9ba43249.css +0 -1
  279. package/frontend/build/static/unknownUser.fc3b9184.png +0 -0
@@ -0,0 +1,135 @@
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
+ exports.PublicSignupTokenStore = void 0;
7
+ const metrics_helper_1 = __importDefault(require("../util/metrics-helper"));
8
+ const metric_events_1 = require("../metric-events");
9
+ const notfound_error_1 = __importDefault(require("../error/notfound-error"));
10
+ const TABLE = 'public_signup_tokens';
11
+ const TOKEN_USERS_TABLE = 'public_signup_tokens_user';
12
+ const tokenRowReducer = (acc, tokenRow) => {
13
+ const { userId, userName, userUsername, roleId, roleName, roleType, ...token } = tokenRow;
14
+ if (!acc[tokenRow.secret]) {
15
+ acc[tokenRow.secret] = {
16
+ secret: token.secret,
17
+ name: token.name,
18
+ url: token.url,
19
+ expiresAt: token.expires_at,
20
+ enabled: token.enabled,
21
+ createdAt: token.created_at,
22
+ createdBy: token.created_by,
23
+ role: {
24
+ id: roleId,
25
+ name: roleName,
26
+ type: roleType,
27
+ },
28
+ users: [],
29
+ };
30
+ }
31
+ const currentToken = acc[tokenRow.secret];
32
+ if (userId) {
33
+ currentToken.users.push({
34
+ id: userId,
35
+ name: userName,
36
+ username: userUsername,
37
+ });
38
+ }
39
+ return acc;
40
+ };
41
+ const toRow = (newToken) => {
42
+ if (!newToken)
43
+ return;
44
+ return {
45
+ secret: newToken.secret,
46
+ name: newToken.name,
47
+ expires_at: newToken.expiresAt,
48
+ created_by: newToken.createdBy || null,
49
+ role_id: newToken.roleId,
50
+ url: newToken.url,
51
+ };
52
+ };
53
+ const toTokens = (rows) => {
54
+ const tokens = rows.reduce(tokenRowReducer, {});
55
+ return Object.values(tokens);
56
+ };
57
+ class PublicSignupTokenStore {
58
+ constructor(db, eventBus, getLogger) {
59
+ this.db = db;
60
+ this.logger = getLogger('public-signup-tokens.js');
61
+ this.timer = (action) => metrics_helper_1.default.wrapTimer(eventBus, metric_events_1.DB_TIME, {
62
+ store: 'public-signup-tokens',
63
+ action,
64
+ });
65
+ }
66
+ count() {
67
+ return this.db(TABLE)
68
+ .count('*')
69
+ .then((res) => Number(res[0].count));
70
+ }
71
+ makeTokenUsersQuery() {
72
+ return this.db(`${TABLE} as tokens`)
73
+ .leftJoin(`${TOKEN_USERS_TABLE} as token_project_users`, 'tokens.secret', 'token_project_users.secret')
74
+ .leftJoin(`users`, 'token_project_users.user_id', 'users.id')
75
+ .leftJoin(`roles`, 'tokens.role_id', 'roles.id')
76
+ .select('tokens.secret', 'tokens.name', 'tokens.expires_at', 'tokens.enabled', 'tokens.created_at', 'tokens.created_by', 'tokens.url', 'token_project_users.user_id as userId', 'users.name as userName', 'users.username as userUsername', 'roles.id as roleId', 'roles.name as roleName', 'roles.type as roleType');
77
+ }
78
+ async getAll() {
79
+ const stopTimer = this.timer('getAll');
80
+ const rows = await this.makeTokenUsersQuery();
81
+ stopTimer();
82
+ return toTokens(rows);
83
+ }
84
+ async getAllActive() {
85
+ const stopTimer = this.timer('getAllActive');
86
+ const rows = await this.makeTokenUsersQuery()
87
+ .where('expires_at', 'IS', null)
88
+ .orWhere('expires_at', '>', 'now()');
89
+ stopTimer();
90
+ return toTokens(rows);
91
+ }
92
+ async addTokenUser(secret, userId) {
93
+ await this.db(TOKEN_USERS_TABLE).insert({ user_id: userId, secret }, ['created_at']);
94
+ }
95
+ async insert(newToken) {
96
+ const response = await this.db(TABLE).insert(toRow(newToken), ['secret']);
97
+ return this.get(response[0].secret);
98
+ }
99
+ async isValid(secret) {
100
+ const result = await this.db.raw(`SELECT EXISTS (SELECT 1 FROM ${TABLE} WHERE secret = ? AND expires_at::date > ? AND enabled = true) AS valid`, [secret, new Date()]);
101
+ const { valid } = result.rows[0];
102
+ return valid;
103
+ }
104
+ destroy() { }
105
+ async exists(secret) {
106
+ const result = await this.db.raw(`SELECT EXISTS (SELECT 1 FROM ${TABLE} WHERE secret = ?) AS present`, [secret]);
107
+ const { present } = result.rows[0];
108
+ return present;
109
+ }
110
+ async get(key) {
111
+ const rows = await this.makeTokenUsersQuery().where('tokens.secret', key);
112
+ if (rows.length > 0) {
113
+ return toTokens(rows)[0];
114
+ }
115
+ throw new notfound_error_1.default('Could not find public signup token.');
116
+ }
117
+ async delete(secret) {
118
+ return this.db(TABLE).where({ secret }).del();
119
+ }
120
+ async deleteAll() {
121
+ return this.db(TABLE).del();
122
+ }
123
+ async update(secret, { expiresAt, enabled }) {
124
+ const rows = await this.makeTokenUsersQuery()
125
+ .update({ expires_at: expiresAt, enabled })
126
+ .where('secret', secret)
127
+ .returning('*');
128
+ if (rows.length > 0) {
129
+ return toTokens(rows)[0];
130
+ }
131
+ throw new notfound_error_1.default('Could not find public signup token.');
132
+ }
133
+ }
134
+ exports.PublicSignupTokenStore = PublicSignupTokenStore;
135
+ //# sourceMappingURL=public-signup-token-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-signup-token-store.js","sourceRoot":"","sources":["../../../src/lib/db/public-signup-token-store.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,8 @@ import { IConstraint, IFeatureStrategySegment, ISegment } from '../types/model';
4
4
  import { LogProvider } from '../logger';
5
5
  import { Knex } from 'knex';
6
6
  import EventEmitter from 'events';
7
- import User from '../types/user';
8
7
  import { PartialSome } from '../types/partial';
8
+ import User from '../types/user';
9
9
  interface ISegmentRow {
10
10
  id: number;
11
11
  name: string;
@@ -25,5 +25,6 @@ declare class UserStore implements IUserStore {
25
25
  destroy(): void;
26
26
  exists(id: number): Promise<boolean>;
27
27
  get(id: number): Promise<User>;
28
+ getUserByPersonalAccessToken(secret: string): Promise<User>;
28
29
  }
29
30
  export default UserStore;
@@ -162,6 +162,15 @@ class UserStore {
162
162
  const row = await this.db(TABLE).where({ id }).first();
163
163
  return rowToUser(row);
164
164
  }
165
+ async getUserByPersonalAccessToken(secret) {
166
+ const row = await this.db
167
+ .select(USER_COLUMNS.map((column) => `${TABLE}.${column}`))
168
+ .from(TABLE)
169
+ .leftJoin('personal_access_tokens', 'personal_access_tokens.user_id', `${TABLE}.id`)
170
+ .where('secret', secret)
171
+ .first();
172
+ return rowToUser(row);
173
+ }
165
174
  }
166
175
  module.exports = UserStore;
167
176
  exports.default = UserStore;
@@ -1 +1 @@
1
- {"version":3,"file":"user-store.js","sourceRoot":"","sources":["../../../src/lib/db/user-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user-store.js","sourceRoot":"","sources":["../../../src/lib/db/user-store.ts"],"names":[],"mappings":"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"}
@@ -45,7 +45,7 @@ class MetricsMonitor {
45
45
  const requestDuration = new prom_client_1.default.Summary({
46
46
  name: 'http_request_duration_milliseconds',
47
47
  help: 'App response time',
48
- labelNames: ['path', 'method', 'status'],
48
+ labelNames: ['path', 'method', 'status', 'appName'],
49
49
  percentiles: [0.1, 0.5, 0.9, 0.95, 0.99],
50
50
  maxAgeSeconds: 600,
51
51
  ageBuckets: 5,
@@ -60,8 +60,8 @@ class MetricsMonitor {
60
60
  });
61
61
  const featureToggleUpdateTotal = new prom_client_1.default.Counter({
62
62
  name: 'feature_toggle_update_total',
63
- help: 'Number of times a toggle has been updated',
64
- labelNames: ['toggle'],
63
+ help: 'Number of times a toggle has been updated. Environment label would be "n/a" when it is not available, e.g. when a feature toggle is created.',
64
+ labelNames: ['toggle', 'project', 'environment'],
65
65
  });
66
66
  const featureToggleUsageTotal = new prom_client_1.default.Counter({
67
67
  name: 'feature_toggle_usage_total',
@@ -122,32 +122,58 @@ class MetricsMonitor {
122
122
  }
123
123
  collectStaticCounters();
124
124
  this.timer = setInterval(() => collectStaticCounters(), (0, date_fns_1.hoursToMilliseconds)(2)).unref();
125
- eventBus.on(events.REQUEST_TIME, ({ path, method, time, statusCode }) => {
126
- requestDuration.labels(path, method, statusCode).observe(time);
125
+ eventBus.on(events.REQUEST_TIME, ({ path, method, time, statusCode, appName }) => {
126
+ requestDuration
127
+ .labels(path, method, statusCode, appName)
128
+ .observe(time);
127
129
  });
128
130
  eventBus.on(events.DB_TIME, ({ store, action, time }) => {
129
131
  dbDuration.labels(store, action).observe(time);
130
132
  });
131
- eventStore.on(events_1.FEATURE_CREATED, ({ featureName }) => {
132
- featureToggleUpdateTotal.labels(featureName).inc();
133
+ eventStore.on(events_1.FEATURE_CREATED, ({ featureName, project }) => {
134
+ featureToggleUpdateTotal.labels(featureName, project, 'n/a').inc();
133
135
  });
134
- eventStore.on(events_1.FEATURE_UPDATED, ({ featureName }) => {
135
- featureToggleUpdateTotal.labels(featureName).inc();
136
+ eventStore.on(events_1.FEATURE_VARIANTS_UPDATED, ({ featureName, project }) => {
137
+ featureToggleUpdateTotal.labels(featureName, project, 'n/a').inc();
136
138
  });
137
- eventStore.on(events_1.FEATURE_STRATEGY_ADD, ({ featureName }) => {
138
- featureToggleUpdateTotal.labels(featureName).inc();
139
+ eventStore.on(events_1.FEATURE_METADATA_UPDATED, ({ featureName, project }) => {
140
+ featureToggleUpdateTotal.labels(featureName, project, 'n/a').inc();
139
141
  });
140
- eventStore.on(events_1.FEATURE_STRATEGY_REMOVE, ({ featureName }) => {
141
- featureToggleUpdateTotal.labels(featureName).inc();
142
+ eventStore.on(events_1.FEATURE_UPDATED, ({ featureName, project }) => {
143
+ featureToggleUpdateTotal
144
+ .labels(featureName, project, 'default')
145
+ .inc();
142
146
  });
143
- eventStore.on(events_1.FEATURE_STRATEGY_UPDATE, ({ featureName }) => {
144
- featureToggleUpdateTotal.labels(featureName).inc();
147
+ eventStore.on(events_1.FEATURE_STRATEGY_ADD, ({ featureName, project, environment }) => {
148
+ featureToggleUpdateTotal
149
+ .labels(featureName, project, environment)
150
+ .inc();
145
151
  });
146
- eventStore.on(events_1.FEATURE_ARCHIVED, ({ featureName }) => {
147
- featureToggleUpdateTotal.labels(featureName).inc();
152
+ eventStore.on(events_1.FEATURE_STRATEGY_REMOVE, ({ featureName, project, environment }) => {
153
+ featureToggleUpdateTotal
154
+ .labels(featureName, project, environment)
155
+ .inc();
148
156
  });
149
- eventStore.on(events_1.FEATURE_REVIVED, ({ featureName }) => {
150
- featureToggleUpdateTotal.labels(featureName).inc();
157
+ eventStore.on(events_1.FEATURE_STRATEGY_UPDATE, ({ featureName, project, environment }) => {
158
+ featureToggleUpdateTotal
159
+ .labels(featureName, project, environment)
160
+ .inc();
161
+ });
162
+ eventStore.on(events_1.FEATURE_ENVIRONMENT_DISABLED, ({ featureName, project, environment }) => {
163
+ featureToggleUpdateTotal
164
+ .labels(featureName, project, environment)
165
+ .inc();
166
+ });
167
+ eventStore.on(events_1.FEATURE_ENVIRONMENT_ENABLED, ({ featureName, project, environment }) => {
168
+ featureToggleUpdateTotal
169
+ .labels(featureName, project, environment)
170
+ .inc();
171
+ });
172
+ eventStore.on(events_1.FEATURE_ARCHIVED, ({ featureName, project }) => {
173
+ featureToggleUpdateTotal.labels(featureName, project, 'n/a').inc();
174
+ });
175
+ eventStore.on(events_1.FEATURE_REVIVED, ({ featureName, project }) => {
176
+ featureToggleUpdateTotal.labels(featureName, project, 'n/a').inc();
151
177
  });
152
178
  eventBus.on(events_1.CLIENT_METRICS, (m) => {
153
179
  // eslint-disable-next-line no-restricted-syntax
@@ -162,7 +188,7 @@ class MetricsMonitor {
162
188
  .inc(entry[1].no);
163
189
  }
164
190
  });
165
- eventBus.on(events_1.CLIENT_REGISTER, (m) => {
191
+ eventStore.on(events_1.CLIENT_REGISTER, (m) => {
166
192
  if (m.sdkVersion && m.sdkVersion.indexOf(':') > -1) {
167
193
  const [sdkName, sdkVersion] = m.sdkVersion.split(':');
168
194
  clientSdkVersionUsage.labels(sdkName, sdkVersion).inc();
@@ -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":"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"}
@@ -13,6 +13,7 @@ const store_1 = __importDefault(require("../test/fixtures/store"));
13
13
  const monitor = (0, metrics_1.createMetricsMonitor)();
14
14
  const eventBus = new events_1.default();
15
15
  const prometheusRegister = prom_client_1.register;
16
+ let eventStore;
16
17
  let stores;
17
18
  beforeAll(() => {
18
19
  const config = (0, test_config_1.createTestConfig)({
@@ -21,6 +22,7 @@ beforeAll(() => {
21
22
  },
22
23
  });
23
24
  stores = (0, store_1.default)();
25
+ eventStore = stores.eventStore;
24
26
  const db = {
25
27
  client: {
26
28
  pool: {
@@ -47,15 +49,16 @@ test('should collect metrics for requests', async () => {
47
49
  time: 1337,
48
50
  });
49
51
  const metrics = await prometheusRegister.metrics();
50
- expect(metrics).toMatch(/http_request_duration_milliseconds{quantile="0\.99",path="somePath",method="GET",status="200"}.*1337/);
52
+ expect(metrics).toMatch(/http_request_duration_milliseconds{quantile="0\.99",path="somePath",method="GET",status="200",appName="undefined"}.*1337/);
51
53
  });
52
54
  test('should collect metrics for updated toggles', async () => {
53
55
  stores.eventStore.emit(events_2.FEATURE_UPDATED, {
54
56
  featureName: 'TestToggle',
57
+ project: 'default',
55
58
  data: { name: 'TestToggle' },
56
59
  });
57
60
  const metrics = await prometheusRegister.metrics();
58
- expect(metrics).toMatch(/feature_toggle_update_total{toggle="TestToggle"} 1/);
61
+ expect(metrics).toMatch(/feature_toggle_update_total{toggle="TestToggle",project="default",environment="default"} 1/);
59
62
  });
60
63
  test('should collect metrics for client metric reports', async () => {
61
64
  eventBus.emit(events_2.CLIENT_METRICS, {
@@ -94,22 +97,36 @@ test('Should collect metrics for database', async () => {
94
97
  expect(metrics).toMatch(/db_pool_pending_acquires/);
95
98
  });
96
99
  test('Should collect metrics for client sdk versions', async () => {
97
- eventBus.emit(events_2.CLIENT_REGISTER, { sdkVersion: 'unleash-client-node:3.2.5' });
98
- eventBus.emit(events_2.CLIENT_REGISTER, { sdkVersion: 'unleash-client-node:3.2.5' });
99
- eventBus.emit(events_2.CLIENT_REGISTER, { sdkVersion: 'unleash-client-node:3.2.5' });
100
- eventBus.emit(events_2.CLIENT_REGISTER, { sdkVersion: 'unleash-client-java:5.0.0' });
101
- eventBus.emit(events_2.CLIENT_REGISTER, { sdkVersion: 'unleash-client-java:5.0.0' });
102
- eventBus.emit(events_2.CLIENT_REGISTER, { sdkVersion: 'unleash-client-java:5.0.0' });
100
+ eventStore.emit(events_2.CLIENT_REGISTER, {
101
+ sdkVersion: 'unleash-client-node:3.2.5',
102
+ });
103
+ eventStore.emit(events_2.CLIENT_REGISTER, {
104
+ sdkVersion: 'unleash-client-node:3.2.5',
105
+ });
106
+ eventStore.emit(events_2.CLIENT_REGISTER, {
107
+ sdkVersion: 'unleash-client-node:3.2.5',
108
+ });
109
+ eventStore.emit(events_2.CLIENT_REGISTER, {
110
+ sdkVersion: 'unleash-client-java:5.0.0',
111
+ });
112
+ eventStore.emit(events_2.CLIENT_REGISTER, {
113
+ sdkVersion: 'unleash-client-java:5.0.0',
114
+ });
115
+ eventStore.emit(events_2.CLIENT_REGISTER, {
116
+ sdkVersion: 'unleash-client-java:5.0.0',
117
+ });
103
118
  const metrics = await prometheusRegister.getSingleMetricAsString('client_sdk_versions');
104
119
  expect(metrics).toMatch(/client_sdk_versions\{sdk_name="unleash-client-node",sdk_version="3\.2\.5"} 3/);
105
120
  expect(metrics).toMatch(/client_sdk_versions\{sdk_name="unleash-client-java",sdk_version="5\.0\.0"} 3/);
106
- eventBus.emit(events_2.CLIENT_REGISTER, { sdkVersion: 'unleash-client-node:3.2.5' });
121
+ eventStore.emit(events_2.CLIENT_REGISTER, {
122
+ sdkVersion: 'unleash-client-node:3.2.5',
123
+ });
107
124
  const newmetrics = await prometheusRegister.getSingleMetricAsString('client_sdk_versions');
108
125
  expect(newmetrics).toMatch(/client_sdk_versions\{sdk_name="unleash-client-node",sdk_version="3\.2\.5"} 4/);
109
126
  });
110
127
  test('Should not collect client sdk version if sdkVersion is of wrong format or non-existent', async () => {
111
- eventBus.emit(events_2.CLIENT_REGISTER, { sdkVersion: 'unleash-client-rust' });
112
- eventBus.emit(events_2.CLIENT_REGISTER, {});
128
+ eventStore.emit(events_2.CLIENT_REGISTER, { sdkVersion: 'unleash-client-rust' });
129
+ eventStore.emit(events_2.CLIENT_REGISTER, {});
113
130
  const metrics = await prometheusRegister.getSingleMetricAsString('client_sdk_versions');
114
131
  expect(metrics).not.toMatch(/unleash-client-rust/);
115
132
  });
@@ -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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"}
@@ -30,17 +30,21 @@ const apiAccessMiddleware = ({ getLogger, authentication, flagResolver, }, { api
30
30
  }
31
31
  try {
32
32
  const apiToken = req.header('authorization');
33
- const apiUser = apiTokenService.getUserForToken(apiToken);
34
- const { CLIENT, FRONTEND } = api_token_1.ApiTokenType;
35
- if (apiUser) {
36
- if ((apiUser.type === CLIENT && !isClientApi(req)) ||
37
- (apiUser.type === FRONTEND && !isProxyApi(req)) ||
38
- (apiUser.type === FRONTEND &&
39
- !flagResolver.isEnabled('embedProxy'))) {
40
- res.status(403).send({ message: exports.TOKEN_TYPE_ERROR_MESSAGE });
41
- return;
33
+ if (!apiToken?.startsWith('user:')) {
34
+ const apiUser = apiTokenService.getUserForToken(apiToken);
35
+ const { CLIENT, FRONTEND } = api_token_1.ApiTokenType;
36
+ if (apiUser) {
37
+ if ((apiUser.type === CLIENT && !isClientApi(req)) ||
38
+ (apiUser.type === FRONTEND && !isProxyApi(req)) ||
39
+ (apiUser.type === FRONTEND &&
40
+ !flagResolver.isEnabled('embedProxy'))) {
41
+ res.status(403).send({
42
+ message: exports.TOKEN_TYPE_ERROR_MESSAGE,
43
+ });
44
+ return;
45
+ }
46
+ req.user = apiUser;
42
47
  }
43
- req.user = apiUser;
44
48
  }
45
49
  }
46
50
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"api-token-middleware.js","sourceRoot":"","sources":["../../../src/lib/middleware/api-token-middleware.ts"],"names":[],"mappings":";;;AAAA,sEAAsE;AACtE,yDAAyD;AAGzD,MAAM,WAAW,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;IAC7B,OAAO,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;IAC5B,IAAI,CAAC,IAAI,EAAE;QACP,OAAO;KACV;IAED,oEAAoE;IACpE,0BAA0B;IAC1B,OAAO,CACH,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC;QACrC,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC;QACzC,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CACnC,CAAC;AACN,CAAC,CAAC;AAEW,QAAA,wBAAwB,GACjC,kEAAkE,CAAC;AAEvE,MAAM,mBAAmB,GAAG,CACxB,EACI,SAAS,EACT,cAAc,EACd,YAAY,GACwD,EACxE,EAAE,eAAe,EAAO,EACrB,EAAE;IACL,MAAM,MAAM,GAAG,SAAS,CAAC,0BAA0B,CAAC,CAAC;IACrD,MAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAE9C,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE;QAChC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;KACrC;IAED,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACtB,IAAI,GAAG,CAAC,IAAI,EAAE;YACV,OAAO,IAAI,EAAE,CAAC;SACjB;QAED,IAAI;YACA,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;YAC7C,MAAM,OAAO,GAAG,eAAe,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YAC1D,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,wBAAY,CAAC;YAE1C,IAAI,OAAO,EAAE;gBACT,IACI,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;oBAC9C,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;oBAC/C,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ;wBACtB,CAAC,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,EAC5C;oBACE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,gCAAwB,EAAE,CAAC,CAAC;oBAC5D,OAAO;iBACV;gBACD,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC;aACtB;SACJ;QAAC,OAAO,KAAK,EAAE;YACZ,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACvB;QAED,IAAI,EAAE,CAAC;IACX,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"api-token-middleware.js","sourceRoot":"","sources":["../../../src/lib/middleware/api-token-middleware.ts"],"names":[],"mappings":";;;AAAA,sEAAsE;AACtE,yDAAyD;AAIzD,MAAM,WAAW,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;IAC7B,OAAO,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;IAC5B,IAAI,CAAC,IAAI,EAAE;QACP,OAAO;KACV;IAED,oEAAoE;IACpE,0BAA0B;IAC1B,OAAO,CACH,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC;QACrC,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC;QACzC,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CACnC,CAAC;AACN,CAAC,CAAC;AAEW,QAAA,wBAAwB,GACjC,kEAAkE,CAAC;AAEvE,MAAM,mBAAmB,GAAG,CACxB,EACI,SAAS,EACT,cAAc,EACd,YAAY,GACwD,EACxE,EAAE,eAAe,EAAO,EACrB,EAAE;IACL,MAAM,MAAM,GAAG,SAAS,CAAC,0BAA0B,CAAC,CAAC;IACrD,MAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAE9C,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE;QAChC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;KACrC;IAED,OAAO,CAAC,GAAiB,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACpC,IAAI,GAAG,CAAC,IAAI,EAAE;YACV,OAAO,IAAI,EAAE,CAAC;SACjB;QAED,IAAI;YACA,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;YAC7C,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE;gBAChC,MAAM,OAAO,GAAG,eAAe,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;gBAC1D,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,wBAAY,CAAC;gBAE1C,IAAI,OAAO,EAAE;oBACT,IACI,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;wBAC9C,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;wBAC/C,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ;4BACtB,CAAC,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,EAC5C;wBACE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;4BACjB,OAAO,EAAE,gCAAwB;yBACpC,CAAC,CAAC;wBACH,OAAO;qBACV;oBACD,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC;iBACtB;aACJ;SACJ;QAAC,OAAO,KAAK,EAAE;YACZ,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACvB;QAED,IAAI,EAAE,CAAC;IACX,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,mBAAmB,CAAC"}
@@ -69,6 +69,22 @@ test('should not add user if unknown token', async () => {
69
69
  expect(req.header).toHaveBeenCalled();
70
70
  expect(req.user).toBeFalsy();
71
71
  });
72
+ test('should not make database query when provided PAT format', async () => {
73
+ const apiTokenService = {
74
+ getUserForToken: jest.fn(),
75
+ };
76
+ const func = (0, api_token_middleware_1.default)(config, { apiTokenService });
77
+ const cb = jest.fn();
78
+ const req = {
79
+ header: jest.fn().mockReturnValue('user:asdkjsdhg3'),
80
+ user: undefined,
81
+ };
82
+ await func(req, undefined, cb);
83
+ expect(apiTokenService.getUserForToken).not.toHaveBeenCalled();
84
+ expect(req.header).toHaveBeenCalled();
85
+ expect(cb).toHaveBeenCalled();
86
+ expect(req.user).toBeFalsy();
87
+ });
72
88
  test('should add user if known token', async () => {
73
89
  const apiUser = new api_user_1.default({
74
90
  username: 'default',
@@ -151,7 +167,16 @@ test('should not add user if disabled', async () => {
151
167
  header: jest.fn().mockReturnValue('some-known-token'),
152
168
  user: undefined,
153
169
  };
154
- await func(req, undefined, cb);
170
+ const send = jest.fn();
171
+ const res = {
172
+ status: () => {
173
+ return {
174
+ send: send,
175
+ };
176
+ },
177
+ };
178
+ await func(req, res, cb);
179
+ expect(send).not.toHaveBeenCalled();
155
180
  expect(cb).toHaveBeenCalled();
156
181
  expect(req.user).toBeFalsy();
157
182
  });
@@ -1 +1 @@
1
- {"version":3,"file":"api-token-middleware.test.js","sourceRoot":"","sources":["../../../src/lib/middleware/api-token-middleware.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-token-middleware.test.js","sourceRoot":"","sources":["../../../src/lib/middleware/api-token-middleware.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { IUnleashConfig } from '../types';
2
+ declare const patMiddleware: ({ getLogger, flagResolver, }: Pick<IUnleashConfig, 'getLogger' | 'flagResolver'>, { userService }: any) => any;
3
+ export default patMiddleware;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /* eslint-disable @typescript-eslint/explicit-module-boundary-types */
4
+ const patMiddleware = ({ getLogger, flagResolver, }, { userService }) => {
5
+ const logger = getLogger('/middleware/pat-middleware.ts');
6
+ logger.debug('Enabling PAT middleware');
7
+ if (!flagResolver.isEnabled('personalAccessTokens')) {
8
+ return (req, res, next) => next();
9
+ }
10
+ return async (req, res, next) => {
11
+ try {
12
+ const apiToken = req.header('authorization');
13
+ if (apiToken?.startsWith('user:')) {
14
+ const user = await userService.getUserByPersonalAccessToken(apiToken);
15
+ req.user = user;
16
+ }
17
+ }
18
+ catch (error) {
19
+ logger.error(error);
20
+ }
21
+ next();
22
+ };
23
+ };
24
+ exports.default = patMiddleware;
25
+ //# sourceMappingURL=pat-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pat-middleware.js","sourceRoot":"","sources":["../../../src/lib/middleware/pat-middleware.ts"],"names":[],"mappings":";;AAGA,sEAAsE;AACtE,MAAM,aAAa,GAAG,CAClB,EACI,SAAS,EACT,YAAY,GACqC,EACrD,EAAE,WAAW,EAAO,EACjB,EAAE;IACL,MAAM,MAAM,GAAG,SAAS,CAAC,+BAA+B,CAAC,CAAC;IAC1D,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAExC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,sBAAsB,CAAC,EAAE;QACjD,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;KACrC;IAED,OAAO,KAAK,EAAE,GAAiB,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC1C,IAAI;YACA,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;YAC7C,IAAI,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE;gBAC/B,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,4BAA4B,CACvD,QAAQ,CACX,CAAC;gBACF,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;aACnB;SACJ;QAAC,OAAO,KAAK,EAAE;YACZ,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACvB;QACD,IAAI,EAAE,CAAC;IACX,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,aAAa,CAAC"}