exisjs 0.6.1 → 0.7.1

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 (564) hide show
  1. package/README.md +9 -3
  2. package/dist/cli/commands/build.d.ts.map +1 -1
  3. package/dist/cli/commands/build.js +2 -8
  4. package/dist/cli/commands/build.js.map +1 -1
  5. package/dist/cli/commands/dev.d.ts.map +1 -1
  6. package/dist/cli/commands/dev.js +33 -44
  7. package/dist/cli/commands/dev.js.map +1 -1
  8. package/dist/cli/commands/exports.d.ts.map +1 -1
  9. package/dist/cli/commands/exports.js +5 -32
  10. package/dist/cli/commands/exports.js.map +1 -1
  11. package/dist/cli/commands/generate.d.ts +2 -13
  12. package/dist/cli/commands/generate.d.ts.map +1 -1
  13. package/dist/cli/commands/generate.js +27 -60
  14. package/dist/cli/commands/generate.js.map +1 -1
  15. package/dist/cli/commands/init.d.ts.map +1 -1
  16. package/dist/cli/commands/init.js +4 -4
  17. package/dist/cli/commands/init.js.map +1 -1
  18. package/dist/cli/commands/start.d.ts.map +1 -1
  19. package/dist/cli/commands/start.js +2 -6
  20. package/dist/cli/commands/start.js.map +1 -1
  21. package/dist/cli/index.js +11 -23
  22. package/dist/cli/index.js.map +1 -1
  23. package/dist/cli/routes.d.ts.map +1 -1
  24. package/dist/cli/routes.js +20 -8
  25. package/dist/cli/routes.js.map +1 -1
  26. package/dist/config/config.d.ts +2 -1
  27. package/dist/config/config.d.ts.map +1 -1
  28. package/dist/config/config.js +7 -5
  29. package/dist/config/config.js.map +1 -1
  30. package/dist/config/env.d.ts.map +1 -1
  31. package/dist/config/env.js +3 -2
  32. package/dist/config/env.js.map +1 -1
  33. package/dist/config/types.d.ts +7 -2
  34. package/dist/config/types.d.ts.map +1 -1
  35. package/dist/decorators/constants.d.ts +9 -2
  36. package/dist/decorators/constants.d.ts.map +1 -1
  37. package/dist/decorators/constants.js +3 -2
  38. package/dist/decorators/constants.js.map +1 -1
  39. package/dist/decorators/core/metadata.d.ts +31 -0
  40. package/dist/decorators/core/metadata.d.ts.map +1 -1
  41. package/dist/decorators/core/metadata.js +110 -1
  42. package/dist/decorators/core/metadata.js.map +1 -1
  43. package/dist/decorators/core.d.ts +19 -4
  44. package/dist/decorators/core.d.ts.map +1 -1
  45. package/dist/decorators/core.js +29 -4
  46. package/dist/decorators/core.js.map +1 -1
  47. package/dist/decorators/middleware.d.ts +17 -17
  48. package/dist/decorators/middleware.d.ts.map +1 -1
  49. package/dist/decorators/middleware.js +111 -208
  50. package/dist/decorators/middleware.js.map +1 -1
  51. package/dist/decorators/params.d.ts +54 -12
  52. package/dist/decorators/params.d.ts.map +1 -1
  53. package/dist/decorators/params.js +40 -20
  54. package/dist/decorators/params.js.map +1 -1
  55. package/dist/decorators/routing.d.ts +0 -2
  56. package/dist/decorators/routing.d.ts.map +1 -1
  57. package/dist/decorators/routing.js +3 -4
  58. package/dist/decorators/routing.js.map +1 -1
  59. package/dist/di/container.d.ts +5 -1
  60. package/dist/di/container.d.ts.map +1 -1
  61. package/dist/di/container.js +56 -8
  62. package/dist/di/container.js.map +1 -1
  63. package/dist/di/decorators.d.ts +30 -0
  64. package/dist/di/decorators.d.ts.map +1 -0
  65. package/dist/di/decorators.js +59 -0
  66. package/dist/di/decorators.js.map +1 -0
  67. package/dist/di/index.d.ts +1 -0
  68. package/dist/di/index.d.ts.map +1 -1
  69. package/dist/di/index.js +4 -1
  70. package/dist/di/index.js.map +1 -1
  71. package/dist/docs/ARCHITECTURE.md +46 -285
  72. package/dist/docs/BENCHMARKS.md +5 -5
  73. package/dist/docs/README.md +8 -11
  74. package/dist/docs/content/boundaries.mdx +151 -0
  75. package/dist/docs/content/cli/commands.mdx +66 -104
  76. package/dist/docs/content/cli/overview.mdx +37 -47
  77. package/dist/docs/content/cli/usage.mdx +29 -15
  78. package/dist/docs/content/decorators.mdx +142 -81
  79. package/dist/docs/content/installation.mdx +20 -1
  80. package/dist/docs/content/middleware.mdx +65 -291
  81. package/dist/docs/content/modules.mdx +22 -1
  82. package/dist/docs/content/providers.mdx +33 -1
  83. package/dist/docs/content/security.mdx +44 -246
  84. package/dist/docs/content/structure.mdx +227 -100
  85. package/dist/docs/content/validation.mdx +0 -17
  86. package/dist/docs/reference/decorators.mdx +34 -216
  87. package/dist/docs/reference/di.mdx +35 -11
  88. package/dist/docs/reference/logger.mdx +100 -0
  89. package/dist/docs/reference/middleware.mdx +41 -217
  90. package/dist/docs/reference/router.mdx +9 -9
  91. package/dist/docs/reference/validator.mdx +2 -5
  92. package/dist/error/errors.d.ts.map +1 -1
  93. package/dist/error/errors.js +19 -5
  94. package/dist/error/errors.js.map +1 -1
  95. package/dist/index.d.ts +0 -1
  96. package/dist/index.d.ts.map +1 -1
  97. package/dist/index.js +1 -4
  98. package/dist/index.js.map +1 -1
  99. package/dist/lib/start-server.js +10 -0
  100. package/dist/lib/start-server.js.map +1 -1
  101. package/dist/logger/index.d.ts +81 -0
  102. package/dist/logger/index.d.ts.map +1 -0
  103. package/dist/logger/index.js +142 -0
  104. package/dist/logger/index.js.map +1 -0
  105. package/dist/middleware/dedupe.d.ts +1 -1
  106. package/dist/middleware/dedupe.js +1 -1
  107. package/dist/middleware/middleware.d.ts +3 -5
  108. package/dist/middleware/middleware.d.ts.map +1 -1
  109. package/dist/middleware/middleware.js +2 -6
  110. package/dist/middleware/middleware.js.map +1 -1
  111. package/dist/middleware/rate-limit.d.ts +0 -2
  112. package/dist/middleware/rate-limit.d.ts.map +1 -1
  113. package/dist/middleware/rate-limit.js +2 -14
  114. package/dist/middleware/rate-limit.js.map +1 -1
  115. package/dist/module/index.d.ts +2 -0
  116. package/dist/module/index.d.ts.map +1 -1
  117. package/dist/module/index.js +3 -1
  118. package/dist/module/index.js.map +1 -1
  119. package/dist/plugin/manager.d.ts +1 -1
  120. package/dist/plugin/manager.d.ts.map +1 -1
  121. package/dist/plugin/manager.js +47 -0
  122. package/dist/plugin/manager.js.map +1 -1
  123. package/dist/router/{gateway.d.ts → boundary.d.ts} +21 -13
  124. package/dist/router/boundary.d.ts.map +1 -0
  125. package/dist/router/boundary.js +11 -0
  126. package/dist/router/boundary.js.map +1 -0
  127. package/dist/router/controller-registrar.d.ts.map +1 -1
  128. package/dist/router/controller-registrar.js +33 -6
  129. package/dist/router/controller-registrar.js.map +1 -1
  130. package/dist/router/index.d.ts +3 -6
  131. package/dist/router/index.d.ts.map +1 -1
  132. package/dist/router/index.js +3 -7
  133. package/dist/router/index.js.map +1 -1
  134. package/dist/router/route-builder.d.ts +0 -28
  135. package/dist/router/route-builder.d.ts.map +1 -1
  136. package/dist/router/route-builder.js +2 -5
  137. package/dist/router/route-builder.js.map +1 -1
  138. package/dist/router/route-scanner.d.ts +1 -2
  139. package/dist/router/route-scanner.d.ts.map +1 -1
  140. package/dist/router/route-scanner.js +225 -203
  141. package/dist/router/route-scanner.js.map +1 -1
  142. package/dist/router/router.d.ts +4 -6
  143. package/dist/router/router.d.ts.map +1 -1
  144. package/dist/router/router.js +36 -72
  145. package/dist/router/router.js.map +1 -1
  146. package/dist/router/types.d.ts +2 -6
  147. package/dist/router/types.d.ts.map +1 -1
  148. package/dist/server/{bun-adapter.d.ts → adapters/bun-adapter.d.ts} +1 -1
  149. package/dist/server/adapters/bun-adapter.d.ts.map +1 -0
  150. package/dist/server/{bun-adapter.js → adapters/bun-adapter.js} +2 -24
  151. package/dist/server/adapters/bun-adapter.js.map +1 -0
  152. package/dist/server/{uws-adapter.d.ts → adapters/uws-adapter.d.ts} +1 -1
  153. package/dist/server/adapters/uws-adapter.d.ts.map +1 -0
  154. package/dist/server/{uws-adapter.js → adapters/uws-adapter.js} +1 -28
  155. package/dist/server/adapters/uws-adapter.js.map +1 -0
  156. package/dist/server/app.d.ts +10 -31
  157. package/dist/server/app.d.ts.map +1 -1
  158. package/dist/server/app.js +20 -135
  159. package/dist/server/app.js.map +1 -1
  160. package/dist/server/bootstrapper.d.ts +4 -15
  161. package/dist/server/bootstrapper.d.ts.map +1 -1
  162. package/dist/server/bootstrapper.js +30 -229
  163. package/dist/server/bootstrapper.js.map +1 -1
  164. package/dist/server/define.d.ts +2 -2
  165. package/dist/server/define.d.ts.map +1 -1
  166. package/dist/server/define.js +3 -3
  167. package/dist/server/define.js.map +1 -1
  168. package/dist/server/engines/bun-engine.d.ts +16 -0
  169. package/dist/server/engines/bun-engine.d.ts.map +1 -0
  170. package/dist/server/engines/bun-engine.js +41 -0
  171. package/dist/server/engines/bun-engine.js.map +1 -0
  172. package/dist/server/engines/engine.d.ts +16 -0
  173. package/dist/server/engines/engine.d.ts.map +1 -0
  174. package/dist/{queue/types.js → server/engines/engine.js} +1 -1
  175. package/dist/server/engines/engine.js.map +1 -0
  176. package/dist/server/engines/node-engine.d.ts +22 -0
  177. package/dist/server/engines/node-engine.d.ts.map +1 -0
  178. package/dist/server/engines/node-engine.js +130 -0
  179. package/dist/server/engines/node-engine.js.map +1 -0
  180. package/dist/server/engines/uws-engine.d.ts +16 -0
  181. package/dist/server/engines/uws-engine.d.ts.map +1 -0
  182. package/dist/server/engines/uws-engine.js +48 -0
  183. package/dist/server/engines/uws-engine.js.map +1 -0
  184. package/dist/server/request-handler.d.ts +0 -1
  185. package/dist/server/request-handler.d.ts.map +1 -1
  186. package/dist/server/request-handler.js +74 -48
  187. package/dist/server/request-handler.js.map +1 -1
  188. package/dist/server/request.d.ts +0 -8
  189. package/dist/server/request.d.ts.map +1 -1
  190. package/dist/server/request.js +0 -16
  191. package/dist/server/request.js.map +1 -1
  192. package/dist/server/response.d.ts.map +1 -1
  193. package/dist/server/response.js +2 -1
  194. package/dist/server/response.js.map +1 -1
  195. package/dist/utils/logger.d.ts.map +1 -1
  196. package/dist/utils/logger.js +0 -1
  197. package/dist/utils/logger.js.map +1 -1
  198. package/dist/utils/time.d.ts +6 -0
  199. package/dist/utils/time.d.ts.map +1 -0
  200. package/dist/utils/time.js +15 -0
  201. package/dist/utils/time.js.map +1 -0
  202. package/dist/validator/index.d.ts +1 -7
  203. package/dist/validator/index.d.ts.map +1 -1
  204. package/dist/validator/index.js +1 -5
  205. package/dist/validator/index.js.map +1 -1
  206. package/dist/validator/tex-types.d.ts +15 -2
  207. package/dist/validator/tex-types.d.ts.map +1 -1
  208. package/dist/validator/tex-types.js +8 -0
  209. package/dist/validator/tex-types.js.map +1 -1
  210. package/dist/validator/tex.d.ts.map +1 -1
  211. package/dist/validator/tex.js +21 -2
  212. package/dist/validator/tex.js.map +1 -1
  213. package/package.json +9 -151
  214. package/dist/adapters/aws-lambda.d.ts +0 -21
  215. package/dist/adapters/aws-lambda.d.ts.map +0 -1
  216. package/dist/adapters/aws-lambda.js +0 -125
  217. package/dist/adapters/aws-lambda.js.map +0 -1
  218. package/dist/adapters/bun.d.ts +0 -9
  219. package/dist/adapters/bun.d.ts.map +0 -1
  220. package/dist/adapters/bun.js +0 -23
  221. package/dist/adapters/bun.js.map +0 -1
  222. package/dist/adapters/cloudflare.d.ts +0 -10
  223. package/dist/adapters/cloudflare.d.ts.map +0 -1
  224. package/dist/adapters/cloudflare.js +0 -22
  225. package/dist/adapters/cloudflare.js.map +0 -1
  226. package/dist/adapters/deno.d.ts +0 -7
  227. package/dist/adapters/deno.d.ts.map +0 -1
  228. package/dist/adapters/deno.js +0 -21
  229. package/dist/adapters/deno.js.map +0 -1
  230. package/dist/adapters/fastly.d.ts +0 -6
  231. package/dist/adapters/fastly.d.ts.map +0 -1
  232. package/dist/adapters/fastly.js +0 -20
  233. package/dist/adapters/fastly.js.map +0 -1
  234. package/dist/adapters/fetch.d.ts +0 -30
  235. package/dist/adapters/fetch.d.ts.map +0 -1
  236. package/dist/adapters/fetch.js +0 -119
  237. package/dist/adapters/fetch.js.map +0 -1
  238. package/dist/adapters/index.d.ts +0 -9
  239. package/dist/adapters/index.d.ts.map +0 -1
  240. package/dist/adapters/index.js +0 -28
  241. package/dist/adapters/index.js.map +0 -1
  242. package/dist/adapters/netlify.d.ts +0 -8
  243. package/dist/adapters/netlify.d.ts.map +0 -1
  244. package/dist/adapters/netlify.js +0 -20
  245. package/dist/adapters/netlify.js.map +0 -1
  246. package/dist/adapters/vercel.d.ts +0 -17
  247. package/dist/adapters/vercel.d.ts.map +0 -1
  248. package/dist/adapters/vercel.js +0 -23
  249. package/dist/adapters/vercel.js.map +0 -1
  250. package/dist/auth/index.d.ts +0 -8
  251. package/dist/auth/index.d.ts.map +0 -1
  252. package/dist/auth/index.js +0 -49
  253. package/dist/auth/index.js.map +0 -1
  254. package/dist/auth/jwt.d.ts +0 -20
  255. package/dist/auth/jwt.d.ts.map +0 -1
  256. package/dist/auth/jwt.js +0 -59
  257. package/dist/auth/jwt.js.map +0 -1
  258. package/dist/auth/oauth/core.d.ts +0 -96
  259. package/dist/auth/oauth/core.d.ts.map +0 -1
  260. package/dist/auth/oauth/core.js +0 -203
  261. package/dist/auth/oauth/core.js.map +0 -1
  262. package/dist/auth/oauth/index.d.ts +0 -45
  263. package/dist/auth/oauth/index.d.ts.map +0 -1
  264. package/dist/auth/oauth/index.js +0 -64
  265. package/dist/auth/oauth/index.js.map +0 -1
  266. package/dist/auth/oauth/middleware.d.ts +0 -63
  267. package/dist/auth/oauth/middleware.d.ts.map +0 -1
  268. package/dist/auth/oauth/middleware.js +0 -164
  269. package/dist/auth/oauth/middleware.js.map +0 -1
  270. package/dist/auth/oauth/providers/custom.d.ts +0 -41
  271. package/dist/auth/oauth/providers/custom.d.ts.map +0 -1
  272. package/dist/auth/oauth/providers/custom.js +0 -204
  273. package/dist/auth/oauth/providers/custom.js.map +0 -1
  274. package/dist/auth/oauth/providers/discord.d.ts +0 -23
  275. package/dist/auth/oauth/providers/discord.d.ts.map +0 -1
  276. package/dist/auth/oauth/providers/discord.js +0 -130
  277. package/dist/auth/oauth/providers/discord.js.map +0 -1
  278. package/dist/auth/oauth/providers/facebook.d.ts +0 -28
  279. package/dist/auth/oauth/providers/facebook.d.ts.map +0 -1
  280. package/dist/auth/oauth/providers/facebook.js +0 -124
  281. package/dist/auth/oauth/providers/facebook.js.map +0 -1
  282. package/dist/auth/oauth/providers/github.d.ts +0 -25
  283. package/dist/auth/oauth/providers/github.d.ts.map +0 -1
  284. package/dist/auth/oauth/providers/github.js +0 -132
  285. package/dist/auth/oauth/providers/github.js.map +0 -1
  286. package/dist/auth/oauth/providers/google.d.ts +0 -23
  287. package/dist/auth/oauth/providers/google.d.ts.map +0 -1
  288. package/dist/auth/oauth/providers/google.js +0 -134
  289. package/dist/auth/oauth/providers/google.js.map +0 -1
  290. package/dist/auth/oauth/providers/microsoft.d.ts +0 -28
  291. package/dist/auth/oauth/providers/microsoft.d.ts.map +0 -1
  292. package/dist/auth/oauth/providers/microsoft.js +0 -136
  293. package/dist/auth/oauth/providers/microsoft.js.map +0 -1
  294. package/dist/auth/oauth/types.d.ts +0 -158
  295. package/dist/auth/oauth/types.d.ts.map +0 -1
  296. package/dist/auth/oauth/types.js +0 -4
  297. package/dist/auth/oauth/types.js.map +0 -1
  298. package/dist/auth/password.d.ts +0 -25
  299. package/dist/auth/password.d.ts.map +0 -1
  300. package/dist/auth/password.js +0 -93
  301. package/dist/auth/password.js.map +0 -1
  302. package/dist/auth/rbac.d.ts +0 -10
  303. package/dist/auth/rbac.d.ts.map +0 -1
  304. package/dist/auth/rbac.js +0 -34
  305. package/dist/auth/rbac.js.map +0 -1
  306. package/dist/auth/session.d.ts +0 -26
  307. package/dist/auth/session.d.ts.map +0 -1
  308. package/dist/auth/session.js +0 -134
  309. package/dist/auth/session.js.map +0 -1
  310. package/dist/cache/index.d.ts +0 -4
  311. package/dist/cache/index.d.ts.map +0 -1
  312. package/dist/cache/index.js +0 -25
  313. package/dist/cache/index.js.map +0 -1
  314. package/dist/cache/store.d.ts +0 -58
  315. package/dist/cache/store.d.ts.map +0 -1
  316. package/dist/cache/store.js +0 -298
  317. package/dist/cache/store.js.map +0 -1
  318. package/dist/cron/parser.d.ts +0 -2
  319. package/dist/cron/parser.d.ts.map +0 -1
  320. package/dist/cron/parser.js +0 -52
  321. package/dist/cron/parser.js.map +0 -1
  322. package/dist/cron/scheduler.d.ts +0 -23
  323. package/dist/cron/scheduler.d.ts.map +0 -1
  324. package/dist/cron/scheduler.js +0 -114
  325. package/dist/cron/scheduler.js.map +0 -1
  326. package/dist/database/adapters/mongodb.d.ts +0 -58
  327. package/dist/database/adapters/mongodb.d.ts.map +0 -1
  328. package/dist/database/adapters/mongodb.js +0 -264
  329. package/dist/database/adapters/mongodb.js.map +0 -1
  330. package/dist/database/adapters/mysql.d.ts +0 -27
  331. package/dist/database/adapters/mysql.d.ts.map +0 -1
  332. package/dist/database/adapters/mysql.js +0 -188
  333. package/dist/database/adapters/mysql.js.map +0 -1
  334. package/dist/database/adapters/postgres.d.ts +0 -28
  335. package/dist/database/adapters/postgres.d.ts.map +0 -1
  336. package/dist/database/adapters/postgres.js +0 -174
  337. package/dist/database/adapters/postgres.js.map +0 -1
  338. package/dist/database/adapters/sqlite.d.ts +0 -27
  339. package/dist/database/adapters/sqlite.d.ts.map +0 -1
  340. package/dist/database/adapters/sqlite.js +0 -149
  341. package/dist/database/adapters/sqlite.js.map +0 -1
  342. package/dist/database/index.d.ts +0 -42
  343. package/dist/database/index.d.ts.map +0 -1
  344. package/dist/database/index.js +0 -58
  345. package/dist/database/index.js.map +0 -1
  346. package/dist/database/manager.d.ts +0 -141
  347. package/dist/database/manager.d.ts.map +0 -1
  348. package/dist/database/manager.js +0 -337
  349. package/dist/database/manager.js.map +0 -1
  350. package/dist/database/migration.d.ts +0 -57
  351. package/dist/database/migration.d.ts.map +0 -1
  352. package/dist/database/migration.js +0 -329
  353. package/dist/database/migration.js.map +0 -1
  354. package/dist/database/query-builder.d.ts +0 -95
  355. package/dist/database/query-builder.d.ts.map +0 -1
  356. package/dist/database/query-builder.js +0 -404
  357. package/dist/database/query-builder.js.map +0 -1
  358. package/dist/database/sql/index.d.ts +0 -18
  359. package/dist/database/sql/index.d.ts.map +0 -1
  360. package/dist/database/sql/index.js +0 -74
  361. package/dist/database/sql/index.js.map +0 -1
  362. package/dist/database/sql/schema.d.ts +0 -38
  363. package/dist/database/sql/schema.d.ts.map +0 -1
  364. package/dist/database/sql/schema.js +0 -80
  365. package/dist/database/sql/schema.js.map +0 -1
  366. package/dist/database/synchronizer.d.ts +0 -12
  367. package/dist/database/synchronizer.d.ts.map +0 -1
  368. package/dist/database/synchronizer.js +0 -82
  369. package/dist/database/synchronizer.js.map +0 -1
  370. package/dist/database/types.d.ts +0 -184
  371. package/dist/database/types.d.ts.map +0 -1
  372. package/dist/database/types.js +0 -4
  373. package/dist/database/types.js.map +0 -1
  374. package/dist/dataloader/dataloader.d.ts +0 -23
  375. package/dist/dataloader/dataloader.d.ts.map +0 -1
  376. package/dist/dataloader/dataloader.js +0 -98
  377. package/dist/dataloader/dataloader.js.map +0 -1
  378. package/dist/dataloader/index.d.ts +0 -3
  379. package/dist/dataloader/index.d.ts.map +0 -1
  380. package/dist/dataloader/index.js +0 -19
  381. package/dist/dataloader/index.js.map +0 -1
  382. package/dist/dataloader/registry.d.ts +0 -17
  383. package/dist/dataloader/registry.d.ts.map +0 -1
  384. package/dist/dataloader/registry.js +0 -47
  385. package/dist/dataloader/registry.js.map +0 -1
  386. package/dist/dev/dep-graph.d.ts +0 -2
  387. package/dist/dev/dep-graph.d.ts.map +0 -1
  388. package/dist/dev/dep-graph.js +0 -111
  389. package/dist/dev/dep-graph.js.map +0 -1
  390. package/dist/dev/hot-reload.d.ts +0 -30
  391. package/dist/dev/hot-reload.d.ts.map +0 -1
  392. package/dist/dev/hot-reload.js +0 -262
  393. package/dist/dev/hot-reload.js.map +0 -1
  394. package/dist/docs/content/adapters.mdx +0 -199
  395. package/dist/docs/content/cache.mdx +0 -239
  396. package/dist/docs/content/circuit-breaker.mdx +0 -130
  397. package/dist/docs/content/cron.mdx +0 -109
  398. package/dist/docs/content/database.mdx +0 -278
  399. package/dist/docs/content/gateways.mdx +0 -376
  400. package/dist/docs/content/oauth.mdx +0 -179
  401. package/dist/docs/content/queues.mdx +0 -177
  402. package/dist/docs/content/rpc.mdx +0 -146
  403. package/dist/docs/content/sse.mdx +0 -159
  404. package/dist/docs/content/websockets.mdx +0 -289
  405. package/dist/docs/integrations/README.md +0 -23
  406. package/dist/docs/integrations/jwt.mdx +0 -151
  407. package/dist/docs/integrations/mongo.mdx +0 -183
  408. package/dist/docs/integrations/observability.mdx +0 -125
  409. package/dist/docs/integrations/openai.mdx +0 -108
  410. package/dist/docs/integrations/postgres.mdx +0 -190
  411. package/dist/docs/integrations/posthog.mdx +0 -122
  412. package/dist/docs/integrations/redis.mdx +0 -141
  413. package/dist/docs/integrations/resend.mdx +0 -117
  414. package/dist/docs/integrations/s3.mdx +0 -122
  415. package/dist/docs/integrations/swagger.mdx +0 -113
  416. package/dist/docs/reference/adapters.mdx +0 -130
  417. package/dist/docs/reference/auth.mdx +0 -183
  418. package/dist/docs/reference/cache.mdx +0 -132
  419. package/dist/docs/reference/circuit-breaker.mdx +0 -71
  420. package/dist/docs/reference/queue.mdx +0 -155
  421. package/dist/docs/reference/storage.mdx +0 -116
  422. package/dist/docs/reference/swagger.mdx +0 -132
  423. package/dist/integrations/drizzle.d.ts +0 -10
  424. package/dist/integrations/drizzle.d.ts.map +0 -1
  425. package/dist/integrations/drizzle.js +0 -34
  426. package/dist/integrations/drizzle.js.map +0 -1
  427. package/dist/integrations/jwt.d.ts +0 -12
  428. package/dist/integrations/jwt.d.ts.map +0 -1
  429. package/dist/integrations/jwt.js +0 -29
  430. package/dist/integrations/jwt.js.map +0 -1
  431. package/dist/integrations/mongodb.d.ts +0 -13
  432. package/dist/integrations/mongodb.d.ts.map +0 -1
  433. package/dist/integrations/mongodb.js +0 -48
  434. package/dist/integrations/mongodb.js.map +0 -1
  435. package/dist/integrations/mongoose.d.ts +0 -13
  436. package/dist/integrations/mongoose.d.ts.map +0 -1
  437. package/dist/integrations/mongoose.js +0 -84
  438. package/dist/integrations/mongoose.js.map +0 -1
  439. package/dist/integrations/openai.d.ts +0 -12
  440. package/dist/integrations/openai.d.ts.map +0 -1
  441. package/dist/integrations/openai.js +0 -47
  442. package/dist/integrations/openai.js.map +0 -1
  443. package/dist/integrations/postgres.d.ts +0 -13
  444. package/dist/integrations/postgres.d.ts.map +0 -1
  445. package/dist/integrations/postgres.js +0 -55
  446. package/dist/integrations/postgres.js.map +0 -1
  447. package/dist/integrations/posthog.d.ts +0 -13
  448. package/dist/integrations/posthog.d.ts.map +0 -1
  449. package/dist/integrations/posthog.js +0 -49
  450. package/dist/integrations/posthog.js.map +0 -1
  451. package/dist/integrations/prisma.d.ts +0 -10
  452. package/dist/integrations/prisma.d.ts.map +0 -1
  453. package/dist/integrations/prisma.js +0 -39
  454. package/dist/integrations/prisma.js.map +0 -1
  455. package/dist/integrations/redis.d.ts +0 -12
  456. package/dist/integrations/redis.d.ts.map +0 -1
  457. package/dist/integrations/redis.js +0 -48
  458. package/dist/integrations/redis.js.map +0 -1
  459. package/dist/integrations/resend.d.ts +0 -12
  460. package/dist/integrations/resend.d.ts.map +0 -1
  461. package/dist/integrations/resend.js +0 -47
  462. package/dist/integrations/resend.js.map +0 -1
  463. package/dist/integrations/s3.d.ts +0 -15
  464. package/dist/integrations/s3.d.ts.map +0 -1
  465. package/dist/integrations/s3.js +0 -60
  466. package/dist/integrations/s3.js.map +0 -1
  467. package/dist/integrations/supabase.d.ts +0 -13
  468. package/dist/integrations/supabase.d.ts.map +0 -1
  469. package/dist/integrations/supabase.js +0 -51
  470. package/dist/integrations/supabase.js.map +0 -1
  471. package/dist/middleware/cache.d.ts +0 -21
  472. package/dist/middleware/cache.d.ts.map +0 -1
  473. package/dist/middleware/cache.js +0 -156
  474. package/dist/middleware/cache.js.map +0 -1
  475. package/dist/observability/health.d.ts +0 -23
  476. package/dist/observability/health.d.ts.map +0 -1
  477. package/dist/observability/health.js +0 -49
  478. package/dist/observability/health.js.map +0 -1
  479. package/dist/observability/index.d.ts +0 -4
  480. package/dist/observability/index.d.ts.map +0 -1
  481. package/dist/observability/index.js +0 -10
  482. package/dist/observability/index.js.map +0 -1
  483. package/dist/observability/metrics.d.ts +0 -6
  484. package/dist/observability/metrics.d.ts.map +0 -1
  485. package/dist/observability/metrics.js +0 -60
  486. package/dist/observability/metrics.js.map +0 -1
  487. package/dist/observability/otel.d.ts +0 -27
  488. package/dist/observability/otel.d.ts.map +0 -1
  489. package/dist/observability/otel.js +0 -45
  490. package/dist/observability/otel.js.map +0 -1
  491. package/dist/observability/prometheus.d.ts +0 -30
  492. package/dist/observability/prometheus.d.ts.map +0 -1
  493. package/dist/observability/prometheus.js +0 -31
  494. package/dist/observability/prometheus.js.map +0 -1
  495. package/dist/queue/client.d.ts +0 -13
  496. package/dist/queue/client.d.ts.map +0 -1
  497. package/dist/queue/client.js +0 -83
  498. package/dist/queue/client.js.map +0 -1
  499. package/dist/queue/drivers/MemoryDriver.d.ts +0 -21
  500. package/dist/queue/drivers/MemoryDriver.d.ts.map +0 -1
  501. package/dist/queue/drivers/MemoryDriver.js +0 -176
  502. package/dist/queue/drivers/MemoryDriver.js.map +0 -1
  503. package/dist/queue/drivers/RedisDriver.d.ts +0 -19
  504. package/dist/queue/drivers/RedisDriver.d.ts.map +0 -1
  505. package/dist/queue/drivers/RedisDriver.js +0 -130
  506. package/dist/queue/drivers/RedisDriver.js.map +0 -1
  507. package/dist/queue/index.d.ts +0 -18
  508. package/dist/queue/index.d.ts.map +0 -1
  509. package/dist/queue/index.js +0 -37
  510. package/dist/queue/index.js.map +0 -1
  511. package/dist/queue/manager.d.ts +0 -18
  512. package/dist/queue/manager.d.ts.map +0 -1
  513. package/dist/queue/manager.js +0 -59
  514. package/dist/queue/manager.js.map +0 -1
  515. package/dist/queue/types.d.ts +0 -55
  516. package/dist/queue/types.d.ts.map +0 -1
  517. package/dist/queue/types.js.map +0 -1
  518. package/dist/queue/worker.d.ts +0 -18
  519. package/dist/queue/worker.d.ts.map +0 -1
  520. package/dist/queue/worker.js +0 -176
  521. package/dist/queue/worker.js.map +0 -1
  522. package/dist/router/gateway.d.ts.map +0 -1
  523. package/dist/router/gateway.js +0 -11
  524. package/dist/router/gateway.js.map +0 -1
  525. package/dist/server/bun-adapter.d.ts.map +0 -1
  526. package/dist/server/bun-adapter.js.map +0 -1
  527. package/dist/server/sse.d.ts +0 -16
  528. package/dist/server/sse.d.ts.map +0 -1
  529. package/dist/server/sse.js +0 -51
  530. package/dist/server/sse.js.map +0 -1
  531. package/dist/server/uws-adapter.d.ts.map +0 -1
  532. package/dist/server/uws-adapter.js.map +0 -1
  533. package/dist/storage/index.d.ts +0 -15
  534. package/dist/storage/index.d.ts.map +0 -1
  535. package/dist/storage/index.js +0 -7
  536. package/dist/storage/index.js.map +0 -1
  537. package/dist/swagger/index.d.ts +0 -9
  538. package/dist/swagger/index.d.ts.map +0 -1
  539. package/dist/swagger/index.js +0 -165
  540. package/dist/swagger/index.js.map +0 -1
  541. package/dist/threads/pool.d.ts +0 -14
  542. package/dist/threads/pool.d.ts.map +0 -1
  543. package/dist/threads/pool.js +0 -93
  544. package/dist/threads/pool.js.map +0 -1
  545. package/dist/threads/worker-runner.d.ts +0 -2
  546. package/dist/threads/worker-runner.d.ts.map +0 -1
  547. package/dist/threads/worker-runner.js +0 -71
  548. package/dist/threads/worker-runner.js.map +0 -1
  549. package/dist/validator/validator.d.ts +0 -360
  550. package/dist/validator/validator.d.ts.map +0 -1
  551. package/dist/validator/validator.js +0 -931
  552. package/dist/validator/validator.js.map +0 -1
  553. package/dist/websocket/orchestrator.d.ts +0 -11
  554. package/dist/websocket/orchestrator.d.ts.map +0 -1
  555. package/dist/websocket/orchestrator.js +0 -238
  556. package/dist/websocket/orchestrator.js.map +0 -1
  557. package/dist/websocket/server.d.ts +0 -66
  558. package/dist/websocket/server.d.ts.map +0 -1
  559. package/dist/websocket/server.js +0 -158
  560. package/dist/websocket/server.js.map +0 -1
  561. package/dist/websocket/socket.d.ts +0 -119
  562. package/dist/websocket/socket.d.ts.map +0 -1
  563. package/dist/websocket/socket.js +0 -242
  564. package/dist/websocket/socket.js.map +0 -1
@@ -1,158 +0,0 @@
1
- /**
2
- * Built-in OAuth provider identifiers.
3
- */
4
- export type OAuthProvider = 'google' | 'github' | 'microsoft' | 'discord' | 'facebook' | (string & {});
5
- /**
6
- * Configuration for an OAuth provider.
7
- */
8
- export interface OAuthProviderConfig {
9
- /** OAuth client ID (from the provider's developer console) */
10
- clientId: string;
11
- /** OAuth client secret */
12
- clientSecret: string;
13
- /** The URL the provider redirects to after authentication */
14
- redirectUri: string;
15
- /** OAuth scopes to request */
16
- scopes?: string[];
17
- /**
18
- * Microsoft-specific: the tenant ID.
19
- * Use 'common' for multi-tenant, 'organizations' for work accounts, or a specific tenant ID.
20
- * Default: 'common'
21
- */
22
- tenant?: string;
23
- }
24
- /**
25
- * Token response from an OAuth provider.
26
- */
27
- export interface OAuthTokens {
28
- /** The access token used to call provider APIs */
29
- accessToken: string;
30
- /** The refresh token for obtaining new access tokens (if granted) */
31
- refreshToken?: string;
32
- /** Token expiry time in seconds */
33
- expiresIn?: number;
34
- /** Token type (usually 'Bearer') */
35
- tokenType: string;
36
- /** OpenID Connect ID token (JWT, if using openid scope) */
37
- idToken?: string;
38
- /** The scopes that were actually granted by the provider */
39
- scope?: string;
40
- }
41
- /**
42
- * Normalized user profile across all providers.
43
- * Guarantees a consistent shape regardless of which provider is used.
44
- */
45
- export interface OAuthUserProfile {
46
- /** User's unique ID on the provider */
47
- id: string;
48
- /** User's email address */
49
- email: string;
50
- /** Whether the provider has verified the email */
51
- emailVerified: boolean;
52
- /** User's display name */
53
- name: string;
54
- /** User's first name (if available) */
55
- firstName?: string;
56
- /** User's last name (if available) */
57
- lastName?: string;
58
- /** URL to the user's avatar/profile picture */
59
- avatar?: string;
60
- /** Which OAuth provider this profile came from */
61
- provider: OAuthProvider;
62
- /** The full raw response from the provider's user info endpoint */
63
- raw: Record<string, unknown>;
64
- }
65
- /**
66
- * The contract that every OAuth provider adapter must implement.
67
- */
68
- export interface OAuthProviderAdapter {
69
- /** Provider identifier */
70
- readonly name: OAuthProvider;
71
- /**
72
- * Generate the authorization URL that the user is redirected to.
73
- * @param state CSRF state token
74
- * @param codeVerifier PKCE code verifier (if using PKCE)
75
- */
76
- getAuthorizationUrl(state: string, codeVerifier?: string): string;
77
- /**
78
- * Exchange an authorization code for tokens.
79
- * @param code The authorization code from the callback
80
- * @param codeVerifier PKCE code verifier (if using PKCE)
81
- */
82
- exchangeCode(code: string, codeVerifier?: string): Promise<OAuthTokens>;
83
- /**
84
- * Fetch the authenticated user's profile from the provider.
85
- * @param tokens The tokens obtained from exchangeCode
86
- */
87
- getUserProfile(tokens: OAuthTokens): Promise<OAuthUserProfile>;
88
- /**
89
- * Refresh an expired access token using a refresh token.
90
- * @param refreshToken The refresh token
91
- */
92
- refreshToken(refreshToken: string): Promise<OAuthTokens>;
93
- /**
94
- * Revoke a token (access or refresh).
95
- * @param token The token to revoke
96
- */
97
- revokeToken(token: string): Promise<void>;
98
- }
99
- /**
100
- * Configuration for the OAuth middleware.
101
- */
102
- export interface OAuthCallbackOptions {
103
- /**
104
- * Called when authentication succeeds.
105
- * Use this to create/update the user in your database, set session data, etc.
106
- */
107
- onSuccess: (req: import('../../types').Request, res: import('../../types').Response, profile: OAuthUserProfile, tokens: OAuthTokens) => void | Promise<void>;
108
- /**
109
- * Called when authentication fails.
110
- * Use this to redirect to an error page, log the error, etc.
111
- */
112
- onError?: (req: import('../../types').Request, res: import('../../types').Response, error: Error) => void | Promise<void>;
113
- /**
114
- * Name of the session key to store OAuth state. Default: '_exis_oauth_state'
115
- */
116
- stateKey?: string;
117
- }
118
- /**
119
- * Configuration for a custom OAuth provider.
120
- */
121
- export interface CustomOAuthProviderConfig extends OAuthProviderConfig {
122
- /** A unique name for this custom provider */
123
- name: string;
124
- /** The authorization endpoint URL */
125
- authUrl: string;
126
- /** The token exchange endpoint URL */
127
- tokenUrl: string;
128
- /** The user info endpoint URL */
129
- userInfoUrl: string;
130
- /**
131
- * Map the raw user info response to a normalized OAuthUserProfile.
132
- * If not provided, the raw response is used as-is with best-effort field mapping.
133
- */
134
- mapProfile?: (raw: Record<string, unknown>) => Omit<OAuthUserProfile, 'provider' | 'raw'>;
135
- /** The revocation endpoint URL (optional) */
136
- revokeUrl?: string;
137
- /**
138
- * How to send the client credentials during token exchange.
139
- * 'body' sends them as POST body parameters.
140
- * 'header' sends them as a Basic auth header.
141
- * Default: 'body'
142
- */
143
- authMethod?: 'body' | 'header';
144
- }
145
- /**
146
- * Internal state stored during the OAuth flow.
147
- */
148
- export interface OAuthFlowState {
149
- /** CSRF state token */
150
- state: string;
151
- /** PKCE code verifier */
152
- codeVerifier?: string;
153
- /** Provider being used */
154
- provider: OAuthProvider;
155
- /** Timestamp when the state was created */
156
- createdAt: number;
157
- }
158
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/auth/oauth/types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- "use strict";
2
- // ─── OAuth Types ────────────────────────────────────────────────────────────────
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/auth/oauth/types.ts"],"names":[],"mappings":";AAAA,mFAAmF"}
@@ -1,25 +0,0 @@
1
- export interface HashOptions {
2
- /** The length of the salt in bytes. Default: 16 */
3
- saltLength?: number;
4
- /** The length of the derived key in bytes. Default: 64 */
5
- keyLength?: number;
6
- /** CPU/memory cost parameter (N). Must be a power of 2 greater than 1. Default: 16384 */
7
- cost?: number;
8
- /** Block size parameter (r). Default: 8 */
9
- blockSize?: number;
10
- /** Parallelization parameter (p). Default: 1 */
11
- parallelization?: number;
12
- }
13
- /**
14
- * Hash a password using scrypt.
15
- * Returns a string formatted as: `scrypt:N:r:p:keylen:salt:hash`
16
- * This ensures the options are securely stored alongside the hash for future verification.
17
- */
18
- export declare function hashPassword(password: string, options?: HashOptions): Promise<string>;
19
- /**
20
- * Verify a password against a stored scrypt hash.
21
- * @param password The plaintext password to verify.
22
- * @param storedHash The stored hash string generated by `hashPassword`.
23
- */
24
- export declare function verifyPassword(password: string, storedHash: string): Promise<boolean>;
25
- //# sourceMappingURL=password.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"password.d.ts","sourceRoot":"","sources":["../../src/auth/password.ts"],"names":[],"mappings":"AAuBA,MAAM,WAAW,WAAW;IAC1B,mDAAmD;IACnD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,yFAAyF;IACzF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gDAAgD;IAChD,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAUD;;;;GAIG;AACH,wBAAsB,YAAY,CAChC,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,MAAM,CAAC,CAajB;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,CAAC,CAwClB"}
@@ -1,93 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.hashPassword = hashPassword;
4
- exports.verifyPassword = verifyPassword;
5
- const node_crypto_1 = require("node:crypto");
6
- const scryptAsync = (password, salt, keylen, options) => {
7
- return new Promise((resolve, reject) => {
8
- if (options) {
9
- (0, node_crypto_1.scrypt)(password, salt, keylen, options, (err, derivedKey) => {
10
- if (err)
11
- reject(err);
12
- else
13
- resolve(derivedKey);
14
- });
15
- }
16
- else {
17
- (0, node_crypto_1.scrypt)(password, salt, keylen, (err, derivedKey) => {
18
- if (err)
19
- reject(err);
20
- else
21
- resolve(derivedKey);
22
- });
23
- }
24
- });
25
- };
26
- const DEFAULT_OPTIONS = {
27
- saltLength: 16,
28
- keyLength: 64,
29
- cost: 16384,
30
- blockSize: 8,
31
- parallelization: 1,
32
- };
33
- /**
34
- * Hash a password using scrypt.
35
- * Returns a string formatted as: `scrypt:N:r:p:keylen:salt:hash`
36
- * This ensures the options are securely stored alongside the hash for future verification.
37
- */
38
- async function hashPassword(password, options) {
39
- const opts = { ...DEFAULT_OPTIONS, ...options };
40
- const salt = (0, node_crypto_1.randomBytes)(opts.saltLength).toString('hex');
41
- const derivedKey = (await scryptAsync(password, salt, opts.keyLength, {
42
- N: opts.cost,
43
- r: opts.blockSize,
44
- p: opts.parallelization,
45
- }));
46
- // Store the parameters used to create the hash so we can verify it later
47
- // Format: scrypt:cost:blockSize:parallelization:keyLength:salt:hash
48
- return `scrypt:${opts.cost}:${opts.blockSize}:${opts.parallelization}:${opts.keyLength}:${salt}:${derivedKey.toString('hex')}`;
49
- }
50
- /**
51
- * Verify a password against a stored scrypt hash.
52
- * @param password The plaintext password to verify.
53
- * @param storedHash The stored hash string generated by `hashPassword`.
54
- */
55
- async function verifyPassword(password, storedHash) {
56
- if (!password || !storedHash || typeof storedHash !== 'string') {
57
- return false;
58
- }
59
- // Backwards compatibility with the old simple format `salt:hash`
60
- const parts = storedHash.split(':');
61
- if (parts.length === 2) {
62
- const [salt, key] = parts;
63
- if (!salt || !key)
64
- return false;
65
- const keyBuffer = Buffer.from(key, 'hex');
66
- const derivedKey = (await scryptAsync(password, salt, 64));
67
- if (keyBuffer.length !== derivedKey.length)
68
- return false;
69
- return (0, node_crypto_1.timingSafeEqual)(keyBuffer, derivedKey);
70
- }
71
- // New format: scrypt:N:r:p:keylen:salt:hash
72
- if (parts.length === 7 && parts[0] === 'scrypt') {
73
- const cost = parseInt(parts[1], 10);
74
- const blockSize = parseInt(parts[2], 10);
75
- const parallelization = parseInt(parts[3], 10);
76
- const keyLength = parseInt(parts[4], 10);
77
- const salt = parts[5];
78
- const key = parts[6];
79
- if (!salt || !key)
80
- return false;
81
- const keyBuffer = Buffer.from(key, 'hex');
82
- const derivedKey = (await scryptAsync(password, salt, keyLength, {
83
- N: cost,
84
- r: blockSize,
85
- p: parallelization,
86
- }));
87
- if (keyBuffer.length !== derivedKey.length)
88
- return false;
89
- return (0, node_crypto_1.timingSafeEqual)(keyBuffer, derivedKey);
90
- }
91
- return false;
92
- }
93
- //# sourceMappingURL=password.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"password.js","sourceRoot":"","sources":["../../src/auth/password.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import type { Request, Response, NextFunction } from '../types';
2
- /**
3
- * Middleware that ensures the authenticated user has one of the required roles.
4
- * Expects `req.user` to be populated (e.g., by a previous session or JWT middleware),
5
- * and expects `req.user.role` to be a string or array of strings.
6
- *
7
- * @param allowedRoles A single role string or an array of allowed roles.
8
- */
9
- export declare function requireRole(allowedRoles: string | string[]): (req: Request, res: Response, next: NextFunction) => void;
10
- //# sourceMappingURL=rbac.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rbac.d.ts","sourceRoot":"","sources":["../../src/auth/rbac.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAE/D;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,IAGjD,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,UA8BxD"}
package/dist/auth/rbac.js DELETED
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.requireRole = requireRole;
4
- const errors_1 = require("../error/errors");
5
- /**
6
- * Middleware that ensures the authenticated user has one of the required roles.
7
- * Expects `req.user` to be populated (e.g., by a previous session or JWT middleware),
8
- * and expects `req.user.role` to be a string or array of strings.
9
- *
10
- * @param allowedRoles A single role string or an array of allowed roles.
11
- */
12
- function requireRole(allowedRoles) {
13
- const roles = Array.isArray(allowedRoles) ? allowedRoles : [allowedRoles];
14
- return (req, res, next) => {
15
- // 1. Ensure user is authenticated
16
- if (!req.user) {
17
- return next(errors_1.HttpError.unauthorized('Authentication required to access this resource'));
18
- }
19
- // 2. Ensure user has a role property
20
- if (!req.user.role) {
21
- return next(errors_1.HttpError.forbidden('Access denied: No role assigned'));
22
- }
23
- const userRoles = Array.isArray(req.user.role)
24
- ? req.user.role
25
- : [req.user.role];
26
- // 3. Check for intersection between user roles and allowed roles
27
- const hasRole = userRoles.some((role) => roles.includes(role));
28
- if (!hasRole) {
29
- return next(errors_1.HttpError.forbidden('Access denied: Insufficient permissions'));
30
- }
31
- next();
32
- };
33
- }
34
- //# sourceMappingURL=rbac.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rbac.js","sourceRoot":"","sources":["../../src/auth/rbac.ts"],"names":[],"mappings":";;AAUA,kCAiCC;AA3CD,4CAA2C;AAG3C;;;;;;GAMG;AACH,SAAgB,WAAW,CAAC,YAA+B;IACzD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;IAEzE,OAAO,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;QACzD,kCAAkC;QAClC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,IAAI,CACT,kBAAS,CAAC,YAAY,CACpB,iDAAiD,CAClD,CACF,CAAA;QACH,CAAC;QAED,qCAAqC;QACrC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,kBAAS,CAAC,SAAS,CAAC,iCAAiC,CAAC,CAAC,CAAA;QACrE,CAAC;QAED,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5C,CAAC,CAAE,GAAG,CAAC,IAAI,CAAC,IAAiB;YAC7B,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAc,CAAC,CAAA;QAE7B,iEAAiE;QACjE,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;QAE9D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CACT,kBAAS,CAAC,SAAS,CAAC,yCAAyC,CAAC,CAC/D,CAAA;QACH,CAAC;QAED,IAAI,EAAE,CAAA;IACR,CAAC,CAAA;AACH,CAAC"}
@@ -1,26 +0,0 @@
1
- import type { Request, Response, NextFunction } from '../types';
2
- export type SessionData = Record<string, unknown>;
3
- export interface SessionStore {
4
- get(sessionId: string): Promise<SessionData | null> | SessionData | null;
5
- set(sessionId: string, data: SessionData, ttl?: number): Promise<void> | void;
6
- destroy(sessionId: string): Promise<void> | void;
7
- }
8
- export declare class MemorySessionStore implements SessionStore {
9
- private nativeStore;
10
- private fallbackSessions;
11
- private isFallback;
12
- constructor();
13
- get(sessionId: string): SessionData | null;
14
- set(sessionId: string, data: SessionData, ttl?: number): void;
15
- destroy(sessionId: string): void;
16
- }
17
- export interface SessionOptions {
18
- secret: string;
19
- store?: SessionStore;
20
- cookieName?: string;
21
- ttl?: number;
22
- secure?: boolean;
23
- sameSite?: 'Strict' | 'Lax' | 'None';
24
- }
25
- export declare function session(options: SessionOptions): (req: Request, res: Response, next: NextFunction) => Promise<void>;
26
- //# sourceMappingURL=session.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/auth/session.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAE/D,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAEjD,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,WAAW,GAAG,IAAI,CAAA;IACxE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC7E,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CACjD;AAED,qBAAa,kBAAmB,YAAW,YAAY;IACrD,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,gBAAgB,CAGrB;IACH,OAAO,CAAC,UAAU,CAAQ;;IAY1B,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAoB1C,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,GAAE,MAAqB,GAAG,IAAI;IAY3E,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;CAQjC;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAA;CACrC;AAuBD,wBAAgB,OAAO,CAAC,OAAO,EAAE,cAAc,IAW/B,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,mBAqD9D"}
@@ -1,134 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MemorySessionStore = void 0;
4
- exports.session = session;
5
- const node_crypto_1 = require("node:crypto");
6
- class MemorySessionStore {
7
- constructor() {
8
- this.fallbackSessions = new Map();
9
- this.isFallback = false;
10
- try {
11
- // eslint-disable-next-line @typescript-eslint/no-require-imports
12
- const { NativeSessionStore } = require('@exisjs/rs');
13
- this.nativeStore = new NativeSessionStore();
14
- }
15
- catch {
16
- this.isFallback = true;
17
- }
18
- }
19
- get(sessionId) {
20
- if (!this.isFallback) {
21
- const dataStr = this.nativeStore.get(sessionId);
22
- if (!dataStr)
23
- return null;
24
- try {
25
- return JSON.parse(dataStr);
26
- }
27
- catch {
28
- return null;
29
- }
30
- }
31
- const session = this.fallbackSessions.get(sessionId);
32
- if (!session)
33
- return null;
34
- if (session.expiresAt < Date.now()) {
35
- this.fallbackSessions.delete(sessionId);
36
- return null;
37
- }
38
- return session.data;
39
- }
40
- set(sessionId, data, ttl = 86400 * 1000) {
41
- if (!this.isFallback) {
42
- this.nativeStore.set(sessionId, JSON.stringify(data), ttl);
43
- return;
44
- }
45
- this.fallbackSessions.set(sessionId, {
46
- data,
47
- expiresAt: Date.now() + ttl,
48
- });
49
- }
50
- destroy(sessionId) {
51
- if (!this.isFallback) {
52
- this.nativeStore.destroy(sessionId);
53
- return;
54
- }
55
- this.fallbackSessions.delete(sessionId);
56
- }
57
- }
58
- exports.MemorySessionStore = MemorySessionStore;
59
- function signCookie(val, secret) {
60
- const signature = (0, node_crypto_1.createHmac)('sha256', secret).update(val).digest('base64url');
61
- return `${val}.${signature}`;
62
- }
63
- function unsignCookie(val, secret) {
64
- const parts = val.split('.');
65
- if (parts.length !== 2)
66
- return false;
67
- const [str, signature] = parts;
68
- const expectedSignature = (0, node_crypto_1.createHmac)('sha256', secret)
69
- .update(str)
70
- .digest('base64url');
71
- const sigBuf = Buffer.from(signature);
72
- const expectedBuf = Buffer.from(expectedSignature);
73
- if (sigBuf.length !== expectedBuf.length)
74
- return false;
75
- if (!(0, node_crypto_1.timingSafeEqual)(sigBuf, expectedBuf))
76
- return false;
77
- return str;
78
- }
79
- function session(options) {
80
- if (!options.secret || options.secret.length < 32) {
81
- throw new Error('session options.secret must be at least 32 characters long');
82
- }
83
- const store = options.store || new MemorySessionStore();
84
- const cookieName = options.cookieName || 'exis_sid';
85
- const ttl = options.ttl || 86400 * 1000; // 1 day
86
- return async (req, res, next) => {
87
- let sessionId;
88
- // 1. Try to get session ID from cookie
89
- const cookieVal = req.cookies?.[cookieName];
90
- if (cookieVal) {
91
- const unsigned = unsignCookie(cookieVal, options.secret);
92
- if (unsigned) {
93
- sessionId = unsigned;
94
- }
95
- }
96
- // 2. Load session data or create new
97
- let sessionData = {};
98
- if (sessionId) {
99
- const data = await store.get(sessionId);
100
- if (data) {
101
- sessionData = data;
102
- }
103
- else {
104
- sessionId = undefined; // Invalid or expired
105
- }
106
- }
107
- if (!sessionId) {
108
- sessionId = (0, node_crypto_1.randomBytes)(24).toString('base64url');
109
- // Only set cookie if we created a new session ID
110
- res.cookie(cookieName, signCookie(sessionId, options.secret), {
111
- maxAge: ttl / 1000,
112
- httpOnly: true,
113
- secure: options.secure ?? process.env.NODE_ENV === 'production',
114
- sameSite: options.sameSite ?? 'Lax',
115
- path: '/',
116
- });
117
- }
118
- // 3. Attach session to request
119
- req.session = sessionData;
120
- const initialState = JSON.stringify(sessionData);
121
- // 4. Hook into res.raw.end to save the session automatically
122
- const originalEnd = res.raw.end.bind(res.raw);
123
- res.raw.end = function (...args) {
124
- if (JSON.stringify(sessionData) !== initialState) {
125
- store.set(sessionId, sessionData, ttl);
126
- }
127
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
128
- // @ts-ignore
129
- return originalEnd(...args);
130
- };
131
- next();
132
- };
133
- }
134
- //# sourceMappingURL=session.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/auth/session.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- export declare function revalidateTag(tag: string): Promise<void>;
2
- export * from '../middleware/cache';
3
- export * from './store';
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cache/index.ts"],"names":[],"mappings":"AAEA,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG9D;AAED,cAAc,qBAAqB,CAAA;AACnC,cAAc,SAAS,CAAA"}
@@ -1,25 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.revalidateTag = revalidateTag;
18
- const store_1 = require("./store");
19
- async function revalidateTag(tag) {
20
- const store = (0, store_1.getCacheStore)();
21
- await store.revalidateTag(tag);
22
- }
23
- __exportStar(require("../middleware/cache"), exports);
24
- __exportStar(require("./store"), exports);
25
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cache/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAEA,sCAGC;AALD,mCAAuC;AAEhC,KAAK,UAAU,aAAa,CAAC,GAAW;IAC7C,MAAM,KAAK,GAAG,IAAA,qBAAa,GAAE,CAAA;IAC7B,MAAM,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;AAChC,CAAC;AAED,sDAAmC;AACnC,0CAAuB"}
@@ -1,58 +0,0 @@
1
- export interface CacheItem {
2
- data: any;
3
- tags: string[];
4
- createdAt: number;
5
- }
6
- export interface CacheStore {
7
- get(key: string): Promise<CacheItem | null>;
8
- set(key: string, data: any, tags: string[], ttlMs?: number): Promise<void>;
9
- revalidateTag(tag: string): Promise<void>;
10
- getTags(): Promise<Record<string, number>>;
11
- }
12
- export declare class FileSystemCacheStore implements CacheStore {
13
- private cacheDir;
14
- private tagsPath;
15
- constructor(cwd: string);
16
- private ensureDir;
17
- private hashKey;
18
- getTags(): Promise<Record<string, number>>;
19
- get(key: string): Promise<CacheItem | null>;
20
- set(key: string, data: any, tags: string[], _ttlMs?: number): Promise<void>;
21
- revalidateTag(tag: string): Promise<void>;
22
- }
23
- export declare class MemoryCacheStore implements CacheStore {
24
- private cache;
25
- private isWorker;
26
- constructor(capacity?: number);
27
- get(key: string): Promise<CacheItem | null>;
28
- set(key: string, data: any, tags: string[], _ttlMs?: number): Promise<void>;
29
- revalidateTag(tag: string): Promise<void>;
30
- getTags(): Promise<Record<string, number>>;
31
- }
32
- export interface MinimalRedisClient {
33
- get(key: string): Promise<string | null>;
34
- set(key: string, value: string, mode: string, duration: number): Promise<unknown>;
35
- del(key: string): Promise<number>;
36
- flushdb(): Promise<unknown>;
37
- }
38
- export declare class RedisCacheStore implements CacheStore {
39
- private client;
40
- private prefix;
41
- constructor(client: MinimalRedisClient, prefix?: string);
42
- getTags(): Promise<Record<string, number>>;
43
- get(key: string): Promise<CacheItem | null>;
44
- set(key: string, data: any, tags: string[], ttlMs?: number): Promise<void>;
45
- revalidateTag(tag: string): Promise<void>;
46
- }
47
- export declare class TieredCacheStore implements CacheStore {
48
- private local;
49
- private remote;
50
- constructor(local: CacheStore, remote: CacheStore);
51
- get(key: string): Promise<CacheItem | null>;
52
- set(key: string, data: any, tags: string[], ttlMs?: number): Promise<void>;
53
- revalidateTag(tag: string): Promise<void>;
54
- getTags(): Promise<Record<string, number>>;
55
- }
56
- export declare function getCacheStore(): CacheStore;
57
- export declare function setCacheStore(store: CacheStore): void;
58
- //# sourceMappingURL=store.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/cache/store.ts"],"names":[],"mappings":"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"}