@gnwebsoft/ui 4.0.19 → 4.0.21
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/{chunk-L6RP3OH2.js → chunk-BWEFHFD4.js} +8 -3
- package/dist/chunk-FMN47XRJ.cjs +1 -1
- package/dist/chunk-HDL5E7XD.js +523 -0
- package/dist/chunk-LUW7V5GI.cjs +1 -1
- package/dist/chunk-QYHJIPSZ.cjs +140 -0
- package/dist/chunk-RVGPXTBE.js +2535 -0
- package/dist/{chunk-3CHF3PN3.cjs → chunk-TQQUGQTW.cjs} +3 -3
- package/dist/chunk-UZ2KNGOF.cjs +523 -0
- package/dist/{chunk-HHW6W2LL.cjs → chunk-W5EM6HLW.cjs} +13 -8
- package/dist/core/index.cjs +3 -3
- package/dist/core/index.js +1 -1
- package/dist/hooks/index.cjs +4 -5
- package/dist/hooks/index.js +1 -2
- package/dist/index.cjs +6 -7
- package/dist/index.js +4 -5
- package/dist/types/AsyncMultiSelectPayload.d.ts +5 -0
- package/dist/types/AsyncMultiSelectPayload.d.ts.map +1 -0
- package/dist/types/index.cjs +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/utils/index.cjs +3 -3
- package/dist/utils/index.js +1 -1
- package/dist/utils/schemaTools.d.ts +133 -6
- package/dist/utils/schemaTools.d.ts.map +1 -1
- package/dist/wrappers/AsyncMultiSelect/types.d.ts +2 -2
- package/dist/wrappers/Field/index.d.ts +1 -1
- package/dist/wrappers/NumberFieldElement/NumberFieldElement.d.ts +3 -2
- package/dist/wrappers/NumberFieldElement/NumberFieldElement.d.ts.map +1 -1
- package/dist/wrappers/SelectMultiElement/SelectMultiElement.d.ts +2 -3
- package/dist/wrappers/SelectMultiElement/SelectMultiElement.d.ts.map +1 -1
- package/dist/wrappers/index.cjs +4 -4
- package/dist/wrappers/index.js +2 -2
- package/package.json +1 -1
- package/dist/chunk-6PMJWQ4R.cjs +0 -239
- package/dist/chunk-LGGBLZJM.js +0 -239
- package/dist/chunk-ML5UQCRH.js +0 -2535
- package/dist/chunk-MVPLBJRK.cjs +0 -1
- package/dist/chunk-OJF67RNM.js +0 -1
- package/dist/chunk-Y3QTSDLJ.cjs +0 -140
- package/dist/types/AsyncSelectMultiPayload.d.ts +0 -5
- package/dist/types/AsyncSelectMultiPayload.d.ts.map +0 -1
- /package/dist/{chunk-GVWCGJ3F.js → chunk-PW777IOX.js} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { z } from
|
|
1
|
+
import { z } from 'zod';
|
|
2
2
|
export declare const schemaTools: {
|
|
3
3
|
date: ({ message }?: {
|
|
4
4
|
message?: string;
|
|
@@ -6,13 +6,39 @@ export declare const schemaTools: {
|
|
|
6
6
|
nullableDate: ({ message }?: {
|
|
7
7
|
message?: string;
|
|
8
8
|
}) => z.ZodPipe<z.ZodPipe<z.ZodCoercedString<unknown>, z.ZodTransform<string | null, string>>, z.ZodTransform<string | null, string | null>>;
|
|
9
|
+
pastDate: ({ message }?: {
|
|
10
|
+
message?: string;
|
|
11
|
+
}) => z.ZodCoercedDate<unknown>;
|
|
12
|
+
futureDate: ({ message }?: {
|
|
13
|
+
message?: string;
|
|
14
|
+
}) => z.ZodCoercedDate<unknown>;
|
|
15
|
+
todayOrFutureDate: ({ message }?: {
|
|
16
|
+
message?: string;
|
|
17
|
+
}) => z.ZodCoercedDate<unknown>;
|
|
18
|
+
todayOrPastDate: ({ message }?: {
|
|
19
|
+
message?: string;
|
|
20
|
+
}) => z.ZodCoercedDate<unknown>;
|
|
21
|
+
adult: ({ message }?: {
|
|
22
|
+
message?: string;
|
|
23
|
+
}) => z.ZodCoercedDate<unknown>;
|
|
24
|
+
minimumAge: ({ message, minimumAge, }?: {
|
|
25
|
+
message?: string;
|
|
26
|
+
minimumAge?: number;
|
|
27
|
+
}) => z.ZodCoercedDate<unknown>;
|
|
28
|
+
withinDays: ({ message, days }?: {
|
|
29
|
+
message?: string;
|
|
30
|
+
days?: number;
|
|
31
|
+
}) => z.ZodCoercedDate<unknown>;
|
|
32
|
+
weekday: ({ message }?: {
|
|
33
|
+
message?: string;
|
|
34
|
+
}) => z.ZodCoercedDate<unknown>;
|
|
9
35
|
dateRange: ({ message }?: {
|
|
10
36
|
message?: string;
|
|
11
37
|
}) => z.ZodObject<{
|
|
12
38
|
start: z.ZodCoercedDate<unknown>;
|
|
13
39
|
end: z.ZodCoercedDate<unknown>;
|
|
14
40
|
}, z.core.$strip>;
|
|
15
|
-
requiredString: ({ message, min, max }?: {
|
|
41
|
+
requiredString: ({ message, min, max, }?: {
|
|
16
42
|
message?: string;
|
|
17
43
|
min?: number;
|
|
18
44
|
max?: number;
|
|
@@ -26,22 +52,117 @@ export declare const schemaTools: {
|
|
|
26
52
|
phone: ({ message }?: {
|
|
27
53
|
message?: string;
|
|
28
54
|
}) => z.ZodString;
|
|
55
|
+
creditCard: ({ message }?: {
|
|
56
|
+
message?: string;
|
|
57
|
+
}) => z.ZodString;
|
|
58
|
+
indianMobile: ({ message }?: {
|
|
59
|
+
message?: string;
|
|
60
|
+
}) => z.ZodString;
|
|
61
|
+
internationalPhone: ({ message }?: {
|
|
62
|
+
message?: string;
|
|
63
|
+
}) => z.ZodString;
|
|
64
|
+
alphabetic: ({ message }?: {
|
|
65
|
+
message?: string;
|
|
66
|
+
}) => z.ZodString;
|
|
67
|
+
guid: ({ message }?: {
|
|
68
|
+
message?: string;
|
|
69
|
+
}) => z.ZodString;
|
|
70
|
+
nonEmptyOrWhitespace: ({ message }?: {
|
|
71
|
+
message?: string;
|
|
72
|
+
}) => z.ZodString;
|
|
73
|
+
username: ({ message }?: {
|
|
74
|
+
message?: string;
|
|
75
|
+
}) => z.ZodString;
|
|
76
|
+
exactLength: ({ message, length, }?: {
|
|
77
|
+
message?: string;
|
|
78
|
+
length?: number;
|
|
79
|
+
}) => z.ZodString;
|
|
80
|
+
minWords: ({ message, minWords, }?: {
|
|
81
|
+
message?: string;
|
|
82
|
+
minWords?: number;
|
|
83
|
+
}) => z.ZodString;
|
|
84
|
+
maxWords: ({ message, maxWords, }?: {
|
|
85
|
+
message?: string;
|
|
86
|
+
maxWords?: number;
|
|
87
|
+
}) => z.ZodString;
|
|
88
|
+
strongPassword: ({ message }?: {
|
|
89
|
+
message?: string;
|
|
90
|
+
}) => z.ZodString;
|
|
91
|
+
noHtml: ({ message }?: {
|
|
92
|
+
message?: string;
|
|
93
|
+
}) => z.ZodString;
|
|
94
|
+
noScriptInjection: ({ message }?: {
|
|
95
|
+
message?: string;
|
|
96
|
+
}) => z.ZodString;
|
|
97
|
+
noSqlInjection: ({ message }?: {
|
|
98
|
+
message?: string;
|
|
99
|
+
}) => z.ZodString;
|
|
100
|
+
indianPinCode: ({ message }?: {
|
|
101
|
+
message?: string;
|
|
102
|
+
}) => z.ZodString;
|
|
103
|
+
usZipCode: ({ message }?: {
|
|
104
|
+
message?: string;
|
|
105
|
+
}) => z.ZodString;
|
|
106
|
+
ukPostalCode: ({ message }?: {
|
|
107
|
+
message?: string;
|
|
108
|
+
}) => z.ZodString;
|
|
109
|
+
ipv4: ({ message }?: {
|
|
110
|
+
message?: string;
|
|
111
|
+
}) => z.ZodString;
|
|
112
|
+
ipv6: ({ message }?: {
|
|
113
|
+
message?: string;
|
|
114
|
+
}) => z.ZodString;
|
|
115
|
+
macAddress: ({ message }?: {
|
|
116
|
+
message?: string;
|
|
117
|
+
}) => z.ZodString;
|
|
118
|
+
allowedFileExtension: ({ message, allowedExtensions, }?: {
|
|
119
|
+
message?: string;
|
|
120
|
+
allowedExtensions?: string[];
|
|
121
|
+
}) => z.ZodString;
|
|
122
|
+
validImageExtension: ({ message }?: {
|
|
123
|
+
message?: string;
|
|
124
|
+
}) => z.ZodString;
|
|
125
|
+
validDocumentExtension: ({ message }?: {
|
|
126
|
+
message?: string;
|
|
127
|
+
}) => z.ZodString;
|
|
128
|
+
panCard: ({ message }?: {
|
|
129
|
+
message?: string;
|
|
130
|
+
}) => z.ZodString;
|
|
131
|
+
aadhaar: ({ message }?: {
|
|
132
|
+
message?: string;
|
|
133
|
+
}) => z.ZodString;
|
|
134
|
+
gstin: ({ message }?: {
|
|
135
|
+
message?: string;
|
|
136
|
+
}) => z.ZodString;
|
|
137
|
+
ifsc: ({ message }?: {
|
|
138
|
+
message?: string;
|
|
139
|
+
}) => z.ZodString;
|
|
29
140
|
alphanumeric: ({ message }?: {
|
|
30
141
|
message?: string;
|
|
31
142
|
}) => z.ZodString;
|
|
32
143
|
slug: ({ message }?: {
|
|
33
144
|
message?: string;
|
|
34
145
|
}) => z.ZodString;
|
|
35
|
-
positiveNumber: ({ message, min, max }?: {
|
|
146
|
+
positiveNumber: ({ message, min, max, }?: {
|
|
36
147
|
message?: string;
|
|
37
148
|
min?: number;
|
|
38
149
|
max?: number;
|
|
39
150
|
}) => z.ZodNumber;
|
|
40
|
-
|
|
151
|
+
maxDecimalPlaces: ({ message, maxPlaces, }?: {
|
|
152
|
+
message?: string;
|
|
153
|
+
maxPlaces?: number;
|
|
154
|
+
}) => z.ZodNumber;
|
|
155
|
+
currency: ({ message }?: {
|
|
156
|
+
message?: string;
|
|
157
|
+
}) => z.ZodNumber;
|
|
158
|
+
validAge: ({ message }?: {
|
|
159
|
+
message?: string;
|
|
160
|
+
}) => z.ZodNumber;
|
|
161
|
+
nonNegativeNumber: ({ message, max, }?: {
|
|
41
162
|
message?: string;
|
|
42
163
|
max?: number;
|
|
43
164
|
}) => z.ZodNumber;
|
|
44
|
-
integer: ({ message, min, max }?: {
|
|
165
|
+
integer: ({ message, min, max, }?: {
|
|
45
166
|
message?: string;
|
|
46
167
|
min?: number;
|
|
47
168
|
max?: number;
|
|
@@ -55,17 +176,23 @@ export declare const schemaTools: {
|
|
|
55
176
|
uniqueArray: <T>(schema: z.ZodSchema<T>, { message }?: {
|
|
56
177
|
message?: string;
|
|
57
178
|
}) => z.ZodArray<z.ZodType<T, unknown, z.core.$ZodTypeInternals<T, unknown>>>;
|
|
179
|
+
noNullArrayItems: <T>(schema: z.ZodSchema<T>, { message }?: {
|
|
180
|
+
message?: string;
|
|
181
|
+
}) => z.ZodArray<z.ZodNullable<z.ZodType<T, unknown, z.core.$ZodTypeInternals<T, unknown>>>>;
|
|
58
182
|
requiredBoolean: ({ message }?: {
|
|
59
183
|
message?: string;
|
|
60
184
|
}) => z.ZodBoolean;
|
|
61
185
|
nonEmptyObject: <T extends Record<string, unknown>>(schema: z.ZodSchema<T>, { message }?: {
|
|
62
186
|
message?: string;
|
|
63
187
|
}) => z.ZodType<T, unknown, z.core.$ZodTypeInternals<T, unknown>>;
|
|
188
|
+
requiredFile: ({ message }?: {
|
|
189
|
+
message?: string;
|
|
190
|
+
}) => z.ZodCustom<File, File>;
|
|
64
191
|
fileSize: ({ maxSize, message }: {
|
|
65
192
|
maxSize: number;
|
|
66
193
|
message?: string;
|
|
67
194
|
}) => z.ZodCustom<File, File>;
|
|
68
|
-
fileType: ({ allowedTypes, message }: {
|
|
195
|
+
fileType: ({ allowedTypes, message, }: {
|
|
69
196
|
allowedTypes: string[];
|
|
70
197
|
message?: string;
|
|
71
198
|
}) => z.ZodCustom<File, File>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemaTools.d.ts","sourceRoot":"","sources":["../../src/utils/schemaTools.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"schemaTools.d.ts","sourceRoot":"","sources":["../../src/utils/schemaTools.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAsCxB,eAAO,MAAM,WAAW;yBAEF;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;iCASZ;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;6BASxB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;+BAKlB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;sCAKb;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;oCAYtB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;0BAY9B;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;4CAmBtC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;qCAqBZ;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;4BAkB5C;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;8BAUlB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;;;;8CAe1C;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE;0BAa9B;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;wBAMtB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;0BAGlB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;+BAKf;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;iCAKlB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;uCAKd;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;+BAQ5B;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;yBAQ1B;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;yCAGJ;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;6BAMhC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;yCAYzC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;wCAarC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;wCAcvC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;mCAWZ;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;2BAS5B;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;sCAQT;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;mCAQvB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;kCAYrB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;8BAKxB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;iCAKjB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;yBAQ5B;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;yBAQpB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;+BAQd;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;6DAW3C;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE;wCAoBlB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;2CAQjB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;4BAQnC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;4BAQpB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;0BAQtB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;yBAQrB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;iCAKZ;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;yBAQ5B;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;8CAUrC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE;iDAahD;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE;6BAcnB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;6BAiBpB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;4CAUzC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE;uCAalC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE;+BAazB;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;oBAO9B,CAAC,UACP,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBACT;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;kBAGrB,CAAC,UACL,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBACT;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;uBAMhB,CAAC,UACV,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBACT;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;oCASJ;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;qBAMlC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UACxC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBACT;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;iCAOP;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;qCAOf;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;2CAUnE;QACD,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;kBAOa,CAAC,EAAE,CAAC,aACL,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,cACnB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eACb,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;;;;;;;oBAqBf,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;;CAwBxC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { AutocompleteProps, ChipTypeMap, GridProps, TextFieldVariants } from '@mui/material';
|
|
2
2
|
import type { Control, FieldPath, FieldValues, Path } from 'react-hook-form';
|
|
3
|
-
import type {
|
|
3
|
+
import type { AsyncMultiSelectPayload } from '@/types';
|
|
4
4
|
type PrimitiveValue = string | number | boolean;
|
|
5
5
|
export type OptionObject<TValueKey extends string = string, TLabelKey extends string = string> = Record<TValueKey, PrimitiveValue> & Record<TLabelKey, string>;
|
|
6
6
|
export type AsyncMultiSelectElementProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = Path<TFieldValues>, TValueKey extends string = 'Value', TLabelKey extends string = 'Label', TOption extends OptionObject<TValueKey, TLabelKey> = OptionObject<TValueKey, TLabelKey>, DisableClearable extends boolean | undefined = false, FreeSolo extends boolean | undefined = false, ChipComponent extends React.ElementType = ChipTypeMap['defaultComponent']> = Omit<AutocompleteProps<TOption, true, DisableClearable, FreeSolo, ChipComponent>, 'name' | 'control' | 'ref' | 'multiple' | 'loading' | 'getOptionLabel' | 'getOptionKey' | 'isOptionEqualToValue' | 'options' | 'value' | 'filterSelectedOptions' | 'filterOptions' | 'onChange' | 'onInputChange' | 'renderInput'> & {
|
|
@@ -10,7 +10,7 @@ export type AsyncMultiSelectElementProps<TFieldValues extends FieldValues = Fiel
|
|
|
10
10
|
placeholder?: string;
|
|
11
11
|
label?: string;
|
|
12
12
|
initialValues?: Array<TOption[TValueKey]> | null;
|
|
13
|
-
queryFn: (data:
|
|
13
|
+
queryFn: (data: AsyncMultiSelectPayload) => Promise<TOption[] | undefined>;
|
|
14
14
|
variant?: TextFieldVariants;
|
|
15
15
|
labelField?: TLabelKey;
|
|
16
16
|
valueField?: TValueKey;
|
|
@@ -17,7 +17,7 @@ declare const Field: {
|
|
|
17
17
|
displayName: string;
|
|
18
18
|
};
|
|
19
19
|
SelectMulti: {
|
|
20
|
-
<TFieldValues extends import("react-hook-form").FieldValues = import("react-hook-form").FieldValues, TName extends import("react-hook-form").FieldPath<TFieldValues> = import("react-hook-form").FieldPath<TFieldValues
|
|
20
|
+
<TOption, TFieldValues extends import("react-hook-form").FieldValues = import("react-hook-form").FieldValues, TName extends import("react-hook-form").FieldPath<TFieldValues> = import("react-hook-form").FieldPath<TFieldValues>>({ gridProps, ...props }: import("../SelectMultiElement/SelectMultiElement").SelectMultiElementProps<TOption, TFieldValues, TName>): React.ReactElement;
|
|
21
21
|
displayName: string;
|
|
22
22
|
};
|
|
23
23
|
SelectCascade: {
|
|
@@ -2,8 +2,8 @@ import type { GridProps, TextFieldProps, TextFieldVariants } from '@mui/material
|
|
|
2
2
|
import { TextField } from '@mui/material';
|
|
3
3
|
import type { ChangeEvent, ReactElement, ReactNode } from 'react';
|
|
4
4
|
import type { Control, FieldError, FieldPath, FieldValues, PathValue } from 'react-hook-form';
|
|
5
|
-
import type { FieldType } from '
|
|
6
|
-
import type { EventOrValue } from '
|
|
5
|
+
import type { FieldType } from '@/hooks';
|
|
6
|
+
import type { EventOrValue } from '@/types';
|
|
7
7
|
/**
|
|
8
8
|
* Props for the TextFieldElement component.
|
|
9
9
|
*
|
|
@@ -86,6 +86,7 @@ export interface NumberFieldElementProps<TFieldValues extends FieldValues = Fiel
|
|
|
86
86
|
* @defaultValue process.env.NODE_ENV === 'development'
|
|
87
87
|
*/
|
|
88
88
|
enableWarnings?: boolean;
|
|
89
|
+
maxLength?: number;
|
|
89
90
|
}
|
|
90
91
|
/**
|
|
91
92
|
* A react-hook-form integrated TextField component with automatic validation,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NumberFieldElement.d.ts","sourceRoot":"","sources":["../../../src/wrappers/NumberFieldElement/NumberFieldElement.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,cAAc,EACd,iBAAiB,EAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAQ,SAAS,EAAc,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,SAAS,EACT,WAAW,EACX,SAAS,EACV,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"NumberFieldElement.d.ts","sourceRoot":"","sources":["../../../src/wrappers/NumberFieldElement/NumberFieldElement.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,cAAc,EACd,iBAAiB,EAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAQ,SAAS,EAAc,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,SAAS,EACT,WAAW,EACX,SAAS,EACV,MAAM,iBAAiB,CAAC;AAIzB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;;;;;;GAQG;AACH,MAAM,WAAW,uBAAuB,CACtC,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAC/D,MAAM,GAAG,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC;IAEvC;;;OAGG;IACH,IAAI,EAAE,KAAK,CAAC;IACZ;;;;OAIG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,SAAS,CAAC;IAC9C;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAChC;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,SAAS,CAAC;IAC7B;;;OAGG;IACH,SAAS,CAAC,EAAE;QACV,iDAAiD;QACjD,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,KAAK,MAAM,CAAC;QAC1D,0CAA0C;QAC1C,MAAM,CAAC,EAAE,CACP,YAAY,EAAE,YAAY,CAAC,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,EAC1D,KAAK,CAAC,EAAE,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,KACnC,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;KACrC,CAAC;IACF;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IAC9C;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;OAGG;IACH,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,EAAE,CACT,KAAK,EAAE,WAAW,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,KACvD,IAAI,CAAC;IACV;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAmID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoFG;AACH,eAAO,MAAM,kBAAkB,GAC7B,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAC/D,MAAM,GAAG,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,EACvC,yBAGC,uBAAuB,CAAC,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC,KAAG,YAMzD,CAAC"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import type { FlexibleOption } from '@gnwebsoft/ui';
|
|
2
1
|
import type { GridProps, ChipTypeMap, AutocompleteProps, TextFieldVariants } from '@mui/material';
|
|
3
2
|
import type { Control, FieldPath, FieldValues } from 'react-hook-form';
|
|
4
3
|
type BaseAutocompleteProps<TOption, Multiple extends boolean | undefined, DisableClearable extends boolean | undefined, FreeSolo extends boolean | undefined, ChipComponent extends React.ElementType> = Omit<AutocompleteProps<TOption, Multiple, DisableClearable, FreeSolo, ChipComponent>, 'name' | 'renderInput' | 'multiple' | 'onChange' | 'value'>;
|
|
5
|
-
export type SelectMultiElementProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,
|
|
4
|
+
export type SelectMultiElementProps<TOption, TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, Multiple extends boolean | undefined = true, DisableClearable extends boolean | undefined = false, FreeSolo extends boolean | undefined = false, ChipComponent extends React.ElementType = ChipTypeMap['defaultComponent']> = BaseAutocompleteProps<TOption, Multiple, DisableClearable, FreeSolo, ChipComponent> & {
|
|
6
5
|
name: TName;
|
|
7
6
|
control?: Control<TFieldValues>;
|
|
8
7
|
gridProps?: GridProps;
|
|
@@ -15,7 +14,7 @@ export type SelectMultiElementProps<TFieldValues extends FieldValues = FieldValu
|
|
|
15
14
|
options?: readonly TOption[] | null;
|
|
16
15
|
};
|
|
17
16
|
export declare const SelectMultiElement: {
|
|
18
|
-
<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues
|
|
17
|
+
<TOption, TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ gridProps, ...props }: SelectMultiElementProps<TOption, TFieldValues, TName>): React.ReactElement;
|
|
19
18
|
displayName: string;
|
|
20
19
|
};
|
|
21
20
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectMultiElement.d.ts","sourceRoot":"","sources":["../../../src/wrappers/SelectMultiElement/SelectMultiElement.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SelectMultiElement.d.ts","sourceRoot":"","sources":["../../../src/wrappers/SelectMultiElement/SelectMultiElement.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EAElB,MAAM,eAAe,CAAC;AAWvB,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGvE,KAAK,qBAAqB,CACxB,OAAO,EACP,QAAQ,SAAS,OAAO,GAAG,SAAS,EACpC,gBAAgB,SAAS,OAAO,GAAG,SAAS,EAC5C,QAAQ,SAAS,OAAO,GAAG,SAAS,EACpC,aAAa,SAAS,KAAK,CAAC,WAAW,IACrC,IAAI,CACN,iBAAiB,CACf,OAAO,EACP,QAAQ,EACR,gBAAgB,EAChB,QAAQ,EACR,aAAa,CACd,EACD,MAAM,GAAG,aAAa,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CAC3D,CAAC;AAEF,MAAM,MAAM,uBAAuB,CACjC,OAAO,EACP,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAC/D,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,IAAI,EAC3C,gBAAgB,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,EACpD,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,EAC5C,aAAa,SAAS,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC,kBAAkB,CAAC,IACvE,qBAAqB,CACvB,OAAO,EACP,QAAQ,EACR,gBAAgB,EAChB,QAAQ,EACR,aAAa,CACd,GAAG;IACF,IAAI,EAAE,KAAK,CAAC;IACZ,OAAO,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAChC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI,CAAC;CACrC,CAAC;AAmKF,eAAO,MAAM,kBAAkB;KAC7B,OAAO,EACP,YAAY,SAAS,WAAW,gBAChC,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,qDAIpC,uBAAuB,CACxB,OAAO,EACP,YAAY,EACZ,KAAK,CACN,GAAG,KAAK,CAAC,YAAY;;CAMrB,CAAC"}
|
package/dist/wrappers/index.cjs
CHANGED
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
|
|
28
|
-
var
|
|
29
|
-
require('../chunk-
|
|
28
|
+
var _chunkW5EM6HLWcjs = require('../chunk-W5EM6HLW.cjs');
|
|
29
|
+
require('../chunk-QYHJIPSZ.cjs');
|
|
30
30
|
require('../chunk-LUW7V5GI.cjs');
|
|
31
31
|
|
|
32
32
|
|
|
@@ -55,5 +55,5 @@ require('../chunk-LUW7V5GI.cjs');
|
|
|
55
55
|
|
|
56
56
|
|
|
57
57
|
|
|
58
|
-
exports.AsyncSelectMultiElement =
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
exports.AsyncSelectMultiElement = _chunkW5EM6HLWcjs.AsyncSelectMultiElement; exports.CheckboxElement = _chunkW5EM6HLWcjs.CheckboxElement; exports.CheckboxGroupElement = _chunkW5EM6HLWcjs.CheckboxGroupElement; exports.DatePickerElement = _chunkW5EM6HLWcjs.DatePickerElement; exports.DatePickerElementCore = _chunkW5EM6HLWcjs.DatePickerElementCore; exports.Field = _chunkW5EM6HLWcjs.Field; exports.PasswordElement = _chunkW5EM6HLWcjs.PasswordElement; exports.RadioButtonGroup = _chunkW5EM6HLWcjs.RadioButtonGroup; exports.SelectCascadeElement = _chunkW5EM6HLWcjs.SelectCascadeElement; exports.SelectElement = _chunkW5EM6HLWcjs.SelectElement; exports.SelectMultiElement = _chunkW5EM6HLWcjs.SelectMultiElement; exports.TextFieldElement = _chunkW5EM6HLWcjs.TextFieldElement; exports.TimePickerElement = _chunkW5EM6HLWcjs.TimePickerElement; exports.createDateInputTransform = _chunkW5EM6HLWcjs.createDateInputTransform; exports.createDateOutputTransform = _chunkW5EM6HLWcjs.createDateOutputTransform; exports.createDefaultDatePickerConfig = _chunkW5EM6HLWcjs.createDefaultDatePickerConfig; exports.createStableKey = _chunkW5EM6HLWcjs.createStableKey; exports.extractErrorMessage = _chunkW5EM6HLWcjs.extractErrorMessage; exports.isParsableDateString = _chunkW5EM6HLWcjs.isParsableDateString; exports.isValidDate = _chunkW5EM6HLWcjs.isValidDate; exports.isValidOption = _chunkW5EM6HLWcjs.isValidOption; exports.normalizeOptions = _chunkW5EM6HLWcjs.normalizeOptions; exports.readDatePickerValueAsDate = _chunkW5EM6HLWcjs.readDatePickerValueAsDate; exports.useDatePickerStyles = _chunkW5EM6HLWcjs.useDatePickerStyles; exports.useDatePickerValidation = _chunkW5EM6HLWcjs.useDatePickerValidation; exports.useDatePickerValue = _chunkW5EM6HLWcjs.useDatePickerValue;
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImQ6XFxQcm9qZWN0c1xcR05XZWJTb2Z0LlVJXFxwYWNrYWdlc1xcdWlcXGRpc3RcXHdyYXBwZXJzXFxpbmRleC5janMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0YseURBQThCO0FBQzlCLGlDQUE4QjtBQUM5QixpQ0FBOEI7QUFDOUI7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0YsdXREQUFDIiwiZmlsZSI6IkQ6XFxQcm9qZWN0c1xcR05XZWJTb2Z0LlVJXFxwYWNrYWdlc1xcdWlcXGRpc3RcXHdyYXBwZXJzXFxpbmRleC5janMifQ==
|
package/dist/wrappers/index.js
CHANGED
|
@@ -25,8 +25,8 @@ import {
|
|
|
25
25
|
useDatePickerStyles,
|
|
26
26
|
useDatePickerValidation,
|
|
27
27
|
useDatePickerValue
|
|
28
|
-
} from "../chunk-
|
|
29
|
-
import "../chunk-
|
|
28
|
+
} from "../chunk-BWEFHFD4.js";
|
|
29
|
+
import "../chunk-PW777IOX.js";
|
|
30
30
|
import "../chunk-FYU2OIMD.js";
|
|
31
31
|
export {
|
|
32
32
|
AsyncSelectMultiElement,
|
package/package.json
CHANGED
package/dist/chunk-6PMJWQ4R.cjs
DELETED
|
@@ -1,239 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }// src/utils/flattenObjectKeys.ts
|
|
2
|
-
var isNested = (obj) => typeof obj === "object" && obj !== null && !Array.isArray(obj);
|
|
3
|
-
var isArray = (obj) => Array.isArray(obj);
|
|
4
|
-
var flattenObjectKeys = (obj, prefix = "") => {
|
|
5
|
-
if (!isNested(obj)) {
|
|
6
|
-
return {
|
|
7
|
-
[prefix]: obj
|
|
8
|
-
};
|
|
9
|
-
}
|
|
10
|
-
return Object.keys(obj).reduce((acc, key) => {
|
|
11
|
-
const currentPrefix = prefix.length ? `${prefix}.` : "";
|
|
12
|
-
if (isNested(obj[key]) && Object.keys(obj[key]).length) {
|
|
13
|
-
if (isArray(obj[key]) && obj[key].length) {
|
|
14
|
-
obj[key].forEach((item, index) => {
|
|
15
|
-
Object.assign(
|
|
16
|
-
acc,
|
|
17
|
-
flattenObjectKeys(item, `${currentPrefix + key}.${index}`)
|
|
18
|
-
);
|
|
19
|
-
});
|
|
20
|
-
} else {
|
|
21
|
-
Object.assign(acc, flattenObjectKeys(obj[key], currentPrefix + key));
|
|
22
|
-
}
|
|
23
|
-
acc[currentPrefix + key] = obj[key];
|
|
24
|
-
} else {
|
|
25
|
-
acc[currentPrefix + key] = obj[key];
|
|
26
|
-
}
|
|
27
|
-
return acc;
|
|
28
|
-
}, {});
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
// src/utils/getTimezone.ts
|
|
32
|
-
function getTimezone(adapter, value) {
|
|
33
|
-
return value == null || !adapter.utils.isValid(value) ? null : adapter.utils.getTimezone(value);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
// src/utils/handleServerErrors.ts
|
|
37
|
-
var handleServerErrors = function handleServerErrors2(args) {
|
|
38
|
-
const { errors, setError } = args;
|
|
39
|
-
for (const key in errors) {
|
|
40
|
-
const isKeyInVariables = Object.keys(flattenObjectKeys(errors)).includes(
|
|
41
|
-
key
|
|
42
|
-
);
|
|
43
|
-
if (!isKeyInVariables) {
|
|
44
|
-
continue;
|
|
45
|
-
}
|
|
46
|
-
const fieldError = errors[key];
|
|
47
|
-
let errorMessage = "";
|
|
48
|
-
if (Array.isArray(fieldError)) {
|
|
49
|
-
errorMessage = fieldError.join(" ");
|
|
50
|
-
}
|
|
51
|
-
if (typeof fieldError === "string") {
|
|
52
|
-
errorMessage = fieldError;
|
|
53
|
-
}
|
|
54
|
-
if (typeof fieldError === "boolean" && fieldError) {
|
|
55
|
-
errorMessage = "Field is not valid.";
|
|
56
|
-
}
|
|
57
|
-
setError(key, {
|
|
58
|
-
message: errorMessage
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
// src/utils/propertyExists.ts
|
|
64
|
-
function propertyExists(obj, prop) {
|
|
65
|
-
return typeof obj === "object" && obj !== null && Object.prototype.hasOwnProperty.call(obj, prop);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
// src/utils/removeLeadingTrailingSlashes.ts
|
|
69
|
-
var removeLeadingTrailingSlashes = (route) => {
|
|
70
|
-
return route.replace(/^\/|\/$/g, "");
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
// src/utils/schemaTools.ts
|
|
74
|
-
var _dayjs = require('dayjs'); var _dayjs2 = _interopRequireDefault(_dayjs);
|
|
75
|
-
var _zod = require('zod');
|
|
76
|
-
var schemaTools = {
|
|
77
|
-
// Date validations
|
|
78
|
-
date: ({ message } = {}) => _zod.z.coerce.string().transform((c) => c === "null" || c === "undefined" ? null : c).refine((c) => !!c, { message: message || "Date is required" }).refine((c) => c ? _dayjs2.default.call(void 0, c).isValid() : true, {
|
|
79
|
-
message: message || "Invalid date"
|
|
80
|
-
}),
|
|
81
|
-
nullableDate: ({ message } = {}) => _zod.z.coerce.string().transform((c) => c === "null" ? null : c).transform((c) => c === "undefined" ? null : c).refine((c) => !c && c !== null ? _dayjs2.default.call(void 0, c).isValid() : true, {
|
|
82
|
-
message: message || "Invalid date"
|
|
83
|
-
}),
|
|
84
|
-
dateRange: ({ message } = {}) => _zod.z.object({
|
|
85
|
-
start: _zod.z.coerce.date(),
|
|
86
|
-
end: _zod.z.coerce.date()
|
|
87
|
-
}).refine((data) => data.start <= data.end, {
|
|
88
|
-
message: message || "Start date must be before or equal to end date"
|
|
89
|
-
}),
|
|
90
|
-
// String validations
|
|
91
|
-
requiredString: ({ message, min, max } = {}) => _zod.z.string().trim().min(min || 1, message || `String must be at least ${min || 1} characters`).max(max || 255, message || `String must be at most ${max || 255} characters`),
|
|
92
|
-
email: ({ message } = {}) => _zod.z.string().email(message || "Invalid email address").max(254, "Email must be at most 254 characters"),
|
|
93
|
-
url: ({ message } = {}) => _zod.z.string().url(message || "Invalid URL format"),
|
|
94
|
-
phone: ({ message } = {}) => _zod.z.string().regex(/^[+]?[1-9][\d]{0,15}$/, message || "Invalid phone number format"),
|
|
95
|
-
alphanumeric: ({ message } = {}) => _zod.z.string().regex(/^[a-zA-Z0-9]+$/, message || "Only letters and numbers are allowed"),
|
|
96
|
-
slug: ({ message } = {}) => _zod.z.string().regex(/^[a-z0-9]+(?:-[a-z0-9]+)*$/, message || "Invalid slug format"),
|
|
97
|
-
// Number validations
|
|
98
|
-
positiveNumber: ({ message, min, max } = {}) => _zod.z.number().positive(message || "Number must be positive").min(min || 0.01, `Number must be at least ${min || 0.01}`).max(max || Number.MAX_SAFE_INTEGER, `Number must be at most ${max || Number.MAX_SAFE_INTEGER}`),
|
|
99
|
-
nonNegativeNumber: ({ message, max } = {}) => _zod.z.number().min(0, message || "Number must be non-negative").max(max || Number.MAX_SAFE_INTEGER, `Number must be at most ${max || Number.MAX_SAFE_INTEGER}`),
|
|
100
|
-
integer: ({ message, min, max } = {}) => _zod.z.number().int(message || "Must be an integer").min(min || Number.MIN_SAFE_INTEGER, `Number must be at least ${min || Number.MIN_SAFE_INTEGER}`).max(max || Number.MAX_SAFE_INTEGER, `Number must be at most ${max || Number.MAX_SAFE_INTEGER}`),
|
|
101
|
-
percentage: ({ message } = {}) => _zod.z.number().min(0, message || "Percentage must be between 0 and 100").max(100, message || "Percentage must be between 0 and 100"),
|
|
102
|
-
// Array validations
|
|
103
|
-
nonEmptyArray: (schema, { message } = {}) => _zod.z.array(schema).min(1, message || "At least one item is required"),
|
|
104
|
-
uniqueArray: (schema, { message } = {}) => _zod.z.array(schema).refine((items) => new Set(items).size === items.length, {
|
|
105
|
-
message: message || "All items must be unique"
|
|
106
|
-
}),
|
|
107
|
-
// Boolean validations
|
|
108
|
-
requiredBoolean: ({ message } = {}) => _zod.z.boolean({
|
|
109
|
-
message: message || "This field is required"
|
|
110
|
-
}),
|
|
111
|
-
// Object validations
|
|
112
|
-
nonEmptyObject: (schema, { message } = {}) => schema.refine((obj) => Object.keys(obj).length > 0, {
|
|
113
|
-
message: message || "Object cannot be empty"
|
|
114
|
-
}),
|
|
115
|
-
// File validations
|
|
116
|
-
fileSize: ({ maxSize, message }) => _zod.z.instanceof(File).refine((file) => file.size <= maxSize, {
|
|
117
|
-
message: message || `File size must be less than ${Math.round(maxSize / 1024 / 1024)}MB`
|
|
118
|
-
}),
|
|
119
|
-
fileType: ({ allowedTypes, message }) => _zod.z.instanceof(File).refine((file) => allowedTypes.includes(file.type), {
|
|
120
|
-
message: message || `File type must be one of: ${allowedTypes.join(", ")}`
|
|
121
|
-
}),
|
|
122
|
-
// Custom validators
|
|
123
|
-
conditional: (condition, trueSchema, falseSchema) => _zod.z.union([trueSchema, falseSchema]).superRefine((data, ctx) => {
|
|
124
|
-
const shouldUseTrue = condition(data);
|
|
125
|
-
const schema = shouldUseTrue ? trueSchema : falseSchema;
|
|
126
|
-
const result = schema.safeParse(data);
|
|
127
|
-
if (!result.success) {
|
|
128
|
-
ctx.addIssue({
|
|
129
|
-
code: _zod.z.ZodIssueCode.custom,
|
|
130
|
-
message: result.error.message
|
|
131
|
-
});
|
|
132
|
-
}
|
|
133
|
-
}),
|
|
134
|
-
transform: {
|
|
135
|
-
toLowerCase: _zod.z.string().transform((val) => val.toLowerCase()),
|
|
136
|
-
toUpperCase: _zod.z.string().transform((val) => val.toUpperCase()),
|
|
137
|
-
trim: _zod.z.string().transform((val) => val.trim()),
|
|
138
|
-
toNumber: _zod.z.string().transform((val) => Number(val)),
|
|
139
|
-
toBoolean: _zod.z.string().transform((val) => val === "true"),
|
|
140
|
-
parseJson: (schema) => _zod.z.string().transform((val, ctx) => {
|
|
141
|
-
try {
|
|
142
|
-
const parsed = JSON.parse(val);
|
|
143
|
-
const result = schema.safeParse(parsed);
|
|
144
|
-
if (result.success) return result.data;
|
|
145
|
-
ctx.addIssue({
|
|
146
|
-
code: _zod.z.ZodIssueCode.custom,
|
|
147
|
-
message: result.error.message
|
|
148
|
-
});
|
|
149
|
-
return _zod.z.NEVER;
|
|
150
|
-
} catch (e) {
|
|
151
|
-
ctx.addIssue({
|
|
152
|
-
code: _zod.z.ZodIssueCode.custom,
|
|
153
|
-
message: "Invalid JSON"
|
|
154
|
-
});
|
|
155
|
-
return _zod.z.NEVER;
|
|
156
|
-
}
|
|
157
|
-
})
|
|
158
|
-
}
|
|
159
|
-
};
|
|
160
|
-
|
|
161
|
-
// src/utils/typeGuards.ts
|
|
162
|
-
function isRecord(value) {
|
|
163
|
-
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
164
|
-
}
|
|
165
|
-
function hasProperty(obj, key) {
|
|
166
|
-
return isRecord(obj) && key in obj;
|
|
167
|
-
}
|
|
168
|
-
function isNonEmptyString(value) {
|
|
169
|
-
return typeof value === "string" && value.length > 0;
|
|
170
|
-
}
|
|
171
|
-
function isArray2(value) {
|
|
172
|
-
return Array.isArray(value);
|
|
173
|
-
}
|
|
174
|
-
function isNonEmptyArray(value) {
|
|
175
|
-
return Array.isArray(value) && value.length > 0;
|
|
176
|
-
}
|
|
177
|
-
function isFunction(value) {
|
|
178
|
-
return typeof value === "function";
|
|
179
|
-
}
|
|
180
|
-
function isString(value) {
|
|
181
|
-
return typeof value === "string";
|
|
182
|
-
}
|
|
183
|
-
function isNumber(value) {
|
|
184
|
-
return typeof value === "number" && !isNaN(value);
|
|
185
|
-
}
|
|
186
|
-
function isBoolean(value) {
|
|
187
|
-
return typeof value === "boolean";
|
|
188
|
-
}
|
|
189
|
-
function isNull(value) {
|
|
190
|
-
return value === null;
|
|
191
|
-
}
|
|
192
|
-
function isUndefined(value) {
|
|
193
|
-
return value === void 0;
|
|
194
|
-
}
|
|
195
|
-
function isNullish(value) {
|
|
196
|
-
return value === null || value === void 0;
|
|
197
|
-
}
|
|
198
|
-
function isDefined(value) {
|
|
199
|
-
return value !== null && value !== void 0;
|
|
200
|
-
}
|
|
201
|
-
function isDate(value) {
|
|
202
|
-
return value instanceof Date && !isNaN(value.getTime());
|
|
203
|
-
}
|
|
204
|
-
function isPromise(value) {
|
|
205
|
-
return value instanceof Promise || isRecord(value) && typeof value.then === "function";
|
|
206
|
-
}
|
|
207
|
-
function isError(error) {
|
|
208
|
-
return error instanceof Error;
|
|
209
|
-
}
|
|
210
|
-
function matches(value, validator) {
|
|
211
|
-
return validator(value);
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
exports.flattenObjectKeys = flattenObjectKeys; exports.getTimezone = getTimezone; exports.handleServerErrors = handleServerErrors; exports.propertyExists = propertyExists; exports.removeLeadingTrailingSlashes = removeLeadingTrailingSlashes; exports.schemaTools = schemaTools; exports.isRecord = isRecord; exports.hasProperty = hasProperty; exports.isNonEmptyString = isNonEmptyString; exports.isArray = isArray2; exports.isNonEmptyArray = isNonEmptyArray; exports.isFunction = isFunction; exports.isString = isString; exports.isNumber = isNumber; exports.isBoolean = isBoolean; exports.isNull = isNull; exports.isUndefined = isUndefined; exports.isNullish = isNullish; exports.isDefined = isDefined; exports.isDate = isDate; exports.isPromise = isPromise; exports.isError = isError; exports.matches = matches;
|
|
239
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImM6XFxVdHRhbVxcUHJvamVjdHNcXEdOV2ViU29mdC5VSVxccGFja2FnZXNcXHVpXFxkaXN0XFxjaHVuay02UE1KV1E0Ui5janMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQSxJQUFJLFNBQVMsRUFBRSxDQUFDLEdBQUcsRUFBRSxHQUFHLE9BQU8sSUFBSSxJQUFJLFNBQVMsR0FBRyxJQUFJLElBQUksS0FBSyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7QUFDdEYsSUFBSSxRQUFRLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztBQUN6QyxJQUFJLGtCQUFrQixFQUFFLENBQUMsR0FBRyxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsR0FBRztBQUM5QyxFQUFFLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRTtBQUN0QixJQUFJLE9BQU87QUFDWCxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUU7QUFDaEIsSUFBSSxDQUFDO0FBQ0wsRUFBRTtBQUNGLEVBQUUsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRztBQUMvQyxJQUFJLE1BQU0sY0FBYyxFQUFFLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFBO0FBQ0EsSUFBQTtBQUNBLE1BQUE7QUFDQSxRQUFBO0FBQ0EsVUFBQTtBQUNBLFlBQUE7QUFDQSxZQUFBO0FBQ0EsVUFBQTtBQUNBLFFBQUE7QUFDQSxNQUFBO0FBQ0EsUUFBQTtBQUNBLE1BQUE7QUFDQSxNQUFBO0FBQ0EsSUFBQTtBQUNBLE1BQUE7QUFDQSxJQUFBO0FBQ0EsSUFBQTtBQUNBLEVBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEVBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEVBQUE7QUFDQSxFQUFBO0FBQ0EsSUFBQTtBQUNBLE1BQUE7QUFDQSxJQUFBO0FBQ0EsSUFBQTtBQUNBLE1BQUE7QUFDQSxJQUFBO0FBQ0EsSUFBQTtBQUNBLElBQUE7QUFDQSxJQUFBO0FBQ0EsTUFBQTtBQUNBLElBQUE7QUFDQSxJQUFBO0FBQ0EsTUFBQTtBQUNBLElBQUE7QUFDQSxJQUFBO0FBQ0EsTUFBQTtBQUNBLElBQUE7QUFDQSxJQUFBO0FBQ0EsTUFBQTtBQUNBLElBQUE7QUFDQSxFQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxFQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxFQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxFQUFBO0FBQ0EsSUFBQTtBQUNBLEVBQUE7QUFDQSxFQUFBO0FBQ0EsSUFBQTtBQUNBLEVBQUE7QUFDQSxFQUFBO0FBQ0EsSUFBQTtBQUNBLElBQUE7QUFDQSxFQUFBO0FBQ0EsSUFBQTtBQUNBLEVBQUE7QUFDQTtBQUNBLEVBQUE7QUFDQSxFQUFBO0FBQ0EsRUFBQTtBQUNBLEVBQUE7QUFDQSxFQUFBO0FBQ0EsRUFBQTtBQUNBO0FBQ0EsRUFBQTtBQUNBLEVBQUE7QUFDQSxFQUFBO0FBQ0EsRUFBQTtBQUNBO0FBQ0EsRUFBQTtBQUNBLEVBQUE7QUFDQSxJQUFBO0FBQ0EsRUFBQTtBQUNBO0FBQ0EsRUFBQTtBQUNBLElBQUE7QUFDQSxFQUFBO0FBQ0E7QUFDQSxFQUFBO0FBQ0EsSUFBQTtBQUNBLEVBQUE7QUFDQTtBQUNBLEVBQUE7QUFDQSxJQUFBO0FBQ0EsRUFBQTtBQUNBLEVBQUE7QUFDQSxJQUFBO0FBQ0EsRUFBQTtBQUNBO0FBQ0EsRUFBQTtBQUNBLElBQUE7QUFDQSxJQUFBO0FBQ0EsSUFBQTtBQUNBLElBQUE7QUFDQSxNQUFBO0FBQ0EsUUFBQTtBQUNBLFFBQUE7QUFDQSxNQUFBO0FBQ0EsSUFBQTtBQUNBLEVBQUE7QUFDQSxFQUFBO0FBQ0EsSUFBQTtBQUNBLElBQUE7QUFDQSxJQUFBO0FBQ0EsSUFBQTtBQUNBLElBQUE7QUFDQSxJQUFBO0FBQ0EsTUFBQTtBQUNBLFFBQUE7QUFDQSxRQUFBO0FBQ0EsUUFBQTtBQUNBLFFBQUE7QUFDQSxVQUFBO0FBQ0EsVUFBQTtBQUNBLFFBQUE7QUFDQSxRQUFBO0FBQ0EsTUFBQTtBQUNBLFFBQUE7QUFDQSxVQUFBO0FBQ0EsVUFBQTtBQUNBLFFBQUE7QUFDQSxRQUFBO0FBQ0EsTUFBQTtBQUNBLElBQUE7QUFDQSxFQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxFQUFBO0FBQ0E7QUFDQTtBQUNBLEVBQUE7QUFDQTtBQUNBO0FBQ0EsRUFBQTtBQUNBO0FBQ0E7QUFDQSxFQUFBO0FBQ0E7QUFDQTtBQUNBLEVBQUE7QUFDQTtBQUNBO0FBQ0EsRUFBQTtBQUNBO0FBQ0E7QUFDQSxFQUFBO0FBQ0E7QUFDQTtBQUNBLEVBQUE7QUFDQTtBQUNBO0FBQ0EsRUFBQTtBQUNBO0FBQ0E7QUFDQSxFQUFBO0FBQ0E7QUFDQTtBQUNBLEVBQUE7QUFDQTtBQUNBO0FBQ0EsRUFBQTtBQUNBO0FBQ0E7QUFDQSxFQUFBO0FBQ0E7QUFDQTtBQUNBLEVBQUE7QUFDQTtBQUNBO0FBQ0EsRUFBQTtBQUNBO0FBQ0E7QUFDQSxFQUFBO0FBQ0E7QUFDQTtBQUNBLEVBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoiQzpcXFV0dGFtXFxQcm9qZWN0c1xcR05XZWJTb2Z0LlVJXFxwYWNrYWdlc1xcdWlcXGRpc3RcXGNodW5rLTZQTUpXUTRSLmNqcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbF19
|