@form-instant/react-resolver-zod 1.5.2 → 1.5.5
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/react-resolver-zod.cjs.development.js +68 -31
- package/dist/react-resolver-zod.cjs.development.js.map +1 -1
- package/dist/react-resolver-zod.cjs.production.min.js +1 -1
- package/dist/react-resolver-zod.cjs.production.min.js.map +1 -1
- package/dist/react-resolver-zod.esm.js +68 -31
- package/dist/react-resolver-zod.esm.js.map +1 -1
- package/package.json +1 -1
@@ -98,23 +98,32 @@ function inferFieldType(schema, fieldType) {
|
|
98
98
|
|
99
99
|
var _excluded = ["fieldType"];
|
100
100
|
var typeMapping = {
|
101
|
-
ZodDiscriminatedUnion: function ZodDiscriminatedUnion(
|
102
|
-
var
|
103
|
-
|
104
|
-
|
105
|
-
|
101
|
+
ZodDiscriminatedUnion: function ZodDiscriminatedUnion(_ref) {
|
102
|
+
var schema = _ref.schema,
|
103
|
+
name = _ref.name,
|
104
|
+
history = _ref.history,
|
105
|
+
dependecys = _ref.dependecys;
|
106
|
+
var _schema$_def = schema._def,
|
107
|
+
optionsMap = _schema$_def.optionsMap,
|
108
|
+
discriminator = _schema$_def.discriminator,
|
109
|
+
fieldConfig = _schema$_def.fieldConfig;
|
106
110
|
if (!Object.keys(dependecys).length) return [{}];
|
107
111
|
var optionKey = dependecys[discriminator];
|
108
112
|
var option = optionsMap.get(optionKey);
|
109
113
|
if (!option) return [{}];
|
110
114
|
var entries = Object.entries(option.shape);
|
111
|
-
var fields = entries.filter(function (
|
112
|
-
var key =
|
115
|
+
var fields = entries.filter(function (_ref2) {
|
116
|
+
var key = _ref2[0];
|
113
117
|
return key !== discriminator;
|
114
|
-
}).map(function (
|
115
|
-
var key =
|
116
|
-
field =
|
117
|
-
return parseField(
|
118
|
+
}).map(function (_ref3) {
|
119
|
+
var key = _ref3[0],
|
120
|
+
field = _ref3[1];
|
121
|
+
return parseField({
|
122
|
+
name: key,
|
123
|
+
schema: field,
|
124
|
+
history: [history, name].join('.'),
|
125
|
+
dependecys: dependecys
|
126
|
+
});
|
118
127
|
});
|
119
128
|
fields.unshift({
|
120
129
|
name: {
|
@@ -131,24 +140,41 @@ var typeMapping = {
|
|
131
140
|
});
|
132
141
|
return fields;
|
133
142
|
},
|
134
|
-
ZodObject: function ZodObject(
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
143
|
+
ZodObject: function ZodObject(_ref4) {
|
144
|
+
var schema = _ref4.schema,
|
145
|
+
name = _ref4.name,
|
146
|
+
history = _ref4.history,
|
147
|
+
dependecys = _ref4.dependecys;
|
148
|
+
return Object.entries(schema.shape).map(function (_ref5) {
|
149
|
+
var key = _ref5[0],
|
150
|
+
field = _ref5[1];
|
151
|
+
return parseField({
|
152
|
+
name: key,
|
153
|
+
schema: field,
|
154
|
+
history: [history, name].join('.'),
|
155
|
+
dependecys: dependecys
|
156
|
+
});
|
139
157
|
});
|
140
158
|
},
|
141
|
-
ZodArray: function ZodArray(
|
142
|
-
|
159
|
+
ZodArray: function ZodArray(_ref6) {
|
160
|
+
var schema = _ref6.schema,
|
161
|
+
name = _ref6.name,
|
162
|
+
history = _ref6.history,
|
163
|
+
dependecys = _ref6.dependecys;
|
164
|
+
return [parseField({
|
165
|
+
name: '0',
|
166
|
+
schema: schema._def.type,
|
167
|
+
history: [history, name].join('.'),
|
168
|
+
dependecys: dependecys
|
169
|
+
})];
|
143
170
|
}
|
144
171
|
};
|
145
|
-
function parseField(
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
dependecys = {};
|
151
|
-
}
|
172
|
+
function parseField(_ref7) {
|
173
|
+
var name = _ref7.name,
|
174
|
+
schema = _ref7.schema,
|
175
|
+
history = _ref7.history,
|
176
|
+
_ref7$dependecys = _ref7.dependecys,
|
177
|
+
dependecys = _ref7$dependecys === void 0 ? {} : _ref7$dependecys;
|
152
178
|
var baseSchema = getBaseSchema(schema);
|
153
179
|
var _getFieldConfigInZodS = getFieldConfigInZodStack(schema),
|
154
180
|
fieldType = _getFieldConfigInZodS.fieldType,
|
@@ -170,7 +196,12 @@ function parseField(name, schema, history, dependecys) {
|
|
170
196
|
}
|
171
197
|
// Arrays and objects
|
172
198
|
var getSubSchema = typeMapping[baseSchema._def.typeName];
|
173
|
-
var subSchema = getSubSchema == null ? void 0 : getSubSchema(
|
199
|
+
var subSchema = getSubSchema == null ? void 0 : getSubSchema({
|
200
|
+
name: name,
|
201
|
+
schema: baseSchema,
|
202
|
+
history: history,
|
203
|
+
dependecys: dependecys
|
204
|
+
});
|
174
205
|
if (baseSchema._def.typeName === 'ZodArray') {
|
175
206
|
var _baseSchema$_def$minL, _baseSchema$_def$maxL;
|
176
207
|
fieldConfig = _extends({
|
@@ -178,10 +209,12 @@ function parseField(name, schema, history, dependecys) {
|
|
178
209
|
max: (_baseSchema$_def$maxL = baseSchema._def.maxLength) == null ? void 0 : _baseSchema$_def$maxL.value
|
179
210
|
}, fieldConfig);
|
180
211
|
}
|
212
|
+
var historyFormat = history ? [history] : [];
|
213
|
+
historyFormat.push(name);
|
181
214
|
var resp = {
|
182
215
|
name: {
|
183
216
|
current: name,
|
184
|
-
history:
|
217
|
+
history: historyFormat.join('.')
|
185
218
|
},
|
186
219
|
type: type,
|
187
220
|
required: !schema.isOptional(),
|
@@ -206,10 +239,14 @@ var parseSchema = function parseSchema(S) {
|
|
206
239
|
var objectSchema = S instanceof zod.z.ZodEffects ? S.innerType() : S;
|
207
240
|
var shape = objectSchema.shape;
|
208
241
|
var dependecys = objectSchema._def.fieldConfig;
|
209
|
-
var fields = Object.fromEntries(Object.entries(shape).map(function (
|
210
|
-
var key =
|
211
|
-
field =
|
212
|
-
return [key, parseField(
|
242
|
+
var fields = Object.fromEntries(Object.entries(shape).map(function (_ref8) {
|
243
|
+
var key = _ref8[0],
|
244
|
+
field = _ref8[1];
|
245
|
+
return [key, parseField({
|
246
|
+
name: key,
|
247
|
+
schema: field,
|
248
|
+
dependecys: dependecys
|
249
|
+
})];
|
213
250
|
}));
|
214
251
|
return {
|
215
252
|
fields: fields
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"react-resolver-zod.cjs.development.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/element.tsx","../src/provider.tsx"],"sourcesContent":["import { createContext } from 'use-context-selector';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema instanceof z.ZodDefault) {\n return schema._def.defaultValue();\n }\n\n if (schema instanceof z.ZodEffects) {\n return getDefaultValueInZodStack(schema.innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import { z } from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<AdditionalRenderable = null, FieldTypes = string>(\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ): this;\n }\n}\n\nexport const extendZodWithFieldConfig = <AdditionalRenderable = null, FieldTypes = string>(\n zod: typeof z,\n) => {\n (zod.ZodType.prototype as any).fieldConfig = function (\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ) {\n this._def.fieldConfig = config;\n return this;\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\nconst typeMapping = {\n ZodDiscriminatedUnion(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n const { optionsMap, discriminator, fieldConfig } = baseSchema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n return parseField(\n key,\n field as z.ZodTypeAny,\n [history, name].join('.'),\n dependecys,\n );\n });\n\n fields.unshift({\n name: {\n current: discriminator,\n history: [history, name, discriminator].join('.'),\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n return Object.entries((baseSchema as any).shape).map(([key, field]) =>\n parseField(key, field as z.ZodTypeAny, [history, name].join('.'), dependecys),\n );\n },\n\n ZodArray(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n return [parseField('0', baseSchema._def.type, [history, name].join('.'), dependecys)];\n },\n};\n\nfunction parseField(\n name: string,\n schema: z.ZodTypeAny,\n history: string = '',\n dependecys: Record<string, any> = {},\n): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n // Arrays and objects\n const getSubSchema = typeMapping[baseSchema._def.typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.(baseSchema, name, history, dependecys);\n\n if (baseSchema._def.typeName === 'ZodArray') {\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n }\n\n const resp = {\n name: { current: name, history: [history, name].join('.') },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\n\n const fields = Object.fromEntries(\n Object.entries(shape).map(([key, field]) => [\n key,\n parseField(key, field as z.ZodTypeAny, '', dependecys),\n ]),\n );\n\n return { fields };\n};\n","import { useMemo } from 'react';\nimport { useContext } from 'use-context-selector';\nimport { ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data =\n | Zod.AnyZodObject\n | Zod.ZodEffects<Zod.AnyZodObject>\n | Zod.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const useSchema = (cbP: (dp: DP, preData?: Data) => Data, dp: DP) => {\n const schema = useMemo(() => cbP(dp).fieldConfig(dp), [dp]);\n\n return { schema };\n};\n","import { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from './useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const inputs = Object.values(field.schema || {});\n\n const id = useId();\n\n return (\n <>\n {inputs.map((props) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n","import { FC, memo, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = memo(({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n});\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","z","ZodDefault","_def","defaultValue","ZodEffects","innerType","undefined","getDefaultValues","objectSchema","shape","defaultValues","_i","_Object$entries","Object","entries","length","_Object$entries$_i","key","field","FIELD_CONFIG_SYMBOL","Symbol","extendZodWithFieldConfig","zod","ZodType","prototype","fieldConfig","config","createZodSchemaFieldConfig","refinementFunction","getFieldConfigInZodStack","inferFieldType","fieldType","type","typeName","zodToInputType","Map","match","get","typeMapping","ZodDiscriminatedUnion","baseSchema","name","history","dependecys","_baseSchema$_def","optionsMap","discriminator","keys","optionKey","option","fields","filter","_ref","map","_ref2","parseField","join","unshift","current","required","options","Array","from","String","ZodObject","_ref3","ZodArray","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def$minL","_baseSchema$_def$maxL","_extends","min","minLength","max","maxLength","resp","isOptional","description","parseSchema","S","fromEntries","_ref4","useSchemaBase","useContext","useFields","_parseSchema","useSchema","cbP","dp","useMemo","FormInstantElement","inputs","id","useId","_jsx","props","_props$name","Fragment","children","ElementMapping","formProps","FormInstantProvider","memo","Provider"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"react-resolver-zod.cjs.development.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/element.tsx","../src/provider.tsx"],"sourcesContent":["import { createContext } from 'use-context-selector';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema instanceof z.ZodDefault) {\n return schema._def.defaultValue();\n }\n\n if (schema instanceof z.ZodEffects) {\n return getDefaultValueInZodStack(schema.innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import { z } from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<AdditionalRenderable = null, FieldTypes = string>(\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ): this;\n }\n}\n\nexport const extendZodWithFieldConfig = <AdditionalRenderable = null, FieldTypes = string>(\n zod: typeof z,\n) => {\n (zod.ZodType.prototype as any).fieldConfig = function (\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ) {\n this._def.fieldConfig = config;\n return this;\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\ninterface typeMapping {\n schema: z.ZodTypeAny;\n name: string;\n history?: string;\n dependecys: Record<string, any>;\n}\n\ntype typeMappingType = Record<\n 'ZodDiscriminatedUnion' | 'ZodObject' | 'ZodArray',\n (p: typeMapping) => ParsedField<any, string>[]\n>;\n\nconst typeMapping: typeMappingType = {\n ZodDiscriminatedUnion({ schema, name, history, dependecys }) {\n const { optionsMap, discriminator, fieldConfig } = schema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: [history, name].join('.'),\n dependecys,\n });\n });\n\n fields.unshift({\n name: {\n current: discriminator,\n history: [history, name, discriminator].join('.'),\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject({ schema, name, history, dependecys }) {\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: [history, name].join('.'),\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: [history, name].join('.'),\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({ name, schema, history, dependecys = {} }: typeMapping): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n // Arrays and objects\n const getSubSchema = typeMapping[baseSchema._def.typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (baseSchema._def.typeName === 'ZodArray') {\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n }\n\n const historyFormat = history ? [history] : [];\n\n historyFormat.push(name);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat.join('.'),\n },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\n\n const fields = Object.fromEntries(\n Object.entries(shape).map(([key, field]) => [\n key,\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n dependecys,\n }),\n ]),\n );\n\n return { fields };\n};\n","import { useMemo } from 'react';\nimport { useContext } from 'use-context-selector';\nimport { ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data =\n | Zod.AnyZodObject\n | Zod.ZodEffects<Zod.AnyZodObject>\n | Zod.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const useSchema = (cbP: (dp: DP, preData?: Data) => Data, dp: DP) => {\n const schema = useMemo(() => cbP(dp).fieldConfig(dp), [dp]);\n\n return { schema };\n};\n","import { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from './useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const inputs = Object.values(field.schema || {});\n\n const id = useId();\n\n return (\n <>\n {inputs.map((props) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n","import { FC, memo, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = memo(({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n});\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","z","ZodDefault","_def","defaultValue","ZodEffects","innerType","undefined","getDefaultValues","objectSchema","shape","defaultValues","_i","_Object$entries","Object","entries","length","_Object$entries$_i","key","field","FIELD_CONFIG_SYMBOL","Symbol","extendZodWithFieldConfig","zod","ZodType","prototype","fieldConfig","config","createZodSchemaFieldConfig","refinementFunction","getFieldConfigInZodStack","inferFieldType","fieldType","type","typeName","zodToInputType","Map","match","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","keys","optionKey","option","fields","filter","_ref2","map","_ref3","parseField","join","unshift","current","required","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def$minL","_baseSchema$_def$maxL","_extends","min","minLength","max","maxLength","historyFormat","push","resp","isOptional","description","parseSchema","S","fromEntries","_ref8","useSchemaBase","useContext","useFields","_parseSchema","useSchema","cbP","dp","useMemo","FormInstantElement","inputs","id","useId","_jsx","props","_props$name","Fragment","children","ElementMapping","formProps","FormInstantProvider","memo","Provider"],"mappings":"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"}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
"use strict";var e=require("use-context-selector"),n=require("react/jsx-runtime"),r=require("@form-instant/react-input-mapping"),t=require("react"),i=require("zod"),o=e.createContext({});function a(){return a=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var t in r)({}).hasOwnProperty.call(r,t)&&(e[t]=r[t])}return e},a.apply(null,arguments)}function
|
1
|
+
"use strict";var e=require("use-context-selector"),n=require("react/jsx-runtime"),r=require("@form-instant/react-input-mapping"),t=require("react"),i=require("zod"),o=e.createContext({});function a(){return a=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var t in r)({}).hasOwnProperty.call(r,t)&&(e[t]=r[t])}return e},a.apply(null,arguments)}function s(e){return e instanceof i.z.ZodDefault?e._def.defaultValue():e instanceof i.z.ZodEffects?s(e.innerType()):void 0}var f=Symbol("GetFieldConfig");function d(e){return e._def.fieldConfig?e._def.fieldConfig:"innerType"in e._def?d(e._def.innerType):"schema"in e._def?d(e._def.schema):{}}function u(e,n){if(n)return n;var r=e._def.typeName;return new Map([["ZodObject","object"],["ZodString","string"],["ZodNumber","number"],["ZodBoolean","boolean"],["ZodDate","date"],["ZodEnum","select"],["ZodNativeEnum","select"],["ZodArray","array"]]).get(r)||"string"}var c=["fieldType"],p={ZodDiscriminatedUnion:function(e){var n=e.name,r=e.history,t=e.dependecys,i=e.schema._def,o=i.optionsMap,a=i.discriminator,s=i.fieldConfig;if(!Object.keys(t).length)return[{}];var f=t[a],d=o.get(f);if(!d)return[{}];var u=Object.entries(d.shape).filter((function(e){return e[0]!==a})).map((function(e){return l({name:e[0],schema:e[1],history:[r,n].join("."),dependecys:t})}));return u.unshift({name:{current:a,history:[r,n,a].join(".")},type:"discriminator",required:!0,default:f,fieldConfig:s,options:Array.from(o.keys()).map((function(e){return[String(e),String(e)]}))}),u},ZodObject:function(e){var n=e.name,r=e.history,t=e.dependecys;return Object.entries(e.schema.shape).map((function(e){return l({name:e[0],schema:e[1],history:[r,n].join("."),dependecys:t})}))},ZodArray:function(e){var n=e.dependecys;return[l({name:"0",schema:e.schema._def.type,history:[e.history,e.name].join("."),dependecys:n})]}};function l(e){var n=e.name,r=e.schema,t=e.history,i=e.dependecys,o=void 0===i?{}:i,f=m(r),l=d(r),h=l.fieldType,y=function(e,n){if(null==e)return{};var r={};for(var t in e)if({}.hasOwnProperty.call(e,t)){if(n.includes(t))continue;r[t]=e[t]}return r}(l,c),v=u(f,h),g=s(r),x=y,j=f._def.values,_=[];j&&(_=Array.isArray(j)?j.map((function(e){return[e,e]})):Object.entries(j));var Z,b,C=p[f._def.typeName],O=null==C?void 0:C({name:n,schema:f,history:t,dependecys:o});"ZodArray"===f._def.typeName&&(x=a({min:(null==(Z=f._def.minLength)?void 0:Z.value)||1,max:null==(b=f._def.maxLength)?void 0:b.value},x));var F=t?[t]:[];return F.push(n),{name:{current:n,history:F.join(".")},type:v,required:!r.isOptional(),default:g,fieldConfig:x,options:_,schema:O,description:f.description}}function m(e){return"innerType"in e._def?m(e._def.innerType):"schema"in e._def?m(e._def.schema):e}var h=function(e){var n=e instanceof i.z.ZodEffects?e.innerType():e,r=n._def.fieldConfig;return{fields:Object.fromEntries(Object.entries(n.shape).map((function(e){var n=e[0];return[n,l({name:n,schema:e[1],dependecys:r})]})))}},y=function(n){var r=e.useContext(o);return h(r).fields[n]},v=t.memo((function(e){return n.jsx(o.Provider,{value:e.schema,children:e.children})}));exports.FIELD_CONFIG_SYMBOL=f,exports.FormInstantElement=function(e){var i=y(e.name),o=Object.values(i.schema||{}),a=t.useId();return n.jsx(n.Fragment,{children:o.map((function(e){var i;return n.jsx(t.Fragment,{children:n.jsx(r.ElementMapping,{formProps:e})},a+"-"+((null==(i=e.name)?void 0:i.history)||""))}))})},exports.FormInstantProvider=v,exports.ZodResolverContext=o,exports.createZodSchemaFieldConfig=function(){return function(e){var n=function(){};return n[f]=e,n}},exports.extendZodWithFieldConfig=function(e){e.ZodType.prototype.fieldConfig=function(e){return this._def.fieldConfig=e,this}},exports.getDefaultValueInZodStack=s,exports.getDefaultValues=function(e){for(var n=e instanceof i.z.ZodEffects?e.innerType():e,r={},t=0,o=Object.entries(n.shape);t<o.length;t++){var a=o[t],f=a[0],d=s(a[1]);void 0!==d&&(r[f]=d)}return r},exports.getFieldConfigInZodStack=d,exports.inferFieldType=u,exports.parseSchema=h,exports.useFields=y,exports.useSchema=function(e,n){return{schema:t.useMemo((function(){return e(n).fieldConfig(n)}),[n])}};
|
2
2
|
//# sourceMappingURL=react-resolver-zod.cjs.production.min.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"react-resolver-zod.cjs.production.min.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/provider.tsx","../src/element.tsx"],"sourcesContent":["import { createContext } from 'use-context-selector';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema instanceof z.ZodDefault) {\n return schema._def.defaultValue();\n }\n\n if (schema instanceof z.ZodEffects) {\n return getDefaultValueInZodStack(schema.innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import { z } from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<AdditionalRenderable = null, FieldTypes = string>(\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ): this;\n }\n}\n\nexport const extendZodWithFieldConfig = <AdditionalRenderable = null, FieldTypes = string>(\n zod: typeof z,\n) => {\n (zod.ZodType.prototype as any).fieldConfig = function (\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ) {\n this._def.fieldConfig = config;\n return this;\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\nconst typeMapping = {\n ZodDiscriminatedUnion(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n const { optionsMap, discriminator, fieldConfig } = baseSchema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n return parseField(\n key,\n field as z.ZodTypeAny,\n [history, name].join('.'),\n dependecys,\n );\n });\n\n fields.unshift({\n name: {\n current: discriminator,\n history: [history, name, discriminator].join('.'),\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n return Object.entries((baseSchema as any).shape).map(([key, field]) =>\n parseField(key, field as z.ZodTypeAny, [history, name].join('.'), dependecys),\n );\n },\n\n ZodArray(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n return [parseField('0', baseSchema._def.type, [history, name].join('.'), dependecys)];\n },\n};\n\nfunction parseField(\n name: string,\n schema: z.ZodTypeAny,\n history: string = '',\n dependecys: Record<string, any> = {},\n): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n // Arrays and objects\n const getSubSchema = typeMapping[baseSchema._def.typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.(baseSchema, name, history, dependecys);\n\n if (baseSchema._def.typeName === 'ZodArray') {\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n }\n\n const resp = {\n name: { current: name, history: [history, name].join('.') },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\n\n const fields = Object.fromEntries(\n Object.entries(shape).map(([key, field]) => [\n key,\n parseField(key, field as z.ZodTypeAny, '', dependecys),\n ]),\n );\n\n return { fields };\n};\n","import { useMemo } from 'react';\nimport { useContext } from 'use-context-selector';\nimport { ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data =\n | Zod.AnyZodObject\n | Zod.ZodEffects<Zod.AnyZodObject>\n | Zod.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const useSchema = (cbP: (dp: DP, preData?: Data) => Data, dp: DP) => {\n const schema = useMemo(() => cbP(dp).fieldConfig(dp), [dp]);\n\n return { schema };\n};\n","import { FC, memo, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = memo(({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n});\n","import { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from './useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const inputs = Object.values(field.schema || {});\n\n const id = useId();\n\n return (\n <>\n {inputs.map((props) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","z","ZodDefault","_def","defaultValue","ZodEffects","innerType","FIELD_CONFIG_SYMBOL","Symbol","getFieldConfigInZodStack","fieldConfig","inferFieldType","fieldType","type","typeName","Map","get","typeMapping","ZodDiscriminatedUnion","baseSchema","name","history","dependecys","_baseSchema$_def","optionsMap","discriminator","Object","keys","length","optionKey","option","fields","entries","shape","filter","_ref","map","_ref2","parseField","join","unshift","current","required","default","options","Array","from","key","String","ZodObject","_ref3","ZodArray","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","_baseSchema$_def$minL","_baseSchema$_def$maxL","getSubSchema","subSchema","_extends","min","minLength","max","maxLength","isOptional","description","parseSchema","S","objectSchema","fromEntries","_ref4","useFields","useContext","FormInstantProvider","memo","_jsx","jsx","Provider","children","field","inputs","id","useId","props","_props$name","Fragment","ElementMapping","formProps","config","refinementFunction","zod","ZodType","prototype","this","defaultValues","_i","_Object$entries","_Object$entries$_i","undefined","cbP","dp","useMemo"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"react-resolver-zod.cjs.production.min.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/provider.tsx","../src/element.tsx"],"sourcesContent":["import { createContext } from 'use-context-selector';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema instanceof z.ZodDefault) {\n return schema._def.defaultValue();\n }\n\n if (schema instanceof z.ZodEffects) {\n return getDefaultValueInZodStack(schema.innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import { z } from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<AdditionalRenderable = null, FieldTypes = string>(\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ): this;\n }\n}\n\nexport const extendZodWithFieldConfig = <AdditionalRenderable = null, FieldTypes = string>(\n zod: typeof z,\n) => {\n (zod.ZodType.prototype as any).fieldConfig = function (\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ) {\n this._def.fieldConfig = config;\n return this;\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\ninterface typeMapping {\n schema: z.ZodTypeAny;\n name: string;\n history?: string;\n dependecys: Record<string, any>;\n}\n\ntype typeMappingType = Record<\n 'ZodDiscriminatedUnion' | 'ZodObject' | 'ZodArray',\n (p: typeMapping) => ParsedField<any, string>[]\n>;\n\nconst typeMapping: typeMappingType = {\n ZodDiscriminatedUnion({ schema, name, history, dependecys }) {\n const { optionsMap, discriminator, fieldConfig } = schema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: [history, name].join('.'),\n dependecys,\n });\n });\n\n fields.unshift({\n name: {\n current: discriminator,\n history: [history, name, discriminator].join('.'),\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject({ schema, name, history, dependecys }) {\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: [history, name].join('.'),\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: [history, name].join('.'),\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({ name, schema, history, dependecys = {} }: typeMapping): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n // Arrays and objects\n const getSubSchema = typeMapping[baseSchema._def.typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (baseSchema._def.typeName === 'ZodArray') {\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n }\n\n const historyFormat = history ? [history] : [];\n\n historyFormat.push(name);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat.join('.'),\n },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\n\n const fields = Object.fromEntries(\n Object.entries(shape).map(([key, field]) => [\n key,\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n dependecys,\n }),\n ]),\n );\n\n return { fields };\n};\n","import { useMemo } from 'react';\nimport { useContext } from 'use-context-selector';\nimport { ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data =\n | Zod.AnyZodObject\n | Zod.ZodEffects<Zod.AnyZodObject>\n | Zod.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const useSchema = (cbP: (dp: DP, preData?: Data) => Data, dp: DP) => {\n const schema = useMemo(() => cbP(dp).fieldConfig(dp), [dp]);\n\n return { schema };\n};\n","import { FC, memo, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = memo(({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n});\n","import { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from './useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const inputs = Object.values(field.schema || {});\n\n const id = useId();\n\n return (\n <>\n {inputs.map((props) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","z","ZodDefault","_def","defaultValue","ZodEffects","innerType","FIELD_CONFIG_SYMBOL","Symbol","getFieldConfigInZodStack","fieldConfig","inferFieldType","fieldType","type","typeName","Map","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","Object","keys","length","optionKey","option","fields","entries","shape","filter","_ref2","map","_ref3","parseField","join","unshift","current","required","default","options","Array","from","key","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","_baseSchema$_def$minL","_baseSchema$_def$maxL","getSubSchema","subSchema","_extends","min","minLength","max","maxLength","historyFormat","push","isOptional","description","parseSchema","S","objectSchema","fromEntries","_ref8","useFields","useContext","FormInstantProvider","memo","_jsx","jsx","Provider","children","field","inputs","id","useId","props","_props$name","Fragment","ElementMapping","formProps","config","refinementFunction","zod","ZodType","prototype","this","defaultValues","_i","_Object$entries","_Object$entries$_i","undefined","cbP","dp","useMemo"],"mappings":"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"}
|
@@ -96,23 +96,32 @@ function inferFieldType(schema, fieldType) {
|
|
96
96
|
|
97
97
|
var _excluded = ["fieldType"];
|
98
98
|
var typeMapping = {
|
99
|
-
ZodDiscriminatedUnion: function ZodDiscriminatedUnion(
|
100
|
-
var
|
101
|
-
|
102
|
-
|
103
|
-
|
99
|
+
ZodDiscriminatedUnion: function ZodDiscriminatedUnion(_ref) {
|
100
|
+
var schema = _ref.schema,
|
101
|
+
name = _ref.name,
|
102
|
+
history = _ref.history,
|
103
|
+
dependecys = _ref.dependecys;
|
104
|
+
var _schema$_def = schema._def,
|
105
|
+
optionsMap = _schema$_def.optionsMap,
|
106
|
+
discriminator = _schema$_def.discriminator,
|
107
|
+
fieldConfig = _schema$_def.fieldConfig;
|
104
108
|
if (!Object.keys(dependecys).length) return [{}];
|
105
109
|
var optionKey = dependecys[discriminator];
|
106
110
|
var option = optionsMap.get(optionKey);
|
107
111
|
if (!option) return [{}];
|
108
112
|
var entries = Object.entries(option.shape);
|
109
|
-
var fields = entries.filter(function (
|
110
|
-
var key =
|
113
|
+
var fields = entries.filter(function (_ref2) {
|
114
|
+
var key = _ref2[0];
|
111
115
|
return key !== discriminator;
|
112
|
-
}).map(function (
|
113
|
-
var key =
|
114
|
-
field =
|
115
|
-
return parseField(
|
116
|
+
}).map(function (_ref3) {
|
117
|
+
var key = _ref3[0],
|
118
|
+
field = _ref3[1];
|
119
|
+
return parseField({
|
120
|
+
name: key,
|
121
|
+
schema: field,
|
122
|
+
history: [history, name].join('.'),
|
123
|
+
dependecys: dependecys
|
124
|
+
});
|
116
125
|
});
|
117
126
|
fields.unshift({
|
118
127
|
name: {
|
@@ -129,24 +138,41 @@ var typeMapping = {
|
|
129
138
|
});
|
130
139
|
return fields;
|
131
140
|
},
|
132
|
-
ZodObject: function ZodObject(
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
141
|
+
ZodObject: function ZodObject(_ref4) {
|
142
|
+
var schema = _ref4.schema,
|
143
|
+
name = _ref4.name,
|
144
|
+
history = _ref4.history,
|
145
|
+
dependecys = _ref4.dependecys;
|
146
|
+
return Object.entries(schema.shape).map(function (_ref5) {
|
147
|
+
var key = _ref5[0],
|
148
|
+
field = _ref5[1];
|
149
|
+
return parseField({
|
150
|
+
name: key,
|
151
|
+
schema: field,
|
152
|
+
history: [history, name].join('.'),
|
153
|
+
dependecys: dependecys
|
154
|
+
});
|
137
155
|
});
|
138
156
|
},
|
139
|
-
ZodArray: function ZodArray(
|
140
|
-
|
157
|
+
ZodArray: function ZodArray(_ref6) {
|
158
|
+
var schema = _ref6.schema,
|
159
|
+
name = _ref6.name,
|
160
|
+
history = _ref6.history,
|
161
|
+
dependecys = _ref6.dependecys;
|
162
|
+
return [parseField({
|
163
|
+
name: '0',
|
164
|
+
schema: schema._def.type,
|
165
|
+
history: [history, name].join('.'),
|
166
|
+
dependecys: dependecys
|
167
|
+
})];
|
141
168
|
}
|
142
169
|
};
|
143
|
-
function parseField(
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
dependecys = {};
|
149
|
-
}
|
170
|
+
function parseField(_ref7) {
|
171
|
+
var name = _ref7.name,
|
172
|
+
schema = _ref7.schema,
|
173
|
+
history = _ref7.history,
|
174
|
+
_ref7$dependecys = _ref7.dependecys,
|
175
|
+
dependecys = _ref7$dependecys === void 0 ? {} : _ref7$dependecys;
|
150
176
|
var baseSchema = getBaseSchema(schema);
|
151
177
|
var _getFieldConfigInZodS = getFieldConfigInZodStack(schema),
|
152
178
|
fieldType = _getFieldConfigInZodS.fieldType,
|
@@ -168,7 +194,12 @@ function parseField(name, schema, history, dependecys) {
|
|
168
194
|
}
|
169
195
|
// Arrays and objects
|
170
196
|
var getSubSchema = typeMapping[baseSchema._def.typeName];
|
171
|
-
var subSchema = getSubSchema == null ? void 0 : getSubSchema(
|
197
|
+
var subSchema = getSubSchema == null ? void 0 : getSubSchema({
|
198
|
+
name: name,
|
199
|
+
schema: baseSchema,
|
200
|
+
history: history,
|
201
|
+
dependecys: dependecys
|
202
|
+
});
|
172
203
|
if (baseSchema._def.typeName === 'ZodArray') {
|
173
204
|
var _baseSchema$_def$minL, _baseSchema$_def$maxL;
|
174
205
|
fieldConfig = _extends({
|
@@ -176,10 +207,12 @@ function parseField(name, schema, history, dependecys) {
|
|
176
207
|
max: (_baseSchema$_def$maxL = baseSchema._def.maxLength) == null ? void 0 : _baseSchema$_def$maxL.value
|
177
208
|
}, fieldConfig);
|
178
209
|
}
|
210
|
+
var historyFormat = history ? [history] : [];
|
211
|
+
historyFormat.push(name);
|
179
212
|
var resp = {
|
180
213
|
name: {
|
181
214
|
current: name,
|
182
|
-
history:
|
215
|
+
history: historyFormat.join('.')
|
183
216
|
},
|
184
217
|
type: type,
|
185
218
|
required: !schema.isOptional(),
|
@@ -204,10 +237,14 @@ var parseSchema = function parseSchema(S) {
|
|
204
237
|
var objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;
|
205
238
|
var shape = objectSchema.shape;
|
206
239
|
var dependecys = objectSchema._def.fieldConfig;
|
207
|
-
var fields = Object.fromEntries(Object.entries(shape).map(function (
|
208
|
-
var key =
|
209
|
-
field =
|
210
|
-
return [key, parseField(
|
240
|
+
var fields = Object.fromEntries(Object.entries(shape).map(function (_ref8) {
|
241
|
+
var key = _ref8[0],
|
242
|
+
field = _ref8[1];
|
243
|
+
return [key, parseField({
|
244
|
+
name: key,
|
245
|
+
schema: field,
|
246
|
+
dependecys: dependecys
|
247
|
+
})];
|
211
248
|
}));
|
212
249
|
return {
|
213
250
|
fields: fields
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"react-resolver-zod.esm.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/element.tsx","../src/provider.tsx"],"sourcesContent":["import { createContext } from 'use-context-selector';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema instanceof z.ZodDefault) {\n return schema._def.defaultValue();\n }\n\n if (schema instanceof z.ZodEffects) {\n return getDefaultValueInZodStack(schema.innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import { z } from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<AdditionalRenderable = null, FieldTypes = string>(\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ): this;\n }\n}\n\nexport const extendZodWithFieldConfig = <AdditionalRenderable = null, FieldTypes = string>(\n zod: typeof z,\n) => {\n (zod.ZodType.prototype as any).fieldConfig = function (\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ) {\n this._def.fieldConfig = config;\n return this;\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\nconst typeMapping = {\n ZodDiscriminatedUnion(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n const { optionsMap, discriminator, fieldConfig } = baseSchema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n return parseField(\n key,\n field as z.ZodTypeAny,\n [history, name].join('.'),\n dependecys,\n );\n });\n\n fields.unshift({\n name: {\n current: discriminator,\n history: [history, name, discriminator].join('.'),\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n return Object.entries((baseSchema as any).shape).map(([key, field]) =>\n parseField(key, field as z.ZodTypeAny, [history, name].join('.'), dependecys),\n );\n },\n\n ZodArray(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n return [parseField('0', baseSchema._def.type, [history, name].join('.'), dependecys)];\n },\n};\n\nfunction parseField(\n name: string,\n schema: z.ZodTypeAny,\n history: string = '',\n dependecys: Record<string, any> = {},\n): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n // Arrays and objects\n const getSubSchema = typeMapping[baseSchema._def.typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.(baseSchema, name, history, dependecys);\n\n if (baseSchema._def.typeName === 'ZodArray') {\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n }\n\n const resp = {\n name: { current: name, history: [history, name].join('.') },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\n\n const fields = Object.fromEntries(\n Object.entries(shape).map(([key, field]) => [\n key,\n parseField(key, field as z.ZodTypeAny, '', dependecys),\n ]),\n );\n\n return { fields };\n};\n","import { useMemo } from 'react';\nimport { useContext } from 'use-context-selector';\nimport { ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data =\n | Zod.AnyZodObject\n | Zod.ZodEffects<Zod.AnyZodObject>\n | Zod.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const useSchema = (cbP: (dp: DP, preData?: Data) => Data, dp: DP) => {\n const schema = useMemo(() => cbP(dp).fieldConfig(dp), [dp]);\n\n return { schema };\n};\n","import { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from './useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const inputs = Object.values(field.schema || {});\n\n const id = useId();\n\n return (\n <>\n {inputs.map((props) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n","import { FC, memo, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = memo(({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n});\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","z","ZodDefault","_def","defaultValue","ZodEffects","innerType","undefined","getDefaultValues","objectSchema","shape","defaultValues","_i","_Object$entries","Object","entries","length","_Object$entries$_i","key","field","FIELD_CONFIG_SYMBOL","Symbol","extendZodWithFieldConfig","zod","ZodType","prototype","fieldConfig","config","createZodSchemaFieldConfig","refinementFunction","getFieldConfigInZodStack","inferFieldType","fieldType","type","typeName","zodToInputType","Map","match","get","typeMapping","ZodDiscriminatedUnion","baseSchema","name","history","dependecys","_baseSchema$_def","optionsMap","discriminator","keys","optionKey","option","fields","filter","_ref","map","_ref2","parseField","join","unshift","current","required","options","Array","from","String","ZodObject","_ref3","ZodArray","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def$minL","_baseSchema$_def$maxL","_extends","min","minLength","max","maxLength","resp","isOptional","description","parseSchema","S","fromEntries","_ref4","useSchemaBase","useContext","useFields","_parseSchema","useSchema","cbP","dp","useMemo","FormInstantElement","inputs","id","useId","_jsx","props","_props$name","Fragment","children","ElementMapping","formProps","FormInstantProvider","memo","Provider"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"react-resolver-zod.esm.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/element.tsx","../src/provider.tsx"],"sourcesContent":["import { createContext } from 'use-context-selector';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema instanceof z.ZodDefault) {\n return schema._def.defaultValue();\n }\n\n if (schema instanceof z.ZodEffects) {\n return getDefaultValueInZodStack(schema.innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import { z } from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<AdditionalRenderable = null, FieldTypes = string>(\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ): this;\n }\n}\n\nexport const extendZodWithFieldConfig = <AdditionalRenderable = null, FieldTypes = string>(\n zod: typeof z,\n) => {\n (zod.ZodType.prototype as any).fieldConfig = function (\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ) {\n this._def.fieldConfig = config;\n return this;\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\ninterface typeMapping {\n schema: z.ZodTypeAny;\n name: string;\n history?: string;\n dependecys: Record<string, any>;\n}\n\ntype typeMappingType = Record<\n 'ZodDiscriminatedUnion' | 'ZodObject' | 'ZodArray',\n (p: typeMapping) => ParsedField<any, string>[]\n>;\n\nconst typeMapping: typeMappingType = {\n ZodDiscriminatedUnion({ schema, name, history, dependecys }) {\n const { optionsMap, discriminator, fieldConfig } = schema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: [history, name].join('.'),\n dependecys,\n });\n });\n\n fields.unshift({\n name: {\n current: discriminator,\n history: [history, name, discriminator].join('.'),\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject({ schema, name, history, dependecys }) {\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: [history, name].join('.'),\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: [history, name].join('.'),\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({ name, schema, history, dependecys = {} }: typeMapping): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n // Arrays and objects\n const getSubSchema = typeMapping[baseSchema._def.typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (baseSchema._def.typeName === 'ZodArray') {\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n }\n\n const historyFormat = history ? [history] : [];\n\n historyFormat.push(name);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat.join('.'),\n },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\n\n const fields = Object.fromEntries(\n Object.entries(shape).map(([key, field]) => [\n key,\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n dependecys,\n }),\n ]),\n );\n\n return { fields };\n};\n","import { useMemo } from 'react';\nimport { useContext } from 'use-context-selector';\nimport { ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data =\n | Zod.AnyZodObject\n | Zod.ZodEffects<Zod.AnyZodObject>\n | Zod.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const useSchema = (cbP: (dp: DP, preData?: Data) => Data, dp: DP) => {\n const schema = useMemo(() => cbP(dp).fieldConfig(dp), [dp]);\n\n return { schema };\n};\n","import { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from './useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const inputs = Object.values(field.schema || {});\n\n const id = useId();\n\n return (\n <>\n {inputs.map((props) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n","import { FC, memo, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = memo(({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n});\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","z","ZodDefault","_def","defaultValue","ZodEffects","innerType","undefined","getDefaultValues","objectSchema","shape","defaultValues","_i","_Object$entries","Object","entries","length","_Object$entries$_i","key","field","FIELD_CONFIG_SYMBOL","Symbol","extendZodWithFieldConfig","zod","ZodType","prototype","fieldConfig","config","createZodSchemaFieldConfig","refinementFunction","getFieldConfigInZodStack","inferFieldType","fieldType","type","typeName","zodToInputType","Map","match","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","keys","optionKey","option","fields","filter","_ref2","map","_ref3","parseField","join","unshift","current","required","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def$minL","_baseSchema$_def$maxL","_extends","min","minLength","max","maxLength","historyFormat","push","resp","isOptional","description","parseSchema","S","fromEntries","_ref8","useSchemaBase","useContext","useFields","_parseSchema","useSchema","cbP","dp","useMemo","FormInstantElement","inputs","id","useId","_jsx","props","_props$name","Fragment","children","ElementMapping","formProps","FormInstantProvider","memo","Provider"],"mappings":";;;;;;IAGaA,kBAAkB,gBAAGC,aAAa,CAAmB,EAAsB;;;;;;;;;;;;;;;;;;;;;ACAlF,SAAUC,yBAAyBA,CAACC,MAAoB,EAAA;AAC1D,EAAA,IAAIA,MAAM,YAAYC,CAAC,CAACC,UAAU,EAAE;AAChC,IAAA,OAAOF,MAAM,CAACG,IAAI,CAACC,YAAY,EAAE,CAAA;AACpC,GAAA;AAED,EAAA,IAAIJ,MAAM,YAAYC,CAAC,CAACI,UAAU,EAAE;AAChC,IAAA,OAAON,yBAAyB,CAACC,MAAM,CAACM,SAAS,EAAE,CAAC,CAAA;AACvD,GAAA;AAED,EAAA,OAAOC,SAAS,CAAA;AACpB,CAAA;AAEM,SAAUC,gBAAgBA,CAACR,MAA0B,EAAA;AACvD,EAAA,IAAMS,YAAY,GAAGT,MAAM,YAAYC,CAAC,CAACI,UAAU,GAAGL,MAAM,CAACM,SAAS,EAAE,GAAGN,MAAM,CAAA;AACjF,EAAA,IAAMU,KAAK,GAAGD,YAAY,CAACC,KAAK,CAAA;EAEhC,IAAMC,aAAa,GAAwB,EAAE,CAAA;AAE7C,EAAA,KAAA,IAAAC,EAAA,GAAAC,CAAAA,EAAAA,eAAA,GAA2BC,MAAM,CAACC,OAAO,CAACL,KAAK,CAAC,EAAAE,EAAA,GAAAC,eAAA,CAAAG,MAAA,EAAAJ,EAAA,EAAE,EAAA;AAA7C,IAAA,IAAAK,kBAAA,GAAAJ,eAAA,CAAAD,EAAA,CAAA;AAAOM,MAAAA,GAAG,GAAAD,kBAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,KAAK,GAAAF,kBAAA,CAAA,CAAA,CAAA,CAAA;AAClB,IAAA,IAAMb,YAAY,GAAGL,yBAAyB,CAACoB,KAAqB,CAAC,CAAA;IACrE,IAAIf,YAAY,KAAKG,SAAS,EAAE;AAC5BI,MAAAA,aAAa,CAACO,GAAG,CAAC,GAAGd,YAAY,CAAA;AACpC,KAAA;AACJ,GAAA;AAED,EAAA,OAAOO,aAAa,CAAA;AACxB;;IC3BaS,mBAAmB,gBAAGC,MAAM,CAAC,gBAAgB,EAAC;IAU9CC,wBAAwB,GAAG,SAA3BA,wBAAwBA,CACjCC,GAAa,EACb;EACCA,GAAG,CAACC,OAAO,CAACC,SAAiB,CAACC,WAAW,GAAG,UACzCC,MAAqD,EAAA;AAErD,IAAA,IAAI,CAACxB,IAAI,CAACuB,WAAW,GAAGC,MAAM,CAAA;AAC9B,IAAA,OAAO,IAAI,CAAA;GACd,CAAA;AACL,EAAC;AAEYC,IAAAA,0BAA0B,GACnC,SADSA,0BAA0BA,GAAA;EAAA,OAEnC,UAACD,MAAqD,EAAyB;AAC3E,IAAA,IAAME,kBAAkB,GAAwB,SAA1CA,kBAAkBA,GAA6B;AACjD;KACH,CAAA;AAED;AACAA,IAAAA,kBAAkB,CAACT,mBAAmB,CAAC,GAAGO,MAAM,CAAA;AAEhD,IAAA,OAAOE,kBAAkB,CAAA;GAC5B,CAAA;AAAA,EAAA;AAEC,SAAUC,wBAAwBA,CAAC9B,MAAoB,EAAA;AACzD;AACA,EAAA,IAAIA,MAAM,CAACG,IAAI,CAACuB,WAAW,EAAE;AACzB,IAAA,OAAO1B,MAAM,CAACG,IAAI,CAACuB,WAA0B,CAAA;AAChD,GAAA;AAED;AACA,EAAA,IAAI,WAAW,IAAI1B,MAAM,CAACG,IAAI,EAAE;AAC5B,IAAA,OAAO2B,wBAAwB,CAAC9B,MAAM,CAACG,IAAI,CAACG,SAAqB,CAAC,CAAA;AACrE,GAAA;AAED;AACA,EAAA,IAAI,QAAQ,IAAIN,MAAM,CAACG,IAAI,EAAE;AACzB,IAAA,OAAO2B,wBAAwB,CAAC9B,MAAM,CAACG,IAAI,CAACH,MAAkB,CAAC,CAAA;AAClE,GAAA;AAED;AACA,EAAA,OAAO,EAAiB,CAAA;AAC5B;;ACnDgB,SAAA+B,cAAcA,CAAC/B,MAAoB,EAAEgC,SAAoC,EAAA;AACrF,EAAA,IAAIA,SAAS,EAAE;AACX,IAAA,OAAOA,SAAS,CAAA;AACnB,GAAA;AAED,EAAA,IAAMC,IAAI,GAAGjC,MAAM,CAACG,IAAI,CAAC+B,QAAQ,CAAA;EAEjC,IAAMC,cAAc,GAAG,IAAIC,GAAG,CAAC,CAC3B,CAAC,WAAW,EAAE,QAAQ,CAAC,EACvB,CAAC,WAAW,EAAE,QAAQ,CAAC,EACvB,CAAC,WAAW,EAAE,QAAQ,CAAC,EACvB,CAAC,YAAY,EAAE,SAAS,CAAC,EACzB,CAAC,SAAS,EAAE,MAAM,CAAC,EACnB,CAAC,SAAS,EAAE,QAAQ,CAAC,EACrB,CAAC,eAAe,EAAE,QAAQ,CAAC,EAC3B,CAAC,UAAU,EAAE,OAAO,CAAC,CACxB,CAAC,CAAA;AAEF,EAAA,IAAMC,KAAK,GAAGF,cAAc,CAACG,GAAG,CAACL,IAAI,CAAC,CAAA;AAEtC,EAAA,OAAOI,KAAK,IAAI,QAAQ,CAAC;AAC7B;;;ACLA,IAAME,WAAW,GAAoB;AACjCC,EAAAA,qBAAqB,EAArBA,SAAAA,qBAAqBA,CAAAC,IAAA,EAAsC;AAAA,IAAA,IAAnCzC,MAAM,GAAAyC,IAAA,CAANzC,MAAM;MAAE0C,IAAI,GAAAD,IAAA,CAAJC,IAAI;MAAEC,OAAO,GAAAF,IAAA,CAAPE,OAAO;MAAEC,UAAU,GAAAH,IAAA,CAAVG,UAAU,CAAA;AACrD,IAAA,IAAAC,YAAA,GAAmD7C,MAAM,CAACG,IAAI;MAAtD2C,UAAU,GAAAD,YAAA,CAAVC,UAAU;MAAEC,aAAa,GAAAF,YAAA,CAAbE,aAAa;MAAErB,WAAW,GAAAmB,YAAA,CAAXnB,WAAW,CAAA;AAE9C,IAAA,IAAI,CAACZ,MAAM,CAACkC,IAAI,CAACJ,UAAU,CAAC,CAAC5B,MAAM,EAAE,OAAO,CAAC,EAAE,CAA+B,CAAA;AAE9E,IAAA,IAAMiC,SAAS,GAAGL,UAAU,CAACG,aAAa,CAAC,CAAA;AAC3C,IAAA,IAAMG,MAAM,GAAGJ,UAAU,CAACR,GAAG,CAACW,SAAS,CAAC,CAAA;AAExC,IAAA,IAAI,CAACC,MAAM,EAAE,OAAO,CAAC,EAAE,CAA+B,CAAA;IAEtD,IAAMnC,OAAO,GAAGD,MAAM,CAACC,OAAO,CAACmC,MAAM,CAACxC,KAAK,CAAC,CAAA;AAE5C,IAAA,IAAMyC,MAAM,GAAGpC,OAAO,CACjBqC,MAAM,CAAC,UAAAC,KAAA,EAAA;MAAA,IAAEnC,GAAG,GAAAmC,KAAA,CAAA,CAAA,CAAA,CAAA;MAAA,OAAMnC,GAAG,KAAK6B,aAAa,CAAA;AAAA,KAAA,CAAC,CACxCO,GAAG,CAAC,UAAAC,KAAA,EAAiB;MAAA,IAAfrC,GAAG,GAAAqC,KAAA,CAAA,CAAA,CAAA;AAAEpC,QAAAA,KAAK,GAAAoC,KAAA,CAAA,CAAA,CAAA,CAAA;AACb,MAAA,OAAOC,UAAU,CAAC;AACdd,QAAAA,IAAI,EAAExB,GAAG;AACTlB,QAAAA,MAAM,EAAEmB,KAAqB;QAC7BwB,OAAO,EAAE,CAACA,OAAO,EAAED,IAAI,CAAC,CAACe,IAAI,CAAC,GAAG,CAAC;AAClCb,QAAAA,UAAU,EAAVA,UAAAA;AACH,OAAA,CAAC,CAAA;AACN,KAAC,CAAC,CAAA;IAENO,MAAM,CAACO,OAAO,CAAC;AACXhB,MAAAA,IAAI,EAAE;AACFiB,QAAAA,OAAO,EAAEZ,aAAa;QACtBJ,OAAO,EAAE,CAACA,OAAO,EAAED,IAAI,EAAEK,aAAa,CAAC,CAACU,IAAI,CAAC,GAAG,CAAA;OACnD;AACDxB,MAAAA,IAAI,EAAE,eAAe;AACrB2B,MAAAA,QAAQ,EAAE,IAAI;AACd,MAAA,SAAA,EAASX,SAAS;AAClBvB,MAAAA,WAAW,EAAXA,WAAW;AACXmC,MAAAA,OAAO,EAAEC,KAAK,CAACC,IAAI,CAACjB,UAAU,CAACE,IAAI,EAAE,CAAC,CAACM,GAAG,CAAC,UAACpC,GAAG,EAAA;QAAA,OAAK,CAAC8C,MAAM,CAAC9C,GAAG,CAAC,EAAE8C,MAAM,CAAC9C,GAAG,CAAC,CAAC,CAAA;AAAA,OAAA,CAAA;AACjF,KAAA,CAAC,CAAA;AAEF,IAAA,OAAOiC,MAAM,CAAA;GAChB;AAEDc,EAAAA,SAAS,EAATA,SAAAA,SAASA,CAAAC,KAAA,EAAsC;AAAA,IAAA,IAAnClE,MAAM,GAAAkE,KAAA,CAANlE,MAAM;MAAE0C,IAAI,GAAAwB,KAAA,CAAJxB,IAAI;MAAEC,OAAO,GAAAuB,KAAA,CAAPvB,OAAO;MAAEC,UAAU,GAAAsB,KAAA,CAAVtB,UAAU,CAAA;AACzC,IAAA,OAAO9B,MAAM,CAACC,OAAO,CAAEf,MAAc,CAACU,KAAK,CAAC,CAAC4C,GAAG,CAAC,UAAAa,KAAA,EAAA;MAAA,IAAEjD,GAAG,GAAAiD,KAAA,CAAA,CAAA,CAAA;AAAEhD,QAAAA,KAAK,GAAAgD,KAAA,CAAA,CAAA,CAAA,CAAA;AAAA,MAAA,OACzDX,UAAU,CAAC;AACPd,QAAAA,IAAI,EAAExB,GAAG;AACTlB,QAAAA,MAAM,EAAEmB,KAAqB;QAC7BwB,OAAO,EAAE,CAACA,OAAO,EAAED,IAAI,CAAC,CAACe,IAAI,CAAC,GAAG,CAAC;AAClCb,QAAAA,UAAU,EAAVA,UAAAA;AACH,OAAA,CAAC,CAAA;KACL,CAAA,CAAA;GACJ;AAEDwB,EAAAA,QAAQ,EAARA,SAAAA,QAAQA,CAAAC,KAAA,EAAsC;AAAA,IAAA,IAAnCrE,MAAM,GAAAqE,KAAA,CAANrE,MAAM;MAAE0C,IAAI,GAAA2B,KAAA,CAAJ3B,IAAI;MAAEC,OAAO,GAAA0B,KAAA,CAAP1B,OAAO;MAAEC,UAAU,GAAAyB,KAAA,CAAVzB,UAAU,CAAA;IACxC,OAAO,CACHY,UAAU,CAAC;AACPd,MAAAA,IAAI,EAAE,GAAG;AACT1C,MAAAA,MAAM,EAAEA,MAAM,CAACG,IAAI,CAAC8B,IAAI;MACxBU,OAAO,EAAE,CAACA,OAAO,EAAED,IAAI,CAAC,CAACe,IAAI,CAAC,GAAG,CAAC;AAClCb,MAAAA,UAAU,EAAVA,UAAAA;KACH,CAAC,CACL,CAAA;AACL,GAAA;CACH,CAAA;AAED,SAASY,UAAUA,CAAAc,KAAA,EAAwD;AAAA,EAAA,IAArD5B,IAAI,GAAA4B,KAAA,CAAJ5B,IAAI;IAAE1C,MAAM,GAAAsE,KAAA,CAANtE,MAAM;IAAE2C,OAAO,GAAA2B,KAAA,CAAP3B,OAAO;IAAA4B,gBAAA,GAAAD,KAAA,CAAE1B,UAAU;AAAVA,IAAAA,UAAU,GAAA2B,gBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,gBAAA,CAAA;AACxD,EAAA,IAAMC,UAAU,GAAGC,aAAa,CAACzE,MAAM,CAAC,CAAA;AACxC,EAAA,IAAA0E,qBAAA,GAA0C5C,wBAAwB,CAAC9B,MAAM,CAAC;IAAlEgC,SAAS,GAAA0C,qBAAA,CAAT1C,SAAS;AAAK2C,IAAAA,eAAe,GAAAC,6BAAA,CAAAF,qBAAA,EAAAG,SAAA,CAAA,CAAA;AACrC,EAAA,IAAM5C,IAAI,GAAGF,cAAc,CAACyC,UAAU,EAAExC,SAAS,CAAC,CAAA;AAClD,EAAA,IAAM5B,YAAY,GAAGL,yBAAyB,CAACC,MAAM,CAAC,CAAA;EAEtD,IAAI0B,WAAW,GAAGiD,eAAe,CAAA;AAEjC;AACA,EAAA,IAAMd,OAAO,GAAGW,UAAU,CAACrE,IAAI,CAAC2E,MAAM,CAAA;EACtC,IAAIC,YAAY,GAAuB,EAAE,CAAA;AACzC,EAAA,IAAIlB,OAAO,EAAE;AACT,IAAA,IAAI,CAACC,KAAK,CAACkB,OAAO,CAACnB,OAAO,CAAC,EAAE;AACzBkB,MAAAA,YAAY,GAAGjE,MAAM,CAACC,OAAO,CAAC8C,OAAO,CAAC,CAAA;AACzC,KAAA,MAAM;AACHkB,MAAAA,YAAY,GAAGlB,OAAO,CAACP,GAAG,CAAC,UAAC2B,KAAK,EAAA;AAAA,QAAA,OAAK,CAACA,KAAK,EAAEA,KAAK,CAAC,CAAA;OAAC,CAAA,CAAA;AACxD,KAAA;AACJ,GAAA;AAED;EACA,IAAMC,YAAY,GAAG3C,WAAW,CAACiC,UAAU,CAACrE,IAAI,CAAC+B,QAAoC,CAAC,CAAA;AAEtF,EAAA,IAAMiD,SAAS,GAAGD,YAAY,IAAA,IAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAG;AAC7BxC,IAAAA,IAAI,EAAJA,IAAI;AACJ1C,IAAAA,MAAM,EAAEwE,UAAU;AAClB7B,IAAAA,OAAO,EAAPA,OAAO;AACPC,IAAAA,UAAU,EAAVA,UAAAA;AACH,GAAA,CAAC,CAAA;AAEF,EAAA,IAAI4B,UAAU,CAACrE,IAAI,CAAC+B,QAAQ,KAAK,UAAU,EAAE;IAAA,IAAAkD,qBAAA,EAAAC,qBAAA,CAAA;AACzC3D,IAAAA,WAAW,GAAA4D,QAAA,CAAA;AACPC,MAAAA,GAAG,EAAE,CAAA,CAAAH,qBAAA,GAAAZ,UAAU,CAACrE,IAAI,CAACqF,SAAS,KAAzBJ,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAA2BH,KAAK,KAAI,CAAC;MAC1CQ,GAAG,EAAA,CAAAJ,qBAAA,GAAEb,UAAU,CAACrE,IAAI,CAACuF,SAAS,KAAzBL,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAA2BJ,KAAAA;AAAK,KAAA,EAClCvD,WAAW,CACjB,CAAA;AACJ,GAAA;EAED,IAAMiE,aAAa,GAAGhD,OAAO,GAAG,CAACA,OAAO,CAAC,GAAG,EAAE,CAAA;AAE9CgD,EAAAA,aAAa,CAACC,IAAI,CAAClD,IAAI,CAAC,CAAA;AAExB,EAAA,IAAMmD,IAAI,GAAG;AACTnD,IAAAA,IAAI,EAAE;AACFiB,MAAAA,OAAO,EAAEjB,IAAI;AACbC,MAAAA,OAAO,EAAEgD,aAAa,CAAClC,IAAI,CAAC,GAAG,CAAA;KAClC;AACDxB,IAAAA,IAAI,EAAJA,IAAI;AACJ2B,IAAAA,QAAQ,EAAE,CAAC5D,MAAM,CAAC8F,UAAU,EAAE;AAC9B,IAAA,SAAA,EAAS1F,YAAY;AACrBsB,IAAAA,WAAW,EAAXA,WAAW;AACXmC,IAAAA,OAAO,EAAEkB,YAAY;AACrB/E,IAAAA,MAAM,EAAEmF,SAAS;IACjBY,WAAW,EAAEvB,UAAU,CAACuB,WAAAA;GAC3B,CAAA;AAED,EAAA,OAAOF,IAAI,CAAA;AACf,CAAA;AAEA,SAASpB,aAAaA,CAClBzE,MAA2C,EAAA;AAE3C,EAAA,IAAI,WAAW,IAAIA,MAAM,CAACG,IAAI,EAAE;AAC5B,IAAA,OAAOsE,aAAa,CAACzE,MAAM,CAACG,IAAI,CAACG,SAAsB,CAAC,CAAA;AAC3D,GAAA;AACD,EAAA,IAAI,QAAQ,IAAIN,MAAM,CAACG,IAAI,EAAE;AACzB,IAAA,OAAOsE,aAAa,CAACzE,MAAM,CAACG,IAAI,CAACH,MAAmB,CAAC,CAAA;AACxD,GAAA;AAED,EAAA,OAAOA,MAAmB,CAAA;AAC9B,CAAA;IAEagG,WAAW,GAAG,SAAdA,WAAWA,CAAIC,CAAqB,EAAkB;AAC/D,EAAA,IAAMxF,YAAY,GAAGwF,CAAC,YAAYhG,CAAC,CAACI,UAAU,GAAG4F,CAAC,CAAC3F,SAAS,EAAE,GAAG2F,CAAC,CAAA;AAClE,EAAA,IAAMvF,KAAK,GAAGD,YAAY,CAACC,KAAK,CAAA;AAEhC,EAAA,IAAMkC,UAAU,GAAInC,YAAY,CAACN,IAAY,CAACuB,WAAW,CAAA;AAEzD,EAAA,IAAMyB,MAAM,GAAGrC,MAAM,CAACoF,WAAW,CAC7BpF,MAAM,CAACC,OAAO,CAACL,KAAK,CAAC,CAAC4C,GAAG,CAAC,UAAA6C,KAAA,EAAA;IAAA,IAAEjF,GAAG,GAAAiF,KAAA,CAAA,CAAA,CAAA;AAAEhF,MAAAA,KAAK,GAAAgF,KAAA,CAAA,CAAA,CAAA,CAAA;AAAA,IAAA,OAAM,CACxCjF,GAAG,EACHsC,UAAU,CAAC;AACPd,MAAAA,IAAI,EAAExB,GAAG;AACTlB,MAAAA,MAAM,EAAEmB,KAAqB;AAC7ByB,MAAAA,UAAU,EAAVA,UAAAA;KACH,CAAC,CACL,CAAA;AAAA,GAAA,CAAC,CACL,CAAA;EAED,OAAO;AAAEO,IAAAA,MAAM,EAANA,MAAAA;GAAQ,CAAA;AACrB;;ACpKA,IAAMiD,aAAa,GAAG,SAAhBA,aAAaA,GAAA;EAAA,OACfC,UAAU,CAACxG,kBAAkB,CAAuD,CAAA;AAAA,CAAA,CAAA;IAE3EyG,SAAS,GAAG,SAAZA,SAASA,CAAoCpF,GAAa,EAAI;AACvE,EAAA,IAAM+E,CAAC,GAAGG,aAAa,EAAE,CAAA;AAEzB,EAAA,IAAAG,YAAA,GAAmBP,WAAW,CAACC,CAAC,CAAC;IAAzB9C,MAAM,GAAAoD,YAAA,CAANpD,MAAM,CAAA;EAEd,OAAOA,MAAM,CAACjC,GAAa,CAAC,CAAA;AAChC,EAAC;AASM,IAAMsF,SAAS,GAAG,SAAZA,SAASA,CAAIC,GAAqC,EAAEC,EAAM,EAAI;EACvE,IAAM1G,MAAM,GAAG2G,OAAO,CAAC,YAAA;IAAA,OAAMF,GAAG,CAACC,EAAE,CAAC,CAAChF,WAAW,CAACgF,EAAE,CAAC,CAAA;GAAE,EAAA,CAACA,EAAE,CAAC,CAAC,CAAA;EAE3D,OAAO;AAAE1G,IAAAA,MAAM,EAANA,MAAAA;GAAQ,CAAA;AACrB;;ICpBa4G,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAnE,IAAA,EAAgE;AAAA,EAAA,IAA3BC,IAAI,GAAAD,IAAA,CAAJC,IAAI,CAAA;AACpE,EAAA,IAAMvB,KAAK,GAAGmF,SAAS,CAAC5D,IAAI,CAAC,CAAA;AAE7B,EAAA,IAAMmE,MAAM,GAAG/F,MAAM,CAACgE,MAAM,CAAC3D,KAAK,CAACnB,MAAM,IAAI,EAAE,CAAC,CAAA;AAEhD,EAAA,IAAM8G,EAAE,GAAGC,KAAK,EAAE,CAAA;EAElB,OACIC;cACKH,MAAM,CAACvD,GAAG,CAAC,UAAC2D,KAAK,EAAI;AAAA,MAAA,IAAAC,WAAA,CAAA;MAClB,OACIF,GAAC,CAAAG,UAAQ,EACL;AAAAC,QAAAA,QAAA,EAAAJ,GAAA,CAACK,cAAc,EAAC;AAAAC,UAAAA,SAAS,EAAEL,KAAAA;SAAS,CAAA;AAAA,OAAA,EADtBH,EAAE,GAAA,GAAA,IAAI,CAAAI,CAAAA,WAAA,GAAAD,KAAK,CAACvE,IAAI,KAAA,IAAA,GAAA,KAAA,CAAA,GAAVwE,WAAA,CAAYvE,OAAO,KAAI,EAAE,CAAE,CAExC,CAAA;KAElB,CAAA;AACF,GAAA,CAAA,CAAA;AAEX;;ICvBa4E,mBAAmB,gBAG3BC,IAAI,CAAC,UAAA/E,IAAA,EAAyB;AAAA,EAAA,IAAtB2E,QAAQ,GAAA3E,IAAA,CAAR2E,QAAQ;IAAEpH,MAAM,GAAAyC,IAAA,CAANzC,MAAM,CAAA;AACzB,EAAA,OAAOgH,GAAA,CAACnH,kBAAkB,CAAC4H,QAAQ,EAAA;AAACxC,IAAAA,KAAK,EAAEjF,MAAM;AAAAoH,IAAAA,QAAA,EAAGA,QAAAA;AAAQ,GAAA,CAA+B,CAAA;AAC/F,CAAC;;;;"}
|