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,12 +0,0 @@
1
- import type { DatabaseAdapter } from './types';
2
- import type { TableDefinition } from './sql/schema';
3
- export declare class SchemaSynchronizer {
4
- private adapter;
5
- constructor(adapter: DatabaseAdapter);
6
- sync(tables: TableDefinition[]): Promise<void>;
7
- private syncTable;
8
- private syncColumns;
9
- private buildCreateTable;
10
- private buildColumnDefinition;
11
- }
12
- //# sourceMappingURL=synchronizer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"synchronizer.d.ts","sourceRoot":"","sources":["../../src/database/synchronizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAiB,MAAM,cAAc,CAAA;AAElE,qBAAa,kBAAkB;IACjB,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,eAAe;IAEtC,IAAI,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YAatC,SAAS;YA0BT,WAAW;IAwBzB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,qBAAqB;CA8B9B"}
@@ -1,82 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SchemaSynchronizer = void 0;
4
- class SchemaSynchronizer {
5
- constructor(adapter) {
6
- this.adapter = adapter;
7
- }
8
- async sync(tables) {
9
- if (this.adapter.dialect !== 'postgres') {
10
- console.warn(`[ExisJS Auto-Sync] Sync is currently optimized for postgres. Skipping.`);
11
- return;
12
- }
13
- for (const table of tables) {
14
- await this.syncTable(table);
15
- }
16
- }
17
- async syncTable(table) {
18
- const tableName = table.tableName;
19
- // Check if table exists
20
- const res = await this.adapter.query(`SELECT EXISTS (
21
- SELECT FROM information_schema.tables
22
- WHERE table_schema = 'public'
23
- AND table_name = $1
24
- )`, [tableName]);
25
- const exists = res.rows[0]?.exists;
26
- if (!exists) {
27
- // Create table
28
- const ddl = this.buildCreateTable(table);
29
- await this.adapter.execute(ddl);
30
- console.log(`[ExisJS Database] Created table "${tableName}"`);
31
- }
32
- else {
33
- // Sync columns
34
- await this.syncColumns(table);
35
- }
36
- }
37
- async syncColumns(table) {
38
- const tableName = table.tableName;
39
- const res = await this.adapter.query(`SELECT column_name
40
- FROM information_schema.columns
41
- WHERE table_schema = 'public'
42
- AND table_name = $1`, [tableName]);
43
- const existingCols = new Set(res.rows.map((r) => r.column_name));
44
- for (const [colName, colDef] of Object.entries(table.columns)) {
45
- if (!existingCols.has(colName)) {
46
- const ddl = `ALTER TABLE "${tableName}" ADD COLUMN ${this.buildColumnDefinition(colDef)}`;
47
- await this.adapter.execute(ddl);
48
- console.log(`[ExisJS Database] Added column "${colName}" to "${tableName}"`);
49
- }
50
- }
51
- }
52
- buildCreateTable(table) {
53
- const columns = Object.values(table.columns).map((col) => this.buildColumnDefinition(col));
54
- return `CREATE TABLE "${table.tableName}" (\n ${columns.join(',\n ')}\n)`;
55
- }
56
- buildColumnDefinition(col) {
57
- let def = `"${col.name}" ${col.dataType.toUpperCase()}`;
58
- if (col.isPrimaryKey) {
59
- def += ' PRIMARY KEY';
60
- }
61
- if (col.isUnique && !col.isPrimaryKey) {
62
- def += ' UNIQUE';
63
- }
64
- if (col.isNotNull && !col.isPrimaryKey) {
65
- def += ' NOT NULL';
66
- }
67
- if (col.defaultValue) {
68
- // If the default is a function like gen_random_uuid(), we don't wrap it in quotes.
69
- // If it's a raw string 'NOW()', we just use it directly (as they provided it).
70
- def += ` DEFAULT ${col.defaultValue}`;
71
- }
72
- if (col.reference) {
73
- const refCol = col.reference();
74
- if (refCol.tableName) {
75
- def += ` REFERENCES "${refCol.tableName}"("${refCol.name}")`;
76
- }
77
- }
78
- return def;
79
- }
80
- }
81
- exports.SchemaSynchronizer = SchemaSynchronizer;
82
- //# sourceMappingURL=synchronizer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"synchronizer.js","sourceRoot":"","sources":["../../src/database/synchronizer.ts"],"names":[],"mappings":"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"}
@@ -1,184 +0,0 @@
1
- /**
2
- * Supported database dialects.
3
- */
4
- export type DatabaseDialect = 'postgres' | 'mysql' | 'sqlite' | 'mongodb';
5
- /**
6
- * Connection pool configuration.
7
- */
8
- export interface PoolConfig {
9
- /** Minimum number of connections in the pool. Default: 2 */
10
- min?: number;
11
- /** Maximum number of connections in the pool. Default: 10 */
12
- max?: number;
13
- /** Time in ms a connection can sit idle before being closed. Default: 30000 */
14
- idleTimeoutMs?: number;
15
- /** Time in ms to wait for a connection from the pool. Default: 10000 */
16
- acquireTimeoutMs?: number;
17
- }
18
- /**
19
- * SSL/TLS configuration for database connections.
20
- */
21
- export interface DatabaseSslConfig {
22
- /** Reject unauthorized certificates. Default: true in production */
23
- rejectUnauthorized?: boolean;
24
- /** Path to CA certificate */
25
- ca?: string | Buffer;
26
- /** Path to client certificate */
27
- cert?: string | Buffer;
28
- /** Path to client private key */
29
- key?: string | Buffer;
30
- }
31
- /**
32
- * Configuration for a database connection.
33
- */
34
- export interface DatabaseConfig {
35
- /** The database dialect to use */
36
- dialect: DatabaseDialect;
37
- /** Connection URL (e.g. postgres://user:pass@host:5432/dbname) */
38
- url?: string;
39
- /** Host address. Used if `url` is not provided */
40
- host?: string;
41
- /** Port number */
42
- port?: number;
43
- /** Database name */
44
- database?: string;
45
- /** Username for authentication */
46
- username?: string;
47
- /** Password for authentication */
48
- password?: string;
49
- /** Connection pool configuration */
50
- pool?: PoolConfig;
51
- /** SSL/TLS configuration. Set to true for default SSL, or provide detailed config */
52
- ssl?: boolean | DatabaseSslConfig;
53
- /** Enable query logging. Default: false */
54
- logging?: boolean | ((sql: string, params?: unknown[]) => void);
55
- /** Connection timeout in milliseconds. Default: 5000 */
56
- connectTimeoutMs?: number;
57
- /**
58
- * Path to the SQLite database file.
59
- * Use ':memory:' for in-memory databases.
60
- * Only applicable when dialect is 'sqlite'.
61
- */
62
- filename?: string;
63
- /**
64
- * MongoDB-specific: the authentication database.
65
- * Only applicable when dialect is 'mongodb'.
66
- */
67
- authSource?: string;
68
- }
69
- /**
70
- * Metadata about a column in a query result.
71
- */
72
- export interface FieldInfo {
73
- name: string;
74
- dataType?: string;
75
- tableId?: number;
76
- }
77
- /**
78
- * Result of a SELECT query.
79
- */
80
- export interface QueryResult<T = Record<string, unknown>> {
81
- /** The rows returned by the query */
82
- rows: T[];
83
- /** Number of rows returned */
84
- rowCount: number;
85
- /** Column metadata */
86
- fields: FieldInfo[];
87
- }
88
- /**
89
- * Result of an INSERT, UPDATE, or DELETE statement.
90
- */
91
- export interface ExecuteResult {
92
- /** Number of rows affected by the statement */
93
- affectedRows: number;
94
- /** The auto-generated ID of the last inserted row (if applicable) */
95
- insertId?: string | number;
96
- }
97
- /**
98
- * A transaction context for executing multiple queries atomically.
99
- */
100
- export interface Transaction {
101
- /** Execute a SELECT query within this transaction */
102
- query<T = Record<string, unknown>>(sql: string, params?: unknown[]): Promise<QueryResult<T>>;
103
- /** Execute an INSERT, UPDATE, or DELETE within this transaction */
104
- execute(sql: string, params?: unknown[]): Promise<ExecuteResult>;
105
- /** Create a savepoint within this transaction */
106
- savepoint(name: string): Promise<void>;
107
- /** Rollback to a specific savepoint */
108
- rollbackTo(name: string): Promise<void>;
109
- /** Explicitly commit this transaction (usually handled automatically) */
110
- commit(): Promise<void>;
111
- /** Explicitly rollback this transaction */
112
- rollback(): Promise<void>;
113
- }
114
- /**
115
- * The contract that every database adapter must implement.
116
- */
117
- export interface DatabaseAdapter {
118
- /** The dialect this adapter handles */
119
- readonly dialect: DatabaseDialect;
120
- /** Establish the database connection / pool */
121
- connect(): Promise<void>;
122
- /** Gracefully close all connections */
123
- disconnect(): Promise<void>;
124
- /** Execute a SELECT query and return typed results */
125
- query<T = Record<string, unknown>>(sql: string, params?: unknown[]): Promise<QueryResult<T>>;
126
- /** Execute an INSERT, UPDATE, or DELETE statement */
127
- execute(sql: string, params?: unknown[]): Promise<ExecuteResult>;
128
- /**
129
- * Execute a series of operations within an atomic transaction.
130
- * The transaction is committed if the callback resolves, rolled back if it rejects.
131
- */
132
- transaction<T>(fn: (tx: Transaction) => Promise<T>): Promise<T>;
133
- /** Check if the database connection is alive and healthy */
134
- isHealthy(): Promise<boolean>;
135
- /** Get the underlying raw client (for advanced use cases) */
136
- getRawClient(): unknown;
137
- }
138
- /**
139
- * Represents a single database migration.
140
- */
141
- export interface Migration {
142
- /** Unique migration name (e.g. '001_create_users_table') */
143
- name: string;
144
- /** Apply the migration */
145
- up(adapter: DatabaseAdapter): Promise<void>;
146
- /** Revert the migration */
147
- down(adapter: DatabaseAdapter): Promise<void>;
148
- }
149
- /**
150
- * Configuration for the built-in migration system.
151
- */
152
- export interface MigrationConfig {
153
- /** Directory containing migration files. Default: './migrations' */
154
- directory?: string;
155
- /** Name of the migrations tracking table. Default: '_exis_migrations' */
156
- tableName?: string;
157
- }
158
- /**
159
- * Record of an applied migration, stored in the tracking table.
160
- */
161
- export interface MigrationRecord {
162
- name: string;
163
- appliedAt: Date;
164
- batch: number;
165
- }
166
- export type WhereOperator = '=' | '!=' | '<' | '>' | '<=' | '>=' | 'LIKE' | 'ILIKE' | 'IN' | 'NOT IN' | 'IS' | 'IS NOT' | 'BETWEEN';
167
- export type OrderDirection = 'asc' | 'desc' | 'ASC' | 'DESC';
168
- export type JoinType = 'INNER' | 'LEFT' | 'RIGHT' | 'FULL';
169
- export interface WhereClause {
170
- column: string;
171
- operator: WhereOperator;
172
- value: unknown;
173
- conjunction: 'AND' | 'OR';
174
- }
175
- export interface JoinClause {
176
- type: JoinType;
177
- table: string;
178
- on: string;
179
- }
180
- export interface OrderByClause {
181
- column: string;
182
- direction: OrderDirection;
183
- }
184
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/database/types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- "use strict";
2
- // ─── Database Layer 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/database/types.ts"],"names":[],"mappings":";AAAA,kFAAkF"}
@@ -1,23 +0,0 @@
1
- export type BatchLoadFn<K, V> = (keys: readonly K[]) => Promise<readonly (V | Error)[]>;
2
- export interface DataloaderOptions<K, C = K> {
3
- cache?: boolean;
4
- maxBatchSize?: number;
5
- cacheKeyFn?: (key: K) => C;
6
- }
7
- export declare class Dataloader<K, V, C = K> {
8
- private batchFn;
9
- private options;
10
- private cacheMap;
11
- private queue;
12
- private dispatchScheduled;
13
- constructor(batchFn: BatchLoadFn<K, V>, options?: DataloaderOptions<K, C>);
14
- private getCacheKey;
15
- load(key: K): Promise<V>;
16
- loadMany(keys: readonly K[]): Promise<V[]>;
17
- clear(key: K): this;
18
- clearAll(): this;
19
- prime(key: K, value: V | Error): this;
20
- private dispatch;
21
- private dispatchBatch;
22
- }
23
- //# sourceMappingURL=dataloader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dataloader.d.ts","sourceRoot":"","sources":["../../src/dataloader/dataloader.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI,CAC9B,IAAI,EAAE,SAAS,CAAC,EAAE,KACf,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,CAAA;AAEpC,MAAM,WAAW,iBAAiB,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC;IACzC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAA;CAC3B;AAED,qBAAa,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC;IAU/B,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,OAAO;IAVjB,OAAO,CAAC,QAAQ,CAA2B;IAC3C,OAAO,CAAC,KAAK,CAIL;IACR,OAAO,CAAC,iBAAiB,CAAQ;gBAGvB,OAAO,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EAC1B,OAAO,GAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAM;IAG/C,OAAO,CAAC,WAAW;IAWnB,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAwBxB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAI1C,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI;IAKnB,QAAQ,IAAI,IAAI;IAKhB,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,IAAI;YAUvB,QAAQ;YAgBR,aAAa;CA6B5B"}
@@ -1,98 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Dataloader = void 0;
4
- class Dataloader {
5
- constructor(batchFn, options = {}) {
6
- this.batchFn = batchFn;
7
- this.options = options;
8
- this.cacheMap = new Map();
9
- this.queue = [];
10
- this.dispatchScheduled = false;
11
- }
12
- getCacheKey(key) {
13
- if (this.options.cacheKeyFn) {
14
- return this.options.cacheKeyFn(key);
15
- }
16
- // Default fallback: if key is an object, stringify it to prevent reference-equality cache misses
17
- if (typeof key === 'object' && key !== null) {
18
- return JSON.stringify(key);
19
- }
20
- return key;
21
- }
22
- load(key) {
23
- const shouldCache = this.options.cache !== false;
24
- const cacheKey = this.getCacheKey(key);
25
- if (shouldCache && this.cacheMap.has(cacheKey)) {
26
- return this.cacheMap.get(cacheKey);
27
- }
28
- const promise = new Promise((resolve, reject) => {
29
- this.queue.push({ key, resolve, reject });
30
- });
31
- if (shouldCache) {
32
- this.cacheMap.set(cacheKey, promise);
33
- }
34
- if (!this.dispatchScheduled) {
35
- this.dispatchScheduled = true;
36
- process.nextTick(() => this.dispatch());
37
- }
38
- return promise;
39
- }
40
- loadMany(keys) {
41
- return Promise.all(keys.map((key) => this.load(key)));
42
- }
43
- clear(key) {
44
- this.cacheMap.delete(this.getCacheKey(key));
45
- return this;
46
- }
47
- clearAll() {
48
- this.cacheMap.clear();
49
- return this;
50
- }
51
- prime(key, value) {
52
- const cacheKey = this.getCacheKey(key);
53
- if (!this.cacheMap.has(cacheKey)) {
54
- const promise = value instanceof Error ? Promise.reject(value) : Promise.resolve(value);
55
- this.cacheMap.set(cacheKey, promise);
56
- }
57
- return this;
58
- }
59
- async dispatch() {
60
- this.dispatchScheduled = false;
61
- const queue = this.queue;
62
- this.queue = [];
63
- if (queue.length === 0)
64
- return;
65
- const maxBatchSize = this.options.maxBatchSize || 1000;
66
- // Split into batches if needed
67
- for (let i = 0; i < queue.length; i += maxBatchSize) {
68
- const batch = queue.slice(i, i + maxBatchSize);
69
- this.dispatchBatch(batch);
70
- }
71
- }
72
- async dispatchBatch(batch) {
73
- const keys = batch.map((q) => q.key);
74
- try {
75
- const results = await this.batchFn(keys);
76
- if (!Array.isArray(results) || results.length !== keys.length) {
77
- throw new Error('Dataloader batch function must return an array of the same length as the keys array');
78
- }
79
- for (let i = 0; i < batch.length; i++) {
80
- const result = results[i];
81
- if (result instanceof Error) {
82
- batch[i].reject(result);
83
- }
84
- else {
85
- batch[i].resolve(result);
86
- }
87
- }
88
- }
89
- catch (err) {
90
- const error = err instanceof Error ? err : new Error(String(err));
91
- for (const q of batch) {
92
- q.reject(error);
93
- }
94
- }
95
- }
96
- }
97
- exports.Dataloader = Dataloader;
98
- //# sourceMappingURL=dataloader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dataloader.js","sourceRoot":"","sources":["../../src/dataloader/dataloader.ts"],"names":[],"mappings":";;;AAUA,MAAa,UAAU;IASrB,YACU,OAA0B,EAC1B,UAAmC,EAAE;QADrC,YAAO,GAAP,OAAO,CAAmB;QAC1B,YAAO,GAAP,OAAO,CAA8B;QAVvC,aAAQ,GAAG,IAAI,GAAG,EAAiB,CAAA;QACnC,UAAK,GAIP,EAAE,CAAA;QACA,sBAAiB,GAAG,KAAK,CAAA;IAK9B,CAAC;IAEI,WAAW,CAAC,GAAM;QACxB,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACrC,CAAC;QACD,iGAAiG;QACjG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAiB,CAAA;QAC5C,CAAC;QACD,OAAO,GAAmB,CAAA;IAC5B,CAAC;IAED,IAAI,CAAC,GAAM;QACT,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,CAAA;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QAEtC,IAAI,WAAW,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAA;QACrC,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACjD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;QAC3C,CAAC,CAAC,CAAA;QAEF,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QACtC,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAA;YAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QACzC,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,QAAQ,CAAC,IAAkB;QACzB,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC;IAED,KAAK,CAAC,GAAM;QACV,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAA;QAC3C,OAAO,IAAI,CAAA;IACb,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;QACrB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,GAAM,EAAE,KAAgB;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QACtC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjC,MAAM,OAAO,GACX,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YACzE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QACtC,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,KAAK,CAAC,QAAQ;QACpB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAA;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACxB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;QAEf,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QAE9B,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,IAAI,CAAA;QAEtD,+BAA+B;QAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,YAAY,EAAE,CAAC;YACpD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,CAAA;YAC9C,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAC3B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CACzB,KAA4E;QAE5E,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QAEpC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YAExC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC9D,MAAM,IAAI,KAAK,CACb,qFAAqF,CACtF,CAAA;YACH,CAAC;YAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACtC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;gBACzB,IAAI,MAAM,YAAY,KAAK,EAAE,CAAC;oBAC5B,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;gBACzB,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAW,CAAC,CAAA;gBAC/B,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;YACjE,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;gBACtB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACjB,CAAC;QACH,CAAC;IACH,CAAC;CACF;AAtHD,gCAsHC"}
@@ -1,3 +0,0 @@
1
- export * from './dataloader';
2
- export * from './registry';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dataloader/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA"}
@@ -1,19 +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
- __exportStar(require("./dataloader"), exports);
18
- __exportStar(require("./registry"), exports);
19
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dataloader/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAC5B,6CAA0B"}
@@ -1,17 +0,0 @@
1
- import type { Dataloader } from './dataloader';
2
- /**
3
- * Defines a registry of per-request Dataloaders securely bound to the Exis context.
4
- */
5
- export declare function defineLoaders<T extends Record<string, () => Dataloader<any, any>>>(factories: T): {
6
- /**
7
- * Middleware that lazy-initializes all loaders into the current request context.
8
- * Register this globally or on a gateway.
9
- */
10
- loaderMiddleware: (req: any, res: any, next: any) => void;
11
- /**
12
- * Strongly-typed hook to retrieve the isolated loaders anywhere in the codebase
13
- * without needing to pass the req object.
14
- */
15
- getLoaders: () => { [K in keyof T]: ReturnType<T[K]>; };
16
- };
17
- //# sourceMappingURL=registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/dataloader/registry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAE9C;;GAEG;AACH,wBAAgB,aAAa,CAC3B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EACpD,SAAS,EAAE,CAAC;IAEV;;;OAGG;4BACqB,GAAG,OAAO,GAAG,QAAQ,GAAG;IAsBhD;;;OAGG;yBAGa,CAAC;EAWpB"}
@@ -1,47 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.defineLoaders = defineLoaders;
4
- const context_1 = require("../server/context");
5
- /**
6
- * Defines a registry of per-request Dataloaders securely bound to the Exis context.
7
- */
8
- function defineLoaders(factories) {
9
- return {
10
- /**
11
- * Middleware that lazy-initializes all loaders into the current request context.
12
- * Register this globally or on a gateway.
13
- */
14
- loaderMiddleware: (req, res, next) => {
15
- const instances = {};
16
- // We lazily instantiate the loaders so we don't pay the penalty
17
- // if a specific loader isn't used in this request.
18
- for (const key of Object.keys(factories)) {
19
- Object.defineProperty(instances, key, {
20
- get: () => {
21
- if (!instances[`_${key}`]) {
22
- instances[`_${key}`] = factories[key]();
23
- }
24
- return instances[`_${key}`];
25
- },
26
- enumerable: true,
27
- });
28
- }
29
- (0, context_1.setContext)('loaders', instances);
30
- if (next)
31
- next();
32
- },
33
- /**
34
- * Strongly-typed hook to retrieve the isolated loaders anywhere in the codebase
35
- * without needing to pass the req object.
36
- */
37
- getLoaders: () => {
38
- const state = (0, context_1.getContext)();
39
- if (!state || !state.loaders) {
40
- throw new Error('getLoaders() was called, but the loaderMiddleware is not registered. ' +
41
- 'Please ensure loaderMiddleware is added to your app or gateway.');
42
- }
43
- return state.loaders;
44
- },
45
- };
46
- }
47
- //# sourceMappingURL=registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/dataloader/registry.ts"],"names":[],"mappings":";;AAMA,sCA+CC;AArDD,+CAA0D;AAG1D;;GAEG;AACH,SAAgB,aAAa,CAE3B,SAAY;IACZ,OAAO;QACL;;;WAGG;QACH,gBAAgB,EAAE,CAAC,GAAQ,EAAE,GAAQ,EAAE,IAAS,EAAE,EAAE;YAClD,MAAM,SAAS,GAAG,EAAS,CAAA;YAE3B,gEAAgE;YAChE,mDAAmD;YACnD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBACzC,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE;oBACpC,GAAG,EAAE,GAAG,EAAE;wBACR,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC;4BAC1B,SAAS,CAAC,IAAI,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAAA;wBACzC,CAAC;wBACD,OAAO,SAAS,CAAC,IAAI,GAAG,EAAE,CAAC,CAAA;oBAC7B,CAAC;oBACD,UAAU,EAAE,IAAI;iBACjB,CAAC,CAAA;YACJ,CAAC;YAED,IAAA,oBAAU,EAAC,SAAS,EAAE,SAAS,CAAC,CAAA;YAEhC,IAAI,IAAI;gBAAE,IAAI,EAAE,CAAA;QAClB,CAAC;QAED;;;WAGG;QACH,UAAU,EAAE,GAAG,EAAE;YACf,MAAM,KAAK,GAAG,IAAA,oBAAU,GAEpB,CAAA;YACJ,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC7B,MAAM,IAAI,KAAK,CACb,uEAAuE;oBACrE,iEAAiE,CACpE,CAAA;YACH,CAAC;YACD,OAAO,KAAK,CAAC,OAAO,CAAA;QACtB,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function generateDependencyGraph(apiDir: string, cwd: string): Promise<Map<string, Set<string>>>;
2
- //# sourceMappingURL=dep-graph.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dep-graph.d.ts","sourceRoot":"","sources":["../../src/dev/dep-graph.ts"],"names":[],"mappings":"AAIA,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CA+BnC"}