@mhbdev/sms 0.2.1 → 0.2.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/CHANGELOG.md +15 -0
- package/README.md +87 -0
- package/dist/contracts/kavenegar.d.ts +6 -0
- package/dist/contracts/kavenegar.d.ts.map +1 -1
- package/dist/contracts/pool.d.ts +97 -0
- package/dist/contracts/pool.d.ts.map +1 -0
- package/dist/contracts/pool.js +2 -0
- package/dist/contracts/pool.js.map +1 -0
- package/dist/contracts/sms.d.ts +3 -3
- package/dist/contracts/sms.d.ts.map +1 -1
- package/dist/errors/kavenegar-error.d.ts +1 -0
- package/dist/errors/kavenegar-error.d.ts.map +1 -1
- package/dist/errors/kavenegar-error.js.map +1 -1
- package/dist/errors/sms-error.d.ts +3 -0
- package/dist/errors/sms-error.d.ts.map +1 -1
- package/dist/errors/sms-error.js +2 -0
- package/dist/errors/sms-error.js.map +1 -1
- package/dist/errors/sms-ir-error.d.ts +1 -0
- package/dist/errors/sms-ir-error.d.ts.map +1 -1
- package/dist/errors/sms-ir-error.js.map +1 -1
- package/dist/index.d.ts +6 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/pool/health.d.ts +20 -0
- package/dist/pool/health.d.ts.map +1 -0
- package/dist/pool/health.js +58 -0
- package/dist/pool/health.js.map +1 -0
- package/dist/pool/sms-provider-pool.d.ts +46 -0
- package/dist/pool/sms-provider-pool.d.ts.map +1 -0
- package/dist/pool/sms-provider-pool.js +359 -0
- package/dist/pool/sms-provider-pool.js.map +1 -0
- package/dist/pool/strategies.d.ts +10 -0
- package/dist/pool/strategies.d.ts.map +1 -0
- package/dist/pool/strategies.js +39 -0
- package/dist/pool/strategies.js.map +1 -0
- package/dist/providers/kavenegar/kavenegar-api.d.ts.map +1 -1
- package/dist/providers/kavenegar/kavenegar-api.js +14 -0
- package/dist/providers/kavenegar/kavenegar-api.js.map +1 -1
- package/dist/providers/kavenegar/kavenegar-sms-provider.d.ts +2 -2
- package/dist/providers/kavenegar/kavenegar-sms-provider.d.ts.map +1 -1
- package/dist/providers/kavenegar/kavenegar-sms-provider.js +31 -12
- package/dist/providers/kavenegar/kavenegar-sms-provider.js.map +1 -1
- package/dist/providers/sms-ir/sms-ir-api.d.ts.map +1 -1
- package/dist/providers/sms-ir/sms-ir-api.js +21 -1
- package/dist/providers/sms-ir/sms-ir-api.js.map +1 -1
- package/dist/providers/sms-ir/sms-ir-provider.d.ts.map +1 -1
- package/dist/providers/sms-ir/sms-ir-provider.js +29 -8
- package/dist/providers/sms-ir/sms-ir-provider.js.map +1 -1
- package/dist/transport/http.d.ts +3 -0
- package/dist/transport/http.d.ts.map +1 -1
- package/dist/transport/http.js +46 -11
- package/dist/transport/http.js.map +1 -1
- package/dist/validation/schemas.d.ts +23 -19
- package/dist/validation/schemas.d.ts.map +1 -1
- package/dist/validation/schemas.js +53 -23
- package/dist/validation/schemas.js.map +1 -1
- package/docs/capabilities.md +5 -0
- package/package.json +1 -1
|
@@ -20,7 +20,7 @@ export declare const kavenegarOptionsSchema: z.ZodObject<{
|
|
|
20
20
|
backoffMultiplier: z.ZodOptional<z.ZodNumber>;
|
|
21
21
|
retryOn: z.ZodOptional<z.ZodCustom<(...args: never[]) => unknown, (...args: never[]) => unknown>>;
|
|
22
22
|
sleep: z.ZodOptional<z.ZodCustom<(...args: never[]) => unknown, (...args: never[]) => unknown>>;
|
|
23
|
-
}, z.core.$
|
|
23
|
+
}, z.core.$strict>, z.ZodTransform<Readonly<{
|
|
24
24
|
maxAttempts: number;
|
|
25
25
|
initialDelayMs?: number;
|
|
26
26
|
maxDelayMs?: number;
|
|
@@ -28,7 +28,6 @@ export declare const kavenegarOptionsSchema: z.ZodObject<{
|
|
|
28
28
|
retryOn?: (context: import("../transport/http.js").RetryContext) => boolean;
|
|
29
29
|
sleep?: (delayMs: number, signal?: AbortSignal) => Promise<void>;
|
|
30
30
|
}>, {
|
|
31
|
-
[x: string]: unknown;
|
|
32
31
|
maxAttempts: number;
|
|
33
32
|
initialDelayMs?: number | undefined;
|
|
34
33
|
maxDelayMs?: number | undefined;
|
|
@@ -38,7 +37,7 @@ export declare const kavenegarOptionsSchema: z.ZodObject<{
|
|
|
38
37
|
}>>>>;
|
|
39
38
|
apiKey: z.ZodString;
|
|
40
39
|
sender: z.ZodOptional<z.ZodString>;
|
|
41
|
-
}, z.core.$
|
|
40
|
+
}, z.core.$strict>;
|
|
42
41
|
export declare const smsIrOptionsSchema: z.ZodObject<{
|
|
43
42
|
timeoutMs: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
44
43
|
fetcher: z.ZodOptional<z.ZodOptional<z.ZodCustom<SmsHttpFetcher, SmsHttpFetcher>>>;
|
|
@@ -51,7 +50,7 @@ export declare const smsIrOptionsSchema: z.ZodObject<{
|
|
|
51
50
|
backoffMultiplier: z.ZodOptional<z.ZodNumber>;
|
|
52
51
|
retryOn: z.ZodOptional<z.ZodCustom<(...args: never[]) => unknown, (...args: never[]) => unknown>>;
|
|
53
52
|
sleep: z.ZodOptional<z.ZodCustom<(...args: never[]) => unknown, (...args: never[]) => unknown>>;
|
|
54
|
-
}, z.core.$
|
|
53
|
+
}, z.core.$strict>, z.ZodTransform<Readonly<{
|
|
55
54
|
maxAttempts: number;
|
|
56
55
|
initialDelayMs?: number;
|
|
57
56
|
maxDelayMs?: number;
|
|
@@ -59,7 +58,6 @@ export declare const smsIrOptionsSchema: z.ZodObject<{
|
|
|
59
58
|
retryOn?: (context: import("../transport/http.js").RetryContext) => boolean;
|
|
60
59
|
sleep?: (delayMs: number, signal?: AbortSignal) => Promise<void>;
|
|
61
60
|
}>, {
|
|
62
|
-
[x: string]: unknown;
|
|
63
61
|
maxAttempts: number;
|
|
64
62
|
initialDelayMs?: number | undefined;
|
|
65
63
|
maxDelayMs?: number | undefined;
|
|
@@ -69,7 +67,7 @@ export declare const smsIrOptionsSchema: z.ZodObject<{
|
|
|
69
67
|
}>>>>;
|
|
70
68
|
apiKey: z.ZodString;
|
|
71
69
|
lineNumber: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
|
|
72
|
-
}, z.core.$
|
|
70
|
+
}, z.core.$strict>;
|
|
73
71
|
export declare const smsMessageSchema: z.ZodObject<{
|
|
74
72
|
recipient: z.ZodString;
|
|
75
73
|
message: z.ZodString;
|
|
@@ -78,14 +76,14 @@ export declare const smsMessageSchema: z.ZodObject<{
|
|
|
78
76
|
localId: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
|
|
79
77
|
tag: z.ZodOptional<z.ZodString>;
|
|
80
78
|
signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
|
|
81
|
-
}, z.core.$
|
|
79
|
+
}, z.core.$strict>;
|
|
82
80
|
export declare const smsBulkMessageSchema: z.ZodObject<{
|
|
83
81
|
recipients: z.ZodArray<z.ZodString>;
|
|
84
82
|
message: z.ZodString;
|
|
85
83
|
sender: z.ZodOptional<z.ZodString>;
|
|
86
84
|
sendAt: z.ZodOptional<z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodDate]>, z.ZodTransform<number, number | Date>>>;
|
|
87
85
|
signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
|
|
88
|
-
}, z.core.$
|
|
86
|
+
}, z.core.$strict>;
|
|
89
87
|
export declare const smsIrMessageSchema: z.ZodObject<{
|
|
90
88
|
recipient: z.ZodString;
|
|
91
89
|
message: z.ZodString;
|
|
@@ -105,7 +103,7 @@ export declare const smsBatchMessageSchema: z.ZodObject<{
|
|
|
105
103
|
sendAt: z.ZodOptional<z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodDate]>, z.ZodTransform<number, number | Date>>>;
|
|
106
104
|
localId: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
|
|
107
105
|
signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
|
|
108
|
-
}, z.core.$
|
|
106
|
+
}, z.core.$strict>;
|
|
109
107
|
export declare const kavenegarSendArrayMessageSchema: z.ZodObject<{
|
|
110
108
|
recipient: z.ZodString;
|
|
111
109
|
message: z.ZodString;
|
|
@@ -113,33 +111,33 @@ export declare const kavenegarSendArrayMessageSchema: z.ZodObject<{
|
|
|
113
111
|
}, z.core.$strict>;
|
|
114
112
|
export declare const signalOptionsSchema: z.ZodObject<{
|
|
115
113
|
signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
|
|
116
|
-
}, z.core.$
|
|
114
|
+
}, z.core.$strict>;
|
|
117
115
|
export declare const idsInputSchema: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
|
|
118
116
|
export declare const cancellationInputSchema: z.ZodObject<{
|
|
119
117
|
ids: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
|
|
120
|
-
}, z.core.$
|
|
118
|
+
}, z.core.$strict>;
|
|
121
119
|
export declare const deliveryStatusQuerySchema: z.ZodObject<{
|
|
122
120
|
messageIds: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
|
|
123
121
|
signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
|
|
124
|
-
}, z.core.$
|
|
122
|
+
}, z.core.$strict>;
|
|
125
123
|
export declare const kavenegarTemplateSchema: z.ZodObject<{
|
|
126
124
|
recipient: z.ZodString;
|
|
127
125
|
template: z.ZodString;
|
|
128
126
|
parameters: z.ZodArray<z.ZodString>;
|
|
129
127
|
signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
|
|
130
|
-
}, z.core.$
|
|
128
|
+
}, z.core.$strict>;
|
|
131
129
|
export declare const kavenegarReceiveQuerySchema: z.ZodObject<{
|
|
132
130
|
lineNumber: z.ZodString;
|
|
133
131
|
isRead: z.ZodBoolean;
|
|
134
132
|
signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
|
|
135
|
-
}, z.core.$
|
|
133
|
+
}, z.core.$strict>;
|
|
136
134
|
export declare const kavenegarCountQuerySchema: z.ZodObject<{
|
|
137
135
|
startDate: z.ZodNumber;
|
|
138
136
|
endDate: z.ZodOptional<z.ZodNumber>;
|
|
139
137
|
lineNumber: z.ZodOptional<z.ZodString>;
|
|
140
138
|
isRead: z.ZodOptional<z.ZodBoolean>;
|
|
141
139
|
signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
|
|
142
|
-
}, z.core.$
|
|
140
|
+
}, z.core.$strict>;
|
|
143
141
|
export declare const kavenegarSearchQuerySchema: z.ZodObject<{
|
|
144
142
|
messageIds: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
|
|
145
143
|
startDate: z.ZodNumber;
|
|
@@ -148,7 +146,13 @@ export declare const kavenegarSearchQuerySchema: z.ZodObject<{
|
|
|
148
146
|
page: z.ZodOptional<z.ZodNumber>;
|
|
149
147
|
pageSize: z.ZodOptional<z.ZodNumber>;
|
|
150
148
|
signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
|
|
151
|
-
}, z.core.$
|
|
149
|
+
}, z.core.$strict>;
|
|
150
|
+
export declare const kavenegarOutboxCountQuerySchema: z.ZodObject<{
|
|
151
|
+
startDate: z.ZodNumber;
|
|
152
|
+
endDate: z.ZodOptional<z.ZodNumber>;
|
|
153
|
+
status: z.ZodOptional<z.ZodNumber>;
|
|
154
|
+
signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
|
|
155
|
+
}, z.core.$strict>;
|
|
152
156
|
export declare const smsIrTemplateSchema: z.ZodObject<{
|
|
153
157
|
recipient: z.ZodString;
|
|
154
158
|
templateId: z.ZodNumber;
|
|
@@ -157,18 +161,18 @@ export declare const smsIrTemplateSchema: z.ZodObject<{
|
|
|
157
161
|
value: z.ZodString;
|
|
158
162
|
}, z.core.$strip>>;
|
|
159
163
|
signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
|
|
160
|
-
}, z.core.$
|
|
164
|
+
}, z.core.$strict>;
|
|
161
165
|
export declare const smsIrLikeToLikeSchema: z.ZodObject<{
|
|
162
166
|
recipients: z.ZodArray<z.ZodString>;
|
|
163
167
|
messages: z.ZodArray<z.ZodString>;
|
|
164
168
|
sendAt: z.ZodOptional<z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodDate]>, z.ZodTransform<number, number | Date>>>;
|
|
165
169
|
signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
|
|
166
|
-
}, z.core.$
|
|
170
|
+
}, z.core.$strict>;
|
|
167
171
|
export declare const packQuerySchema: z.ZodObject<{
|
|
168
172
|
pageNumber: z.ZodOptional<z.ZodNumber>;
|
|
169
173
|
pageSize: z.ZodOptional<z.ZodNumber>;
|
|
170
174
|
signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
|
|
171
|
-
}, z.core.$
|
|
175
|
+
}, z.core.$strict>;
|
|
172
176
|
export declare function formatZodIssues(error: z.ZodError): string;
|
|
173
177
|
export declare function parseInput<TSchema extends z.ZodType>(schema: TSchema, value: unknown, createError: (message: string, cause: z.ZodError) => Error): z.output<TSchema>;
|
|
174
178
|
//# sourceMappingURL=schemas.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/validation/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3D,mFAAmF;AACnF,eAAO,MAAM,oBAAoB,aAAwD,CAAC;AAE1F,eAAO,MAAM,kBAAkB,aAAsB,CAAC;AACtD,eAAO,MAAM,wBAAwB,aAAiC,CAAC;AACvE,eAAO,MAAM,qBAAqB,aAGmB,CAAC;AACtD,eAAO,MAAM,aAAa,iDAAsD,CAAC;AACjF,eAAO,MAAM,YAAY,iGAIvB,CAAC;AAEH,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/validation/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3D,mFAAmF;AACnF,eAAO,MAAM,oBAAoB,aAAwD,CAAC;AAE1F,eAAO,MAAM,kBAAkB,aAAsB,CAAC;AACtD,eAAO,MAAM,wBAAwB,aAAiC,CAAC;AACvE,eAAO,MAAM,qBAAqB,aAGmB,CAAC;AACtD,eAAO,MAAM,aAAa,iDAAsD,CAAC;AACjF,eAAO,MAAM,YAAY,iGAIvB,CAAC;AAEH,eAAO,MAAM,iBAAiB,uCAQ7B,CAAC;AAoCF,eAAO,MAAM,sBAAsB;;;;;;;;;;qDAlCO,KAAK,EAAE,KAAK,OAAO;;;;;;;;;;;;;;;;;;;kBAqC3D,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;qDAvCW,KAAK,EAAE,KAAK,OAAO;;;;;;;;;;;;;;;;;;;kBA0C3D,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;kBAUnB,CAAC;AAEX,eAAO,MAAM,oBAAoB;;;;;;kBAQvB,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;kBAOrB,CAAC;AAEX,eAAO,MAAM,sBAAsB;;;;;kBAOzB,CAAC;AAEX,eAAO,MAAM,qBAAqB;;;;;;;kBASxB,CAAC;AAEX,eAAO,MAAM,+BAA+B;;;;kBAMlC,CAAC;AAEX,eAAO,MAAM,mBAAmB;;kBAEtB,CAAC;AAEX,eAAO,MAAM,cAAc,6DAAgC,CAAC;AAE5D,eAAO,MAAM,uBAAuB;;kBAA6C,CAAC;AAElF,eAAO,MAAM,yBAAyB;;;kBAK5B,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;kBAO1B,CAAC;AAEX,eAAO,MAAM,2BAA2B;;;;kBAM9B,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;;;kBAYnC,CAAC;AAEJ,eAAO,MAAM,0BAA0B;;;;;;;;kBAcpC,CAAC;AAEJ,eAAO,MAAM,+BAA+B;;;;;kBAWzC,CAAC;AAEJ,eAAO,MAAM,mBAAmB;;;;;;;;kBAYtB,CAAC;AAEX,eAAO,MAAM,qBAAqB;;;;;kBAWxB,CAAC;AAEX,eAAO,MAAM,eAAe;;;;kBAMlB,CAAC;AAEX,wBAAgB,eAAe,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,GAAG,MAAM,CAOzD;AAED,wBAAgB,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC,OAAO,EACnD,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,OAAO,EACd,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,QAAQ,KAAK,KAAK,GACxD,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAMnB"}
|
|
@@ -9,11 +9,14 @@ export const positiveIntegerSchema = z
|
|
|
9
9
|
.positive({ message: "must be a positive integer" });
|
|
10
10
|
export const localIdSchema = z.union([nonBlankStringSchema, finiteNumberSchema]);
|
|
11
11
|
export const sendAtSchema = z
|
|
12
|
-
.union([
|
|
12
|
+
.union([nonNegativeIntegerSchema, z.date().refine((value) => value.getTime() >= 0)])
|
|
13
13
|
.transform((value) => value instanceof Date ? Math.floor(value.getTime() / 1_000) : value);
|
|
14
14
|
export const abortSignalSchema = z.custom((value) => typeof value === "object" &&
|
|
15
15
|
value !== null &&
|
|
16
|
-
typeof value.aborted === "boolean"
|
|
16
|
+
typeof value.aborted === "boolean" &&
|
|
17
|
+
typeof value.addEventListener === "function" &&
|
|
18
|
+
typeof value.removeEventListener ===
|
|
19
|
+
"function");
|
|
17
20
|
const functionSchema = z.custom((value) => typeof value === "function");
|
|
18
21
|
const retryPolicySchema = z
|
|
19
22
|
.object({
|
|
@@ -24,25 +27,32 @@ const retryPolicySchema = z
|
|
|
24
27
|
retryOn: functionSchema.optional(),
|
|
25
28
|
sleep: functionSchema.optional(),
|
|
26
29
|
})
|
|
27
|
-
.
|
|
30
|
+
.strict()
|
|
28
31
|
.transform((value) => value);
|
|
29
32
|
const transportOptionsSchema = z
|
|
30
33
|
.object({
|
|
31
34
|
timeoutMs: positiveIntegerSchema.optional(),
|
|
32
35
|
fetcher: z.custom((value) => typeof value === "function").optional(),
|
|
33
|
-
baseUrl: z
|
|
36
|
+
baseUrl: z
|
|
37
|
+
.string()
|
|
38
|
+
.url()
|
|
39
|
+
.refine((value) => {
|
|
40
|
+
const protocol = new URL(value).protocol;
|
|
41
|
+
return protocol === "http:" || protocol === "https:";
|
|
42
|
+
}, "baseUrl must use http or https")
|
|
43
|
+
.optional(),
|
|
34
44
|
defaultHeaders: z.record(z.string(), z.string()).optional(),
|
|
35
45
|
retry: retryPolicySchema.optional(),
|
|
36
46
|
})
|
|
37
47
|
.partial()
|
|
38
|
-
.
|
|
48
|
+
.strict();
|
|
39
49
|
export const kavenegarOptionsSchema = transportOptionsSchema.extend({
|
|
40
50
|
apiKey: nonBlankStringSchema,
|
|
41
51
|
sender: nonBlankStringSchema.optional(),
|
|
42
52
|
});
|
|
43
53
|
export const smsIrOptionsSchema = transportOptionsSchema.extend({
|
|
44
54
|
apiKey: nonBlankStringSchema,
|
|
45
|
-
lineNumber: z.union([nonBlankStringSchema,
|
|
55
|
+
lineNumber: z.union([nonBlankStringSchema, positiveIntegerSchema]),
|
|
46
56
|
});
|
|
47
57
|
export const smsMessageSchema = z
|
|
48
58
|
.object({
|
|
@@ -54,16 +64,16 @@ export const smsMessageSchema = z
|
|
|
54
64
|
tag: z.string().optional(),
|
|
55
65
|
signal: abortSignalSchema.optional(),
|
|
56
66
|
})
|
|
57
|
-
.
|
|
67
|
+
.strict();
|
|
58
68
|
export const smsBulkMessageSchema = z
|
|
59
69
|
.object({
|
|
60
|
-
recipients: z.array(nonBlankStringSchema).min(1),
|
|
70
|
+
recipients: z.array(nonBlankStringSchema).min(1).max(200),
|
|
61
71
|
message: nonBlankStringSchema,
|
|
62
72
|
sender: nonBlankStringSchema.optional(),
|
|
63
73
|
sendAt: sendAtSchema.optional(),
|
|
64
74
|
signal: abortSignalSchema.optional(),
|
|
65
75
|
})
|
|
66
|
-
.
|
|
76
|
+
.strict();
|
|
67
77
|
export const smsIrMessageSchema = z
|
|
68
78
|
.object({
|
|
69
79
|
recipient: nonBlankStringSchema,
|
|
@@ -74,7 +84,7 @@ export const smsIrMessageSchema = z
|
|
|
74
84
|
.strict();
|
|
75
85
|
export const smsIrBulkMessageSchema = z
|
|
76
86
|
.object({
|
|
77
|
-
recipients: z.array(nonBlankStringSchema).min(1),
|
|
87
|
+
recipients: z.array(nonBlankStringSchema).min(1).max(100),
|
|
78
88
|
message: nonBlankStringSchema,
|
|
79
89
|
sendAt: sendAtSchema.optional(),
|
|
80
90
|
signal: abortSignalSchema.optional(),
|
|
@@ -89,7 +99,7 @@ export const smsBatchMessageSchema = z
|
|
|
89
99
|
localId: localIdSchema.optional(),
|
|
90
100
|
signal: abortSignalSchema.optional(),
|
|
91
101
|
})
|
|
92
|
-
.
|
|
102
|
+
.strict();
|
|
93
103
|
export const kavenegarSendArrayMessageSchema = z
|
|
94
104
|
.object({
|
|
95
105
|
recipient: nonBlankStringSchema,
|
|
@@ -99,15 +109,15 @@ export const kavenegarSendArrayMessageSchema = z
|
|
|
99
109
|
.strict();
|
|
100
110
|
export const signalOptionsSchema = z
|
|
101
111
|
.object({ signal: abortSignalSchema.optional() })
|
|
102
|
-
.
|
|
112
|
+
.strict();
|
|
103
113
|
export const idsInputSchema = z.array(localIdSchema).min(1);
|
|
104
|
-
export const cancellationInputSchema = z.object({ ids: idsInputSchema }).
|
|
114
|
+
export const cancellationInputSchema = z.object({ ids: idsInputSchema }).strict();
|
|
105
115
|
export const deliveryStatusQuerySchema = z
|
|
106
116
|
.object({
|
|
107
117
|
messageIds: idsInputSchema,
|
|
108
118
|
signal: abortSignalSchema.optional(),
|
|
109
119
|
})
|
|
110
|
-
.
|
|
120
|
+
.strict();
|
|
111
121
|
export const kavenegarTemplateSchema = z
|
|
112
122
|
.object({
|
|
113
123
|
recipient: nonBlankStringSchema,
|
|
@@ -115,14 +125,14 @@ export const kavenegarTemplateSchema = z
|
|
|
115
125
|
parameters: z.array(z.string()).min(1).max(3),
|
|
116
126
|
signal: abortSignalSchema.optional(),
|
|
117
127
|
})
|
|
118
|
-
.
|
|
128
|
+
.strict();
|
|
119
129
|
export const kavenegarReceiveQuerySchema = z
|
|
120
130
|
.object({
|
|
121
131
|
lineNumber: nonBlankStringSchema,
|
|
122
132
|
isRead: z.boolean(),
|
|
123
133
|
signal: abortSignalSchema.optional(),
|
|
124
134
|
})
|
|
125
|
-
.
|
|
135
|
+
.strict();
|
|
126
136
|
export const kavenegarCountQuerySchema = z
|
|
127
137
|
.object({
|
|
128
138
|
startDate: nonNegativeIntegerSchema,
|
|
@@ -131,7 +141,11 @@ export const kavenegarCountQuerySchema = z
|
|
|
131
141
|
isRead: z.boolean().optional(),
|
|
132
142
|
signal: abortSignalSchema.optional(),
|
|
133
143
|
})
|
|
134
|
-
.
|
|
144
|
+
.strict()
|
|
145
|
+
.refine((value) => value.endDate === undefined || value.endDate >= value.startDate, {
|
|
146
|
+
message: "endDate must be greater than or equal to startDate",
|
|
147
|
+
path: ["endDate"],
|
|
148
|
+
});
|
|
135
149
|
export const kavenegarSearchQuerySchema = z
|
|
136
150
|
.object({
|
|
137
151
|
messageIds: idsInputSchema.optional(),
|
|
@@ -142,7 +156,23 @@ export const kavenegarSearchQuerySchema = z
|
|
|
142
156
|
pageSize: positiveIntegerSchema.optional(),
|
|
143
157
|
signal: abortSignalSchema.optional(),
|
|
144
158
|
})
|
|
145
|
-
.
|
|
159
|
+
.strict()
|
|
160
|
+
.refine((value) => value.endDate === undefined || value.endDate >= value.startDate, {
|
|
161
|
+
message: "endDate must be greater than or equal to startDate",
|
|
162
|
+
path: ["endDate"],
|
|
163
|
+
});
|
|
164
|
+
export const kavenegarOutboxCountQuerySchema = z
|
|
165
|
+
.object({
|
|
166
|
+
startDate: nonNegativeIntegerSchema,
|
|
167
|
+
endDate: nonNegativeIntegerSchema.optional(),
|
|
168
|
+
status: nonNegativeIntegerSchema.optional(),
|
|
169
|
+
signal: abortSignalSchema.optional(),
|
|
170
|
+
})
|
|
171
|
+
.strict()
|
|
172
|
+
.refine((value) => value.endDate === undefined || value.endDate >= value.startDate, {
|
|
173
|
+
message: "endDate must be greater than or equal to startDate",
|
|
174
|
+
path: ["endDate"],
|
|
175
|
+
});
|
|
146
176
|
export const smsIrTemplateSchema = z
|
|
147
177
|
.object({
|
|
148
178
|
recipient: nonBlankStringSchema,
|
|
@@ -153,11 +183,11 @@ export const smsIrTemplateSchema = z
|
|
|
153
183
|
})),
|
|
154
184
|
signal: abortSignalSchema.optional(),
|
|
155
185
|
})
|
|
156
|
-
.
|
|
186
|
+
.strict();
|
|
157
187
|
export const smsIrLikeToLikeSchema = z
|
|
158
188
|
.object({
|
|
159
|
-
recipients: z.array(nonBlankStringSchema).min(1),
|
|
160
|
-
messages: z.array(nonBlankStringSchema).min(1),
|
|
189
|
+
recipients: z.array(nonBlankStringSchema).min(1).max(100),
|
|
190
|
+
messages: z.array(nonBlankStringSchema).min(1).max(100),
|
|
161
191
|
sendAt: sendAtSchema.optional(),
|
|
162
192
|
signal: abortSignalSchema.optional(),
|
|
163
193
|
})
|
|
@@ -165,14 +195,14 @@ export const smsIrLikeToLikeSchema = z
|
|
|
165
195
|
message: "Recipients and messages must have equal lengths",
|
|
166
196
|
path: ["messages"],
|
|
167
197
|
})
|
|
168
|
-
.
|
|
198
|
+
.strict();
|
|
169
199
|
export const packQuerySchema = z
|
|
170
200
|
.object({
|
|
171
201
|
pageNumber: positiveIntegerSchema.optional(),
|
|
172
202
|
pageSize: positiveIntegerSchema.optional(),
|
|
173
203
|
signal: abortSignalSchema.optional(),
|
|
174
204
|
})
|
|
175
|
-
.
|
|
205
|
+
.strict();
|
|
176
206
|
export function formatZodIssues(error) {
|
|
177
207
|
return error.issues
|
|
178
208
|
.map((issue) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/validation/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,mFAAmF;AACnF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAE1F,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC;AACtD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;AACvE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC;KACpC,MAAM,EAAE;KACR,GAAG,EAAE;KACL,QAAQ,CAAC,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC,CAAC;AACtD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,oBAAoB,EAAE,kBAAkB,CAAC,CAAC,CAAC;AACjF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC;KAC3B,KAAK,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/validation/schemas.ts"],"names":[],"mappings":"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"}
|
package/docs/capabilities.md
CHANGED
|
@@ -19,6 +19,11 @@ All provider clients accept an injected `fetcher`, timeout, custom base URL,
|
|
|
19
19
|
additional headers, and an optional retry policy. Retry is disabled unless
|
|
20
20
|
`retry.maxAttempts` is explicitly configured.
|
|
21
21
|
|
|
22
|
+
Send requests are never replayed by the provider HTTP transport. The
|
|
23
|
+
`SmsProviderPool` owns safe retry/failover decisions, stopping on uncertain
|
|
24
|
+
delivery outcomes. See the README's provider-pool section for routing strategies,
|
|
25
|
+
health management, and typed adapters.
|
|
26
|
+
|
|
22
27
|
The capability contracts are generic. This keeps provider-specific request and
|
|
23
28
|
result types precise while allowing shared code to depend on
|
|
24
29
|
`SmsMessageSender`, `SmsTemplateSender`, `SmsBulkSender`,
|