@form-instant/react-resolver-zod 1.5.2 → 1.5.7
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 +66 -31
- package/dist/react-resolver-zod.cjs.development.js.map +1 -1
- package/dist/react-resolver-zod.cjs.production.min.js +1 -1
- package/dist/react-resolver-zod.cjs.production.min.js.map +1 -1
- package/dist/react-resolver-zod.esm.js +66 -31
- package/dist/react-resolver-zod.esm.js.map +1 -1
- package/package.json +1 -1
@@ -98,23 +98,32 @@ function inferFieldType(schema, fieldType) {
|
|
98
98
|
|
99
99
|
var _excluded = ["fieldType"];
|
100
100
|
var typeMapping = {
|
101
|
-
ZodDiscriminatedUnion: function ZodDiscriminatedUnion(
|
102
|
-
var
|
103
|
-
|
104
|
-
|
105
|
-
|
101
|
+
ZodDiscriminatedUnion: function ZodDiscriminatedUnion(_ref) {
|
102
|
+
var schema = _ref.schema,
|
103
|
+
name = _ref.name,
|
104
|
+
history = _ref.history,
|
105
|
+
dependecys = _ref.dependecys;
|
106
|
+
var _schema$_def = schema._def,
|
107
|
+
optionsMap = _schema$_def.optionsMap,
|
108
|
+
discriminator = _schema$_def.discriminator,
|
109
|
+
fieldConfig = _schema$_def.fieldConfig;
|
106
110
|
if (!Object.keys(dependecys).length) return [{}];
|
107
111
|
var optionKey = dependecys[discriminator];
|
108
112
|
var option = optionsMap.get(optionKey);
|
109
113
|
if (!option) return [{}];
|
110
114
|
var entries = Object.entries(option.shape);
|
111
|
-
var fields = entries.filter(function (
|
112
|
-
var key =
|
115
|
+
var fields = entries.filter(function (_ref2) {
|
116
|
+
var key = _ref2[0];
|
113
117
|
return key !== discriminator;
|
114
|
-
}).map(function (
|
115
|
-
var key =
|
116
|
-
field =
|
117
|
-
return parseField(
|
118
|
+
}).map(function (_ref3) {
|
119
|
+
var key = _ref3[0],
|
120
|
+
field = _ref3[1];
|
121
|
+
return parseField({
|
122
|
+
name: key,
|
123
|
+
schema: field,
|
124
|
+
history: [history, name].join('.'),
|
125
|
+
dependecys: dependecys
|
126
|
+
});
|
118
127
|
});
|
119
128
|
fields.unshift({
|
120
129
|
name: {
|
@@ -131,24 +140,41 @@ var typeMapping = {
|
|
131
140
|
});
|
132
141
|
return fields;
|
133
142
|
},
|
134
|
-
ZodObject: function ZodObject(
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
143
|
+
ZodObject: function ZodObject(_ref4) {
|
144
|
+
var schema = _ref4.schema,
|
145
|
+
name = _ref4.name,
|
146
|
+
history = _ref4.history,
|
147
|
+
dependecys = _ref4.dependecys;
|
148
|
+
return Object.entries(schema.shape).map(function (_ref5) {
|
149
|
+
var key = _ref5[0],
|
150
|
+
field = _ref5[1];
|
151
|
+
return parseField({
|
152
|
+
name: key,
|
153
|
+
schema: field,
|
154
|
+
history: [history, name].join('.'),
|
155
|
+
dependecys: dependecys
|
156
|
+
});
|
139
157
|
});
|
140
158
|
},
|
141
|
-
ZodArray: function ZodArray(
|
142
|
-
|
159
|
+
ZodArray: function ZodArray(_ref6) {
|
160
|
+
var schema = _ref6.schema,
|
161
|
+
name = _ref6.name,
|
162
|
+
history = _ref6.history,
|
163
|
+
dependecys = _ref6.dependecys;
|
164
|
+
return [parseField({
|
165
|
+
name: '0',
|
166
|
+
schema: schema._def.type,
|
167
|
+
history: [history, name].join('.'),
|
168
|
+
dependecys: dependecys
|
169
|
+
})];
|
143
170
|
}
|
144
171
|
};
|
145
|
-
function parseField(
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
dependecys = {};
|
151
|
-
}
|
172
|
+
function parseField(_ref7) {
|
173
|
+
var name = _ref7.name,
|
174
|
+
schema = _ref7.schema,
|
175
|
+
history = _ref7.history,
|
176
|
+
_ref7$dependecys = _ref7.dependecys,
|
177
|
+
dependecys = _ref7$dependecys === void 0 ? {} : _ref7$dependecys;
|
152
178
|
var baseSchema = getBaseSchema(schema);
|
153
179
|
var _getFieldConfigInZodS = getFieldConfigInZodStack(schema),
|
154
180
|
fieldType = _getFieldConfigInZodS.fieldType,
|
@@ -170,7 +196,12 @@ function parseField(name, schema, history, dependecys) {
|
|
170
196
|
}
|
171
197
|
// Arrays and objects
|
172
198
|
var getSubSchema = typeMapping[baseSchema._def.typeName];
|
173
|
-
var subSchema = getSubSchema == null ? void 0 : getSubSchema(
|
199
|
+
var subSchema = getSubSchema == null ? void 0 : getSubSchema({
|
200
|
+
name: name,
|
201
|
+
schema: baseSchema,
|
202
|
+
history: history,
|
203
|
+
dependecys: dependecys
|
204
|
+
});
|
174
205
|
if (baseSchema._def.typeName === 'ZodArray') {
|
175
206
|
var _baseSchema$_def$minL, _baseSchema$_def$maxL;
|
176
207
|
fieldConfig = _extends({
|
@@ -181,7 +212,7 @@ function parseField(name, schema, history, dependecys) {
|
|
181
212
|
var resp = {
|
182
213
|
name: {
|
183
214
|
current: name,
|
184
|
-
history: [history, name].join('.')
|
215
|
+
history: [history, name].filter(Boolean).join('.')
|
185
216
|
},
|
186
217
|
type: type,
|
187
218
|
required: !schema.isOptional(),
|
@@ -206,10 +237,14 @@ var parseSchema = function parseSchema(S) {
|
|
206
237
|
var objectSchema = S instanceof zod.z.ZodEffects ? S.innerType() : S;
|
207
238
|
var shape = objectSchema.shape;
|
208
239
|
var dependecys = objectSchema._def.fieldConfig;
|
209
|
-
var fields = Object.fromEntries(Object.entries(shape).map(function (
|
210
|
-
var key =
|
211
|
-
field =
|
212
|
-
return [key, parseField(
|
240
|
+
var fields = Object.fromEntries(Object.entries(shape).map(function (_ref8) {
|
241
|
+
var key = _ref8[0],
|
242
|
+
field = _ref8[1];
|
243
|
+
return [key, parseField({
|
244
|
+
name: key,
|
245
|
+
schema: field,
|
246
|
+
dependecys: dependecys
|
247
|
+
})];
|
213
248
|
}));
|
214
249
|
return {
|
215
250
|
fields: fields
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"react-resolver-zod.cjs.development.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/element.tsx","../src/provider.tsx"],"sourcesContent":["import { createContext } from 'use-context-selector';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema instanceof z.ZodDefault) {\n return schema._def.defaultValue();\n }\n\n if (schema instanceof z.ZodEffects) {\n return getDefaultValueInZodStack(schema.innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import { z } from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<AdditionalRenderable = null, FieldTypes = string>(\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ): this;\n }\n}\n\nexport const extendZodWithFieldConfig = <AdditionalRenderable = null, FieldTypes = string>(\n zod: typeof z,\n) => {\n (zod.ZodType.prototype as any).fieldConfig = function (\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ) {\n this._def.fieldConfig = config;\n return this;\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\nconst typeMapping = {\n ZodDiscriminatedUnion(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n const { optionsMap, discriminator, fieldConfig } = baseSchema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n return parseField(\n key,\n field as z.ZodTypeAny,\n [history, name].join('.'),\n dependecys,\n );\n });\n\n fields.unshift({\n name: {\n current: discriminator,\n history: [history, name, discriminator].join('.'),\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n return Object.entries((baseSchema as any).shape).map(([key, field]) =>\n parseField(key, field as z.ZodTypeAny, [history, name].join('.'), dependecys),\n );\n },\n\n ZodArray(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n return [parseField('0', baseSchema._def.type, [history, name].join('.'), dependecys)];\n },\n};\n\nfunction parseField(\n name: string,\n schema: z.ZodTypeAny,\n history: string = '',\n dependecys: Record<string, any> = {},\n): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n // Arrays and objects\n const getSubSchema = typeMapping[baseSchema._def.typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.(baseSchema, name, history, dependecys);\n\n if (baseSchema._def.typeName === 'ZodArray') {\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n }\n\n const resp = {\n name: { current: name, history: [history, name].join('.') },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\n\n const fields = Object.fromEntries(\n Object.entries(shape).map(([key, field]) => [\n key,\n parseField(key, field as z.ZodTypeAny, '', dependecys),\n ]),\n );\n\n return { fields };\n};\n","import { useMemo } from 'react';\nimport { useContext } from 'use-context-selector';\nimport { ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data =\n | Zod.AnyZodObject\n | Zod.ZodEffects<Zod.AnyZodObject>\n | Zod.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const useSchema = (cbP: (dp: DP, preData?: Data) => Data, dp: DP) => {\n const schema = useMemo(() => cbP(dp).fieldConfig(dp), [dp]);\n\n return { schema };\n};\n","import { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from './useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const inputs = Object.values(field.schema || {});\n\n const id = useId();\n\n return (\n <>\n {inputs.map((props) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n","import { FC, memo, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = memo(({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n});\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","z","ZodDefault","_def","defaultValue","ZodEffects","innerType","undefined","getDefaultValues","objectSchema","shape","defaultValues","_i","_Object$entries","Object","entries","length","_Object$entries$_i","key","field","FIELD_CONFIG_SYMBOL","Symbol","extendZodWithFieldConfig","zod","ZodType","prototype","fieldConfig","config","createZodSchemaFieldConfig","refinementFunction","getFieldConfigInZodStack","inferFieldType","fieldType","type","typeName","zodToInputType","Map","match","get","typeMapping","ZodDiscriminatedUnion","baseSchema","name","history","dependecys","_baseSchema$_def","optionsMap","discriminator","keys","optionKey","option","fields","filter","_ref","map","_ref2","parseField","join","unshift","current","required","options","Array","from","String","ZodObject","_ref3","ZodArray","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def$minL","_baseSchema$_def$maxL","_extends","min","minLength","max","maxLength","resp","isOptional","description","parseSchema","S","fromEntries","_ref4","useSchemaBase","useContext","useFields","_parseSchema","useSchema","cbP","dp","useMemo","FormInstantElement","inputs","id","useId","_jsx","props","_props$name","Fragment","children","ElementMapping","formProps","FormInstantProvider","memo","Provider"],"mappings":";;;;;;;;IAGaA,kBAAkB,gBAAGC,gCAAa,CAAmB,EAAsB;;;;;;;;;;;;;;;;;;;;;ACAlF,SAAUC,yBAAyBA,CAACC,MAAoB,EAAA;AAC1D,EAAA,IAAIA,MAAM,YAAYC,KAAC,CAACC,UAAU,EAAE;AAChC,IAAA,OAAOF,MAAM,CAACG,IAAI,CAACC,YAAY,EAAE,CAAA;AACpC,GAAA;AAED,EAAA,IAAIJ,MAAM,YAAYC,KAAC,CAACI,UAAU,EAAE;AAChC,IAAA,OAAON,yBAAyB,CAACC,MAAM,CAACM,SAAS,EAAE,CAAC,CAAA;AACvD,GAAA;AAED,EAAA,OAAOC,SAAS,CAAA;AACpB,CAAA;AAEM,SAAUC,gBAAgBA,CAACR,MAA0B,EAAA;AACvD,EAAA,IAAMS,YAAY,GAAGT,MAAM,YAAYC,KAAC,CAACI,UAAU,GAAGL,MAAM,CAACM,SAAS,EAAE,GAAGN,MAAM,CAAA;AACjF,EAAA,IAAMU,KAAK,GAAGD,YAAY,CAACC,KAAK,CAAA;EAEhC,IAAMC,aAAa,GAAwB,EAAE,CAAA;AAE7C,EAAA,KAAA,IAAAC,EAAA,GAAAC,CAAAA,EAAAA,eAAA,GAA2BC,MAAM,CAACC,OAAO,CAACL,KAAK,CAAC,EAAAE,EAAA,GAAAC,eAAA,CAAAG,MAAA,EAAAJ,EAAA,EAAE,EAAA;AAA7C,IAAA,IAAAK,kBAAA,GAAAJ,eAAA,CAAAD,EAAA,CAAA;AAAOM,MAAAA,GAAG,GAAAD,kBAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,KAAK,GAAAF,kBAAA,CAAA,CAAA,CAAA,CAAA;AAClB,IAAA,IAAMb,YAAY,GAAGL,yBAAyB,CAACoB,KAAqB,CAAC,CAAA;IACrE,IAAIf,YAAY,KAAKG,SAAS,EAAE;AAC5BI,MAAAA,aAAa,CAACO,GAAG,CAAC,GAAGd,YAAY,CAAA;AACpC,KAAA;AACJ,GAAA;AAED,EAAA,OAAOO,aAAa,CAAA;AACxB;;IC3BaS,mBAAmB,gBAAGC,MAAM,CAAC,gBAAgB,EAAC;IAU9CC,wBAAwB,GAAG,SAA3BA,wBAAwBA,CACjCC,GAAa,EACb;EACCA,GAAG,CAACC,OAAO,CAACC,SAAiB,CAACC,WAAW,GAAG,UACzCC,MAAqD,EAAA;AAErD,IAAA,IAAI,CAACxB,IAAI,CAACuB,WAAW,GAAGC,MAAM,CAAA;AAC9B,IAAA,OAAO,IAAI,CAAA;GACd,CAAA;AACL,EAAC;AAEYC,IAAAA,0BAA0B,GACnC,SADSA,0BAA0BA,GAAA;EAAA,OAEnC,UAACD,MAAqD,EAAyB;AAC3E,IAAA,IAAME,kBAAkB,GAAwB,SAA1CA,kBAAkBA,GAA6B;AACjD;KACH,CAAA;AAED;AACAA,IAAAA,kBAAkB,CAACT,mBAAmB,CAAC,GAAGO,MAAM,CAAA;AAEhD,IAAA,OAAOE,kBAAkB,CAAA;GAC5B,CAAA;AAAA,EAAA;AAEC,SAAUC,wBAAwBA,CAAC9B,MAAoB,EAAA;AACzD;AACA,EAAA,IAAIA,MAAM,CAACG,IAAI,CAACuB,WAAW,EAAE;AACzB,IAAA,OAAO1B,MAAM,CAACG,IAAI,CAACuB,WAA0B,CAAA;AAChD,GAAA;AAED;AACA,EAAA,IAAI,WAAW,IAAI1B,MAAM,CAACG,IAAI,EAAE;AAC5B,IAAA,OAAO2B,wBAAwB,CAAC9B,MAAM,CAACG,IAAI,CAACG,SAAqB,CAAC,CAAA;AACrE,GAAA;AAED;AACA,EAAA,IAAI,QAAQ,IAAIN,MAAM,CAACG,IAAI,EAAE;AACzB,IAAA,OAAO2B,wBAAwB,CAAC9B,MAAM,CAACG,IAAI,CAACH,MAAkB,CAAC,CAAA;AAClE,GAAA;AAED;AACA,EAAA,OAAO,EAAiB,CAAA;AAC5B;;ACnDgB,SAAA+B,cAAcA,CAAC/B,MAAoB,EAAEgC,SAAoC,EAAA;AACrF,EAAA,IAAIA,SAAS,EAAE;AACX,IAAA,OAAOA,SAAS,CAAA;AACnB,GAAA;AAED,EAAA,IAAMC,IAAI,GAAGjC,MAAM,CAACG,IAAI,CAAC+B,QAAQ,CAAA;EAEjC,IAAMC,cAAc,GAAG,IAAIC,GAAG,CAAC,CAC3B,CAAC,WAAW,EAAE,QAAQ,CAAC,EACvB,CAAC,WAAW,EAAE,QAAQ,CAAC,EACvB,CAAC,WAAW,EAAE,QAAQ,CAAC,EACvB,CAAC,YAAY,EAAE,SAAS,CAAC,EACzB,CAAC,SAAS,EAAE,MAAM,CAAC,EACnB,CAAC,SAAS,EAAE,QAAQ,CAAC,EACrB,CAAC,eAAe,EAAE,QAAQ,CAAC,EAC3B,CAAC,UAAU,EAAE,OAAO,CAAC,CACxB,CAAC,CAAA;AAEF,EAAA,IAAMC,KAAK,GAAGF,cAAc,CAACG,GAAG,CAACL,IAAI,CAAC,CAAA;AAEtC,EAAA,OAAOI,KAAK,IAAI,QAAQ,CAAC;AAC7B;;;ACjBA,IAAME,WAAW,GAAG;EAChBC,qBAAqB,EAAA,SAArBA,qBAAqBA,CACjBC,UAAwB,EACxBC,IAAY,EACZC,OAAe,EACfC,UAA+B,EAAA;AAE/B,IAAA,IAAAC,gBAAA,GAAmDJ,UAAU,CAACtC,IAAI;MAA1D2C,UAAU,GAAAD,gBAAA,CAAVC,UAAU;MAAEC,aAAa,GAAAF,gBAAA,CAAbE,aAAa;MAAErB,WAAW,GAAAmB,gBAAA,CAAXnB,WAAW,CAAA;AAE9C,IAAA,IAAI,CAACZ,MAAM,CAACkC,IAAI,CAACJ,UAAU,CAAC,CAAC5B,MAAM,EAAE,OAAO,CAAC,EAAE,CAA+B,CAAA;AAE9E,IAAA,IAAMiC,SAAS,GAAGL,UAAU,CAACG,aAAa,CAAC,CAAA;AAC3C,IAAA,IAAMG,MAAM,GAAGJ,UAAU,CAACR,GAAG,CAACW,SAAS,CAAC,CAAA;AAExC,IAAA,IAAI,CAACC,MAAM,EAAE,OAAO,CAAC,EAAE,CAA+B,CAAA;IAEtD,IAAMnC,OAAO,GAAGD,MAAM,CAACC,OAAO,CAACmC,MAAM,CAACxC,KAAK,CAAC,CAAA;AAE5C,IAAA,IAAMyC,MAAM,GAAGpC,OAAO,CACjBqC,MAAM,CAAC,UAAAC,IAAA,EAAA;MAAA,IAAEnC,GAAG,GAAAmC,IAAA,CAAA,CAAA,CAAA,CAAA;MAAA,OAAMnC,GAAG,KAAK6B,aAAa,CAAA;AAAA,KAAA,CAAC,CACxCO,GAAG,CAAC,UAAAC,KAAA,EAAiB;MAAA,IAAfrC,GAAG,GAAAqC,KAAA,CAAA,CAAA,CAAA;AAAEpC,QAAAA,KAAK,GAAAoC,KAAA,CAAA,CAAA,CAAA,CAAA;AACb,MAAA,OAAOC,UAAU,CACbtC,GAAG,EACHC,KAAqB,EACrB,CAACwB,OAAO,EAAED,IAAI,CAAC,CAACe,IAAI,CAAC,GAAG,CAAC,EACzBb,UAAU,CACb,CAAA;AACL,KAAC,CAAC,CAAA;IAENO,MAAM,CAACO,OAAO,CAAC;AACXhB,MAAAA,IAAI,EAAE;AACFiB,QAAAA,OAAO,EAAEZ,aAAa;QACtBJ,OAAO,EAAE,CAACA,OAAO,EAAED,IAAI,EAAEK,aAAa,CAAC,CAACU,IAAI,CAAC,GAAG,CAAA;OACnD;AACDxB,MAAAA,IAAI,EAAE,eAAe;AACrB2B,MAAAA,QAAQ,EAAE,IAAI;AACd,MAAA,SAAA,EAASX,SAAS;AAClBvB,MAAAA,WAAW,EAAXA,WAAW;AACXmC,MAAAA,OAAO,EAAEC,KAAK,CAACC,IAAI,CAACjB,UAAU,CAACE,IAAI,EAAE,CAAC,CAACM,GAAG,CAAC,UAACpC,GAAG,EAAA;QAAA,OAAK,CAAC8C,MAAM,CAAC9C,GAAG,CAAC,EAAE8C,MAAM,CAAC9C,GAAG,CAAC,CAAC,CAAA;AAAA,OAAA,CAAA;AACjF,KAAA,CAAC,CAAA;AAEF,IAAA,OAAOiC,MAAM,CAAA;GAChB;EAEDc,SAAS,EAAA,SAATA,SAASA,CACLxB,UAAwB,EACxBC,IAAY,EACZC,OAAe,EACfC,UAA+B,EAAA;AAE/B,IAAA,OAAO9B,MAAM,CAACC,OAAO,CAAE0B,UAAkB,CAAC/B,KAAK,CAAC,CAAC4C,GAAG,CAAC,UAAAY,KAAA,EAAA;MAAA,IAAEhD,GAAG,GAAAgD,KAAA,CAAA,CAAA,CAAA;AAAE/C,QAAAA,KAAK,GAAA+C,KAAA,CAAA,CAAA,CAAA,CAAA;AAAA,MAAA,OAC7DV,UAAU,CAACtC,GAAG,EAAEC,KAAqB,EAAE,CAACwB,OAAO,EAAED,IAAI,CAAC,CAACe,IAAI,CAAC,GAAG,CAAC,EAAEb,UAAU,CAAC,CAAA;KAChF,CAAA,CAAA;GACJ;EAEDuB,QAAQ,EAAA,SAARA,QAAQA,CACJ1B,UAAwB,EACxBC,IAAY,EACZC,OAAe,EACfC,UAA+B,EAAA;IAE/B,OAAO,CAACY,UAAU,CAAC,GAAG,EAAEf,UAAU,CAACtC,IAAI,CAAC8B,IAAI,EAAE,CAACU,OAAO,EAAED,IAAI,CAAC,CAACe,IAAI,CAAC,GAAG,CAAC,EAAEb,UAAU,CAAC,CAAC,CAAA;AACzF,GAAA;CACH,CAAA;AAED,SAASY,UAAUA,CACfd,IAAY,EACZ1C,MAAoB,EACpB2C,OAAkB,EAClBC,UAAA,EAAoC;AAAA,EAAA,IADpCD,OAAkB,KAAA,KAAA,CAAA,EAAA;AAAlBA,IAAAA,OAAkB,GAAA,EAAE,CAAA;AAAA,GAAA;AAAA,EAAA,IACpBC,UAAA,KAAA,KAAA,CAAA,EAAA;IAAAA,UAAA,GAAkC,EAAE,CAAA;AAAA,GAAA;AAEpC,EAAA,IAAMH,UAAU,GAAG2B,aAAa,CAACpE,MAAM,CAAC,CAAA;AACxC,EAAA,IAAAqE,qBAAA,GAA0CvC,wBAAwB,CAAC9B,MAAM,CAAC;IAAlEgC,SAAS,GAAAqC,qBAAA,CAATrC,SAAS;AAAKsC,IAAAA,eAAe,GAAAC,6BAAA,CAAAF,qBAAA,EAAAG,SAAA,CAAA,CAAA;AACrC,EAAA,IAAMvC,IAAI,GAAGF,cAAc,CAACU,UAAU,EAAET,SAAS,CAAC,CAAA;AAClD,EAAA,IAAM5B,YAAY,GAAGL,yBAAyB,CAACC,MAAM,CAAC,CAAA;EAEtD,IAAI0B,WAAW,GAAG4C,eAAe,CAAA;AAEjC;AACA,EAAA,IAAMT,OAAO,GAAGpB,UAAU,CAACtC,IAAI,CAACsE,MAAM,CAAA;EACtC,IAAIC,YAAY,GAAuB,EAAE,CAAA;AACzC,EAAA,IAAIb,OAAO,EAAE;AACT,IAAA,IAAI,CAACC,KAAK,CAACa,OAAO,CAACd,OAAO,CAAC,EAAE;AACzBa,MAAAA,YAAY,GAAG5D,MAAM,CAACC,OAAO,CAAC8C,OAAO,CAAC,CAAA;AACzC,KAAA,MAAM;AACHa,MAAAA,YAAY,GAAGb,OAAO,CAACP,GAAG,CAAC,UAACsB,KAAK,EAAA;AAAA,QAAA,OAAK,CAACA,KAAK,EAAEA,KAAK,CAAC,CAAA;OAAC,CAAA,CAAA;AACxD,KAAA;AACJ,GAAA;AAED;EACA,IAAMC,YAAY,GAAGtC,WAAW,CAACE,UAAU,CAACtC,IAAI,CAAC+B,QAAoC,CAAC,CAAA;AAEtF,EAAA,IAAM4C,SAAS,GAAGD,YAAY,IAAA,IAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAGpC,UAAU,EAAEC,IAAI,EAAEC,OAAO,EAAEC,UAAU,CAAC,CAAA;AAEvE,EAAA,IAAIH,UAAU,CAACtC,IAAI,CAAC+B,QAAQ,KAAK,UAAU,EAAE;IAAA,IAAA6C,qBAAA,EAAAC,qBAAA,CAAA;AACzCtD,IAAAA,WAAW,GAAAuD,QAAA,CAAA;AACPC,MAAAA,GAAG,EAAE,CAAA,CAAAH,qBAAA,GAAAtC,UAAU,CAACtC,IAAI,CAACgF,SAAS,KAAzBJ,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAA2BH,KAAK,KAAI,CAAC;MAC1CQ,GAAG,EAAA,CAAAJ,qBAAA,GAAEvC,UAAU,CAACtC,IAAI,CAACkF,SAAS,KAAzBL,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAA2BJ,KAAAA;AAAK,KAAA,EAClClD,WAAW,CACjB,CAAA;AACJ,GAAA;AAED,EAAA,IAAM4D,IAAI,GAAG;AACT5C,IAAAA,IAAI,EAAE;AAAEiB,MAAAA,OAAO,EAAEjB,IAAI;MAAEC,OAAO,EAAE,CAACA,OAAO,EAAED,IAAI,CAAC,CAACe,IAAI,CAAC,GAAG,CAAA;KAAG;AAC3DxB,IAAAA,IAAI,EAAJA,IAAI;AACJ2B,IAAAA,QAAQ,EAAE,CAAC5D,MAAM,CAACuF,UAAU,EAAE;AAC9B,IAAA,SAAA,EAASnF,YAAY;AACrBsB,IAAAA,WAAW,EAAXA,WAAW;AACXmC,IAAAA,OAAO,EAAEa,YAAY;AACrB1E,IAAAA,MAAM,EAAE8E,SAAS;IACjBU,WAAW,EAAE/C,UAAU,CAAC+C,WAAAA;GAC3B,CAAA;AAED,EAAA,OAAOF,IAAI,CAAA;AACf,CAAA;AAEA,SAASlB,aAAaA,CAClBpE,MAA2C,EAAA;AAE3C,EAAA,IAAI,WAAW,IAAIA,MAAM,CAACG,IAAI,EAAE;AAC5B,IAAA,OAAOiE,aAAa,CAACpE,MAAM,CAACG,IAAI,CAACG,SAAsB,CAAC,CAAA;AAC3D,GAAA;AACD,EAAA,IAAI,QAAQ,IAAIN,MAAM,CAACG,IAAI,EAAE;AACzB,IAAA,OAAOiE,aAAa,CAACpE,MAAM,CAACG,IAAI,CAACH,MAAmB,CAAC,CAAA;AACxD,GAAA;AAED,EAAA,OAAOA,MAAmB,CAAA;AAC9B,CAAA;IAEayF,WAAW,GAAG,SAAdA,WAAWA,CAAIC,CAAqB,EAAkB;AAC/D,EAAA,IAAMjF,YAAY,GAAGiF,CAAC,YAAYzF,KAAC,CAACI,UAAU,GAAGqF,CAAC,CAACpF,SAAS,EAAE,GAAGoF,CAAC,CAAA;AAClE,EAAA,IAAMhF,KAAK,GAAGD,YAAY,CAACC,KAAK,CAAA;AAEhC,EAAA,IAAMkC,UAAU,GAAInC,YAAY,CAACN,IAAY,CAACuB,WAAW,CAAA;AAEzD,EAAA,IAAMyB,MAAM,GAAGrC,MAAM,CAAC6E,WAAW,CAC7B7E,MAAM,CAACC,OAAO,CAACL,KAAK,CAAC,CAAC4C,GAAG,CAAC,UAAAsC,KAAA,EAAA;IAAA,IAAE1E,GAAG,GAAA0E,KAAA,CAAA,CAAA,CAAA;AAAEzE,MAAAA,KAAK,GAAAyE,KAAA,CAAA,CAAA,CAAA,CAAA;AAAA,IAAA,OAAM,CACxC1E,GAAG,EACHsC,UAAU,CAACtC,GAAG,EAAEC,KAAqB,EAAE,EAAE,EAAEyB,UAAU,CAAC,CACzD,CAAA;AAAA,GAAA,CAAC,CACL,CAAA;EAED,OAAO;AAAEO,IAAAA,MAAM,EAANA,MAAAA;GAAQ,CAAA;AACrB;;AChJA,IAAM0C,aAAa,GAAG,SAAhBA,aAAaA,GAAA;EAAA,OACfC,6BAAU,CAACjG,kBAAkB,CAAuD,CAAA;AAAA,CAAA,CAAA;IAE3EkG,SAAS,GAAG,SAAZA,SAASA,CAAoC7E,GAAa,EAAI;AACvE,EAAA,IAAMwE,CAAC,GAAGG,aAAa,EAAE,CAAA;AAEzB,EAAA,IAAAG,YAAA,GAAmBP,WAAW,CAACC,CAAC,CAAC;IAAzBvC,MAAM,GAAA6C,YAAA,CAAN7C,MAAM,CAAA;EAEd,OAAOA,MAAM,CAACjC,GAAa,CAAC,CAAA;AAChC,EAAC;AASM,IAAM+E,SAAS,GAAG,SAAZA,SAASA,CAAIC,GAAqC,EAAEC,EAAM,EAAI;EACvE,IAAMnG,MAAM,GAAGoG,aAAO,CAAC,YAAA;IAAA,OAAMF,GAAG,CAACC,EAAE,CAAC,CAACzE,WAAW,CAACyE,EAAE,CAAC,CAAA;GAAE,EAAA,CAACA,EAAE,CAAC,CAAC,CAAA;EAE3D,OAAO;AAAEnG,IAAAA,MAAM,EAANA,MAAAA;GAAQ,CAAA;AACrB;;ICpBaqG,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAhD,IAAA,EAAgE;AAAA,EAAA,IAA3BX,IAAI,GAAAW,IAAA,CAAJX,IAAI,CAAA;AACpE,EAAA,IAAMvB,KAAK,GAAG4E,SAAS,CAACrD,IAAI,CAAC,CAAA;AAE7B,EAAA,IAAM4D,MAAM,GAAGxF,MAAM,CAAC2D,MAAM,CAACtD,KAAK,CAACnB,MAAM,IAAI,EAAE,CAAC,CAAA;AAEhD,EAAA,IAAMuG,EAAE,GAAGC,WAAK,EAAE,CAAA;EAElB,OACIC;cACKH,MAAM,CAAChD,GAAG,CAAC,UAACoD,KAAK,EAAI;AAAA,MAAA,IAAAC,WAAA,CAAA;MAClB,OACIF,cAAC,CAAAG,cAAQ,EACL;AAAAC,QAAAA,QAAA,EAAAJ,cAAA,CAACK,gCAAc,EAAC;AAAAC,UAAAA,SAAS,EAAEL,KAAAA;SAAS,CAAA;AAAA,OAAA,EADtBH,EAAE,GAAA,GAAA,IAAI,CAAAI,CAAAA,WAAA,GAAAD,KAAK,CAAChE,IAAI,KAAA,IAAA,GAAA,KAAA,CAAA,GAAViE,WAAA,CAAYhE,OAAO,KAAI,EAAE,CAAE,CAExC,CAAA;KAElB,CAAA;AACF,GAAA,CAAA,CAAA;AAEX;;ICvBaqE,mBAAmB,gBAG3BC,UAAI,CAAC,UAAA5D,IAAA,EAAyB;AAAA,EAAA,IAAtBwD,QAAQ,GAAAxD,IAAA,CAARwD,QAAQ;IAAE7G,MAAM,GAAAqD,IAAA,CAANrD,MAAM,CAAA;AACzB,EAAA,OAAOyG,cAAA,CAAC5G,kBAAkB,CAACqH,QAAQ,EAAA;AAACtC,IAAAA,KAAK,EAAE5E,MAAM;AAAA6G,IAAAA,QAAA,EAAGA,QAAAA;AAAQ,GAAA,CAA+B,CAAA;AAC/F,CAAC;;;;;;;;;;;;;;;;"}
|
1
|
+
{"version":3,"file":"react-resolver-zod.cjs.development.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/element.tsx","../src/provider.tsx"],"sourcesContent":["import { createContext } from 'use-context-selector';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema instanceof z.ZodDefault) {\n return schema._def.defaultValue();\n }\n\n if (schema instanceof z.ZodEffects) {\n return getDefaultValueInZodStack(schema.innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import { z } from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<AdditionalRenderable = null, FieldTypes = string>(\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ): this;\n }\n}\n\nexport const extendZodWithFieldConfig = <AdditionalRenderable = null, FieldTypes = string>(\n zod: typeof z,\n) => {\n (zod.ZodType.prototype as any).fieldConfig = function (\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ) {\n this._def.fieldConfig = config;\n return this;\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\ninterface typeMapping {\n schema: z.ZodTypeAny;\n name: string;\n history?: string;\n dependecys: Record<string, any>;\n}\n\ntype typeMappingType = Record<\n 'ZodDiscriminatedUnion' | 'ZodObject' | 'ZodArray',\n (p: typeMapping) => ParsedField<any, string>[]\n>;\n\nconst typeMapping: typeMappingType = {\n ZodDiscriminatedUnion({ schema, name, history, dependecys }) {\n const { optionsMap, discriminator, fieldConfig } = schema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: [history, name].join('.'),\n dependecys,\n });\n });\n\n fields.unshift({\n name: {\n current: discriminator,\n history: [history, name, discriminator].join('.'),\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject({ schema, name, history, dependecys }) {\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: [history, name].join('.'),\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: [history, name].join('.'),\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({ name, schema, history, dependecys = {} }: typeMapping): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n // Arrays and objects\n const getSubSchema = typeMapping[baseSchema._def.typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (baseSchema._def.typeName === 'ZodArray') {\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n }\n\n const resp = {\n name: {\n current: name,\n history: [history, name].filter(Boolean).join('.'),\n },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\n\n const fields = Object.fromEntries(\n Object.entries(shape).map(([key, field]) => [\n key,\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n dependecys,\n }),\n ]),\n );\n\n return { fields };\n};\n","import { useMemo } from 'react';\nimport { useContext } from 'use-context-selector';\nimport { ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data =\n | Zod.AnyZodObject\n | Zod.ZodEffects<Zod.AnyZodObject>\n | Zod.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const useSchema = (cbP: (dp: DP, preData?: Data) => Data, dp: DP) => {\n const schema = useMemo(() => cbP(dp).fieldConfig(dp), [dp]);\n\n return { schema };\n};\n","import { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from './useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const inputs = Object.values(field.schema || {});\n\n const id = useId();\n\n return (\n <>\n {inputs.map((props) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n","import { FC, memo, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = memo(({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n});\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","z","ZodDefault","_def","defaultValue","ZodEffects","innerType","undefined","getDefaultValues","objectSchema","shape","defaultValues","_i","_Object$entries","Object","entries","length","_Object$entries$_i","key","field","FIELD_CONFIG_SYMBOL","Symbol","extendZodWithFieldConfig","zod","ZodType","prototype","fieldConfig","config","createZodSchemaFieldConfig","refinementFunction","getFieldConfigInZodStack","inferFieldType","fieldType","type","typeName","zodToInputType","Map","match","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","keys","optionKey","option","fields","filter","_ref2","map","_ref3","parseField","join","unshift","current","required","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def$minL","_baseSchema$_def$maxL","_extends","min","minLength","max","maxLength","resp","Boolean","isOptional","description","parseSchema","S","fromEntries","_ref8","useSchemaBase","useContext","useFields","_parseSchema","useSchema","cbP","dp","useMemo","FormInstantElement","inputs","id","useId","_jsx","props","_props$name","Fragment","children","ElementMapping","formProps","FormInstantProvider","memo","Provider"],"mappings":";;;;;;;;IAGaA,kBAAkB,gBAAGC,gCAAa,CAAmB,EAAsB;;;;;;;;;;;;;;;;;;;;;ACAlF,SAAUC,yBAAyBA,CAACC,MAAoB,EAAA;AAC1D,EAAA,IAAIA,MAAM,YAAYC,KAAC,CAACC,UAAU,EAAE;AAChC,IAAA,OAAOF,MAAM,CAACG,IAAI,CAACC,YAAY,EAAE,CAAA;AACpC,GAAA;AAED,EAAA,IAAIJ,MAAM,YAAYC,KAAC,CAACI,UAAU,EAAE;AAChC,IAAA,OAAON,yBAAyB,CAACC,MAAM,CAACM,SAAS,EAAE,CAAC,CAAA;AACvD,GAAA;AAED,EAAA,OAAOC,SAAS,CAAA;AACpB,CAAA;AAEM,SAAUC,gBAAgBA,CAACR,MAA0B,EAAA;AACvD,EAAA,IAAMS,YAAY,GAAGT,MAAM,YAAYC,KAAC,CAACI,UAAU,GAAGL,MAAM,CAACM,SAAS,EAAE,GAAGN,MAAM,CAAA;AACjF,EAAA,IAAMU,KAAK,GAAGD,YAAY,CAACC,KAAK,CAAA;EAEhC,IAAMC,aAAa,GAAwB,EAAE,CAAA;AAE7C,EAAA,KAAA,IAAAC,EAAA,GAAAC,CAAAA,EAAAA,eAAA,GAA2BC,MAAM,CAACC,OAAO,CAACL,KAAK,CAAC,EAAAE,EAAA,GAAAC,eAAA,CAAAG,MAAA,EAAAJ,EAAA,EAAE,EAAA;AAA7C,IAAA,IAAAK,kBAAA,GAAAJ,eAAA,CAAAD,EAAA,CAAA;AAAOM,MAAAA,GAAG,GAAAD,kBAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,KAAK,GAAAF,kBAAA,CAAA,CAAA,CAAA,CAAA;AAClB,IAAA,IAAMb,YAAY,GAAGL,yBAAyB,CAACoB,KAAqB,CAAC,CAAA;IACrE,IAAIf,YAAY,KAAKG,SAAS,EAAE;AAC5BI,MAAAA,aAAa,CAACO,GAAG,CAAC,GAAGd,YAAY,CAAA;AACpC,KAAA;AACJ,GAAA;AAED,EAAA,OAAOO,aAAa,CAAA;AACxB;;IC3BaS,mBAAmB,gBAAGC,MAAM,CAAC,gBAAgB,EAAC;IAU9CC,wBAAwB,GAAG,SAA3BA,wBAAwBA,CACjCC,GAAa,EACb;EACCA,GAAG,CAACC,OAAO,CAACC,SAAiB,CAACC,WAAW,GAAG,UACzCC,MAAqD,EAAA;AAErD,IAAA,IAAI,CAACxB,IAAI,CAACuB,WAAW,GAAGC,MAAM,CAAA;AAC9B,IAAA,OAAO,IAAI,CAAA;GACd,CAAA;AACL,EAAC;AAEYC,IAAAA,0BAA0B,GACnC,SADSA,0BAA0BA,GAAA;EAAA,OAEnC,UAACD,MAAqD,EAAyB;AAC3E,IAAA,IAAME,kBAAkB,GAAwB,SAA1CA,kBAAkBA,GAA6B;AACjD;KACH,CAAA;AAED;AACAA,IAAAA,kBAAkB,CAACT,mBAAmB,CAAC,GAAGO,MAAM,CAAA;AAEhD,IAAA,OAAOE,kBAAkB,CAAA;GAC5B,CAAA;AAAA,EAAA;AAEC,SAAUC,wBAAwBA,CAAC9B,MAAoB,EAAA;AACzD;AACA,EAAA,IAAIA,MAAM,CAACG,IAAI,CAACuB,WAAW,EAAE;AACzB,IAAA,OAAO1B,MAAM,CAACG,IAAI,CAACuB,WAA0B,CAAA;AAChD,GAAA;AAED;AACA,EAAA,IAAI,WAAW,IAAI1B,MAAM,CAACG,IAAI,EAAE;AAC5B,IAAA,OAAO2B,wBAAwB,CAAC9B,MAAM,CAACG,IAAI,CAACG,SAAqB,CAAC,CAAA;AACrE,GAAA;AAED;AACA,EAAA,IAAI,QAAQ,IAAIN,MAAM,CAACG,IAAI,EAAE;AACzB,IAAA,OAAO2B,wBAAwB,CAAC9B,MAAM,CAACG,IAAI,CAACH,MAAkB,CAAC,CAAA;AAClE,GAAA;AAED;AACA,EAAA,OAAO,EAAiB,CAAA;AAC5B;;ACnDgB,SAAA+B,cAAcA,CAAC/B,MAAoB,EAAEgC,SAAoC,EAAA;AACrF,EAAA,IAAIA,SAAS,EAAE;AACX,IAAA,OAAOA,SAAS,CAAA;AACnB,GAAA;AAED,EAAA,IAAMC,IAAI,GAAGjC,MAAM,CAACG,IAAI,CAAC+B,QAAQ,CAAA;EAEjC,IAAMC,cAAc,GAAG,IAAIC,GAAG,CAAC,CAC3B,CAAC,WAAW,EAAE,QAAQ,CAAC,EACvB,CAAC,WAAW,EAAE,QAAQ,CAAC,EACvB,CAAC,WAAW,EAAE,QAAQ,CAAC,EACvB,CAAC,YAAY,EAAE,SAAS,CAAC,EACzB,CAAC,SAAS,EAAE,MAAM,CAAC,EACnB,CAAC,SAAS,EAAE,QAAQ,CAAC,EACrB,CAAC,eAAe,EAAE,QAAQ,CAAC,EAC3B,CAAC,UAAU,EAAE,OAAO,CAAC,CACxB,CAAC,CAAA;AAEF,EAAA,IAAMC,KAAK,GAAGF,cAAc,CAACG,GAAG,CAACL,IAAI,CAAC,CAAA;AAEtC,EAAA,OAAOI,KAAK,IAAI,QAAQ,CAAC;AAC7B;;;ACLA,IAAME,WAAW,GAAoB;AACjCC,EAAAA,qBAAqB,EAArBA,SAAAA,qBAAqBA,CAAAC,IAAA,EAAsC;AAAA,IAAA,IAAnCzC,MAAM,GAAAyC,IAAA,CAANzC,MAAM;MAAE0C,IAAI,GAAAD,IAAA,CAAJC,IAAI;MAAEC,OAAO,GAAAF,IAAA,CAAPE,OAAO;MAAEC,UAAU,GAAAH,IAAA,CAAVG,UAAU,CAAA;AACrD,IAAA,IAAAC,YAAA,GAAmD7C,MAAM,CAACG,IAAI;MAAtD2C,UAAU,GAAAD,YAAA,CAAVC,UAAU;MAAEC,aAAa,GAAAF,YAAA,CAAbE,aAAa;MAAErB,WAAW,GAAAmB,YAAA,CAAXnB,WAAW,CAAA;AAE9C,IAAA,IAAI,CAACZ,MAAM,CAACkC,IAAI,CAACJ,UAAU,CAAC,CAAC5B,MAAM,EAAE,OAAO,CAAC,EAAE,CAA+B,CAAA;AAE9E,IAAA,IAAMiC,SAAS,GAAGL,UAAU,CAACG,aAAa,CAAC,CAAA;AAC3C,IAAA,IAAMG,MAAM,GAAGJ,UAAU,CAACR,GAAG,CAACW,SAAS,CAAC,CAAA;AAExC,IAAA,IAAI,CAACC,MAAM,EAAE,OAAO,CAAC,EAAE,CAA+B,CAAA;IAEtD,IAAMnC,OAAO,GAAGD,MAAM,CAACC,OAAO,CAACmC,MAAM,CAACxC,KAAK,CAAC,CAAA;AAE5C,IAAA,IAAMyC,MAAM,GAAGpC,OAAO,CACjBqC,MAAM,CAAC,UAAAC,KAAA,EAAA;MAAA,IAAEnC,GAAG,GAAAmC,KAAA,CAAA,CAAA,CAAA,CAAA;MAAA,OAAMnC,GAAG,KAAK6B,aAAa,CAAA;AAAA,KAAA,CAAC,CACxCO,GAAG,CAAC,UAAAC,KAAA,EAAiB;MAAA,IAAfrC,GAAG,GAAAqC,KAAA,CAAA,CAAA,CAAA;AAAEpC,QAAAA,KAAK,GAAAoC,KAAA,CAAA,CAAA,CAAA,CAAA;AACb,MAAA,OAAOC,UAAU,CAAC;AACdd,QAAAA,IAAI,EAAExB,GAAG;AACTlB,QAAAA,MAAM,EAAEmB,KAAqB;QAC7BwB,OAAO,EAAE,CAACA,OAAO,EAAED,IAAI,CAAC,CAACe,IAAI,CAAC,GAAG,CAAC;AAClCb,QAAAA,UAAU,EAAVA,UAAAA;AACH,OAAA,CAAC,CAAA;AACN,KAAC,CAAC,CAAA;IAENO,MAAM,CAACO,OAAO,CAAC;AACXhB,MAAAA,IAAI,EAAE;AACFiB,QAAAA,OAAO,EAAEZ,aAAa;QACtBJ,OAAO,EAAE,CAACA,OAAO,EAAED,IAAI,EAAEK,aAAa,CAAC,CAACU,IAAI,CAAC,GAAG,CAAA;OACnD;AACDxB,MAAAA,IAAI,EAAE,eAAe;AACrB2B,MAAAA,QAAQ,EAAE,IAAI;AACd,MAAA,SAAA,EAASX,SAAS;AAClBvB,MAAAA,WAAW,EAAXA,WAAW;AACXmC,MAAAA,OAAO,EAAEC,KAAK,CAACC,IAAI,CAACjB,UAAU,CAACE,IAAI,EAAE,CAAC,CAACM,GAAG,CAAC,UAACpC,GAAG,EAAA;QAAA,OAAK,CAAC8C,MAAM,CAAC9C,GAAG,CAAC,EAAE8C,MAAM,CAAC9C,GAAG,CAAC,CAAC,CAAA;AAAA,OAAA,CAAA;AACjF,KAAA,CAAC,CAAA;AAEF,IAAA,OAAOiC,MAAM,CAAA;GAChB;AAEDc,EAAAA,SAAS,EAATA,SAAAA,SAASA,CAAAC,KAAA,EAAsC;AAAA,IAAA,IAAnClE,MAAM,GAAAkE,KAAA,CAANlE,MAAM;MAAE0C,IAAI,GAAAwB,KAAA,CAAJxB,IAAI;MAAEC,OAAO,GAAAuB,KAAA,CAAPvB,OAAO;MAAEC,UAAU,GAAAsB,KAAA,CAAVtB,UAAU,CAAA;AACzC,IAAA,OAAO9B,MAAM,CAACC,OAAO,CAAEf,MAAc,CAACU,KAAK,CAAC,CAAC4C,GAAG,CAAC,UAAAa,KAAA,EAAA;MAAA,IAAEjD,GAAG,GAAAiD,KAAA,CAAA,CAAA,CAAA;AAAEhD,QAAAA,KAAK,GAAAgD,KAAA,CAAA,CAAA,CAAA,CAAA;AAAA,MAAA,OACzDX,UAAU,CAAC;AACPd,QAAAA,IAAI,EAAExB,GAAG;AACTlB,QAAAA,MAAM,EAAEmB,KAAqB;QAC7BwB,OAAO,EAAE,CAACA,OAAO,EAAED,IAAI,CAAC,CAACe,IAAI,CAAC,GAAG,CAAC;AAClCb,QAAAA,UAAU,EAAVA,UAAAA;AACH,OAAA,CAAC,CAAA;KACL,CAAA,CAAA;GACJ;AAEDwB,EAAAA,QAAQ,EAARA,SAAAA,QAAQA,CAAAC,KAAA,EAAsC;AAAA,IAAA,IAAnCrE,MAAM,GAAAqE,KAAA,CAANrE,MAAM;MAAE0C,IAAI,GAAA2B,KAAA,CAAJ3B,IAAI;MAAEC,OAAO,GAAA0B,KAAA,CAAP1B,OAAO;MAAEC,UAAU,GAAAyB,KAAA,CAAVzB,UAAU,CAAA;IACxC,OAAO,CACHY,UAAU,CAAC;AACPd,MAAAA,IAAI,EAAE,GAAG;AACT1C,MAAAA,MAAM,EAAEA,MAAM,CAACG,IAAI,CAAC8B,IAAI;MACxBU,OAAO,EAAE,CAACA,OAAO,EAAED,IAAI,CAAC,CAACe,IAAI,CAAC,GAAG,CAAC;AAClCb,MAAAA,UAAU,EAAVA,UAAAA;KACH,CAAC,CACL,CAAA;AACL,GAAA;CACH,CAAA;AAED,SAASY,UAAUA,CAAAc,KAAA,EAAwD;AAAA,EAAA,IAArD5B,IAAI,GAAA4B,KAAA,CAAJ5B,IAAI;IAAE1C,MAAM,GAAAsE,KAAA,CAANtE,MAAM;IAAE2C,OAAO,GAAA2B,KAAA,CAAP3B,OAAO;IAAA4B,gBAAA,GAAAD,KAAA,CAAE1B,UAAU;AAAVA,IAAAA,UAAU,GAAA2B,gBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,gBAAA,CAAA;AACxD,EAAA,IAAMC,UAAU,GAAGC,aAAa,CAACzE,MAAM,CAAC,CAAA;AACxC,EAAA,IAAA0E,qBAAA,GAA0C5C,wBAAwB,CAAC9B,MAAM,CAAC;IAAlEgC,SAAS,GAAA0C,qBAAA,CAAT1C,SAAS;AAAK2C,IAAAA,eAAe,GAAAC,6BAAA,CAAAF,qBAAA,EAAAG,SAAA,CAAA,CAAA;AACrC,EAAA,IAAM5C,IAAI,GAAGF,cAAc,CAACyC,UAAU,EAAExC,SAAS,CAAC,CAAA;AAClD,EAAA,IAAM5B,YAAY,GAAGL,yBAAyB,CAACC,MAAM,CAAC,CAAA;EAEtD,IAAI0B,WAAW,GAAGiD,eAAe,CAAA;AAEjC;AACA,EAAA,IAAMd,OAAO,GAAGW,UAAU,CAACrE,IAAI,CAAC2E,MAAM,CAAA;EACtC,IAAIC,YAAY,GAAuB,EAAE,CAAA;AACzC,EAAA,IAAIlB,OAAO,EAAE;AACT,IAAA,IAAI,CAACC,KAAK,CAACkB,OAAO,CAACnB,OAAO,CAAC,EAAE;AACzBkB,MAAAA,YAAY,GAAGjE,MAAM,CAACC,OAAO,CAAC8C,OAAO,CAAC,CAAA;AACzC,KAAA,MAAM;AACHkB,MAAAA,YAAY,GAAGlB,OAAO,CAACP,GAAG,CAAC,UAAC2B,KAAK,EAAA;AAAA,QAAA,OAAK,CAACA,KAAK,EAAEA,KAAK,CAAC,CAAA;OAAC,CAAA,CAAA;AACxD,KAAA;AACJ,GAAA;AAED;EACA,IAAMC,YAAY,GAAG3C,WAAW,CAACiC,UAAU,CAACrE,IAAI,CAAC+B,QAAoC,CAAC,CAAA;AAEtF,EAAA,IAAMiD,SAAS,GAAGD,YAAY,IAAA,IAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAG;AAC7BxC,IAAAA,IAAI,EAAJA,IAAI;AACJ1C,IAAAA,MAAM,EAAEwE,UAAU;AAClB7B,IAAAA,OAAO,EAAPA,OAAO;AACPC,IAAAA,UAAU,EAAVA,UAAAA;AACH,GAAA,CAAC,CAAA;AAEF,EAAA,IAAI4B,UAAU,CAACrE,IAAI,CAAC+B,QAAQ,KAAK,UAAU,EAAE;IAAA,IAAAkD,qBAAA,EAAAC,qBAAA,CAAA;AACzC3D,IAAAA,WAAW,GAAA4D,QAAA,CAAA;AACPC,MAAAA,GAAG,EAAE,CAAA,CAAAH,qBAAA,GAAAZ,UAAU,CAACrE,IAAI,CAACqF,SAAS,KAAzBJ,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAA2BH,KAAK,KAAI,CAAC;MAC1CQ,GAAG,EAAA,CAAAJ,qBAAA,GAAEb,UAAU,CAACrE,IAAI,CAACuF,SAAS,KAAzBL,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAA2BJ,KAAAA;AAAK,KAAA,EAClCvD,WAAW,CACjB,CAAA;AACJ,GAAA;AAED,EAAA,IAAMiE,IAAI,GAAG;AACTjD,IAAAA,IAAI,EAAE;AACFiB,MAAAA,OAAO,EAAEjB,IAAI;AACbC,MAAAA,OAAO,EAAE,CAACA,OAAO,EAAED,IAAI,CAAC,CAACU,MAAM,CAACwC,OAAO,CAAC,CAACnC,IAAI,CAAC,GAAG,CAAA;KACpD;AACDxB,IAAAA,IAAI,EAAJA,IAAI;AACJ2B,IAAAA,QAAQ,EAAE,CAAC5D,MAAM,CAAC6F,UAAU,EAAE;AAC9B,IAAA,SAAA,EAASzF,YAAY;AACrBsB,IAAAA,WAAW,EAAXA,WAAW;AACXmC,IAAAA,OAAO,EAAEkB,YAAY;AACrB/E,IAAAA,MAAM,EAAEmF,SAAS;IACjBW,WAAW,EAAEtB,UAAU,CAACsB,WAAAA;GAC3B,CAAA;AAED,EAAA,OAAOH,IAAI,CAAA;AACf,CAAA;AAEA,SAASlB,aAAaA,CAClBzE,MAA2C,EAAA;AAE3C,EAAA,IAAI,WAAW,IAAIA,MAAM,CAACG,IAAI,EAAE;AAC5B,IAAA,OAAOsE,aAAa,CAACzE,MAAM,CAACG,IAAI,CAACG,SAAsB,CAAC,CAAA;AAC3D,GAAA;AACD,EAAA,IAAI,QAAQ,IAAIN,MAAM,CAACG,IAAI,EAAE;AACzB,IAAA,OAAOsE,aAAa,CAACzE,MAAM,CAACG,IAAI,CAACH,MAAmB,CAAC,CAAA;AACxD,GAAA;AAED,EAAA,OAAOA,MAAmB,CAAA;AAC9B,CAAA;IAEa+F,WAAW,GAAG,SAAdA,WAAWA,CAAIC,CAAqB,EAAkB;AAC/D,EAAA,IAAMvF,YAAY,GAAGuF,CAAC,YAAY/F,KAAC,CAACI,UAAU,GAAG2F,CAAC,CAAC1F,SAAS,EAAE,GAAG0F,CAAC,CAAA;AAClE,EAAA,IAAMtF,KAAK,GAAGD,YAAY,CAACC,KAAK,CAAA;AAEhC,EAAA,IAAMkC,UAAU,GAAInC,YAAY,CAACN,IAAY,CAACuB,WAAW,CAAA;AAEzD,EAAA,IAAMyB,MAAM,GAAGrC,MAAM,CAACmF,WAAW,CAC7BnF,MAAM,CAACC,OAAO,CAACL,KAAK,CAAC,CAAC4C,GAAG,CAAC,UAAA4C,KAAA,EAAA;IAAA,IAAEhF,GAAG,GAAAgF,KAAA,CAAA,CAAA,CAAA;AAAE/E,MAAAA,KAAK,GAAA+E,KAAA,CAAA,CAAA,CAAA,CAAA;AAAA,IAAA,OAAM,CACxChF,GAAG,EACHsC,UAAU,CAAC;AACPd,MAAAA,IAAI,EAAExB,GAAG;AACTlB,MAAAA,MAAM,EAAEmB,KAAqB;AAC7ByB,MAAAA,UAAU,EAAVA,UAAAA;KACH,CAAC,CACL,CAAA;AAAA,GAAA,CAAC,CACL,CAAA;EAED,OAAO;AAAEO,IAAAA,MAAM,EAANA,MAAAA;GAAQ,CAAA;AACrB;;AChKA,IAAMgD,aAAa,GAAG,SAAhBA,aAAaA,GAAA;EAAA,OACfC,6BAAU,CAACvG,kBAAkB,CAAuD,CAAA;AAAA,CAAA,CAAA;IAE3EwG,SAAS,GAAG,SAAZA,SAASA,CAAoCnF,GAAa,EAAI;AACvE,EAAA,IAAM8E,CAAC,GAAGG,aAAa,EAAE,CAAA;AAEzB,EAAA,IAAAG,YAAA,GAAmBP,WAAW,CAACC,CAAC,CAAC;IAAzB7C,MAAM,GAAAmD,YAAA,CAANnD,MAAM,CAAA;EAEd,OAAOA,MAAM,CAACjC,GAAa,CAAC,CAAA;AAChC,EAAC;AASM,IAAMqF,SAAS,GAAG,SAAZA,SAASA,CAAIC,GAAqC,EAAEC,EAAM,EAAI;EACvE,IAAMzG,MAAM,GAAG0G,aAAO,CAAC,YAAA;IAAA,OAAMF,GAAG,CAACC,EAAE,CAAC,CAAC/E,WAAW,CAAC+E,EAAE,CAAC,CAAA;GAAE,EAAA,CAACA,EAAE,CAAC,CAAC,CAAA;EAE3D,OAAO;AAAEzG,IAAAA,MAAM,EAANA,MAAAA;GAAQ,CAAA;AACrB;;ICpBa2G,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAlE,IAAA,EAAgE;AAAA,EAAA,IAA3BC,IAAI,GAAAD,IAAA,CAAJC,IAAI,CAAA;AACpE,EAAA,IAAMvB,KAAK,GAAGkF,SAAS,CAAC3D,IAAI,CAAC,CAAA;AAE7B,EAAA,IAAMkE,MAAM,GAAG9F,MAAM,CAACgE,MAAM,CAAC3D,KAAK,CAACnB,MAAM,IAAI,EAAE,CAAC,CAAA;AAEhD,EAAA,IAAM6G,EAAE,GAAGC,WAAK,EAAE,CAAA;EAElB,OACIC;cACKH,MAAM,CAACtD,GAAG,CAAC,UAAC0D,KAAK,EAAI;AAAA,MAAA,IAAAC,WAAA,CAAA;MAClB,OACIF,cAAC,CAAAG,cAAQ,EACL;AAAAC,QAAAA,QAAA,EAAAJ,cAAA,CAACK,gCAAc,EAAC;AAAAC,UAAAA,SAAS,EAAEL,KAAAA;SAAS,CAAA;AAAA,OAAA,EADtBH,EAAE,GAAA,GAAA,IAAI,CAAAI,CAAAA,WAAA,GAAAD,KAAK,CAACtE,IAAI,KAAA,IAAA,GAAA,KAAA,CAAA,GAAVuE,WAAA,CAAYtE,OAAO,KAAI,EAAE,CAAE,CAExC,CAAA;KAElB,CAAA;AACF,GAAA,CAAA,CAAA;AAEX;;ICvBa2E,mBAAmB,gBAG3BC,UAAI,CAAC,UAAA9E,IAAA,EAAyB;AAAA,EAAA,IAAtB0E,QAAQ,GAAA1E,IAAA,CAAR0E,QAAQ;IAAEnH,MAAM,GAAAyC,IAAA,CAANzC,MAAM,CAAA;AACzB,EAAA,OAAO+G,cAAA,CAAClH,kBAAkB,CAAC2H,QAAQ,EAAA;AAACvC,IAAAA,KAAK,EAAEjF,MAAM;AAAAmH,IAAAA,QAAA,EAAGA,QAAAA;AAAQ,GAAA,CAA+B,CAAA;AAC/F,CAAC;;;;;;;;;;;;;;;;"}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
"use strict";var e=require("use-context-selector"),n=require("react/jsx-runtime"),r=require("@form-instant/react-input-mapping"),t=require("react"),i=require("zod"),o=e.createContext({});function a(){return a=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var t in r)({}).hasOwnProperty.call(r,t)&&(e[t]=r[t])}return e},a.apply(null,arguments)}function
|
1
|
+
"use strict";var e=require("use-context-selector"),n=require("react/jsx-runtime"),r=require("@form-instant/react-input-mapping"),t=require("react"),i=require("zod"),o=e.createContext({});function a(){return a=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var t in r)({}).hasOwnProperty.call(r,t)&&(e[t]=r[t])}return e},a.apply(null,arguments)}function s(e){return e instanceof i.z.ZodDefault?e._def.defaultValue():e instanceof i.z.ZodEffects?s(e.innerType()):void 0}var f=Symbol("GetFieldConfig");function d(e){return e._def.fieldConfig?e._def.fieldConfig:"innerType"in e._def?d(e._def.innerType):"schema"in e._def?d(e._def.schema):{}}function u(e,n){if(n)return n;var r=e._def.typeName;return new Map([["ZodObject","object"],["ZodString","string"],["ZodNumber","number"],["ZodBoolean","boolean"],["ZodDate","date"],["ZodEnum","select"],["ZodNativeEnum","select"],["ZodArray","array"]]).get(r)||"string"}var c=["fieldType"],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){return p({name:e[0],schema:e[1],history:[r,n].join("."),dependecys:t})}));return u.unshift({name:{current:a,history:[r,n,a].join(".")},type:"discriminator",required:!0,default:f,fieldConfig:s,options:Array.from(o.keys()).map((function(e){return[String(e),String(e)]}))}),u},ZodObject:function(e){var n=e.name,r=e.history,t=e.dependecys;return Object.entries(e.schema.shape).map((function(e){return p({name:e[0],schema:e[1],history:[r,n].join("."),dependecys:t})}))},ZodArray:function(e){var n=e.dependecys;return[p({name:"0",schema:e.schema._def.type,history:[e.history,e.name].join("."),dependecys:n})]}};function p(e){var n=e.name,r=e.schema,t=e.history,i=e.dependecys,o=void 0===i?{}:i,f=m(r),p=d(r),y=p.fieldType,h=function(e,n){if(null==e)return{};var r={};for(var t in e)if({}.hasOwnProperty.call(e,t)){if(n.includes(t))continue;r[t]=e[t]}return r}(p,c),v=u(f,y),g=s(r),x=h,j=f._def.values,_=[];j&&(_=Array.isArray(j)?j.map((function(e){return[e,e]})):Object.entries(j));var Z,b,C=l[f._def.typeName],O=null==C?void 0:C({name:n,schema:f,history:t,dependecys:o});return"ZodArray"===f._def.typeName&&(x=a({min:(null==(Z=f._def.minLength)?void 0:Z.value)||1,max:null==(b=f._def.maxLength)?void 0:b.value},x)),{name:{current:n,history:[t,n].filter(Boolean).join(".")},type:v,required:!r.isOptional(),default:g,fieldConfig:x,options:_,schema:O,description:f.description}}function m(e){return"innerType"in e._def?m(e._def.innerType):"schema"in e._def?m(e._def.schema):e}var y=function(e){var n=e instanceof i.z.ZodEffects?e.innerType():e,r=n._def.fieldConfig;return{fields:Object.fromEntries(Object.entries(n.shape).map((function(e){var n=e[0];return[n,p({name:n,schema:e[1],dependecys:r})]})))}},h=function(n){var r=e.useContext(o);return y(r).fields[n]},v=t.memo((function(e){return n.jsx(o.Provider,{value:e.schema,children:e.children})}));exports.FIELD_CONFIG_SYMBOL=f,exports.FormInstantElement=function(e){var i=h(e.name),o=Object.values(i.schema||{}),a=t.useId();return n.jsx(n.Fragment,{children:o.map((function(e){var i;return n.jsx(t.Fragment,{children:n.jsx(r.ElementMapping,{formProps:e})},a+"-"+((null==(i=e.name)?void 0:i.history)||""))}))})},exports.FormInstantProvider=v,exports.ZodResolverContext=o,exports.createZodSchemaFieldConfig=function(){return function(e){var n=function(){};return n[f]=e,n}},exports.extendZodWithFieldConfig=function(e){e.ZodType.prototype.fieldConfig=function(e){return this._def.fieldConfig=e,this}},exports.getDefaultValueInZodStack=s,exports.getDefaultValues=function(e){for(var n=e instanceof i.z.ZodEffects?e.innerType():e,r={},t=0,o=Object.entries(n.shape);t<o.length;t++){var a=o[t],f=a[0],d=s(a[1]);void 0!==d&&(r[f]=d)}return r},exports.getFieldConfigInZodStack=d,exports.inferFieldType=u,exports.parseSchema=y,exports.useFields=h,exports.useSchema=function(e,n){return{schema:t.useMemo((function(){return e(n).fieldConfig(n)}),[n])}};
|
2
2
|
//# sourceMappingURL=react-resolver-zod.cjs.production.min.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"react-resolver-zod.cjs.production.min.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/provider.tsx","../src/element.tsx"],"sourcesContent":["import { createContext } from 'use-context-selector';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema instanceof z.ZodDefault) {\n return schema._def.defaultValue();\n }\n\n if (schema instanceof z.ZodEffects) {\n return getDefaultValueInZodStack(schema.innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import { z } from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<AdditionalRenderable = null, FieldTypes = string>(\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ): this;\n }\n}\n\nexport const extendZodWithFieldConfig = <AdditionalRenderable = null, FieldTypes = string>(\n zod: typeof z,\n) => {\n (zod.ZodType.prototype as any).fieldConfig = function (\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ) {\n this._def.fieldConfig = config;\n return this;\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\nconst typeMapping = {\n ZodDiscriminatedUnion(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n const { optionsMap, discriminator, fieldConfig } = baseSchema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n return parseField(\n key,\n field as z.ZodTypeAny,\n [history, name].join('.'),\n dependecys,\n );\n });\n\n fields.unshift({\n name: {\n current: discriminator,\n history: [history, name, discriminator].join('.'),\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n return Object.entries((baseSchema as any).shape).map(([key, field]) =>\n parseField(key, field as z.ZodTypeAny, [history, name].join('.'), dependecys),\n );\n },\n\n ZodArray(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n return [parseField('0', baseSchema._def.type, [history, name].join('.'), dependecys)];\n },\n};\n\nfunction parseField(\n name: string,\n schema: z.ZodTypeAny,\n history: string = '',\n dependecys: Record<string, any> = {},\n): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n // Arrays and objects\n const getSubSchema = typeMapping[baseSchema._def.typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.(baseSchema, name, history, dependecys);\n\n if (baseSchema._def.typeName === 'ZodArray') {\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n }\n\n const resp = {\n name: { current: name, history: [history, name].join('.') },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\n\n const fields = Object.fromEntries(\n Object.entries(shape).map(([key, field]) => [\n key,\n parseField(key, field as z.ZodTypeAny, '', dependecys),\n ]),\n );\n\n return { fields };\n};\n","import { useMemo } from 'react';\nimport { useContext } from 'use-context-selector';\nimport { ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data =\n | Zod.AnyZodObject\n | Zod.ZodEffects<Zod.AnyZodObject>\n | Zod.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const useSchema = (cbP: (dp: DP, preData?: Data) => Data, dp: DP) => {\n const schema = useMemo(() => cbP(dp).fieldConfig(dp), [dp]);\n\n return { schema };\n};\n","import { FC, memo, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = memo(({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n});\n","import { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from './useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const inputs = Object.values(field.schema || {});\n\n const id = useId();\n\n return (\n <>\n {inputs.map((props) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","z","ZodDefault","_def","defaultValue","ZodEffects","innerType","FIELD_CONFIG_SYMBOL","Symbol","getFieldConfigInZodStack","fieldConfig","inferFieldType","fieldType","type","typeName","Map","get","typeMapping","ZodDiscriminatedUnion","baseSchema","name","history","dependecys","_baseSchema$_def","optionsMap","discriminator","Object","keys","length","optionKey","option","fields","entries","shape","filter","_ref","map","_ref2","parseField","join","unshift","current","required","default","options","Array","from","key","String","ZodObject","_ref3","ZodArray","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","_baseSchema$_def$minL","_baseSchema$_def$maxL","getSubSchema","subSchema","_extends","min","minLength","max","maxLength","isOptional","description","parseSchema","S","objectSchema","fromEntries","_ref4","useFields","useContext","FormInstantProvider","memo","_jsx","jsx","Provider","children","field","inputs","id","useId","props","_props$name","Fragment","ElementMapping","formProps","config","refinementFunction","zod","ZodType","prototype","this","defaultValues","_i","_Object$entries","_Object$entries$_i","undefined","cbP","dp","useMemo"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"react-resolver-zod.cjs.production.min.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/provider.tsx","../src/element.tsx"],"sourcesContent":["import { createContext } from 'use-context-selector';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema instanceof z.ZodDefault) {\n return schema._def.defaultValue();\n }\n\n if (schema instanceof z.ZodEffects) {\n return getDefaultValueInZodStack(schema.innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import { z } from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<AdditionalRenderable = null, FieldTypes = string>(\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ): this;\n }\n}\n\nexport const extendZodWithFieldConfig = <AdditionalRenderable = null, FieldTypes = string>(\n zod: typeof z,\n) => {\n (zod.ZodType.prototype as any).fieldConfig = function (\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ) {\n this._def.fieldConfig = config;\n return this;\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\ninterface typeMapping {\n schema: z.ZodTypeAny;\n name: string;\n history?: string;\n dependecys: Record<string, any>;\n}\n\ntype typeMappingType = Record<\n 'ZodDiscriminatedUnion' | 'ZodObject' | 'ZodArray',\n (p: typeMapping) => ParsedField<any, string>[]\n>;\n\nconst typeMapping: typeMappingType = {\n ZodDiscriminatedUnion({ schema, name, history, dependecys }) {\n const { optionsMap, discriminator, fieldConfig } = schema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: [history, name].join('.'),\n dependecys,\n });\n });\n\n fields.unshift({\n name: {\n current: discriminator,\n history: [history, name, discriminator].join('.'),\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject({ schema, name, history, dependecys }) {\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: [history, name].join('.'),\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: [history, name].join('.'),\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({ name, schema, history, dependecys = {} }: typeMapping): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n // Arrays and objects\n const getSubSchema = typeMapping[baseSchema._def.typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (baseSchema._def.typeName === 'ZodArray') {\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n }\n\n const resp = {\n name: {\n current: name,\n history: [history, name].filter(Boolean).join('.'),\n },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\n\n const fields = Object.fromEntries(\n Object.entries(shape).map(([key, field]) => [\n key,\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n dependecys,\n }),\n ]),\n );\n\n return { fields };\n};\n","import { useMemo } from 'react';\nimport { useContext } from 'use-context-selector';\nimport { ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data =\n | Zod.AnyZodObject\n | Zod.ZodEffects<Zod.AnyZodObject>\n | Zod.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const useSchema = (cbP: (dp: DP, preData?: Data) => Data, dp: DP) => {\n const schema = useMemo(() => cbP(dp).fieldConfig(dp), [dp]);\n\n return { schema };\n};\n","import { FC, memo, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = memo(({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n});\n","import { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from './useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const inputs = Object.values(field.schema || {});\n\n const id = useId();\n\n return (\n <>\n {inputs.map((props) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","z","ZodDefault","_def","defaultValue","ZodEffects","innerType","FIELD_CONFIG_SYMBOL","Symbol","getFieldConfigInZodStack","fieldConfig","inferFieldType","fieldType","type","typeName","Map","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","Object","keys","length","optionKey","option","fields","entries","shape","filter","_ref2","map","_ref3","parseField","join","unshift","current","required","default","options","Array","from","key","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","_baseSchema$_def$minL","_baseSchema$_def$maxL","getSubSchema","subSchema","_extends","min","minLength","max","maxLength","Boolean","isOptional","description","parseSchema","S","objectSchema","fromEntries","_ref8","useFields","useContext","FormInstantProvider","memo","_jsx","jsx","Provider","children","field","inputs","id","useId","props","_props$name","Fragment","ElementMapping","formProps","config","refinementFunction","zod","ZodType","prototype","this","defaultValues","_i","_Object$entries","_Object$entries$_i","undefined","cbP","dp","useMemo"],"mappings":"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"}
|
@@ -96,23 +96,32 @@ function inferFieldType(schema, fieldType) {
|
|
96
96
|
|
97
97
|
var _excluded = ["fieldType"];
|
98
98
|
var typeMapping = {
|
99
|
-
ZodDiscriminatedUnion: function ZodDiscriminatedUnion(
|
100
|
-
var
|
101
|
-
|
102
|
-
|
103
|
-
|
99
|
+
ZodDiscriminatedUnion: function ZodDiscriminatedUnion(_ref) {
|
100
|
+
var schema = _ref.schema,
|
101
|
+
name = _ref.name,
|
102
|
+
history = _ref.history,
|
103
|
+
dependecys = _ref.dependecys;
|
104
|
+
var _schema$_def = schema._def,
|
105
|
+
optionsMap = _schema$_def.optionsMap,
|
106
|
+
discriminator = _schema$_def.discriminator,
|
107
|
+
fieldConfig = _schema$_def.fieldConfig;
|
104
108
|
if (!Object.keys(dependecys).length) return [{}];
|
105
109
|
var optionKey = dependecys[discriminator];
|
106
110
|
var option = optionsMap.get(optionKey);
|
107
111
|
if (!option) return [{}];
|
108
112
|
var entries = Object.entries(option.shape);
|
109
|
-
var fields = entries.filter(function (
|
110
|
-
var key =
|
113
|
+
var fields = entries.filter(function (_ref2) {
|
114
|
+
var key = _ref2[0];
|
111
115
|
return key !== discriminator;
|
112
|
-
}).map(function (
|
113
|
-
var key =
|
114
|
-
field =
|
115
|
-
return parseField(
|
116
|
+
}).map(function (_ref3) {
|
117
|
+
var key = _ref3[0],
|
118
|
+
field = _ref3[1];
|
119
|
+
return parseField({
|
120
|
+
name: key,
|
121
|
+
schema: field,
|
122
|
+
history: [history, name].join('.'),
|
123
|
+
dependecys: dependecys
|
124
|
+
});
|
116
125
|
});
|
117
126
|
fields.unshift({
|
118
127
|
name: {
|
@@ -129,24 +138,41 @@ var typeMapping = {
|
|
129
138
|
});
|
130
139
|
return fields;
|
131
140
|
},
|
132
|
-
ZodObject: function ZodObject(
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
141
|
+
ZodObject: function ZodObject(_ref4) {
|
142
|
+
var schema = _ref4.schema,
|
143
|
+
name = _ref4.name,
|
144
|
+
history = _ref4.history,
|
145
|
+
dependecys = _ref4.dependecys;
|
146
|
+
return Object.entries(schema.shape).map(function (_ref5) {
|
147
|
+
var key = _ref5[0],
|
148
|
+
field = _ref5[1];
|
149
|
+
return parseField({
|
150
|
+
name: key,
|
151
|
+
schema: field,
|
152
|
+
history: [history, name].join('.'),
|
153
|
+
dependecys: dependecys
|
154
|
+
});
|
137
155
|
});
|
138
156
|
},
|
139
|
-
ZodArray: function ZodArray(
|
140
|
-
|
157
|
+
ZodArray: function ZodArray(_ref6) {
|
158
|
+
var schema = _ref6.schema,
|
159
|
+
name = _ref6.name,
|
160
|
+
history = _ref6.history,
|
161
|
+
dependecys = _ref6.dependecys;
|
162
|
+
return [parseField({
|
163
|
+
name: '0',
|
164
|
+
schema: schema._def.type,
|
165
|
+
history: [history, name].join('.'),
|
166
|
+
dependecys: dependecys
|
167
|
+
})];
|
141
168
|
}
|
142
169
|
};
|
143
|
-
function parseField(
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
dependecys = {};
|
149
|
-
}
|
170
|
+
function parseField(_ref7) {
|
171
|
+
var name = _ref7.name,
|
172
|
+
schema = _ref7.schema,
|
173
|
+
history = _ref7.history,
|
174
|
+
_ref7$dependecys = _ref7.dependecys,
|
175
|
+
dependecys = _ref7$dependecys === void 0 ? {} : _ref7$dependecys;
|
150
176
|
var baseSchema = getBaseSchema(schema);
|
151
177
|
var _getFieldConfigInZodS = getFieldConfigInZodStack(schema),
|
152
178
|
fieldType = _getFieldConfigInZodS.fieldType,
|
@@ -168,7 +194,12 @@ function parseField(name, schema, history, dependecys) {
|
|
168
194
|
}
|
169
195
|
// Arrays and objects
|
170
196
|
var getSubSchema = typeMapping[baseSchema._def.typeName];
|
171
|
-
var subSchema = getSubSchema == null ? void 0 : getSubSchema(
|
197
|
+
var subSchema = getSubSchema == null ? void 0 : getSubSchema({
|
198
|
+
name: name,
|
199
|
+
schema: baseSchema,
|
200
|
+
history: history,
|
201
|
+
dependecys: dependecys
|
202
|
+
});
|
172
203
|
if (baseSchema._def.typeName === 'ZodArray') {
|
173
204
|
var _baseSchema$_def$minL, _baseSchema$_def$maxL;
|
174
205
|
fieldConfig = _extends({
|
@@ -179,7 +210,7 @@ function parseField(name, schema, history, dependecys) {
|
|
179
210
|
var resp = {
|
180
211
|
name: {
|
181
212
|
current: name,
|
182
|
-
history: [history, name].join('.')
|
213
|
+
history: [history, name].filter(Boolean).join('.')
|
183
214
|
},
|
184
215
|
type: type,
|
185
216
|
required: !schema.isOptional(),
|
@@ -204,10 +235,14 @@ var parseSchema = function parseSchema(S) {
|
|
204
235
|
var objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;
|
205
236
|
var shape = objectSchema.shape;
|
206
237
|
var dependecys = objectSchema._def.fieldConfig;
|
207
|
-
var fields = Object.fromEntries(Object.entries(shape).map(function (
|
208
|
-
var key =
|
209
|
-
field =
|
210
|
-
return [key, parseField(
|
238
|
+
var fields = Object.fromEntries(Object.entries(shape).map(function (_ref8) {
|
239
|
+
var key = _ref8[0],
|
240
|
+
field = _ref8[1];
|
241
|
+
return [key, parseField({
|
242
|
+
name: key,
|
243
|
+
schema: field,
|
244
|
+
dependecys: dependecys
|
245
|
+
})];
|
211
246
|
}));
|
212
247
|
return {
|
213
248
|
fields: fields
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"react-resolver-zod.esm.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/element.tsx","../src/provider.tsx"],"sourcesContent":["import { createContext } from 'use-context-selector';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema instanceof z.ZodDefault) {\n return schema._def.defaultValue();\n }\n\n if (schema instanceof z.ZodEffects) {\n return getDefaultValueInZodStack(schema.innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import { z } from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<AdditionalRenderable = null, FieldTypes = string>(\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ): this;\n }\n}\n\nexport const extendZodWithFieldConfig = <AdditionalRenderable = null, FieldTypes = string>(\n zod: typeof z,\n) => {\n (zod.ZodType.prototype as any).fieldConfig = function (\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ) {\n this._def.fieldConfig = config;\n return this;\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\nconst typeMapping = {\n ZodDiscriminatedUnion(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n const { optionsMap, discriminator, fieldConfig } = baseSchema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n return parseField(\n key,\n field as z.ZodTypeAny,\n [history, name].join('.'),\n dependecys,\n );\n });\n\n fields.unshift({\n name: {\n current: discriminator,\n history: [history, name, discriminator].join('.'),\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n return Object.entries((baseSchema as any).shape).map(([key, field]) =>\n parseField(key, field as z.ZodTypeAny, [history, name].join('.'), dependecys),\n );\n },\n\n ZodArray(\n baseSchema: z.ZodTypeAny,\n name: string,\n history: string,\n dependecys: Record<string, any>,\n ) {\n return [parseField('0', baseSchema._def.type, [history, name].join('.'), dependecys)];\n },\n};\n\nfunction parseField(\n name: string,\n schema: z.ZodTypeAny,\n history: string = '',\n dependecys: Record<string, any> = {},\n): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n // Arrays and objects\n const getSubSchema = typeMapping[baseSchema._def.typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.(baseSchema, name, history, dependecys);\n\n if (baseSchema._def.typeName === 'ZodArray') {\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n }\n\n const resp = {\n name: { current: name, history: [history, name].join('.') },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\n\n const fields = Object.fromEntries(\n Object.entries(shape).map(([key, field]) => [\n key,\n parseField(key, field as z.ZodTypeAny, '', dependecys),\n ]),\n );\n\n return { fields };\n};\n","import { useMemo } from 'react';\nimport { useContext } from 'use-context-selector';\nimport { ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data =\n | Zod.AnyZodObject\n | Zod.ZodEffects<Zod.AnyZodObject>\n | Zod.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const useSchema = (cbP: (dp: DP, preData?: Data) => Data, dp: DP) => {\n const schema = useMemo(() => cbP(dp).fieldConfig(dp), [dp]);\n\n return { schema };\n};\n","import { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from './useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const inputs = Object.values(field.schema || {});\n\n const id = useId();\n\n return (\n <>\n {inputs.map((props) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n","import { FC, memo, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = memo(({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n});\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","z","ZodDefault","_def","defaultValue","ZodEffects","innerType","undefined","getDefaultValues","objectSchema","shape","defaultValues","_i","_Object$entries","Object","entries","length","_Object$entries$_i","key","field","FIELD_CONFIG_SYMBOL","Symbol","extendZodWithFieldConfig","zod","ZodType","prototype","fieldConfig","config","createZodSchemaFieldConfig","refinementFunction","getFieldConfigInZodStack","inferFieldType","fieldType","type","typeName","zodToInputType","Map","match","get","typeMapping","ZodDiscriminatedUnion","baseSchema","name","history","dependecys","_baseSchema$_def","optionsMap","discriminator","keys","optionKey","option","fields","filter","_ref","map","_ref2","parseField","join","unshift","current","required","options","Array","from","String","ZodObject","_ref3","ZodArray","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def$minL","_baseSchema$_def$maxL","_extends","min","minLength","max","maxLength","resp","isOptional","description","parseSchema","S","fromEntries","_ref4","useSchemaBase","useContext","useFields","_parseSchema","useSchema","cbP","dp","useMemo","FormInstantElement","inputs","id","useId","_jsx","props","_props$name","Fragment","children","ElementMapping","formProps","FormInstantProvider","memo","Provider"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"react-resolver-zod.esm.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/element.tsx","../src/provider.tsx"],"sourcesContent":["import { createContext } from 'use-context-selector';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema instanceof z.ZodDefault) {\n return schema._def.defaultValue();\n }\n\n if (schema instanceof z.ZodEffects) {\n return getDefaultValueInZodStack(schema.innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import { z } from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<AdditionalRenderable = null, FieldTypes = string>(\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ): this;\n }\n}\n\nexport const extendZodWithFieldConfig = <AdditionalRenderable = null, FieldTypes = string>(\n zod: typeof z,\n) => {\n (zod.ZodType.prototype as any).fieldConfig = function (\n config: FieldConfig<AdditionalRenderable, FieldTypes>,\n ) {\n this._def.fieldConfig = config;\n return this;\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\ninterface typeMapping {\n schema: z.ZodTypeAny;\n name: string;\n history?: string;\n dependecys: Record<string, any>;\n}\n\ntype typeMappingType = Record<\n 'ZodDiscriminatedUnion' | 'ZodObject' | 'ZodArray',\n (p: typeMapping) => ParsedField<any, string>[]\n>;\n\nconst typeMapping: typeMappingType = {\n ZodDiscriminatedUnion({ schema, name, history, dependecys }) {\n const { optionsMap, discriminator, fieldConfig } = schema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: [history, name].join('.'),\n dependecys,\n });\n });\n\n fields.unshift({\n name: {\n current: discriminator,\n history: [history, name, discriminator].join('.'),\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject({ schema, name, history, dependecys }) {\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: [history, name].join('.'),\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: [history, name].join('.'),\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({ name, schema, history, dependecys = {} }: typeMapping): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n // Arrays and objects\n const getSubSchema = typeMapping[baseSchema._def.typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (baseSchema._def.typeName === 'ZodArray') {\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n }\n\n const resp = {\n name: {\n current: name,\n history: [history, name].filter(Boolean).join('.'),\n },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\n\n const fields = Object.fromEntries(\n Object.entries(shape).map(([key, field]) => [\n key,\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n dependecys,\n }),\n ]),\n );\n\n return { fields };\n};\n","import { useMemo } from 'react';\nimport { useContext } from 'use-context-selector';\nimport { ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data =\n | Zod.AnyZodObject\n | Zod.ZodEffects<Zod.AnyZodObject>\n | Zod.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const useSchema = (cbP: (dp: DP, preData?: Data) => Data, dp: DP) => {\n const schema = useMemo(() => cbP(dp).fieldConfig(dp), [dp]);\n\n return { schema };\n};\n","import { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from './useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const inputs = Object.values(field.schema || {});\n\n const id = useId();\n\n return (\n <>\n {inputs.map((props) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n","import { FC, memo, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = memo(({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n});\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","z","ZodDefault","_def","defaultValue","ZodEffects","innerType","undefined","getDefaultValues","objectSchema","shape","defaultValues","_i","_Object$entries","Object","entries","length","_Object$entries$_i","key","field","FIELD_CONFIG_SYMBOL","Symbol","extendZodWithFieldConfig","zod","ZodType","prototype","fieldConfig","config","createZodSchemaFieldConfig","refinementFunction","getFieldConfigInZodStack","inferFieldType","fieldType","type","typeName","zodToInputType","Map","match","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","keys","optionKey","option","fields","filter","_ref2","map","_ref3","parseField","join","unshift","current","required","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def$minL","_baseSchema$_def$maxL","_extends","min","minLength","max","maxLength","resp","Boolean","isOptional","description","parseSchema","S","fromEntries","_ref8","useSchemaBase","useContext","useFields","_parseSchema","useSchema","cbP","dp","useMemo","FormInstantElement","inputs","id","useId","_jsx","props","_props$name","Fragment","children","ElementMapping","formProps","FormInstantProvider","memo","Provider"],"mappings":"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"}
|