vidspotai-shared 1.0.25 → 1.0.27
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/lib/globals/aiModels.d.ts.map +1 -1
- package/lib/globals/aiModels.js +14 -17
- package/lib/globals/types.d.ts +3 -1
- package/lib/globals/types.d.ts.map +1 -1
- package/lib/globals/types.js +2 -0
- package/lib/services/bullmq.service.d.ts +0 -1
- package/lib/services/bullmq.service.d.ts.map +1 -1
- package/lib/services/bullmq.service.js +3 -1
- package/lib/services/redis.service.d.ts +6 -1
- package/lib/services/redis.service.d.ts.map +1 -1
- package/lib/services/redis.service.js +52 -45
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aiModels.d.ts","sourceRoot":"","sources":["../../src/globals/aiModels.ts"],"names":[],"mappings":"AAwBA,oBAAY,eAAe;IACzB,sBAAsB,2BAA2B;IACjD,4BAA4B,gCAAgC;IAC5D,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;IACvC,QAAQ,aAAa;IACrB,UAAU,eAAe;IACzB,eAAe,oBAAoB;IACnC,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;IACvC,eAAe,oBAAoB;IACnC,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,eAAe,oBAAoB;IACnC,eAAe,oBAAoB;IACnC,aAAa,kBAAkB;IAC/B,iBAAiB,sBAAsB;CACxC;AAaD,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;AAaX,oBAAY,cAAc;IAExB,kBAAkB,uBAAuB;IACzC,iBAAiB,sBAAsB;CAIxC;AAID,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,cAAc,CAAC;AAG3D,KAAK,cAAc,GACf,eAAe,GACf,gBAAgB,GAChB,gBAAgB,GAChB,cAAc,GACd,eAAe,CAAC;AAEpB,UAAU,YAAY;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC3B;AAED,UAAU,UAAU;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,CAAC;CACH;AAED,UAAU,YAAY;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAErC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3C,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACzC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE;QACL,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,UAAU,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAGD,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"aiModels.d.ts","sourceRoot":"","sources":["../../src/globals/aiModels.ts"],"names":[],"mappings":"AAwBA,oBAAY,eAAe;IACzB,sBAAsB,2BAA2B;IACjD,4BAA4B,gCAAgC;IAC5D,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;IACvC,QAAQ,aAAa;IACrB,UAAU,eAAe;IACzB,eAAe,oBAAoB;IACnC,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;IACvC,eAAe,oBAAoB;IACnC,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,eAAe,oBAAoB;IACnC,eAAe,oBAAoB;IACnC,aAAa,kBAAkB;IAC/B,iBAAiB,sBAAsB;CACxC;AAaD,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;AAaX,oBAAY,cAAc;IAExB,kBAAkB,uBAAuB;IACzC,iBAAiB,sBAAsB;CAIxC;AAID,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,cAAc,CAAC;AAG3D,KAAK,cAAc,GACf,eAAe,GACf,gBAAgB,GAChB,gBAAgB,GAChB,cAAc,GACd,eAAe,CAAC;AAEpB,UAAU,YAAY;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC3B;AAED,UAAU,UAAU;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,CAAC;CACH;AAED,UAAU,YAAY;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAErC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3C,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACzC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE;QACL,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,UAAU,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAGD,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CAid5D,CAAC"}
|
package/lib/globals/aiModels.js
CHANGED
|
@@ -92,8 +92,7 @@ exports.aiModelConfigs = {
|
|
|
92
92
|
6: ["720p", "1080p"],
|
|
93
93
|
8: ["1080p"],
|
|
94
94
|
},
|
|
95
|
-
requestPerMin:
|
|
96
|
-
requestPerDay: 10,
|
|
95
|
+
requestPerMin: 10,
|
|
97
96
|
cost: {
|
|
98
97
|
perSecond: 0.4,
|
|
99
98
|
},
|
|
@@ -114,8 +113,7 @@ exports.aiModelConfigs = {
|
|
|
114
113
|
6: ["720p", "1080p"],
|
|
115
114
|
8: ["1080p"],
|
|
116
115
|
},
|
|
117
|
-
requestPerMin:
|
|
118
|
-
requestPerDay: 10,
|
|
116
|
+
requestPerMin: 10,
|
|
119
117
|
cost: {
|
|
120
118
|
perSecond: 0.15,
|
|
121
119
|
},
|
|
@@ -136,8 +134,7 @@ exports.aiModelConfigs = {
|
|
|
136
134
|
"1080p": ["16:9"],
|
|
137
135
|
},
|
|
138
136
|
// concurrentRequests: 1,
|
|
139
|
-
requestPerMin:
|
|
140
|
-
requestPerDay: 10,
|
|
137
|
+
requestPerMin: 10,
|
|
141
138
|
cost: {
|
|
142
139
|
perSecond: 0.4,
|
|
143
140
|
},
|
|
@@ -149,7 +146,7 @@ exports.aiModelConfigs = {
|
|
|
149
146
|
prompt: { required: true },
|
|
150
147
|
aspectRatio: { allowedValues: ["16:9", "9:16"] }, // 16:9 as default
|
|
151
148
|
resolution: { allowedValues: ["720p", "1080p"] }, // 720p as default
|
|
152
|
-
duration: { allowedValues: [
|
|
149
|
+
duration: { allowedValues: [4, 6, 8] }, // in seconds, 8s as default
|
|
153
150
|
imageUrl: {},
|
|
154
151
|
negative_prompt: {},
|
|
155
152
|
},
|
|
@@ -157,7 +154,7 @@ exports.aiModelConfigs = {
|
|
|
157
154
|
"720p": ["16:9", "9:16"],
|
|
158
155
|
"1080p": ["16:9"],
|
|
159
156
|
},
|
|
160
|
-
|
|
157
|
+
requestPerMin: 10,
|
|
161
158
|
cost: {
|
|
162
159
|
perSecond: 0.15,
|
|
163
160
|
},
|
|
@@ -169,14 +166,14 @@ exports.aiModelConfigs = {
|
|
|
169
166
|
prompt: { required: true },
|
|
170
167
|
aspectRatio: { allowedValues: ["16:9", "9:16"] }, // 16:9 as default
|
|
171
168
|
resolution: { allowedValues: ["720p"] }, // 720p as default
|
|
172
|
-
duration: { allowedValues: [8] }, // in seconds, 8s as default
|
|
169
|
+
duration: { allowedValues: [5, 6, 8] }, // in seconds, 8s as default
|
|
173
170
|
imageUrl: {},
|
|
174
171
|
negative_prompt: {},
|
|
175
172
|
},
|
|
176
173
|
resolutionRules: {
|
|
177
174
|
"720p": ["16:9", "9:16"],
|
|
178
175
|
},
|
|
179
|
-
|
|
176
|
+
requestPerMin: 10,
|
|
180
177
|
cost: {
|
|
181
178
|
perSecond: 0.35,
|
|
182
179
|
},
|
|
@@ -188,7 +185,7 @@ exports.aiModelConfigs = {
|
|
|
188
185
|
fields: {
|
|
189
186
|
prompt: { required: true },
|
|
190
187
|
imageUrl: { required: true },
|
|
191
|
-
|
|
188
|
+
aspectRatio: {
|
|
192
189
|
allowedValues: types_1.GEN4_TURBO_RATIOS,
|
|
193
190
|
},
|
|
194
191
|
duration: {
|
|
@@ -328,7 +325,7 @@ exports.aiModelConfigs = {
|
|
|
328
325
|
},
|
|
329
326
|
},
|
|
330
327
|
"T2V-01": {
|
|
331
|
-
modelId: "T2V-01
|
|
328
|
+
modelId: "T2V-01",
|
|
332
329
|
type: ["text-to-video"],
|
|
333
330
|
fields: {
|
|
334
331
|
prompt: { required: true },
|
|
@@ -351,7 +348,7 @@ exports.aiModelConfigs = {
|
|
|
351
348
|
allowedValues: ["480p", "720p", "1080p"],
|
|
352
349
|
default: "1080p",
|
|
353
350
|
},
|
|
354
|
-
|
|
351
|
+
aspectRatio: {
|
|
355
352
|
allowedValues: ["16:9", "9:16", "1:1", "4:3", "3:4"],
|
|
356
353
|
default: "16:9",
|
|
357
354
|
},
|
|
@@ -391,7 +388,7 @@ exports.aiModelConfigs = {
|
|
|
391
388
|
resolution: {
|
|
392
389
|
allowedValues: ["480p", "1080p"],
|
|
393
390
|
},
|
|
394
|
-
|
|
391
|
+
aspectRatio: {
|
|
395
392
|
allowedValues: ["16:9", "9:16", "1:1", "4:3", "3:4"],
|
|
396
393
|
},
|
|
397
394
|
duration: {
|
|
@@ -420,7 +417,7 @@ exports.aiModelConfigs = {
|
|
|
420
417
|
type: ["text-to-video", "image-to-video", "video-to-video"],
|
|
421
418
|
fields: {
|
|
422
419
|
prompt: { required: true },
|
|
423
|
-
|
|
420
|
+
duration: {
|
|
424
421
|
allowedValues: [4, 8, 12], // in seconds
|
|
425
422
|
default: 4,
|
|
426
423
|
},
|
|
@@ -444,7 +441,7 @@ exports.aiModelConfigs = {
|
|
|
444
441
|
type: ["text-to-video", "image-to-video", "video-to-video"],
|
|
445
442
|
fields: {
|
|
446
443
|
prompt: { required: true },
|
|
447
|
-
|
|
444
|
+
duration: {
|
|
448
445
|
allowedValues: [4, 8, 12], // in seconds
|
|
449
446
|
default: 4,
|
|
450
447
|
},
|
|
@@ -468,7 +465,7 @@ exports.aiModelConfigs = {
|
|
|
468
465
|
type: ["text-to-video", "image-to-video", "video-to-video"],
|
|
469
466
|
fields: {
|
|
470
467
|
prompt: { required: true },
|
|
471
|
-
|
|
468
|
+
dimensions: {
|
|
472
469
|
allowedValues: [
|
|
473
470
|
"480x480",
|
|
474
471
|
"480x854",
|
package/lib/globals/types.d.ts
CHANGED
|
@@ -101,7 +101,9 @@ interface SubscriptionPlanDetail {
|
|
|
101
101
|
}
|
|
102
102
|
export type TSubscriptionPlanDetails = Partial<Record<ESUBSCRIPTION_PLANS, SubscriptionPlanDetail>>;
|
|
103
103
|
export declare enum ERROR_CODE {
|
|
104
|
-
INSUFFICIENT_CREDITS = "INSUFFICIENT_CREDITS"
|
|
104
|
+
INSUFFICIENT_CREDITS = "INSUFFICIENT_CREDITS",
|
|
105
|
+
PROMPT_TOO_SHORT = "PROMPT_TOO_SHORT",
|
|
106
|
+
PROMPT_MISSING = "PROMPT_MISSING"
|
|
105
107
|
}
|
|
106
108
|
export declare enum ELANGUAGE_CODE {
|
|
107
109
|
af = "af",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/globals/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/globals/types.ts"],"names":[],"mappings":"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"}
|
package/lib/globals/types.js
CHANGED
|
@@ -102,6 +102,8 @@ var EENVS;
|
|
|
102
102
|
var ERROR_CODE;
|
|
103
103
|
(function (ERROR_CODE) {
|
|
104
104
|
ERROR_CODE["INSUFFICIENT_CREDITS"] = "INSUFFICIENT_CREDITS";
|
|
105
|
+
ERROR_CODE["PROMPT_TOO_SHORT"] = "PROMPT_TOO_SHORT";
|
|
106
|
+
ERROR_CODE["PROMPT_MISSING"] = "PROMPT_MISSING";
|
|
105
107
|
})(ERROR_CODE || (exports.ERROR_CODE = ERROR_CODE = {}));
|
|
106
108
|
var ELANGUAGE_CODE;
|
|
107
109
|
(function (ELANGUAGE_CODE) {
|
|
@@ -16,7 +16,6 @@ declare class BullMQService {
|
|
|
16
16
|
private constructor();
|
|
17
17
|
static getInstance(options: BullMQServiceOptions): BullMQService;
|
|
18
18
|
/** Initialize BullMQ service (like your initRedis) */
|
|
19
|
-
/** Initialize BullMQ service (like initRedis) */
|
|
20
19
|
init(): Promise<void>;
|
|
21
20
|
/** Add a job */
|
|
22
21
|
addJob(queueName: string, data: JobData, opts?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bullmq.service.d.ts","sourceRoot":"","sources":["../../src/services/bullmq.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAE1C,UAAU,oBAAoB;IAC5B,YAAY,EAAE,YAAY,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,cAAM,aAAa;IACjB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgB;IACvC,OAAO,CAAC,MAAM,CAAiC;IAC/C,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO;WAQO,WAAW,CAAC,OAAO,EAAE,oBAAoB;IAOvD,sDAAsD;
|
|
1
|
+
{"version":3,"file":"bullmq.service.d.ts","sourceRoot":"","sources":["../../src/services/bullmq.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAE1C,UAAU,oBAAoB;IAC5B,YAAY,EAAE,YAAY,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,cAAM,aAAa;IACjB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgB;IACvC,OAAO,CAAC,MAAM,CAAiC;IAC/C,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO;WAQO,WAAW,CAAC,OAAO,EAAE,oBAAoB;IAOvD,sDAAsD;IACzC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAsBlC,gBAAgB;IACH,MAAM,CACjB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,OAAO,EACb,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE;IAUpC,YAAY,CACjB,UAAU,EAAE,MAAM,EAAE,EACpB,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC;CAmDzC;AAWD,eAAO,MAAM,MAAM,eAGjB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,GAAG,CAAC"}
|
|
@@ -19,7 +19,6 @@ class BullMQService {
|
|
|
19
19
|
return BullMQService.instance;
|
|
20
20
|
}
|
|
21
21
|
/** Initialize BullMQ service (like your initRedis) */
|
|
22
|
-
/** Initialize BullMQ service (like initRedis) */
|
|
23
22
|
async init() {
|
|
24
23
|
if (this.initialized)
|
|
25
24
|
return;
|
|
@@ -92,6 +91,9 @@ const redisOptions = {
|
|
|
92
91
|
host: process.env.REDIS_HOST,
|
|
93
92
|
port: Number(process.env.REDIS_PORT),
|
|
94
93
|
password: process.env.REDIS_PASSWORD,
|
|
94
|
+
// username: process.env.REDIS_USERNAME,
|
|
95
|
+
// tls: {},
|
|
96
|
+
maxRetriesPerRequest: null, // REQUIRED for BullMQ stability
|
|
95
97
|
};
|
|
96
98
|
exports.bullmq = BullMQService.getInstance({
|
|
97
99
|
redisOptions,
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
export declare class RedisService {
|
|
2
2
|
private static instance;
|
|
3
|
-
private client
|
|
3
|
+
private client?;
|
|
4
4
|
private connected;
|
|
5
5
|
private constructor();
|
|
6
6
|
static getInstance(): RedisService;
|
|
7
|
+
/** Initialize Redis only when explicitly called */
|
|
8
|
+
private initClient;
|
|
9
|
+
/** Explicit connect */
|
|
7
10
|
connect(): Promise<void>;
|
|
11
|
+
/** Guard helper */
|
|
12
|
+
private ensureClient;
|
|
8
13
|
set<T>(key: string, value: T, ttlSeconds?: number): Promise<void>;
|
|
9
14
|
get<T>(key: string): Promise<T | null>;
|
|
10
15
|
delete(key: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redis.service.d.ts","sourceRoot":"","sources":["../../src/services/redis.service.ts"],"names":[],"mappings":"AAEA,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAe;IACtC,OAAO,CAAC,MAAM,CAAc;
|
|
1
|
+
{"version":3,"file":"redis.service.d.ts","sourceRoot":"","sources":["../../src/services/redis.service.ts"],"names":[],"mappings":"AAEA,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAe;IACtC,OAAO,CAAC,MAAM,CAAC,CAAc;IAC7B,OAAO,CAAC,SAAS,CAAS;IAE1B,OAAO;WAKO,WAAW,IAAI,YAAY;IAOzC,mDAAmD;IACnD,OAAO,CAAC,UAAU;IA2BlB,uBAAuB;IACV,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAarC,mBAAmB;IACnB,OAAO,CAAC,YAAY;IASP,GAAG,CAAC,CAAC,EAChB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,CAAC,EACR,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC;IAWH,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAMtC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlC,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAKnD,mBAAmB,CAAC,CAAC,EAChC,QAAQ,EAAE,MAAM,EAChB,OAAO,SAAI,GACV,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAKP,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAK1C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAGvC;AAGD,eAAO,MAAM,KAAK,cAA6B,CAAC;AAEhD,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAE/C"}
|
|
@@ -9,89 +9,96 @@ const ioredis_1 = __importDefault(require("ioredis"));
|
|
|
9
9
|
class RedisService {
|
|
10
10
|
constructor() {
|
|
11
11
|
this.connected = false;
|
|
12
|
-
|
|
13
|
-
this.client.on("error", (err) => console.error("❌ Redis Client Error:", err));
|
|
14
|
-
this.client.on("connect", () => {
|
|
15
|
-
this.connected = true;
|
|
16
|
-
console.log("✅ Connected to Redis Cloud!");
|
|
17
|
-
});
|
|
12
|
+
console.log("🔰 RedisService created (lazy init)");
|
|
18
13
|
}
|
|
19
|
-
// Singleton
|
|
14
|
+
// Singleton
|
|
20
15
|
static getInstance() {
|
|
21
16
|
if (!RedisService.instance) {
|
|
22
17
|
RedisService.instance = new RedisService();
|
|
23
18
|
}
|
|
24
19
|
return RedisService.instance;
|
|
25
20
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
if (this.
|
|
21
|
+
/** Initialize Redis only when explicitly called */
|
|
22
|
+
initClient() {
|
|
23
|
+
if (this.client)
|
|
29
24
|
return;
|
|
30
|
-
|
|
31
|
-
|
|
25
|
+
const redisUrl = process.env.REDIS_URL;
|
|
26
|
+
if (!redisUrl) {
|
|
27
|
+
console.warn("⚠️ REDIS_URL not set — Redis will not be initialized");
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
console.log("🔰 Initializing Redis Client with REDIS_URL");
|
|
31
|
+
this.client = new ioredis_1.default(redisUrl, {
|
|
32
|
+
maxRetriesPerRequest: null,
|
|
33
|
+
enableReadyCheck: true,
|
|
34
|
+
});
|
|
35
|
+
this.client.on("connect", () => {
|
|
32
36
|
this.connected = true;
|
|
33
|
-
|
|
37
|
+
console.log("✅ Connected to Redis Cloud");
|
|
38
|
+
});
|
|
39
|
+
this.client.on("error", (err) => {
|
|
40
|
+
console.error("❌ Redis Client Error:", err);
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
/** Explicit connect */
|
|
44
|
+
async connect() {
|
|
45
|
+
this.initClient();
|
|
46
|
+
if (!this.client) {
|
|
47
|
+
throw new Error("Redis client not initialized (REDIS_URL missing)");
|
|
34
48
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
49
|
+
if (this.connected)
|
|
50
|
+
return;
|
|
51
|
+
await this.client.ping();
|
|
52
|
+
this.connected = true;
|
|
53
|
+
}
|
|
54
|
+
/** Guard helper */
|
|
55
|
+
ensureClient() {
|
|
56
|
+
if (!this.client) {
|
|
57
|
+
throw new Error("Redis client not initialized");
|
|
38
58
|
}
|
|
59
|
+
return this.client;
|
|
39
60
|
}
|
|
40
|
-
//
|
|
61
|
+
// ------------------ Commands ------------------
|
|
41
62
|
async set(key, value, ttlSeconds) {
|
|
63
|
+
const client = this.ensureClient();
|
|
42
64
|
const strValue = JSON.stringify(value);
|
|
43
65
|
if (ttlSeconds) {
|
|
44
|
-
await
|
|
66
|
+
await client.set(key, strValue, "EX", ttlSeconds);
|
|
45
67
|
}
|
|
46
68
|
else {
|
|
47
|
-
await
|
|
69
|
+
await client.set(key, strValue);
|
|
48
70
|
}
|
|
49
71
|
}
|
|
50
|
-
// Get and parse key value
|
|
51
72
|
async get(key) {
|
|
52
|
-
const
|
|
73
|
+
const client = this.ensureClient();
|
|
74
|
+
const data = await client.get(key);
|
|
53
75
|
return data ? JSON.parse(data) : null;
|
|
54
76
|
}
|
|
55
|
-
// Delete key
|
|
56
77
|
async delete(key) {
|
|
57
|
-
await this.
|
|
78
|
+
await this.ensureClient().del(key);
|
|
58
79
|
}
|
|
59
|
-
// Push item to end of list (queue)
|
|
60
80
|
async pushToList(listName, value) {
|
|
61
|
-
await this.
|
|
81
|
+
await this.ensureClient().rpush(listName, JSON.stringify(value));
|
|
62
82
|
}
|
|
63
|
-
// Pop item from start of list (queue)
|
|
64
83
|
async popFromList(listName) {
|
|
65
|
-
const value = await this.
|
|
84
|
+
const value = await this.ensureClient().lpop(listName);
|
|
66
85
|
return value ? JSON.parse(value) : null;
|
|
67
86
|
}
|
|
68
|
-
// Blocking pop from list
|
|
69
87
|
async blockingPopFromList(listName, timeout = 0) {
|
|
70
|
-
const result = await this.
|
|
71
|
-
|
|
72
|
-
const value = result[1];
|
|
73
|
-
return JSON.parse(value);
|
|
74
|
-
}
|
|
75
|
-
return null;
|
|
88
|
+
const result = await this.ensureClient().blpop(listName, timeout);
|
|
89
|
+
return result?.[1] ? JSON.parse(result[1]) : null;
|
|
76
90
|
}
|
|
77
|
-
// Get full list
|
|
78
91
|
async getList(listName) {
|
|
79
|
-
const items = await this.
|
|
92
|
+
const items = await this.ensureClient().lrange(listName, 0, -1);
|
|
80
93
|
return items.map((i) => JSON.parse(i));
|
|
81
94
|
}
|
|
82
|
-
// Flush all data
|
|
83
95
|
async flushAll() {
|
|
84
|
-
await this.
|
|
96
|
+
await this.ensureClient().flushall();
|
|
85
97
|
}
|
|
86
98
|
}
|
|
87
99
|
exports.RedisService = RedisService;
|
|
100
|
+
// DO NOT auto-connect on import
|
|
88
101
|
exports.redis = RedisService.getInstance();
|
|
89
102
|
async function initRedis() {
|
|
90
|
-
|
|
91
|
-
await exports.redis.connect();
|
|
92
|
-
// console.log("✅ Redis connected and ready to use!");
|
|
93
|
-
}
|
|
94
|
-
catch (err) {
|
|
95
|
-
console.error("❌ Redis connection failed:", err);
|
|
96
|
-
}
|
|
103
|
+
await exports.redis.connect();
|
|
97
104
|
}
|