@form-instant/react-resolver-zod 1.18.2 → 1.18.4
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 +2 -2
- 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 +2 -2
- package/dist/react-resolver-zod.esm.js.map +1 -1
- package/package.json +1 -1
@@ -343,8 +343,8 @@ var _generateInitialValues = function generateInitialValues(schema, dp) {
|
|
343
343
|
}
|
344
344
|
console.log('initialValues build', initialValues);
|
345
345
|
return initialValues;
|
346
|
-
} catch (
|
347
|
-
console.log('initialValues error');
|
346
|
+
} catch (error) {
|
347
|
+
console.log('initialValues error', error);
|
348
348
|
return {};
|
349
349
|
}
|
350
350
|
};
|
@@ -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, ZodEffects } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema._def.typeName === 'ZodDefault') {\n return schema._def.defaultValue();\n }\n\n if (schema._def.typeName === 'ZodEffects') {\n return getDefaultValueInZodStack((schema as ZodEffects<any>).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 const originalObject = zod.object;\n zod.object = ((...args: [any]) => {\n const schema = originalObject(...args);\n (schema._def as any).default = () => ({});\n return schema;\n }) as any;\n const originalArray = zod.array;\n zod.array = ((...args: [any]) => {\n const schema = originalArray(...args);\n (schema._def as any).default = () => [];\n return schema;\n }) as any;\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 typeMappingProps {\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: typeMappingProps) => 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 let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n });\n });\n\n let historyFormat = (history ? [history, name, discriminator] : [name, discriminator]).join(\n '.',\n );\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n fields.unshift({\n name: {\n current: discriminator,\n history: historyFormat,\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 let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: historyFormat,\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({\n name,\n schema,\n history,\n dependecys = {},\n}: typeMappingProps): 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 const { typeName } = baseSchema._def;\n\n // Arrays and objects\n const getSubSchema = typeMapping[typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (typeName === 'ZodDiscriminatedUnion') {\n const { optionsMap, discriminator } = baseSchema._def;\n\n const optionKey = dependecys[discriminator];\n\n if (optionKey) {\n const option = optionsMap.get(optionKey);\n\n if (option._def.fieldConfig) {\n fieldConfig = {\n ...fieldConfigBase,\n ...option._def.fieldConfig,\n };\n }\n }\n }\n\n if (type === 'array')\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat,\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?.dp || {};\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 { z, 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 generateInitialValues = <S extends Record<string, any>>(schema: Data, dp: DP): S => {\n try {\n const shape = (() => {\n if (schema instanceof z.ZodEffects) return schema.innerType().shape;\n if (schema instanceof z.ZodObject) return schema.shape;\n\n const option = schema._def.optionsMap.get(dp[schema._def.discriminator]);\n\n if (!option) throw new Error('No option found');\n\n return option.shape;\n })();\n\n const initialValues: Record<string, any> = {};\n\n for (const key of Object.keys(shape)) {\n const fieldSchema = shape[key];\n const result = fieldSchema.safeParse(undefined);\n\n // Si tiene valor por defecto\n if (result.success) {\n initialValues[key] = result.data;\n continue;\n }\n\n // Inferir tipo para campos requeridos sin default\n if (fieldSchema instanceof z.ZodString) {\n initialValues[key] = '';\n } else if (fieldSchema instanceof z.ZodNumber) {\n initialValues[key] = 0;\n } else if (fieldSchema instanceof z.ZodBoolean) {\n initialValues[key] = false;\n } else if (fieldSchema instanceof z.ZodDate) {\n initialValues[key] = null;\n } else if (fieldSchema instanceof z.ZodArray) {\n initialValues[key] = [];\n } else if (fieldSchema instanceof z.ZodObject) {\n initialValues[key] = generateInitialValues(fieldSchema, dp);\n } else if (fieldSchema instanceof z.ZodDiscriminatedUnion) {\n const option = fieldSchema._def.optionsMap.get(dp[fieldSchema._def.discriminator]);\n\n if (option) {\n initialValues[key] = generateInitialValues(option, dp);\n } else {\n initialValues[key] = null;\n }\n } else {\n initialValues[key] = null;\n }\n }\n\n console.log('initialValues build', initialValues);\n\n return initialValues as S;\n } catch {\n console.log('initialValues error');\n\n return {} as S;\n }\n};\n\nexport const useSchema = <S extends Record<string, any>>(\n cbP: (dp: DP, preData?: Data) => Data,\n dp: DP,\n) => {\n const schema = useMemo(() => cbP(dp).fieldConfig({ dp, ...cbP(dp).fieldConfig }), [cbP, dp]);\n console.log('schema', schema);\n\n const initialValues = useMemo(() => generateInitialValues(schema, dp) as S, [schema, dp]);\n console.log('initialValues', initialValues);\n\n return { schema, initialValues };\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 id = useId();\n\n if ((field.fieldConfig as any)?.type) return <ElementMapping formProps={field} />;\n\n return (\n <>\n {Object.values(field.schema || {}).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, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\n\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = ({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","_def","typeName","defaultValue","innerType","undefined","getDefaultValues","objectSchema","z","ZodEffects","shape","defaultValues","_i","_Object$entries","Object","entries","length","_Object$entries$_i","key","field","FIELD_CONFIG_SYMBOL","Symbol","extendZodWithFieldConfig","zod","ZodType","prototype","fieldConfig","config","originalObject","object","apply","arguments","originalArray","array","createZodSchemaFieldConfig","refinementFunction","getFieldConfigInZodStack","inferFieldType","fieldType","type","zodToInputType","Map","match","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","keys","optionKey","option","fields","filter","_ref2","map","_ref3","historyFormat","join","charAt","substring","parseField","unshift","current","required","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_baseSchema$_def$minL","_baseSchema$_def$maxL","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def","_extends","min","minLength","max","maxLength","resp","isOptional","description","parseSchema","S","_objectSchema$_def$fi","dp","fromEntries","_ref8","useSchemaBase","useContext","useFields","_parseSchema","generateInitialValues","Error","initialValues","_Object$keys","fieldSchema","result","safeParse","success","data","ZodString","ZodNumber","ZodBoolean","ZodDate","console","log","_unused","useSchema","cbP","useMemo","FormInstantElement","_field$fieldConfig","id","useId","_jsx","ElementMapping","formProps","_Fragment","children","props","_props$name","Fragment","FormInstantProvider","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, ZodEffects } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema._def.typeName === 'ZodDefault') {\n return schema._def.defaultValue();\n }\n\n if (schema._def.typeName === 'ZodEffects') {\n return getDefaultValueInZodStack((schema as ZodEffects<any>).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 const originalObject = zod.object;\n zod.object = ((...args: [any]) => {\n const schema = originalObject(...args);\n (schema._def as any).default = () => ({});\n return schema;\n }) as any;\n const originalArray = zod.array;\n zod.array = ((...args: [any]) => {\n const schema = originalArray(...args);\n (schema._def as any).default = () => [];\n return schema;\n }) as any;\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 typeMappingProps {\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: typeMappingProps) => 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 let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n });\n });\n\n let historyFormat = (history ? [history, name, discriminator] : [name, discriminator]).join(\n '.',\n );\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n fields.unshift({\n name: {\n current: discriminator,\n history: historyFormat,\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 let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: historyFormat,\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({\n name,\n schema,\n history,\n dependecys = {},\n}: typeMappingProps): 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 const { typeName } = baseSchema._def;\n\n // Arrays and objects\n const getSubSchema = typeMapping[typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (typeName === 'ZodDiscriminatedUnion') {\n const { optionsMap, discriminator } = baseSchema._def;\n\n const optionKey = dependecys[discriminator];\n\n if (optionKey) {\n const option = optionsMap.get(optionKey);\n\n if (option._def.fieldConfig) {\n fieldConfig = {\n ...fieldConfigBase,\n ...option._def.fieldConfig,\n };\n }\n }\n }\n\n if (type === 'array')\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat,\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?.dp || {};\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 { z, 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 generateInitialValues = <S extends Record<string, any>>(schema: Data, dp: DP): S => {\n try {\n const shape = (() => {\n if (schema instanceof z.ZodEffects) return schema.innerType().shape;\n if (schema instanceof z.ZodObject) return schema.shape;\n\n const option = schema._def.optionsMap.get(dp[schema._def.discriminator]);\n\n if (!option) throw new Error('No option found');\n\n return option.shape;\n })();\n\n const initialValues: Record<string, any> = {};\n\n for (const key of Object.keys(shape)) {\n const fieldSchema = shape[key];\n const result = fieldSchema.safeParse(undefined);\n\n // Si tiene valor por defecto\n if (result.success) {\n initialValues[key] = result.data;\n continue;\n }\n\n // Inferir tipo para campos requeridos sin default\n if (fieldSchema instanceof z.ZodString) {\n initialValues[key] = '';\n } else if (fieldSchema instanceof z.ZodNumber) {\n initialValues[key] = 0;\n } else if (fieldSchema instanceof z.ZodBoolean) {\n initialValues[key] = false;\n } else if (fieldSchema instanceof z.ZodDate) {\n initialValues[key] = null;\n } else if (fieldSchema instanceof z.ZodArray) {\n initialValues[key] = [];\n } else if (fieldSchema instanceof z.ZodObject) {\n initialValues[key] = generateInitialValues(fieldSchema, dp);\n } else if (fieldSchema instanceof z.ZodDiscriminatedUnion) {\n const option = fieldSchema._def.optionsMap.get(dp[fieldSchema._def.discriminator]);\n\n if (option) {\n initialValues[key] = generateInitialValues(option, dp);\n } else {\n initialValues[key] = null;\n }\n } else {\n initialValues[key] = null;\n }\n }\n\n console.log('initialValues build', initialValues);\n\n return initialValues as S;\n } catch (error) {\n console.log('initialValues error', error);\n\n return {} as S;\n }\n};\n\nexport const useSchema = <S extends Record<string, any>>(\n cbP: (dp: DP, preData?: Data) => Data,\n dp: DP,\n) => {\n const schema = useMemo(() => cbP(dp).fieldConfig({ dp, ...cbP(dp).fieldConfig }), [cbP, dp]);\n console.log('schema', schema);\n\n const initialValues = useMemo(() => generateInitialValues(schema, dp) as S, [schema, dp]);\n console.log('initialValues', initialValues);\n\n return { schema, initialValues };\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 id = useId();\n\n if ((field.fieldConfig as any)?.type) return <ElementMapping formProps={field} />;\n\n return (\n <>\n {Object.values(field.schema || {}).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, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\n\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = ({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","_def","typeName","defaultValue","innerType","undefined","getDefaultValues","objectSchema","z","ZodEffects","shape","defaultValues","_i","_Object$entries","Object","entries","length","_Object$entries$_i","key","field","FIELD_CONFIG_SYMBOL","Symbol","extendZodWithFieldConfig","zod","ZodType","prototype","fieldConfig","config","originalObject","object","apply","arguments","originalArray","array","createZodSchemaFieldConfig","refinementFunction","getFieldConfigInZodStack","inferFieldType","fieldType","type","zodToInputType","Map","match","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","keys","optionKey","option","fields","filter","_ref2","map","_ref3","historyFormat","join","charAt","substring","parseField","unshift","current","required","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_baseSchema$_def$minL","_baseSchema$_def$maxL","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def","_extends","min","minLength","max","maxLength","resp","isOptional","description","parseSchema","S","_objectSchema$_def$fi","dp","fromEntries","_ref8","useSchemaBase","useContext","useFields","_parseSchema","generateInitialValues","Error","initialValues","_Object$keys","fieldSchema","result","safeParse","success","data","ZodString","ZodNumber","ZodBoolean","ZodDate","console","log","error","useSchema","cbP","useMemo","FormInstantElement","_field$fieldConfig","id","useId","_jsx","ElementMapping","formProps","_Fragment","children","props","_props$name","Fragment","FormInstantProvider","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 s(e){return"ZodDefault"===e._def.typeName?e._def.defaultValue():"ZodEffects"===e._def.typeName?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"],l={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){var i=e[0],o=e[1],a=(r?[r,n]:[n]).join(".");return"."===a.charAt(0)&&(a=a.substring(1)),p({name:i,schema:o,history:a,dependecys:t})})),c=(r?[r,n,a]:[n,a]).join(".");return"."===c.charAt(0)&&(c=c.substring(1)),u.unshift({name:{current:a,history:c},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.schema,r=e.name,t=e.history,i=e.dependecys,o=(t?[t,r]:[r]).join(".");return"."===o.charAt(0)&&(o=o.substring(1)),Object.entries(n.shape).map((function(e){return p({name:e[0],schema:e[1],history:o,dependecys:i})}))},ZodArray:function(e){var n=e.schema,r=e.name,t=e.history,i=e.dependecys,o=(t?[t,r]:[r]).join(".");return"."===o.charAt(0)&&(o=o.substring(1)),[p({name:"0",schema:n._def.type,history:o,dependecys:i})]}};function p(e){var n,r,t=e.name,i=e.schema,o=e.history,f=e.dependecys,p=void 0===f?{}:f,h=m(i),y=d(i),v=y.fieldType,g=function(e,n){if(null==e)return{};var r={};for(var t in e)if({}.hasOwnProperty.call(e,t)){if(-1!==n.indexOf(t))continue;r[t]=e[t]}return r}(y,c),_=u(h,v),Z=s(i),b=g,j=h._def.values,x=[];j&&(x=Array.isArray(j)?j.map((function(e){return[e,e]})):Object.entries(j));var C=h._def.typeName,O=l[C],z=null==O?void 0:O({name:t,schema:h,history:o,dependecys:p});if("ZodDiscriminatedUnion"===C){var E=h._def,F=p[E.discriminator];if(F){var T=E.optionsMap.get(F);T._def.fieldConfig&&(b=a({},g,T._def.fieldConfig))}}"array"===_&&(b=a({min:(null==(n=h._def.minLength)?void 0:n.value)||1,max:null==(r=h._def.maxLength)?void 0:r.value},b));var A=(o?[o,t]:[t]).join(".");return"."===A.charAt(0)&&(A=A.substring(1)),{name:{current:t,history:A},type:_,required:!i.isOptional(),default:Z,fieldConfig:b,options:x,schema:z,description:h.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,r=e instanceof i.z.ZodEffects?e.innerType():e,t=(null==(n=r._def.fieldConfig)?void 0:n.dp)||{};return{fields:Object.fromEntries(Object.entries(r.shape).map((function(e){var n=e[0];return[n,p({name:n,schema:e[1],dependecys:t})]})))}},y=function(n){var r=e.useContext(o);return h(r).fields[n]},v=function(e,n){try{for(var r=function(){if(e instanceof i.z.ZodEffects)return e.innerType().shape;if(e instanceof i.z.ZodObject)return e.shape;var r=e._def.optionsMap.get(n[e._def.discriminator]);if(!r)throw new Error("No option found");return r.shape}(),t={},o=0,a=Object.keys(r);o<a.length;o++){var s=a[o],f=r[s],d=f.safeParse(void 0);if(d.success)t[s]=d.data;else if(f instanceof i.z.ZodString)t[s]="";else if(f instanceof i.z.ZodNumber)t[s]=0;else if(f instanceof i.z.ZodBoolean)t[s]=!1;else if(f instanceof i.z.ZodDate)t[s]=null;else if(f instanceof i.z.ZodArray)t[s]=[];else if(f instanceof i.z.ZodObject)t[s]=v(f,n);else if(f instanceof i.z.ZodDiscriminatedUnion){var u=f._def.optionsMap.get(n[f._def.discriminator]);t[s]=u?v(u,n):null}else t[s]=null}return console.log("initialValues build",t),t}catch(e){return console.log("initialValues error"),{}}};exports.FIELD_CONFIG_SYMBOL=f,exports.FormInstantElement=function(e){var i,o=y(e.name),a=t.useId();return null!=(i=o.fieldConfig)&&i.type?n.jsx(r.ElementMapping,{formProps:o}):n.jsx(n.Fragment,{children:Object.values(o.schema||{}).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=function(e){return n.jsx(o.Provider,{value:e.schema,children:e.children})},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};var n=e.object;e.object=function(){var e=n.apply(void 0,arguments);return e._def.default=function(){return{}},e};var r=e.array;e.array=function(){var e=r.apply(void 0,arguments);return e._def.default=function(){return[]},e}},exports.generateInitialValues=v,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){var r=t.useMemo((function(){return e(n).fieldConfig(a({dp:n},e(n).fieldConfig))}),[e,n]);console.log("schema",r);var i=t.useMemo((function(){return v(r,n)}),[r,n]);return console.log("initialValues",i),{schema:r,initialValues:i}};
|
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"ZodDefault"===e._def.typeName?e._def.defaultValue():"ZodEffects"===e._def.typeName?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"],l={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){var i=e[0],o=e[1],a=(r?[r,n]:[n]).join(".");return"."===a.charAt(0)&&(a=a.substring(1)),p({name:i,schema:o,history:a,dependecys:t})})),c=(r?[r,n,a]:[n,a]).join(".");return"."===c.charAt(0)&&(c=c.substring(1)),u.unshift({name:{current:a,history:c},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.schema,r=e.name,t=e.history,i=e.dependecys,o=(t?[t,r]:[r]).join(".");return"."===o.charAt(0)&&(o=o.substring(1)),Object.entries(n.shape).map((function(e){return p({name:e[0],schema:e[1],history:o,dependecys:i})}))},ZodArray:function(e){var n=e.schema,r=e.name,t=e.history,i=e.dependecys,o=(t?[t,r]:[r]).join(".");return"."===o.charAt(0)&&(o=o.substring(1)),[p({name:"0",schema:n._def.type,history:o,dependecys:i})]}};function p(e){var n,r,t=e.name,i=e.schema,o=e.history,f=e.dependecys,p=void 0===f?{}:f,h=m(i),y=d(i),v=y.fieldType,g=function(e,n){if(null==e)return{};var r={};for(var t in e)if({}.hasOwnProperty.call(e,t)){if(-1!==n.indexOf(t))continue;r[t]=e[t]}return r}(y,c),_=u(h,v),Z=s(i),b=g,j=h._def.values,x=[];j&&(x=Array.isArray(j)?j.map((function(e){return[e,e]})):Object.entries(j));var C=h._def.typeName,O=l[C],z=null==O?void 0:O({name:t,schema:h,history:o,dependecys:p});if("ZodDiscriminatedUnion"===C){var E=h._def,F=p[E.discriminator];if(F){var T=E.optionsMap.get(F);T._def.fieldConfig&&(b=a({},g,T._def.fieldConfig))}}"array"===_&&(b=a({min:(null==(n=h._def.minLength)?void 0:n.value)||1,max:null==(r=h._def.maxLength)?void 0:r.value},b));var A=(o?[o,t]:[t]).join(".");return"."===A.charAt(0)&&(A=A.substring(1)),{name:{current:t,history:A},type:_,required:!i.isOptional(),default:Z,fieldConfig:b,options:x,schema:z,description:h.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,r=e instanceof i.z.ZodEffects?e.innerType():e,t=(null==(n=r._def.fieldConfig)?void 0:n.dp)||{};return{fields:Object.fromEntries(Object.entries(r.shape).map((function(e){var n=e[0];return[n,p({name:n,schema:e[1],dependecys:t})]})))}},y=function(n){var r=e.useContext(o);return h(r).fields[n]},v=function(e,n){try{for(var r=function(){if(e instanceof i.z.ZodEffects)return e.innerType().shape;if(e instanceof i.z.ZodObject)return e.shape;var r=e._def.optionsMap.get(n[e._def.discriminator]);if(!r)throw new Error("No option found");return r.shape}(),t={},o=0,a=Object.keys(r);o<a.length;o++){var s=a[o],f=r[s],d=f.safeParse(void 0);if(d.success)t[s]=d.data;else if(f instanceof i.z.ZodString)t[s]="";else if(f instanceof i.z.ZodNumber)t[s]=0;else if(f instanceof i.z.ZodBoolean)t[s]=!1;else if(f instanceof i.z.ZodDate)t[s]=null;else if(f instanceof i.z.ZodArray)t[s]=[];else if(f instanceof i.z.ZodObject)t[s]=v(f,n);else if(f instanceof i.z.ZodDiscriminatedUnion){var u=f._def.optionsMap.get(n[f._def.discriminator]);t[s]=u?v(u,n):null}else t[s]=null}return console.log("initialValues build",t),t}catch(e){return console.log("initialValues error",e),{}}};exports.FIELD_CONFIG_SYMBOL=f,exports.FormInstantElement=function(e){var i,o=y(e.name),a=t.useId();return null!=(i=o.fieldConfig)&&i.type?n.jsx(r.ElementMapping,{formProps:o}):n.jsx(n.Fragment,{children:Object.values(o.schema||{}).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=function(e){return n.jsx(o.Provider,{value:e.schema,children:e.children})},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};var n=e.object;e.object=function(){var e=n.apply(void 0,arguments);return e._def.default=function(){return{}},e};var r=e.array;e.array=function(){var e=r.apply(void 0,arguments);return e._def.default=function(){return[]},e}},exports.generateInitialValues=v,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){var r=t.useMemo((function(){return e(n).fieldConfig(a({dp:n},e(n).fieldConfig))}),[e,n]);console.log("schema",r);var i=t.useMemo((function(){return v(r,n)}),[r,n]);return console.log("initialValues",i),{schema:r,initialValues:i}};
|
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/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, ZodEffects } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema._def.typeName === 'ZodDefault') {\n return schema._def.defaultValue();\n }\n\n if (schema._def.typeName === 'ZodEffects') {\n return getDefaultValueInZodStack((schema as ZodEffects<any>).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 const originalObject = zod.object;\n zod.object = ((...args: [any]) => {\n const schema = originalObject(...args);\n (schema._def as any).default = () => ({});\n return schema;\n }) as any;\n const originalArray = zod.array;\n zod.array = ((...args: [any]) => {\n const schema = originalArray(...args);\n (schema._def as any).default = () => [];\n return schema;\n }) as any;\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 typeMappingProps {\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: typeMappingProps) => 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 let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n });\n });\n\n let historyFormat = (history ? [history, name, discriminator] : [name, discriminator]).join(\n '.',\n );\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n fields.unshift({\n name: {\n current: discriminator,\n history: historyFormat,\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 let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: historyFormat,\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({\n name,\n schema,\n history,\n dependecys = {},\n}: typeMappingProps): 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 const { typeName } = baseSchema._def;\n\n // Arrays and objects\n const getSubSchema = typeMapping[typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (typeName === 'ZodDiscriminatedUnion') {\n const { optionsMap, discriminator } = baseSchema._def;\n\n const optionKey = dependecys[discriminator];\n\n if (optionKey) {\n const option = optionsMap.get(optionKey);\n\n if (option._def.fieldConfig) {\n fieldConfig = {\n ...fieldConfigBase,\n ...option._def.fieldConfig,\n };\n }\n }\n }\n\n if (type === 'array')\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat,\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?.dp || {};\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 { z, 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 generateInitialValues = <S extends Record<string, any>>(schema: Data, dp: DP): S => {\n try {\n const shape = (() => {\n if (schema instanceof z.ZodEffects) return schema.innerType().shape;\n if (schema instanceof z.ZodObject) return schema.shape;\n\n const option = schema._def.optionsMap.get(dp[schema._def.discriminator]);\n\n if (!option) throw new Error('No option found');\n\n return option.shape;\n })();\n\n const initialValues: Record<string, any> = {};\n\n for (const key of Object.keys(shape)) {\n const fieldSchema = shape[key];\n const result = fieldSchema.safeParse(undefined);\n\n // Si tiene valor por defecto\n if (result.success) {\n initialValues[key] = result.data;\n continue;\n }\n\n // Inferir tipo para campos requeridos sin default\n if (fieldSchema instanceof z.ZodString) {\n initialValues[key] = '';\n } else if (fieldSchema instanceof z.ZodNumber) {\n initialValues[key] = 0;\n } else if (fieldSchema instanceof z.ZodBoolean) {\n initialValues[key] = false;\n } else if (fieldSchema instanceof z.ZodDate) {\n initialValues[key] = null;\n } else if (fieldSchema instanceof z.ZodArray) {\n initialValues[key] = [];\n } else if (fieldSchema instanceof z.ZodObject) {\n initialValues[key] = generateInitialValues(fieldSchema, dp);\n } else if (fieldSchema instanceof z.ZodDiscriminatedUnion) {\n const option = fieldSchema._def.optionsMap.get(dp[fieldSchema._def.discriminator]);\n\n if (option) {\n initialValues[key] = generateInitialValues(option, dp);\n } else {\n initialValues[key] = null;\n }\n } else {\n initialValues[key] = null;\n }\n }\n\n console.log('initialValues build', initialValues);\n\n return initialValues as S;\n } catch {\n console.log('initialValues error');\n\n return {} as S;\n }\n};\n\nexport const useSchema = <S extends Record<string, any>>(\n cbP: (dp: DP, preData?: Data) => Data,\n dp: DP,\n) => {\n const schema = useMemo(() => cbP(dp).fieldConfig({ dp, ...cbP(dp).fieldConfig }), [cbP, dp]);\n console.log('schema', schema);\n\n const initialValues = useMemo(() => generateInitialValues(schema, dp) as S, [schema, dp]);\n console.log('initialValues', initialValues);\n\n return { schema, initialValues };\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 id = useId();\n\n if ((field.fieldConfig as any)?.type) return <ElementMapping formProps={field} />;\n\n return (\n <>\n {Object.values(field.schema || {}).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, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\n\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = ({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","_def","typeName","defaultValue","innerType","FIELD_CONFIG_SYMBOL","Symbol","getFieldConfigInZodStack","fieldConfig","inferFieldType","fieldType","type","Map","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","Object","keys","length","optionKey","option","fields","entries","shape","filter","_ref2","map","_ref3","key","field","historyFormat","join","charAt","substring","parseField","unshift","current","required","default","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_baseSchema$_def$minL","_baseSchema$_def$maxL","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def","_extends","min","minLength","max","maxLength","isOptional","description","parseSchema","S","_objectSchema$_def$fi","objectSchema","z","ZodEffects","dp","fromEntries","_ref8","useFields","useContext","generateInitialValues","Error","initialValues","_i","_Object$keys","fieldSchema","result","safeParse","undefined","success","data","ZodString","ZodNumber","ZodBoolean","ZodDate","console","log","_unused","_field$fieldConfig","id","useId","_jsx","ElementMapping","formProps","_Fragment","children","props","_props$name","Fragment","jsx","Provider","config","refinementFunction","zod","ZodType","prototype","this","originalObject","object","apply","arguments","originalArray","array","defaultValues","_Object$entries","_Object$entries$_i","cbP","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/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, ZodEffects } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema._def.typeName === 'ZodDefault') {\n return schema._def.defaultValue();\n }\n\n if (schema._def.typeName === 'ZodEffects') {\n return getDefaultValueInZodStack((schema as ZodEffects<any>).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 const originalObject = zod.object;\n zod.object = ((...args: [any]) => {\n const schema = originalObject(...args);\n (schema._def as any).default = () => ({});\n return schema;\n }) as any;\n const originalArray = zod.array;\n zod.array = ((...args: [any]) => {\n const schema = originalArray(...args);\n (schema._def as any).default = () => [];\n return schema;\n }) as any;\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 typeMappingProps {\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: typeMappingProps) => 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 let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n });\n });\n\n let historyFormat = (history ? [history, name, discriminator] : [name, discriminator]).join(\n '.',\n );\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n fields.unshift({\n name: {\n current: discriminator,\n history: historyFormat,\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 let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: historyFormat,\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({\n name,\n schema,\n history,\n dependecys = {},\n}: typeMappingProps): 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 const { typeName } = baseSchema._def;\n\n // Arrays and objects\n const getSubSchema = typeMapping[typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (typeName === 'ZodDiscriminatedUnion') {\n const { optionsMap, discriminator } = baseSchema._def;\n\n const optionKey = dependecys[discriminator];\n\n if (optionKey) {\n const option = optionsMap.get(optionKey);\n\n if (option._def.fieldConfig) {\n fieldConfig = {\n ...fieldConfigBase,\n ...option._def.fieldConfig,\n };\n }\n }\n }\n\n if (type === 'array')\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat,\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?.dp || {};\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 { z, 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 generateInitialValues = <S extends Record<string, any>>(schema: Data, dp: DP): S => {\n try {\n const shape = (() => {\n if (schema instanceof z.ZodEffects) return schema.innerType().shape;\n if (schema instanceof z.ZodObject) return schema.shape;\n\n const option = schema._def.optionsMap.get(dp[schema._def.discriminator]);\n\n if (!option) throw new Error('No option found');\n\n return option.shape;\n })();\n\n const initialValues: Record<string, any> = {};\n\n for (const key of Object.keys(shape)) {\n const fieldSchema = shape[key];\n const result = fieldSchema.safeParse(undefined);\n\n // Si tiene valor por defecto\n if (result.success) {\n initialValues[key] = result.data;\n continue;\n }\n\n // Inferir tipo para campos requeridos sin default\n if (fieldSchema instanceof z.ZodString) {\n initialValues[key] = '';\n } else if (fieldSchema instanceof z.ZodNumber) {\n initialValues[key] = 0;\n } else if (fieldSchema instanceof z.ZodBoolean) {\n initialValues[key] = false;\n } else if (fieldSchema instanceof z.ZodDate) {\n initialValues[key] = null;\n } else if (fieldSchema instanceof z.ZodArray) {\n initialValues[key] = [];\n } else if (fieldSchema instanceof z.ZodObject) {\n initialValues[key] = generateInitialValues(fieldSchema, dp);\n } else if (fieldSchema instanceof z.ZodDiscriminatedUnion) {\n const option = fieldSchema._def.optionsMap.get(dp[fieldSchema._def.discriminator]);\n\n if (option) {\n initialValues[key] = generateInitialValues(option, dp);\n } else {\n initialValues[key] = null;\n }\n } else {\n initialValues[key] = null;\n }\n }\n\n console.log('initialValues build', initialValues);\n\n return initialValues as S;\n } catch (error) {\n console.log('initialValues error', error);\n\n return {} as S;\n }\n};\n\nexport const useSchema = <S extends Record<string, any>>(\n cbP: (dp: DP, preData?: Data) => Data,\n dp: DP,\n) => {\n const schema = useMemo(() => cbP(dp).fieldConfig({ dp, ...cbP(dp).fieldConfig }), [cbP, dp]);\n console.log('schema', schema);\n\n const initialValues = useMemo(() => generateInitialValues(schema, dp) as S, [schema, dp]);\n console.log('initialValues', initialValues);\n\n return { schema, initialValues };\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 id = useId();\n\n if ((field.fieldConfig as any)?.type) return <ElementMapping formProps={field} />;\n\n return (\n <>\n {Object.values(field.schema || {}).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, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\n\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = ({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","_def","typeName","defaultValue","innerType","FIELD_CONFIG_SYMBOL","Symbol","getFieldConfigInZodStack","fieldConfig","inferFieldType","fieldType","type","Map","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","Object","keys","length","optionKey","option","fields","entries","shape","filter","_ref2","map","_ref3","key","field","historyFormat","join","charAt","substring","parseField","unshift","current","required","default","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_baseSchema$_def$minL","_baseSchema$_def$maxL","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def","_extends","min","minLength","max","maxLength","isOptional","description","parseSchema","S","_objectSchema$_def$fi","objectSchema","z","ZodEffects","dp","fromEntries","_ref8","useFields","useContext","generateInitialValues","Error","initialValues","_i","_Object$keys","fieldSchema","result","safeParse","undefined","success","data","ZodString","ZodNumber","ZodBoolean","ZodDate","console","log","error","_field$fieldConfig","id","useId","_jsx","ElementMapping","formProps","_Fragment","children","props","_props$name","Fragment","jsx","Provider","config","refinementFunction","zod","ZodType","prototype","this","originalObject","object","apply","arguments","originalArray","array","defaultValues","_Object$entries","_Object$entries$_i","cbP","useMemo"],"mappings":"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"}
|
@@ -341,8 +341,8 @@ var _generateInitialValues = function generateInitialValues(schema, dp) {
|
|
341
341
|
}
|
342
342
|
console.log('initialValues build', initialValues);
|
343
343
|
return initialValues;
|
344
|
-
} catch (
|
345
|
-
console.log('initialValues error');
|
344
|
+
} catch (error) {
|
345
|
+
console.log('initialValues error', error);
|
346
346
|
return {};
|
347
347
|
}
|
348
348
|
};
|
@@ -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, ZodEffects } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema._def.typeName === 'ZodDefault') {\n return schema._def.defaultValue();\n }\n\n if (schema._def.typeName === 'ZodEffects') {\n return getDefaultValueInZodStack((schema as ZodEffects<any>).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 const originalObject = zod.object;\n zod.object = ((...args: [any]) => {\n const schema = originalObject(...args);\n (schema._def as any).default = () => ({});\n return schema;\n }) as any;\n const originalArray = zod.array;\n zod.array = ((...args: [any]) => {\n const schema = originalArray(...args);\n (schema._def as any).default = () => [];\n return schema;\n }) as any;\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 typeMappingProps {\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: typeMappingProps) => 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 let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n });\n });\n\n let historyFormat = (history ? [history, name, discriminator] : [name, discriminator]).join(\n '.',\n );\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n fields.unshift({\n name: {\n current: discriminator,\n history: historyFormat,\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 let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: historyFormat,\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({\n name,\n schema,\n history,\n dependecys = {},\n}: typeMappingProps): 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 const { typeName } = baseSchema._def;\n\n // Arrays and objects\n const getSubSchema = typeMapping[typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (typeName === 'ZodDiscriminatedUnion') {\n const { optionsMap, discriminator } = baseSchema._def;\n\n const optionKey = dependecys[discriminator];\n\n if (optionKey) {\n const option = optionsMap.get(optionKey);\n\n if (option._def.fieldConfig) {\n fieldConfig = {\n ...fieldConfigBase,\n ...option._def.fieldConfig,\n };\n }\n }\n }\n\n if (type === 'array')\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat,\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?.dp || {};\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 { z, 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 generateInitialValues = <S extends Record<string, any>>(schema: Data, dp: DP): S => {\n try {\n const shape = (() => {\n if (schema instanceof z.ZodEffects) return schema.innerType().shape;\n if (schema instanceof z.ZodObject) return schema.shape;\n\n const option = schema._def.optionsMap.get(dp[schema._def.discriminator]);\n\n if (!option) throw new Error('No option found');\n\n return option.shape;\n })();\n\n const initialValues: Record<string, any> = {};\n\n for (const key of Object.keys(shape)) {\n const fieldSchema = shape[key];\n const result = fieldSchema.safeParse(undefined);\n\n // Si tiene valor por defecto\n if (result.success) {\n initialValues[key] = result.data;\n continue;\n }\n\n // Inferir tipo para campos requeridos sin default\n if (fieldSchema instanceof z.ZodString) {\n initialValues[key] = '';\n } else if (fieldSchema instanceof z.ZodNumber) {\n initialValues[key] = 0;\n } else if (fieldSchema instanceof z.ZodBoolean) {\n initialValues[key] = false;\n } else if (fieldSchema instanceof z.ZodDate) {\n initialValues[key] = null;\n } else if (fieldSchema instanceof z.ZodArray) {\n initialValues[key] = [];\n } else if (fieldSchema instanceof z.ZodObject) {\n initialValues[key] = generateInitialValues(fieldSchema, dp);\n } else if (fieldSchema instanceof z.ZodDiscriminatedUnion) {\n const option = fieldSchema._def.optionsMap.get(dp[fieldSchema._def.discriminator]);\n\n if (option) {\n initialValues[key] = generateInitialValues(option, dp);\n } else {\n initialValues[key] = null;\n }\n } else {\n initialValues[key] = null;\n }\n }\n\n console.log('initialValues build', initialValues);\n\n return initialValues as S;\n } catch {\n console.log('initialValues error');\n\n return {} as S;\n }\n};\n\nexport const useSchema = <S extends Record<string, any>>(\n cbP: (dp: DP, preData?: Data) => Data,\n dp: DP,\n) => {\n const schema = useMemo(() => cbP(dp).fieldConfig({ dp, ...cbP(dp).fieldConfig }), [cbP, dp]);\n console.log('schema', schema);\n\n const initialValues = useMemo(() => generateInitialValues(schema, dp) as S, [schema, dp]);\n console.log('initialValues', initialValues);\n\n return { schema, initialValues };\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 id = useId();\n\n if ((field.fieldConfig as any)?.type) return <ElementMapping formProps={field} />;\n\n return (\n <>\n {Object.values(field.schema || {}).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, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\n\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = ({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","_def","typeName","defaultValue","innerType","undefined","getDefaultValues","objectSchema","z","ZodEffects","shape","defaultValues","_i","_Object$entries","Object","entries","length","_Object$entries$_i","key","field","FIELD_CONFIG_SYMBOL","Symbol","extendZodWithFieldConfig","zod","ZodType","prototype","fieldConfig","config","originalObject","object","apply","arguments","originalArray","array","createZodSchemaFieldConfig","refinementFunction","getFieldConfigInZodStack","inferFieldType","fieldType","type","zodToInputType","Map","match","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","keys","optionKey","option","fields","filter","_ref2","map","_ref3","historyFormat","join","charAt","substring","parseField","unshift","current","required","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_baseSchema$_def$minL","_baseSchema$_def$maxL","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def","_extends","min","minLength","max","maxLength","resp","isOptional","description","parseSchema","S","_objectSchema$_def$fi","dp","fromEntries","_ref8","useSchemaBase","useContext","useFields","_parseSchema","generateInitialValues","Error","initialValues","_Object$keys","fieldSchema","result","safeParse","success","data","ZodString","ZodNumber","ZodBoolean","ZodDate","console","log","_unused","useSchema","cbP","useMemo","FormInstantElement","_field$fieldConfig","id","useId","_jsx","ElementMapping","formProps","_Fragment","children","props","_props$name","Fragment","FormInstantProvider","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, ZodEffects } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema._def.typeName === 'ZodDefault') {\n return schema._def.defaultValue();\n }\n\n if (schema._def.typeName === 'ZodEffects') {\n return getDefaultValueInZodStack((schema as ZodEffects<any>).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 const originalObject = zod.object;\n zod.object = ((...args: [any]) => {\n const schema = originalObject(...args);\n (schema._def as any).default = () => ({});\n return schema;\n }) as any;\n const originalArray = zod.array;\n zod.array = ((...args: [any]) => {\n const schema = originalArray(...args);\n (schema._def as any).default = () => [];\n return schema;\n }) as any;\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 typeMappingProps {\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: typeMappingProps) => 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 let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n });\n });\n\n let historyFormat = (history ? [history, name, discriminator] : [name, discriminator]).join(\n '.',\n );\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n fields.unshift({\n name: {\n current: discriminator,\n history: historyFormat,\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 let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: historyFormat,\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({\n name,\n schema,\n history,\n dependecys = {},\n}: typeMappingProps): 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 const { typeName } = baseSchema._def;\n\n // Arrays and objects\n const getSubSchema = typeMapping[typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (typeName === 'ZodDiscriminatedUnion') {\n const { optionsMap, discriminator } = baseSchema._def;\n\n const optionKey = dependecys[discriminator];\n\n if (optionKey) {\n const option = optionsMap.get(optionKey);\n\n if (option._def.fieldConfig) {\n fieldConfig = {\n ...fieldConfigBase,\n ...option._def.fieldConfig,\n };\n }\n }\n }\n\n if (type === 'array')\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat,\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?.dp || {};\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 { z, 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 generateInitialValues = <S extends Record<string, any>>(schema: Data, dp: DP): S => {\n try {\n const shape = (() => {\n if (schema instanceof z.ZodEffects) return schema.innerType().shape;\n if (schema instanceof z.ZodObject) return schema.shape;\n\n const option = schema._def.optionsMap.get(dp[schema._def.discriminator]);\n\n if (!option) throw new Error('No option found');\n\n return option.shape;\n })();\n\n const initialValues: Record<string, any> = {};\n\n for (const key of Object.keys(shape)) {\n const fieldSchema = shape[key];\n const result = fieldSchema.safeParse(undefined);\n\n // Si tiene valor por defecto\n if (result.success) {\n initialValues[key] = result.data;\n continue;\n }\n\n // Inferir tipo para campos requeridos sin default\n if (fieldSchema instanceof z.ZodString) {\n initialValues[key] = '';\n } else if (fieldSchema instanceof z.ZodNumber) {\n initialValues[key] = 0;\n } else if (fieldSchema instanceof z.ZodBoolean) {\n initialValues[key] = false;\n } else if (fieldSchema instanceof z.ZodDate) {\n initialValues[key] = null;\n } else if (fieldSchema instanceof z.ZodArray) {\n initialValues[key] = [];\n } else if (fieldSchema instanceof z.ZodObject) {\n initialValues[key] = generateInitialValues(fieldSchema, dp);\n } else if (fieldSchema instanceof z.ZodDiscriminatedUnion) {\n const option = fieldSchema._def.optionsMap.get(dp[fieldSchema._def.discriminator]);\n\n if (option) {\n initialValues[key] = generateInitialValues(option, dp);\n } else {\n initialValues[key] = null;\n }\n } else {\n initialValues[key] = null;\n }\n }\n\n console.log('initialValues build', initialValues);\n\n return initialValues as S;\n } catch (error) {\n console.log('initialValues error', error);\n\n return {} as S;\n }\n};\n\nexport const useSchema = <S extends Record<string, any>>(\n cbP: (dp: DP, preData?: Data) => Data,\n dp: DP,\n) => {\n const schema = useMemo(() => cbP(dp).fieldConfig({ dp, ...cbP(dp).fieldConfig }), [cbP, dp]);\n console.log('schema', schema);\n\n const initialValues = useMemo(() => generateInitialValues(schema, dp) as S, [schema, dp]);\n console.log('initialValues', initialValues);\n\n return { schema, initialValues };\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 id = useId();\n\n if ((field.fieldConfig as any)?.type) return <ElementMapping formProps={field} />;\n\n return (\n <>\n {Object.values(field.schema || {}).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, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\n\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = ({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","_def","typeName","defaultValue","innerType","undefined","getDefaultValues","objectSchema","z","ZodEffects","shape","defaultValues","_i","_Object$entries","Object","entries","length","_Object$entries$_i","key","field","FIELD_CONFIG_SYMBOL","Symbol","extendZodWithFieldConfig","zod","ZodType","prototype","fieldConfig","config","originalObject","object","apply","arguments","originalArray","array","createZodSchemaFieldConfig","refinementFunction","getFieldConfigInZodStack","inferFieldType","fieldType","type","zodToInputType","Map","match","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","keys","optionKey","option","fields","filter","_ref2","map","_ref3","historyFormat","join","charAt","substring","parseField","unshift","current","required","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_baseSchema$_def$minL","_baseSchema$_def$maxL","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def","_extends","min","minLength","max","maxLength","resp","isOptional","description","parseSchema","S","_objectSchema$_def$fi","dp","fromEntries","_ref8","useSchemaBase","useContext","useFields","_parseSchema","generateInitialValues","Error","initialValues","_Object$keys","fieldSchema","result","safeParse","success","data","ZodString","ZodNumber","ZodBoolean","ZodDate","console","log","error","useSchema","cbP","useMemo","FormInstantElement","_field$fieldConfig","id","useId","_jsx","ElementMapping","formProps","_Fragment","children","props","_props$name","Fragment","FormInstantProvider","Provider"],"mappings":"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"}
|