@de-otio/trellis 0.6.0 → 0.7.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 (339) hide show
  1. package/dist/env.d.ts +21 -0
  2. package/dist/env.d.ts.map +1 -1
  3. package/dist/env.js +12 -0
  4. package/dist/env.js.map +1 -1
  5. package/dist/lambda/nightly-cron.d.ts.map +1 -1
  6. package/dist/lambda/nightly-cron.js +5 -2
  7. package/dist/lambda/nightly-cron.js.map +1 -1
  8. package/dist/lambda/post-confirmation.d.ts +30 -0
  9. package/dist/lambda/post-confirmation.d.ts.map +1 -1
  10. package/dist/lambda/post-confirmation.js +333 -29
  11. package/dist/lambda/post-confirmation.js.map +1 -1
  12. package/dist/lambda/pre-token-generation.d.ts +20 -0
  13. package/dist/lambda/pre-token-generation.d.ts.map +1 -1
  14. package/dist/lambda/pre-token-generation.js +233 -48
  15. package/dist/lambda/pre-token-generation.js.map +1 -1
  16. package/dist/lib/activitypub/activity-processor.d.ts.map +1 -1
  17. package/dist/lib/activitypub/activity-processor.js +2 -1
  18. package/dist/lib/activitypub/activity-processor.js.map +1 -1
  19. package/dist/lib/activitypub/group-service.d.ts +2 -2
  20. package/dist/lib/activitypub/group-service.d.ts.map +1 -1
  21. package/dist/lib/activitypub/group-service.js +5 -2
  22. package/dist/lib/activitypub/group-service.js.map +1 -1
  23. package/dist/lib/age-tier-transition.d.ts.map +1 -1
  24. package/dist/lib/age-tier-transition.js +19 -10
  25. package/dist/lib/age-tier-transition.js.map +1 -1
  26. package/dist/lib/audit/csv-export.d.ts +25 -0
  27. package/dist/lib/audit/csv-export.d.ts.map +1 -0
  28. package/dist/lib/audit/csv-export.js +54 -0
  29. package/dist/lib/audit/csv-export.js.map +1 -0
  30. package/dist/lib/audit/emit.d.ts +56 -0
  31. package/dist/lib/audit/emit.d.ts.map +1 -0
  32. package/dist/lib/audit/emit.js +124 -0
  33. package/dist/lib/audit/emit.js.map +1 -0
  34. package/dist/lib/audit/event-types.d.ts +36 -0
  35. package/dist/lib/audit/event-types.d.ts.map +1 -0
  36. package/dist/lib/audit/event-types.js +69 -0
  37. package/dist/lib/audit/event-types.js.map +1 -0
  38. package/dist/lib/audit/pii-filter.d.ts +22 -0
  39. package/dist/lib/audit/pii-filter.d.ts.map +1 -0
  40. package/dist/lib/audit/pii-filter.js +51 -0
  41. package/dist/lib/audit/pii-filter.js.map +1 -0
  42. package/dist/lib/audit-logger.js +1 -1
  43. package/dist/lib/audit-logger.js.map +1 -1
  44. package/dist/lib/auth/auth-context.d.ts +34 -0
  45. package/dist/lib/auth/auth-context.d.ts.map +1 -0
  46. package/dist/lib/auth/auth-context.js +10 -0
  47. package/dist/lib/auth/auth-context.js.map +1 -0
  48. package/dist/lib/auth/auth-middleware.d.ts +50 -0
  49. package/dist/lib/auth/auth-middleware.d.ts.map +1 -0
  50. package/dist/lib/auth/auth-middleware.js +153 -0
  51. package/dist/lib/auth/auth-middleware.js.map +1 -0
  52. package/dist/lib/auth/capabilities.d.ts +40 -0
  53. package/dist/lib/auth/capabilities.d.ts.map +1 -0
  54. package/dist/lib/auth/capabilities.js +44 -0
  55. package/dist/lib/auth/capabilities.js.map +1 -0
  56. package/dist/lib/auth/claims-cache.d.ts +70 -0
  57. package/dist/lib/auth/claims-cache.d.ts.map +1 -0
  58. package/dist/lib/auth/claims-cache.js +139 -0
  59. package/dist/lib/auth/claims-cache.js.map +1 -0
  60. package/dist/lib/auth/cognito-jwt.d.ts +6 -0
  61. package/dist/lib/auth/cognito-jwt.d.ts.map +1 -1
  62. package/dist/lib/auth/cognito-jwt.js.map +1 -1
  63. package/dist/lib/auth/idp-redirect-builder.d.ts +43 -0
  64. package/dist/lib/auth/idp-redirect-builder.d.ts.map +1 -0
  65. package/dist/lib/auth/idp-redirect-builder.js +48 -0
  66. package/dist/lib/auth/idp-redirect-builder.js.map +1 -0
  67. package/dist/lib/auth/require.d.ts +51 -0
  68. package/dist/lib/auth/require.d.ts.map +1 -0
  69. package/dist/lib/auth/require.js +99 -0
  70. package/dist/lib/auth/require.js.map +1 -0
  71. package/dist/lib/auth/role-grants.d.ts +18 -0
  72. package/dist/lib/auth/role-grants.d.ts.map +1 -0
  73. package/dist/lib/auth/role-grants.js +62 -0
  74. package/dist/lib/auth/role-grants.js.map +1 -0
  75. package/dist/lib/cognito/idp-sdk.d.ts +80 -0
  76. package/dist/lib/cognito/idp-sdk.d.ts.map +1 -0
  77. package/dist/lib/cognito/idp-sdk.js +186 -0
  78. package/dist/lib/cognito/idp-sdk.js.map +1 -0
  79. package/dist/lib/cognito/issuer-probe.d.ts +47 -0
  80. package/dist/lib/cognito/issuer-probe.d.ts.map +1 -0
  81. package/dist/lib/cognito/issuer-probe.js +319 -0
  82. package/dist/lib/cognito/issuer-probe.js.map +1 -0
  83. package/dist/lib/comment-handler.d.ts +7 -7
  84. package/dist/lib/comment-handler.d.ts.map +1 -1
  85. package/dist/lib/comment-handler.js +23 -20
  86. package/dist/lib/comment-handler.js.map +1 -1
  87. package/dist/lib/compliance/baseline.d.ts +15 -0
  88. package/dist/lib/compliance/baseline.d.ts.map +1 -0
  89. package/dist/lib/compliance/baseline.js +205 -0
  90. package/dist/lib/compliance/baseline.js.map +1 -0
  91. package/dist/lib/compliance/tenant-merge.d.ts +35 -0
  92. package/dist/lib/compliance/tenant-merge.d.ts.map +1 -0
  93. package/dist/lib/compliance/tenant-merge.js +80 -0
  94. package/dist/lib/compliance/tenant-merge.js.map +1 -0
  95. package/dist/lib/compliance/types.d.ts +135 -0
  96. package/dist/lib/compliance/types.d.ts.map +1 -0
  97. package/dist/lib/compliance/types.js +9 -0
  98. package/dist/lib/compliance/types.js.map +1 -0
  99. package/dist/lib/connection-code-handler.d.ts +4 -4
  100. package/dist/lib/connection-code-handler.d.ts.map +1 -1
  101. package/dist/lib/connection-code-handler.js +21 -11
  102. package/dist/lib/connection-code-handler.js.map +1 -1
  103. package/dist/lib/feed-handler.d.ts +2 -2
  104. package/dist/lib/feed-handler.d.ts.map +1 -1
  105. package/dist/lib/feed-handler.js +5 -9
  106. package/dist/lib/feed-handler.js.map +1 -1
  107. package/dist/lib/middleware/idempotency-store.d.ts +86 -0
  108. package/dist/lib/middleware/idempotency-store.d.ts.map +1 -0
  109. package/dist/lib/middleware/idempotency-store.js +109 -0
  110. package/dist/lib/middleware/idempotency-store.js.map +1 -0
  111. package/dist/lib/middleware/idempotency.d.ts +37 -0
  112. package/dist/lib/middleware/idempotency.d.ts.map +1 -0
  113. package/dist/lib/middleware/idempotency.js +358 -0
  114. package/dist/lib/middleware/idempotency.js.map +1 -0
  115. package/dist/lib/net/trusted-client-ip.d.ts +39 -0
  116. package/dist/lib/net/trusted-client-ip.d.ts.map +1 -0
  117. package/dist/lib/net/trusted-client-ip.js +100 -0
  118. package/dist/lib/net/trusted-client-ip.js.map +1 -0
  119. package/dist/lib/notification-handler.d.ts +5 -5
  120. package/dist/lib/notification-handler.d.ts.map +1 -1
  121. package/dist/lib/notification-handler.js +11 -9
  122. package/dist/lib/notification-handler.js.map +1 -1
  123. package/dist/lib/oauth/cognito-issuer.d.ts +34 -0
  124. package/dist/lib/oauth/cognito-issuer.d.ts.map +1 -0
  125. package/dist/lib/oauth/cognito-issuer.js +53 -0
  126. package/dist/lib/oauth/cognito-issuer.js.map +1 -0
  127. package/dist/lib/oauth/device-authorization.d.ts +145 -0
  128. package/dist/lib/oauth/device-authorization.d.ts.map +1 -0
  129. package/dist/lib/oauth/device-authorization.js +312 -0
  130. package/dist/lib/oauth/device-authorization.js.map +1 -0
  131. package/dist/lib/oauth/envelope-crypto.d.ts +101 -0
  132. package/dist/lib/oauth/envelope-crypto.d.ts.map +1 -0
  133. package/dist/lib/oauth/envelope-crypto.js +223 -0
  134. package/dist/lib/oauth/envelope-crypto.js.map +1 -0
  135. package/dist/lib/oauth/refresh-detection.d.ts +126 -0
  136. package/dist/lib/oauth/refresh-detection.d.ts.map +1 -0
  137. package/dist/lib/oauth/refresh-detection.js +248 -0
  138. package/dist/lib/oauth/refresh-detection.js.map +1 -0
  139. package/dist/lib/openapi/generator.d.ts +78 -0
  140. package/dist/lib/openapi/generator.d.ts.map +1 -0
  141. package/dist/lib/openapi/generator.js +201 -0
  142. package/dist/lib/openapi/generator.js.map +1 -0
  143. package/dist/lib/post-handler.d.ts +1 -1
  144. package/dist/lib/post-handler.d.ts.map +1 -1
  145. package/dist/lib/post-handler.js +4 -15
  146. package/dist/lib/post-handler.js.map +1 -1
  147. package/dist/lib/rate-limit.d.ts.map +1 -1
  148. package/dist/lib/rate-limit.js +11 -3
  149. package/dist/lib/rate-limit.js.map +1 -1
  150. package/dist/lib/routes/agent-authorize.d.ts +32 -0
  151. package/dist/lib/routes/agent-authorize.d.ts.map +1 -0
  152. package/dist/lib/routes/agent-authorize.js +479 -0
  153. package/dist/lib/routes/agent-authorize.js.map +1 -0
  154. package/dist/lib/routes/agent-sessions.d.ts +20 -0
  155. package/dist/lib/routes/agent-sessions.d.ts.map +1 -0
  156. package/dist/lib/routes/agent-sessions.js +124 -0
  157. package/dist/lib/routes/agent-sessions.js.map +1 -0
  158. package/dist/lib/routes/agent-surface.d.ts +37 -0
  159. package/dist/lib/routes/agent-surface.d.ts.map +1 -0
  160. package/dist/lib/routes/agent-surface.js +208 -0
  161. package/dist/lib/routes/agent-surface.js.map +1 -0
  162. package/dist/lib/routes/auth-discover.d.ts +18 -0
  163. package/dist/lib/routes/auth-discover.d.ts.map +1 -0
  164. package/dist/lib/routes/auth-discover.js +177 -0
  165. package/dist/lib/routes/auth-discover.js.map +1 -0
  166. package/dist/lib/routes/comments.d.ts.map +1 -1
  167. package/dist/lib/routes/comments.js +36 -7
  168. package/dist/lib/routes/comments.js.map +1 -1
  169. package/dist/lib/routes/connection-codes.d.ts.map +1 -1
  170. package/dist/lib/routes/connection-codes.js +21 -4
  171. package/dist/lib/routes/connection-codes.js.map +1 -1
  172. package/dist/lib/routes/content-discovery.d.ts.map +1 -1
  173. package/dist/lib/routes/content-discovery.js +18 -13
  174. package/dist/lib/routes/content-discovery.js.map +1 -1
  175. package/dist/lib/routes/dashboard.js +1 -1
  176. package/dist/lib/routes/dashboard.js.map +1 -1
  177. package/dist/lib/routes/employees.d.ts.map +1 -1
  178. package/dist/lib/routes/employees.js +57 -15
  179. package/dist/lib/routes/employees.js.map +1 -1
  180. package/dist/lib/routes/entities.d.ts.map +1 -1
  181. package/dist/lib/routes/entities.js +35 -19
  182. package/dist/lib/routes/entities.js.map +1 -1
  183. package/dist/lib/routes/errors.d.ts +34 -0
  184. package/dist/lib/routes/errors.d.ts.map +1 -0
  185. package/dist/lib/routes/errors.js +57 -0
  186. package/dist/lib/routes/errors.js.map +1 -0
  187. package/dist/lib/routes/feeds.d.ts.map +1 -1
  188. package/dist/lib/routes/feeds.js +12 -2
  189. package/dist/lib/routes/feeds.js.map +1 -1
  190. package/dist/lib/routes/index.d.ts.map +1 -1
  191. package/dist/lib/routes/index.js +50 -0
  192. package/dist/lib/routes/index.js.map +1 -1
  193. package/dist/lib/routes/mfa.d.ts.map +1 -1
  194. package/dist/lib/routes/mfa.js +1 -0
  195. package/dist/lib/routes/mfa.js.map +1 -1
  196. package/dist/lib/routes/notifications.d.ts.map +1 -1
  197. package/dist/lib/routes/notifications.js +21 -4
  198. package/dist/lib/routes/notifications.js.map +1 -1
  199. package/dist/lib/routes/oauth.d.ts +15 -0
  200. package/dist/lib/routes/oauth.d.ts.map +1 -0
  201. package/dist/lib/routes/oauth.js +139 -0
  202. package/dist/lib/routes/oauth.js.map +1 -0
  203. package/dist/lib/routes/posts.d.ts.map +1 -1
  204. package/dist/lib/routes/posts.js +30 -19
  205. package/dist/lib/routes/posts.js.map +1 -1
  206. package/dist/lib/routes/products.d.ts.map +1 -1
  207. package/dist/lib/routes/products.js +19 -22
  208. package/dist/lib/routes/products.js.map +1 -1
  209. package/dist/lib/routes/setup-status.d.ts +34 -0
  210. package/dist/lib/routes/setup-status.d.ts.map +1 -0
  211. package/dist/lib/routes/setup-status.js +87 -0
  212. package/dist/lib/routes/setup-status.js.map +1 -0
  213. package/dist/lib/routes/taxonomy-analytics.d.ts.map +1 -1
  214. package/dist/lib/routes/taxonomy-analytics.js +15 -14
  215. package/dist/lib/routes/taxonomy-analytics.js.map +1 -1
  216. package/dist/lib/routes/taxonomy.d.ts.map +1 -1
  217. package/dist/lib/routes/taxonomy.js +19 -16
  218. package/dist/lib/routes/taxonomy.js.map +1 -1
  219. package/dist/lib/routes/tenant-audit.d.ts +19 -0
  220. package/dist/lib/routes/tenant-audit.d.ts.map +1 -0
  221. package/dist/lib/routes/tenant-audit.js +244 -0
  222. package/dist/lib/routes/tenant-audit.js.map +1 -0
  223. package/dist/lib/routes/tenant-compliance.d.ts +21 -0
  224. package/dist/lib/routes/tenant-compliance.d.ts.map +1 -0
  225. package/dist/lib/routes/tenant-compliance.js +122 -0
  226. package/dist/lib/routes/tenant-compliance.js.map +1 -0
  227. package/dist/lib/routes/tenant-domains.d.ts +11 -0
  228. package/dist/lib/routes/tenant-domains.d.ts.map +1 -0
  229. package/dist/lib/routes/tenant-domains.js +95 -0
  230. package/dist/lib/routes/tenant-domains.js.map +1 -0
  231. package/dist/lib/routes/tenant-idp.d.ts +3 -0
  232. package/dist/lib/routes/tenant-idp.d.ts.map +1 -0
  233. package/dist/lib/routes/tenant-idp.js +89 -0
  234. package/dist/lib/routes/tenant-idp.js.map +1 -0
  235. package/dist/lib/routes/tenant-members.d.ts +13 -0
  236. package/dist/lib/routes/tenant-members.d.ts.map +1 -0
  237. package/dist/lib/routes/tenant-members.js +75 -0
  238. package/dist/lib/routes/tenant-members.js.map +1 -0
  239. package/dist/lib/routes/tenant-role-mappings.d.ts +11 -0
  240. package/dist/lib/routes/tenant-role-mappings.d.ts.map +1 -0
  241. package/dist/lib/routes/tenant-role-mappings.js +90 -0
  242. package/dist/lib/routes/tenant-role-mappings.js.map +1 -0
  243. package/dist/lib/routes/tenants.d.ts +13 -0
  244. package/dist/lib/routes/tenants.d.ts.map +1 -0
  245. package/dist/lib/routes/tenants.js +121 -0
  246. package/dist/lib/routes/tenants.js.map +1 -0
  247. package/dist/lib/routes/types.d.ts +9 -0
  248. package/dist/lib/routes/types.d.ts.map +1 -1
  249. package/dist/lib/schemas.d.ts +2 -2
  250. package/dist/lib/secrets/idp-secrets.d.ts +51 -0
  251. package/dist/lib/secrets/idp-secrets.d.ts.map +1 -0
  252. package/dist/lib/secrets/idp-secrets.js +111 -0
  253. package/dist/lib/secrets/idp-secrets.js.map +1 -0
  254. package/dist/lib/security-monitor.d.ts.map +1 -1
  255. package/dist/lib/security-monitor.js +6 -1
  256. package/dist/lib/security-monitor.js.map +1 -1
  257. package/dist/lib/session-manager.d.ts +1 -0
  258. package/dist/lib/session-manager.d.ts.map +1 -1
  259. package/dist/lib/session-manager.js.map +1 -1
  260. package/dist/lib/taxonomy-handler-factory.d.ts +4 -2
  261. package/dist/lib/taxonomy-handler-factory.d.ts.map +1 -1
  262. package/dist/lib/taxonomy-handler-factory.js +8 -7
  263. package/dist/lib/taxonomy-handler-factory.js.map +1 -1
  264. package/dist/lib/tenant/audit-emit.d.ts +18 -0
  265. package/dist/lib/tenant/audit-emit.d.ts.map +1 -0
  266. package/dist/lib/tenant/audit-emit.js +16 -0
  267. package/dist/lib/tenant/audit-emit.js.map +1 -0
  268. package/dist/lib/tenant/derive-domain.d.ts +19 -0
  269. package/dist/lib/tenant/derive-domain.d.ts.map +1 -0
  270. package/dist/lib/tenant/derive-domain.js +38 -0
  271. package/dist/lib/tenant/derive-domain.js.map +1 -0
  272. package/dist/lib/tenant/domain-handler.d.ts +42 -0
  273. package/dist/lib/tenant/domain-handler.d.ts.map +1 -0
  274. package/dist/lib/tenant/domain-handler.js +344 -0
  275. package/dist/lib/tenant/domain-handler.js.map +1 -0
  276. package/dist/lib/tenant/domain-validator.d.ts +28 -0
  277. package/dist/lib/tenant/domain-validator.d.ts.map +1 -0
  278. package/dist/lib/tenant/domain-validator.js +145 -0
  279. package/dist/lib/tenant/domain-validator.js.map +1 -0
  280. package/dist/lib/tenant/domain-verifier.d.ts +30 -0
  281. package/dist/lib/tenant/domain-verifier.d.ts.map +1 -0
  282. package/dist/lib/tenant/domain-verifier.js +53 -0
  283. package/dist/lib/tenant/domain-verifier.js.map +1 -0
  284. package/dist/lib/tenant/idp-handler.d.ts +29 -0
  285. package/dist/lib/tenant/idp-handler.d.ts.map +1 -0
  286. package/dist/lib/tenant/idp-handler.js +693 -0
  287. package/dist/lib/tenant/idp-handler.js.map +1 -0
  288. package/dist/lib/tenant/idp-name.d.ts +2 -0
  289. package/dist/lib/tenant/idp-name.d.ts.map +1 -0
  290. package/dist/lib/tenant/idp-name.js +20 -0
  291. package/dist/lib/tenant/idp-name.js.map +1 -0
  292. package/dist/lib/tenant/member-handler.d.ts +31 -0
  293. package/dist/lib/tenant/member-handler.d.ts.map +1 -0
  294. package/dist/lib/tenant/member-handler.js +343 -0
  295. package/dist/lib/tenant/member-handler.js.map +1 -0
  296. package/dist/lib/tenant/reserved-slugs.d.ts +37 -0
  297. package/dist/lib/tenant/reserved-slugs.d.ts.map +1 -0
  298. package/dist/lib/tenant/reserved-slugs.js +116 -0
  299. package/dist/lib/tenant/reserved-slugs.js.map +1 -0
  300. package/dist/lib/tenant/resolve-role.d.ts +39 -0
  301. package/dist/lib/tenant/resolve-role.d.ts.map +1 -0
  302. package/dist/lib/tenant/resolve-role.js +60 -0
  303. package/dist/lib/tenant/resolve-role.js.map +1 -0
  304. package/dist/lib/tenant/role-mapping-handler.d.ts +26 -0
  305. package/dist/lib/tenant/role-mapping-handler.d.ts.map +1 -0
  306. package/dist/lib/tenant/role-mapping-handler.js +260 -0
  307. package/dist/lib/tenant/role-mapping-handler.js.map +1 -0
  308. package/dist/lib/tenant/setup-status.d.ts +83 -0
  309. package/dist/lib/tenant/setup-status.d.ts.map +1 -0
  310. package/dist/lib/tenant/setup-status.js +201 -0
  311. package/dist/lib/tenant/setup-status.js.map +1 -0
  312. package/dist/lib/tenant/slug-validator.d.ts +31 -0
  313. package/dist/lib/tenant/slug-validator.d.ts.map +1 -0
  314. package/dist/lib/tenant/slug-validator.js +42 -0
  315. package/dist/lib/tenant/slug-validator.js.map +1 -0
  316. package/dist/lib/tenant/tenant-handler.d.ts +49 -0
  317. package/dist/lib/tenant/tenant-handler.d.ts.map +1 -0
  318. package/dist/lib/tenant/tenant-handler.js +377 -0
  319. package/dist/lib/tenant/tenant-handler.js.map +1 -0
  320. package/dist/lib/tenant/transfer-ownership.d.ts +39 -0
  321. package/dist/lib/tenant/transfer-ownership.d.ts.map +1 -0
  322. package/dist/lib/tenant/transfer-ownership.js +66 -0
  323. package/dist/lib/tenant/transfer-ownership.js.map +1 -0
  324. package/dist/lib/user/derive-handle.d.ts +29 -0
  325. package/dist/lib/user/derive-handle.d.ts.map +1 -0
  326. package/dist/lib/user/derive-handle.js +65 -0
  327. package/dist/lib/user/derive-handle.js.map +1 -0
  328. package/dist/lib/user-deprovisioning.d.ts +11 -1
  329. package/dist/lib/user-deprovisioning.d.ts.map +1 -1
  330. package/dist/lib/user-deprovisioning.js +46 -2
  331. package/dist/lib/user-deprovisioning.js.map +1 -1
  332. package/dist/lib/validation/feature-toggle-schemas.d.ts +10 -10
  333. package/package.json +6 -3
  334. package/prisma/migrations/20260502094501_add_tenancy_model/migration.sql +334 -0
  335. package/prisma/migrations/20260503000000_add_tenant_region/migration.sql +4 -0
  336. package/prisma/schema.prisma +324 -74
  337. package/src/lambda/nightly-cron.ts +4 -1
  338. package/src/lambda/post-confirmation.ts +405 -29
  339. package/src/lambda/pre-token-generation.ts +300 -59
@@ -1 +1 @@
1
- {"version":3,"file":"posts.js","sourceRoot":"","sources":["../../../src/lib/routes/posts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"posts.js","sourceRoot":"","sources":["../../../src/lib/routes/posts.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"products.d.ts","sourceRoot":"","sources":["../../../src/lib/routes/products.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgBH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAoBrC,eAAO,MAAM,qBAAqB,EAAE,KAAK,EA+QxC,CAAC"}
1
+ {"version":3,"file":"products.d.ts","sourceRoot":"","sources":["../../../src/lib/routes/products.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAeH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAkBrC,eAAO,MAAM,qBAAqB,EAAE,KAAK,EA8QxC,CAAC"}
@@ -7,34 +7,29 @@
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.productTaxonomyRoutes = void 0;
10
+ const auth_middleware_1 = require("../auth/auth-middleware");
10
11
  const cors_handler_1 = require("../cors-handler");
11
12
  const database_wrapper_helper_1 = require("../database-wrapper-helper");
12
13
  const logger_1 = require("../logger");
13
14
  const middleware_1 = require("../middleware");
14
15
  const rate_limit_1 = require("../rate-limit");
15
16
  const region_detection_1 = require("../region-detection");
16
- const request_context_1 = require("../request-context");
17
17
  const secret_resolver_1 = require("../secret-resolver");
18
18
  const security_headers_1 = require("../security-headers");
19
19
  const session_manager_1 = require("../session-manager");
20
20
  const taxonomy_handler_1 = require("../taxonomy-handler");
21
- const tenant_context_1 = require("../tenant-context");
22
21
  const validation_1 = require("../validation");
23
22
  /**
24
- * Get tenant ID from request context
23
+ * Resolve the caller's active tenant from the JWT.
25
24
  */
26
25
  async function getTenantId(request, env) {
27
- try {
28
- const ctx = await (0, request_context_1.createRequestContext)(request, env);
29
- const tenantCtx = await (0, tenant_context_1.getRequestContext)(request, ctx.session || null);
30
- if (!tenantCtx.tenant?.id) {
31
- return "trellis";
32
- }
33
- return tenantCtx.tenant.id;
34
- }
35
- catch (error) {
36
- return "trellis";
37
- }
26
+ const auth = await (0, auth_middleware_1.authMiddleware)(request, env);
27
+ if (!auth || !auth.activeTenantId)
28
+ return null;
29
+ return auth.activeTenantId;
30
+ }
31
+ function unauthorizedResponse() {
32
+ return new Response(JSON.stringify({ error: "Unauthorized" }), { status: 401, headers: { "content-type": "application/json" } });
38
33
  }
39
34
  exports.productTaxonomyRoutes = [
40
35
  // Add taxonomy tags to product
@@ -60,10 +55,10 @@ exports.productTaxonomyRoutes = [
60
55
  const productId = pathname
61
56
  .split("/products/")[1]
62
57
  .split("/taxonomy-tags")[0];
63
- // Get tenant ID
64
- const ctx = await (0, request_context_1.createRequestContext)(request, env);
65
- const tenantCtx = await (0, tenant_context_1.getRequestContext)(request, session);
66
- const tenantId = tenantCtx.tenant?.id || "trellis";
58
+ // Get tenant ID from authenticated JWT
59
+ const tenantId = await getTenantId(request, env);
60
+ if (!tenantId)
61
+ return unauthorizedResponse();
67
62
  // Get database and taxonomy handler
68
63
  const region = (0, region_detection_1.detectRegionSync)(request, env);
69
64
  const db = (0, database_wrapper_helper_1.getWrappedDatabase)(region, env, request);
@@ -136,10 +131,10 @@ exports.productTaxonomyRoutes = [
136
131
  const productId = pathname
137
132
  .split("/products/")[1]
138
133
  .split("/taxonomy-tags")[0];
139
- // Get tenant ID
140
- const ctx = await (0, request_context_1.createRequestContext)(request, env);
141
- const tenantCtx = await (0, tenant_context_1.getRequestContext)(request, session);
142
- const tenantId = tenantCtx.tenant?.id || "trellis";
134
+ // Get tenant ID from authenticated JWT
135
+ const tenantId = await getTenantId(request, env);
136
+ if (!tenantId)
137
+ return unauthorizedResponse();
143
138
  // Get database and taxonomy handler
144
139
  const region = (0, region_detection_1.detectRegionSync)(request, env);
145
140
  const db = (0, database_wrapper_helper_1.getWrappedDatabase)(region, env, request);
@@ -178,6 +173,8 @@ exports.productTaxonomyRoutes = [
178
173
  .split("/taxonomy-tags")[0];
179
174
  // Get tenant ID
180
175
  const tenantId = await getTenantId(request, env);
176
+ if (!tenantId)
177
+ return unauthorizedResponse();
181
178
  // Get database and taxonomy handler
182
179
  const region = (0, region_detection_1.detectRegionSync)(request, env);
183
180
  const db = (0, database_wrapper_helper_1.getWrappedDatabase)(region, env, request);
@@ -1 +1 @@
1
- {"version":3,"file":"products.js","sourceRoot":"","sources":["../../../src/lib/routes/products.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"products.js","sourceRoot":"","sources":["../../../src/lib/routes/products.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Setup-status route.
3
+ *
4
+ * GET /api/tenants/:id/setup-status
5
+ *
6
+ * Returns a machine-friendly tenant onboarding progress object.
7
+ * See apps/api/src/lib/tenant/setup-status.ts for the computed shape.
8
+ *
9
+ * Auth requirements:
10
+ * - Authenticated (401 if not)
11
+ * - Caller's activeTenantId must match the path :id (403 if cross-tenant)
12
+ * - Caller must hold IdpView capability (ADMIN / OWNER / SUPER_ADMIN)
13
+ *
14
+ * --- Existence-leak posture (G4 MEDIUM-4, by design) ---
15
+ *
16
+ * The path returns a 403 for "you are authenticated but your active
17
+ * tenant doesn't match the requested resource" and a 404 for "tenant
18
+ * does not exist" — distinct status codes for distinct conditions.
19
+ * That asymmetry intentionally lets a caller who already knows the
20
+ * target tenant id distinguish "I don't have access" from "this id is
21
+ * unused", which the federation onboarding flow needs (an admin
22
+ * scripting setup must be able to check whether a tenant they expect
23
+ * to exist actually exists). The threat model accepts this leak: tenant
24
+ * ids are only known to authenticated callers via tenant switching, and
25
+ * an existence probe leaks no PII.
26
+ *
27
+ * Data-side reads that lookup arbitrary cross-tenant resources should
28
+ * use `requireOwnTenant` (404 for both conditions) instead. Admin-side
29
+ * mutation paths use `requireActiveTenant` (this 403 path) per the
30
+ * pattern documented at the helper site.
31
+ */
32
+ import type { Route } from "./types";
33
+ export declare const setupStatusRoutes: Route[];
34
+ //# sourceMappingURL=setup-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-status.d.ts","sourceRoot":"","sources":["../../../src/lib/routes/setup-status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAQH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAIrC,eAAO,MAAM,iBAAiB,EAAE,KAAK,EA0DpC,CAAC"}
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ /**
3
+ * Setup-status route.
4
+ *
5
+ * GET /api/tenants/:id/setup-status
6
+ *
7
+ * Returns a machine-friendly tenant onboarding progress object.
8
+ * See apps/api/src/lib/tenant/setup-status.ts for the computed shape.
9
+ *
10
+ * Auth requirements:
11
+ * - Authenticated (401 if not)
12
+ * - Caller's activeTenantId must match the path :id (403 if cross-tenant)
13
+ * - Caller must hold IdpView capability (ADMIN / OWNER / SUPER_ADMIN)
14
+ *
15
+ * --- Existence-leak posture (G4 MEDIUM-4, by design) ---
16
+ *
17
+ * The path returns a 403 for "you are authenticated but your active
18
+ * tenant doesn't match the requested resource" and a 404 for "tenant
19
+ * does not exist" — distinct status codes for distinct conditions.
20
+ * That asymmetry intentionally lets a caller who already knows the
21
+ * target tenant id distinguish "I don't have access" from "this id is
22
+ * unused", which the federation onboarding flow needs (an admin
23
+ * scripting setup must be able to check whether a tenant they expect
24
+ * to exist actually exists). The threat model accepts this leak: tenant
25
+ * ids are only known to authenticated callers via tenant switching, and
26
+ * an existence probe leaks no PII.
27
+ *
28
+ * Data-side reads that lookup arbitrary cross-tenant resources should
29
+ * use `requireOwnTenant` (404 for both conditions) instead. Admin-side
30
+ * mutation paths use `requireActiveTenant` (this 403 path) per the
31
+ * pattern documented at the helper site.
32
+ */
33
+ Object.defineProperty(exports, "__esModule", { value: true });
34
+ exports.setupStatusRoutes = void 0;
35
+ const middleware_1 = require("../middleware");
36
+ const security_headers_1 = require("../security-headers");
37
+ const auth_middleware_1 = require("../auth/auth-middleware");
38
+ const require_1 = require("../auth/require");
39
+ const setup_status_1 = require("../tenant/setup-status");
40
+ const errors_1 = require("./errors");
41
+ const SETUP_STATUS_RE = /^\/api\/tenants\/([^/]+)\/setup-status$/;
42
+ exports.setupStatusRoutes = [
43
+ {
44
+ path: SETUP_STATUS_RE,
45
+ method: "GET",
46
+ handler: async (request, env, { pathname }) => {
47
+ const securityHeaders = new security_headers_1.SecurityHeaders(env);
48
+ const auth = await (0, auth_middleware_1.authMiddleware)(request, env);
49
+ if (!auth)
50
+ return (0, errors_1.unauthorizedError)(securityHeaders);
51
+ const tenantId = pathname.match(SETUP_STATUS_RE)?.[1] ?? "";
52
+ // Cross-tenant isolation: 403 when activeTenantId !== path tenantId.
53
+ const tenantDenied = (0, auth_middleware_1.requireActiveTenant)(auth, tenantId);
54
+ if (tenantDenied) {
55
+ return securityHeaders.addSecurityHeaders((0, errors_1.structuredError)(403, {
56
+ error: "FORBIDDEN",
57
+ message: "Active tenant does not match the requested resource.",
58
+ remediation: "Switch to the correct tenant using POST /api/auth/switch-tenant before retrying.",
59
+ }));
60
+ }
61
+ // Capability gate — requires IdpView (ADMIN / OWNER).
62
+ const capDenied = (0, require_1.requireCapability)(auth, require_1.Capability.IdpView);
63
+ if (capDenied) {
64
+ return securityHeaders.addSecurityHeaders((0, errors_1.structuredError)(403, {
65
+ error: "FORBIDDEN",
66
+ message: "You do not have permission to view setup status for this tenant.",
67
+ remediation: "Request ADMIN or OWNER role from your tenant administrator.",
68
+ }));
69
+ }
70
+ const status = await (0, setup_status_1.loadSetupStatus)(tenantId, env);
71
+ if (!status) {
72
+ return securityHeaders.addSecurityHeaders((0, errors_1.structuredError)(404, {
73
+ error: "NOT_FOUND",
74
+ message: "Tenant not found.",
75
+ remediation: "Verify the tenant ID in the URL.",
76
+ }));
77
+ }
78
+ return securityHeaders.addSecurityHeaders(new Response(JSON.stringify(status), {
79
+ status: 200,
80
+ headers: { "content-type": "application/json" },
81
+ }));
82
+ },
83
+ middleware: [(0, middleware_1.corsMiddleware)()],
84
+ description: "Get tenant setup-status (machine-friendly onboarding progress)",
85
+ },
86
+ ];
87
+ //# sourceMappingURL=setup-status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-status.js","sourceRoot":"","sources":["../../../src/lib/routes/setup-status.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;;;AAEH,8CAA+C;AAC/C,0DAAsD;AACtD,6DAA8E;AAC9E,6CAAgE;AAChE,yDAAyD;AACzD,qCAA8D;AAG9D,MAAM,eAAe,GAAG,yCAAyC,CAAC;AAErD,QAAA,iBAAiB,GAAY;IACxC;QACE,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;YAC5C,MAAM,eAAe,GAAG,IAAI,kCAAe,CAAC,GAAG,CAAC,CAAC;YAEjD,MAAM,IAAI,GAAG,MAAM,IAAA,gCAAc,EAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAChD,IAAI,CAAC,IAAI;gBAAE,OAAO,IAAA,0BAAiB,EAAC,eAAe,CAAC,CAAC;YAErD,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAE5D,qEAAqE;YACrE,MAAM,YAAY,GAAG,IAAA,qCAAmB,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACzD,IAAI,YAAY,EAAE,CAAC;gBACjB,OAAO,eAAe,CAAC,kBAAkB,CACvC,IAAA,wBAAe,EAAC,GAAG,EAAE;oBACnB,KAAK,EAAE,WAAW;oBAClB,OAAO,EAAE,sDAAsD;oBAC/D,WAAW,EAAE,kFAAkF;iBAChG,CAAC,CACH,CAAC;YACJ,CAAC;YAED,sDAAsD;YACtD,MAAM,SAAS,GAAG,IAAA,2BAAiB,EAAC,IAAI,EAAE,oBAAU,CAAC,OAAO,CAAC,CAAC;YAC9D,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,eAAe,CAAC,kBAAkB,CACvC,IAAA,wBAAe,EAAC,GAAG,EAAE;oBACnB,KAAK,EAAE,WAAW;oBAClB,OAAO,EAAE,kEAAkE;oBAC3E,WAAW,EAAE,6DAA6D;iBAC3E,CAAC,CACH,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAA,8BAAe,EAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAEpD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,eAAe,CAAC,kBAAkB,CACvC,IAAA,wBAAe,EAAC,GAAG,EAAE;oBACnB,KAAK,EAAE,WAAW;oBAClB,OAAO,EAAE,mBAAmB;oBAC5B,WAAW,EAAE,kCAAkC;iBAChD,CAAC,CACH,CAAC;YACJ,CAAC;YAED,OAAO,eAAe,CAAC,kBAAkB,CACvC,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;gBACnC,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;aAChD,CAAC,CACH,CAAC;QACJ,CAAC;QACD,UAAU,EAAE,CAAC,IAAA,2BAAc,GAAE,CAAC;QAC9B,WAAW,EAAE,gEAAgE;KAC9E;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"taxonomy-analytics.d.ts","sourceRoot":"","sources":["../../../src/lib/routes/taxonomy-analytics.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAaH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAoBrC,eAAO,MAAM,uBAAuB,EAAE,KAAK,EA8J1C,CAAC"}
1
+ {"version":3,"file":"taxonomy-analytics.d.ts","sourceRoot":"","sources":["../../../src/lib/routes/taxonomy-analytics.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAYH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAkBrC,eAAO,MAAM,uBAAuB,EAAE,KAAK,EAiK1C,CAAC"}
@@ -6,31 +6,26 @@
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
8
  exports.taxonomyAnalyticsRoutes = void 0;
9
+ const auth_middleware_1 = require("../auth/auth-middleware");
9
10
  const database_wrapper_helper_1 = require("../database-wrapper-helper");
10
11
  const logger_1 = require("../logger");
11
12
  const middleware_1 = require("../middleware");
12
13
  const region_detection_1 = require("../region-detection");
13
- const request_context_1 = require("../request-context");
14
14
  const secret_resolver_1 = require("../secret-resolver");
15
15
  const security_headers_1 = require("../security-headers");
16
16
  const session_manager_1 = require("../session-manager");
17
17
  const taxonomy_metrics_1 = require("../taxonomy-metrics");
18
- const tenant_context_1 = require("../tenant-context");
19
18
  /**
20
- * Get tenant ID from request context
19
+ * Resolve the caller's active tenant from the JWT.
21
20
  */
22
21
  async function getTenantId(request, env) {
23
- try {
24
- const ctx = await (0, request_context_1.createRequestContext)(request, env);
25
- const tenantCtx = await (0, tenant_context_1.getRequestContext)(request, ctx.session || null);
26
- if (!tenantCtx.tenant?.id) {
27
- return "trellis";
28
- }
29
- return tenantCtx.tenant.id;
30
- }
31
- catch (error) {
32
- return "trellis";
33
- }
22
+ const auth = await (0, auth_middleware_1.authMiddleware)(request, env);
23
+ if (!auth || !auth.activeTenantId)
24
+ return null;
25
+ return auth.activeTenantId;
26
+ }
27
+ function unauthorizedResponse() {
28
+ return new Response(JSON.stringify({ error: "Unauthorized" }), { status: 401, headers: { "content-type": "application/json" } });
34
29
  }
35
30
  exports.taxonomyAnalyticsRoutes = [
36
31
  // Get taxonomy usage metrics
@@ -40,6 +35,8 @@ exports.taxonomyAnalyticsRoutes = [
40
35
  handler: async (request, env) => {
41
36
  try {
42
37
  const tenantId = await getTenantId(request, env);
38
+ if (!tenantId)
39
+ return unauthorizedResponse();
43
40
  const region = (0, region_detection_1.detectRegionSync)(request, env);
44
41
  const wrappedDb = (0, database_wrapper_helper_1.getWrappedDatabase)(region, env, request);
45
42
  const metrics = new taxonomy_metrics_1.TaxonomyMetrics(wrappedDb);
@@ -80,6 +77,8 @@ exports.taxonomyAnalyticsRoutes = [
80
77
  handler: async (request, env) => {
81
78
  try {
82
79
  const tenantId = await getTenantId(request, env);
80
+ if (!tenantId)
81
+ return unauthorizedResponse();
83
82
  const sessionManager = new session_manager_1.SessionManager();
84
83
  const securityHeaders = new security_headers_1.SecurityHeaders(env);
85
84
  const sessionSecret = secret_resolver_1.Secrets.getSessionSecret(env);
@@ -120,6 +119,8 @@ exports.taxonomyAnalyticsRoutes = [
120
119
  handler: async (request, env) => {
121
120
  try {
122
121
  const tenantId = await getTenantId(request, env);
122
+ if (!tenantId)
123
+ return unauthorizedResponse();
123
124
  const region = (0, region_detection_1.detectRegionSync)(request, env);
124
125
  const wrappedDb = (0, database_wrapper_helper_1.getWrappedDatabase)(region, env, request);
125
126
  // Parse query parameters
@@ -1 +1 @@
1
- {"version":3,"file":"taxonomy-analytics.js","sourceRoot":"","sources":["../../../src/lib/routes/taxonomy-analytics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taxonomy-analytics.js","sourceRoot":"","sources":["../../../src/lib/routes/taxonomy-analytics.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taxonomy.d.ts","sourceRoot":"","sources":["../../../src/lib/routes/taxonomy.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAcH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAsBrC;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,EAibjC,CAAC"}
1
+ {"version":3,"file":"taxonomy.d.ts","sourceRoot":"","sources":["../../../src/lib/routes/taxonomy.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAaH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAoBrC;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,EAqbjC,CAAC"}
@@ -11,33 +11,28 @@
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.taxonomyRoutes = void 0;
13
13
  const zod_1 = require("zod");
14
+ const auth_middleware_1 = require("../auth/auth-middleware");
14
15
  const database_wrapper_helper_1 = require("../database-wrapper-helper");
15
16
  const input_sanitizer_1 = require("../input-sanitizer");
16
17
  const logger_1 = require("../logger");
17
18
  const middleware_1 = require("../middleware");
18
19
  const rate_limit_1 = require("../rate-limit");
19
20
  const region_detection_1 = require("../region-detection");
20
- const request_context_1 = require("../request-context");
21
21
  const taxonomy_handler_1 = require("../taxonomy-handler");
22
22
  const taxonomy_search_metrics_1 = require("../taxonomy-search-metrics");
23
- const tenant_context_1 = require("../tenant-context");
24
23
  /**
25
- * Get tenant ID from request context
24
+ * Resolve the caller's active tenant from the JWT. Returns null if the
25
+ * request is not authenticated or no tenant claim is present; the caller
26
+ * should respond 401.
26
27
  */
27
28
  async function getTenantId(request, env) {
28
- try {
29
- const ctx = await (0, request_context_1.createRequestContext)(request, env);
30
- const tenantCtx = await (0, tenant_context_1.getRequestContext)(request, ctx.session || null);
31
- if (!tenantCtx.tenant?.id) {
32
- // For MVP, default to 'trellis' tenant
33
- return "trellis";
34
- }
35
- return tenantCtx.tenant.id;
36
- }
37
- catch (error) {
38
- // Fallback to default tenant for MVP
39
- return "trellis";
40
- }
29
+ const auth = await (0, auth_middleware_1.authMiddleware)(request, env);
30
+ if (!auth || !auth.activeTenantId)
31
+ return null;
32
+ return auth.activeTenantId;
33
+ }
34
+ function unauthorizedResponse() {
35
+ return new Response(JSON.stringify({ error: "Unauthorized" }), { status: 401, headers: { "content-type": "application/json" } });
41
36
  }
42
37
  /**
43
38
  * Taxonomy routes
@@ -50,6 +45,8 @@ exports.taxonomyRoutes = [
50
45
  handler: async (request, env) => {
51
46
  try {
52
47
  const tenantId = await getTenantId(request, env);
48
+ if (!tenantId)
49
+ return unauthorizedResponse();
53
50
  const region = (0, region_detection_1.detectRegionSync)(request, env);
54
51
  const db = (0, database_wrapper_helper_1.getWrappedDatabase)(region, env, request);
55
52
  const handler = new taxonomy_handler_1.TaxonomyHandler(db, tenantId, env.TAXONOMY_CACHE_KV);
@@ -82,6 +79,8 @@ exports.taxonomyRoutes = [
82
79
  handler: async (request, env, params) => {
83
80
  try {
84
81
  const tenantId = await getTenantId(request, env);
82
+ if (!tenantId)
83
+ return unauthorizedResponse();
85
84
  const region = (0, region_detection_1.detectRegionSync)(request, env);
86
85
  const db = (0, database_wrapper_helper_1.getWrappedDatabase)(region, env, request);
87
86
  const handler = new taxonomy_handler_1.TaxonomyHandler(db, tenantId, env.TAXONOMY_CACHE_KV);
@@ -139,6 +138,8 @@ exports.taxonomyRoutes = [
139
138
  let searchMetrics = null;
140
139
  try {
141
140
  const tenantId = await getTenantId(request, env);
141
+ if (!tenantId)
142
+ return unauthorizedResponse();
142
143
  const region = (0, region_detection_1.detectRegionSync)(request, env);
143
144
  const db = (0, database_wrapper_helper_1.getWrappedDatabase)(region, env, request);
144
145
  const handler = new taxonomy_handler_1.TaxonomyHandler(db, tenantId, env.TAXONOMY_CACHE_KV);
@@ -323,6 +324,8 @@ exports.taxonomyRoutes = [
323
324
  handler: async (request, env, params) => {
324
325
  try {
325
326
  const tenantId = await getTenantId(request, env);
327
+ if (!tenantId)
328
+ return unauthorizedResponse();
326
329
  const region = (0, region_detection_1.detectRegionSync)(request, env);
327
330
  const db = (0, database_wrapper_helper_1.getWrappedDatabase)(region, env, request);
328
331
  const handler = new taxonomy_handler_1.TaxonomyHandler(db, tenantId, env.TAXONOMY_CACHE_KV);