@gnwebsoft/ui 4.0.18 → 4.0.20
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-36JPY5JK.js +2399 -0
- package/dist/{chunk-ML5UQCRH.js → chunk-443ILX4Y.js} +3 -3
- package/dist/chunk-HDL5E7XD.js +523 -0
- package/dist/{chunk-3CHF3PN3.cjs → chunk-OOYORGC6.cjs} +3 -3
- package/dist/{chunk-Y3QTSDLJ.cjs → chunk-QYHJIPSZ.cjs} +1 -1
- package/dist/chunk-UZ2KNGOF.cjs +523 -0
- package/dist/{chunk-ANM72IBT.cjs → chunk-WLWENVDE.cjs} +19 -9
- package/dist/core/index.cjs +2 -2
- 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.d.ts +1 -1
- package/dist/utils/index.cjs +2 -2
- 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/CheckboxGroup/CheckboxGroup.d.ts +3 -1
- package/dist/wrappers/CheckboxGroup/CheckboxGroup.d.ts.map +1 -1
- package/dist/wrappers/NumberFieldElement/NumberFieldElement.d.ts +3 -2
- package/dist/wrappers/NumberFieldElement/NumberFieldElement.d.ts.map +1 -1
- package/dist/wrappers/index.cjs +3 -3
- 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-MVPLBJRK.cjs +0 -1
- package/dist/chunk-OJF67RNM.js +0 -1
- package/dist/chunk-YTUT34X2.js +0 -2389
- 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":"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"}
|
|
@@ -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;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CheckboxProps, FormControlLabelProps, GridProps } from '@mui/material';
|
|
1
|
+
import type { CheckboxProps, FormControlLabelProps, FormLabelProps, GridProps } from '@mui/material';
|
|
2
2
|
import type { Control, FieldPath, FieldValues } from 'react-hook-form';
|
|
3
3
|
/**
|
|
4
4
|
* Props for the CheckboxGroup component
|
|
@@ -34,6 +34,8 @@ export type CheckboxGroupProps<TFieldValues extends FieldValues = FieldValues, T
|
|
|
34
34
|
*/
|
|
35
35
|
gridProps?: GridProps;
|
|
36
36
|
options: TOption[];
|
|
37
|
+
required?: boolean;
|
|
38
|
+
formLabelProps?: Omit<FormLabelProps, 'required' | 'error'>;
|
|
37
39
|
labelKey?: TLabelKey;
|
|
38
40
|
valueKey?: TValueKey;
|
|
39
41
|
disabledKey?: TDisabledKey;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckboxGroup.d.ts","sourceRoot":"","sources":["../../../src/wrappers/CheckboxGroup/CheckboxGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,qBAAqB,EACrB,SAAS,EACV,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"CheckboxGroup.d.ts","sourceRoot":"","sources":["../../../src/wrappers/CheckboxGroup/CheckboxGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,qBAAqB,EACrB,cAAc,EACd,SAAS,EACV,MAAM,eAAe,CAAC;AAYvB,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGvE;;;;;;;;GAQG;AAGH,KAAK,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAGhD,KAAK,YAAY,CACf,SAAS,SAAS,MAAM,GAAG,MAAM,EACjC,SAAS,SAAS,MAAM,GAAG,MAAM,EACjC,YAAY,SAAS,MAAM,GAAG,MAAM,IAClC,MAAM,CAAC,SAAS,EAAE,cAAc,CAAC,GACnC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,GACzB,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;AAEzC,MAAM,MAAM,kBAAkB,CAC5B,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAC/D,OAAO,SAAS,YAAY,CAC1B,SAAS,EACT,SAAS,EACT,YAAY,CACb,GAAG,YAAY,EAChB,SAAS,SAAS,MAAM,GAAG,OAAO,EAClC,SAAS,SAAS,MAAM,GAAG,OAAO,EAClC,YAAY,SAAS,MAAM,GAAG,UAAU,IACtC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,GAAG;IAChC;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC;IAEZ;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAEhC;;OAEG;IACH,KAAK,CAAC,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAEvC;;OAEG;IACH,UAAU,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC;IAE9D;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC;IAE5D,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,WAAW,CAAC,EAAE,YAAY,CAAC;CAC5B,CAAC;AA6GF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,QAAA,MAAM,oBAAoB;KACxB,YAAY,SAAS,WAAW,gBAChC,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,4BACrC,OAAO,SAAS,YAAY,CAC1B,SAAS,EACT,SAAS,EACT,YAAY,CACb,yCACD,SAAS,SAAS,MAAM,YACxB,SAAS,SAAS,MAAM,YACxB,YAAY,SAAS,MAAM,wCAI1B,kBAAkB,CACnB,YAAY,EACZ,KAAK,EACL,OAAO,EACP,SAAS,EACT,SAAS,EACT,YAAY,CACb;;CAMA,CAAC;AAIF,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
|
|
@@ -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"}
|
package/dist/wrappers/index.cjs
CHANGED
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
|
|
28
|
-
var
|
|
29
|
-
require('../chunk-
|
|
28
|
+
var _chunkWLWENVDEcjs = require('../chunk-WLWENVDE.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 =
|
|
58
|
+
exports.AsyncSelectMultiElement = _chunkWLWENVDEcjs.AsyncSelectMultiElement; exports.CheckboxElement = _chunkWLWENVDEcjs.CheckboxElement; exports.CheckboxGroupElement = _chunkWLWENVDEcjs.CheckboxGroupElement; exports.DatePickerElement = _chunkWLWENVDEcjs.DatePickerElement; exports.DatePickerElementCore = _chunkWLWENVDEcjs.DatePickerElementCore; exports.Field = _chunkWLWENVDEcjs.Field; exports.PasswordElement = _chunkWLWENVDEcjs.PasswordElement; exports.RadioButtonGroup = _chunkWLWENVDEcjs.RadioButtonGroup; exports.SelectCascadeElement = _chunkWLWENVDEcjs.SelectCascadeElement; exports.SelectElement = _chunkWLWENVDEcjs.SelectElement; exports.SelectMultiElement = _chunkWLWENVDEcjs.SelectMultiElement; exports.TextFieldElement = _chunkWLWENVDEcjs.TextFieldElement; exports.TimePickerElement = _chunkWLWENVDEcjs.TimePickerElement; exports.createDateInputTransform = _chunkWLWENVDEcjs.createDateInputTransform; exports.createDateOutputTransform = _chunkWLWENVDEcjs.createDateOutputTransform; exports.createDefaultDatePickerConfig = _chunkWLWENVDEcjs.createDefaultDatePickerConfig; exports.createStableKey = _chunkWLWENVDEcjs.createStableKey; exports.extractErrorMessage = _chunkWLWENVDEcjs.extractErrorMessage; exports.isParsableDateString = _chunkWLWENVDEcjs.isParsableDateString; exports.isValidDate = _chunkWLWENVDEcjs.isValidDate; exports.isValidOption = _chunkWLWENVDEcjs.isValidOption; exports.normalizeOptions = _chunkWLWENVDEcjs.normalizeOptions; exports.readDatePickerValueAsDate = _chunkWLWENVDEcjs.readDatePickerValueAsDate; exports.useDatePickerStyles = _chunkWLWENVDEcjs.useDatePickerStyles; exports.useDatePickerValidation = _chunkWLWENVDEcjs.useDatePickerValidation; exports.useDatePickerValue = _chunkWLWENVDEcjs.useDatePickerValue;
|
|
59
59
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImM6XFxVdHRhbVxcUHJvamVjdHNcXEdOV2ViU29mdC5VSVxccGFja2FnZXNcXHVpXFxkaXN0XFx3cmFwcGVyc1xcaW5kZXguY2pzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNGLHlEQUE4QjtBQUM5QixpQ0FBOEI7QUFDOUIsaUNBQThCO0FBQzlCO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNGLHV0REFBQyIsImZpbGUiOiJDOlxcVXR0YW1cXFByb2plY3RzXFxHTldlYlNvZnQuVUlcXHBhY2thZ2VzXFx1aVxcZGlzdFxcd3JhcHBlcnNcXGluZGV4LmNqcyJ9
|
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-36JPY5JK.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
|