alepha 0.14.3 → 0.15.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 (317) hide show
  1. package/README.md +2 -5
  2. package/dist/api/audits/index.d.ts +620 -811
  3. package/dist/api/audits/index.d.ts.map +1 -1
  4. package/dist/api/files/index.d.ts +185 -377
  5. package/dist/api/files/index.d.ts.map +1 -1
  6. package/dist/api/files/index.js +0 -1
  7. package/dist/api/files/index.js.map +1 -1
  8. package/dist/api/jobs/index.d.ts +245 -435
  9. package/dist/api/jobs/index.d.ts.map +1 -1
  10. package/dist/api/notifications/index.d.ts +238 -429
  11. package/dist/api/notifications/index.d.ts.map +1 -1
  12. package/dist/api/parameters/index.d.ts +236 -427
  13. package/dist/api/parameters/index.d.ts.map +1 -1
  14. package/dist/api/users/index.browser.js +1 -2
  15. package/dist/api/users/index.browser.js.map +1 -1
  16. package/dist/api/users/index.d.ts +1010 -1196
  17. package/dist/api/users/index.d.ts.map +1 -1
  18. package/dist/api/users/index.js +178 -151
  19. package/dist/api/users/index.js.map +1 -1
  20. package/dist/api/verifications/index.d.ts +17 -17
  21. package/dist/api/verifications/index.d.ts.map +1 -1
  22. package/dist/batch/index.d.ts +122 -122
  23. package/dist/batch/index.d.ts.map +1 -1
  24. package/dist/batch/index.js +1 -2
  25. package/dist/batch/index.js.map +1 -1
  26. package/dist/bucket/index.d.ts +163 -163
  27. package/dist/bucket/index.d.ts.map +1 -1
  28. package/dist/cache/core/index.d.ts +46 -46
  29. package/dist/cache/core/index.d.ts.map +1 -1
  30. package/dist/cache/redis/index.d.ts.map +1 -1
  31. package/dist/cli/index.d.ts +384 -285
  32. package/dist/cli/index.d.ts.map +1 -1
  33. package/dist/cli/index.js +1113 -623
  34. package/dist/cli/index.js.map +1 -1
  35. package/dist/command/index.d.ts +299 -300
  36. package/dist/command/index.d.ts.map +1 -1
  37. package/dist/command/index.js +13 -9
  38. package/dist/command/index.js.map +1 -1
  39. package/dist/core/index.browser.js +445 -103
  40. package/dist/core/index.browser.js.map +1 -1
  41. package/dist/core/index.d.ts +733 -625
  42. package/dist/core/index.d.ts.map +1 -1
  43. package/dist/core/index.js +446 -103
  44. package/dist/core/index.js.map +1 -1
  45. package/dist/core/index.native.js +445 -103
  46. package/dist/core/index.native.js.map +1 -1
  47. package/dist/datetime/index.d.ts +44 -44
  48. package/dist/datetime/index.d.ts.map +1 -1
  49. package/dist/datetime/index.js +4 -4
  50. package/dist/datetime/index.js.map +1 -1
  51. package/dist/email/index.d.ts +97 -50
  52. package/dist/email/index.d.ts.map +1 -1
  53. package/dist/email/index.js +129 -33
  54. package/dist/email/index.js.map +1 -1
  55. package/dist/fake/index.d.ts +7981 -14
  56. package/dist/fake/index.d.ts.map +1 -1
  57. package/dist/file/index.d.ts +523 -390
  58. package/dist/file/index.d.ts.map +1 -1
  59. package/dist/file/index.js +253 -1
  60. package/dist/file/index.js.map +1 -1
  61. package/dist/lock/core/index.d.ts +208 -208
  62. package/dist/lock/core/index.d.ts.map +1 -1
  63. package/dist/lock/redis/index.d.ts.map +1 -1
  64. package/dist/logger/index.d.ts +25 -26
  65. package/dist/logger/index.d.ts.map +1 -1
  66. package/dist/logger/index.js +12 -2
  67. package/dist/logger/index.js.map +1 -1
  68. package/dist/mcp/index.d.ts +197 -197
  69. package/dist/mcp/index.d.ts.map +1 -1
  70. package/dist/mcp/index.js +1 -1
  71. package/dist/mcp/index.js.map +1 -1
  72. package/dist/orm/chunk-DtkW-qnP.js +38 -0
  73. package/dist/orm/index.browser.js.map +1 -1
  74. package/dist/orm/index.bun.js +2814 -0
  75. package/dist/orm/index.bun.js.map +1 -0
  76. package/dist/orm/index.d.ts +1228 -1216
  77. package/dist/orm/index.d.ts.map +1 -1
  78. package/dist/orm/index.js +2041 -1967
  79. package/dist/orm/index.js.map +1 -1
  80. package/dist/queue/core/index.d.ts +248 -248
  81. package/dist/queue/core/index.d.ts.map +1 -1
  82. package/dist/queue/redis/index.d.ts.map +1 -1
  83. package/dist/redis/index.bun.js +285 -0
  84. package/dist/redis/index.bun.js.map +1 -0
  85. package/dist/redis/index.d.ts +118 -136
  86. package/dist/redis/index.d.ts.map +1 -1
  87. package/dist/redis/index.js +18 -38
  88. package/dist/redis/index.js.map +1 -1
  89. package/dist/retry/index.d.ts +69 -69
  90. package/dist/retry/index.d.ts.map +1 -1
  91. package/dist/router/index.d.ts +6 -6
  92. package/dist/router/index.d.ts.map +1 -1
  93. package/dist/scheduler/index.d.ts +25 -25
  94. package/dist/scheduler/index.d.ts.map +1 -1
  95. package/dist/security/index.browser.js +5 -1
  96. package/dist/security/index.browser.js.map +1 -1
  97. package/dist/security/index.d.ts +417 -254
  98. package/dist/security/index.d.ts.map +1 -1
  99. package/dist/security/index.js +386 -86
  100. package/dist/security/index.js.map +1 -1
  101. package/dist/server/auth/index.d.ts +110 -110
  102. package/dist/server/auth/index.d.ts.map +1 -1
  103. package/dist/server/auth/index.js +20 -20
  104. package/dist/server/auth/index.js.map +1 -1
  105. package/dist/server/cache/index.d.ts +62 -47
  106. package/dist/server/cache/index.d.ts.map +1 -1
  107. package/dist/server/cache/index.js +56 -3
  108. package/dist/server/cache/index.js.map +1 -1
  109. package/dist/server/compress/index.d.ts +6 -0
  110. package/dist/server/compress/index.d.ts.map +1 -1
  111. package/dist/server/compress/index.js +36 -1
  112. package/dist/server/compress/index.js.map +1 -1
  113. package/dist/server/cookies/index.d.ts +6 -6
  114. package/dist/server/cookies/index.d.ts.map +1 -1
  115. package/dist/server/cookies/index.js +3 -3
  116. package/dist/server/cookies/index.js.map +1 -1
  117. package/dist/server/core/index.browser.js +2 -2
  118. package/dist/server/core/index.browser.js.map +1 -1
  119. package/dist/server/core/index.d.ts +242 -150
  120. package/dist/server/core/index.d.ts.map +1 -1
  121. package/dist/server/core/index.js +294 -125
  122. package/dist/server/core/index.js.map +1 -1
  123. package/dist/server/cors/index.d.ts +11 -12
  124. package/dist/server/cors/index.d.ts.map +1 -1
  125. package/dist/server/health/index.d.ts +0 -1
  126. package/dist/server/health/index.d.ts.map +1 -1
  127. package/dist/server/helmet/index.d.ts +2 -2
  128. package/dist/server/helmet/index.d.ts.map +1 -1
  129. package/dist/server/links/index.browser.js.map +1 -1
  130. package/dist/server/links/index.d.ts +123 -124
  131. package/dist/server/links/index.d.ts.map +1 -1
  132. package/dist/server/links/index.js +1 -2
  133. package/dist/server/links/index.js.map +1 -1
  134. package/dist/server/metrics/index.d.ts.map +1 -1
  135. package/dist/server/multipart/index.d.ts +6 -6
  136. package/dist/server/multipart/index.d.ts.map +1 -1
  137. package/dist/server/proxy/index.d.ts +102 -103
  138. package/dist/server/proxy/index.d.ts.map +1 -1
  139. package/dist/server/rate-limit/index.d.ts +16 -16
  140. package/dist/server/rate-limit/index.d.ts.map +1 -1
  141. package/dist/server/static/index.d.ts +44 -44
  142. package/dist/server/static/index.d.ts.map +1 -1
  143. package/dist/server/static/index.js +4 -0
  144. package/dist/server/static/index.js.map +1 -1
  145. package/dist/server/swagger/index.d.ts +48 -49
  146. package/dist/server/swagger/index.d.ts.map +1 -1
  147. package/dist/server/swagger/index.js +3 -5
  148. package/dist/server/swagger/index.js.map +1 -1
  149. package/dist/sms/index.d.ts +13 -11
  150. package/dist/sms/index.d.ts.map +1 -1
  151. package/dist/sms/index.js +7 -7
  152. package/dist/sms/index.js.map +1 -1
  153. package/dist/thread/index.d.ts +71 -72
  154. package/dist/thread/index.d.ts.map +1 -1
  155. package/dist/topic/core/index.d.ts +318 -318
  156. package/dist/topic/core/index.d.ts.map +1 -1
  157. package/dist/topic/redis/index.d.ts +6 -6
  158. package/dist/topic/redis/index.d.ts.map +1 -1
  159. package/dist/vite/index.d.ts +5805 -249
  160. package/dist/vite/index.d.ts.map +1 -1
  161. package/dist/vite/index.js +599 -513
  162. package/dist/vite/index.js.map +1 -1
  163. package/dist/websocket/index.browser.js +6 -6
  164. package/dist/websocket/index.browser.js.map +1 -1
  165. package/dist/websocket/index.d.ts +247 -247
  166. package/dist/websocket/index.d.ts.map +1 -1
  167. package/dist/websocket/index.js +6 -6
  168. package/dist/websocket/index.js.map +1 -1
  169. package/package.json +9 -14
  170. package/src/api/files/controllers/AdminFileStatsController.ts +0 -1
  171. package/src/api/users/atoms/realmAuthSettingsAtom.ts +5 -0
  172. package/src/api/users/controllers/{UserRealmController.ts → RealmController.ts} +11 -11
  173. package/src/api/users/entities/users.ts +1 -1
  174. package/src/api/users/index.ts +8 -8
  175. package/src/api/users/primitives/{$userRealm.ts → $realm.ts} +17 -19
  176. package/src/api/users/providers/{UserRealmProvider.ts → RealmProvider.ts} +26 -30
  177. package/src/api/users/schemas/{userRealmConfigSchema.ts → realmConfigSchema.ts} +2 -2
  178. package/src/api/users/services/CredentialService.ts +7 -7
  179. package/src/api/users/services/IdentityService.ts +4 -4
  180. package/src/api/users/services/RegistrationService.spec.ts +25 -27
  181. package/src/api/users/services/RegistrationService.ts +38 -27
  182. package/src/api/users/services/SessionCrudService.ts +3 -3
  183. package/src/api/users/services/SessionService.spec.ts +3 -3
  184. package/src/api/users/services/SessionService.ts +28 -9
  185. package/src/api/users/services/UserService.ts +7 -7
  186. package/src/batch/providers/BatchProvider.ts +1 -2
  187. package/src/cli/apps/AlephaCli.ts +0 -2
  188. package/src/cli/apps/AlephaPackageBuilderCli.ts +38 -19
  189. package/src/cli/assets/apiHelloControllerTs.ts +18 -0
  190. package/src/cli/assets/apiIndexTs.ts +16 -0
  191. package/src/cli/assets/claudeMd.ts +303 -0
  192. package/src/cli/assets/mainBrowserTs.ts +2 -2
  193. package/src/cli/assets/mainServerTs.ts +24 -0
  194. package/src/cli/assets/webAppRouterTs.ts +15 -0
  195. package/src/cli/assets/webHelloComponentTsx.ts +16 -0
  196. package/src/cli/assets/webIndexTs.ts +16 -0
  197. package/src/cli/atoms/buildOptions.ts +88 -0
  198. package/src/cli/commands/build.ts +70 -87
  199. package/src/cli/commands/db.ts +21 -22
  200. package/src/cli/commands/deploy.ts +17 -5
  201. package/src/cli/commands/dev.ts +22 -14
  202. package/src/cli/commands/format.ts +8 -2
  203. package/src/cli/commands/gen/env.ts +53 -0
  204. package/src/cli/commands/gen/openapi.ts +1 -1
  205. package/src/cli/commands/gen/resource.ts +15 -0
  206. package/src/cli/commands/gen.ts +7 -1
  207. package/src/cli/commands/init.ts +74 -30
  208. package/src/cli/commands/lint.ts +8 -2
  209. package/src/cli/commands/test.ts +8 -3
  210. package/src/cli/commands/typecheck.ts +5 -1
  211. package/src/cli/commands/verify.ts +5 -3
  212. package/src/cli/defineConfig.ts +49 -7
  213. package/src/cli/index.ts +0 -1
  214. package/src/cli/services/AlephaCliUtils.ts +39 -589
  215. package/src/cli/services/PackageManagerUtils.ts +301 -0
  216. package/src/cli/services/ProjectScaffolder.ts +306 -0
  217. package/src/command/helpers/Runner.spec.ts +2 -2
  218. package/src/command/helpers/Runner.ts +16 -4
  219. package/src/command/primitives/$command.ts +0 -6
  220. package/src/command/providers/CliProvider.ts +1 -3
  221. package/src/core/Alepha.ts +42 -0
  222. package/src/core/__tests__/Alepha-graph.spec.ts +4 -0
  223. package/src/core/index.shared.ts +1 -0
  224. package/src/core/index.ts +2 -0
  225. package/src/core/primitives/$hook.ts +6 -2
  226. package/src/core/primitives/$module.spec.ts +4 -0
  227. package/src/core/providers/AlsProvider.ts +1 -1
  228. package/src/core/providers/CodecManager.spec.ts +12 -6
  229. package/src/core/providers/CodecManager.ts +26 -6
  230. package/src/core/providers/EventManager.ts +169 -13
  231. package/src/core/providers/KeylessJsonSchemaCodec.spec.ts +621 -0
  232. package/src/core/providers/KeylessJsonSchemaCodec.ts +407 -0
  233. package/src/core/providers/StateManager.spec.ts +27 -16
  234. package/src/email/providers/LocalEmailProvider.spec.ts +111 -87
  235. package/src/email/providers/LocalEmailProvider.ts +52 -15
  236. package/src/email/providers/NodemailerEmailProvider.ts +167 -56
  237. package/src/file/errors/FileError.ts +7 -0
  238. package/src/file/index.ts +9 -1
  239. package/src/file/providers/MemoryFileSystemProvider.ts +393 -0
  240. package/src/logger/index.ts +15 -3
  241. package/src/mcp/transports/StdioMcpTransport.ts +1 -1
  242. package/src/orm/index.browser.ts +1 -19
  243. package/src/orm/index.bun.ts +77 -0
  244. package/src/orm/index.shared-server.ts +22 -0
  245. package/src/orm/index.shared.ts +15 -0
  246. package/src/orm/index.ts +13 -39
  247. package/src/orm/providers/drivers/BunPostgresProvider.ts +3 -5
  248. package/src/orm/providers/drivers/BunSqliteProvider.ts +1 -1
  249. package/src/orm/providers/drivers/CloudflareD1Provider.ts +4 -0
  250. package/src/orm/providers/drivers/DatabaseProvider.ts +4 -0
  251. package/src/orm/providers/drivers/PglitePostgresProvider.ts +4 -0
  252. package/src/orm/services/Repository.ts +8 -0
  253. package/src/queue/core/providers/WorkerProvider.spec.ts +48 -32
  254. package/src/redis/index.bun.ts +35 -0
  255. package/src/redis/providers/BunRedisProvider.ts +12 -43
  256. package/src/redis/providers/BunRedisSubscriberProvider.ts +2 -3
  257. package/src/redis/providers/NodeRedisProvider.ts +16 -34
  258. package/src/{server/security → security}/__tests__/BasicAuth.spec.ts +11 -11
  259. package/src/{server/security → security}/__tests__/ServerSecurityProvider-realm.spec.ts +21 -16
  260. package/src/{server/security/providers → security/__tests__}/ServerSecurityProvider.spec.ts +5 -5
  261. package/src/security/index.browser.ts +5 -0
  262. package/src/security/index.ts +90 -7
  263. package/src/security/primitives/{$realm.spec.ts → $issuer.spec.ts} +11 -11
  264. package/src/security/primitives/{$realm.ts → $issuer.ts} +20 -17
  265. package/src/security/primitives/$role.ts +5 -5
  266. package/src/security/primitives/$serviceAccount.spec.ts +5 -5
  267. package/src/security/primitives/$serviceAccount.ts +3 -3
  268. package/src/{server/security → security}/providers/ServerSecurityProvider.ts +5 -7
  269. package/src/server/auth/primitives/$auth.ts +10 -10
  270. package/src/server/auth/primitives/$authCredentials.ts +3 -3
  271. package/src/server/auth/primitives/$authGithub.ts +3 -3
  272. package/src/server/auth/primitives/$authGoogle.ts +3 -3
  273. package/src/server/auth/providers/ServerAuthProvider.ts +13 -13
  274. package/src/server/cache/providers/ServerCacheProvider.spec.ts +183 -0
  275. package/src/server/cache/providers/ServerCacheProvider.ts +95 -10
  276. package/src/server/compress/providers/ServerCompressProvider.ts +61 -2
  277. package/src/server/cookies/providers/ServerCookiesProvider.ts +3 -3
  278. package/src/server/core/helpers/ServerReply.ts +2 -2
  279. package/src/server/core/providers/NodeHttpServerProvider.ts +25 -6
  280. package/src/server/core/providers/ServerBodyParserProvider.ts +19 -23
  281. package/src/server/core/providers/ServerLoggerProvider.ts +23 -19
  282. package/src/server/core/providers/ServerProvider.ts +155 -22
  283. package/src/server/core/providers/ServerRouterProvider.ts +259 -115
  284. package/src/server/core/providers/ServerTimingProvider.ts +2 -2
  285. package/src/server/links/index.ts +1 -1
  286. package/src/server/links/providers/LinkProvider.ts +1 -1
  287. package/src/server/static/providers/ServerStaticProvider.ts +10 -0
  288. package/src/server/swagger/index.ts +1 -1
  289. package/src/server/swagger/providers/ServerSwaggerProvider.ts +5 -8
  290. package/src/sms/providers/LocalSmsProvider.spec.ts +153 -111
  291. package/src/sms/providers/LocalSmsProvider.ts +8 -7
  292. package/src/vite/helpers/boot.ts +28 -17
  293. package/src/vite/helpers/importViteReact.ts +13 -0
  294. package/src/vite/index.ts +1 -21
  295. package/src/vite/plugins/viteAlephaDev.ts +16 -1
  296. package/src/vite/plugins/viteAlephaSsrPreload.ts +222 -0
  297. package/src/vite/tasks/buildClient.ts +11 -0
  298. package/src/vite/tasks/buildServer.ts +59 -4
  299. package/src/vite/tasks/devServer.ts +71 -0
  300. package/src/vite/tasks/generateCloudflare.ts +7 -0
  301. package/src/vite/tasks/index.ts +2 -1
  302. package/dist/server/security/index.browser.js +0 -13
  303. package/dist/server/security/index.browser.js.map +0 -1
  304. package/dist/server/security/index.d.ts +0 -173
  305. package/dist/server/security/index.d.ts.map +0 -1
  306. package/dist/server/security/index.js +0 -311
  307. package/dist/server/security/index.js.map +0 -1
  308. package/src/cli/assets/appRouterTs.ts +0 -9
  309. package/src/cli/assets/mainTs.ts +0 -13
  310. package/src/cli/assets/viteConfigTs.ts +0 -14
  311. package/src/cli/commands/run.ts +0 -24
  312. package/src/server/security/index.browser.ts +0 -10
  313. package/src/server/security/index.ts +0 -94
  314. package/src/vite/plugins/viteAlepha.ts +0 -37
  315. package/src/vite/plugins/viteAlephaBuild.ts +0 -281
  316. /package/src/{server/security → security}/primitives/$basicAuth.ts +0 -0
  317. /package/src/{server/security → security}/providers/ServerBasicAuthProvider.ts +0 -0
@@ -2,10 +2,8 @@ import * as alepha1 from "alepha";
2
2
  import { Alepha, Static } from "alepha";
3
3
  import * as alepha_logger0 from "alepha/logger";
4
4
  import { RedisClientType, createClient } from "@redis/client";
5
- import { RedisClient } from "bun";
6
5
 
7
6
  //#region ../../src/redis/providers/RedisProvider.d.ts
8
-
9
7
  /**
10
8
  * Abstract Redis provider interface.
11
9
  *
@@ -26,73 +24,73 @@ import { RedisClient } from "bun";
26
24
  */
27
25
  declare abstract class RedisProvider {
28
26
  /**
29
- * Whether the Redis client is ready to accept commands.
30
- */
27
+ * Whether the Redis client is ready to accept commands.
28
+ */
31
29
  abstract readonly isReady: boolean;
32
30
  /**
33
- * Connect to the Redis server.
34
- */
31
+ * Connect to the Redis server.
32
+ */
35
33
  abstract connect(): Promise<void>;
36
34
  /**
37
- * Close the connection to the Redis server.
38
- */
35
+ * Close the connection to the Redis server.
36
+ */
39
37
  abstract close(): Promise<void>;
40
38
  /**
41
- * Get the value of a key.
42
- *
43
- * @param key The key to get.
44
- * @returns The value as a Buffer, or undefined if the key does not exist.
45
- */
39
+ * Get the value of a key.
40
+ *
41
+ * @param key The key to get.
42
+ * @returns The value as a Buffer, or undefined if the key does not exist.
43
+ */
46
44
  abstract get(key: string): Promise<Buffer | undefined>;
47
45
  /**
48
- * Set the value of a key.
49
- *
50
- * @param key The key to set.
51
- * @param value The value to set (Buffer or string).
52
- * @param options Optional set options (EX, PX, NX, XX, etc.).
53
- * @returns The value as a Buffer.
54
- */
46
+ * Set the value of a key.
47
+ *
48
+ * @param key The key to set.
49
+ * @param value The value to set (Buffer or string).
50
+ * @param options Optional set options (EX, PX, NX, XX, etc.).
51
+ * @returns The value as a Buffer.
52
+ */
55
53
  abstract set(key: string, value: Buffer | string, options?: RedisSetOptions): Promise<Buffer>;
56
54
  /**
57
- * Check if a key exists.
58
- *
59
- * @param key The key to check.
60
- * @returns True if the key exists.
61
- */
55
+ * Check if a key exists.
56
+ *
57
+ * @param key The key to check.
58
+ * @returns True if the key exists.
59
+ */
62
60
  abstract has(key: string): Promise<boolean>;
63
61
  /**
64
- * Get all keys matching a pattern.
65
- *
66
- * @param pattern The glob-style pattern to match.
67
- * @returns Array of matching key names.
68
- */
62
+ * Get all keys matching a pattern.
63
+ *
64
+ * @param pattern The glob-style pattern to match.
65
+ * @returns Array of matching key names.
66
+ */
69
67
  abstract keys(pattern: string): Promise<string[]>;
70
68
  /**
71
- * Delete one or more keys.
72
- *
73
- * @param keys The keys to delete.
74
- */
69
+ * Delete one or more keys.
70
+ *
71
+ * @param keys The keys to delete.
72
+ */
75
73
  abstract del(keys: string[]): Promise<void>;
76
74
  /**
77
- * Push a value to the left (head) of a list.
78
- *
79
- * @param key The list key.
80
- * @param value The value to push.
81
- */
75
+ * Push a value to the left (head) of a list.
76
+ *
77
+ * @param key The list key.
78
+ * @param value The value to push.
79
+ */
82
80
  abstract lpush(key: string, value: string): Promise<void>;
83
81
  /**
84
- * Pop a value from the right (tail) of a list.
85
- *
86
- * @param key The list key.
87
- * @returns The value, or undefined if the list is empty.
88
- */
82
+ * Pop a value from the right (tail) of a list.
83
+ *
84
+ * @param key The list key.
85
+ * @returns The value, or undefined if the list is empty.
86
+ */
89
87
  abstract rpop(key: string): Promise<string | undefined>;
90
88
  /**
91
- * Publish a message to a channel.
92
- *
93
- * @param channel The channel name.
94
- * @param message The message to publish.
95
- */
89
+ * Publish a message to a channel.
90
+ *
91
+ * @param channel The channel name.
92
+ * @param message The message to publish.
93
+ */
96
94
  abstract publish(channel: string, message: string): Promise<void>;
97
95
  }
98
96
  /**
@@ -101,56 +99,53 @@ declare abstract class RedisProvider {
101
99
  */
102
100
  interface RedisSetOptions {
103
101
  /**
104
- * Set the specified expire time, in seconds.
105
- */
102
+ * Set the specified expire time, in seconds.
103
+ */
106
104
  EX?: number;
107
105
  /**
108
- * Set the specified expire time, in milliseconds.
109
- */
106
+ * Set the specified expire time, in milliseconds.
107
+ */
110
108
  PX?: number;
111
109
  /**
112
- * Set the specified Unix time at which the key will expire, in seconds.
113
- */
110
+ * Set the specified Unix time at which the key will expire, in seconds.
111
+ */
114
112
  EXAT?: number;
115
113
  /**
116
- * Set the specified Unix time at which the key will expire, in milliseconds.
117
- */
114
+ * Set the specified Unix time at which the key will expire, in milliseconds.
115
+ */
118
116
  PXAT?: number;
119
117
  /**
120
- * Only set the key if it does not already exist.
121
- */
118
+ * Only set the key if it does not already exist.
119
+ */
122
120
  NX?: boolean;
123
121
  /**
124
- * Only set the key if it already exists.
125
- */
122
+ * Only set the key if it already exists.
123
+ */
126
124
  XX?: boolean;
127
125
  /**
128
- * Retain the time to live associated with the key.
129
- */
126
+ * Retain the time to live associated with the key.
127
+ */
130
128
  KEEPTTL?: boolean;
131
129
  /**
132
- * Return the old string stored at key, or nil if key did not exist.
133
- */
130
+ * Return the old string stored at key, or nil if key did not exist.
131
+ */
134
132
  GET?: boolean;
135
133
  /**
136
- * Alternative expiration format (compatible with @redis/client).
137
- */
134
+ * Alternative expiration format (compatible with @redis/client).
135
+ */
138
136
  expiration?: {
139
137
  type: "EX" | "PX" | "EXAT" | "PXAT" | "KEEPTTL";
140
138
  value: number;
141
139
  };
142
140
  /**
143
- * Alternative condition format (compatible with @redis/client).
144
- */
141
+ * Alternative condition format (compatible with @redis/client).
142
+ */
145
143
  condition?: "NX" | "XX";
146
144
  }
147
145
  //#endregion
148
146
  //#region ../../src/redis/providers/BunRedisProvider.d.ts
149
147
  declare const envSchema$1: alepha1.TObject<{
150
- REDIS_URL: alepha1.TOptional<alepha1.TString>;
151
- REDIS_PORT: alepha1.TInteger;
152
- REDIS_HOST: alepha1.TString;
153
- REDIS_PASSWORD: alepha1.TOptional<alepha1.TString>;
148
+ REDIS_URL: alepha1.TString;
154
149
  }>;
155
150
  declare module "alepha" {
156
151
  interface Env extends Partial<Static<typeof envSchema$1>> {}
@@ -163,10 +158,8 @@ declare module "alepha" {
163
158
  *
164
159
  * @example
165
160
  * ```ts
166
- * // Set REDIS_URL environment variable
167
- * // REDIS_URL=redis://localhost:6379
168
- *
169
- * // Or configure via REDIS_HOST, REDIS_PORT, REDIS_PASSWORD
161
+ * // Set REDIS_URL environment variable (default: redis://localhost:6379)
162
+ * // REDIS_URL=redis://:password@myredis.example.com:6379
170
163
  *
171
164
  * // Or configure programmatically
172
165
  * alepha.with({
@@ -179,28 +172,25 @@ declare class BunRedisProvider extends RedisProvider {
179
172
  protected readonly log: alepha_logger0.Logger;
180
173
  protected readonly alepha: Alepha;
181
174
  protected readonly env: {
182
- REDIS_URL?: string | undefined;
183
- REDIS_PASSWORD?: string | undefined;
184
- REDIS_PORT: number;
185
- REDIS_HOST: string;
175
+ REDIS_URL: string;
186
176
  };
187
- protected client?: RedisClient;
188
- get publisher(): RedisClient;
177
+ protected client?: Bun.RedisClient;
178
+ get publisher(): Bun.RedisClient;
189
179
  get isReady(): boolean;
190
180
  protected readonly start: alepha1.HookPrimitive<"start">;
191
181
  protected readonly stop: alepha1.HookPrimitive<"stop">;
192
182
  /**
193
- * Connect to the Redis server.
194
- */
183
+ * Connect to the Redis server.
184
+ */
195
185
  connect(): Promise<void>;
196
186
  /**
197
- * Close the connection to the Redis server.
198
- */
187
+ * Close the connection to the Redis server.
188
+ */
199
189
  close(): Promise<void>;
200
190
  /**
201
- * Create a duplicate connection for pub/sub or other isolated operations.
202
- */
203
- duplicate(): Promise<RedisClient>;
191
+ * Create a duplicate connection for pub/sub or other isolated operations.
192
+ */
193
+ duplicate(): Promise<Bun.RedisClient>;
204
194
  get(key: string): Promise<Buffer | undefined>;
205
195
  set(key: string, value: Buffer | string, options?: RedisSetOptions): Promise<Buffer>;
206
196
  has(key: string): Promise<boolean>;
@@ -210,8 +200,8 @@ declare class BunRedisProvider extends RedisProvider {
210
200
  rpop(key: string): Promise<string | undefined>;
211
201
  publish(channel: string, message: string): Promise<void>;
212
202
  /**
213
- * Get the Redis connection URL.
214
- */
203
+ * Get the Redis connection URL.
204
+ */
215
205
  protected getUrl(): string;
216
206
  }
217
207
  //#endregion
@@ -240,30 +230,30 @@ declare class BunRedisProvider extends RedisProvider {
240
230
  */
241
231
  declare abstract class RedisSubscriberProvider {
242
232
  /**
243
- * Whether the Redis subscriber client is ready to accept commands.
244
- */
233
+ * Whether the Redis subscriber client is ready to accept commands.
234
+ */
245
235
  abstract readonly isReady: boolean;
246
236
  /**
247
- * Connect to the Redis server for subscriptions.
248
- */
237
+ * Connect to the Redis server for subscriptions.
238
+ */
249
239
  abstract connect(): Promise<void>;
250
240
  /**
251
- * Close the subscriber connection.
252
- */
241
+ * Close the subscriber connection.
242
+ */
253
243
  abstract close(): Promise<void>;
254
244
  /**
255
- * Subscribe to a channel.
256
- *
257
- * @param channel The channel name.
258
- * @param callback The callback to invoke when a message is received.
259
- */
245
+ * Subscribe to a channel.
246
+ *
247
+ * @param channel The channel name.
248
+ * @param callback The callback to invoke when a message is received.
249
+ */
260
250
  abstract subscribe(channel: string, callback: SubscribeCallback): Promise<void>;
261
251
  /**
262
- * Unsubscribe from a channel.
263
- *
264
- * @param channel The channel name.
265
- * @param callback Optional specific callback to remove.
266
- */
252
+ * Unsubscribe from a channel.
253
+ *
254
+ * @param channel The channel name.
255
+ * @param callback Optional specific callback to remove.
256
+ */
267
257
  abstract unsubscribe(channel: string, callback?: SubscribeCallback): Promise<void>;
268
258
  }
269
259
  /**
@@ -290,18 +280,18 @@ declare class BunRedisSubscriberProvider extends RedisSubscriberProvider {
290
280
  protected readonly log: alepha_logger0.Logger;
291
281
  protected readonly alepha: Alepha;
292
282
  protected readonly redisProvider: BunRedisProvider;
293
- protected client?: RedisClient;
294
- get subscriber(): RedisClient;
283
+ protected client?: Bun.RedisClient;
284
+ get subscriber(): Bun.RedisClient;
295
285
  get isReady(): boolean;
296
286
  protected readonly start: alepha1.HookPrimitive<"start">;
297
287
  protected readonly stop: alepha1.HookPrimitive<"stop">;
298
288
  /**
299
- * Connect to the Redis server for subscriptions.
300
- */
289
+ * Connect to the Redis server for subscriptions.
290
+ */
301
291
  connect(): Promise<void>;
302
292
  /**
303
- * Close the subscriber connection.
304
- */
293
+ * Close the subscriber connection.
294
+ */
305
295
  close(): Promise<void>;
306
296
  subscribe(channel: string, callback: SubscribeCallback): Promise<void>;
307
297
  unsubscribe(channel: string, _callback?: SubscribeCallback): Promise<void>;
@@ -309,10 +299,7 @@ declare class BunRedisSubscriberProvider extends RedisSubscriberProvider {
309
299
  //#endregion
310
300
  //#region ../../src/redis/providers/NodeRedisProvider.d.ts
311
301
  declare const envSchema: alepha1.TObject<{
312
- REDIS_URL: alepha1.TOptional<alepha1.TString>;
313
- REDIS_PORT: alepha1.TInteger;
314
- REDIS_HOST: alepha1.TString;
315
- REDIS_PASSWORD: alepha1.TOptional<alepha1.TString>;
302
+ REDIS_URL: alepha1.TString;
316
303
  }>;
317
304
  declare module "alepha" {
318
305
  interface Env extends Partial<Static<typeof envSchema>> {}
@@ -328,10 +315,8 @@ type NodeRedisClientOptions = Parameters<typeof createClient>[0];
328
315
  *
329
316
  * @example
330
317
  * ```ts
331
- * // Set REDIS_URL environment variable
332
- * // REDIS_URL=redis://localhost:6379
333
- *
334
- * // Or configure via REDIS_HOST, REDIS_PORT, REDIS_PASSWORD
318
+ * // Set REDIS_URL environment variable (default: redis://localhost:6379)
319
+ * // REDIS_URL=redis://:password@myredis.example.com:6379
335
320
  *
336
321
  * // Or configure programmatically
337
322
  * alepha.with({
@@ -344,10 +329,7 @@ declare class NodeRedisProvider extends RedisProvider {
344
329
  protected readonly log: alepha_logger0.Logger;
345
330
  protected readonly alepha: Alepha;
346
331
  protected readonly env: {
347
- REDIS_URL?: string | undefined;
348
- REDIS_PASSWORD?: string | undefined;
349
- REDIS_PORT: number;
350
- REDIS_HOST: string;
332
+ REDIS_URL: string;
351
333
  };
352
334
  protected readonly client: NodeRedisClient;
353
335
  get publisher(): NodeRedisClient;
@@ -355,12 +337,12 @@ declare class NodeRedisProvider extends RedisProvider {
355
337
  protected readonly start: alepha1.HookPrimitive<"start">;
356
338
  protected readonly stop: alepha1.HookPrimitive<"stop">;
357
339
  /**
358
- * Connect to the Redis server.
359
- */
340
+ * Connect to the Redis server.
341
+ */
360
342
  connect(): Promise<void>;
361
343
  /**
362
- * Close the connection to the Redis server.
363
- */
344
+ * Close the connection to the Redis server.
345
+ */
364
346
  close(): Promise<void>;
365
347
  duplicate(options?: Partial<NodeRedisClientOptions>): NodeRedisClient;
366
348
  get(key: string): Promise<Buffer | undefined>;
@@ -372,12 +354,12 @@ declare class NodeRedisProvider extends RedisProvider {
372
354
  rpop(key: string): Promise<string | undefined>;
373
355
  publish(channel: string, message: string): Promise<void>;
374
356
  /**
375
- * Get the Redis connection URL.
376
- */
357
+ * Get the Redis connection URL.
358
+ */
377
359
  protected getUrl(): string;
378
360
  /**
379
- * Redis client factory method.
380
- */
361
+ * Redis client factory method.
362
+ */
381
363
  protected createClient(): NodeRedisClient;
382
364
  }
383
365
  //#endregion
@@ -410,8 +392,8 @@ declare class NodeRedisSubscriberProvider extends RedisSubscriberProvider {
410
392
  subscribe(channel: string, callback: SubscribeCallback): Promise<void>;
411
393
  unsubscribe(channel: string, callback?: SubscribeCallback): Promise<void>;
412
394
  /**
413
- * Redis subscriber client factory method.
414
- */
395
+ * Redis subscriber client factory method.
396
+ */
415
397
  protected createClient(): NodeRedisClient;
416
398
  }
417
399
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/redis/providers/RedisProvider.ts","../../src/redis/providers/BunRedisProvider.ts","../../src/redis/providers/RedisSubscriberProvider.ts","../../src/redis/providers/BunRedisSubscriberProvider.ts","../../src/redis/providers/NodeRedisProvider.ts","../../src/redis/providers/NodeRedisSubscriberProvider.ts","../../src/redis/index.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/redis/providers/RedisProvider.ts","../../src/redis/providers/BunRedisProvider.ts","../../src/redis/providers/RedisSubscriberProvider.ts","../../src/redis/providers/BunRedisSubscriberProvider.ts","../../src/redis/providers/NodeRedisProvider.ts","../../src/redis/providers/NodeRedisSubscriberProvider.ts","../../src/redis/index.ts"],"mappings":"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"}
@@ -25,12 +25,10 @@ var RedisProvider = class {};
25
25
 
26
26
  //#endregion
27
27
  //#region ../../src/redis/providers/BunRedisProvider.ts
28
- const envSchema$1 = t.object({
29
- REDIS_URL: t.optional(t.text()),
30
- REDIS_PORT: t.integer({ default: "6379" }),
31
- REDIS_HOST: t.text({ default: "localhost" }),
32
- REDIS_PASSWORD: t.optional(t.text())
33
- });
28
+ const envSchema$1 = t.object({ REDIS_URL: t.text({
29
+ default: "redis://localhost:6379",
30
+ description: "Redis connection URL"
31
+ }) });
34
32
  /**
35
33
  * Bun Redis client provider using Bun's native Redis client.
36
34
  *
@@ -39,10 +37,8 @@ const envSchema$1 = t.object({
39
37
  *
40
38
  * @example
41
39
  * ```ts
42
- * // Set REDIS_URL environment variable
43
- * // REDIS_URL=redis://localhost:6379
44
- *
45
- * // Or configure via REDIS_HOST, REDIS_PORT, REDIS_PASSWORD
40
+ * // Set REDIS_URL environment variable (default: redis://localhost:6379)
41
+ * // REDIS_URL=redis://:password@myredis.example.com:6379
46
42
  *
47
43
  * // Or configure programmatically
48
44
  * alepha.with({
@@ -75,10 +71,9 @@ var BunRedisProvider = class extends RedisProvider {
75
71
  * Connect to the Redis server.
76
72
  */
77
73
  async connect() {
78
- if (typeof Bun === "undefined") throw new AlephaError("BunRedisProvider requires the Bun runtime. Use NodeRedisProvider for Node.js.");
74
+ if (!this.alepha.isBun()) throw new AlephaError("BunRedisProvider requires the Bun runtime. Use NodeRedisProvider for Node.js.");
79
75
  this.log.debug("Connecting...");
80
- const { RedisClient } = await import("bun");
81
- this.client = new RedisClient(this.getUrl(), {
76
+ this.client = new Bun.RedisClient(this.getUrl(), {
82
77
  autoReconnect: true,
83
78
  enableAutoPipelining: true
84
79
  });
@@ -107,8 +102,7 @@ var BunRedisProvider = class extends RedisProvider {
107
102
  */
108
103
  async duplicate() {
109
104
  if (typeof Bun === "undefined") throw new AlephaError("BunRedisProvider requires the Bun runtime.");
110
- const { RedisClient } = await import("bun");
111
- const client = new RedisClient(this.getUrl(), {
105
+ const client = new Bun.RedisClient(this.getUrl(), {
112
106
  autoReconnect: true,
113
107
  enableAutoPipelining: true
114
108
  });
@@ -171,12 +165,7 @@ var BunRedisProvider = class extends RedisProvider {
171
165
  * Get the Redis connection URL.
172
166
  */
173
167
  getUrl() {
174
- if (this.env.REDIS_URL) return this.env.REDIS_URL;
175
- const url = new URL("redis://127.0.0.1:6379");
176
- if (this.env.REDIS_PASSWORD) url.password = this.env.REDIS_PASSWORD;
177
- if (this.env.REDIS_HOST) url.hostname = this.env.REDIS_HOST;
178
- if (this.env.REDIS_PORT) url.port = String(this.env.REDIS_PORT);
179
- return url.toString();
168
+ return this.env.REDIS_URL;
180
169
  }
181
170
  };
182
171
 
@@ -273,12 +262,10 @@ var BunRedisSubscriberProvider = class extends RedisSubscriberProvider {
273
262
 
274
263
  //#endregion
275
264
  //#region ../../src/redis/providers/NodeRedisProvider.ts
276
- const envSchema = t.object({
277
- REDIS_URL: t.optional(t.text()),
278
- REDIS_PORT: t.integer({ default: "6379" }),
279
- REDIS_HOST: t.text({ default: "localhost" }),
280
- REDIS_PASSWORD: t.optional(t.text())
281
- });
265
+ const envSchema = t.object({ REDIS_URL: t.text({
266
+ default: "redis://localhost:6379",
267
+ description: "Redis connection URL"
268
+ }) });
282
269
  /**
283
270
  * Node.js Redis client provider using `@redis/client`.
284
271
  *
@@ -286,10 +273,8 @@ const envSchema = t.object({
286
273
  *
287
274
  * @example
288
275
  * ```ts
289
- * // Set REDIS_URL environment variable
290
- * // REDIS_URL=redis://localhost:6379
291
- *
292
- * // Or configure via REDIS_HOST, REDIS_PORT, REDIS_PASSWORD
276
+ * // Set REDIS_URL environment variable (default: redis://localhost:6379)
277
+ * // REDIS_URL=redis://:password@myredis.example.com:6379
293
278
  *
294
279
  * // Or configure programmatically
295
280
  * alepha.with({
@@ -304,7 +289,7 @@ var NodeRedisProvider = class extends RedisProvider {
304
289
  env = $env(envSchema);
305
290
  client = this.createClient();
306
291
  get publisher() {
307
- if (!this.client.isReady) throw new Error("Redis client is not ready");
292
+ if (!this.client.isReady) throw new AlephaError("Redis client is not ready");
308
293
  return this.client;
309
294
  }
310
295
  get isReady() {
@@ -390,12 +375,7 @@ var NodeRedisProvider = class extends RedisProvider {
390
375
  * Get the Redis connection URL.
391
376
  */
392
377
  getUrl() {
393
- if (this.env.REDIS_URL) return this.env.REDIS_URL;
394
- const url = new URL("redis://127.0.0.1:6379");
395
- if (this.env.REDIS_PASSWORD) url.password = this.env.REDIS_PASSWORD;
396
- if (this.env.REDIS_HOST) url.hostname = this.env.REDIS_HOST;
397
- if (this.env.REDIS_PORT) url.port = String(this.env.REDIS_PORT);
398
- return url.toString();
378
+ return this.env.REDIS_URL;
399
379
  }
400
380
  /**
401
381
  * Redis client factory method.