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.
- package/README.md +2 -5
- package/dist/api/audits/index.d.ts +620 -811
- package/dist/api/audits/index.d.ts.map +1 -1
- package/dist/api/files/index.d.ts +185 -377
- package/dist/api/files/index.d.ts.map +1 -1
- package/dist/api/files/index.js +0 -1
- package/dist/api/files/index.js.map +1 -1
- package/dist/api/jobs/index.d.ts +245 -435
- package/dist/api/jobs/index.d.ts.map +1 -1
- package/dist/api/notifications/index.d.ts +238 -429
- package/dist/api/notifications/index.d.ts.map +1 -1
- package/dist/api/parameters/index.d.ts +236 -427
- package/dist/api/parameters/index.d.ts.map +1 -1
- package/dist/api/users/index.browser.js +1 -2
- package/dist/api/users/index.browser.js.map +1 -1
- package/dist/api/users/index.d.ts +1010 -1196
- package/dist/api/users/index.d.ts.map +1 -1
- package/dist/api/users/index.js +178 -151
- package/dist/api/users/index.js.map +1 -1
- package/dist/api/verifications/index.d.ts +17 -17
- package/dist/api/verifications/index.d.ts.map +1 -1
- package/dist/batch/index.d.ts +122 -122
- package/dist/batch/index.d.ts.map +1 -1
- package/dist/batch/index.js +1 -2
- package/dist/batch/index.js.map +1 -1
- package/dist/bucket/index.d.ts +163 -163
- package/dist/bucket/index.d.ts.map +1 -1
- package/dist/cache/core/index.d.ts +46 -46
- package/dist/cache/core/index.d.ts.map +1 -1
- package/dist/cache/redis/index.d.ts.map +1 -1
- package/dist/cli/index.d.ts +384 -285
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +1113 -623
- package/dist/cli/index.js.map +1 -1
- package/dist/command/index.d.ts +299 -300
- package/dist/command/index.d.ts.map +1 -1
- package/dist/command/index.js +13 -9
- package/dist/command/index.js.map +1 -1
- package/dist/core/index.browser.js +445 -103
- package/dist/core/index.browser.js.map +1 -1
- package/dist/core/index.d.ts +733 -625
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +446 -103
- package/dist/core/index.js.map +1 -1
- package/dist/core/index.native.js +445 -103
- package/dist/core/index.native.js.map +1 -1
- package/dist/datetime/index.d.ts +44 -44
- package/dist/datetime/index.d.ts.map +1 -1
- package/dist/datetime/index.js +4 -4
- package/dist/datetime/index.js.map +1 -1
- package/dist/email/index.d.ts +97 -50
- package/dist/email/index.d.ts.map +1 -1
- package/dist/email/index.js +129 -33
- package/dist/email/index.js.map +1 -1
- package/dist/fake/index.d.ts +7981 -14
- package/dist/fake/index.d.ts.map +1 -1
- package/dist/file/index.d.ts +523 -390
- package/dist/file/index.d.ts.map +1 -1
- package/dist/file/index.js +253 -1
- package/dist/file/index.js.map +1 -1
- package/dist/lock/core/index.d.ts +208 -208
- package/dist/lock/core/index.d.ts.map +1 -1
- package/dist/lock/redis/index.d.ts.map +1 -1
- package/dist/logger/index.d.ts +25 -26
- package/dist/logger/index.d.ts.map +1 -1
- package/dist/logger/index.js +12 -2
- package/dist/logger/index.js.map +1 -1
- package/dist/mcp/index.d.ts +197 -197
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +1 -1
- package/dist/mcp/index.js.map +1 -1
- package/dist/orm/chunk-DtkW-qnP.js +38 -0
- package/dist/orm/index.browser.js.map +1 -1
- package/dist/orm/index.bun.js +2814 -0
- package/dist/orm/index.bun.js.map +1 -0
- package/dist/orm/index.d.ts +1228 -1216
- package/dist/orm/index.d.ts.map +1 -1
- package/dist/orm/index.js +2041 -1967
- package/dist/orm/index.js.map +1 -1
- package/dist/queue/core/index.d.ts +248 -248
- package/dist/queue/core/index.d.ts.map +1 -1
- package/dist/queue/redis/index.d.ts.map +1 -1
- package/dist/redis/index.bun.js +285 -0
- package/dist/redis/index.bun.js.map +1 -0
- package/dist/redis/index.d.ts +118 -136
- package/dist/redis/index.d.ts.map +1 -1
- package/dist/redis/index.js +18 -38
- package/dist/redis/index.js.map +1 -1
- package/dist/retry/index.d.ts +69 -69
- package/dist/retry/index.d.ts.map +1 -1
- package/dist/router/index.d.ts +6 -6
- package/dist/router/index.d.ts.map +1 -1
- package/dist/scheduler/index.d.ts +25 -25
- package/dist/scheduler/index.d.ts.map +1 -1
- package/dist/security/index.browser.js +5 -1
- package/dist/security/index.browser.js.map +1 -1
- package/dist/security/index.d.ts +417 -254
- package/dist/security/index.d.ts.map +1 -1
- package/dist/security/index.js +386 -86
- package/dist/security/index.js.map +1 -1
- package/dist/server/auth/index.d.ts +110 -110
- package/dist/server/auth/index.d.ts.map +1 -1
- package/dist/server/auth/index.js +20 -20
- package/dist/server/auth/index.js.map +1 -1
- package/dist/server/cache/index.d.ts +62 -47
- package/dist/server/cache/index.d.ts.map +1 -1
- package/dist/server/cache/index.js +56 -3
- package/dist/server/cache/index.js.map +1 -1
- package/dist/server/compress/index.d.ts +6 -0
- package/dist/server/compress/index.d.ts.map +1 -1
- package/dist/server/compress/index.js +36 -1
- package/dist/server/compress/index.js.map +1 -1
- package/dist/server/cookies/index.d.ts +6 -6
- package/dist/server/cookies/index.d.ts.map +1 -1
- package/dist/server/cookies/index.js +3 -3
- package/dist/server/cookies/index.js.map +1 -1
- package/dist/server/core/index.browser.js +2 -2
- package/dist/server/core/index.browser.js.map +1 -1
- package/dist/server/core/index.d.ts +242 -150
- package/dist/server/core/index.d.ts.map +1 -1
- package/dist/server/core/index.js +294 -125
- package/dist/server/core/index.js.map +1 -1
- package/dist/server/cors/index.d.ts +11 -12
- package/dist/server/cors/index.d.ts.map +1 -1
- package/dist/server/health/index.d.ts +0 -1
- package/dist/server/health/index.d.ts.map +1 -1
- package/dist/server/helmet/index.d.ts +2 -2
- package/dist/server/helmet/index.d.ts.map +1 -1
- package/dist/server/links/index.browser.js.map +1 -1
- package/dist/server/links/index.d.ts +123 -124
- package/dist/server/links/index.d.ts.map +1 -1
- package/dist/server/links/index.js +1 -2
- package/dist/server/links/index.js.map +1 -1
- package/dist/server/metrics/index.d.ts.map +1 -1
- package/dist/server/multipart/index.d.ts +6 -6
- package/dist/server/multipart/index.d.ts.map +1 -1
- package/dist/server/proxy/index.d.ts +102 -103
- package/dist/server/proxy/index.d.ts.map +1 -1
- package/dist/server/rate-limit/index.d.ts +16 -16
- package/dist/server/rate-limit/index.d.ts.map +1 -1
- package/dist/server/static/index.d.ts +44 -44
- package/dist/server/static/index.d.ts.map +1 -1
- package/dist/server/static/index.js +4 -0
- package/dist/server/static/index.js.map +1 -1
- package/dist/server/swagger/index.d.ts +48 -49
- package/dist/server/swagger/index.d.ts.map +1 -1
- package/dist/server/swagger/index.js +3 -5
- package/dist/server/swagger/index.js.map +1 -1
- package/dist/sms/index.d.ts +13 -11
- package/dist/sms/index.d.ts.map +1 -1
- package/dist/sms/index.js +7 -7
- package/dist/sms/index.js.map +1 -1
- package/dist/thread/index.d.ts +71 -72
- package/dist/thread/index.d.ts.map +1 -1
- package/dist/topic/core/index.d.ts +318 -318
- package/dist/topic/core/index.d.ts.map +1 -1
- package/dist/topic/redis/index.d.ts +6 -6
- package/dist/topic/redis/index.d.ts.map +1 -1
- package/dist/vite/index.d.ts +5805 -249
- package/dist/vite/index.d.ts.map +1 -1
- package/dist/vite/index.js +599 -513
- package/dist/vite/index.js.map +1 -1
- package/dist/websocket/index.browser.js +6 -6
- package/dist/websocket/index.browser.js.map +1 -1
- package/dist/websocket/index.d.ts +247 -247
- package/dist/websocket/index.d.ts.map +1 -1
- package/dist/websocket/index.js +6 -6
- package/dist/websocket/index.js.map +1 -1
- package/package.json +9 -14
- package/src/api/files/controllers/AdminFileStatsController.ts +0 -1
- package/src/api/users/atoms/realmAuthSettingsAtom.ts +5 -0
- package/src/api/users/controllers/{UserRealmController.ts → RealmController.ts} +11 -11
- package/src/api/users/entities/users.ts +1 -1
- package/src/api/users/index.ts +8 -8
- package/src/api/users/primitives/{$userRealm.ts → $realm.ts} +17 -19
- package/src/api/users/providers/{UserRealmProvider.ts → RealmProvider.ts} +26 -30
- package/src/api/users/schemas/{userRealmConfigSchema.ts → realmConfigSchema.ts} +2 -2
- package/src/api/users/services/CredentialService.ts +7 -7
- package/src/api/users/services/IdentityService.ts +4 -4
- package/src/api/users/services/RegistrationService.spec.ts +25 -27
- package/src/api/users/services/RegistrationService.ts +38 -27
- package/src/api/users/services/SessionCrudService.ts +3 -3
- package/src/api/users/services/SessionService.spec.ts +3 -3
- package/src/api/users/services/SessionService.ts +28 -9
- package/src/api/users/services/UserService.ts +7 -7
- package/src/batch/providers/BatchProvider.ts +1 -2
- package/src/cli/apps/AlephaCli.ts +0 -2
- package/src/cli/apps/AlephaPackageBuilderCli.ts +38 -19
- package/src/cli/assets/apiHelloControllerTs.ts +18 -0
- package/src/cli/assets/apiIndexTs.ts +16 -0
- package/src/cli/assets/claudeMd.ts +303 -0
- package/src/cli/assets/mainBrowserTs.ts +2 -2
- package/src/cli/assets/mainServerTs.ts +24 -0
- package/src/cli/assets/webAppRouterTs.ts +15 -0
- package/src/cli/assets/webHelloComponentTsx.ts +16 -0
- package/src/cli/assets/webIndexTs.ts +16 -0
- package/src/cli/atoms/buildOptions.ts +88 -0
- package/src/cli/commands/build.ts +70 -87
- package/src/cli/commands/db.ts +21 -22
- package/src/cli/commands/deploy.ts +17 -5
- package/src/cli/commands/dev.ts +22 -14
- package/src/cli/commands/format.ts +8 -2
- package/src/cli/commands/gen/env.ts +53 -0
- package/src/cli/commands/gen/openapi.ts +1 -1
- package/src/cli/commands/gen/resource.ts +15 -0
- package/src/cli/commands/gen.ts +7 -1
- package/src/cli/commands/init.ts +74 -30
- package/src/cli/commands/lint.ts +8 -2
- package/src/cli/commands/test.ts +8 -3
- package/src/cli/commands/typecheck.ts +5 -1
- package/src/cli/commands/verify.ts +5 -3
- package/src/cli/defineConfig.ts +49 -7
- package/src/cli/index.ts +0 -1
- package/src/cli/services/AlephaCliUtils.ts +39 -589
- package/src/cli/services/PackageManagerUtils.ts +301 -0
- package/src/cli/services/ProjectScaffolder.ts +306 -0
- package/src/command/helpers/Runner.spec.ts +2 -2
- package/src/command/helpers/Runner.ts +16 -4
- package/src/command/primitives/$command.ts +0 -6
- package/src/command/providers/CliProvider.ts +1 -3
- package/src/core/Alepha.ts +42 -0
- package/src/core/__tests__/Alepha-graph.spec.ts +4 -0
- package/src/core/index.shared.ts +1 -0
- package/src/core/index.ts +2 -0
- package/src/core/primitives/$hook.ts +6 -2
- package/src/core/primitives/$module.spec.ts +4 -0
- package/src/core/providers/AlsProvider.ts +1 -1
- package/src/core/providers/CodecManager.spec.ts +12 -6
- package/src/core/providers/CodecManager.ts +26 -6
- package/src/core/providers/EventManager.ts +169 -13
- package/src/core/providers/KeylessJsonSchemaCodec.spec.ts +621 -0
- package/src/core/providers/KeylessJsonSchemaCodec.ts +407 -0
- package/src/core/providers/StateManager.spec.ts +27 -16
- package/src/email/providers/LocalEmailProvider.spec.ts +111 -87
- package/src/email/providers/LocalEmailProvider.ts +52 -15
- package/src/email/providers/NodemailerEmailProvider.ts +167 -56
- package/src/file/errors/FileError.ts +7 -0
- package/src/file/index.ts +9 -1
- package/src/file/providers/MemoryFileSystemProvider.ts +393 -0
- package/src/logger/index.ts +15 -3
- package/src/mcp/transports/StdioMcpTransport.ts +1 -1
- package/src/orm/index.browser.ts +1 -19
- package/src/orm/index.bun.ts +77 -0
- package/src/orm/index.shared-server.ts +22 -0
- package/src/orm/index.shared.ts +15 -0
- package/src/orm/index.ts +13 -39
- package/src/orm/providers/drivers/BunPostgresProvider.ts +3 -5
- package/src/orm/providers/drivers/BunSqliteProvider.ts +1 -1
- package/src/orm/providers/drivers/CloudflareD1Provider.ts +4 -0
- package/src/orm/providers/drivers/DatabaseProvider.ts +4 -0
- package/src/orm/providers/drivers/PglitePostgresProvider.ts +4 -0
- package/src/orm/services/Repository.ts +8 -0
- package/src/queue/core/providers/WorkerProvider.spec.ts +48 -32
- package/src/redis/index.bun.ts +35 -0
- package/src/redis/providers/BunRedisProvider.ts +12 -43
- package/src/redis/providers/BunRedisSubscriberProvider.ts +2 -3
- package/src/redis/providers/NodeRedisProvider.ts +16 -34
- package/src/{server/security → security}/__tests__/BasicAuth.spec.ts +11 -11
- package/src/{server/security → security}/__tests__/ServerSecurityProvider-realm.spec.ts +21 -16
- package/src/{server/security/providers → security/__tests__}/ServerSecurityProvider.spec.ts +5 -5
- package/src/security/index.browser.ts +5 -0
- package/src/security/index.ts +90 -7
- package/src/security/primitives/{$realm.spec.ts → $issuer.spec.ts} +11 -11
- package/src/security/primitives/{$realm.ts → $issuer.ts} +20 -17
- package/src/security/primitives/$role.ts +5 -5
- package/src/security/primitives/$serviceAccount.spec.ts +5 -5
- package/src/security/primitives/$serviceAccount.ts +3 -3
- package/src/{server/security → security}/providers/ServerSecurityProvider.ts +5 -7
- package/src/server/auth/primitives/$auth.ts +10 -10
- package/src/server/auth/primitives/$authCredentials.ts +3 -3
- package/src/server/auth/primitives/$authGithub.ts +3 -3
- package/src/server/auth/primitives/$authGoogle.ts +3 -3
- package/src/server/auth/providers/ServerAuthProvider.ts +13 -13
- package/src/server/cache/providers/ServerCacheProvider.spec.ts +183 -0
- package/src/server/cache/providers/ServerCacheProvider.ts +95 -10
- package/src/server/compress/providers/ServerCompressProvider.ts +61 -2
- package/src/server/cookies/providers/ServerCookiesProvider.ts +3 -3
- package/src/server/core/helpers/ServerReply.ts +2 -2
- package/src/server/core/providers/NodeHttpServerProvider.ts +25 -6
- package/src/server/core/providers/ServerBodyParserProvider.ts +19 -23
- package/src/server/core/providers/ServerLoggerProvider.ts +23 -19
- package/src/server/core/providers/ServerProvider.ts +155 -22
- package/src/server/core/providers/ServerRouterProvider.ts +259 -115
- package/src/server/core/providers/ServerTimingProvider.ts +2 -2
- package/src/server/links/index.ts +1 -1
- package/src/server/links/providers/LinkProvider.ts +1 -1
- package/src/server/static/providers/ServerStaticProvider.ts +10 -0
- package/src/server/swagger/index.ts +1 -1
- package/src/server/swagger/providers/ServerSwaggerProvider.ts +5 -8
- package/src/sms/providers/LocalSmsProvider.spec.ts +153 -111
- package/src/sms/providers/LocalSmsProvider.ts +8 -7
- package/src/vite/helpers/boot.ts +28 -17
- package/src/vite/helpers/importViteReact.ts +13 -0
- package/src/vite/index.ts +1 -21
- package/src/vite/plugins/viteAlephaDev.ts +16 -1
- package/src/vite/plugins/viteAlephaSsrPreload.ts +222 -0
- package/src/vite/tasks/buildClient.ts +11 -0
- package/src/vite/tasks/buildServer.ts +59 -4
- package/src/vite/tasks/devServer.ts +71 -0
- package/src/vite/tasks/generateCloudflare.ts +7 -0
- package/src/vite/tasks/index.ts +2 -1
- package/dist/server/security/index.browser.js +0 -13
- package/dist/server/security/index.browser.js.map +0 -1
- package/dist/server/security/index.d.ts +0 -173
- package/dist/server/security/index.d.ts.map +0 -1
- package/dist/server/security/index.js +0 -311
- package/dist/server/security/index.js.map +0 -1
- package/src/cli/assets/appRouterTs.ts +0 -9
- package/src/cli/assets/mainTs.ts +0 -13
- package/src/cli/assets/viteConfigTs.ts +0 -14
- package/src/cli/commands/run.ts +0 -24
- package/src/server/security/index.browser.ts +0 -10
- package/src/server/security/index.ts +0 -94
- package/src/vite/plugins/viteAlepha.ts +0 -37
- package/src/vite/plugins/viteAlephaBuild.ts +0 -281
- /package/src/{server/security → security}/primitives/$basicAuth.ts +0 -0
- /package/src/{server/security → security}/providers/ServerBasicAuthProvider.ts +0 -0
package/dist/redis/index.d.ts
CHANGED
|
@@ -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
|
-
|
|
30
|
-
|
|
27
|
+
* Whether the Redis client is ready to accept commands.
|
|
28
|
+
*/
|
|
31
29
|
abstract readonly isReady: boolean;
|
|
32
30
|
/**
|
|
33
|
-
|
|
34
|
-
|
|
31
|
+
* Connect to the Redis server.
|
|
32
|
+
*/
|
|
35
33
|
abstract connect(): Promise<void>;
|
|
36
34
|
/**
|
|
37
|
-
|
|
38
|
-
|
|
35
|
+
* Close the connection to the Redis server.
|
|
36
|
+
*/
|
|
39
37
|
abstract close(): Promise<void>;
|
|
40
38
|
/**
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
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
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
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
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
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
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
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
|
-
|
|
72
|
-
|
|
73
|
-
|
|
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
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
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
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
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
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
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
|
-
|
|
105
|
-
|
|
102
|
+
* Set the specified expire time, in seconds.
|
|
103
|
+
*/
|
|
106
104
|
EX?: number;
|
|
107
105
|
/**
|
|
108
|
-
|
|
109
|
-
|
|
106
|
+
* Set the specified expire time, in milliseconds.
|
|
107
|
+
*/
|
|
110
108
|
PX?: number;
|
|
111
109
|
/**
|
|
112
|
-
|
|
113
|
-
|
|
110
|
+
* Set the specified Unix time at which the key will expire, in seconds.
|
|
111
|
+
*/
|
|
114
112
|
EXAT?: number;
|
|
115
113
|
/**
|
|
116
|
-
|
|
117
|
-
|
|
114
|
+
* Set the specified Unix time at which the key will expire, in milliseconds.
|
|
115
|
+
*/
|
|
118
116
|
PXAT?: number;
|
|
119
117
|
/**
|
|
120
|
-
|
|
121
|
-
|
|
118
|
+
* Only set the key if it does not already exist.
|
|
119
|
+
*/
|
|
122
120
|
NX?: boolean;
|
|
123
121
|
/**
|
|
124
|
-
|
|
125
|
-
|
|
122
|
+
* Only set the key if it already exists.
|
|
123
|
+
*/
|
|
126
124
|
XX?: boolean;
|
|
127
125
|
/**
|
|
128
|
-
|
|
129
|
-
|
|
126
|
+
* Retain the time to live associated with the key.
|
|
127
|
+
*/
|
|
130
128
|
KEEPTTL?: boolean;
|
|
131
129
|
/**
|
|
132
|
-
|
|
133
|
-
|
|
130
|
+
* Return the old string stored at key, or nil if key did not exist.
|
|
131
|
+
*/
|
|
134
132
|
GET?: boolean;
|
|
135
133
|
/**
|
|
136
|
-
|
|
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
|
-
|
|
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.
|
|
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
|
|
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
|
|
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
|
-
|
|
194
|
-
|
|
183
|
+
* Connect to the Redis server.
|
|
184
|
+
*/
|
|
195
185
|
connect(): Promise<void>;
|
|
196
186
|
/**
|
|
197
|
-
|
|
198
|
-
|
|
187
|
+
* Close the connection to the Redis server.
|
|
188
|
+
*/
|
|
199
189
|
close(): Promise<void>;
|
|
200
190
|
/**
|
|
201
|
-
|
|
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
|
-
|
|
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
|
-
|
|
244
|
-
|
|
233
|
+
* Whether the Redis subscriber client is ready to accept commands.
|
|
234
|
+
*/
|
|
245
235
|
abstract readonly isReady: boolean;
|
|
246
236
|
/**
|
|
247
|
-
|
|
248
|
-
|
|
237
|
+
* Connect to the Redis server for subscriptions.
|
|
238
|
+
*/
|
|
249
239
|
abstract connect(): Promise<void>;
|
|
250
240
|
/**
|
|
251
|
-
|
|
252
|
-
|
|
241
|
+
* Close the subscriber connection.
|
|
242
|
+
*/
|
|
253
243
|
abstract close(): Promise<void>;
|
|
254
244
|
/**
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
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
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
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
|
-
|
|
300
|
-
|
|
289
|
+
* Connect to the Redis server for subscriptions.
|
|
290
|
+
*/
|
|
301
291
|
connect(): Promise<void>;
|
|
302
292
|
/**
|
|
303
|
-
|
|
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.
|
|
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
|
|
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
|
|
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
|
-
|
|
359
|
-
|
|
340
|
+
* Connect to the Redis server.
|
|
341
|
+
*/
|
|
360
342
|
connect(): Promise<void>;
|
|
361
343
|
/**
|
|
362
|
-
|
|
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
|
-
|
|
376
|
-
|
|
357
|
+
* Get the Redis connection URL.
|
|
358
|
+
*/
|
|
377
359
|
protected getUrl(): string;
|
|
378
360
|
/**
|
|
379
|
-
|
|
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
|
-
|
|
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"],"
|
|
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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"}
|
package/dist/redis/index.js
CHANGED
|
@@ -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
|
-
|
|
30
|
-
|
|
31
|
-
|
|
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
|
|
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 (
|
|
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
|
-
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
278
|
-
|
|
279
|
-
|
|
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
|
|
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
|
|
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
|
-
|
|
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.
|