alepha 0.22.0 → 0.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (869) hide show
  1. package/assets/swagger-ui/swagger-ui-bundle.js +1 -1
  2. package/assets/swagger-ui/swagger-ui-standalone-preset.js +1 -1
  3. package/dist/api/audits/index.browser.js +49 -52
  4. package/dist/api/audits/index.browser.js.map +1 -1
  5. package/dist/api/audits/index.d.ts +629 -565
  6. package/dist/api/audits/index.d.ts.map +1 -1
  7. package/dist/api/audits/index.js +206 -98
  8. package/dist/api/audits/index.js.map +1 -1
  9. package/dist/api/files/index.browser.js +44 -44
  10. package/dist/api/files/index.browser.js.map +1 -1
  11. package/dist/api/files/index.d.ts +292 -293
  12. package/dist/api/files/index.d.ts.map +1 -1
  13. package/dist/api/files/index.js +61 -64
  14. package/dist/api/files/index.js.map +1 -1
  15. package/dist/api/jobs/index.browser.js +61 -59
  16. package/dist/api/jobs/index.browser.js.map +1 -1
  17. package/dist/api/jobs/index.d.ts +546 -347
  18. package/dist/api/jobs/index.d.ts.map +1 -1
  19. package/dist/api/jobs/index.js +165 -86
  20. package/dist/api/jobs/index.js.map +1 -1
  21. package/dist/api/keys/index.d.ts +242 -230
  22. package/dist/api/keys/index.d.ts.map +1 -1
  23. package/dist/api/keys/index.js +63 -66
  24. package/dist/api/keys/index.js.map +1 -1
  25. package/dist/api/notifications/index.browser.js +40 -38
  26. package/dist/api/notifications/index.browser.js.map +1 -1
  27. package/dist/api/notifications/index.d.ts +339 -209
  28. package/dist/api/notifications/index.d.ts.map +1 -1
  29. package/dist/api/notifications/index.js +108 -60
  30. package/dist/api/notifications/index.js.map +1 -1
  31. package/dist/api/oauth/index.d.ts +190 -78
  32. package/dist/api/oauth/index.d.ts.map +1 -1
  33. package/dist/api/oauth/index.js +290 -68
  34. package/dist/api/oauth/index.js.map +1 -1
  35. package/dist/api/organizations/index.browser.js +14 -14
  36. package/dist/api/organizations/index.browser.js.map +1 -1
  37. package/dist/api/organizations/index.d.ts +158 -134
  38. package/dist/api/organizations/index.d.ts.map +1 -1
  39. package/dist/api/organizations/index.js +18 -18
  40. package/dist/api/organizations/index.js.map +1 -1
  41. package/dist/api/parameters/index.browser.js +74 -53
  42. package/dist/api/parameters/index.browser.js.map +1 -1
  43. package/dist/api/parameters/index.d.ts +607 -513
  44. package/dist/api/parameters/index.d.ts.map +1 -1
  45. package/dist/api/parameters/index.js +205 -127
  46. package/dist/api/parameters/index.js.map +1 -1
  47. package/dist/api/payments/index.d.ts +652 -449
  48. package/dist/api/payments/index.d.ts.map +1 -1
  49. package/dist/api/payments/index.js +159 -93
  50. package/dist/api/payments/index.js.map +1 -1
  51. package/dist/api/subscriptions/index.d.ts +1032 -762
  52. package/dist/api/subscriptions/index.d.ts.map +1 -1
  53. package/dist/api/subscriptions/index.js +166 -185
  54. package/dist/api/subscriptions/index.js.map +1 -1
  55. package/dist/api/users/index.browser.js +48 -71
  56. package/dist/api/users/index.browser.js.map +1 -1
  57. package/dist/api/users/index.d.ts +1297 -1109
  58. package/dist/api/users/index.d.ts.map +1 -1
  59. package/dist/api/users/index.js +454 -369
  60. package/dist/api/users/index.js.map +1 -1
  61. package/dist/api/verifications/index.browser.js +17 -17
  62. package/dist/api/verifications/index.browser.js.map +1 -1
  63. package/dist/api/verifications/index.d.ts +169 -157
  64. package/dist/api/verifications/index.d.ts.map +1 -1
  65. package/dist/api/verifications/index.js +47 -95
  66. package/dist/api/verifications/index.js.map +1 -1
  67. package/dist/background/index.d.ts +0 -1
  68. package/dist/background/index.d.ts.map +1 -1
  69. package/dist/background/index.js.map +1 -1
  70. package/dist/background/index.workerd.js.map +1 -1
  71. package/dist/batch/index.d.ts +0 -1
  72. package/dist/batch/index.d.ts.map +1 -1
  73. package/dist/batch/index.js.map +1 -1
  74. package/dist/bin/index.js +1 -1
  75. package/dist/bin/index.js.map +1 -1
  76. package/dist/bucket/index.d.ts +27 -32
  77. package/dist/bucket/index.d.ts.map +1 -1
  78. package/dist/bucket/index.js +56 -26
  79. package/dist/bucket/index.js.map +1 -1
  80. package/dist/bucket/index.workerd.js +52 -24
  81. package/dist/bucket/index.workerd.js.map +1 -1
  82. package/dist/cache/core/index.d.ts +4 -6
  83. package/dist/cache/core/index.d.ts.map +1 -1
  84. package/dist/cache/core/index.js +4 -10
  85. package/dist/cache/core/index.js.map +1 -1
  86. package/dist/cache/core/index.workerd.js +4 -10
  87. package/dist/cache/core/index.workerd.js.map +1 -1
  88. package/dist/cache/database/index.d.ts +22 -23
  89. package/dist/cache/database/index.d.ts.map +1 -1
  90. package/dist/cache/database/index.js +11 -20
  91. package/dist/cache/database/index.js.map +1 -1
  92. package/dist/cache/redis/index.d.ts +3 -4
  93. package/dist/cache/redis/index.d.ts.map +1 -1
  94. package/dist/cache/redis/index.js +2 -2
  95. package/dist/cache/redis/index.js.map +1 -1
  96. package/dist/captcha/index.d.ts.map +1 -1
  97. package/dist/captcha/index.js +4 -4
  98. package/dist/captcha/index.js.map +1 -1
  99. package/dist/cli/config/index.d.ts +0 -1
  100. package/dist/cli/config/index.d.ts.map +1 -1
  101. package/dist/cli/core/index.d.ts +244 -475
  102. package/dist/cli/core/index.d.ts.map +1 -1
  103. package/dist/cli/core/index.js +308 -383
  104. package/dist/cli/core/index.js.map +1 -1
  105. package/dist/cli/devtools/index.d.ts +3 -9
  106. package/dist/cli/devtools/index.d.ts.map +1 -1
  107. package/dist/cli/devtools/index.js +3 -3
  108. package/dist/cli/devtools/index.js.map +1 -1
  109. package/dist/cli/i18n/index.d.ts +20 -39
  110. package/dist/cli/i18n/index.d.ts.map +1 -1
  111. package/dist/cli/i18n/index.js +51 -17
  112. package/dist/cli/i18n/index.js.map +1 -1
  113. package/dist/cli/platform/index.d.ts +89 -82
  114. package/dist/cli/platform/index.d.ts.map +1 -1
  115. package/dist/cli/platform/index.js +27 -33
  116. package/dist/cli/platform/index.js.map +1 -1
  117. package/dist/cli/platform-lib/index.d.ts +383 -410
  118. package/dist/cli/platform-lib/index.d.ts.map +1 -1
  119. package/dist/cli/platform-lib/index.js +300 -258
  120. package/dist/cli/platform-lib/index.js.map +1 -1
  121. package/dist/cli/vendor/index.d.ts +17 -41
  122. package/dist/cli/vendor/index.d.ts.map +1 -1
  123. package/dist/cli/vendor/index.js +10 -13
  124. package/dist/cli/vendor/index.js.map +1 -1
  125. package/dist/command/index.d.ts +82 -194
  126. package/dist/command/index.d.ts.map +1 -1
  127. package/dist/command/index.js +160 -563
  128. package/dist/command/index.js.map +1 -1
  129. package/dist/core/index.browser.js +845 -859
  130. package/dist/core/index.browser.js.map +1 -1
  131. package/dist/core/index.d.ts +787 -527
  132. package/dist/core/index.d.ts.map +1 -1
  133. package/dist/core/index.js +845 -859
  134. package/dist/core/index.js.map +1 -1
  135. package/dist/core/index.native.js +845 -859
  136. package/dist/core/index.native.js.map +1 -1
  137. package/dist/core/index.workerd.js +845 -859
  138. package/dist/core/index.workerd.js.map +1 -1
  139. package/dist/crypto/index.browser.js +1 -1
  140. package/dist/crypto/index.browser.js.map +1 -1
  141. package/dist/crypto/index.d.ts +3 -4
  142. package/dist/crypto/index.d.ts.map +1 -1
  143. package/dist/crypto/index.js +6 -3
  144. package/dist/crypto/index.js.map +1 -1
  145. package/dist/datetime/index.d.ts +12 -2
  146. package/dist/datetime/index.d.ts.map +1 -1
  147. package/dist/datetime/index.js +6 -1
  148. package/dist/datetime/index.js.map +1 -1
  149. package/dist/email/brevo/index.d.ts +0 -1
  150. package/dist/email/brevo/index.d.ts.map +1 -1
  151. package/dist/email/brevo/index.js +4 -4
  152. package/dist/email/brevo/index.js.map +1 -1
  153. package/dist/email/cloudflare/index.d.ts +0 -1
  154. package/dist/email/cloudflare/index.d.ts.map +1 -1
  155. package/dist/email/cloudflare/index.js +2 -2
  156. package/dist/email/cloudflare/index.js.map +1 -1
  157. package/dist/email/core/index.d.ts +15 -7
  158. package/dist/email/core/index.d.ts.map +1 -1
  159. package/dist/email/core/index.js +14 -5
  160. package/dist/email/core/index.js.map +1 -1
  161. package/dist/email/core/index.workerd.js +5 -1
  162. package/dist/email/core/index.workerd.js.map +1 -1
  163. package/dist/email/smtp/index.d.ts +8 -9
  164. package/dist/email/smtp/index.d.ts.map +1 -1
  165. package/dist/email/smtp/index.js +702 -479
  166. package/dist/email/smtp/index.js.map +1 -1
  167. package/dist/fake/index.d.ts +1580 -1238
  168. package/dist/fake/index.d.ts.map +1 -1
  169. package/dist/fake/index.js +11728 -32131
  170. package/dist/fake/index.js.map +1 -1
  171. package/dist/lock/core/index.d.ts +13 -9
  172. package/dist/lock/core/index.d.ts.map +1 -1
  173. package/dist/lock/core/index.js +5 -5
  174. package/dist/lock/core/index.js.map +1 -1
  175. package/dist/lock/redis/index.d.ts +0 -1
  176. package/dist/lock/redis/index.d.ts.map +1 -1
  177. package/dist/lock/redis/index.js.map +1 -1
  178. package/dist/logger/index.d.ts +81 -69
  179. package/dist/logger/index.d.ts.map +1 -1
  180. package/dist/logger/index.js +123 -56
  181. package/dist/logger/index.js.map +1 -1
  182. package/dist/mcp/index.d.ts +36 -90
  183. package/dist/mcp/index.d.ts.map +1 -1
  184. package/dist/mcp/index.js +65 -70
  185. package/dist/mcp/index.js.map +1 -1
  186. package/dist/orm/core/index.browser.js +54 -40
  187. package/dist/orm/core/index.browser.js.map +1 -1
  188. package/dist/orm/core/index.bun.js +140 -106
  189. package/dist/orm/core/index.bun.js.map +1 -1
  190. package/dist/orm/core/index.d.ts +145 -150
  191. package/dist/orm/core/index.d.ts.map +1 -1
  192. package/dist/orm/core/index.js +144 -109
  193. package/dist/orm/core/index.js.map +1 -1
  194. package/dist/orm/postgres/index.bun.js +64 -54
  195. package/dist/orm/postgres/index.bun.js.map +1 -1
  196. package/dist/orm/postgres/index.d.ts +36 -76
  197. package/dist/orm/postgres/index.d.ts.map +1 -1
  198. package/dist/orm/postgres/index.js +67 -57
  199. package/dist/orm/postgres/index.js.map +1 -1
  200. package/dist/queue/core/index.d.ts +62 -75
  201. package/dist/queue/core/index.d.ts.map +1 -1
  202. package/dist/queue/core/index.js +48 -71
  203. package/dist/queue/core/index.js.map +1 -1
  204. package/dist/queue/core/index.workerd.js +48 -71
  205. package/dist/queue/core/index.workerd.js.map +1 -1
  206. package/dist/queue/redis/index.d.ts +3 -4
  207. package/dist/queue/redis/index.d.ts.map +1 -1
  208. package/dist/queue/redis/index.js +2 -2
  209. package/dist/queue/redis/index.js.map +1 -1
  210. package/dist/react/auth/index.browser.js.map +1 -1
  211. package/dist/react/auth/index.d.ts +7 -4
  212. package/dist/react/auth/index.d.ts.map +1 -1
  213. package/dist/react/auth/index.js.map +1 -1
  214. package/dist/react/core/index.d.ts +87 -5
  215. package/dist/react/core/index.d.ts.map +1 -1
  216. package/dist/react/core/index.js +170 -23
  217. package/dist/react/core/index.js.map +1 -1
  218. package/dist/react/form/index.d.ts +4 -6
  219. package/dist/react/form/index.d.ts.map +1 -1
  220. package/dist/react/form/index.js +107 -71
  221. package/dist/react/form/index.js.map +1 -1
  222. package/dist/react/head/index.browser.js.map +1 -1
  223. package/dist/react/head/index.d.ts +0 -1
  224. package/dist/react/head/index.d.ts.map +1 -1
  225. package/dist/react/head/index.js.map +1 -1
  226. package/dist/react/i18n/index.d.ts +47 -5
  227. package/dist/react/i18n/index.d.ts.map +1 -1
  228. package/dist/react/i18n/index.js +116 -12
  229. package/dist/react/i18n/index.js.map +1 -1
  230. package/dist/react/intro/index.d.ts +1 -4
  231. package/dist/react/intro/index.d.ts.map +1 -1
  232. package/dist/react/intro/index.js.map +1 -1
  233. package/dist/react/router/index.browser.js +188 -29
  234. package/dist/react/router/index.browser.js.map +1 -1
  235. package/dist/react/router/index.d.ts +480 -372
  236. package/dist/react/router/index.d.ts.map +1 -1
  237. package/dist/react/router/index.js +261 -47
  238. package/dist/react/router/index.js.map +1 -1
  239. package/dist/react/sitemap/index.browser.js +35 -0
  240. package/dist/react/sitemap/index.browser.js.map +1 -0
  241. package/dist/react/sitemap/index.d.ts +91 -0
  242. package/dist/react/sitemap/index.d.ts.map +1 -0
  243. package/dist/react/sitemap/index.js +131 -0
  244. package/dist/react/sitemap/index.js.map +1 -0
  245. package/dist/react/testing/index.d.ts +4 -5
  246. package/dist/react/testing/index.d.ts.map +1 -1
  247. package/dist/react/testing/index.js +41 -15
  248. package/dist/react/testing/index.js.map +1 -1
  249. package/dist/react/testing/{chunk-BpyX8vjI.js → rolldown-runtime-Bl3dcgcQ.js} +1 -1
  250. package/dist/react/ui/index.d.ts +35 -34
  251. package/dist/react/ui/index.d.ts.map +1 -1
  252. package/dist/react/ui/index.js +12 -17
  253. package/dist/react/ui/index.js.map +1 -1
  254. package/dist/redis/index.bun.js +5 -5
  255. package/dist/redis/index.bun.js.map +1 -1
  256. package/dist/redis/index.d.ts +6 -7
  257. package/dist/redis/index.d.ts.map +1 -1
  258. package/dist/redis/index.js +6 -6
  259. package/dist/redis/index.js.map +1 -1
  260. package/dist/retry/index.d.ts +0 -1
  261. package/dist/retry/index.d.ts.map +1 -1
  262. package/dist/retry/index.js.map +1 -1
  263. package/dist/router/index.d.ts.map +1 -1
  264. package/dist/router/index.js.map +1 -1
  265. package/dist/scheduler/index.d.ts +4 -12
  266. package/dist/scheduler/index.d.ts.map +1 -1
  267. package/dist/scheduler/index.js +9 -4
  268. package/dist/scheduler/index.js.map +1 -1
  269. package/dist/scheduler/index.workerd.js +9 -4
  270. package/dist/scheduler/index.workerd.js.map +1 -1
  271. package/dist/security/index.browser.js +30 -28
  272. package/dist/security/index.browser.js.map +1 -1
  273. package/dist/security/index.d.ts +113 -44
  274. package/dist/security/index.d.ts.map +1 -1
  275. package/dist/security/index.js +452 -37
  276. package/dist/security/index.js.map +1 -1
  277. package/dist/server/auth/index.browser.js +19 -19
  278. package/dist/server/auth/index.browser.js.map +1 -1
  279. package/dist/server/auth/index.d.ts +215 -187
  280. package/dist/server/auth/index.d.ts.map +1 -1
  281. package/dist/server/auth/index.js +1145 -86
  282. package/dist/server/auth/index.js.map +1 -1
  283. package/dist/server/cookies/index.browser.js +103 -5
  284. package/dist/server/cookies/index.browser.js.map +1 -1
  285. package/dist/server/cookies/index.d.ts +86 -4
  286. package/dist/server/cookies/index.d.ts.map +1 -1
  287. package/dist/server/cookies/index.js +121 -8
  288. package/dist/server/cookies/index.js.map +1 -1
  289. package/dist/server/core/index.browser.js +22 -27
  290. package/dist/server/core/index.browser.js.map +1 -1
  291. package/dist/server/core/index.d.ts +134 -85
  292. package/dist/server/core/index.d.ts.map +1 -1
  293. package/dist/server/core/index.js +130 -118
  294. package/dist/server/core/index.js.map +1 -1
  295. package/dist/server/cors/index.d.ts +9 -10
  296. package/dist/server/cors/index.d.ts.map +1 -1
  297. package/dist/server/cors/index.js +14 -26
  298. package/dist/server/cors/index.js.map +1 -1
  299. package/dist/server/etag/index.d.ts +2 -3
  300. package/dist/server/etag/index.d.ts.map +1 -1
  301. package/dist/server/etag/index.js.map +1 -1
  302. package/dist/server/health/index.d.ts +18 -19
  303. package/dist/server/health/index.d.ts.map +1 -1
  304. package/dist/server/health/index.js +6 -6
  305. package/dist/server/health/index.js.map +1 -1
  306. package/dist/server/links/index.browser.js +15 -18
  307. package/dist/server/links/index.browser.js.map +1 -1
  308. package/dist/server/links/index.d.ts +66 -67
  309. package/dist/server/links/index.d.ts.map +1 -1
  310. package/dist/server/links/index.js +29 -32
  311. package/dist/server/links/index.js.map +1 -1
  312. package/dist/server/metrics/index.d.ts +0 -1
  313. package/dist/server/metrics/index.d.ts.map +1 -1
  314. package/dist/server/metrics/index.js +10 -3
  315. package/dist/server/metrics/index.js.map +1 -1
  316. package/dist/server/proxy/index.d.ts +0 -1
  317. package/dist/server/proxy/index.d.ts.map +1 -1
  318. package/dist/server/proxy/index.js.map +1 -1
  319. package/dist/server/rate-limit/index.d.ts +8 -9
  320. package/dist/server/rate-limit/index.d.ts.map +1 -1
  321. package/dist/server/rate-limit/index.js +6 -12
  322. package/dist/server/rate-limit/index.js.map +1 -1
  323. package/dist/server/static/index.d.ts +0 -1
  324. package/dist/server/static/index.d.ts.map +1 -1
  325. package/dist/server/static/index.js.map +1 -1
  326. package/dist/server/swagger/index.d.ts +4 -4
  327. package/dist/server/swagger/index.d.ts.map +1 -1
  328. package/dist/server/swagger/index.js +37 -25
  329. package/dist/server/swagger/index.js.map +1 -1
  330. package/dist/sms/index.d.ts +0 -1
  331. package/dist/sms/index.d.ts.map +1 -1
  332. package/dist/sms/index.js.map +1 -1
  333. package/dist/system/index.browser.js.map +1 -1
  334. package/dist/system/index.d.ts +0 -1
  335. package/dist/system/index.d.ts.map +1 -1
  336. package/dist/system/index.js +2 -1
  337. package/dist/system/index.js.map +1 -1
  338. package/dist/system/index.workerd.js.map +1 -1
  339. package/dist/topic/core/index.d.ts +19 -20
  340. package/dist/topic/core/index.d.ts.map +1 -1
  341. package/dist/topic/core/index.js +8 -8
  342. package/dist/topic/core/index.js.map +1 -1
  343. package/dist/topic/redis/index.d.ts +3 -4
  344. package/dist/topic/redis/index.d.ts.map +1 -1
  345. package/dist/topic/redis/index.js +2 -2
  346. package/dist/topic/redis/index.js.map +1 -1
  347. package/package.json +36 -36
  348. package/src/api/audits/__tests__/AuditJobs.spec.ts +83 -0
  349. package/src/api/audits/__tests__/AuditService.spec.ts +139 -1
  350. package/src/api/audits/controllers/AdminAuditController.ts +41 -41
  351. package/src/api/audits/entities/audits.ts +22 -22
  352. package/src/api/audits/index.ts +6 -1
  353. package/src/api/audits/jobs/AuditJobs.ts +29 -0
  354. package/src/api/audits/parameters/AuditParameters.ts +51 -0
  355. package/src/api/audits/primitives/$audit.ts +24 -0
  356. package/src/api/audits/schemas/auditQuerySchema.ts +13 -13
  357. package/src/api/audits/schemas/createAuditSchema.ts +18 -18
  358. package/src/api/audits/services/AuditService.ts +79 -7
  359. package/src/api/files/__tests__/FileController.spec.ts +5 -5
  360. package/src/api/files/__tests__/FileJobs.spec.ts +6 -0
  361. package/src/api/files/controllers/FileController.ts +25 -25
  362. package/src/api/files/entities/files.ts +15 -15
  363. package/src/api/files/schemas/fileCreatorSummarySchema.ts +7 -7
  364. package/src/api/files/schemas/fileQuerySchema.ts +9 -9
  365. package/src/api/files/schemas/fileResourceSchema.ts +7 -9
  366. package/src/api/files/schemas/storageStatsSchema.ts +13 -13
  367. package/src/api/jobs/__tests__/$job-hardening.spec.ts +289 -0
  368. package/src/api/jobs/__tests__/$job.spec.ts +18 -18
  369. package/src/api/jobs/controllers/AdminJobController.ts +8 -8
  370. package/src/api/jobs/entities/jobExecutionEntity.ts +29 -19
  371. package/src/api/jobs/providers/JobProvider.ts +128 -12
  372. package/src/api/jobs/providers/JobQueueProvider.ts +2 -2
  373. package/src/api/jobs/schemas/jobConfigAtom.ts +22 -22
  374. package/src/api/jobs/schemas/jobExecutionQuerySchema.ts +6 -6
  375. package/src/api/jobs/schemas/jobExecutionResourceSchema.ts +11 -15
  376. package/src/api/jobs/schemas/jobRegistrationSchema.ts +20 -19
  377. package/src/api/jobs/schemas/triggerJobSchema.ts +3 -3
  378. package/src/api/jobs/services/JobService.ts +6 -6
  379. package/src/api/keys/__tests__/ApiKeyService.spec.ts +2 -2
  380. package/src/api/keys/controllers/AdminApiKeyController.ts +10 -10
  381. package/src/api/keys/entities/apiKeyEntity.ts +15 -15
  382. package/src/api/keys/schemas/adminApiKeyQuerySchema.ts +4 -4
  383. package/src/api/keys/schemas/adminApiKeyResourceSchema.ts +15 -15
  384. package/src/api/keys/schemas/createApiKeyBodySchema.ts +5 -5
  385. package/src/api/keys/schemas/createApiKeyResponseSchema.ts +9 -9
  386. package/src/api/keys/schemas/listApiKeyResponseSchema.ts +13 -13
  387. package/src/api/keys/schemas/revokeApiKeyParamsSchema.ts +3 -3
  388. package/src/api/keys/schemas/revokeApiKeyResponseSchema.ts +3 -3
  389. package/src/api/notifications/__tests__/AlephaApiNotifications.spec.ts +2 -2
  390. package/src/api/notifications/controllers/AdminNotificationController.ts +38 -14
  391. package/src/api/notifications/jobs/NotificationJobs.ts +7 -6
  392. package/src/api/notifications/primitives/$notification.ts +43 -4
  393. package/src/api/notifications/schemas/notificationContactPreferencesSchema.ts +4 -4
  394. package/src/api/notifications/schemas/notificationContactSchema.ts +7 -7
  395. package/src/api/notifications/schemas/notificationDetailResourceSchema.ts +9 -11
  396. package/src/api/notifications/schemas/notificationPayloadSchema.ts +11 -9
  397. package/src/api/notifications/schemas/notificationQuerySchema.ts +6 -6
  398. package/src/api/notifications/schemas/notificationResourceSchema.ts +14 -14
  399. package/src/api/notifications/services/NotificationSenderService.ts +38 -2
  400. package/src/api/oauth/__tests__/OAuthClientService.spec.ts +42 -0
  401. package/src/api/oauth/__tests__/OAuthController.spec.ts +128 -0
  402. package/src/api/oauth/controllers/OAuthController.ts +132 -12
  403. package/src/api/oauth/entities/oauthClientEntity.ts +29 -12
  404. package/src/api/oauth/helpers/oauthMetadata.ts +1 -0
  405. package/src/api/oauth/helpers/oidcMetadata.ts +19 -0
  406. package/src/api/oauth/index.ts +1 -0
  407. package/src/api/oauth/schemas/authorizeDecisionBodySchema.ts +12 -11
  408. package/src/api/oauth/schemas/authorizeQuerySchema.ts +12 -10
  409. package/src/api/oauth/schemas/registerClientBodySchema.ts +10 -11
  410. package/src/api/oauth/schemas/tokenRequestBodySchema.ts +9 -8
  411. package/src/api/oauth/services/OAuthClientService.ts +228 -15
  412. package/src/api/organizations/controllers/AdminOrganizationController.ts +8 -8
  413. package/src/api/organizations/entities/organizations.ts +6 -6
  414. package/src/api/organizations/schemas/createOrganizationSchema.ts +5 -5
  415. package/src/api/organizations/schemas/organizationQuerySchema.ts +4 -4
  416. package/src/api/organizations/schemas/updateOrganizationSchema.ts +1 -2
  417. package/src/api/parameters/__tests__/$parameter.spec.ts +229 -50
  418. package/src/api/parameters/controllers/AdminParameterController.ts +9 -12
  419. package/src/api/parameters/entities/parameters.ts +29 -16
  420. package/src/api/parameters/primitives/$parameter.ts +3 -3
  421. package/src/api/parameters/schemas/activateParameterBodySchema.ts +4 -4
  422. package/src/api/parameters/schemas/createParameterVersionBodySchema.ts +15 -15
  423. package/src/api/parameters/schemas/parameterCreatorSummarySchema.ts +7 -7
  424. package/src/api/parameters/schemas/parameterCurrentResponseSchema.ts +7 -7
  425. package/src/api/parameters/schemas/parameterHistoryResponseSchema.ts +3 -3
  426. package/src/api/parameters/schemas/parameterNameParamSchema.ts +2 -3
  427. package/src/api/parameters/schemas/parameterNamesResponseSchema.ts +3 -3
  428. package/src/api/parameters/schemas/parameterResponseSchema.ts +3 -3
  429. package/src/api/parameters/schemas/parameterStatusSchema.ts +2 -2
  430. package/src/api/parameters/schemas/parameterTreeNodeSchema.ts +6 -6
  431. package/src/api/parameters/schemas/parameterVersionParamSchema.ts +5 -6
  432. package/src/api/parameters/schemas/parameterVersionResponseSchema.ts +3 -3
  433. package/src/api/parameters/schemas/rollbackParameterBodySchema.ts +6 -9
  434. package/src/api/parameters/services/ParameterProvider.ts +152 -65
  435. package/src/api/payments/controllers/AdminPaymentController.ts +7 -7
  436. package/src/api/payments/controllers/MockCheckoutController.ts +79 -28
  437. package/src/api/payments/controllers/PaymentController.ts +4 -4
  438. package/src/api/payments/entities/paymentIntents.ts +11 -11
  439. package/src/api/payments/entities/paymentMethods.ts +11 -11
  440. package/src/api/payments/entities/refunds.ts +9 -9
  441. package/src/api/payments/providers/PaymentProvider.ts +18 -0
  442. package/src/api/payments/schemas/intentSchemas.ts +25 -25
  443. package/src/api/payments/schemas/paymentMethodSchemas.ts +3 -3
  444. package/src/api/payments/services/PaymentService.ts +60 -3
  445. package/src/api/subscriptions/__tests__/SubscriptionService.spec.ts +14 -0
  446. package/src/api/subscriptions/controllers/AdminSubscriptionController.ts +11 -11
  447. package/src/api/subscriptions/controllers/SubscriptionController.ts +5 -4
  448. package/src/api/subscriptions/entities/subscriptionEvents.ts +15 -15
  449. package/src/api/subscriptions/entities/subscriptions.ts +22 -22
  450. package/src/api/subscriptions/notifications/SubscriptionNotifications.ts +22 -22
  451. package/src/api/subscriptions/schemas/cancelSubscriptionSchema.ts +4 -4
  452. package/src/api/subscriptions/schemas/changePlanSchema.ts +5 -5
  453. package/src/api/subscriptions/schemas/createSubscriptionSchema.ts +14 -7
  454. package/src/api/subscriptions/schemas/entitlementsSchema.ts +10 -10
  455. package/src/api/subscriptions/schemas/mrrSchema.ts +9 -9
  456. package/src/api/subscriptions/schemas/planDefinitionSchema.ts +21 -21
  457. package/src/api/subscriptions/schemas/planResourceSchema.ts +19 -19
  458. package/src/api/subscriptions/schemas/subscriptionQuerySchema.ts +8 -8
  459. package/src/api/subscriptions/schemas/subscriptionSettingsSchema.ts +7 -7
  460. package/src/api/subscriptions/schemas/subscriptionStatsSchema.ts +17 -17
  461. package/src/api/subscriptions/services/SubscriptionConfig.ts +2 -2
  462. package/src/api/users/__tests__/ApiKeys-integration.spec.ts +11 -11
  463. package/src/api/users/atoms/realmAuthSettingsAtom.ts +111 -119
  464. package/src/api/users/controllers/AdminIdentityController.ts +29 -19
  465. package/src/api/users/controllers/AdminSessionController.ts +37 -27
  466. package/src/api/users/controllers/AdminUserController.ts +75 -53
  467. package/src/api/users/controllers/MySessionController.ts +125 -0
  468. package/src/api/users/controllers/RealmController.ts +9 -9
  469. package/src/api/users/controllers/UserController.ts +55 -55
  470. package/src/api/users/entities/identities.ts +8 -8
  471. package/src/api/users/entities/sessions.ts +17 -17
  472. package/src/api/users/entities/users.ts +17 -17
  473. package/src/api/users/index.ts +3 -0
  474. package/src/api/users/notifications/UserNotifications.ts +76 -24
  475. package/src/api/users/primitives/$realm.ts +12 -0
  476. package/src/api/users/schemas/completePasswordResetRequestSchema.ts +8 -12
  477. package/src/api/users/schemas/completeRegistrationRequestSchema.ts +17 -20
  478. package/src/api/users/schemas/createUserSchema.ts +2 -2
  479. package/src/api/users/schemas/identityQuerySchema.ts +4 -4
  480. package/src/api/users/schemas/identityResourceSchema.ts +3 -2
  481. package/src/api/users/schemas/loginSchema.ts +4 -4
  482. package/src/api/users/schemas/passwordResetIntentResponseSchema.ts +6 -8
  483. package/src/api/users/schemas/realmConfigSchema.ts +10 -10
  484. package/src/api/users/schemas/registerQuerySchema.ts +6 -6
  485. package/src/api/users/schemas/registerRequestSchema.ts +21 -43
  486. package/src/api/users/schemas/registerResponseSchema.ts +2 -2
  487. package/src/api/users/schemas/registerSchema.ts +13 -31
  488. package/src/api/users/schemas/registrationIntentResponseSchema.ts +19 -23
  489. package/src/api/users/schemas/resetPasswordSchema.ts +10 -17
  490. package/src/api/users/schemas/sessionQuerySchema.ts +3 -3
  491. package/src/api/users/schemas/sessionResourceSchema.ts +25 -25
  492. package/src/api/users/schemas/updateUserSchema.ts +3 -4
  493. package/src/api/users/schemas/userQuerySchema.ts +7 -7
  494. package/src/api/users/services/RegistrationService.ts +25 -11
  495. package/src/api/users/services/UserService.ts +12 -6
  496. package/src/api/verifications/__tests__/CodeVerification.spec.ts +63 -101
  497. package/src/api/verifications/__tests__/LinkVerification.spec.ts +23 -92
  498. package/src/api/verifications/controllers/VerificationController.ts +13 -27
  499. package/src/api/verifications/entities/verifications.ts +13 -14
  500. package/src/api/verifications/schemas/requestVerificationCodeResponseSchema.ts +17 -14
  501. package/src/api/verifications/schemas/validateVerificationCodeResponseSchema.ts +9 -10
  502. package/src/api/verifications/schemas/verificationSettingsSchema.ts +65 -66
  503. package/src/api/verifications/schemas/verificationTypeEnumSchema.ts +2 -2
  504. package/src/api/verifications/services/VerificationService.ts +12 -0
  505. package/src/background/__tests__/BackgroundTaskProvider.spec.ts +36 -0
  506. package/src/batch/__tests__/$batch.spec.ts +22 -22
  507. package/src/batch/__tests__/startup-buffering.spec.ts +9 -9
  508. package/src/bin/index.ts +1 -1
  509. package/src/bucket/__tests__/TenantScopedBucket.spec.ts +60 -0
  510. package/src/bucket/providers/LocalFileStorageProvider.ts +14 -6
  511. package/src/bucket/providers/MemoryFileStorageProvider.ts +18 -7
  512. package/src/bucket/providers/R2FileStorageProvider.ts +14 -6
  513. package/src/bucket/providers/S3FileStorageProvider.ts +31 -15
  514. package/src/cache/core/primitives/$cache.ts +7 -10
  515. package/src/cache/database/entities/cacheEntries.ts +16 -27
  516. package/src/cache/database/providers/DatabaseCacheProvider.ts +15 -13
  517. package/src/cache/redis/providers/RedisCacheProvider.ts +6 -6
  518. package/src/captcha/providers/TurnstileCaptchaProvider.ts +4 -4
  519. package/src/cli/core/__tests__/BuildCloudflareTask.spec.ts +178 -0
  520. package/src/cli/core/__tests__/BuildDockerTask.spec.ts +0 -2
  521. package/src/cli/core/__tests__/DbCommand.spec.ts +108 -0
  522. package/src/cli/core/atoms/appEntryOptions.ts +5 -5
  523. package/src/cli/core/atoms/buildOptions.ts +76 -88
  524. package/src/cli/core/atoms/changelogOptions.ts +3 -3
  525. package/src/cli/core/atoms/devOptions.ts +3 -3
  526. package/src/cli/core/commands/build.ts +36 -49
  527. package/src/cli/core/commands/db.ts +171 -83
  528. package/src/cli/core/commands/dev.ts +8 -8
  529. package/src/cli/core/commands/gen/changelog.ts +12 -14
  530. package/src/cli/core/commands/gen/env.ts +6 -6
  531. package/src/cli/core/commands/gen/openapi.ts +6 -6
  532. package/src/cli/core/commands/init.ts +28 -33
  533. package/src/cli/core/commands/pack.ts +10 -10
  534. package/src/cli/core/commands/root.ts +7 -8
  535. package/src/cli/core/commands/test.ts +17 -20
  536. package/src/cli/core/index.ts +0 -3
  537. package/src/cli/core/tasks/BuildCloudflareTask.ts +138 -245
  538. package/src/cli/core/tasks/BuildPrerenderTask.ts +44 -7
  539. package/src/cli/core/templates/apiHelloResponseSchemaTs.ts +4 -4
  540. package/src/cli/devtools/atoms/devtoolsOptions.ts +6 -6
  541. package/src/cli/i18n/__tests__/I18nCheckService.spec.ts +48 -0
  542. package/src/cli/i18n/atoms/i18nOptions.ts +8 -8
  543. package/src/cli/i18n/services/I18nCheckService.ts +65 -11
  544. package/src/cli/platform/commands/SecretsCommand.ts +24 -25
  545. package/src/cli/platform/commands/platform.ts +40 -46
  546. package/src/cli/platform/index.ts +1 -1
  547. package/src/cli/platform-lib/__tests__/CloudflareAdapter.spec.ts +0 -4
  548. package/src/cli/platform-lib/__tests__/PlatformInspector.spec.ts +10 -3
  549. package/src/cli/platform-lib/__tests__/VercelAdapter.spec.ts +0 -2
  550. package/src/cli/platform-lib/adapters/CloudflareAdapter.ts +141 -50
  551. package/src/cli/platform-lib/adapters/VercelAdapter.ts +6 -11
  552. package/src/cli/platform-lib/atoms/platformOptions.ts +46 -25
  553. package/src/cli/platform-lib/schemas/cloudflare.ts +87 -87
  554. package/src/cli/platform-lib/schemas/platform.ts +51 -51
  555. package/src/cli/platform-lib/schemas/vercel.ts +28 -28
  556. package/src/cli/platform-lib/services/CloudflareApi.ts +5 -5
  557. package/src/cli/platform-lib/services/VercelApi.ts +4 -4
  558. package/src/cli/platform-lib/services/VercelCli.ts +6 -15
  559. package/src/cli/platform-lib/services/WranglerApi.ts +6 -15
  560. package/src/cli/vendor/atoms/vendorOptions.ts +9 -9
  561. package/src/cli/vendor/commands/VendorCommand.ts +11 -12
  562. package/src/command/__tests__/$command.spec.ts +82 -83
  563. package/src/command/__tests__/Asker.spec.ts +6 -13
  564. package/src/command/__tests__/CliProvider.spec.ts +136 -149
  565. package/src/command/__tests__/Runner.spec.ts +86 -110
  566. package/src/command/helpers/Asker.ts +23 -58
  567. package/src/command/helpers/Runner.ts +34 -110
  568. package/src/command/index.ts +4 -9
  569. package/src/command/primitives/$command.ts +10 -10
  570. package/src/command/providers/CliProvider.ts +183 -161
  571. package/src/core/Alepha.ts +62 -13
  572. package/src/core/__tests__/$atom.spec.ts +52 -3
  573. package/src/core/__tests__/$computed.spec.ts +129 -0
  574. package/src/core/__tests__/$env.spec.ts +13 -13
  575. package/src/core/__tests__/$inject.spec.ts +4 -4
  576. package/src/core/__tests__/$module.spec.ts +1 -1
  577. package/src/core/__tests__/Alepha-graph.spec.ts +1 -1
  578. package/src/core/__tests__/Alepha-parseEnv.spec.ts +32 -32
  579. package/src/core/__tests__/Alepha-start.spec.ts +3 -3
  580. package/src/core/__tests__/CodecManager.spec.ts +113 -94
  581. package/src/core/__tests__/KeylessJsonSchemaCodec.spec.ts +138 -138
  582. package/src/core/__tests__/SchemaValidator.spec.ts +43 -44
  583. package/src/core/__tests__/StateManager.persist.browser.spec.ts +87 -0
  584. package/src/core/__tests__/StateManager.spec.ts +423 -0
  585. package/src/core/__tests__/TypeBox-usecases.spec.ts +8 -8
  586. package/src/core/__tests__/TypeProvider.spec.ts +314 -309
  587. package/src/core/__tests__/dump.spec.ts +6 -6
  588. package/src/core/__tests__/pagination.spec.ts +4 -4
  589. package/src/core/__tests__/scoped-after-start.spec.ts +43 -0
  590. package/src/core/errors/TypeBoxError.ts +10 -4
  591. package/src/core/helpers/FileLike.ts +5 -5
  592. package/src/core/helpers/coerceStrings.ts +70 -0
  593. package/src/core/helpers/jsonSchemaToZod.ts +112 -0
  594. package/src/core/index.shared.ts +4 -1
  595. package/src/core/primitives/$atom.ts +95 -27
  596. package/src/core/primitives/$computed.ts +148 -0
  597. package/src/core/primitives/$env.ts +5 -5
  598. package/src/core/primitives/$state.ts +1 -1
  599. package/src/core/providers/AlsProvider.ts +26 -0
  600. package/src/core/providers/CodecManager.ts +1 -2
  601. package/src/core/providers/JsonSchemaCodec.ts +1 -2
  602. package/src/core/providers/KeylessJsonSchemaCodec.ts +82 -57
  603. package/src/core/providers/SchemaValidator.ts +48 -158
  604. package/src/core/providers/StateManager.ts +383 -9
  605. package/src/core/providers/TypeProvider.ts +80 -734
  606. package/src/core/providers/ZodProvider.ts +380 -0
  607. package/src/core/providers/zodAugment.ts +69 -0
  608. package/src/core/schemas/pageQuerySchema.ts +19 -21
  609. package/src/core/schemas/pageSchema.ts +47 -57
  610. package/src/crypto/__tests__/SecretProvider.spec.ts +31 -0
  611. package/src/crypto/providers/SecretProvider.ts +16 -10
  612. package/src/datetime/primitives/$throttle.ts +6 -1
  613. package/src/email/brevo/providers/BrevoEmailProvider.ts +4 -4
  614. package/src/email/cloudflare/providers/CloudflareEmailProvider.ts +6 -6
  615. package/src/email/core/index.ts +7 -2
  616. package/src/email/core/primitives/$email.ts +5 -1
  617. package/src/email/core/providers/LocalEmailProvider.ts +5 -5
  618. package/src/email/smtp/providers/NodemailerEmailProvider.ts +41 -52
  619. package/src/fake/__tests__/FakeProvider.spec.ts +110 -110
  620. package/src/fake/__tests__/keyName.example.ts +21 -21
  621. package/src/fake/__tests__/keyName.spec.ts +41 -41
  622. package/src/fake/__tests__/module.example.ts +8 -8
  623. package/src/fake/providers/FakeProvider.ts +122 -121
  624. package/src/lock/core/__tests__/lock-mutual-exclusion.spec.ts +44 -0
  625. package/src/lock/core/index.ts +1 -0
  626. package/src/lock/core/primitives/$lock.ts +13 -6
  627. package/src/logger/__tests__/CliFormatterProvider.spec.ts +76 -0
  628. package/src/logger/__tests__/Logger.spec.ts +49 -0
  629. package/src/logger/index.ts +25 -18
  630. package/src/logger/providers/CliFormatterProvider.ts +75 -0
  631. package/src/logger/schemas/logEntrySchema.ts +10 -10
  632. package/src/logger/services/Logger.ts +18 -0
  633. package/src/mcp/__tests__/$prompt.spec.ts +21 -23
  634. package/src/mcp/__tests__/$tool.spec.ts +22 -22
  635. package/src/mcp/__tests__/McpServerProvider.spec.ts +82 -11
  636. package/src/mcp/__tests__/StreamableHttpMcpTransport.spec.ts +2 -2
  637. package/src/mcp/__tests__/integration.spec.ts +33 -33
  638. package/src/mcp/primitives/$prompt.ts +11 -9
  639. package/src/mcp/primitives/$tool.ts +27 -86
  640. package/src/mcp/providers/McpServerProvider.ts +55 -0
  641. package/src/mcp/transports/StreamableHttpMcpTransport.ts +7 -7
  642. package/src/orm/__tests__/$repository-tests.ts +133 -27
  643. package/src/orm/__tests__/$repository.spec.ts +23 -0
  644. package/src/orm/__tests__/$transactional-tests.ts +4 -4
  645. package/src/orm/__tests__/ModelBuilder-tests.ts +28 -28
  646. package/src/orm/__tests__/ModelBuilder.spec.ts +124 -106
  647. package/src/orm/__tests__/QueryManager.spec.ts +5 -5
  648. package/src/orm/__tests__/delete-returning-tests.ts +11 -11
  649. package/src/orm/__tests__/deletedAt-tests.ts +3 -3
  650. package/src/orm/__tests__/enums.spec.ts +29 -25
  651. package/src/orm/__tests__/execute-tests.ts +8 -8
  652. package/src/orm/__tests__/fixtures/bigEntitySchema.ts +48 -48
  653. package/src/orm/__tests__/fixtures/userEntitySchema.ts +6 -6
  654. package/src/orm/__tests__/joins-tests.ts +30 -30
  655. package/src/orm/__tests__/organization-tests.ts +105 -3
  656. package/src/orm/__tests__/organization.spec.ts +46 -0
  657. package/src/orm/__tests__/orm-errors.spec.ts +10 -10
  658. package/src/orm/__tests__/orm-next-tests.ts +29 -29
  659. package/src/orm/__tests__/orm-showcase-tests.ts +9 -9
  660. package/src/orm/__tests__/primaryKey.spec.ts +4 -4
  661. package/src/orm/__tests__/query-date-encoding-tests.ts +17 -17
  662. package/src/orm/__tests__/ref-auto-onDelete.spec.ts +14 -14
  663. package/src/orm/__tests__/references.spec.ts +7 -7
  664. package/src/orm/__tests__/security.spec.ts +17 -17
  665. package/src/orm/__tests__/string-operators-tests.ts +5 -5
  666. package/src/orm/__tests__/timestamps-tests.ts +14 -14
  667. package/src/orm/__tests__/validation-tests.ts +5 -5
  668. package/src/orm/core/__tests__/BunSqliteProvider.bun.spec.ts +8 -8
  669. package/src/orm/core/constants/PG_SYMBOLS.ts +13 -1
  670. package/src/orm/core/entities/alephaSequences.ts +8 -8
  671. package/src/orm/core/helpers/pgAttr.ts +4 -4
  672. package/src/orm/core/primitives/$entity.ts +10 -6
  673. package/src/orm/core/providers/DatabaseTypeProvider.ts +46 -53
  674. package/src/orm/core/providers/drivers/BunSqliteProvider.ts +8 -8
  675. package/src/orm/core/providers/drivers/CloudflareD1Provider.ts +3 -5
  676. package/src/orm/core/providers/drivers/NodeSqliteProvider.ts +8 -8
  677. package/src/orm/core/schemas/databaseEnvSchema.ts +4 -4
  678. package/src/orm/core/schemas/insertSchema.ts +14 -18
  679. package/src/orm/core/schemas/legacyIdSchema.ts +2 -2
  680. package/src/orm/core/schemas/updateSchema.ts +10 -16
  681. package/src/orm/core/services/PgRelationManager.ts +2 -2
  682. package/src/orm/core/services/QueryManager.ts +13 -2
  683. package/src/orm/core/services/Repository.ts +88 -33
  684. package/src/orm/core/services/SqliteModelBuilder.ts +38 -45
  685. package/src/orm/postgres/__tests__/BunPostgresProvider.bun.spec.ts +4 -4
  686. package/src/orm/postgres/providers/CloudflareHyperdriveProvider.ts +4 -6
  687. package/src/orm/postgres/schemas/postgresEnvSchema.ts +6 -6
  688. package/src/orm/postgres/services/PostgresModelBuilder.ts +127 -114
  689. package/src/queue/core/__tests__/$consumer.spec.ts +4 -4
  690. package/src/queue/core/__tests__/WorkerProvider.spec.ts +4 -4
  691. package/src/queue/core/__tests__/shared.ts +6 -6
  692. package/src/queue/core/primitives/$consumer.ts +5 -5
  693. package/src/queue/core/primitives/$queue.ts +44 -61
  694. package/src/queue/core/providers/CloudflareQueueProvider.ts +6 -0
  695. package/src/queue/core/providers/WorkerProvider.ts +17 -14
  696. package/src/queue/redis/providers/RedisQueueProvider.ts +3 -3
  697. package/src/react/core/__tests__/ErrorBoundary.browser.spec.tsx +92 -0
  698. package/src/react/core/__tests__/Router.spec.tsx +4 -4
  699. package/src/react/core/__tests__/useComputed.browser.spec.tsx +192 -0
  700. package/src/react/core/__tests__/useQuery.browser.spec.tsx +48 -0
  701. package/src/react/core/__tests__/useSelector.browser.spec.tsx +105 -0
  702. package/src/react/core/__tests__/useStore.browser.spec.tsx +113 -0
  703. package/src/react/core/components/ErrorBoundary.tsx +42 -0
  704. package/src/react/core/hooks/useAction.ts +56 -19
  705. package/src/react/core/hooks/useComputed.ts +91 -0
  706. package/src/react/core/hooks/useSelector.ts +67 -0
  707. package/src/react/core/hooks/useStore.ts +36 -17
  708. package/src/react/core/index.ts +3 -0
  709. package/src/react/core/utils/shallowEqual.ts +36 -0
  710. package/src/react/form/__tests__/FormModel-submit-loading.spec.ts +71 -0
  711. package/src/react/form/__tests__/form-submitting-reactive.browser.spec.tsx +96 -0
  712. package/src/react/form/__tests__/useForm.browser.spec.tsx +54 -54
  713. package/src/react/form/errors/FormValidationError.ts +0 -2
  714. package/src/react/form/hooks/useForm.ts +19 -4
  715. package/src/react/form/hooks/useFormQuerySync.ts +0 -0
  716. package/src/react/form/services/FormModel.ts +124 -86
  717. package/src/react/form/services/parseField.ts +66 -27
  718. package/src/react/i18n/__tests__/I18nProvider.spec.ts +89 -0
  719. package/src/react/i18n/__tests__/Localize.spec.tsx +1 -1
  720. package/src/react/i18n/__tests__/locale-routing.spec.ts +107 -0
  721. package/src/react/i18n/providers/I18nProvider.ts +173 -14
  722. package/src/react/router/__tests__/$page.browser.spec.tsx +19 -19
  723. package/src/react/router/__tests__/$page.spec.tsx +21 -21
  724. package/src/react/router/__tests__/ReactBrowserProvider.browser.spec.ts +87 -1
  725. package/src/react/router/__tests__/RouterLocaleProvider.spec.ts +127 -0
  726. package/src/react/router/atoms/ssrManifestAtom.ts +16 -16
  727. package/src/react/router/components/NestedView.tsx +11 -3
  728. package/src/react/router/hooks/useQueryParams.ts +1 -1
  729. package/src/react/router/index.browser.ts +4 -0
  730. package/src/react/router/index.shared.ts +1 -0
  731. package/src/react/router/index.ts +9 -0
  732. package/src/react/router/primitives/$page.ts +2 -2
  733. package/src/react/router/providers/ReactBrowserProvider.ts +64 -13
  734. package/src/react/router/providers/ReactBrowserRouterProvider.ts +15 -1
  735. package/src/react/router/providers/ReactPageProvider.ts +38 -13
  736. package/src/react/router/providers/ReactServerProvider.ts +105 -16
  737. package/src/react/router/providers/RootComponentsProvider.ts +13 -0
  738. package/src/react/router/providers/RouterLocaleProvider.ts +125 -0
  739. package/src/react/router/providers/__tests__/RootComponentsProvider.spec.ts +15 -0
  740. package/src/react/router/providers/__tests__/rootComponents.ssr.browser.spec.tsx +67 -0
  741. package/src/react/sitemap/__tests__/$sitemap.spec.ts +131 -0
  742. package/src/react/sitemap/index.browser.ts +21 -0
  743. package/src/react/sitemap/index.ts +25 -0
  744. package/src/react/sitemap/primitives/$sitemap.browser.ts +26 -0
  745. package/src/react/sitemap/primitives/$sitemap.ts +196 -0
  746. package/src/react/ui/atoms/uiAtom.ts +6 -6
  747. package/src/react/ui/atoms/uiThemeListAtom.ts +7 -7
  748. package/src/react/ui/hooks/useColorMode.ts +11 -4
  749. package/src/react/ui/services/SchemaControl.ts +4 -4
  750. package/src/redis/providers/BunRedisProvider.ts +19 -11
  751. package/src/redis/providers/NodeRedisProvider.ts +3 -3
  752. package/src/scheduler/primitives/$scheduler.ts +21 -8
  753. package/src/security/__tests__/assertRealmScope.spec.ts +29 -0
  754. package/src/security/atoms/currentTenantAtom.ts +6 -6
  755. package/src/security/atoms/currentUserAtom.ts +2 -2
  756. package/src/security/primitives/$issuer.ts +24 -2
  757. package/src/security/providers/JwtProvider.ts +100 -0
  758. package/src/security/providers/SecurityProvider.ts +43 -2
  759. package/src/security/schemas/permissionSchema.ts +19 -19
  760. package/src/security/schemas/roleSchema.ts +22 -28
  761. package/src/security/schemas/userAccountInfoSchema.ts +47 -37
  762. package/src/server/auth/__tests__/appleClientSecret.spec.ts +34 -0
  763. package/src/server/auth/__tests__/federationRedirectReplay.spec.ts +44 -0
  764. package/src/server/auth/helpers/appleClientSecret.ts +24 -0
  765. package/src/server/auth/helpers/jtiReplayGuard.ts +41 -0
  766. package/src/server/auth/helpers/safeRedirectPath.ts +19 -0
  767. package/src/server/auth/index.ts +1 -0
  768. package/src/server/auth/primitives/$auth.ts +6 -6
  769. package/src/server/auth/primitives/$authApple.ts +10 -10
  770. package/src/server/auth/primitives/$authFacebook.ts +10 -10
  771. package/src/server/auth/primitives/$authFranceConnect.ts +10 -10
  772. package/src/server/auth/primitives/$authGithub.ts +10 -10
  773. package/src/server/auth/primitives/$authGoogle.ts +10 -10
  774. package/src/server/auth/primitives/$authMicrosoft.ts +14 -14
  775. package/src/server/auth/providers/ServerAuthProvider.ts +67 -52
  776. package/src/server/auth/schemas/authenticationProviderSchema.ts +9 -12
  777. package/src/server/auth/schemas/tokenResponseSchema.ts +2 -2
  778. package/src/server/auth/schemas/tokensSchema.ts +16 -16
  779. package/src/server/auth/schemas/userinfoResponseSchema.ts +3 -3
  780. package/src/server/cookies/__tests__/AtomCookieBinding.spec.ts +80 -0
  781. package/src/server/cookies/__tests__/AtomCookiePersistence.browser.spec.ts +169 -0
  782. package/src/server/cookies/__tests__/AtomCookiePersistence.spec.ts +294 -0
  783. package/src/server/cookies/__tests__/ServerCookiesProvider.spec.ts +82 -12
  784. package/src/server/cookies/index.browser.ts +4 -1
  785. package/src/server/cookies/index.ts +8 -1
  786. package/src/server/cookies/primitives/$cookie.browser.ts +1 -1
  787. package/src/server/cookies/primitives/$cookie.ts +16 -0
  788. package/src/server/cookies/providers/AtomCookiePersistence.browser.ts +133 -0
  789. package/src/server/cookies/providers/AtomCookiePersistence.ts +148 -0
  790. package/src/server/cookies/providers/ServerCookiesProvider.ts +32 -4
  791. package/src/server/cookies/services/CookieParser.ts +6 -1
  792. package/src/server/core/__tests__/$action.spec.ts +13 -13
  793. package/src/server/core/__tests__/$middleware.spec.ts +10 -10
  794. package/src/server/core/__tests__/$route.spec.ts +9 -9
  795. package/src/server/core/__tests__/$sse.spec.ts +26 -26
  796. package/src/server/core/__tests__/BunHttpServerProvider.bun.spec.ts +6 -6
  797. package/src/server/core/__tests__/HttpClient.spec.ts +2 -2
  798. package/src/server/core/__tests__/NodeHttpServerProvider.spec.ts +15 -3
  799. package/src/server/core/__tests__/ServerBodyParserProvider.spec.ts +14 -14
  800. package/src/server/core/__tests__/ServerMultipartProvider.spec.ts +33 -33
  801. package/src/server/core/__tests__/ServerRouterProvider-errorHandler.spec.ts +5 -1
  802. package/src/server/core/__tests__/ServerRouterProvider-getRoutes.spec.ts +25 -25
  803. package/src/server/core/__tests__/ServerRouterProvider-serializationError.spec.ts +9 -5
  804. package/src/server/core/__tests__/ServerRouterProvider-validationError.spec.ts +56 -24
  805. package/src/server/core/errors/ValidationError.ts +6 -3
  806. package/src/server/core/helpers/isMultipart.ts +2 -1
  807. package/src/server/core/index.ts +5 -2
  808. package/src/server/core/interfaces/ServerRequest.ts +14 -14
  809. package/src/server/core/primitives/$action.ts +26 -36
  810. package/src/server/core/primitives/$route.ts +27 -0
  811. package/src/server/core/primitives/$sse.ts +3 -3
  812. package/src/server/core/providers/BunHttpServerProvider.ts +8 -9
  813. package/src/server/core/providers/NodeHttpServerProvider.ts +8 -9
  814. package/src/server/core/providers/ServerBodyParserProvider.ts +20 -12
  815. package/src/server/core/providers/ServerCompressProvider.ts +9 -10
  816. package/src/server/core/providers/ServerHelmetProvider.ts +26 -27
  817. package/src/server/core/providers/ServerMultipartProvider.ts +19 -19
  818. package/src/server/core/providers/ServerRouterProvider.ts +44 -15
  819. package/src/server/core/schemas/errorSchema.ts +20 -25
  820. package/src/server/core/schemas/okSchema.ts +9 -14
  821. package/src/server/core/services/HttpClient.ts +13 -1
  822. package/src/server/core/services/ServerRequestParser.ts +6 -6
  823. package/src/server/cors/providers/ServerCorsProvider.ts +26 -28
  824. package/src/server/health/schemas/healthSchema.ts +6 -6
  825. package/src/server/links/__tests__/$remote.spec.ts +3 -3
  826. package/src/server/links/__tests__/BatchEndpoint.spec.ts +9 -9
  827. package/src/server/links/__tests__/LinkProvider.spec.ts +9 -9
  828. package/src/server/links/__tests__/ServerLinksProvider.spec.ts +23 -23
  829. package/src/server/links/__tests__/fixtures/CrudApp.ts +21 -21
  830. package/src/server/links/atoms/apiLinksAtom.ts +2 -2
  831. package/src/server/links/atoms/linkOptionsAtom.ts +6 -6
  832. package/src/server/links/primitives/$remote.ts +3 -3
  833. package/src/server/links/providers/LinkProvider.ts +3 -3
  834. package/src/server/links/providers/ServerLinksProvider.ts +20 -20
  835. package/src/server/links/schemas/apiLinksResponseSchema.ts +23 -23
  836. package/src/server/proxy/__tests__/$proxy.spec.ts +9 -9
  837. package/src/server/proxy/providers/ServerProxyProvider.ts +5 -0
  838. package/src/server/rate-limit/providers/ServerRateLimitProvider.ts +18 -20
  839. package/src/server/swagger/__tests__/$swagger.spec.ts +91 -94
  840. package/src/server/swagger/__tests__/ui.spec.ts +3 -3
  841. package/src/server/swagger/providers/ServerSwaggerProvider.ts +66 -43
  842. package/src/system/__tests__/NodeShellProvider.spec.ts +46 -0
  843. package/src/system/providers/NodeShellProvider.ts +4 -1
  844. package/src/topic/core/__tests__/$subscriber.spec.ts +4 -4
  845. package/src/topic/core/__tests__/shared.ts +8 -8
  846. package/src/topic/core/primitives/$subscriber.ts +5 -5
  847. package/src/topic/core/primitives/$topic.ts +14 -14
  848. package/src/topic/redis/providers/RedisTopicProvider.ts +3 -3
  849. package/dist/container/core/index.d.ts +0 -236
  850. package/dist/container/core/index.d.ts.map +0 -1
  851. package/dist/container/core/index.js +0 -231
  852. package/dist/container/core/index.js.map +0 -1
  853. package/dist/container/core/index.workerd.js +0 -192
  854. package/dist/container/core/index.workerd.js.map +0 -1
  855. package/src/cli/core/tasks/BuildSitemapTask.ts +0 -130
  856. package/src/command/helpers/PrettyAsker.ts +0 -256
  857. package/src/command/helpers/PrettyPrint.ts +0 -332
  858. package/src/container/core/__tests__/$container.spec.ts +0 -83
  859. package/src/container/core/index.ts +0 -50
  860. package/src/container/core/index.workerd.ts +0 -53
  861. package/src/container/core/interfaces/ContainerOptions.ts +0 -69
  862. package/src/container/core/primitives/$container.ts +0 -100
  863. package/src/container/core/providers/CloudflareContainerProvider.ts +0 -70
  864. package/src/container/core/providers/ContainerProvider.ts +0 -92
  865. package/src/container/core/providers/MockContainerProvider.ts +0 -62
  866. package/src/container/core/providers/NodeContainerProvider.ts +0 -53
  867. package/src/core/__tests__/jsonSchemaToTypeBox.spec.ts +0 -771
  868. package/src/core/helpers/jsonSchemaToTypeBox.ts +0 -359
  869. /package/dist/orm/core/{chunk-B4FMCO8f.js → rolldown-runtime-B4FMCO8f.js} +0 -0
@@ -2,6 +2,13 @@ import { Alepha, Static, TNull, TObject, TOptional, TSchema, TUnion } from "alep
2
2
  import { Page } from "alepha/orm";
3
3
  import { BuildExtraConfigColumns, SQL } from "drizzle-orm";
4
4
  import { PgColumnBuilderBase, PgSequenceOptions, PgTableExtraConfigValue, UpdateDeleteAction } from "drizzle-orm/pg-core";
5
+ import "drizzle-orm/pg-core/foreign-keys";
6
+ import "alepha/datetime";
7
+ import "drizzle-orm/pg-core/session";
8
+ import "alepha/crypto";
9
+ import "drizzle-kit/api";
10
+ import "drizzle-orm/d1";
11
+ import "drizzle-orm/sqlite-core";
5
12
  //#region ../../src/orm/core/schemas/insertSchema.d.ts
6
13
  /**
7
14
  * Transforms a TObject schema for insert operations.
@@ -12,15 +19,13 @@ import { PgColumnBuilderBase, PgSequenceOptions, PgTableExtraConfigValue, Update
12
19
  * Before: { name: string; age: number(default=0); fullName: generated }
13
20
  * After: { name: string; age?: number; }
14
21
  */
15
- type TObjectInsert<T extends TObject> = TObject<{ [K in keyof T["properties"] as T["properties"][K] extends {
22
+ type TObjectInsert<T extends TObject> = TObject<{ [K in keyof T["shape"] as T["shape"][K] extends {
16
23
  [PG_GENERATED]: any;
17
- } ? never : K]: T["properties"][K] extends {
24
+ } ? never : K]: T["shape"][K] extends {
18
25
  [PG_DEFAULT]: any;
19
26
  } | {
20
27
  [PG_ORGANIZATION]: any;
21
- } | {
22
- "~optional": true;
23
- } ? TOptional<T["properties"][K]> : T["properties"][K] }>;
28
+ } ? TOptional<Extract<T["shape"][K], TSchema>> : T["shape"][K]; }>;
24
29
  //#endregion
25
30
  //#region ../../src/orm/core/schemas/updateSchema.d.ts
26
31
  /**
@@ -32,9 +37,9 @@ type TObjectInsert<T extends TObject> = TObject<{ [K in keyof T["properties"] as
32
37
  * Before: { name?: string; age: number; fullName: generated }
33
38
  * After: { name?: string | null; age: number; }
34
39
  */
35
- type TObjectUpdate<T extends TObject> = TObject<{ [K in keyof T["properties"] as T["properties"][K] extends {
40
+ type TObjectUpdate<T extends TObject> = TObject<{ [K in keyof T["shape"] as T["shape"][K] extends {
36
41
  [PG_GENERATED]: any;
37
- } ? never : K]: T["properties"][K] extends TOptional<infer U> ? TOptional<TUnion<[U, TNull]>> : T["properties"][K] }>;
42
+ } ? never : K]: T["shape"][K] extends TOptional<infer U extends TSchema> ? TOptional<TUnion<[U, TNull]>> : T["shape"][K]; }>;
38
43
  //#endregion
39
44
  //#region ../../src/orm/core/primitives/$entity.d.ts
40
45
  interface EntityPrimitiveOptions<T extends TObject, Keys = keyof Static<T>> {
@@ -194,18 +199,20 @@ declare class EntityPrimitive<T extends TObject = TObject> {
194
199
  get cols(): EntityColumns<T>;
195
200
  get name(): string;
196
201
  get schema(): T;
202
+ protected _insertSchema?: TObjectInsert<T>;
197
203
  get insertSchema(): TObjectInsert<T>;
204
+ protected _updateSchema?: TObjectUpdate<T>;
198
205
  get updateSchema(): TObjectUpdate<T>;
199
206
  }
200
207
  /**
201
208
  * Convert a schema to columns.
202
209
  */
203
- type FromSchema<T extends TObject> = { [key in keyof T["properties"]]: PgColumnBuilderBase };
210
+ type FromSchema<T extends TObject> = { [key in keyof T["properties"]]: PgColumnBuilderBase; };
204
211
  type EntityColumn<T extends TObject> = {
205
212
  name: string;
206
213
  entity: EntityPrimitive<T>;
207
214
  };
208
- type EntityColumns<T extends TObject> = { [key in keyof T["properties"]]: EntityColumn<T> };
215
+ type EntityColumns<T extends TObject> = { [key in keyof T["properties"]]: EntityColumn<T>; };
209
216
  //#endregion
210
217
  //#region ../../src/orm/core/constants/PG_SYMBOLS.d.ts
211
218
  declare const PG_DEFAULT: unique symbol;
@@ -234,13 +241,24 @@ type PgSymbols = {
234
241
  [PG_REF]: PgRefOptions;
235
242
  [PG_ENUM]: PgEnumOptions;
236
243
  [PG_GENERATED]: PgGeneratedOptions;
237
- [PG_ORGANIZATION]: {};
244
+ [PG_ORGANIZATION]: PgOrganizationOptions;
238
245
  /**
239
246
  * @deprecated Use `PG_IDENTITY` instead.
240
247
  */
241
248
  [PG_SERIAL]: {};
242
249
  };
243
250
  type PgSymbolKeys = keyof PgSymbols;
251
+ interface PgOrganizationOptions {
252
+ /**
253
+ * Fail-closed tenant scoping. When `true`, the repository (a) refuses any
254
+ * read/write with no resolved tenant instead of falling through to an
255
+ * unfiltered "see/write everything" query, and (b) drops the
256
+ * `OR organizationId IS NULL` "global row" escape — a scoped tenant never
257
+ * sees NULL/global rows. Use for security-sensitive tables. Defaults to
258
+ * `false` (the historic fail-open semantics).
259
+ */
260
+ strict?: boolean;
261
+ }
244
262
  type PgIdentityOptions = {
245
263
  mode: "always" | "byDefault";
246
264
  } & PgSequenceOptions & {
@@ -277,7 +295,7 @@ interface PgRefOptions {
277
295
  /**
278
296
  * Type representation.
279
297
  */
280
- type PgAttr<T extends TSchema, TAttr extends PgSymbolKeys> = T & { [K in TAttr]: PgSymbols[K] };
298
+ type PgAttr<T extends TSchema, TAttr extends PgSymbolKeys> = T & { [K in TAttr]: PgSymbols[K]; };
281
299
  //#endregion
282
300
  //#region ../../src/orm/core/schemas/databaseEnvSchema.d.ts
283
301
  /**
@@ -293,72 +311,65 @@ type PgAttr<T extends TSchema, TAttr extends PgSymbolKeys> = T & { [K in TAttr]:
293
311
  * - `d1://BINDING_NAME` — Cloudflare D1
294
312
  * - `hyperdrive://BINDING_NAME` — Cloudflare Hyperdrive
295
313
  */
296
- declare const databaseEnvSchema: import("typebox").TObject<{
297
- DATABASE_URL: import("typebox").TOptional<import("typebox").TString>;
298
- /**
299
- * Enable or disable push-based schema synchronization (drizzle-kit push).
300
- *
301
- * Defaults to `true` in development and test, `false` in production.
302
- * Set to `false` in development to skip automatic schema sync
303
- * (e.g. when managing migrations manually).
304
- */
305
- DATABASE_SYNC: import("typebox").TOptional<import("typebox").TBoolean>;
306
- }>;
314
+ declare const databaseEnvSchema: import("zod").ZodObject<{
315
+ DATABASE_URL: import("zod").ZodOptional<import("zod").ZodString>;
316
+ DATABASE_SYNC: import("zod").ZodOptional<import("zod").ZodBoolean>;
317
+ }, import("zod/v4/core").$strip>;
307
318
  declare module "alepha" {
308
319
  interface Env extends Partial<Static<typeof databaseEnvSchema>> {}
309
- } //# sourceMappingURL=databaseEnvSchema.d.ts.map
320
+ }
310
321
  //#endregion
311
322
  //#region ../../src/api/organizations/entities/organizations.d.ts
312
- declare const organizations: import("alepha/orm").EntityPrimitive<import("typebox").TObject<{
313
- id: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("typebox").TString, typeof import("alepha/orm").PG_PRIMARY_KEY>, typeof import("alepha/orm").PG_DEFAULT>;
314
- version: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("typebox").TInteger, typeof import("alepha/orm").PG_VERSION>, typeof import("alepha/orm").PG_DEFAULT>;
315
- createdAt: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("typebox").TString, typeof import("alepha/orm").PG_CREATED_AT>, typeof import("alepha/orm").PG_DEFAULT>;
316
- updatedAt: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("typebox").TString, typeof import("alepha/orm").PG_UPDATED_AT>, typeof import("alepha/orm").PG_DEFAULT>;
317
- name: import("typebox").TString;
318
- slug: import("typebox").TString;
319
- enabled: import("alepha/orm").PgAttr<import("typebox").TBoolean, typeof import("alepha/orm").PG_DEFAULT>;
320
- }>>;
323
+ declare const organizations: import("alepha/orm").EntityPrimitive<import("zod").ZodObject<{
324
+ id: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("zod").ZodString, typeof import("alepha/orm").PG_PRIMARY_KEY>, typeof import("alepha/orm").PG_DEFAULT>;
325
+ version: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("zod").ZodInt, typeof import("alepha/orm").PG_VERSION>, typeof import("alepha/orm").PG_DEFAULT>;
326
+ createdAt: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("zod").ZodString, typeof import("alepha/orm").PG_CREATED_AT>, typeof import("alepha/orm").PG_DEFAULT>;
327
+ updatedAt: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("zod").ZodString, typeof import("alepha/orm").PG_UPDATED_AT>, typeof import("alepha/orm").PG_DEFAULT>;
328
+ name: import("zod").ZodString;
329
+ slug: import("zod").ZodString;
330
+ enabled: import("alepha/orm").PgAttr<import("zod").ZodBoolean, typeof import("alepha/orm").PG_DEFAULT>;
331
+ }, import("zod/v4/core").$strip>>;
321
332
  type OrganizationEntity = Static<typeof organizations.schema>;
322
333
  //#endregion
323
334
  //#region ../../src/api/organizations/schemas/createOrganizationSchema.d.ts
324
- declare const createOrganizationSchema: import("typebox").TObject<{
325
- name: import("typebox").TString;
326
- slug: import("typebox").TString;
327
- enabled: import("typebox").TOptional<import("typebox").TBoolean>;
328
- }>;
335
+ declare const createOrganizationSchema: import("zod").ZodObject<{
336
+ name: import("zod").ZodString;
337
+ slug: import("zod").ZodString;
338
+ enabled: import("zod").ZodOptional<import("zod").ZodBoolean>;
339
+ }, import("zod/v4/core").$strip>;
329
340
  type CreateOrganization = Static<typeof createOrganizationSchema>;
330
341
  //#endregion
331
342
  //#region ../../src/api/organizations/schemas/organizationQuerySchema.d.ts
332
- declare const organizationQuerySchema: import("typebox").TObject<{
333
- page: import("typebox").TOptional<import("typebox").TInteger>;
334
- size: import("typebox").TOptional<import("typebox").TInteger>;
335
- sort: import("typebox").TOptional<import("typebox").TString>;
336
- name: import("typebox").TOptional<import("typebox").TString>;
337
- enabled: import("typebox").TOptional<import("typebox").TBoolean>;
338
- }>;
343
+ declare const organizationQuerySchema: import("zod").ZodObject<{
344
+ page: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodInt>>;
345
+ size: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodInt>>;
346
+ sort: import("zod").ZodOptional<import("zod").ZodString>;
347
+ name: import("zod").ZodOptional<import("zod").ZodString>;
348
+ enabled: import("zod").ZodOptional<import("zod").ZodBoolean>;
349
+ }, import("zod/v4/core").$strip>;
339
350
  type OrganizationQuery = Static<typeof organizationQuerySchema>;
340
351
  //#endregion
341
352
  //#region ../../src/api/organizations/schemas/updateOrganizationSchema.d.ts
342
- declare const updateOrganizationSchema: import("typebox").TObject<{
343
- name: import("typebox").TOptional<import("typebox").TString>;
344
- slug: import("typebox").TOptional<import("typebox").TString>;
345
- enabled: import("typebox").TOptional<import("typebox").TBoolean>;
346
- }>;
353
+ declare const updateOrganizationSchema: import("zod").ZodObject<{
354
+ name: import("zod").ZodOptional<import("zod").ZodString>;
355
+ slug: import("zod").ZodOptional<import("zod").ZodString>;
356
+ enabled: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
357
+ }, import("zod/v4/core").$strip>;
347
358
  type UpdateOrganization = Static<typeof updateOrganizationSchema>;
348
359
  //#endregion
349
360
  //#region ../../src/api/organizations/services/OrganizationService.d.ts
350
361
  declare class OrganizationService {
351
362
  protected readonly alepha: Alepha;
352
363
  protected readonly log: import("alepha/logger").Logger;
353
- protected readonly repo: import("alepha/orm").Repository<import("typebox").TObject<{
354
- id: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("typebox").TString, typeof import("alepha/orm").PG_PRIMARY_KEY>, typeof import("alepha/orm").PG_DEFAULT>;
355
- version: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("typebox").TInteger, typeof import("alepha/orm").PG_VERSION>, typeof import("alepha/orm").PG_DEFAULT>;
356
- createdAt: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("typebox").TString, typeof import("alepha/orm").PG_CREATED_AT>, typeof import("alepha/orm").PG_DEFAULT>;
357
- updatedAt: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("typebox").TString, typeof import("alepha/orm").PG_UPDATED_AT>, typeof import("alepha/orm").PG_DEFAULT>;
358
- name: import("typebox").TString;
359
- slug: import("typebox").TString;
360
- enabled: import("alepha/orm").PgAttr<import("typebox").TBoolean, typeof import("alepha/orm").PG_DEFAULT>;
361
- }>>;
364
+ protected readonly repo: import("alepha/orm").Repository<import("zod").ZodObject<{
365
+ id: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("zod").ZodString, typeof import("alepha/orm").PG_PRIMARY_KEY>, typeof import("alepha/orm").PG_DEFAULT>;
366
+ version: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("zod").ZodInt, typeof import("alepha/orm").PG_VERSION>, typeof import("alepha/orm").PG_DEFAULT>;
367
+ createdAt: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("zod").ZodString, typeof import("alepha/orm").PG_CREATED_AT>, typeof import("alepha/orm").PG_DEFAULT>;
368
+ updatedAt: import("alepha/orm").PgAttr<import("alepha/orm").PgAttr<import("zod").ZodString, typeof import("alepha/orm").PG_UPDATED_AT>, typeof import("alepha/orm").PG_DEFAULT>;
369
+ name: import("zod").ZodString;
370
+ slug: import("zod").ZodString;
371
+ enabled: import("alepha/orm").PgAttr<import("zod").ZodBoolean, typeof import("alepha/orm").PG_DEFAULT>;
372
+ }, import("zod/v4/core").$strip>>;
362
373
  /**
363
374
  * Find organizations with pagination and filtering.
364
375
  */
@@ -394,106 +405,119 @@ declare class AdminOrganizationController {
394
405
  * Find organizations with pagination and filtering.
395
406
  */
396
407
  readonly findOrganizations: import("alepha/server").ActionPrimitiveFn<{
397
- query: import("typebox").TObject<{
398
- page: import("typebox").TOptional<import("typebox").TInteger>;
399
- size: import("typebox").TOptional<import("typebox").TInteger>;
400
- sort: import("typebox").TOptional<import("typebox").TString>;
401
- name: import("typebox").TOptional<import("typebox").TString>;
402
- enabled: import("typebox").TOptional<import("typebox").TBoolean>;
403
- }>;
404
- response: import("alepha").TPage<import("typebox").TObject<{
405
- id: PgAttr<PgAttr<import("typebox").TString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
406
- version: PgAttr<PgAttr<import("typebox").TInteger, typeof PG_VERSION>, typeof PG_DEFAULT>;
407
- createdAt: PgAttr<PgAttr<import("typebox").TString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
408
- updatedAt: PgAttr<PgAttr<import("typebox").TString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
409
- name: import("typebox").TString;
410
- slug: import("typebox").TString;
411
- enabled: PgAttr<import("typebox").TBoolean, typeof PG_DEFAULT>;
412
- }>>;
408
+ query: import("zod").ZodObject<{
409
+ page: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodInt>>;
410
+ size: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodInt>>;
411
+ sort: import("zod").ZodOptional<import("zod").ZodString>;
412
+ name: import("zod").ZodOptional<import("zod").ZodString>;
413
+ enabled: import("zod").ZodOptional<import("zod").ZodBoolean>;
414
+ }, import("zod/v4/core").$strip>;
415
+ response: import("zod").ZodObject<{
416
+ content: import("zod").ZodArray<import("zod").ZodObject<{
417
+ id: PgAttr<PgAttr<import("zod").ZodString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
418
+ version: PgAttr<PgAttr<import("zod").ZodInt, typeof PG_VERSION>, typeof PG_DEFAULT>;
419
+ createdAt: PgAttr<PgAttr<import("zod").ZodString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
420
+ updatedAt: PgAttr<PgAttr<import("zod").ZodString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
421
+ name: import("zod").ZodString;
422
+ slug: import("zod").ZodString;
423
+ enabled: PgAttr<import("zod").ZodBoolean, typeof PG_DEFAULT>;
424
+ }, import("zod/v4/core").$strip>>;
425
+ page: import("zod").ZodObject<{
426
+ number: import("zod").ZodInt;
427
+ size: import("zod").ZodInt;
428
+ offset: import("zod").ZodInt;
429
+ numberOfElements: import("zod").ZodInt;
430
+ totalElements: import("zod").ZodOptional<import("zod").ZodInt>;
431
+ totalPages: import("zod").ZodOptional<import("zod").ZodInt>;
432
+ isEmpty: import("zod").ZodBoolean;
433
+ isFirst: import("zod").ZodBoolean;
434
+ isLast: import("zod").ZodBoolean;
435
+ }, import("zod/v4/core").$strip>;
436
+ }, import("zod/v4/core").$strip>;
413
437
  }>;
414
438
  /**
415
439
  * Get an organization by ID.
416
440
  */
417
441
  readonly getOrganization: import("alepha/server").ActionPrimitiveFn<{
418
- params: import("typebox").TObject<{
419
- id: import("typebox").TString;
420
- }>;
421
- response: import("typebox").TObject<{
422
- id: PgAttr<PgAttr<import("typebox").TString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
423
- version: PgAttr<PgAttr<import("typebox").TInteger, typeof PG_VERSION>, typeof PG_DEFAULT>;
424
- createdAt: PgAttr<PgAttr<import("typebox").TString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
425
- updatedAt: PgAttr<PgAttr<import("typebox").TString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
426
- name: import("typebox").TString;
427
- slug: import("typebox").TString;
428
- enabled: PgAttr<import("typebox").TBoolean, typeof PG_DEFAULT>;
429
- }>;
442
+ params: import("zod").ZodObject<{
443
+ id: import("zod").ZodString;
444
+ }, import("zod/v4/core").$strip>;
445
+ response: import("zod").ZodObject<{
446
+ id: PgAttr<PgAttr<import("zod").ZodString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
447
+ version: PgAttr<PgAttr<import("zod").ZodInt, typeof PG_VERSION>, typeof PG_DEFAULT>;
448
+ createdAt: PgAttr<PgAttr<import("zod").ZodString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
449
+ updatedAt: PgAttr<PgAttr<import("zod").ZodString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
450
+ name: import("zod").ZodString;
451
+ slug: import("zod").ZodString;
452
+ enabled: PgAttr<import("zod").ZodBoolean, typeof PG_DEFAULT>;
453
+ }, import("zod/v4/core").$strip>;
430
454
  }>;
431
455
  /**
432
456
  * Create a new organization.
433
457
  */
434
458
  readonly createOrganization: import("alepha/server").ActionPrimitiveFn<{
435
- body: import("typebox").TObject<{
436
- name: import("typebox").TString;
437
- slug: import("typebox").TString;
438
- enabled: import("typebox").TOptional<import("typebox").TBoolean>;
439
- }>;
440
- response: import("typebox").TObject<{
441
- id: PgAttr<PgAttr<import("typebox").TString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
442
- version: PgAttr<PgAttr<import("typebox").TInteger, typeof PG_VERSION>, typeof PG_DEFAULT>;
443
- createdAt: PgAttr<PgAttr<import("typebox").TString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
444
- updatedAt: PgAttr<PgAttr<import("typebox").TString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
445
- name: import("typebox").TString;
446
- slug: import("typebox").TString;
447
- enabled: PgAttr<import("typebox").TBoolean, typeof PG_DEFAULT>;
448
- }>;
459
+ body: import("zod").ZodObject<{
460
+ name: import("zod").ZodString;
461
+ slug: import("zod").ZodString;
462
+ enabled: import("zod").ZodOptional<import("zod").ZodBoolean>;
463
+ }, import("zod/v4/core").$strip>;
464
+ response: import("zod").ZodObject<{
465
+ id: PgAttr<PgAttr<import("zod").ZodString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
466
+ version: PgAttr<PgAttr<import("zod").ZodInt, typeof PG_VERSION>, typeof PG_DEFAULT>;
467
+ createdAt: PgAttr<PgAttr<import("zod").ZodString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
468
+ updatedAt: PgAttr<PgAttr<import("zod").ZodString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
469
+ name: import("zod").ZodString;
470
+ slug: import("zod").ZodString;
471
+ enabled: PgAttr<import("zod").ZodBoolean, typeof PG_DEFAULT>;
472
+ }, import("zod/v4/core").$strip>;
449
473
  }>;
450
474
  /**
451
475
  * Update an organization.
452
476
  */
453
477
  readonly updateOrganization: import("alepha/server").ActionPrimitiveFn<{
454
- params: import("typebox").TObject<{
455
- id: import("typebox").TString;
456
- }>;
457
- body: import("typebox").TObject<{
458
- name: import("typebox").TOptional<import("typebox").TString>;
459
- slug: import("typebox").TOptional<import("typebox").TString>;
460
- enabled: import("typebox").TOptional<import("typebox").TBoolean>;
461
- }>;
462
- response: import("typebox").TObject<{
463
- id: PgAttr<PgAttr<import("typebox").TString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
464
- version: PgAttr<PgAttr<import("typebox").TInteger, typeof PG_VERSION>, typeof PG_DEFAULT>;
465
- createdAt: PgAttr<PgAttr<import("typebox").TString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
466
- updatedAt: PgAttr<PgAttr<import("typebox").TString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
467
- name: import("typebox").TString;
468
- slug: import("typebox").TString;
469
- enabled: PgAttr<import("typebox").TBoolean, typeof PG_DEFAULT>;
470
- }>;
478
+ params: import("zod").ZodObject<{
479
+ id: import("zod").ZodString;
480
+ }, import("zod/v4/core").$strip>;
481
+ body: import("zod").ZodObject<{
482
+ name: import("zod").ZodOptional<import("zod").ZodString>;
483
+ slug: import("zod").ZodOptional<import("zod").ZodString>;
484
+ enabled: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodBoolean>>;
485
+ }, import("zod/v4/core").$strip>;
486
+ response: import("zod").ZodObject<{
487
+ id: PgAttr<PgAttr<import("zod").ZodString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
488
+ version: PgAttr<PgAttr<import("zod").ZodInt, typeof PG_VERSION>, typeof PG_DEFAULT>;
489
+ createdAt: PgAttr<PgAttr<import("zod").ZodString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
490
+ updatedAt: PgAttr<PgAttr<import("zod").ZodString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
491
+ name: import("zod").ZodString;
492
+ slug: import("zod").ZodString;
493
+ enabled: PgAttr<import("zod").ZodBoolean, typeof PG_DEFAULT>;
494
+ }, import("zod/v4/core").$strip>;
471
495
  }>;
472
496
  /**
473
497
  * Delete an organization.
474
498
  */
475
499
  readonly deleteOrganization: import("alepha/server").ActionPrimitiveFn<{
476
- params: import("typebox").TObject<{
477
- id: import("typebox").TString;
478
- }>;
479
- response: import("typebox").TObject<{
480
- ok: import("typebox").TBoolean;
481
- id: import("typebox").TOptional<import("typebox").TUnion<[import("typebox").TString, import("typebox").TInteger]>>;
482
- count: import("typebox").TOptional<import("typebox").TNumber>;
483
- }>;
500
+ params: import("zod").ZodObject<{
501
+ id: import("zod").ZodString;
502
+ }, import("zod/v4/core").$strip>;
503
+ response: import("zod").ZodObject<{
504
+ ok: import("zod").ZodBoolean;
505
+ id: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodInt]>>;
506
+ count: import("zod").ZodOptional<import("zod").ZodNumber>;
507
+ }, import("zod/v4/core").$strip>;
484
508
  }>;
485
509
  }
486
510
  //#endregion
487
511
  //#region ../../src/api/organizations/schemas/organizationResourceSchema.d.ts
488
- declare const organizationResourceSchema: import("typebox").TObject<{
489
- id: PgAttr<PgAttr<import("typebox").TString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
490
- version: PgAttr<PgAttr<import("typebox").TInteger, typeof PG_VERSION>, typeof PG_DEFAULT>;
491
- createdAt: PgAttr<PgAttr<import("typebox").TString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
492
- updatedAt: PgAttr<PgAttr<import("typebox").TString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
493
- name: import("typebox").TString;
494
- slug: import("typebox").TString;
495
- enabled: PgAttr<import("typebox").TBoolean, typeof PG_DEFAULT>;
496
- }>;
512
+ declare const organizationResourceSchema: import("zod").ZodObject<{
513
+ id: PgAttr<PgAttr<import("zod").ZodString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
514
+ version: PgAttr<PgAttr<import("zod").ZodInt, typeof PG_VERSION>, typeof PG_DEFAULT>;
515
+ createdAt: PgAttr<PgAttr<import("zod").ZodString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
516
+ updatedAt: PgAttr<PgAttr<import("zod").ZodString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
517
+ name: import("zod").ZodString;
518
+ slug: import("zod").ZodString;
519
+ enabled: PgAttr<import("zod").ZodBoolean, typeof PG_DEFAULT>;
520
+ }, import("zod/v4/core").$strip>;
497
521
  type OrganizationResource = Static<typeof organizationResourceSchema>;
498
522
  //#endregion
499
523
  //#region ../../src/api/organizations/index.d.ts
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/orm/core/schemas/insertSchema.ts","../../../src/orm/core/schemas/updateSchema.ts","../../../src/orm/core/primitives/$entity.ts","../../../src/orm/core/constants/PG_SYMBOLS.ts","../../../src/orm/core/helpers/pgAttr.ts","../../../src/orm/core/schemas/databaseEnvSchema.ts","../../../src/api/organizations/entities/organizations.ts","../../../src/api/organizations/schemas/createOrganizationSchema.ts","../../../src/api/organizations/schemas/organizationQuerySchema.ts","../../../src/api/organizations/schemas/updateOrganizationSchema.ts","../../../src/api/organizations/services/OrganizationService.ts","../../../src/api/organizations/controllers/AdminOrganizationController.ts","../../../src/api/organizations/schemas/organizationResourceSchema.ts","../../../src/api/organizations/index.ts"],"mappings":";;;;;;;;;;;;;;KAiBY,aAAA,WAAwB,OAAA,IAAW,OAAA,eACjC,CAAA,kBAAmB,CAAA,eAAgB,CAAA;EAAA,CAC5C,YAAA;AAAA,YAGC,CAAA,GAAI,CAAA,eAAgB,CAAA;EAAA,CACjB,UAAA;AAAA;EAAA,CACA,eAAA;AAAA;EACD,WAAA;AAAA,IACF,SAAA,CAAU,CAAA,eAAgB,CAAA,KAC1B,CAAA,eAAgB,CAAA;;;;;;;;;;;;KCTV,aAAA,WAAwB,OAAA,IAAW,OAAA,eACjC,CAAA,kBAAmB,CAAA,eAAgB,CAAA;EAAA,CAC5C,YAAA;AAAA,YAGC,CAAA,GAAI,CAAA,eAAgB,CAAA,UAAW,SAAA,YAC/B,SAAA,CAAU,MAAA,EAAQ,CAAA,EAAG,KAAA,MACrB,CAAA,eAAgB,CAAA;;;UCWL,sBAAA,WACL,OAAA,eACG,MAAA,CAAO,CAAA;EFZhB;;;;EEkBJ,IAAA;EF3BoD;;;EEgCpD,MAAA,EAAQ,CAAA;EF/BP;;;EEoCD,OAAA,IACI,IAAA;IFpCD;;;IEyCG,MAAA,EAAQ,IAAA;IFrCP;;;IEyCD,MAAA;IFtCQ;;;IE0CR,IAAA;IFzCe;AAAA;;IE6Cf,KAAA,GAAQ,GAAA;EAAA;IDtDJ;;;IC4DJ,OAAA,EAAS,IAAA;ID3DH;;;IC+DN,MAAA;ID3DF;;;IC+DE,IAAA;ID9DgB;;;ICkEhB,KAAA,GAAQ,GAAA;EAAA;IDjEM;;;;;;;;;;;;;;;;ICoFd,WAAA,GAAc,IAAA,EAAM,MAAA,CAAO,IAAA,qBAAyB,GAAA;IDrFtD;;;ICyFE,MAAA;IDxFF;;;IC4FE,IAAA;;;;IAIA,KAAA,GAAQ,GAAA;EAAA;EArFuB;;;EA4FrC,WAAA,GAAc,KAAA;IA/EN;;;IAmFN,IAAA;IAtDa;;;IA0Db,OAAA,EAAS,KAAA,OAAY,MAAA,CAAO,CAAA;IA3B4B;;;;IAgCxD,cAAA,EAAgB,KAAA,OAAY,YAAA;EAAA;EAAZ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkClB,WAAA,GAAc,KAAA;IAzFR;;;IA6FJ,OAAA,EAAS,KAAA,OAAY,MAAA,CAAO,CAAA;IAtEJ;;;IA0ExB,IAAA;IAtEI;;;IA0EJ,MAAA;IA3DF;;;IA+DE,KAAA,GAAQ,GAAA;EAAA;EAvDa;;;EA6DvB,MAAA,IACE,IAAA,EAAM,uBAAA,SAAgC,UAAA,CAAW,CAAA,aAC9C,uBAAA;AAAA;AAAA,cAKM,eAAA,WAA0B,OAAA,GAAU,OAAA;EAAA,SAC/B,OAAA,EAAS,sBAAA,CAAuB,CAAA;cAEpC,OAAA,EAAS,sBAAA,CAAuB,CAAA;EAI5C,KAAA,CAAM,KAAA;EAAA,IAYF,IAAA,IAAQ,aAAA,CAAc,CAAA;EAAA,IActB,IAAA;EAAA,IAIA,MAAA,IAAU,CAAA;EAAA,IAIV,YAAA,IAAgB,aAAA,CAAc,CAAA;EAAA,IAI9B,YAAA,IAAgB,aAAA,CAAc,CAAA;AAAA;;;;KAYxB,UAAA,WAAqB,OAAA,oBACjB,CAAA,iBAAkB,mBAAA;AAAA,KAYtB,YAAA,WAAuB,OAAA;EACjC,IAAA;EACA,MAAA,EAAQ,eAAA,CAAgB,CAAA;AAAA;AAAA,KAGd,aAAA,WAAwB,OAAA,oBACpB,CAAA,iBAAkB,YAAA,CAAa,CAAA;;;cCjRlC,UAAA;AAAA,cACA,cAAA;AAAA,cACA,aAAA;AAAA,cACA,aAAA;AAAA,cACA,aAAA;AAAA,cACA,UAAA;AAAA,cACA,WAAA;AAAA,cACA,OAAA;AAAA,cACA,MAAA;AAAA,cACA,YAAA;AAAA,cACA,eAAA;;;;cAKA,SAAA;AAAA,KAMD,SAAA;EAAA,CACT,UAAA;EAAA,CACA,cAAA;EAAA,CACA,aAAA;EAAA,CACA,aAAA;EAAA,CACA,aAAA;EAAA,CACA,UAAA;EAAA,CACA,WAAA,GAAc,iBAAA;EAAA,CACd,MAAA,GAAS,YAAA;EAAA,CACT,OAAA,GAAU,aAAA;EAAA,CACV,YAAA,GAAe,kBAAA;EAAA,CACf,eAAA;EHtBmD;;;EAAA,CG2BnD,SAAA;AAAA;AAAA,KAGS,YAAA,SAAqB,SAAS;AAAA,KAE9B,iBAAA;EACV,IAAA;AAAA,IACE,iBAAiB;EACjB,IAAA;AAAA;AAAA,UAGa,aAAA;EACf,IAAA;EACA,WAAW;AAAA;AAAA,UAGI,kBAAA;EHlCD;;;EGsCd,UAAA,EAAY,GAAG;EHrCM;AAAA;;;;EG4CrB,IAAA;AAAA;AAAA,UAGe,YAAA;EACf,GAAA;IACE,IAAA;IACA,MAAA,EAAQ,eAAA;EAAA;EAEV,OAAA;IACE,QAAA,GAAW,kBAAA;IACX,QAAA,GAAW,kBAAA;EAAA;AAAA;;;;;;KC5BH,MAAA,WAAiB,OAAA,gBAAuB,YAAA,IAAgB,CAAA,WAC5D,KAAA,GAAQ,SAAA,CAAU,CAAA;;;;;;;;;;;;;;;AJrC1B;cKFa,iBAAA,oBAAiB,OAAA;;ELEM;;;;;;;;;;YKYxB,GAAA,SAAY,OAAA,CAAQ,MAAA,QAAc,iBAAA;AAAA;;;cCzBjC,aAAA,uBAAa,eAAA,mBAAA,OAAA;;;;;;;;;KAed,kBAAA,GAAqB,MAAM,QAAQ,aAAA,CAAc,MAAA;;;cChBhD,wBAAA,oBAAwB,OAAA;;;;;KAMzB,kBAAA,GAAqB,MAAM,QAAQ,wBAAA;;;cCLlC,uBAAA,oBAAuB,OAAA;;;;;;;KAKxB,iBAAA,GAAoB,MAAM,QAAQ,uBAAA;;;cCLjC,wBAAA,oBAAwB,OAAA;;;;;KAEzB,kBAAA,GAAqB,MAAM,QAAQ,wBAAA;;;cCKlC,mBAAA;EAAA,mBACQ,MAAA,EAAM,MAAA;EAAA,mBACN,GAAA,0BAAG,MAAA;EAAA,mBACH,IAAA,uBAAI,UAAA,mBAAA,OAAA;;;;;;;;;EVIQ;;;EUClB,IAAA,CACX,KAAA,GAAO,iBAAA,GACN,OAAA,CAAQ,IAAA,CAAK,kBAAA;EVCR;;;EUkBK,OAAA,CAAQ,EAAA,WAAa,OAAA,CAAQ,kBAAA;EVd5B;;;EUqBD,SAAA,CAAU,IAAA,WAAe,OAAA,CAAQ,kBAAA;EVpB1B;;;EU2BP,MAAA,CAAO,IAAA,EAAM,kBAAA,GAAqB,OAAA,CAAQ,kBAAA;EVrC/B;;;EU4CX,MAAA,CACX,EAAA,UACA,IAAA,EAAM,kBAAA,GACL,OAAA,CAAQ,kBAAA;EV9CC;;;EUqDC,MAAA,CAAO,EAAA,WAAa,OAAA;AAAA;;;cC9DtB,2BAAA;EAAA,mBACQ,GAAA;EAAA,mBACA,KAAA;EAAA,mBACA,mBAAA,EAAmB,mBAAA;;;;WAKtB,iBAAA,0BAAiB,iBAAA;;;;;;;;;0DALK,cAAA;;;;;;;;;EXcxB;;;EAAA,SWME,eAAA,0BAAe,iBAAA;;;;;;;;;;;;;;EXVvB;;;EAAA,SW2BQ,kBAAA,0BAAkB,iBAAA;;;;;;;;;;;;;;;;EV9BtB;;;EAAA,SU8CI,kBAAA,0BAAkB,iBAAA;;;;;;;;;;;;;;;;;;;EV9CH;;;EAAA,SUkEf,kBAAA,0BAAkB,iBAAA;;;;;;;;;;;;;cClFvB,0BAAA,oBAA0B,OAAA;sDAAuB,cAAA;;;;;;;;KAElD,oBAAA,GAAuB,MAAM,QAAQ,0BAAA;;;;;;;;;AZYjD;;;;;caUa,sBAAA,mBAAsB,OAAA,kBAAA,MAAA"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/orm/core/schemas/insertSchema.ts","../../../src/orm/core/schemas/updateSchema.ts","../../../src/orm/core/primitives/$entity.ts","../../../src/orm/core/constants/PG_SYMBOLS.ts","../../../src/orm/core/helpers/pgAttr.ts","../../../src/orm/core/schemas/databaseEnvSchema.ts","../../../src/api/organizations/entities/organizations.ts","../../../src/api/organizations/schemas/createOrganizationSchema.ts","../../../src/api/organizations/schemas/organizationQuerySchema.ts","../../../src/api/organizations/schemas/updateOrganizationSchema.ts","../../../src/api/organizations/services/OrganizationService.ts","../../../src/api/organizations/controllers/AdminOrganizationController.ts","../../../src/api/organizations/schemas/organizationResourceSchema.ts","../../../src/api/organizations/index.ts"],"mappings":"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"}
@@ -1,38 +1,38 @@
1
- import { $inject, $module, Alepha, t } from "alepha";
1
+ import { $inject, $module, Alepha, z } from "alepha";
2
2
  import { $secure } from "alepha/security";
3
3
  import { $action, okSchema } from "alepha/server";
4
4
  import { $entity, $repository, db, pageQuerySchema } from "alepha/orm";
5
5
  import { $logger } from "alepha/logger";
6
6
  //#region ../../src/api/organizations/schemas/createOrganizationSchema.ts
7
- const createOrganizationSchema = t.object({
8
- name: t.text(),
9
- slug: t.text({
7
+ const createOrganizationSchema = z.object({
8
+ name: z.text(),
9
+ slug: z.text({
10
10
  minLength: 2,
11
11
  maxLength: 100
12
12
  }),
13
- enabled: t.optional(t.boolean())
13
+ enabled: z.boolean().optional()
14
14
  });
15
15
  //#endregion
16
16
  //#region ../../src/api/organizations/schemas/organizationQuerySchema.ts
17
- const organizationQuerySchema = t.extend(pageQuerySchema, {
18
- name: t.optional(t.text({ description: "Filter by name (partial match)" })),
19
- enabled: t.optional(t.boolean({ description: "Filter by enabled status" }))
17
+ const organizationQuerySchema = pageQuerySchema.extend({
18
+ name: z.text({ description: "Filter by name (partial match)" }).optional(),
19
+ enabled: z.boolean().describe("Filter by enabled status").optional()
20
20
  });
21
21
  //#endregion
22
22
  //#region ../../src/api/organizations/entities/organizations.ts
23
23
  const organizations = $entity({
24
24
  name: "organizations",
25
- schema: t.object({
26
- id: db.primaryKey(t.uuid()),
25
+ schema: z.object({
26
+ id: db.primaryKey(z.uuid()),
27
27
  version: db.version(),
28
28
  createdAt: db.createdAt(),
29
29
  updatedAt: db.updatedAt(),
30
- name: t.text(),
31
- slug: t.text({
30
+ name: z.text(),
31
+ slug: z.text({
32
32
  minLength: 2,
33
33
  maxLength: 100
34
34
  }),
35
- enabled: db.default(t.boolean(), true)
35
+ enabled: db.default(z.boolean(), true)
36
36
  }),
37
37
  indexes: [{
38
38
  columns: ["slug"],
@@ -44,7 +44,7 @@ const organizations = $entity({
44
44
  const organizationResourceSchema = organizations.schema;
45
45
  //#endregion
46
46
  //#region ../../src/api/organizations/schemas/updateOrganizationSchema.ts
47
- const updateOrganizationSchema = t.partial(createOrganizationSchema);
47
+ const updateOrganizationSchema = createOrganizationSchema.partial();
48
48
  //#endregion
49
49
  //#region ../../src/api/organizations/services/OrganizationService.ts
50
50
  var OrganizationService = class {
@@ -108,7 +108,7 @@ var AdminOrganizationController = class {
108
108
  description: "Find organizations with pagination and filtering",
109
109
  schema: {
110
110
  query: organizationQuerySchema,
111
- response: t.page(organizationResourceSchema)
111
+ response: z.page(organizationResourceSchema)
112
112
  },
113
113
  handler: ({ query }) => this.organizationService.find(query)
114
114
  });
@@ -121,7 +121,7 @@ var AdminOrganizationController = class {
121
121
  use: [$secure({ permissions: ["admin:organization:read"] })],
122
122
  description: "Get an organization by ID",
123
123
  schema: {
124
- params: t.object({ id: t.uuid() }),
124
+ params: z.object({ id: z.uuid() }),
125
125
  response: organizationResourceSchema
126
126
  },
127
127
  handler: ({ params }) => this.organizationService.getById(params.id)
@@ -151,7 +151,7 @@ var AdminOrganizationController = class {
151
151
  use: [$secure({ permissions: ["admin:organization:update"] })],
152
152
  description: "Update an organization",
153
153
  schema: {
154
- params: t.object({ id: t.uuid() }),
154
+ params: z.object({ id: z.uuid() }),
155
155
  body: updateOrganizationSchema,
156
156
  response: organizationResourceSchema
157
157
  },
@@ -167,7 +167,7 @@ var AdminOrganizationController = class {
167
167
  use: [$secure({ permissions: ["admin:organization:delete"] })],
168
168
  description: "Delete an organization",
169
169
  schema: {
170
- params: t.object({ id: t.uuid() }),
170
+ params: z.object({ id: z.uuid() }),
171
171
  response: okSchema
172
172
  },
173
173
  handler: async ({ params }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/api/organizations/schemas/createOrganizationSchema.ts","../../../src/api/organizations/schemas/organizationQuerySchema.ts","../../../src/api/organizations/entities/organizations.ts","../../../src/api/organizations/schemas/organizationResourceSchema.ts","../../../src/api/organizations/schemas/updateOrganizationSchema.ts","../../../src/api/organizations/services/OrganizationService.ts","../../../src/api/organizations/controllers/AdminOrganizationController.ts","../../../src/api/organizations/index.ts"],"sourcesContent":["import type { Static } from \"alepha\";\nimport { t } from \"alepha\";\n\nexport const createOrganizationSchema = t.object({\n name: t.text(),\n slug: t.text({ minLength: 2, maxLength: 100 }),\n enabled: t.optional(t.boolean()),\n});\n\nexport type CreateOrganization = Static<typeof createOrganizationSchema>;\n","import type { Static } from \"alepha\";\nimport { t } from \"alepha\";\nimport { pageQuerySchema } from \"alepha/orm\";\n\nexport const organizationQuerySchema = t.extend(pageQuerySchema, {\n name: t.optional(t.text({ description: \"Filter by name (partial match)\" })),\n enabled: t.optional(t.boolean({ description: \"Filter by enabled status\" })),\n});\n\nexport type OrganizationQuery = Static<typeof organizationQuerySchema>;\n","import type { Static } from \"alepha\";\nimport { t } from \"alepha\";\nimport { $entity, db } from \"alepha/orm\";\n\nexport const organizations = $entity({\n name: \"organizations\",\n schema: t.object({\n id: db.primaryKey(t.uuid()),\n version: db.version(),\n createdAt: db.createdAt(),\n updatedAt: db.updatedAt(),\n\n name: t.text(),\n slug: t.text({ minLength: 2, maxLength: 100 }),\n enabled: db.default(t.boolean(), true),\n }),\n indexes: [{ columns: [\"slug\"], unique: true }],\n});\n\nexport type OrganizationEntity = Static<typeof organizations.schema>;\n","import type { Static } from \"alepha\";\nimport { organizations } from \"../entities/organizations.ts\";\n\nexport const organizationResourceSchema = organizations.schema;\n\nexport type OrganizationResource = Static<typeof organizationResourceSchema>;\n","import type { Static } from \"alepha\";\nimport { t } from \"alepha\";\nimport { createOrganizationSchema } from \"./createOrganizationSchema.ts\";\n\nexport const updateOrganizationSchema = t.partial(createOrganizationSchema);\n\nexport type UpdateOrganization = Static<typeof updateOrganizationSchema>;\n","import { $inject, Alepha } from \"alepha\";\nimport { $logger } from \"alepha/logger\";\nimport { $repository, type Page } from \"alepha/orm\";\nimport {\n type OrganizationEntity,\n organizations,\n} from \"../entities/organizations.ts\";\nimport type { CreateOrganization } from \"../schemas/createOrganizationSchema.ts\";\nimport type { OrganizationQuery } from \"../schemas/organizationQuerySchema.ts\";\nimport type { UpdateOrganization } from \"../schemas/updateOrganizationSchema.ts\";\n\nexport class OrganizationService {\n protected readonly alepha = $inject(Alepha);\n protected readonly log = $logger();\n protected readonly repo = $repository(organizations);\n\n /**\n * Find organizations with pagination and filtering.\n */\n public async find(\n query: OrganizationQuery = {},\n ): Promise<Page<OrganizationEntity>> {\n query.sort ??= \"-createdAt\";\n\n const where = this.repo.createQueryWhere();\n\n if (query.name) {\n where.name = { like: `%${query.name}%` };\n }\n\n if (query.enabled !== undefined) {\n where.enabled = { eq: query.enabled };\n }\n\n return this.repo.paginate(query, { where }, { count: true });\n }\n\n /**\n * Get an organization by ID.\n */\n public async getById(id: string): Promise<OrganizationEntity> {\n return this.repo.getById(id);\n }\n\n /**\n * Get an organization by slug.\n */\n public async getBySlug(slug: string): Promise<OrganizationEntity> {\n return this.repo.getOne({ where: { slug: { eq: slug } } });\n }\n\n /**\n * Create a new organization.\n */\n public async create(data: CreateOrganization): Promise<OrganizationEntity> {\n return this.repo.create(data);\n }\n\n /**\n * Update an organization.\n */\n public async update(\n id: string,\n data: UpdateOrganization,\n ): Promise<OrganizationEntity> {\n return this.repo.updateById(id, data);\n }\n\n /**\n * Delete an organization.\n */\n public async delete(id: string): Promise<void> {\n await this.repo.deleteById(id);\n }\n}\n","import { $inject, t } from \"alepha\";\nimport { $secure } from \"alepha/security\";\nimport { $action, okSchema } from \"alepha/server\";\nimport { createOrganizationSchema } from \"../schemas/createOrganizationSchema.ts\";\nimport { organizationQuerySchema } from \"../schemas/organizationQuerySchema.ts\";\nimport { organizationResourceSchema } from \"../schemas/organizationResourceSchema.ts\";\nimport { updateOrganizationSchema } from \"../schemas/updateOrganizationSchema.ts\";\nimport { OrganizationService } from \"../services/OrganizationService.ts\";\n\nexport class AdminOrganizationController {\n protected readonly url = \"/organizations\";\n protected readonly group = \"admin:organizations\";\n protected readonly organizationService = $inject(OrganizationService);\n\n /**\n * Find organizations with pagination and filtering.\n */\n public readonly findOrganizations = $action({\n path: this.url,\n group: this.group,\n use: [$secure({ permissions: [\"admin:organization:read\"] })],\n description: \"Find organizations with pagination and filtering\",\n schema: {\n query: organizationQuerySchema,\n response: t.page(organizationResourceSchema),\n },\n handler: ({ query }) => this.organizationService.find(query),\n });\n\n /**\n * Get an organization by ID.\n */\n public readonly getOrganization = $action({\n path: `${this.url}/:id`,\n group: this.group,\n use: [$secure({ permissions: [\"admin:organization:read\"] })],\n description: \"Get an organization by ID\",\n schema: {\n params: t.object({\n id: t.uuid(),\n }),\n response: organizationResourceSchema,\n },\n handler: ({ params }) => this.organizationService.getById(params.id),\n });\n\n /**\n * Create a new organization.\n */\n public readonly createOrganization = $action({\n method: \"POST\",\n path: this.url,\n group: this.group,\n use: [$secure({ permissions: [\"admin:organization:create\"] })],\n description: \"Create a new organization\",\n schema: {\n body: createOrganizationSchema,\n response: organizationResourceSchema,\n },\n handler: ({ body }) => this.organizationService.create(body),\n });\n\n /**\n * Update an organization.\n */\n public readonly updateOrganization = $action({\n method: \"PATCH\",\n path: `${this.url}/:id`,\n group: this.group,\n use: [$secure({ permissions: [\"admin:organization:update\"] })],\n description: \"Update an organization\",\n schema: {\n params: t.object({\n id: t.uuid(),\n }),\n body: updateOrganizationSchema,\n response: organizationResourceSchema,\n },\n handler: ({ params, body }) =>\n this.organizationService.update(params.id, body),\n });\n\n /**\n * Delete an organization.\n */\n public readonly deleteOrganization = $action({\n method: \"DELETE\",\n path: `${this.url}/:id`,\n group: this.group,\n use: [$secure({ permissions: [\"admin:organization:delete\"] })],\n description: \"Delete an organization\",\n schema: {\n params: t.object({\n id: t.uuid(),\n }),\n response: okSchema,\n },\n handler: async ({ params }) => {\n await this.organizationService.delete(params.id);\n return { ok: true, id: params.id };\n },\n });\n}\n","import { $module } from \"alepha\";\nimport { AdminOrganizationController } from \"./controllers/AdminOrganizationController.ts\";\nimport { OrganizationService } from \"./services/OrganizationService.ts\";\n\n// ---------------------------------------------------------------------------------------------------------------------\n\nexport * from \"./controllers/AdminOrganizationController.ts\";\nexport * from \"./entities/organizations.ts\";\nexport * from \"./schemas/createOrganizationSchema.ts\";\nexport * from \"./schemas/organizationQuerySchema.ts\";\nexport * from \"./schemas/organizationResourceSchema.ts\";\nexport * from \"./schemas/updateOrganizationSchema.ts\";\nexport * from \"./services/OrganizationService.ts\";\n\n// ---------------------------------------------------------------------------------------------------------------------\n\n/**\n * Organization management for multi-tenancy.\n *\n * **Features:**\n * - Admin CRUD for organizations\n * - Organization scoping via `db.organization()` on entities\n * - User with no organization = god mode (sees all resources)\n * - User with an organization = scoped to that organization\n *\n * @module alepha.api.organizations\n */\nexport const AlephaApiOrganizations = $module({\n name: \"alepha.api.organizations\",\n services: [OrganizationService, AdminOrganizationController],\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/api/organizations/schemas/createOrganizationSchema.ts","../../../src/api/organizations/schemas/organizationQuerySchema.ts","../../../src/api/organizations/entities/organizations.ts","../../../src/api/organizations/schemas/organizationResourceSchema.ts","../../../src/api/organizations/schemas/updateOrganizationSchema.ts","../../../src/api/organizations/services/OrganizationService.ts","../../../src/api/organizations/controllers/AdminOrganizationController.ts","../../../src/api/organizations/index.ts"],"sourcesContent":["import type { Static } from \"alepha\";\nimport { z } from \"alepha\";\n\nexport const createOrganizationSchema = z.object({\n name: z.text(),\n slug: z.text({ minLength: 2, maxLength: 100 }),\n enabled: z.boolean().optional(),\n});\n\nexport type CreateOrganization = Static<typeof createOrganizationSchema>;\n","import type { Static } from \"alepha\";\nimport { z } from \"alepha\";\nimport { pageQuerySchema } from \"alepha/orm\";\n\nexport const organizationQuerySchema = pageQuerySchema.extend({\n name: z.text({ description: \"Filter by name (partial match)\" }).optional(),\n enabled: z.boolean().describe(\"Filter by enabled status\").optional(),\n});\n\nexport type OrganizationQuery = Static<typeof organizationQuerySchema>;\n","import type { Static } from \"alepha\";\nimport { z } from \"alepha\";\nimport { $entity, db } from \"alepha/orm\";\n\nexport const organizations = $entity({\n name: \"organizations\",\n schema: z.object({\n id: db.primaryKey(z.uuid()),\n version: db.version(),\n createdAt: db.createdAt(),\n updatedAt: db.updatedAt(),\n\n name: z.text(),\n slug: z.text({ minLength: 2, maxLength: 100 }),\n enabled: db.default(z.boolean(), true),\n }),\n indexes: [{ columns: [\"slug\"], unique: true }],\n});\n\nexport type OrganizationEntity = Static<typeof organizations.schema>;\n","import type { Static } from \"alepha\";\nimport { organizations } from \"../entities/organizations.ts\";\n\nexport const organizationResourceSchema = organizations.schema;\n\nexport type OrganizationResource = Static<typeof organizationResourceSchema>;\n","import type { Static } from \"alepha\";\nimport { createOrganizationSchema } from \"./createOrganizationSchema.ts\";\n\nexport const updateOrganizationSchema = createOrganizationSchema.partial();\n\nexport type UpdateOrganization = Static<typeof updateOrganizationSchema>;\n","import { $inject, Alepha } from \"alepha\";\nimport { $logger } from \"alepha/logger\";\nimport { $repository, type Page } from \"alepha/orm\";\nimport {\n type OrganizationEntity,\n organizations,\n} from \"../entities/organizations.ts\";\nimport type { CreateOrganization } from \"../schemas/createOrganizationSchema.ts\";\nimport type { OrganizationQuery } from \"../schemas/organizationQuerySchema.ts\";\nimport type { UpdateOrganization } from \"../schemas/updateOrganizationSchema.ts\";\n\nexport class OrganizationService {\n protected readonly alepha = $inject(Alepha);\n protected readonly log = $logger();\n protected readonly repo = $repository(organizations);\n\n /**\n * Find organizations with pagination and filtering.\n */\n public async find(\n query: OrganizationQuery = {},\n ): Promise<Page<OrganizationEntity>> {\n query.sort ??= \"-createdAt\";\n\n const where = this.repo.createQueryWhere();\n\n if (query.name) {\n where.name = { like: `%${query.name}%` };\n }\n\n if (query.enabled !== undefined) {\n where.enabled = { eq: query.enabled };\n }\n\n return this.repo.paginate(query, { where }, { count: true });\n }\n\n /**\n * Get an organization by ID.\n */\n public async getById(id: string): Promise<OrganizationEntity> {\n return this.repo.getById(id);\n }\n\n /**\n * Get an organization by slug.\n */\n public async getBySlug(slug: string): Promise<OrganizationEntity> {\n return this.repo.getOne({ where: { slug: { eq: slug } } });\n }\n\n /**\n * Create a new organization.\n */\n public async create(data: CreateOrganization): Promise<OrganizationEntity> {\n return this.repo.create(data);\n }\n\n /**\n * Update an organization.\n */\n public async update(\n id: string,\n data: UpdateOrganization,\n ): Promise<OrganizationEntity> {\n return this.repo.updateById(id, data);\n }\n\n /**\n * Delete an organization.\n */\n public async delete(id: string): Promise<void> {\n await this.repo.deleteById(id);\n }\n}\n","import { $inject, z } from \"alepha\";\nimport { $secure } from \"alepha/security\";\nimport { $action, okSchema } from \"alepha/server\";\nimport { createOrganizationSchema } from \"../schemas/createOrganizationSchema.ts\";\nimport { organizationQuerySchema } from \"../schemas/organizationQuerySchema.ts\";\nimport { organizationResourceSchema } from \"../schemas/organizationResourceSchema.ts\";\nimport { updateOrganizationSchema } from \"../schemas/updateOrganizationSchema.ts\";\nimport { OrganizationService } from \"../services/OrganizationService.ts\";\n\nexport class AdminOrganizationController {\n protected readonly url = \"/organizations\";\n protected readonly group = \"admin:organizations\";\n protected readonly organizationService = $inject(OrganizationService);\n\n /**\n * Find organizations with pagination and filtering.\n */\n public readonly findOrganizations = $action({\n path: this.url,\n group: this.group,\n use: [$secure({ permissions: [\"admin:organization:read\"] })],\n description: \"Find organizations with pagination and filtering\",\n schema: {\n query: organizationQuerySchema,\n response: z.page(organizationResourceSchema),\n },\n handler: ({ query }) => this.organizationService.find(query),\n });\n\n /**\n * Get an organization by ID.\n */\n public readonly getOrganization = $action({\n path: `${this.url}/:id`,\n group: this.group,\n use: [$secure({ permissions: [\"admin:organization:read\"] })],\n description: \"Get an organization by ID\",\n schema: {\n params: z.object({\n id: z.uuid(),\n }),\n response: organizationResourceSchema,\n },\n handler: ({ params }) => this.organizationService.getById(params.id),\n });\n\n /**\n * Create a new organization.\n */\n public readonly createOrganization = $action({\n method: \"POST\",\n path: this.url,\n group: this.group,\n use: [$secure({ permissions: [\"admin:organization:create\"] })],\n description: \"Create a new organization\",\n schema: {\n body: createOrganizationSchema,\n response: organizationResourceSchema,\n },\n handler: ({ body }) => this.organizationService.create(body),\n });\n\n /**\n * Update an organization.\n */\n public readonly updateOrganization = $action({\n method: \"PATCH\",\n path: `${this.url}/:id`,\n group: this.group,\n use: [$secure({ permissions: [\"admin:organization:update\"] })],\n description: \"Update an organization\",\n schema: {\n params: z.object({\n id: z.uuid(),\n }),\n body: updateOrganizationSchema,\n response: organizationResourceSchema,\n },\n handler: ({ params, body }) =>\n this.organizationService.update(params.id, body),\n });\n\n /**\n * Delete an organization.\n */\n public readonly deleteOrganization = $action({\n method: \"DELETE\",\n path: `${this.url}/:id`,\n group: this.group,\n use: [$secure({ permissions: [\"admin:organization:delete\"] })],\n description: \"Delete an organization\",\n schema: {\n params: z.object({\n id: z.uuid(),\n }),\n response: okSchema,\n },\n handler: async ({ params }) => {\n await this.organizationService.delete(params.id);\n return { ok: true, id: params.id };\n },\n });\n}\n","import { $module } from \"alepha\";\nimport { AdminOrganizationController } from \"./controllers/AdminOrganizationController.ts\";\nimport { OrganizationService } from \"./services/OrganizationService.ts\";\n\n// ---------------------------------------------------------------------------------------------------------------------\n\nexport * from \"./controllers/AdminOrganizationController.ts\";\nexport * from \"./entities/organizations.ts\";\nexport * from \"./schemas/createOrganizationSchema.ts\";\nexport * from \"./schemas/organizationQuerySchema.ts\";\nexport * from \"./schemas/organizationResourceSchema.ts\";\nexport * from \"./schemas/updateOrganizationSchema.ts\";\nexport * from \"./services/OrganizationService.ts\";\n\n// ---------------------------------------------------------------------------------------------------------------------\n\n/**\n * Organization management for multi-tenancy.\n *\n * **Features:**\n * - Admin CRUD for organizations\n * - Organization scoping via `db.organization()` on entities\n * - User with no organization = god mode (sees all resources)\n * - User with an organization = scoped to that organization\n *\n * @module alepha.api.organizations\n */\nexport const AlephaApiOrganizations = $module({\n name: \"alepha.api.organizations\",\n services: [OrganizationService, AdminOrganizationController],\n});\n"],"mappings":"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"}