alepha 0.15.1 → 0.15.3

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 (523) hide show
  1. package/README.md +68 -80
  2. package/dist/api/audits/index.d.ts +10 -33
  3. package/dist/api/audits/index.d.ts.map +1 -1
  4. package/dist/api/audits/index.js +10 -33
  5. package/dist/api/audits/index.js.map +1 -1
  6. package/dist/api/files/index.d.ts +10 -3
  7. package/dist/api/files/index.d.ts.map +1 -1
  8. package/dist/api/files/index.js +10 -3
  9. package/dist/api/files/index.js.map +1 -1
  10. package/dist/api/jobs/index.d.ts +162 -155
  11. package/dist/api/jobs/index.d.ts.map +1 -1
  12. package/dist/api/jobs/index.js +10 -3
  13. package/dist/api/jobs/index.js.map +1 -1
  14. package/dist/api/keys/index.d.ts +413 -0
  15. package/dist/api/keys/index.d.ts.map +1 -0
  16. package/dist/api/keys/index.js +476 -0
  17. package/dist/api/keys/index.js.map +1 -0
  18. package/dist/api/notifications/index.d.ts +10 -4
  19. package/dist/api/notifications/index.d.ts.map +1 -1
  20. package/dist/api/notifications/index.js +10 -4
  21. package/dist/api/notifications/index.js.map +1 -1
  22. package/dist/api/parameters/index.d.ts +43 -50
  23. package/dist/api/parameters/index.d.ts.map +1 -1
  24. package/dist/api/parameters/index.js +30 -37
  25. package/dist/api/parameters/index.js.map +1 -1
  26. package/dist/api/users/index.d.ts +1081 -760
  27. package/dist/api/users/index.d.ts.map +1 -1
  28. package/dist/api/users/index.js +2539 -218
  29. package/dist/api/users/index.js.map +1 -1
  30. package/dist/api/verifications/index.d.ts +138 -132
  31. package/dist/api/verifications/index.d.ts.map +1 -1
  32. package/dist/api/verifications/index.js +12 -4
  33. package/dist/api/verifications/index.js.map +1 -1
  34. package/dist/batch/index.d.ts +20 -40
  35. package/dist/batch/index.d.ts.map +1 -1
  36. package/dist/batch/index.js +31 -44
  37. package/dist/batch/index.js.map +1 -1
  38. package/dist/bucket/index.d.ts +440 -8
  39. package/dist/bucket/index.d.ts.map +1 -1
  40. package/dist/bucket/index.js +1861 -12
  41. package/dist/bucket/index.js.map +1 -1
  42. package/dist/cache/core/index.d.ts +179 -7
  43. package/dist/cache/core/index.d.ts.map +1 -1
  44. package/dist/cache/core/index.js +213 -7
  45. package/dist/cache/core/index.js.map +1 -1
  46. package/dist/cache/redis/index.d.ts +1 -0
  47. package/dist/cache/redis/index.d.ts.map +1 -1
  48. package/dist/cache/redis/index.js +4 -0
  49. package/dist/cache/redis/index.js.map +1 -1
  50. package/dist/cli/index.d.ts +638 -5645
  51. package/dist/cli/index.d.ts.map +1 -1
  52. package/dist/cli/index.js +2550 -368
  53. package/dist/cli/index.js.map +1 -1
  54. package/dist/command/index.d.ts +203 -45
  55. package/dist/command/index.d.ts.map +1 -1
  56. package/dist/command/index.js +2060 -71
  57. package/dist/command/index.js.map +1 -1
  58. package/dist/core/index.browser.js +70 -40
  59. package/dist/core/index.browser.js.map +1 -1
  60. package/dist/core/index.d.ts +34 -13
  61. package/dist/core/index.d.ts.map +1 -1
  62. package/dist/core/index.js +90 -40
  63. package/dist/core/index.js.map +1 -1
  64. package/dist/core/index.native.js +70 -40
  65. package/dist/core/index.native.js.map +1 -1
  66. package/dist/datetime/index.d.ts +15 -0
  67. package/dist/datetime/index.d.ts.map +1 -1
  68. package/dist/datetime/index.js +15 -0
  69. package/dist/datetime/index.js.map +1 -1
  70. package/dist/email/index.d.ts +323 -20
  71. package/dist/email/index.d.ts.map +1 -1
  72. package/dist/email/index.js +1857 -7
  73. package/dist/email/index.js.map +1 -1
  74. package/dist/fake/index.d.ts +90 -8
  75. package/dist/fake/index.d.ts.map +1 -1
  76. package/dist/fake/index.js +91 -20
  77. package/dist/fake/index.js.map +1 -1
  78. package/dist/lock/core/index.d.ts +11 -4
  79. package/dist/lock/core/index.d.ts.map +1 -1
  80. package/dist/lock/core/index.js +11 -4
  81. package/dist/lock/core/index.js.map +1 -1
  82. package/dist/logger/index.d.ts +17 -66
  83. package/dist/logger/index.d.ts.map +1 -1
  84. package/dist/logger/index.js +14 -63
  85. package/dist/logger/index.js.map +1 -1
  86. package/dist/mcp/index.d.ts +10 -30
  87. package/dist/mcp/index.d.ts.map +1 -1
  88. package/dist/mcp/index.js +12 -35
  89. package/dist/mcp/index.js.map +1 -1
  90. package/dist/orm/index.browser.js +3 -3
  91. package/dist/orm/index.browser.js.map +1 -1
  92. package/dist/orm/index.bun.js +39 -20
  93. package/dist/orm/index.bun.js.map +1 -1
  94. package/dist/orm/index.d.ts +517 -540
  95. package/dist/orm/index.d.ts.map +1 -1
  96. package/dist/orm/index.js +58 -71
  97. package/dist/orm/index.js.map +1 -1
  98. package/dist/queue/core/index.d.ts +18 -10
  99. package/dist/queue/core/index.d.ts.map +1 -1
  100. package/dist/queue/core/index.js +14 -6
  101. package/dist/queue/core/index.js.map +1 -1
  102. package/dist/react/auth/index.browser.js +108 -0
  103. package/dist/react/auth/index.browser.js.map +1 -0
  104. package/dist/react/auth/index.d.ts +100 -0
  105. package/dist/react/auth/index.d.ts.map +1 -0
  106. package/dist/react/auth/index.js +145 -0
  107. package/dist/react/auth/index.js.map +1 -0
  108. package/dist/react/core/index.d.ts +469 -0
  109. package/dist/react/core/index.d.ts.map +1 -0
  110. package/dist/react/core/index.js +464 -0
  111. package/dist/react/core/index.js.map +1 -0
  112. package/dist/react/form/index.d.ts +232 -0
  113. package/dist/react/form/index.d.ts.map +1 -0
  114. package/dist/react/form/index.js +432 -0
  115. package/dist/react/form/index.js.map +1 -0
  116. package/dist/react/head/index.browser.js +423 -0
  117. package/dist/react/head/index.browser.js.map +1 -0
  118. package/dist/react/head/index.d.ts +288 -0
  119. package/dist/react/head/index.d.ts.map +1 -0
  120. package/dist/react/head/index.js +465 -0
  121. package/dist/react/head/index.js.map +1 -0
  122. package/dist/react/i18n/index.d.ts +175 -0
  123. package/dist/react/i18n/index.d.ts.map +1 -0
  124. package/dist/react/i18n/index.js +224 -0
  125. package/dist/react/i18n/index.js.map +1 -0
  126. package/dist/react/router/index.browser.js +1974 -0
  127. package/dist/react/router/index.browser.js.map +1 -0
  128. package/dist/react/router/index.d.ts +1956 -0
  129. package/dist/react/router/index.d.ts.map +1 -0
  130. package/dist/react/router/index.js +4722 -0
  131. package/dist/react/router/index.js.map +1 -0
  132. package/dist/react/websocket/index.d.ts +117 -0
  133. package/dist/react/websocket/index.d.ts.map +1 -0
  134. package/dist/react/websocket/index.js +107 -0
  135. package/dist/react/websocket/index.js.map +1 -0
  136. package/dist/redis/index.bun.js +4 -0
  137. package/dist/redis/index.bun.js.map +1 -1
  138. package/dist/redis/index.d.ts +41 -44
  139. package/dist/redis/index.d.ts.map +1 -1
  140. package/dist/redis/index.js +16 -25
  141. package/dist/redis/index.js.map +1 -1
  142. package/dist/retry/index.d.ts +11 -2
  143. package/dist/retry/index.d.ts.map +1 -1
  144. package/dist/retry/index.js +11 -2
  145. package/dist/retry/index.js.map +1 -1
  146. package/dist/scheduler/index.d.ts +11 -2
  147. package/dist/scheduler/index.d.ts.map +1 -1
  148. package/dist/scheduler/index.js +11 -2
  149. package/dist/scheduler/index.js.map +1 -1
  150. package/dist/security/index.d.ts +140 -49
  151. package/dist/security/index.d.ts.map +1 -1
  152. package/dist/security/index.js +164 -32
  153. package/dist/security/index.js.map +1 -1
  154. package/dist/server/auth/index.d.ts +12 -7
  155. package/dist/server/auth/index.d.ts.map +1 -1
  156. package/dist/server/auth/index.js +12 -7
  157. package/dist/server/auth/index.js.map +1 -1
  158. package/dist/server/cache/index.d.ts +7 -22
  159. package/dist/server/cache/index.d.ts.map +1 -1
  160. package/dist/server/cache/index.js +7 -22
  161. package/dist/server/cache/index.js.map +1 -1
  162. package/dist/server/compress/index.d.ts +10 -2
  163. package/dist/server/compress/index.d.ts.map +1 -1
  164. package/dist/server/compress/index.js +10 -2
  165. package/dist/server/compress/index.js.map +1 -1
  166. package/dist/server/cookies/index.d.ts +40 -16
  167. package/dist/server/cookies/index.d.ts.map +1 -1
  168. package/dist/server/cookies/index.js +7 -5
  169. package/dist/server/cookies/index.js.map +1 -1
  170. package/dist/server/core/index.d.ts +124 -23
  171. package/dist/server/core/index.d.ts.map +1 -1
  172. package/dist/server/core/index.js +231 -14
  173. package/dist/server/core/index.js.map +1 -1
  174. package/dist/server/cors/index.d.ts +13 -23
  175. package/dist/server/cors/index.d.ts.map +1 -1
  176. package/dist/server/cors/index.js +7 -21
  177. package/dist/server/cors/index.js.map +1 -1
  178. package/dist/server/health/index.d.ts +8 -2
  179. package/dist/server/health/index.d.ts.map +1 -1
  180. package/dist/server/health/index.js +8 -2
  181. package/dist/server/health/index.js.map +1 -1
  182. package/dist/server/helmet/index.d.ts +11 -3
  183. package/dist/server/helmet/index.d.ts.map +1 -1
  184. package/dist/server/helmet/index.js +11 -3
  185. package/dist/server/helmet/index.js.map +1 -1
  186. package/dist/server/links/index.d.ts +11 -6
  187. package/dist/server/links/index.d.ts.map +1 -1
  188. package/dist/server/links/index.js +11 -6
  189. package/dist/server/links/index.js.map +1 -1
  190. package/dist/server/metrics/index.d.ts +10 -3
  191. package/dist/server/metrics/index.d.ts.map +1 -1
  192. package/dist/server/metrics/index.js +10 -3
  193. package/dist/server/metrics/index.js.map +1 -1
  194. package/dist/server/multipart/index.d.ts +9 -3
  195. package/dist/server/multipart/index.d.ts.map +1 -1
  196. package/dist/server/multipart/index.js +9 -3
  197. package/dist/server/multipart/index.js.map +1 -1
  198. package/dist/server/proxy/index.d.ts +8 -2
  199. package/dist/server/proxy/index.d.ts.map +1 -1
  200. package/dist/server/proxy/index.js +8 -2
  201. package/dist/server/proxy/index.js.map +1 -1
  202. package/dist/server/rate-limit/index.d.ts +30 -35
  203. package/dist/server/rate-limit/index.d.ts.map +1 -1
  204. package/dist/server/rate-limit/index.js +18 -55
  205. package/dist/server/rate-limit/index.js.map +1 -1
  206. package/dist/server/static/index.d.ts +137 -4
  207. package/dist/server/static/index.d.ts.map +1 -1
  208. package/dist/server/static/index.js +1853 -5
  209. package/dist/server/static/index.js.map +1 -1
  210. package/dist/server/swagger/index.d.ts +309 -6
  211. package/dist/server/swagger/index.d.ts.map +1 -1
  212. package/dist/server/swagger/index.js +1854 -6
  213. package/dist/server/swagger/index.js.map +1 -1
  214. package/dist/sms/index.d.ts +309 -7
  215. package/dist/sms/index.d.ts.map +1 -1
  216. package/dist/sms/index.js +1856 -7
  217. package/dist/sms/index.js.map +1 -1
  218. package/dist/system/index.browser.js +1218 -0
  219. package/dist/system/index.browser.js.map +1 -0
  220. package/dist/{file → system}/index.d.ts +343 -16
  221. package/dist/system/index.d.ts.map +1 -0
  222. package/dist/{file → system}/index.js +419 -22
  223. package/dist/system/index.js.map +1 -0
  224. package/dist/thread/index.d.ts +11 -2
  225. package/dist/thread/index.d.ts.map +1 -1
  226. package/dist/thread/index.js +11 -2
  227. package/dist/thread/index.js.map +1 -1
  228. package/dist/topic/core/index.d.ts +12 -5
  229. package/dist/topic/core/index.d.ts.map +1 -1
  230. package/dist/topic/core/index.js +12 -5
  231. package/dist/topic/core/index.js.map +1 -1
  232. package/dist/vite/index.d.ts +5 -6272
  233. package/dist/vite/index.d.ts.map +1 -1
  234. package/dist/vite/index.js +23 -10
  235. package/dist/vite/index.js.map +1 -1
  236. package/dist/websocket/index.d.ts +12 -8
  237. package/dist/websocket/index.d.ts.map +1 -1
  238. package/dist/websocket/index.js +12 -8
  239. package/dist/websocket/index.js.map +1 -1
  240. package/package.json +82 -11
  241. package/src/api/audits/index.ts +10 -33
  242. package/src/api/files/__tests__/$bucket.spec.ts +1 -1
  243. package/src/api/files/controllers/AdminFileStatsController.spec.ts +1 -1
  244. package/src/api/files/controllers/FileController.spec.ts +1 -1
  245. package/src/api/files/index.ts +10 -3
  246. package/src/api/files/jobs/FileJobs.spec.ts +1 -1
  247. package/src/api/files/services/FileService.spec.ts +1 -1
  248. package/src/api/jobs/index.ts +10 -3
  249. package/src/api/keys/controllers/AdminApiKeyController.ts +75 -0
  250. package/src/api/keys/controllers/ApiKeyController.ts +103 -0
  251. package/src/api/keys/entities/apiKeyEntity.ts +41 -0
  252. package/src/api/keys/index.ts +49 -0
  253. package/src/api/keys/schemas/adminApiKeyQuerySchema.ts +7 -0
  254. package/src/api/keys/schemas/adminApiKeyResourceSchema.ts +17 -0
  255. package/src/api/keys/schemas/createApiKeyBodySchema.ts +7 -0
  256. package/src/api/keys/schemas/createApiKeyResponseSchema.ts +11 -0
  257. package/src/api/keys/schemas/listApiKeyResponseSchema.ts +15 -0
  258. package/src/api/keys/schemas/revokeApiKeyParamsSchema.ts +5 -0
  259. package/src/api/keys/schemas/revokeApiKeyResponseSchema.ts +5 -0
  260. package/src/api/keys/services/ApiKeyService.spec.ts +553 -0
  261. package/src/api/keys/services/ApiKeyService.ts +306 -0
  262. package/src/api/logs/TODO.md +55 -0
  263. package/src/api/notifications/index.ts +10 -4
  264. package/src/api/parameters/index.ts +9 -30
  265. package/src/api/parameters/primitives/$config.ts +12 -4
  266. package/src/api/parameters/services/ConfigStore.ts +9 -3
  267. package/src/api/users/__tests__/ApiKeys-integration.spec.ts +1035 -0
  268. package/src/api/users/__tests__/ApiKeys.spec.ts +401 -0
  269. package/src/api/users/index.ts +14 -3
  270. package/src/api/users/primitives/$realm.ts +33 -5
  271. package/src/api/users/providers/RealmProvider.ts +1 -12
  272. package/src/api/users/services/SessionService.ts +1 -1
  273. package/src/api/verifications/controllers/VerificationController.ts +2 -0
  274. package/src/api/verifications/index.ts +10 -4
  275. package/src/batch/index.ts +9 -36
  276. package/src/batch/primitives/$batch.ts +0 -8
  277. package/src/batch/providers/BatchProvider.ts +29 -2
  278. package/src/bucket/__tests__/shared.ts +1 -1
  279. package/src/bucket/index.ts +13 -6
  280. package/src/bucket/primitives/$bucket.ts +1 -1
  281. package/src/bucket/providers/LocalFileStorageProvider.ts +1 -1
  282. package/src/bucket/providers/MemoryFileStorageProvider.ts +1 -1
  283. package/src/cache/core/__tests__/shared.ts +30 -0
  284. package/src/cache/core/index.ts +11 -6
  285. package/src/cache/core/primitives/$cache.spec.ts +5 -0
  286. package/src/cache/core/providers/CacheProvider.ts +17 -0
  287. package/src/cache/core/providers/MemoryCacheProvider.ts +300 -1
  288. package/src/cache/redis/__tests__/cache-redis.spec.ts +5 -0
  289. package/src/cache/redis/providers/RedisCacheProvider.ts +9 -0
  290. package/src/cli/apps/AlephaCli.ts +1 -14
  291. package/src/cli/apps/AlephaPackageBuilderCli.ts +10 -1
  292. package/src/cli/atoms/buildOptions.ts +99 -9
  293. package/src/cli/commands/build.ts +150 -37
  294. package/src/cli/commands/db.ts +22 -18
  295. package/src/cli/commands/deploy.ts +1 -1
  296. package/src/cli/commands/dev.ts +1 -20
  297. package/src/cli/commands/gen/env.ts +5 -2
  298. package/src/cli/commands/gen/openapi.ts +5 -2
  299. package/src/cli/commands/init.spec.ts +588 -0
  300. package/src/cli/commands/init.ts +115 -58
  301. package/src/cli/commands/lint.ts +7 -1
  302. package/src/cli/commands/typecheck.ts +11 -0
  303. package/src/cli/providers/AppEntryProvider.ts +1 -1
  304. package/src/cli/providers/ViteBuildProvider.ts +8 -50
  305. package/src/cli/providers/ViteDevServerProvider.ts +35 -16
  306. package/src/cli/services/AlephaCliUtils.ts +52 -121
  307. package/src/cli/services/PackageManagerUtils.ts +129 -11
  308. package/src/cli/services/ProjectScaffolder.spec.ts +97 -0
  309. package/src/cli/services/ProjectScaffolder.ts +148 -81
  310. package/src/cli/services/ViteUtils.ts +82 -0
  311. package/src/cli/{assets/claudeMd.ts → templates/agentMd.ts} +37 -24
  312. package/src/cli/templates/apiAppSecurityTs.ts +11 -0
  313. package/src/cli/templates/apiIndexTs.ts +30 -0
  314. package/src/cli/templates/gitignore.ts +39 -0
  315. package/src/cli/{assets → templates}/mainCss.ts +11 -2
  316. package/src/cli/templates/mainServerTs.ts +33 -0
  317. package/src/cli/templates/webAppRouterTs.ts +74 -0
  318. package/src/cli/templates/webHelloComponentTsx.ts +30 -0
  319. package/src/command/helpers/Runner.spec.ts +139 -0
  320. package/src/command/helpers/Runner.ts +7 -22
  321. package/src/command/index.ts +12 -4
  322. package/src/command/providers/CliProvider.spec.ts +1392 -0
  323. package/src/command/providers/CliProvider.ts +320 -47
  324. package/src/core/Alepha.ts +34 -27
  325. package/src/core/__tests__/Alepha-start.spec.ts +4 -4
  326. package/src/core/helpers/jsonSchemaToTypeBox.spec.ts +771 -0
  327. package/src/core/helpers/jsonSchemaToTypeBox.ts +62 -10
  328. package/src/core/index.shared.ts +1 -0
  329. package/src/core/index.ts +20 -0
  330. package/src/core/providers/EventManager.spec.ts +0 -71
  331. package/src/core/providers/EventManager.ts +3 -15
  332. package/src/core/providers/Json.ts +2 -14
  333. package/src/datetime/index.ts +15 -0
  334. package/src/email/index.ts +10 -5
  335. package/src/email/providers/LocalEmailProvider.spec.ts +1 -1
  336. package/src/email/providers/LocalEmailProvider.ts +1 -1
  337. package/src/fake/__tests__/keyName.example.ts +1 -1
  338. package/src/fake/__tests__/keyName.spec.ts +5 -5
  339. package/src/fake/index.ts +9 -6
  340. package/src/fake/providers/FakeProvider.spec.ts +258 -40
  341. package/src/fake/providers/FakeProvider.ts +133 -19
  342. package/src/lock/core/index.ts +11 -4
  343. package/src/logger/index.ts +17 -66
  344. package/src/mcp/index.ts +10 -27
  345. package/src/mcp/transports/SseMcpTransport.ts +0 -11
  346. package/src/orm/__tests__/PostgresProvider.spec.ts +2 -2
  347. package/src/orm/index.browser.ts +2 -2
  348. package/src/orm/index.bun.ts +5 -3
  349. package/src/orm/index.ts +23 -53
  350. package/src/orm/providers/drivers/BunSqliteProvider.ts +5 -1
  351. package/src/orm/providers/drivers/CloudflareD1Provider.ts +57 -30
  352. package/src/orm/providers/drivers/DatabaseProvider.ts +9 -1
  353. package/src/orm/providers/drivers/NodeSqliteProvider.ts +4 -1
  354. package/src/orm/services/Repository.ts +7 -3
  355. package/src/queue/core/index.ts +14 -6
  356. package/src/react/auth/__tests__/$auth.spec.ts +202 -0
  357. package/src/react/auth/hooks/useAuth.ts +32 -0
  358. package/src/react/auth/index.browser.ts +13 -0
  359. package/src/react/auth/index.shared.ts +2 -0
  360. package/src/react/auth/index.ts +48 -0
  361. package/src/react/auth/providers/ReactAuthProvider.ts +16 -0
  362. package/src/react/auth/services/ReactAuth.ts +135 -0
  363. package/src/react/core/__tests__/Router.spec.tsx +169 -0
  364. package/src/react/core/components/ClientOnly.tsx +49 -0
  365. package/src/react/core/components/ErrorBoundary.tsx +73 -0
  366. package/src/react/core/contexts/AlephaContext.ts +7 -0
  367. package/src/react/core/contexts/AlephaProvider.tsx +42 -0
  368. package/src/react/core/hooks/useAction.browser.spec.tsx +569 -0
  369. package/src/react/core/hooks/useAction.ts +480 -0
  370. package/src/react/core/hooks/useAlepha.ts +26 -0
  371. package/src/react/core/hooks/useClient.ts +17 -0
  372. package/src/react/core/hooks/useEvents.ts +51 -0
  373. package/src/react/core/hooks/useInject.ts +12 -0
  374. package/src/react/core/hooks/useStore.ts +52 -0
  375. package/src/react/core/index.ts +90 -0
  376. package/src/react/form/components/FormState.tsx +17 -0
  377. package/src/react/form/errors/FormValidationError.ts +18 -0
  378. package/src/react/form/hooks/useForm.browser.spec.tsx +366 -0
  379. package/src/react/form/hooks/useForm.ts +47 -0
  380. package/src/react/form/hooks/useFormState.ts +130 -0
  381. package/src/react/form/index.ts +44 -0
  382. package/src/react/form/services/FormModel.ts +614 -0
  383. package/src/react/head/helpers/SeoExpander.spec.ts +203 -0
  384. package/src/react/head/helpers/SeoExpander.ts +142 -0
  385. package/src/react/head/hooks/useHead.spec.tsx +288 -0
  386. package/src/react/head/hooks/useHead.ts +62 -0
  387. package/src/react/head/index.browser.ts +26 -0
  388. package/src/react/head/index.ts +44 -0
  389. package/src/react/head/interfaces/Head.ts +105 -0
  390. package/src/react/head/primitives/$head.ts +25 -0
  391. package/src/react/head/providers/BrowserHeadProvider.browser.spec.ts +196 -0
  392. package/src/react/head/providers/BrowserHeadProvider.ts +212 -0
  393. package/src/react/head/providers/HeadProvider.ts +168 -0
  394. package/src/react/head/providers/ServerHeadProvider.ts +31 -0
  395. package/src/react/i18n/__tests__/integration.spec.tsx +239 -0
  396. package/src/react/i18n/components/Localize.spec.tsx +357 -0
  397. package/src/react/i18n/components/Localize.tsx +35 -0
  398. package/src/react/i18n/hooks/useI18n.browser.spec.tsx +438 -0
  399. package/src/react/i18n/hooks/useI18n.ts +18 -0
  400. package/src/react/i18n/index.ts +41 -0
  401. package/src/react/i18n/primitives/$dictionary.ts +69 -0
  402. package/src/react/i18n/providers/I18nProvider.spec.ts +389 -0
  403. package/src/react/i18n/providers/I18nProvider.ts +278 -0
  404. package/src/react/router/__tests__/page-head-browser.browser.spec.ts +95 -0
  405. package/src/react/router/__tests__/page-head.spec.ts +48 -0
  406. package/src/react/router/__tests__/seo-head.spec.ts +125 -0
  407. package/src/react/router/atoms/ssrManifestAtom.ts +58 -0
  408. package/src/react/router/components/ErrorViewer.tsx +872 -0
  409. package/src/react/router/components/Link.tsx +23 -0
  410. package/src/react/router/components/NestedView.tsx +223 -0
  411. package/src/react/router/components/NotFound.tsx +30 -0
  412. package/src/react/router/constants/PAGE_PRELOAD_KEY.ts +6 -0
  413. package/src/react/router/contexts/RouterLayerContext.ts +12 -0
  414. package/src/react/router/errors/Redirection.ts +28 -0
  415. package/src/react/router/hooks/useActive.ts +52 -0
  416. package/src/react/router/hooks/useQueryParams.ts +63 -0
  417. package/src/react/router/hooks/useRouter.ts +20 -0
  418. package/src/react/router/hooks/useRouterState.ts +11 -0
  419. package/src/react/router/index.browser.ts +45 -0
  420. package/src/react/router/index.shared.ts +19 -0
  421. package/src/react/router/index.ts +146 -0
  422. package/src/react/router/primitives/$page.browser.spec.tsx +851 -0
  423. package/src/react/router/primitives/$page.spec.tsx +676 -0
  424. package/src/react/router/primitives/$page.ts +489 -0
  425. package/src/react/router/providers/ReactBrowserProvider.ts +312 -0
  426. package/src/react/router/providers/ReactBrowserRendererProvider.ts +25 -0
  427. package/src/react/router/providers/ReactBrowserRouterProvider.ts +168 -0
  428. package/src/react/router/providers/ReactPageProvider.ts +726 -0
  429. package/src/react/router/providers/ReactPreloadProvider.spec.ts +142 -0
  430. package/src/react/router/providers/ReactPreloadProvider.ts +85 -0
  431. package/src/react/router/providers/ReactServerProvider.spec.tsx +316 -0
  432. package/src/react/router/providers/ReactServerProvider.ts +487 -0
  433. package/src/react/router/providers/ReactServerTemplateProvider.spec.ts +210 -0
  434. package/src/react/router/providers/ReactServerTemplateProvider.ts +542 -0
  435. package/src/react/router/providers/SSRManifestProvider.ts +334 -0
  436. package/src/react/router/services/ReactPageServerService.ts +48 -0
  437. package/src/react/router/services/ReactPageService.ts +27 -0
  438. package/src/react/router/services/ReactRouter.ts +262 -0
  439. package/src/react/websocket/hooks/useRoom.tsx +242 -0
  440. package/src/react/websocket/index.ts +7 -0
  441. package/src/redis/__tests__/redis.spec.ts +13 -0
  442. package/src/redis/index.ts +9 -25
  443. package/src/redis/providers/BunRedisProvider.ts +9 -0
  444. package/src/redis/providers/NodeRedisProvider.ts +8 -0
  445. package/src/redis/providers/RedisProvider.ts +16 -0
  446. package/src/retry/index.ts +11 -2
  447. package/src/router/index.ts +15 -0
  448. package/src/scheduler/index.ts +11 -2
  449. package/src/security/__tests__/BasicAuth.spec.ts +2 -0
  450. package/src/security/__tests__/ServerSecurityProvider.spec.ts +90 -5
  451. package/src/security/index.ts +15 -10
  452. package/src/security/interfaces/IssuerResolver.ts +27 -0
  453. package/src/security/primitives/$issuer.ts +55 -0
  454. package/src/security/providers/SecurityProvider.ts +179 -0
  455. package/src/security/providers/ServerBasicAuthProvider.ts +6 -2
  456. package/src/security/providers/ServerSecurityProvider.ts +63 -41
  457. package/src/server/auth/index.ts +12 -7
  458. package/src/server/cache/index.ts +7 -22
  459. package/src/server/compress/index.ts +10 -2
  460. package/src/server/cookies/index.ts +7 -5
  461. package/src/server/cookies/primitives/$cookie.ts +33 -11
  462. package/src/server/core/index.ts +16 -6
  463. package/src/server/core/interfaces/ServerRequest.ts +83 -1
  464. package/src/server/core/primitives/$action.spec.ts +1 -1
  465. package/src/server/core/primitives/$action.ts +8 -3
  466. package/src/server/core/providers/NodeHttpServerProvider.spec.ts +9 -3
  467. package/src/server/core/providers/NodeHttpServerProvider.ts +9 -3
  468. package/src/server/core/services/ServerRequestParser.spec.ts +520 -0
  469. package/src/server/core/services/ServerRequestParser.ts +306 -13
  470. package/src/server/cors/index.ts +7 -21
  471. package/src/server/cors/primitives/$cors.ts +6 -2
  472. package/src/server/health/index.ts +8 -2
  473. package/src/server/helmet/index.ts +11 -3
  474. package/src/server/links/index.ts +11 -6
  475. package/src/server/metrics/index.ts +10 -3
  476. package/src/server/multipart/index.ts +9 -3
  477. package/src/server/proxy/index.ts +8 -2
  478. package/src/server/rate-limit/index.ts +21 -25
  479. package/src/server/rate-limit/primitives/$rateLimit.ts +6 -2
  480. package/src/server/rate-limit/providers/ServerRateLimitProvider.spec.ts +38 -14
  481. package/src/server/rate-limit/providers/ServerRateLimitProvider.ts +22 -56
  482. package/src/server/static/index.ts +8 -2
  483. package/src/server/static/providers/ServerStaticProvider.ts +1 -1
  484. package/src/server/swagger/index.ts +9 -4
  485. package/src/server/swagger/providers/ServerSwaggerProvider.ts +1 -1
  486. package/src/sms/index.ts +9 -5
  487. package/src/sms/providers/LocalSmsProvider.spec.ts +1 -1
  488. package/src/sms/providers/LocalSmsProvider.ts +1 -1
  489. package/src/system/index.browser.ts +36 -0
  490. package/src/system/index.ts +62 -0
  491. package/src/system/index.workerd.ts +1 -0
  492. package/src/{file → system}/providers/FileSystemProvider.ts +24 -0
  493. package/src/{file → system}/providers/MemoryFileSystemProvider.ts +116 -3
  494. package/src/system/providers/MemoryShellProvider.ts +164 -0
  495. package/src/{file → system}/providers/NodeFileSystemProvider.spec.ts +2 -2
  496. package/src/{file → system}/providers/NodeFileSystemProvider.ts +47 -2
  497. package/src/system/providers/NodeShellProvider.ts +184 -0
  498. package/src/system/providers/ShellProvider.ts +74 -0
  499. package/src/{file → system}/services/FileDetector.spec.ts +2 -2
  500. package/src/thread/index.ts +11 -2
  501. package/src/topic/core/index.ts +12 -5
  502. package/src/vite/tasks/buildClient.ts +2 -7
  503. package/src/vite/tasks/buildServer.ts +19 -13
  504. package/src/vite/tasks/generateCloudflare.ts +10 -7
  505. package/src/vite/tasks/generateDocker.ts +4 -0
  506. package/src/websocket/index.ts +12 -8
  507. package/dist/file/index.d.ts.map +0 -1
  508. package/dist/file/index.js.map +0 -1
  509. package/src/cli/assets/apiIndexTs.ts +0 -16
  510. package/src/cli/assets/mainServerTs.ts +0 -24
  511. package/src/cli/assets/webAppRouterTs.ts +0 -16
  512. package/src/cli/assets/webHelloComponentTsx.ts +0 -20
  513. package/src/cli/providers/ViteTemplateProvider.ts +0 -27
  514. package/src/file/index.ts +0 -43
  515. /package/src/cli/{assets → templates}/apiHelloControllerTs.ts +0 -0
  516. /package/src/cli/{assets → templates}/biomeJson.ts +0 -0
  517. /package/src/cli/{assets → templates}/dummySpecTs.ts +0 -0
  518. /package/src/cli/{assets → templates}/editorconfig.ts +0 -0
  519. /package/src/cli/{assets → templates}/mainBrowserTs.ts +0 -0
  520. /package/src/cli/{assets → templates}/tsconfigJson.ts +0 -0
  521. /package/src/cli/{assets → templates}/webIndexTs.ts +0 -0
  522. /package/src/{file → system}/errors/FileError.ts +0 -0
  523. /package/src/{file → system}/services/FileDetector.ts +0 -0
@@ -1,7 +1,7 @@
1
1
  import * as alepha0 from "alepha";
2
- import { InstantiableClass, KIND, Primitive } from "alepha";
2
+ import { FileLike, InstantiableClass, Json, KIND, Primitive, StreamLike } from "alepha";
3
3
  import * as alepha_logger0 from "alepha/logger";
4
- import { FileSystemProvider } from "alepha/file";
4
+ import { Readable } from "node:stream";
5
5
 
6
6
  //#region ../../src/sms/providers/SmsProvider.d.ts
7
7
  /**
@@ -63,6 +63,304 @@ declare class SmsPrimitive extends Primitive<SmsPrimitiveOptions> {
63
63
  protected $provider(): SmsProvider;
64
64
  }
65
65
  //#endregion
66
+ //#region ../../src/system/providers/FileSystemProvider.d.ts
67
+ /**
68
+ * Options for creating a file from a URL
69
+ */
70
+ interface CreateFileFromUrlOptions {
71
+ /**
72
+ * The URL to load the file from (file://, http://, or https://)
73
+ */
74
+ url: string;
75
+ /**
76
+ * The MIME type of the file (optional, will be detected from filename if not provided)
77
+ */
78
+ type?: string;
79
+ /**
80
+ * The name of the file (optional, will be extracted from URL if not provided)
81
+ */
82
+ name?: string;
83
+ }
84
+ /**
85
+ * Options for creating a file from a path (URL with file:// scheme)
86
+ */
87
+ interface CreateFileFromPathOptions {
88
+ /**
89
+ * The path to the file on the local filesystem
90
+ */
91
+ path: string;
92
+ /**
93
+ * The MIME type of the file (optional, will be detected from filename if not provided)
94
+ */
95
+ type?: string;
96
+ /**
97
+ * The name of the file (optional, will be extracted from URL if not provided)
98
+ */
99
+ name?: string;
100
+ }
101
+ /**
102
+ * Options for creating a file from a Buffer
103
+ */
104
+ interface CreateFileFromBufferOptions {
105
+ /**
106
+ * The Buffer containing the file data
107
+ */
108
+ buffer: Buffer;
109
+ /**
110
+ * The MIME type of the file (optional, will be detected from name if not provided)
111
+ */
112
+ type?: string;
113
+ /**
114
+ * The name of the file (required for proper content type detection)
115
+ */
116
+ name?: string;
117
+ }
118
+ /**
119
+ * Options for creating a file from a stream
120
+ */
121
+ interface CreateFileFromStreamOptions {
122
+ /**
123
+ * The readable stream containing the file data
124
+ */
125
+ stream: StreamLike;
126
+ /**
127
+ * The MIME type of the file (optional, will be detected from name if not provided)
128
+ */
129
+ type?: string;
130
+ /**
131
+ * The name of the file (required for proper content type detection)
132
+ */
133
+ name?: string;
134
+ /**
135
+ * The size of the file in bytes (optional)
136
+ */
137
+ size?: number;
138
+ }
139
+ /**
140
+ * Options for creating a file from text content
141
+ */
142
+ interface CreateFileFromTextOptions {
143
+ /**
144
+ * The text content to create the file from
145
+ */
146
+ text: string;
147
+ /**
148
+ * The MIME type of the file (default: text/plain)
149
+ */
150
+ type?: string;
151
+ /**
152
+ * The name of the file (default: "file.txt")
153
+ */
154
+ name?: string;
155
+ }
156
+ interface CreateFileFromResponseOptions {
157
+ /**
158
+ * The Response object containing the file data
159
+ */
160
+ response: Response;
161
+ /**
162
+ * Override the name (optional, uses filename from Content-Disposition header if not provided)
163
+ */
164
+ name?: string;
165
+ /**
166
+ * Override the MIME type (optional, uses file.type if not provided)
167
+ */
168
+ type?: string;
169
+ }
170
+ /**
171
+ * Options for creating a file from a Web File object
172
+ */
173
+ interface CreateFileFromWebFileOptions {
174
+ /**
175
+ * The Web File object
176
+ */
177
+ file: File;
178
+ /**
179
+ * Override the MIME type (optional, uses file.type if not provided)
180
+ */
181
+ type?: string;
182
+ /**
183
+ * Override the name (optional, uses file.name if not provided)
184
+ */
185
+ name?: string;
186
+ /**
187
+ * Override the size (optional, uses file.size if not provided)
188
+ */
189
+ size?: number;
190
+ }
191
+ /**
192
+ * Options for creating a file from an ArrayBuffer
193
+ */
194
+ interface CreateFileFromArrayBufferOptions {
195
+ /**
196
+ * The ArrayBuffer containing the file data
197
+ */
198
+ arrayBuffer: ArrayBuffer;
199
+ /**
200
+ * The MIME type of the file (optional, will be detected from name if not provided)
201
+ */
202
+ type?: string;
203
+ /**
204
+ * The name of the file (required for proper content type detection)
205
+ */
206
+ name?: string;
207
+ }
208
+ /**
209
+ * Union type for all createFile options
210
+ */
211
+ type CreateFileOptions = CreateFileFromUrlOptions | CreateFileFromPathOptions | CreateFileFromBufferOptions | CreateFileFromStreamOptions | CreateFileFromTextOptions | CreateFileFromWebFileOptions | CreateFileFromResponseOptions | CreateFileFromArrayBufferOptions;
212
+ /**
213
+ * Options for rm (remove) operation
214
+ */
215
+ interface RmOptions {
216
+ /**
217
+ * If true, removes directories and their contents recursively
218
+ */
219
+ recursive?: boolean;
220
+ /**
221
+ * If true, no error will be thrown if the path does not exist
222
+ */
223
+ force?: boolean;
224
+ }
225
+ /**
226
+ * Options for cp (copy) operation
227
+ */
228
+ interface CpOptions {
229
+ /**
230
+ * If true, copy directories recursively
231
+ */
232
+ recursive?: boolean;
233
+ /**
234
+ * If true, overwrite existing destination
235
+ */
236
+ force?: boolean;
237
+ }
238
+ /**
239
+ * Options for mkdir operation
240
+ */
241
+ interface MkdirOptions {
242
+ /**
243
+ * If true, creates parent directories as needed
244
+ *
245
+ * @default true
246
+ */
247
+ recursive?: boolean;
248
+ /**
249
+ * If true, does not throw an error if the directory already exists
250
+ *
251
+ * @default true
252
+ */
253
+ force?: boolean;
254
+ /**
255
+ * File mode (permission and sticky bits)
256
+ */
257
+ mode?: number;
258
+ }
259
+ /**
260
+ * Options for ls (list) operation
261
+ */
262
+ interface LsOptions {
263
+ /**
264
+ * If true, list contents of directories recursively
265
+ */
266
+ recursive?: boolean;
267
+ /**
268
+ * If true, include hidden files (starting with .)
269
+ */
270
+ hidden?: boolean;
271
+ }
272
+ /**
273
+ * FileSystem interface providing utilities for working with files.
274
+ */
275
+ declare abstract class FileSystemProvider {
276
+ /**
277
+ * Joins multiple path segments into a single path.
278
+ *
279
+ * @param paths - The path segments to join
280
+ * @returns The joined path
281
+ */
282
+ abstract join(...paths: string[]): string;
283
+ /**
284
+ * Creates a FileLike object from various sources.
285
+ *
286
+ * @param options - Options for creating the file
287
+ * @returns A FileLike object
288
+ */
289
+ abstract createFile(options: CreateFileOptions): FileLike;
290
+ /**
291
+ * Removes a file or directory.
292
+ *
293
+ * @param path - The path to remove
294
+ * @param options - Remove options
295
+ */
296
+ abstract rm(path: string, options?: RmOptions): Promise<void>;
297
+ /**
298
+ * Copies a file or directory.
299
+ *
300
+ * @param src - Source path
301
+ * @param dest - Destination path
302
+ * @param options - Copy options
303
+ */
304
+ abstract cp(src: string, dest: string, options?: CpOptions): Promise<void>;
305
+ /**
306
+ * Moves/renames a file or directory.
307
+ *
308
+ * @param src - Source path
309
+ * @param dest - Destination path
310
+ */
311
+ abstract mv(src: string, dest: string): Promise<void>;
312
+ /**
313
+ * Creates a directory.
314
+ *
315
+ * @param path - The directory path to create
316
+ * @param options - Mkdir options
317
+ */
318
+ abstract mkdir(path: string, options?: MkdirOptions): Promise<void>;
319
+ /**
320
+ * Lists files in a directory.
321
+ *
322
+ * @param path - The directory path to list
323
+ * @param options - List options
324
+ * @returns Array of filenames
325
+ */
326
+ abstract ls(path: string, options?: LsOptions): Promise<string[]>;
327
+ /**
328
+ * Checks if a file or directory exists.
329
+ *
330
+ * @param path - The path to check
331
+ * @returns True if the path exists, false otherwise
332
+ */
333
+ abstract exists(path: string): Promise<boolean>;
334
+ /**
335
+ * Reads the content of a file.
336
+ *
337
+ * @param path - The file path to read
338
+ * @returns The file content as a Buffer
339
+ */
340
+ abstract readFile(path: string): Promise<Buffer>;
341
+ /**
342
+ * Writes data to a file.
343
+ *
344
+ * @param path - The file path to write to
345
+ * @param data - The data to write (Buffer or string)
346
+ */
347
+ abstract writeFile(path: string, data: Uint8Array | Buffer | string | FileLike): Promise<void>;
348
+ /**
349
+ * Reads the content of a file as a string.
350
+ *
351
+ * @param path - The file path to read
352
+ * @returns The file content as a string
353
+ */
354
+ abstract readTextFile(path: string): Promise<string>;
355
+ /**
356
+ * Reads the content of a file as JSON.
357
+ *
358
+ * @param path - The file path to read
359
+ * @returns The parsed JSON content
360
+ */
361
+ abstract readJsonFile<T = unknown>(path: string): Promise<T>;
362
+ }
363
+ //#endregion
66
364
  //#region ../../src/sms/providers/LocalSmsProvider.d.ts
67
365
  interface LocalSmsProviderOptions {
68
366
  /**
@@ -117,13 +415,17 @@ declare module "alepha" {
117
415
  }
118
416
  }
119
417
  /**
120
- * Provides SMS sending capabilities for Alepha applications with multiple provider backends.
418
+ * | type | quality | stability |
419
+ * |------|---------|-----------|
420
+ * | backend | rare | stable |
421
+ *
422
+ * SMS delivery with multiple provider support.
121
423
  *
122
- * The SMS module enables declarative SMS sending through the `$sms` primitive, allowing you to send
123
- * text messages through different providers: memory (for testing) or local file system.
124
- * It supports automatic provider selection based on environment configuration.
424
+ * **Features:**
425
+ * - Send SMS with templates
426
+ * - Multiple recipients
427
+ * - Provider abstraction
125
428
  *
126
- * @see {@link SmsProvider}
127
429
  * @module alepha.sms
128
430
  */
129
431
  declare const AlephaSms: alepha0.Service<alepha0.Module>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/sms/providers/SmsProvider.ts","../../src/sms/errors/SmsError.ts","../../src/sms/primitives/$sms.ts","../../src/sms/providers/LocalSmsProvider.ts","../../src/sms/providers/MemorySmsProvider.ts","../../src/sms/index.ts"],"mappings":";;;;;;;;;;;uBAKsB,WAAA;EAAA;;;;;EAAA,SAMJ,IAAA,CAAK,OAAA,EAAS,cAAA,GAAiB,OAAA;AAAA;AAAA,KAGrC,cAAA;EACV,EAAA;EACA,OAAA;AAAA;;;cChBW,QAAA,SAAiB,KAAA;cAChB,OAAA,UAAiB,KAAA,GAAQ,KAAA;AAAA;;;cCW1B,IAAA;EAAA,WAAiB,mBAAA,GAAmB,YAAA;EAAA;;UAKhC,mBAAA;EACf,IAAA;EACA,QAAA,GAAW,iBAAA,CAAkB,WAAA;AAAA;;;;;;AFL/B;;;;;;;;ACdA;;;;cCyCa,YAAA,SAAqB,SAAA,CAAU,mBAAA;EAAA,mBACvB,QAAA,EAAQ,WAAA;EAAA,IAEhB,IAAA,CAAA;ED3C0B;;;ECkDxB,IAAA,CAAK,OAAA,EAAS,cAAA,GAAiB,OAAA;EAAA,UAoBlC,SAAA,CAAA,GAAa,WAAA;AAAA;;;UCjER,uBAAA;;;;AHDjB;EGME,SAAA;AAAA;AAAA,cAGW,gBAAA,YAA4B,WAAA;EAAA,mBACpB,GAAA,EADS,cAAA,CACN,MAAA;EAAA,mBACH,EAAA,EAAE,kBAAA;EAAA,mBACF,SAAA;cAEP,OAAA,GAAS,uBAAA;EAIR,IAAA,CAAK,OAAA,EAAS,cAAA,GAAiB,OAAA;EAsCrC,aAAA,CAAc,OAAA;IAAW,EAAA;IAAY,OAAA;EAAA;AAAA;;;UC1D7B,SAAA;EACf,EAAA;EACA,OAAA;EACA,MAAA,EAAQ,IAAA;AAAA;AAAA,cAGG,iBAAA,YAA6B,WAAA;EAAA,mBACrB,GAAA,EADU,cAAA,CACP,MAAA;EACf,OAAA,EAAS,SAAA;EAEH,IAAA,CAAK,OAAA,EAAS,cAAA,GAAiB,OAAA;EJF5B;;;EAAA,IIkBL,IAAA,CAAA,GAAQ,SAAA;AAAA;;;;YCZT,KAAA;IACR,aAAA;MACE,EAAA;MACA,QAAA;MACA,SAAA,EAAW,MAAA;MACX,QAAA,EAAU,WAAA;MACV,KAAA;IAAA;IAEF,UAAA;MACE,EAAA;MACA,QAAA;MACA,QAAA,EAAU,WAAA;IAAA;EAAA;AAAA;;;AJ5BhB;;;;;;;;cI6Ca,SAAA,EAAS,OAAA,CAAA,OAAA,CAUpB,OAAA,CAVoB,MAAA"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/sms/providers/SmsProvider.ts","../../src/sms/errors/SmsError.ts","../../src/sms/primitives/$sms.ts","../../src/system/providers/FileSystemProvider.ts","../../src/sms/providers/LocalSmsProvider.ts","../../src/sms/providers/MemorySmsProvider.ts","../../src/sms/index.ts"],"mappings":"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"}