@riktajs/queue 0.10.2 → 0.10.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +16251 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +946 -0
- package/dist/index.d.ts +945 -21
- package/dist/index.js +16177 -29
- package/dist/index.js.map +1 -1
- package/package.json +13 -6
- package/dist/config/queue.config.d.ts +0 -43
- package/dist/config/queue.config.d.ts.map +0 -1
- package/dist/config/queue.config.js +0 -82
- package/dist/config/queue.config.js.map +0 -1
- package/dist/constants.d.ts +0 -33
- package/dist/constants.d.ts.map +0 -1
- package/dist/constants.js +0 -37
- package/dist/constants.js.map +0 -1
- package/dist/decorators/events.decorator.d.ts +0 -85
- package/dist/decorators/events.decorator.d.ts.map +0 -1
- package/dist/decorators/events.decorator.js +0 -120
- package/dist/decorators/events.decorator.js.map +0 -1
- package/dist/decorators/index.d.ts +0 -8
- package/dist/decorators/index.d.ts.map +0 -1
- package/dist/decorators/index.js +0 -8
- package/dist/decorators/index.js.map +0 -1
- package/dist/decorators/process.decorator.d.ts +0 -41
- package/dist/decorators/process.decorator.d.ts.map +0 -1
- package/dist/decorators/process.decorator.js +0 -61
- package/dist/decorators/process.decorator.js.map +0 -1
- package/dist/decorators/processor.decorator.d.ts +0 -41
- package/dist/decorators/processor.decorator.d.ts.map +0 -1
- package/dist/decorators/processor.decorator.js +0 -59
- package/dist/decorators/processor.decorator.js.map +0 -1
- package/dist/decorators/queue.decorator.d.ts +0 -35
- package/dist/decorators/queue.decorator.d.ts.map +0 -1
- package/dist/decorators/queue.decorator.js +0 -49
- package/dist/decorators/queue.decorator.js.map +0 -1
- package/dist/events/queue-events.d.ts +0 -32
- package/dist/events/queue-events.d.ts.map +0 -1
- package/dist/events/queue-events.js +0 -103
- package/dist/events/queue-events.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/monitoring/bull-board.d.ts +0 -77
- package/dist/monitoring/bull-board.d.ts.map +0 -1
- package/dist/monitoring/bull-board.js +0 -112
- package/dist/monitoring/bull-board.js.map +0 -1
- package/dist/providers/queue.provider.d.ts +0 -113
- package/dist/providers/queue.provider.d.ts.map +0 -1
- package/dist/providers/queue.provider.js +0 -383
- package/dist/providers/queue.provider.js.map +0 -1
- package/dist/services/queue.service.d.ts +0 -133
- package/dist/services/queue.service.d.ts.map +0 -1
- package/dist/services/queue.service.js +0 -192
- package/dist/services/queue.service.js.map +0 -1
- package/dist/types.d.ts +0 -133
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -5
- package/dist/types.js.map +0 -1
- package/dist/utils/connection.d.ts +0 -47
- package/dist/utils/connection.d.ts.map +0 -1
- package/dist/utils/connection.js +0 -102
- package/dist/utils/connection.js.map +0 -1
- package/dist/utils/validation.d.ts +0 -137
- package/dist/utils/validation.d.ts.map +0 -1
- package/dist/utils/validation.js +0 -156
- package/dist/utils/validation.js.map +0 -1
package/dist/utils/validation.js
DELETED
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Zod validation utilities for job payloads
|
|
3
|
-
*/
|
|
4
|
-
import { z } from 'zod';
|
|
5
|
-
/**
|
|
6
|
-
* Creates a wrapper around a Zod schema for job validation
|
|
7
|
-
*
|
|
8
|
-
* @param schema - The Zod schema to use for validation
|
|
9
|
-
* @returns A wrapped schema with job-specific utilities
|
|
10
|
-
*
|
|
11
|
-
* @example
|
|
12
|
-
* ```typescript
|
|
13
|
-
* const EmailJobSchema = createJobSchema(z.object({
|
|
14
|
-
* to: z.string().email(),
|
|
15
|
-
* subject: z.string().min(1),
|
|
16
|
-
* body: z.string(),
|
|
17
|
-
* }));
|
|
18
|
-
*
|
|
19
|
-
* // Validate job data
|
|
20
|
-
* const result = EmailJobSchema.validate({ to: 'test@example.com', subject: 'Hello', body: 'World' });
|
|
21
|
-
* ```
|
|
22
|
-
*/
|
|
23
|
-
export function createJobSchema(schema) {
|
|
24
|
-
return new JobSchema(schema);
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Wrapper class for Zod schemas with job-specific utilities
|
|
28
|
-
*/
|
|
29
|
-
export class JobSchema {
|
|
30
|
-
schema;
|
|
31
|
-
constructor(schema) {
|
|
32
|
-
this.schema = schema;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Get the underlying Zod schema
|
|
36
|
-
*/
|
|
37
|
-
getSchema() {
|
|
38
|
-
return this.schema;
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Validate job data
|
|
42
|
-
* @throws JobValidationError if validation fails
|
|
43
|
-
*/
|
|
44
|
-
validate(data) {
|
|
45
|
-
const result = this.schema.safeParse(data);
|
|
46
|
-
if (!result.success) {
|
|
47
|
-
throw new JobSchemaValidationError('Job data validation failed', result.error);
|
|
48
|
-
}
|
|
49
|
-
return result.data;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Validate job data, returning undefined on failure
|
|
53
|
-
*/
|
|
54
|
-
validateSafe(data) {
|
|
55
|
-
const result = this.schema.safeParse(data);
|
|
56
|
-
return result.success ? result.data : undefined;
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Check if data is valid without throwing
|
|
60
|
-
*/
|
|
61
|
-
isValid(data) {
|
|
62
|
-
return this.schema.safeParse(data).success;
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Get validation errors for data
|
|
66
|
-
*/
|
|
67
|
-
getErrors(data) {
|
|
68
|
-
const result = this.schema.safeParse(data);
|
|
69
|
-
if (result.success) {
|
|
70
|
-
return [];
|
|
71
|
-
}
|
|
72
|
-
return result.error.issues.map(e => `${e.path.join('.')}: ${e.message}`);
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Parse and transform data with defaults
|
|
76
|
-
*/
|
|
77
|
-
parse(data) {
|
|
78
|
-
return this.schema.parse(data);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Error thrown when job schema validation fails
|
|
83
|
-
*/
|
|
84
|
-
export class JobSchemaValidationError extends Error {
|
|
85
|
-
zodError;
|
|
86
|
-
constructor(message, zodError) {
|
|
87
|
-
const details = zodError.issues
|
|
88
|
-
.map(e => `${e.path.join('.')}: ${e.message}`)
|
|
89
|
-
.join(', ');
|
|
90
|
-
super(`${message}: ${details}`);
|
|
91
|
-
this.zodError = zodError;
|
|
92
|
-
this.name = 'JobSchemaValidationError';
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* Get formatted validation errors
|
|
96
|
-
*/
|
|
97
|
-
getErrors() {
|
|
98
|
-
return this.zodError.issues.map(e => ({
|
|
99
|
-
path: e.path.join('.'),
|
|
100
|
-
message: e.message,
|
|
101
|
-
}));
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
// Re-export z for convenience
|
|
105
|
-
export { z };
|
|
106
|
-
/**
|
|
107
|
-
* Common job schemas for typical use cases
|
|
108
|
-
*/
|
|
109
|
-
export const CommonJobSchemas = {
|
|
110
|
-
/**
|
|
111
|
-
* Email job schema
|
|
112
|
-
*/
|
|
113
|
-
email: z.object({
|
|
114
|
-
to: z.string().email(),
|
|
115
|
-
cc: z.array(z.string().email()).optional(),
|
|
116
|
-
bcc: z.array(z.string().email()).optional(),
|
|
117
|
-
subject: z.string().min(1).max(998),
|
|
118
|
-
body: z.string(),
|
|
119
|
-
html: z.boolean().optional().default(false),
|
|
120
|
-
attachments: z.array(z.object({
|
|
121
|
-
filename: z.string(),
|
|
122
|
-
content: z.string(),
|
|
123
|
-
contentType: z.string().optional(),
|
|
124
|
-
})).optional(),
|
|
125
|
-
}),
|
|
126
|
-
/**
|
|
127
|
-
* Notification job schema
|
|
128
|
-
*/
|
|
129
|
-
notification: z.object({
|
|
130
|
-
userId: z.string(),
|
|
131
|
-
title: z.string().max(100),
|
|
132
|
-
message: z.string().max(1000),
|
|
133
|
-
type: z.enum(['info', 'warning', 'error', 'success']).default('info'),
|
|
134
|
-
metadata: z.record(z.string(), z.unknown()).optional(),
|
|
135
|
-
}),
|
|
136
|
-
/**
|
|
137
|
-
* File processing job schema
|
|
138
|
-
*/
|
|
139
|
-
fileProcessing: z.object({
|
|
140
|
-
fileId: z.string(),
|
|
141
|
-
filePath: z.string(),
|
|
142
|
-
operation: z.enum(['resize', 'compress', 'convert', 'thumbnail']),
|
|
143
|
-
options: z.record(z.string(), z.unknown()).optional(),
|
|
144
|
-
}),
|
|
145
|
-
/**
|
|
146
|
-
* Webhook job schema
|
|
147
|
-
*/
|
|
148
|
-
webhook: z.object({
|
|
149
|
-
url: z.string().url(),
|
|
150
|
-
method: z.enum(['GET', 'POST', 'PUT', 'PATCH', 'DELETE']).default('POST'),
|
|
151
|
-
headers: z.record(z.string(), z.string()).optional(),
|
|
152
|
-
body: z.unknown().optional(),
|
|
153
|
-
timeout: z.number().positive().optional().default(30000),
|
|
154
|
-
}),
|
|
155
|
-
};
|
|
156
|
-
//# sourceMappingURL=validation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"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"}
|