@form-instant/react-resolver-zod 1.6.2 → 1.6.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/context.d.ts CHANGED
@@ -1,2 +1,3 @@
1
+ /// <reference types="react" />
1
2
  import { zodResolverProps } from './type';
2
- export declare const ZodResolverContext: import("use-context-selector").Context<zodResolverProps>;
3
+ export declare const ZodResolverContext: import("react").Context<zodResolverProps>;
@@ -1,11 +1,11 @@
1
- import { z } from 'zod';
1
+ import z from 'zod';
2
2
  import { FieldConfig, SuperRefineFunction } from './types';
3
3
  export declare const FIELD_CONFIG_SYMBOL: unique symbol;
4
4
  declare module 'zod' {
5
5
  interface ZodType {
6
- fieldConfig<AdditionalRenderable = null, FieldTypes = string>(config: FieldConfig<AdditionalRenderable, FieldTypes>): this;
6
+ fieldConfig<Ob extends Record<string, any>>(config: FieldConfig<Ob, keyof Ob>): this;
7
7
  }
8
8
  }
9
- export declare const extendZodWithFieldConfig: <AdditionalRenderable = null, FieldTypes = string>(zod: typeof z) => void;
10
- export declare const createZodSchemaFieldConfig: <AdditionalRenderable = null, FieldTypes = string>() => (config: FieldConfig<AdditionalRenderable, FieldTypes>) => SuperRefineFunction;
11
- export declare function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig;
9
+ export declare const extendZodWithFieldConfig: (zod: typeof z) => void;
10
+ export declare const createZodSchemaFieldConfig: <Ob extends Record<string, any>, K extends keyof Ob>() => (config: FieldConfig<Ob, K>) => SuperRefineFunction;
11
+ export declare function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig<any, any>;
@@ -1,3 +1,3 @@
1
1
  import { z } from 'zod';
2
2
  import { FieldConfig } from './types';
3
- export declare function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string;
3
+ export declare function inferFieldType<Ob extends Record<string, any>, K extends keyof Ob>(schema: z.ZodTypeAny, fieldType?: FieldConfig<Ob, K>['fieldType']): string;
@@ -6,6 +6,6 @@ export interface ParsedSchema<AdditionalRenderable = null, FieldTypes = string>
6
6
  }
7
7
  export type SuperRefineFunction = () => unknown;
8
8
  export type Renderable<AdditionalRenderable = null> = string | number | boolean | null | undefined | AdditionalRenderable;
9
- export type FieldConfig<AdditionalRenderable = object, FieldTypes = string> = {
10
- fieldType?: FieldTypes;
11
- } & AdditionalRenderable;
9
+ export type FieldConfig<Ob, K extends keyof Ob> = {
10
+ fieldType: K;
11
+ } & Ob[K];
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export * from './context';
2
- export * from './element';
2
+ export * from './Element/element';
3
3
  export * from './funcs';
4
4
  export * from './provider';
5
5
  export * from './type';
@@ -1,12 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var useContextSelector = require('use-context-selector');
3
+ var react = require('react');
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
5
  var reactInputMapping = require('@form-instant/react-input-mapping');
6
- var react = require('react');
7
6
  var zod = require('zod');
8
7
 
9
- var ZodResolverContext = /*#__PURE__*/useContextSelector.createContext({});
8
+ var ZodResolverContext = /*#__PURE__*/react.createContext({});
10
9
 
11
10
  function _extends() {
12
11
  return _extends = Object.assign ? Object.assign.bind() : function (n) {
@@ -21,17 +20,17 @@ function _objectWithoutPropertiesLoose(r, e) {
21
20
  if (null == r) return {};
22
21
  var t = {};
23
22
  for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
24
- if (e.includes(n)) continue;
23
+ if (-1 !== e.indexOf(n)) continue;
25
24
  t[n] = r[n];
26
25
  }
27
26
  return t;
28
27
  }
29
28
 
30
29
  function getDefaultValueInZodStack(schema) {
31
- if (schema instanceof zod.z.ZodDefault) {
30
+ if (schema._def.typeName === 'ZodDefault') {
32
31
  return schema._def.defaultValue();
33
32
  }
34
- if (schema instanceof zod.z.ZodEffects) {
33
+ if (schema._def.typeName === 'ZodEffects') {
35
34
  return getDefaultValueInZodStack(schema.innerType());
36
35
  }
37
36
  return undefined;
@@ -52,28 +51,33 @@ function getDefaultValues(schema) {
52
51
  return defaultValues;
53
52
  }
54
53
 
54
+ var _excluded$1 = ["object", "array"];
55
55
  var FIELD_CONFIG_SYMBOL = /*#__PURE__*/Symbol('GetFieldConfig');
56
56
  var extendZodWithFieldConfig = function extendZodWithFieldConfig(zod) {
57
57
  zod.ZodType.prototype.fieldConfig = function (config) {
58
58
  this._def.fieldConfig = config;
59
59
  return this;
60
60
  };
61
- var originalObject = zod.object;
62
- zod.object = function () {
63
- var schema = originalObject.apply(void 0, arguments);
64
- schema._def["default"] = function () {
65
- return {};
66
- };
67
- return schema;
68
- };
69
- var originalArray = zod.array;
70
- zod.array = function () {
71
- var schema = originalArray.apply(void 0, arguments);
72
- schema._def["default"] = function () {
73
- return [];
74
- };
75
- return schema;
76
- };
61
+ var _zod = zod,
62
+ _object = _zod.object,
63
+ _array = _zod.array,
64
+ zodRest = _objectWithoutPropertiesLoose(_zod, _excluded$1);
65
+ zod = _extends({
66
+ object: function object() {
67
+ var schema = _object.apply(void 0, arguments);
68
+ schema._def["default"] = function () {
69
+ return {};
70
+ };
71
+ return schema;
72
+ },
73
+ array: function array() {
74
+ var schema = _array.apply(void 0, arguments);
75
+ schema._def["default"] = function () {
76
+ return [];
77
+ };
78
+ return schema;
79
+ }
80
+ }, zodRest);
77
81
  };
78
82
  var createZodSchemaFieldConfig = function createZodSchemaFieldConfig() {
79
83
  return function (config) {
@@ -150,7 +154,7 @@ var typeMapping = {
150
154
  current: discriminator,
151
155
  history: historyFormat
152
156
  },
153
- type: 'discriminator',
157
+ fieldType: 'discriminator',
154
158
  required: true,
155
159
  "default": optionKey,
156
160
  fieldConfig: fieldConfig,
@@ -228,7 +232,19 @@ function parseField(_ref7) {
228
232
  history: history,
229
233
  dependecys: dependecys
230
234
  });
231
- fieldConfig = _extends({
235
+ if (typeName === 'ZodDiscriminatedUnion') {
236
+ var _baseSchema$_def = baseSchema._def,
237
+ optionsMap = _baseSchema$_def.optionsMap,
238
+ discriminator = _baseSchema$_def.discriminator;
239
+ var optionKey = dependecys[discriminator];
240
+ if (optionKey) {
241
+ var option = optionsMap.get(optionKey);
242
+ if (option._def.fieldConfig) {
243
+ fieldConfig = _extends({}, fieldConfigBase, option._def.fieldConfig);
244
+ }
245
+ }
246
+ }
247
+ if (type === 'array') fieldConfig = _extends({
232
248
  min: ((_baseSchema$_def$minL = baseSchema._def.minLength) == null ? void 0 : _baseSchema$_def$minL.value) || 1,
233
249
  max: (_baseSchema$_def$maxL = baseSchema._def.maxLength) == null ? void 0 : _baseSchema$_def$maxL.value
234
250
  }, fieldConfig);
@@ -239,7 +255,7 @@ function parseField(_ref7) {
239
255
  current: name,
240
256
  history: historyFormat
241
257
  },
242
- type: type,
258
+ fieldType: type,
243
259
  required: !schema.isOptional(),
244
260
  "default": defaultValue,
245
261
  fieldConfig: fieldConfig,
@@ -259,10 +275,11 @@ function getBaseSchema(schema) {
259
275
  return schema;
260
276
  }
261
277
  var parseSchema = function parseSchema(S) {
278
+ var _objectSchema$_def$fi;
262
279
  var objectSchema = S instanceof zod.z.ZodEffects ? S.innerType() : S;
263
280
  var shape = objectSchema.shape;
264
- var dependecys = objectSchema._def.fieldConfig;
265
- var fields = Object.fromEntries(Object.entries(shape).map(function (_ref8) {
281
+ var dependecys = ((_objectSchema$_def$fi = objectSchema._def.fieldConfig) == null ? void 0 : _objectSchema$_def$fi.dp) || {};
282
+ var fieldsEntries = Object.entries(shape).map(function (_ref8) {
266
283
  var key = _ref8[0],
267
284
  field = _ref8[1];
268
285
  return [key, parseField({
@@ -270,14 +287,15 @@ var parseSchema = function parseSchema(S) {
270
287
  schema: field,
271
288
  dependecys: dependecys
272
289
  })];
273
- }));
290
+ });
291
+ var fields = Object.fromEntries(fieldsEntries);
274
292
  return {
275
293
  fields: fields
276
294
  };
277
295
  };
278
296
 
279
297
  var useSchemaBase = function useSchemaBase() {
280
- return useContextSelector.useContext(ZodResolverContext);
298
+ return react.useContext(ZodResolverContext);
281
299
  };
282
300
  var useFields = function useFields(key) {
283
301
  var S = useSchemaBase();
@@ -285,20 +303,105 @@ var useFields = function useFields(key) {
285
303
  fields = _parseSchema.fields;
286
304
  return fields[key];
287
305
  };
306
+ var _generateInitialValues = function generateInitialValues(schema, dp) {
307
+ try {
308
+ var shape = function () {
309
+ if (schema._def.typeName === 'ZodEffects') return schema.innerType().shape;
310
+ if (schema._def.typeName === 'ZodObject') return schema.shape;
311
+ var option = schema._def.optionsMap.get(dp[schema._def.discriminator]);
312
+ if (!option) throw new Error('No option found');
313
+ return option.shape;
314
+ }();
315
+ var initialValues = {};
316
+ var _loop = function _loop() {
317
+ var key = _Object$keys[_i];
318
+ var fieldSchema = shape[key];
319
+ var result = fieldSchema.safeParse(undefined);
320
+ // Si tiene valor por defecto
321
+ if (result.success) {
322
+ initialValues[key] = result.data;
323
+ return 0; // continue
324
+ }
325
+ if (Object.keys(dp).includes(key)) {
326
+ initialValues[key] = dp[key];
327
+ return 0; // continue
328
+ }
329
+ // Inferir tipo para campos requeridos sin default
330
+ var fieldConfig = {
331
+ ZodString: function ZodString() {
332
+ initialValues[key] = '';
333
+ },
334
+ ZodNumber: function ZodNumber() {
335
+ initialValues[key] = 0;
336
+ },
337
+ ZodBoolean: function ZodBoolean() {
338
+ initialValues[key] = false;
339
+ },
340
+ ZodDate: function ZodDate() {
341
+ initialValues[key] = null;
342
+ },
343
+ ZodArray: function ZodArray() {
344
+ initialValues[key] = [];
345
+ },
346
+ ZodObject: function ZodObject() {
347
+ initialValues[key] = _generateInitialValues(fieldSchema, dp);
348
+ },
349
+ ZodDiscriminatedUnion: function ZodDiscriminatedUnion() {
350
+ var option = fieldSchema._def.optionsMap.get(dp[fieldSchema._def.discriminator]);
351
+ if (option) {
352
+ initialValues[key] = _generateInitialValues(option, dp);
353
+ } else {
354
+ initialValues[key] = null;
355
+ }
356
+ }
357
+ };
358
+ var fieldType = fieldSchema._def.typeName;
359
+ var fieldHandler = fieldConfig[fieldType];
360
+ if (fieldHandler) {
361
+ fieldHandler();
362
+ return 0; // continue
363
+ }
364
+ initialValues[key] = null;
365
+ },
366
+ _ret;
367
+ for (var _i = 0, _Object$keys = Object.keys(shape); _i < _Object$keys.length; _i++) {
368
+ _ret = _loop();
369
+ if (_ret === 0) continue;
370
+ }
371
+ return initialValues;
372
+ } catch (error) {
373
+ console.log('🔴 initialValues error', error);
374
+ if (error instanceof Error) {
375
+ console.log(error.cause);
376
+ console.log(error.message);
377
+ }
378
+ return {};
379
+ }
380
+ };
288
381
  var useSchema = function useSchema(cbP, dp) {
289
- var schema = cbP(dp).fieldConfig(dp);
382
+ var schema = react.useMemo(function () {
383
+ return cbP(dp).fieldConfig(_extends({
384
+ dp: dp
385
+ }, cbP(dp).fieldConfig));
386
+ }, [cbP, dp]);
387
+ var initialValues = react.useMemo(function () {
388
+ return _generateInitialValues(schema, dp);
389
+ }, [schema, dp]);
290
390
  return {
291
- schema: schema
391
+ schema: schema,
392
+ initialValues: initialValues
292
393
  };
293
394
  };
294
395
 
295
396
  var FormInstantElement = function FormInstantElement(_ref) {
296
397
  var name = _ref.name;
297
398
  var field = useFields(name);
298
- var inputs = Object.values(field.schema || {});
299
399
  var id = react.useId();
400
+ if (!['object'].includes(field.fieldType)) return jsxRuntime.jsx(reactInputMapping.ElementMapping, {
401
+ formProps: field
402
+ });
300
403
  return jsxRuntime.jsx(jsxRuntime.Fragment, {
301
- children: inputs.map(function (props) {
404
+ children: Object.values(field.schema || {}).map(function (props) {
302
405
  var _props$name;
303
406
  return jsxRuntime.jsx(react.Fragment, {
304
407
  children: jsxRuntime.jsx(reactInputMapping.ElementMapping, {
@@ -324,6 +427,7 @@ exports.FormInstantProvider = FormInstantProvider;
324
427
  exports.ZodResolverContext = ZodResolverContext;
325
428
  exports.createZodSchemaFieldConfig = createZodSchemaFieldConfig;
326
429
  exports.extendZodWithFieldConfig = extendZodWithFieldConfig;
430
+ exports.generateInitialValues = _generateInitialValues;
327
431
  exports.getDefaultValueInZodStack = getDefaultValueInZodStack;
328
432
  exports.getDefaultValues = getDefaultValues;
329
433
  exports.getFieldConfigInZodStack = getFieldConfigInZodStack;
@@ -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 const originalObject = zod.object;\n zod.object = ((...args: [any]) => {\n const schema = originalObject(...args);\n (schema._def as any).default = () => ({});\n return schema;\n }) as any;\n const originalArray = zod.array;\n zod.array = ((...args: [any]) => {\n const schema = originalArray(...args);\n (schema._def as any).default = () => [];\n return schema;\n }) as any;\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\ninterface typeMappingProps {\n schema: z.ZodTypeAny;\n name: string;\n history?: string;\n dependecys: Record<string, any>;\n}\n\ntype typeMappingType = Record<\n 'ZodDiscriminatedUnion' | 'ZodObject' | 'ZodArray',\n (p: typeMappingProps) => ParsedField<any, string>[]\n>;\n\nconst typeMapping: typeMappingType = {\n ZodDiscriminatedUnion({ schema, name, history, dependecys }) {\n const { optionsMap, discriminator, fieldConfig } = schema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n });\n });\n\n let historyFormat = (history ? [history, name, discriminator] : [name, discriminator]).join(\n '.',\n );\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n fields.unshift({\n name: {\n current: discriminator,\n history: historyFormat,\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: historyFormat,\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({\n name,\n schema,\n history,\n dependecys = {},\n}: typeMappingProps): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n const { typeName } = baseSchema._def;\n\n // Arrays and objects\n const getSubSchema = typeMapping[typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat,\n },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\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 { 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 = cbP(dp).fieldConfig(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, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\n\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = ({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","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","originalObject","object","apply","arguments","originalArray","array","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","historyFormat","join","charAt","substring","parseField","unshift","current","required","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_baseSchema$_def$minL","_baseSchema$_def$maxL","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_extends","min","minLength","max","maxLength","resp","isOptional","description","parseSchema","S","fromEntries","_ref8","useSchemaBase","useContext","useFields","_parseSchema","useSchema","cbP","dp","FormInstantElement","inputs","id","useId","_jsx","props","_props$name","Fragment","children","ElementMapping","formProps","FormInstantProvider","Provider"],"mappings":"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"}
1
+ {"version":3,"file":"react-resolver-zod.cjs.development.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/Element/element.tsx","../src/provider.tsx"],"sourcesContent":["import { createContext } from 'react';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z, ZodEffects } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema._def.typeName === 'ZodDefault') {\n return schema._def.defaultValue();\n }\n\n if (schema._def.typeName === 'ZodEffects') {\n return getDefaultValueInZodStack((schema as ZodEffects<any>).innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import z from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\n\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<Ob extends Record<string, any>>(config: FieldConfig<Ob, keyof Ob>): this;\n }\n}\n\nexport const extendZodWithFieldConfig = (zod: typeof z) => {\n (zod.ZodType.prototype as any).fieldConfig = function (config: FieldConfig<any, any>) {\n this._def.fieldConfig = config;\n return this;\n };\n\n const { object, array, ...zodRest } = zod;\n\n zod = {\n object: ((...args: [any]) => {\n const schema = object(...args);\n (schema._def as any).default = () => ({});\n return schema;\n }) as any,\n array: ((...args: [any]) => {\n const schema = array(...args);\n (schema._def as any).default = () => [];\n return schema;\n }) as any,\n ...zodRest,\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <Ob extends Record<string, any>, K extends keyof Ob>() =>\n (config: FieldConfig<Ob, K>): 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<any, any> {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig<any, any>;\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<any, any>;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType<Ob extends Record<string, any>, K extends keyof Ob>(\n schema: z.ZodTypeAny,\n fieldType?: FieldConfig<Ob, K>['fieldType'],\n): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\ninterface typeMappingProps {\n schema: z.ZodTypeAny;\n name: string;\n history?: string;\n dependecys: Record<string, any>;\n}\n\ntype typeMappingType = Record<\n 'ZodDiscriminatedUnion' | 'ZodObject' | 'ZodArray',\n (p: typeMappingProps) => ParsedField<any, string>[]\n>;\n\nconst typeMapping: typeMappingType = {\n ZodDiscriminatedUnion({ schema, name, history, dependecys }) {\n const { optionsMap, discriminator, fieldConfig } = schema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n });\n });\n\n let historyFormat = (history ? [history, name, discriminator] : [name, discriminator]).join(\n '.',\n );\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n fields.unshift({\n name: {\n current: discriminator,\n history: historyFormat,\n },\n fieldType: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: historyFormat,\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({\n name,\n schema,\n history,\n dependecys = {},\n}: typeMappingProps): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n const { typeName } = baseSchema._def;\n\n // Arrays and objects\n const getSubSchema = typeMapping[typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (typeName === 'ZodDiscriminatedUnion') {\n const { optionsMap, discriminator } = baseSchema._def;\n\n const optionKey = dependecys[discriminator];\n\n if (optionKey) {\n const option = optionsMap.get(optionKey);\n\n if (option._def.fieldConfig) {\n fieldConfig = {\n ...fieldConfigBase,\n ...option._def.fieldConfig,\n };\n }\n }\n }\n\n if (type === 'array')\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat,\n },\n fieldType: type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig?.dp || {};\n\n const fieldsEntries = 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 const fields = Object.fromEntries(fieldsEntries);\n\n return { fields };\n};\n","import { useContext, useMemo } from 'react';\nimport { z, ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data = z.AnyZodObject | z.ZodEffects<z.AnyZodObject> | z.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const generateInitialValues = <S extends Record<string, any>>(schema: Data, dp: DP): S => {\n try {\n const shape = (() => {\n if (schema._def.typeName === 'ZodEffects')\n return (schema as z.ZodEffects<any>).innerType().shape;\n if (schema._def.typeName === 'ZodObject') return (schema as z.ZodObject<any>).shape;\n\n const option = schema._def.optionsMap.get(dp[schema._def.discriminator]);\n\n if (!option) throw new Error('No option found');\n\n return option.shape;\n })();\n\n const initialValues: Record<string, any> = {};\n\n for (const key of Object.keys(shape)) {\n const fieldSchema = shape[key];\n const result = fieldSchema.safeParse(undefined);\n\n // Si tiene valor por defecto\n if (result.success) {\n initialValues[key] = result.data;\n continue;\n }\n\n if (Object.keys(dp).includes(key)) {\n initialValues[key] = dp[key];\n continue;\n }\n // Inferir tipo para campos requeridos sin default\n const fieldConfig = {\n ZodString() {\n initialValues[key] = '';\n },\n ZodNumber() {\n initialValues[key] = 0;\n },\n ZodBoolean() {\n initialValues[key] = false;\n },\n ZodDate() {\n initialValues[key] = null;\n },\n ZodArray() {\n initialValues[key] = [];\n },\n ZodObject() {\n initialValues[key] = generateInitialValues(fieldSchema, dp);\n },\n ZodDiscriminatedUnion() {\n const option = fieldSchema._def.optionsMap.get(\n dp[fieldSchema._def.discriminator],\n );\n\n if (option) {\n initialValues[key] = generateInitialValues(option, dp);\n } else {\n initialValues[key] = null;\n }\n },\n };\n\n const fieldType = fieldSchema._def.typeName;\n const fieldHandler = fieldConfig[fieldType as keyof typeof fieldConfig];\n\n if (fieldHandler) {\n fieldHandler();\n continue;\n }\n\n initialValues[key] = null;\n }\n\n return initialValues as S;\n } catch (error) {\n console.log('🔴 initialValues error', error);\n\n if (error instanceof Error) {\n console.log(error.cause);\n console.log(error.message);\n }\n\n return {} as S;\n }\n};\n\nexport const useSchema = <S extends Record<string, any>>(\n cbP: (dp: DP, preData?: Data) => Data,\n dp: DP,\n) => {\n const schema = useMemo(\n () => (cbP(dp) as any).fieldConfig({ dp, ...cbP(dp).fieldConfig }),\n [cbP, dp],\n );\n\n const initialValues = useMemo(() => generateInitialValues(schema, dp) as S, [schema, dp]);\n\n return { schema, initialValues };\n};\n","'use client';\nimport { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from '../useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const id = useId();\n\n if (!['object'].includes(field.fieldType)) return <ElementMapping formProps={field} />;\n\n return (\n <>\n {Object.values(field.schema || {}).map((props: any) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n","import { FC, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\n\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = ({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","_def","typeName","defaultValue","innerType","undefined","getDefaultValues","objectSchema","z","ZodEffects","shape","defaultValues","_i","_Object$entries","Object","entries","length","_Object$entries$_i","key","field","FIELD_CONFIG_SYMBOL","Symbol","extendZodWithFieldConfig","zod","ZodType","prototype","fieldConfig","config","_zod","object","array","zodRest","_objectWithoutPropertiesLoose","_excluded","_extends","apply","arguments","createZodSchemaFieldConfig","refinementFunction","getFieldConfigInZodStack","inferFieldType","fieldType","type","zodToInputType","Map","match","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","keys","optionKey","option","fields","filter","_ref2","map","_ref3","historyFormat","join","charAt","substring","parseField","unshift","current","required","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_baseSchema$_def$minL","_baseSchema$_def$maxL","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def","min","minLength","max","maxLength","resp","isOptional","description","parseSchema","S","_objectSchema$_def$fi","dp","fieldsEntries","_ref8","fromEntries","useSchemaBase","useContext","useFields","_parseSchema","generateInitialValues","Error","initialValues","_loop","_Object$keys","fieldSchema","result","safeParse","success","data","includes","ZodString","ZodNumber","ZodBoolean","ZodDate","fieldHandler","_ret","error","console","log","cause","message","useSchema","cbP","useMemo","FormInstantElement","id","useId","_jsx","ElementMapping","formProps","_Fragment","children","props","_props$name","Fragment","FormInstantProvider","Provider"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("use-context-selector"),n=require("react/jsx-runtime"),r=require("@form-instant/react-input-mapping"),t=require("react"),i=require("zod"),o=e.createContext({});function a(){return a=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var t in r)({}).hasOwnProperty.call(r,t)&&(e[t]=r[t])}return e},a.apply(null,arguments)}function s(e){return e instanceof i.z.ZodDefault?e._def.defaultValue():e instanceof i.z.ZodEffects?s(e.innerType()):void 0}var u=Symbol("GetFieldConfig");function c(e){return e._def.fieldConfig?e._def.fieldConfig:"innerType"in e._def?c(e._def.innerType):"schema"in e._def?c(e._def.schema):{}}function f(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 d=["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 u=t[a],c=o.get(u);if(!c)return[{}];var f=Object.entries(c.shape).filter((function(e){return e[0]!==a})).map((function(e){var i=e[0],o=e[1],a=(r?[r,n]:[n]).join(".");return"."===a.charAt(0)&&(a=a.substring(1)),p({name:i,schema:o,history:a,dependecys:t})})),d=(r?[r,n,a]:[n,a]).join(".");return"."===d.charAt(0)&&(d=d.substring(1)),f.unshift({name:{current:a,history:d},type:"discriminator",required:!0,default:u,fieldConfig:s,options:Array.from(o.keys()).map((function(e){return[String(e),String(e)]}))}),f},ZodObject:function(e){var n=e.schema,r=e.name,t=e.history,i=e.dependecys,o=(t?[t,r]:[r]).join(".");return"."===o.charAt(0)&&(o=o.substring(1)),Object.entries(n.shape).map((function(e){return p({name:e[0],schema:e[1],history:o,dependecys:i})}))},ZodArray:function(e){var n=e.schema,r=e.name,t=e.history,i=e.dependecys,o=(t?[t,r]:[r]).join(".");return"."===o.charAt(0)&&(o=o.substring(1)),[p({name:"0",schema:n._def.type,history:o,dependecys:i})]}};function p(e){var n,r,t=e.name,i=e.schema,o=e.history,u=e.dependecys,p=void 0===u?{}:u,h=m(i),y=c(i),v=y.fieldType,g=function(e,n){if(null==e)return{};var r={};for(var t in e)if({}.hasOwnProperty.call(e,t)){if(n.includes(t))continue;r[t]=e[t]}return r}(y,d),b=f(h,v),j=s(i),x=g,_=h._def.values,Z=[];_&&(Z=Array.isArray(_)?_.map((function(e){return[e,e]})):Object.entries(_));var C=l[h._def.typeName],O=null==C?void 0:C({name:t,schema:h,history:o,dependecys:p});x=a({min:(null==(n=h._def.minLength)?void 0:n.value)||1,max:null==(r=h._def.maxLength)?void 0:r.value},x);var F=(o?[o,t]:[t]).join(".");return"."===F.charAt(0)&&(F=F.substring(1)),{name:{current:t,history:F},type:b,required:!i.isOptional(),default:j,fieldConfig:x,options:Z,schema:O,description:h.description}}function m(e){return"innerType"in e._def?m(e._def.innerType):"schema"in e._def?m(e._def.schema):e}var h=function(e){var n=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})]})))}},y=function(n){var r=e.useContext(o);return h(r).fields[n]};exports.FIELD_CONFIG_SYMBOL=u,exports.FormInstantElement=function(e){var i=y(e.name),o=Object.values(i.schema||{}),a=t.useId();return n.jsx(n.Fragment,{children:o.map((function(e){var i;return n.jsx(t.Fragment,{children:n.jsx(r.ElementMapping,{formProps:e})},a+"-"+((null==(i=e.name)?void 0:i.history)||""))}))})},exports.FormInstantProvider=function(e){return n.jsx(o.Provider,{value:e.schema,children:e.children})},exports.ZodResolverContext=o,exports.createZodSchemaFieldConfig=function(){return function(e){var n=function(){};return n[u]=e,n}},exports.extendZodWithFieldConfig=function(e){e.ZodType.prototype.fieldConfig=function(e){return this._def.fieldConfig=e,this};var n=e.object;e.object=function(){var e=n.apply(void 0,arguments);return e._def.default=function(){return{}},e};var r=e.array;e.array=function(){var e=r.apply(void 0,arguments);return e._def.default=function(){return[]},e}},exports.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],u=a[0],c=s(a[1]);void 0!==c&&(r[u]=c)}return r},exports.getFieldConfigInZodStack=c,exports.inferFieldType=f,exports.parseSchema=h,exports.useFields=y,exports.useSchema=function(e,n){return{schema:e(n).fieldConfig(n)}};
1
+ "use strict";var e=require("react"),n=require("react/jsx-runtime"),r=require("@form-instant/react-input-mapping"),t=require("zod"),i=e.createContext({});function o(){return o=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},o.apply(null,arguments)}function a(e,n){if(null==e)return{};var r={};for(var t in e)if({}.hasOwnProperty.call(e,t)){if(-1!==n.indexOf(t))continue;r[t]=e[t]}return r}function f(e){return"ZodDefault"===e._def.typeName?e._def.defaultValue():"ZodEffects"===e._def.typeName?f(e.innerType()):void 0}var s=["object","array"],d=Symbol("GetFieldConfig");function u(e){return e._def.fieldConfig?e._def.fieldConfig:"innerType"in e._def?u(e._def.innerType):"schema"in e._def?u(e._def.schema):{}}function c(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 l=["fieldType"],p={ZodDiscriminatedUnion:function(e){var n=e.name,r=e.history,t=e.dependecys,i=e.schema._def,o=i.optionsMap,a=i.discriminator,f=i.fieldConfig;if(!Object.keys(t).length)return[{}];var s=t[a],d=o.get(s);if(!d)return[{}];var u=Object.entries(d.shape).filter(function(e){return e[0]!==a}).map(function(e){var i=e[0],o=e[1],a=(r?[r,n]:[n]).join(".");return"."===a.charAt(0)&&(a=a.substring(1)),m({name:i,schema:o,history:a,dependecys:t})}),c=(r?[r,n,a]:[n,a]).join(".");return"."===c.charAt(0)&&(c=c.substring(1)),u.unshift({name:{current:a,history:c},fieldType:"discriminator",required:!0,default:s,fieldConfig:f,options:Array.from(o.keys()).map(function(e){return[String(e),String(e)]})}),u},ZodObject:function(e){var n=e.schema,r=e.name,t=e.history,i=e.dependecys,o=(t?[t,r]:[r]).join(".");return"."===o.charAt(0)&&(o=o.substring(1)),Object.entries(n.shape).map(function(e){return m({name:e[0],schema:e[1],history:o,dependecys:i})})},ZodArray:function(e){var n=e.schema,r=e.name,t=e.history,i=e.dependecys,o=(t?[t,r]:[r]).join(".");return"."===o.charAt(0)&&(o=o.substring(1)),[m({name:"0",schema:n._def.type,history:o,dependecys:i})]}};function m(e){var n,r,t=e.name,i=e.schema,s=e.history,d=e.dependecys,m=void 0===d?{}:d,h=y(i),v=u(i),g=v.fieldType,_=a(v,l),b=c(h,g),j=f(i),Z=_,x=h._def.values,O=[];x&&(O=Array.isArray(x)?x.map(function(e){return[e,e]}):Object.entries(x));var C=h._def.typeName,T=p[C],E=null==T?void 0:T({name:t,schema:h,history:s,dependecys:m});if("ZodDiscriminatedUnion"===C){var F=h._def,N=m[F.discriminator];if(N){var A=F.optionsMap.get(N);A._def.fieldConfig&&(Z=o({},_,A._def.fieldConfig))}}"array"===b&&(Z=o({min:(null==(n=h._def.minLength)?void 0:n.value)||1,max:null==(r=h._def.maxLength)?void 0:r.value},Z));var S=(s?[s,t]:[t]).join(".");return"."===S.charAt(0)&&(S=S.substring(1)),{name:{current:t,history:S},fieldType:b,required:!i.isOptional(),default:j,fieldConfig:Z,options:O,schema:E,description:h.description}}function y(e){return"innerType"in e._def?y(e._def.innerType):"schema"in e._def?y(e._def.schema):e}var h=function(e){var n,r=e instanceof t.z.ZodEffects?e.innerType():e,i=(null==(n=r._def.fieldConfig)?void 0:n.dp)||{},o=Object.entries(r.shape).map(function(e){var n=e[0];return[n,m({name:n,schema:e[1],dependecys:i})]});return{fields:Object.fromEntries(o)}},v=function(n){var r=e.useContext(i);return h(r).fields[n]},g=function(e,n){try{for(var r=function(){if("ZodEffects"===e._def.typeName)return e.innerType().shape;if("ZodObject"===e._def.typeName)return e.shape;var r=e._def.optionsMap.get(n[e._def.discriminator]);if(!r)throw new Error("No option found");return r.shape}(),t={},i=function(){var e=a[o],i=r[e],f=i.safeParse(void 0);if(f.success)return t[e]=f.data,0;if(Object.keys(n).includes(e))return t[e]=n[e],0;var s={ZodString:function(){t[e]=""},ZodNumber:function(){t[e]=0},ZodBoolean:function(){t[e]=!1},ZodDate:function(){t[e]=null},ZodArray:function(){t[e]=[]},ZodObject:function(){t[e]=g(i,n)},ZodDiscriminatedUnion:function(){var r=i._def.optionsMap.get(n[i._def.discriminator]);t[e]=r?g(r,n):null}}[i._def.typeName];if(s)return s(),0;t[e]=null},o=0,a=Object.keys(r);o<a.length;o++)i();return t}catch(e){return console.log("🔴 initialValues error",e),e instanceof Error&&(console.log(e.cause),console.log(e.message)),{}}};exports.FIELD_CONFIG_SYMBOL=d,exports.FormInstantElement=function(t){var i=v(t.name),o=e.useId();return["object"].includes(i.fieldType)?n.jsx(n.Fragment,{children:Object.values(i.schema||{}).map(function(t){var i;return n.jsx(e.Fragment,{children:n.jsx(r.ElementMapping,{formProps:t})},o+"-"+((null==(i=t.name)?void 0:i.history)||""))})}):n.jsx(r.ElementMapping,{formProps:i})},exports.FormInstantProvider=function(e){return n.jsx(i.Provider,{value:e.schema,children:e.children})},exports.ZodResolverContext=i,exports.createZodSchemaFieldConfig=function(){return function(e){var n=function(){};return n[d]=e,n}},exports.extendZodWithFieldConfig=function(e){e.ZodType.prototype.fieldConfig=function(e){return this._def.fieldConfig=e,this};var n=e.object,r=e.array;e=o({object:function(){var e=n.apply(void 0,arguments);return e._def.default=function(){return{}},e},array:function(){var e=r.apply(void 0,arguments);return e._def.default=function(){return[]},e}},a(e,s))},exports.generateInitialValues=g,exports.getDefaultValueInZodStack=f,exports.getDefaultValues=function(e){for(var n=e instanceof t.z.ZodEffects?e.innerType():e,r={},i=0,o=Object.entries(n.shape);i<o.length;i++){var a=o[i],s=a[0],d=f(a[1]);void 0!==d&&(r[s]=d)}return r},exports.getFieldConfigInZodStack=u,exports.inferFieldType=c,exports.parseSchema=h,exports.useFields=v,exports.useSchema=function(n,r){var t=e.useMemo(function(){return n(r).fieldConfig(o({dp:r},n(r).fieldConfig))},[n,r]),i=e.useMemo(function(){return g(t,r)},[t,r]);return{schema:t,initialValues:i}};
2
2
  //# sourceMappingURL=react-resolver-zod.cjs.production.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"react-resolver-zod.cjs.production.min.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/element.tsx","../src/provider.tsx"],"sourcesContent":["import { createContext } from 'use-context-selector';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z } 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 const originalObject = zod.object;\n zod.object = ((...args: [any]) => {\n const schema = originalObject(...args);\n (schema._def as any).default = () => ({});\n return schema;\n }) as any;\n const originalArray = zod.array;\n zod.array = ((...args: [any]) => {\n const schema = originalArray(...args);\n (schema._def as any).default = () => [];\n return schema;\n }) as any;\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\ninterface typeMappingProps {\n schema: z.ZodTypeAny;\n name: string;\n history?: string;\n dependecys: Record<string, any>;\n}\n\ntype typeMappingType = Record<\n 'ZodDiscriminatedUnion' | 'ZodObject' | 'ZodArray',\n (p: typeMappingProps) => ParsedField<any, string>[]\n>;\n\nconst typeMapping: typeMappingType = {\n ZodDiscriminatedUnion({ schema, name, history, dependecys }) {\n const { optionsMap, discriminator, fieldConfig } = schema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n });\n });\n\n let historyFormat = (history ? [history, name, discriminator] : [name, discriminator]).join(\n '.',\n );\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n fields.unshift({\n name: {\n current: discriminator,\n history: historyFormat,\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: historyFormat,\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({\n name,\n schema,\n history,\n dependecys = {},\n}: typeMappingProps): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n const { typeName } = baseSchema._def;\n\n // Arrays and objects\n const getSubSchema = typeMapping[typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat,\n },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\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 { 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 = cbP(dp).fieldConfig(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, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\n\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = ({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","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","key","field","historyFormat","join","charAt","substring","parseField","unshift","current","required","default","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_baseSchema$_def$minL","_baseSchema$_def$maxL","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_extends","min","minLength","max","maxLength","isOptional","description","parseSchema","S","objectSchema","fromEntries","_ref8","useFields","useContext","inputs","id","useId","_jsx","props","_props$name","Fragment","children","jsx","ElementMapping","formProps","Provider","config","refinementFunction","zod","ZodType","prototype","this","originalObject","object","apply","arguments","originalArray","array","defaultValues","_i","_Object$entries","_Object$entries$_i","undefined","cbP","dp"],"mappings":"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"}
1
+ {"version":3,"file":"react-resolver-zod.cjs.production.min.js","sources":["../src/context.tsx","../src/funcs/default-values.ts","../src/funcs/field-config.ts","../src/funcs/field-type-inference.ts","../src/funcs/schema-parser.ts","../src/useSchema.tsx","../src/Element/element.tsx","../src/provider.tsx"],"sourcesContent":["import { createContext } from 'react';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z, ZodEffects } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema._def.typeName === 'ZodDefault') {\n return schema._def.defaultValue();\n }\n\n if (schema._def.typeName === 'ZodEffects') {\n return getDefaultValueInZodStack((schema as ZodEffects<any>).innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import z from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\n\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<Ob extends Record<string, any>>(config: FieldConfig<Ob, keyof Ob>): this;\n }\n}\n\nexport const extendZodWithFieldConfig = (zod: typeof z) => {\n (zod.ZodType.prototype as any).fieldConfig = function (config: FieldConfig<any, any>) {\n this._def.fieldConfig = config;\n return this;\n };\n\n const { object, array, ...zodRest } = zod;\n\n zod = {\n object: ((...args: [any]) => {\n const schema = object(...args);\n (schema._def as any).default = () => ({});\n return schema;\n }) as any,\n array: ((...args: [any]) => {\n const schema = array(...args);\n (schema._def as any).default = () => [];\n return schema;\n }) as any,\n ...zodRest,\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <Ob extends Record<string, any>, K extends keyof Ob>() =>\n (config: FieldConfig<Ob, K>): 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<any, any> {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig<any, any>;\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<any, any>;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType<Ob extends Record<string, any>, K extends keyof Ob>(\n schema: z.ZodTypeAny,\n fieldType?: FieldConfig<Ob, K>['fieldType'],\n): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\ninterface typeMappingProps {\n schema: z.ZodTypeAny;\n name: string;\n history?: string;\n dependecys: Record<string, any>;\n}\n\ntype typeMappingType = Record<\n 'ZodDiscriminatedUnion' | 'ZodObject' | 'ZodArray',\n (p: typeMappingProps) => ParsedField<any, string>[]\n>;\n\nconst typeMapping: typeMappingType = {\n ZodDiscriminatedUnion({ schema, name, history, dependecys }) {\n const { optionsMap, discriminator, fieldConfig } = schema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n });\n });\n\n let historyFormat = (history ? [history, name, discriminator] : [name, discriminator]).join(\n '.',\n );\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n fields.unshift({\n name: {\n current: discriminator,\n history: historyFormat,\n },\n fieldType: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: historyFormat,\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({\n name,\n schema,\n history,\n dependecys = {},\n}: typeMappingProps): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n const { typeName } = baseSchema._def;\n\n // Arrays and objects\n const getSubSchema = typeMapping[typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (typeName === 'ZodDiscriminatedUnion') {\n const { optionsMap, discriminator } = baseSchema._def;\n\n const optionKey = dependecys[discriminator];\n\n if (optionKey) {\n const option = optionsMap.get(optionKey);\n\n if (option._def.fieldConfig) {\n fieldConfig = {\n ...fieldConfigBase,\n ...option._def.fieldConfig,\n };\n }\n }\n }\n\n if (type === 'array')\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat,\n },\n fieldType: type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig?.dp || {};\n\n const fieldsEntries = 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 const fields = Object.fromEntries(fieldsEntries);\n\n return { fields };\n};\n","import { useContext, useMemo } from 'react';\nimport { z, ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data = z.AnyZodObject | z.ZodEffects<z.AnyZodObject> | z.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const generateInitialValues = <S extends Record<string, any>>(schema: Data, dp: DP): S => {\n try {\n const shape = (() => {\n if (schema._def.typeName === 'ZodEffects')\n return (schema as z.ZodEffects<any>).innerType().shape;\n if (schema._def.typeName === 'ZodObject') return (schema as z.ZodObject<any>).shape;\n\n const option = schema._def.optionsMap.get(dp[schema._def.discriminator]);\n\n if (!option) throw new Error('No option found');\n\n return option.shape;\n })();\n\n const initialValues: Record<string, any> = {};\n\n for (const key of Object.keys(shape)) {\n const fieldSchema = shape[key];\n const result = fieldSchema.safeParse(undefined);\n\n // Si tiene valor por defecto\n if (result.success) {\n initialValues[key] = result.data;\n continue;\n }\n\n if (Object.keys(dp).includes(key)) {\n initialValues[key] = dp[key];\n continue;\n }\n // Inferir tipo para campos requeridos sin default\n const fieldConfig = {\n ZodString() {\n initialValues[key] = '';\n },\n ZodNumber() {\n initialValues[key] = 0;\n },\n ZodBoolean() {\n initialValues[key] = false;\n },\n ZodDate() {\n initialValues[key] = null;\n },\n ZodArray() {\n initialValues[key] = [];\n },\n ZodObject() {\n initialValues[key] = generateInitialValues(fieldSchema, dp);\n },\n ZodDiscriminatedUnion() {\n const option = fieldSchema._def.optionsMap.get(\n dp[fieldSchema._def.discriminator],\n );\n\n if (option) {\n initialValues[key] = generateInitialValues(option, dp);\n } else {\n initialValues[key] = null;\n }\n },\n };\n\n const fieldType = fieldSchema._def.typeName;\n const fieldHandler = fieldConfig[fieldType as keyof typeof fieldConfig];\n\n if (fieldHandler) {\n fieldHandler();\n continue;\n }\n\n initialValues[key] = null;\n }\n\n return initialValues as S;\n } catch (error) {\n console.log('🔴 initialValues error', error);\n\n if (error instanceof Error) {\n console.log(error.cause);\n console.log(error.message);\n }\n\n return {} as S;\n }\n};\n\nexport const useSchema = <S extends Record<string, any>>(\n cbP: (dp: DP, preData?: Data) => Data,\n dp: DP,\n) => {\n const schema = useMemo(\n () => (cbP(dp) as any).fieldConfig({ dp, ...cbP(dp).fieldConfig }),\n [cbP, dp],\n );\n\n const initialValues = useMemo(() => generateInitialValues(schema, dp) as S, [schema, dp]);\n\n return { schema, initialValues };\n};\n","'use client';\nimport { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from '../useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const id = useId();\n\n if (!['object'].includes(field.fieldType)) return <ElementMapping formProps={field} />;\n\n return (\n <>\n {Object.values(field.schema || {}).map((props: any) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n","import { FC, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\n\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = ({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","_def","typeName","defaultValue","innerType","FIELD_CONFIG_SYMBOL","Symbol","getFieldConfigInZodStack","fieldConfig","inferFieldType","fieldType","type","Map","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","Object","keys","length","optionKey","option","fields","entries","shape","filter","_ref2","map","_ref3","key","field","historyFormat","join","charAt","substring","parseField","unshift","current","required","default","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_baseSchema$_def$minL","_baseSchema$_def$maxL","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def","_extends","min","minLength","max","maxLength","isOptional","description","parseSchema","S","_objectSchema$_def$fi","objectSchema","z","ZodEffects","dp","fieldsEntries","_ref8","fromEntries","useFields","useContext","generateInitialValues","Error","initialValues","_loop","_Object$keys","_i","fieldSchema","result","safeParse","undefined","success","data","includes","fieldHandler","ZodString","ZodNumber","ZodBoolean","ZodDate","error","console","log","cause","message","id","useId","_jsx","_Fragment","children","props","_props$name","Fragment","jsx","ElementMapping","formProps","Provider","config","refinementFunction","zod","ZodType","prototype","this","object","array","apply","arguments","defaultValues","_Object$entries","_Object$entries$_i","cbP","useMemo"],"mappings":"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"}
@@ -1,7 +1,6 @@
1
- import { createContext, useContext } from 'use-context-selector';
1
+ import { createContext, useMemo, useContext, useId, Fragment as Fragment$1 } from 'react';
2
2
  import { jsx, Fragment } from 'react/jsx-runtime';
3
3
  import { ElementMapping } from '@form-instant/react-input-mapping';
4
- import { useId, Fragment as Fragment$1 } from 'react';
5
4
  import { z } from 'zod';
6
5
 
7
6
  var ZodResolverContext = /*#__PURE__*/createContext({});
@@ -19,17 +18,17 @@ function _objectWithoutPropertiesLoose(r, e) {
19
18
  if (null == r) return {};
20
19
  var t = {};
21
20
  for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
22
- if (e.includes(n)) continue;
21
+ if (-1 !== e.indexOf(n)) continue;
23
22
  t[n] = r[n];
24
23
  }
25
24
  return t;
26
25
  }
27
26
 
28
27
  function getDefaultValueInZodStack(schema) {
29
- if (schema instanceof z.ZodDefault) {
28
+ if (schema._def.typeName === 'ZodDefault') {
30
29
  return schema._def.defaultValue();
31
30
  }
32
- if (schema instanceof z.ZodEffects) {
31
+ if (schema._def.typeName === 'ZodEffects') {
33
32
  return getDefaultValueInZodStack(schema.innerType());
34
33
  }
35
34
  return undefined;
@@ -50,28 +49,33 @@ function getDefaultValues(schema) {
50
49
  return defaultValues;
51
50
  }
52
51
 
52
+ var _excluded$1 = ["object", "array"];
53
53
  var FIELD_CONFIG_SYMBOL = /*#__PURE__*/Symbol('GetFieldConfig');
54
54
  var extendZodWithFieldConfig = function extendZodWithFieldConfig(zod) {
55
55
  zod.ZodType.prototype.fieldConfig = function (config) {
56
56
  this._def.fieldConfig = config;
57
57
  return this;
58
58
  };
59
- var originalObject = zod.object;
60
- zod.object = function () {
61
- var schema = originalObject.apply(void 0, arguments);
62
- schema._def["default"] = function () {
63
- return {};
64
- };
65
- return schema;
66
- };
67
- var originalArray = zod.array;
68
- zod.array = function () {
69
- var schema = originalArray.apply(void 0, arguments);
70
- schema._def["default"] = function () {
71
- return [];
72
- };
73
- return schema;
74
- };
59
+ var _zod = zod,
60
+ _object = _zod.object,
61
+ _array = _zod.array,
62
+ zodRest = _objectWithoutPropertiesLoose(_zod, _excluded$1);
63
+ zod = _extends({
64
+ object: function object() {
65
+ var schema = _object.apply(void 0, arguments);
66
+ schema._def["default"] = function () {
67
+ return {};
68
+ };
69
+ return schema;
70
+ },
71
+ array: function array() {
72
+ var schema = _array.apply(void 0, arguments);
73
+ schema._def["default"] = function () {
74
+ return [];
75
+ };
76
+ return schema;
77
+ }
78
+ }, zodRest);
75
79
  };
76
80
  var createZodSchemaFieldConfig = function createZodSchemaFieldConfig() {
77
81
  return function (config) {
@@ -148,7 +152,7 @@ var typeMapping = {
148
152
  current: discriminator,
149
153
  history: historyFormat
150
154
  },
151
- type: 'discriminator',
155
+ fieldType: 'discriminator',
152
156
  required: true,
153
157
  "default": optionKey,
154
158
  fieldConfig: fieldConfig,
@@ -226,7 +230,19 @@ function parseField(_ref7) {
226
230
  history: history,
227
231
  dependecys: dependecys
228
232
  });
229
- fieldConfig = _extends({
233
+ if (typeName === 'ZodDiscriminatedUnion') {
234
+ var _baseSchema$_def = baseSchema._def,
235
+ optionsMap = _baseSchema$_def.optionsMap,
236
+ discriminator = _baseSchema$_def.discriminator;
237
+ var optionKey = dependecys[discriminator];
238
+ if (optionKey) {
239
+ var option = optionsMap.get(optionKey);
240
+ if (option._def.fieldConfig) {
241
+ fieldConfig = _extends({}, fieldConfigBase, option._def.fieldConfig);
242
+ }
243
+ }
244
+ }
245
+ if (type === 'array') fieldConfig = _extends({
230
246
  min: ((_baseSchema$_def$minL = baseSchema._def.minLength) == null ? void 0 : _baseSchema$_def$minL.value) || 1,
231
247
  max: (_baseSchema$_def$maxL = baseSchema._def.maxLength) == null ? void 0 : _baseSchema$_def$maxL.value
232
248
  }, fieldConfig);
@@ -237,7 +253,7 @@ function parseField(_ref7) {
237
253
  current: name,
238
254
  history: historyFormat
239
255
  },
240
- type: type,
256
+ fieldType: type,
241
257
  required: !schema.isOptional(),
242
258
  "default": defaultValue,
243
259
  fieldConfig: fieldConfig,
@@ -257,10 +273,11 @@ function getBaseSchema(schema) {
257
273
  return schema;
258
274
  }
259
275
  var parseSchema = function parseSchema(S) {
276
+ var _objectSchema$_def$fi;
260
277
  var objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;
261
278
  var shape = objectSchema.shape;
262
- var dependecys = objectSchema._def.fieldConfig;
263
- var fields = Object.fromEntries(Object.entries(shape).map(function (_ref8) {
279
+ var dependecys = ((_objectSchema$_def$fi = objectSchema._def.fieldConfig) == null ? void 0 : _objectSchema$_def$fi.dp) || {};
280
+ var fieldsEntries = Object.entries(shape).map(function (_ref8) {
264
281
  var key = _ref8[0],
265
282
  field = _ref8[1];
266
283
  return [key, parseField({
@@ -268,7 +285,8 @@ var parseSchema = function parseSchema(S) {
268
285
  schema: field,
269
286
  dependecys: dependecys
270
287
  })];
271
- }));
288
+ });
289
+ var fields = Object.fromEntries(fieldsEntries);
272
290
  return {
273
291
  fields: fields
274
292
  };
@@ -283,20 +301,105 @@ var useFields = function useFields(key) {
283
301
  fields = _parseSchema.fields;
284
302
  return fields[key];
285
303
  };
304
+ var _generateInitialValues = function generateInitialValues(schema, dp) {
305
+ try {
306
+ var shape = function () {
307
+ if (schema._def.typeName === 'ZodEffects') return schema.innerType().shape;
308
+ if (schema._def.typeName === 'ZodObject') return schema.shape;
309
+ var option = schema._def.optionsMap.get(dp[schema._def.discriminator]);
310
+ if (!option) throw new Error('No option found');
311
+ return option.shape;
312
+ }();
313
+ var initialValues = {};
314
+ var _loop = function _loop() {
315
+ var key = _Object$keys[_i];
316
+ var fieldSchema = shape[key];
317
+ var result = fieldSchema.safeParse(undefined);
318
+ // Si tiene valor por defecto
319
+ if (result.success) {
320
+ initialValues[key] = result.data;
321
+ return 0; // continue
322
+ }
323
+ if (Object.keys(dp).includes(key)) {
324
+ initialValues[key] = dp[key];
325
+ return 0; // continue
326
+ }
327
+ // Inferir tipo para campos requeridos sin default
328
+ var fieldConfig = {
329
+ ZodString: function ZodString() {
330
+ initialValues[key] = '';
331
+ },
332
+ ZodNumber: function ZodNumber() {
333
+ initialValues[key] = 0;
334
+ },
335
+ ZodBoolean: function ZodBoolean() {
336
+ initialValues[key] = false;
337
+ },
338
+ ZodDate: function ZodDate() {
339
+ initialValues[key] = null;
340
+ },
341
+ ZodArray: function ZodArray() {
342
+ initialValues[key] = [];
343
+ },
344
+ ZodObject: function ZodObject() {
345
+ initialValues[key] = _generateInitialValues(fieldSchema, dp);
346
+ },
347
+ ZodDiscriminatedUnion: function ZodDiscriminatedUnion() {
348
+ var option = fieldSchema._def.optionsMap.get(dp[fieldSchema._def.discriminator]);
349
+ if (option) {
350
+ initialValues[key] = _generateInitialValues(option, dp);
351
+ } else {
352
+ initialValues[key] = null;
353
+ }
354
+ }
355
+ };
356
+ var fieldType = fieldSchema._def.typeName;
357
+ var fieldHandler = fieldConfig[fieldType];
358
+ if (fieldHandler) {
359
+ fieldHandler();
360
+ return 0; // continue
361
+ }
362
+ initialValues[key] = null;
363
+ },
364
+ _ret;
365
+ for (var _i = 0, _Object$keys = Object.keys(shape); _i < _Object$keys.length; _i++) {
366
+ _ret = _loop();
367
+ if (_ret === 0) continue;
368
+ }
369
+ return initialValues;
370
+ } catch (error) {
371
+ console.log('🔴 initialValues error', error);
372
+ if (error instanceof Error) {
373
+ console.log(error.cause);
374
+ console.log(error.message);
375
+ }
376
+ return {};
377
+ }
378
+ };
286
379
  var useSchema = function useSchema(cbP, dp) {
287
- var schema = cbP(dp).fieldConfig(dp);
380
+ var schema = useMemo(function () {
381
+ return cbP(dp).fieldConfig(_extends({
382
+ dp: dp
383
+ }, cbP(dp).fieldConfig));
384
+ }, [cbP, dp]);
385
+ var initialValues = useMemo(function () {
386
+ return _generateInitialValues(schema, dp);
387
+ }, [schema, dp]);
288
388
  return {
289
- schema: schema
389
+ schema: schema,
390
+ initialValues: initialValues
290
391
  };
291
392
  };
292
393
 
293
394
  var FormInstantElement = function FormInstantElement(_ref) {
294
395
  var name = _ref.name;
295
396
  var field = useFields(name);
296
- var inputs = Object.values(field.schema || {});
297
397
  var id = useId();
398
+ if (!['object'].includes(field.fieldType)) return jsx(ElementMapping, {
399
+ formProps: field
400
+ });
298
401
  return jsx(Fragment, {
299
- children: inputs.map(function (props) {
402
+ children: Object.values(field.schema || {}).map(function (props) {
300
403
  var _props$name;
301
404
  return jsx(Fragment$1, {
302
405
  children: jsx(ElementMapping, {
@@ -316,5 +419,5 @@ var FormInstantProvider = function FormInstantProvider(_ref) {
316
419
  });
317
420
  };
318
421
 
319
- export { FIELD_CONFIG_SYMBOL, FormInstantElement, FormInstantProvider, ZodResolverContext, createZodSchemaFieldConfig, extendZodWithFieldConfig, getDefaultValueInZodStack, getDefaultValues, getFieldConfigInZodStack, inferFieldType, parseSchema, useFields, useSchema };
422
+ export { FIELD_CONFIG_SYMBOL, FormInstantElement, FormInstantProvider, ZodResolverContext, createZodSchemaFieldConfig, extendZodWithFieldConfig, _generateInitialValues as generateInitialValues, getDefaultValueInZodStack, getDefaultValues, getFieldConfigInZodStack, inferFieldType, parseSchema, useFields, useSchema };
320
423
  //# sourceMappingURL=react-resolver-zod.esm.js.map
@@ -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 const originalObject = zod.object;\n zod.object = ((...args: [any]) => {\n const schema = originalObject(...args);\n (schema._def as any).default = () => ({});\n return schema;\n }) as any;\n const originalArray = zod.array;\n zod.array = ((...args: [any]) => {\n const schema = originalArray(...args);\n (schema._def as any).default = () => [];\n return schema;\n }) as any;\n};\n\nexport const createZodSchemaFieldConfig =\n <AdditionalRenderable = null, FieldTypes = string>() =>\n (config: FieldConfig<AdditionalRenderable, FieldTypes>): SuperRefineFunction => {\n const refinementFunction: SuperRefineFunction = () => {\n // Do nothing.\n };\n\n // @ts-expect-error This is a symbol and not a real value.\n refinementFunction[FIELD_CONFIG_SYMBOL] = config;\n\n return refinementFunction;\n };\n\nexport function getFieldConfigInZodStack(schema: z.ZodTypeAny): FieldConfig {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig;\n }\n\n // Si el esquema es un ZodEffects, busca en el innerType\n if ('innerType' in schema._def) {\n return getFieldConfigInZodStack(schema._def.innerType as z.ZodAny);\n }\n\n // Si el esquema es un ZodEffects con un schema interno, busca en el schema\n if ('schema' in schema._def) {\n return getFieldConfigInZodStack(schema._def.schema as z.ZodAny);\n }\n\n // Si no se encuentra fieldConfig, retorna un objeto vacío\n return {} as FieldConfig;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType(schema: z.ZodTypeAny, fieldType?: FieldConfig['fieldType']): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\ninterface typeMappingProps {\n schema: z.ZodTypeAny;\n name: string;\n history?: string;\n dependecys: Record<string, any>;\n}\n\ntype typeMappingType = Record<\n 'ZodDiscriminatedUnion' | 'ZodObject' | 'ZodArray',\n (p: typeMappingProps) => ParsedField<any, string>[]\n>;\n\nconst typeMapping: typeMappingType = {\n ZodDiscriminatedUnion({ schema, name, history, dependecys }) {\n const { optionsMap, discriminator, fieldConfig } = schema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n });\n });\n\n let historyFormat = (history ? [history, name, discriminator] : [name, discriminator]).join(\n '.',\n );\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n fields.unshift({\n name: {\n current: discriminator,\n history: historyFormat,\n },\n type: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: historyFormat,\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({\n name,\n schema,\n history,\n dependecys = {},\n}: typeMappingProps): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n const { typeName } = baseSchema._def;\n\n // Arrays and objects\n const getSubSchema = typeMapping[typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat,\n },\n type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig;\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 { 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 = cbP(dp).fieldConfig(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, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\n\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = ({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","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","originalObject","object","apply","arguments","originalArray","array","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","historyFormat","join","charAt","substring","parseField","unshift","current","required","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_baseSchema$_def$minL","_baseSchema$_def$maxL","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","_objectWithoutPropertiesLoose","_excluded","values","optionValues","isArray","value","getSubSchema","subSchema","_extends","min","minLength","max","maxLength","resp","isOptional","description","parseSchema","S","fromEntries","_ref8","useSchemaBase","useContext","useFields","_parseSchema","useSchema","cbP","dp","FormInstantElement","inputs","id","useId","_jsx","props","_props$name","Fragment","children","ElementMapping","formProps","FormInstantProvider","Provider"],"mappings":";;;;;;IAGaA,kBAAkB,gBAAGC,aAAa,CAAmB,EAAsB;;;;;;;;;;;;;;;;;;;;;ACAlF,SAAUC,yBAAyBA,CAACC,MAAoB,EAAA;AAC1D,EAAA,IAAIA,MAAM,YAAYC,CAAC,CAACC,UAAU,EAAE;AAChC,IAAA,OAAOF,MAAM,CAACG,IAAI,CAACC,YAAY,EAAE,CAAA;AACpC,GAAA;AAED,EAAA,IAAIJ,MAAM,YAAYC,CAAC,CAACI,UAAU,EAAE;AAChC,IAAA,OAAON,yBAAyB,CAACC,MAAM,CAACM,SAAS,EAAE,CAAC,CAAA;AACvD,GAAA;AAED,EAAA,OAAOC,SAAS,CAAA;AACpB,CAAA;AAEM,SAAUC,gBAAgBA,CAACR,MAA0B,EAAA;AACvD,EAAA,IAAMS,YAAY,GAAGT,MAAM,YAAYC,CAAC,CAACI,UAAU,GAAGL,MAAM,CAACM,SAAS,EAAE,GAAGN,MAAM,CAAA;AACjF,EAAA,IAAMU,KAAK,GAAGD,YAAY,CAACC,KAAK,CAAA;EAEhC,IAAMC,aAAa,GAAwB,EAAE,CAAA;AAE7C,EAAA,KAAA,IAAAC,EAAA,GAAAC,CAAAA,EAAAA,eAAA,GAA2BC,MAAM,CAACC,OAAO,CAACL,KAAK,CAAC,EAAAE,EAAA,GAAAC,eAAA,CAAAG,MAAA,EAAAJ,EAAA,EAAE,EAAA;AAA7C,IAAA,IAAAK,kBAAA,GAAAJ,eAAA,CAAAD,EAAA,CAAA;AAAOM,MAAAA,GAAG,GAAAD,kBAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,KAAK,GAAAF,kBAAA,CAAA,CAAA,CAAA,CAAA;AAClB,IAAA,IAAMb,YAAY,GAAGL,yBAAyB,CAACoB,KAAqB,CAAC,CAAA;IACrE,IAAIf,YAAY,KAAKG,SAAS,EAAE;AAC5BI,MAAAA,aAAa,CAACO,GAAG,CAAC,GAAGd,YAAY,CAAA;AACpC,KAAA;AACJ,GAAA;AAED,EAAA,OAAOO,aAAa,CAAA;AACxB;;IC3BaS,mBAAmB,gBAAGC,MAAM,CAAC,gBAAgB,EAAC;IAU9CC,wBAAwB,GAAG,SAA3BA,wBAAwBA,CACjCC,GAAa,EACb;EACCA,GAAG,CAACC,OAAO,CAACC,SAAiB,CAACC,WAAW,GAAG,UACzCC,MAAqD,EAAA;AAErD,IAAA,IAAI,CAACxB,IAAI,CAACuB,WAAW,GAAGC,MAAM,CAAA;AAC9B,IAAA,OAAO,IAAI,CAAA;GACd,CAAA;AACD,EAAA,IAAMC,cAAc,GAAGL,GAAG,CAACM,MAAM,CAAA;EACjCN,GAAG,CAACM,MAAM,GAAI,YAAmB;AAC7B,IAAA,IAAM7B,MAAM,GAAG4B,cAAc,CAAAE,KAAA,CAAA,KAAA,CAAA,EAAAC,SAAQ,CAAC,CAAA;IACrC/B,MAAM,CAACG,IAAY,CAAA,SAAA,CAAQ,GAAG,YAAA;AAAA,MAAA,OAAO,EAAE,CAAA;KAAC,CAAA;AACzC,IAAA,OAAOH,MAAM,CAAA;GACR,CAAA;AACT,EAAA,IAAMgC,aAAa,GAAGT,GAAG,CAACU,KAAK,CAAA;EAC/BV,GAAG,CAACU,KAAK,GAAI,YAAmB;AAC5B,IAAA,IAAMjC,MAAM,GAAGgC,aAAa,CAAAF,KAAA,CAAA,KAAA,CAAA,EAAAC,SAAQ,CAAC,CAAA;IACpC/B,MAAM,CAACG,IAAY,CAAA,SAAA,CAAQ,GAAG,YAAA;AAAA,MAAA,OAAM,EAAE,CAAA;AAAA,KAAA,CAAA;AACvC,IAAA,OAAOH,MAAM,CAAA;GACR,CAAA;AACb,EAAC;AAEYkC,IAAAA,0BAA0B,GACnC,SADSA,0BAA0BA,GAAA;EAAA,OAEnC,UAACP,MAAqD,EAAyB;AAC3E,IAAA,IAAMQ,kBAAkB,GAAwB,SAA1CA,kBAAkBA,GAA6B;AACjD;KACH,CAAA;AAED;AACAA,IAAAA,kBAAkB,CAACf,mBAAmB,CAAC,GAAGO,MAAM,CAAA;AAEhD,IAAA,OAAOQ,kBAAkB,CAAA;GAC5B,CAAA;AAAA,EAAA;AAEC,SAAUC,wBAAwBA,CAACpC,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,OAAOiC,wBAAwB,CAACpC,MAAM,CAACG,IAAI,CAACG,SAAqB,CAAC,CAAA;AACrE,GAAA;AAED;AACA,EAAA,IAAI,QAAQ,IAAIN,MAAM,CAACG,IAAI,EAAE;AACzB,IAAA,OAAOiC,wBAAwB,CAACpC,MAAM,CAACG,IAAI,CAACH,MAAkB,CAAC,CAAA;AAClE,GAAA;AAED;AACA,EAAA,OAAO,EAAiB,CAAA;AAC5B;;AC/DgB,SAAAqC,cAAcA,CAACrC,MAAoB,EAAEsC,SAAoC,EAAA;AACrF,EAAA,IAAIA,SAAS,EAAE;AACX,IAAA,OAAOA,SAAS,CAAA;AACnB,GAAA;AAED,EAAA,IAAMC,IAAI,GAAGvC,MAAM,CAACG,IAAI,CAACqC,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,IAAnC/C,MAAM,GAAA+C,IAAA,CAAN/C,MAAM;MAAEgD,IAAI,GAAAD,IAAA,CAAJC,IAAI;MAAEC,OAAO,GAAAF,IAAA,CAAPE,OAAO;MAAEC,UAAU,GAAAH,IAAA,CAAVG,UAAU,CAAA;AACrD,IAAA,IAAAC,YAAA,GAAmDnD,MAAM,CAACG,IAAI;MAAtDiD,UAAU,GAAAD,YAAA,CAAVC,UAAU;MAAEC,aAAa,GAAAF,YAAA,CAAbE,aAAa;MAAE3B,WAAW,GAAAyB,YAAA,CAAXzB,WAAW,CAAA;AAE9C,IAAA,IAAI,CAACZ,MAAM,CAACwC,IAAI,CAACJ,UAAU,CAAC,CAAClC,MAAM,EAAE,OAAO,CAAC,EAAE,CAA+B,CAAA;AAE9E,IAAA,IAAMuC,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,IAAMzC,OAAO,GAAGD,MAAM,CAACC,OAAO,CAACyC,MAAM,CAAC9C,KAAK,CAAC,CAAA;AAE5C,IAAA,IAAM+C,MAAM,GAAG1C,OAAO,CACjB2C,MAAM,CAAC,UAAAC,KAAA,EAAA;MAAA,IAAEzC,GAAG,GAAAyC,KAAA,CAAA,CAAA,CAAA,CAAA;MAAA,OAAMzC,GAAG,KAAKmC,aAAa,CAAA;AAAA,KAAA,CAAC,CACxCO,GAAG,CAAC,UAAAC,KAAA,EAAiB;MAAA,IAAf3C,GAAG,GAAA2C,KAAA,CAAA,CAAA,CAAA;AAAE1C,QAAAA,KAAK,GAAA0C,KAAA,CAAA,CAAA,CAAA,CAAA;AACb,MAAA,IAAIC,aAAa,GAAG,CAACb,OAAO,GAAG,CAACA,OAAO,EAAED,IAAI,CAAC,GAAG,CAACA,IAAI,CAAC,EAAEe,IAAI,CAAC,GAAG,CAAC,CAAA;AAElE,MAAA,IAAID,aAAa,CAACE,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAEF,aAAa,GAAGA,aAAa,CAACG,SAAS,CAAC,CAAC,CAAC,CAAA;AAC/E,MAAA,OAAOC,UAAU,CAAC;AACdlB,QAAAA,IAAI,EAAE9B,GAAG;AACTlB,QAAAA,MAAM,EAAEmB,KAAqB;AAC7B8B,QAAAA,OAAO,EAAEa,aAAa;AACtBZ,QAAAA,UAAU,EAAVA,UAAAA;AACH,OAAA,CAAC,CAAA;AACN,KAAC,CAAC,CAAA;IAEN,IAAIY,aAAa,GAAG,CAACb,OAAO,GAAG,CAACA,OAAO,EAAED,IAAI,EAAEK,aAAa,CAAC,GAAG,CAACL,IAAI,EAAEK,aAAa,CAAC,EAAEU,IAAI,CACvF,GAAG,CACN,CAAA;AAED,IAAA,IAAID,aAAa,CAACE,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAEF,aAAa,GAAGA,aAAa,CAACG,SAAS,CAAC,CAAC,CAAC,CAAA;IAE/ER,MAAM,CAACU,OAAO,CAAC;AACXnB,MAAAA,IAAI,EAAE;AACFoB,QAAAA,OAAO,EAAEf,aAAa;AACtBJ,QAAAA,OAAO,EAAEa,aAAAA;OACZ;AACDvB,MAAAA,IAAI,EAAE,eAAe;AACrB8B,MAAAA,QAAQ,EAAE,IAAI;AACd,MAAA,SAAA,EAASd,SAAS;AAClB7B,MAAAA,WAAW,EAAXA,WAAW;AACX4C,MAAAA,OAAO,EAAEC,KAAK,CAACC,IAAI,CAACpB,UAAU,CAACE,IAAI,EAAE,CAAC,CAACM,GAAG,CAAC,UAAC1C,GAAG,EAAA;QAAA,OAAK,CAACuD,MAAM,CAACvD,GAAG,CAAC,EAAEuD,MAAM,CAACvD,GAAG,CAAC,CAAC,CAAA;AAAA,OAAA,CAAA;AACjF,KAAA,CAAC,CAAA;AAEF,IAAA,OAAOuC,MAAM,CAAA;GAChB;AAEDiB,EAAAA,SAAS,EAATA,SAAAA,SAASA,CAAAC,KAAA,EAAsC;AAAA,IAAA,IAAnC3E,MAAM,GAAA2E,KAAA,CAAN3E,MAAM;MAAEgD,IAAI,GAAA2B,KAAA,CAAJ3B,IAAI;MAAEC,OAAO,GAAA0B,KAAA,CAAP1B,OAAO;MAAEC,UAAU,GAAAyB,KAAA,CAAVzB,UAAU,CAAA;AACzC,IAAA,IAAIY,aAAa,GAAG,CAACb,OAAO,GAAG,CAACA,OAAO,EAAED,IAAI,CAAC,GAAG,CAACA,IAAI,CAAC,EAAEe,IAAI,CAAC,GAAG,CAAC,CAAA;AAElE,IAAA,IAAID,aAAa,CAACE,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAEF,aAAa,GAAGA,aAAa,CAACG,SAAS,CAAC,CAAC,CAAC,CAAA;AAC/E,IAAA,OAAOnD,MAAM,CAACC,OAAO,CAAEf,MAAc,CAACU,KAAK,CAAC,CAACkD,GAAG,CAAC,UAAAgB,KAAA,EAAA;MAAA,IAAE1D,GAAG,GAAA0D,KAAA,CAAA,CAAA,CAAA;AAAEzD,QAAAA,KAAK,GAAAyD,KAAA,CAAA,CAAA,CAAA,CAAA;AAAA,MAAA,OACzDV,UAAU,CAAC;AACPlB,QAAAA,IAAI,EAAE9B,GAAG;AACTlB,QAAAA,MAAM,EAAEmB,KAAqB;AAC7B8B,QAAAA,OAAO,EAAEa,aAAa;AACtBZ,QAAAA,UAAU,EAAVA,UAAAA;AACH,OAAA,CAAC,CAAA;KACL,CAAA,CAAA;GACJ;AAED2B,EAAAA,QAAQ,EAARA,SAAAA,QAAQA,CAAAC,KAAA,EAAsC;AAAA,IAAA,IAAnC9E,MAAM,GAAA8E,KAAA,CAAN9E,MAAM;MAAEgD,IAAI,GAAA8B,KAAA,CAAJ9B,IAAI;MAAEC,OAAO,GAAA6B,KAAA,CAAP7B,OAAO;MAAEC,UAAU,GAAA4B,KAAA,CAAV5B,UAAU,CAAA;AACxC,IAAA,IAAIY,aAAa,GAAG,CAACb,OAAO,GAAG,CAACA,OAAO,EAAED,IAAI,CAAC,GAAG,CAACA,IAAI,CAAC,EAAEe,IAAI,CAAC,GAAG,CAAC,CAAA;AAElE,IAAA,IAAID,aAAa,CAACE,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAEF,aAAa,GAAGA,aAAa,CAACG,SAAS,CAAC,CAAC,CAAC,CAAA;IAC/E,OAAO,CACHC,UAAU,CAAC;AACPlB,MAAAA,IAAI,EAAE,GAAG;AACThD,MAAAA,MAAM,EAAEA,MAAM,CAACG,IAAI,CAACoC,IAAI;AACxBU,MAAAA,OAAO,EAAEa,aAAa;AACtBZ,MAAAA,UAAU,EAAVA,UAAAA;KACH,CAAC,CACL,CAAA;AACL,GAAA;CACH,CAAA;AAED,SAASgB,UAAUA,CAAAa,KAAA,EAKA;EAAA,IAAAC,qBAAA,EAAAC,qBAAA,CAAA;AAAA,EAAA,IAJfjC,IAAI,GAAA+B,KAAA,CAAJ/B,IAAI;IACJhD,MAAM,GAAA+E,KAAA,CAAN/E,MAAM;IACNiD,OAAO,GAAA8B,KAAA,CAAP9B,OAAO;IAAAiC,gBAAA,GAAAH,KAAA,CACP7B,UAAU;AAAVA,IAAAA,UAAU,GAAAgC,gBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,gBAAA,CAAA;AAEf,EAAA,IAAMC,UAAU,GAAGC,aAAa,CAACpF,MAAM,CAAC,CAAA;AACxC,EAAA,IAAAqF,qBAAA,GAA0CjD,wBAAwB,CAACpC,MAAM,CAAC;IAAlEsC,SAAS,GAAA+C,qBAAA,CAAT/C,SAAS;AAAKgD,IAAAA,eAAe,GAAAC,6BAAA,CAAAF,qBAAA,EAAAG,SAAA,CAAA,CAAA;AACrC,EAAA,IAAMjD,IAAI,GAAGF,cAAc,CAAC8C,UAAU,EAAE7C,SAAS,CAAC,CAAA;AAClD,EAAA,IAAMlC,YAAY,GAAGL,yBAAyB,CAACC,MAAM,CAAC,CAAA;EAEtD,IAAI0B,WAAW,GAAG4D,eAAe,CAAA;AAEjC;AACA,EAAA,IAAMhB,OAAO,GAAGa,UAAU,CAAChF,IAAI,CAACsF,MAAM,CAAA;EACtC,IAAIC,YAAY,GAAuB,EAAE,CAAA;AACzC,EAAA,IAAIpB,OAAO,EAAE;AACT,IAAA,IAAI,CAACC,KAAK,CAACoB,OAAO,CAACrB,OAAO,CAAC,EAAE;AACzBoB,MAAAA,YAAY,GAAG5E,MAAM,CAACC,OAAO,CAACuD,OAAO,CAAC,CAAA;AACzC,KAAA,MAAM;AACHoB,MAAAA,YAAY,GAAGpB,OAAO,CAACV,GAAG,CAAC,UAACgC,KAAK,EAAA;AAAA,QAAA,OAAK,CAACA,KAAK,EAAEA,KAAK,CAAC,CAAA;OAAC,CAAA,CAAA;AACxD,KAAA;AACJ,GAAA;AAED,EAAA,IAAQpD,QAAQ,GAAK2C,UAAU,CAAChF,IAAI,CAA5BqC,QAAQ,CAAA;AAEhB;AACA,EAAA,IAAMqD,YAAY,GAAGhD,WAAW,CAACL,QAAoC,CAAC,CAAA;AAEtE,EAAA,IAAMsD,SAAS,GAAGD,YAAY,IAAA,IAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAG;AAC7B7C,IAAAA,IAAI,EAAJA,IAAI;AACJhD,IAAAA,MAAM,EAAEmF,UAAU;AAClBlC,IAAAA,OAAO,EAAPA,OAAO;AACPC,IAAAA,UAAU,EAAVA,UAAAA;AACH,GAAA,CAAC,CAAA;AAEFxB,EAAAA,WAAW,GAAAqE,QAAA,CAAA;AACPC,IAAAA,GAAG,EAAE,CAAA,CAAAhB,qBAAA,GAAAG,UAAU,CAAChF,IAAI,CAAC8F,SAAS,KAAzBjB,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAA2BY,KAAK,KAAI,CAAC;IAC1CM,GAAG,EAAA,CAAAjB,qBAAA,GAAEE,UAAU,CAAChF,IAAI,CAACgG,SAAS,KAAzBlB,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAA2BW,KAAAA;AAAK,GAAA,EAClClE,WAAW,CACjB,CAAA;AAED,EAAA,IAAIoC,aAAa,GAAG,CAACb,OAAO,GAAG,CAACA,OAAO,EAAED,IAAI,CAAC,GAAG,CAACA,IAAI,CAAC,EAAEe,IAAI,CAAC,GAAG,CAAC,CAAA;AAElE,EAAA,IAAID,aAAa,CAACE,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAEF,aAAa,GAAGA,aAAa,CAACG,SAAS,CAAC,CAAC,CAAC,CAAA;AAE/E,EAAA,IAAMmC,IAAI,GAAG;AACTpD,IAAAA,IAAI,EAAE;AACFoB,MAAAA,OAAO,EAAEpB,IAAI;AACbC,MAAAA,OAAO,EAAEa,aAAAA;KACZ;AACDvB,IAAAA,IAAI,EAAJA,IAAI;AACJ8B,IAAAA,QAAQ,EAAE,CAACrE,MAAM,CAACqG,UAAU,EAAE;AAC9B,IAAA,SAAA,EAASjG,YAAY;AACrBsB,IAAAA,WAAW,EAAXA,WAAW;AACX4C,IAAAA,OAAO,EAAEoB,YAAY;AACrB1F,IAAAA,MAAM,EAAE8F,SAAS;IACjBQ,WAAW,EAAEnB,UAAU,CAACmB,WAAAA;GAC3B,CAAA;AAED,EAAA,OAAOF,IAAI,CAAA;AACf,CAAA;AAEA,SAAShB,aAAaA,CAClBpF,MAA2C,EAAA;AAE3C,EAAA,IAAI,WAAW,IAAIA,MAAM,CAACG,IAAI,EAAE;AAC5B,IAAA,OAAOiF,aAAa,CAACpF,MAAM,CAACG,IAAI,CAACG,SAAsB,CAAC,CAAA;AAC3D,GAAA;AACD,EAAA,IAAI,QAAQ,IAAIN,MAAM,CAACG,IAAI,EAAE;AACzB,IAAA,OAAOiF,aAAa,CAACpF,MAAM,CAACG,IAAI,CAACH,MAAmB,CAAC,CAAA;AACxD,GAAA;AAED,EAAA,OAAOA,MAAmB,CAAA;AAC9B,CAAA;IAEauG,WAAW,GAAG,SAAdA,WAAWA,CAAIC,CAAqB,EAAkB;AAC/D,EAAA,IAAM/F,YAAY,GAAG+F,CAAC,YAAYvG,CAAC,CAACI,UAAU,GAAGmG,CAAC,CAAClG,SAAS,EAAE,GAAGkG,CAAC,CAAA;AAClE,EAAA,IAAM9F,KAAK,GAAGD,YAAY,CAACC,KAAK,CAAA;AAEhC,EAAA,IAAMwC,UAAU,GAAIzC,YAAY,CAACN,IAAY,CAACuB,WAAW,CAAA;AAEzD,EAAA,IAAM+B,MAAM,GAAG3C,MAAM,CAAC2F,WAAW,CAC7B3F,MAAM,CAACC,OAAO,CAACL,KAAK,CAAC,CAACkD,GAAG,CAAC,UAAA8C,KAAA,EAAA;IAAA,IAAExF,GAAG,GAAAwF,KAAA,CAAA,CAAA,CAAA;AAAEvF,MAAAA,KAAK,GAAAuF,KAAA,CAAA,CAAA,CAAA,CAAA;AAAA,IAAA,OAAM,CACxCxF,GAAG,EACHgD,UAAU,CAAC;AACPlB,MAAAA,IAAI,EAAE9B,GAAG;AACTlB,MAAAA,MAAM,EAAEmB,KAAqB;AAC7B+B,MAAAA,UAAU,EAAVA,UAAAA;KACH,CAAC,CACL,CAAA;AAAA,GAAA,CAAC,CACL,CAAA;EAED,OAAO;AAAEO,IAAAA,MAAM,EAANA,MAAAA;GAAQ,CAAA;AACrB;;ACzLA,IAAMkD,aAAa,GAAG,SAAhBA,aAAaA,GAAA;EAAA,OACfC,UAAU,CAAC/G,kBAAkB,CAAuD,CAAA;AAAA,CAAA,CAAA;IAE3EgH,SAAS,GAAG,SAAZA,SAASA,CAAoC3F,GAAa,EAAI;AACvE,EAAA,IAAMsF,CAAC,GAAGG,aAAa,EAAE,CAAA;AAEzB,EAAA,IAAAG,YAAA,GAAmBP,WAAW,CAACC,CAAC,CAAC;IAAzB/C,MAAM,GAAAqD,YAAA,CAANrD,MAAM,CAAA;EAEd,OAAOA,MAAM,CAACvC,GAAa,CAAC,CAAA;AAChC,EAAC;AASM,IAAM6F,SAAS,GAAG,SAAZA,SAASA,CAAIC,GAAqC,EAAEC,EAAM,EAAI;EACvE,IAAMjH,MAAM,GAAGgH,GAAG,CAACC,EAAE,CAAC,CAACvF,WAAW,CAACuF,EAAE,CAAC,CAAA;EAEtC,OAAO;AAAEjH,IAAAA,MAAM,EAANA,MAAAA;GAAQ,CAAA;AACrB;;ICnBakH,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAnE,IAAA,EAAgE;AAAA,EAAA,IAA3BC,IAAI,GAAAD,IAAA,CAAJC,IAAI,CAAA;AACpE,EAAA,IAAM7B,KAAK,GAAG0F,SAAS,CAAC7D,IAAI,CAAC,CAAA;AAE7B,EAAA,IAAMmE,MAAM,GAAGrG,MAAM,CAAC2E,MAAM,CAACtE,KAAK,CAACnB,MAAM,IAAI,EAAE,CAAC,CAAA;AAEhD,EAAA,IAAMoH,EAAE,GAAGC,KAAK,EAAE,CAAA;EAElB,OACIC;cACKH,MAAM,CAACvD,GAAG,CAAC,UAAC2D,KAAK,EAAI;AAAA,MAAA,IAAAC,WAAA,CAAA;MAClB,OACIF,GAAC,CAAAG,UAAQ,EACL;AAAAC,QAAAA,QAAA,EAAAJ,GAAA,CAACK,cAAc,EAAC;AAAAC,UAAAA,SAAS,EAAEL,KAAAA;SAAS,CAAA;AAAA,OAAA,EADtBH,EAAE,GAAA,GAAA,IAAI,CAAAI,CAAAA,WAAA,GAAAD,KAAK,CAACvE,IAAI,KAAA,IAAA,GAAA,KAAA,CAAA,GAAVwE,WAAA,CAAYvE,OAAO,KAAI,EAAE,CAAE,CAExC,CAAA;KAElB,CAAA;AACF,GAAA,CAAA,CAAA;AAEX;;ICtBa4E,mBAAmB,GAG3B,SAHQA,mBAAmBA,CAAA9E,IAAA,EAGF;AAAA,EAAA,IAAtB2E,QAAQ,GAAA3E,IAAA,CAAR2E,QAAQ;IAAE1H,MAAM,GAAA+C,IAAA,CAAN/C,MAAM,CAAA;AACpB,EAAA,OAAOsH,GAAA,CAACzH,kBAAkB,CAACiI,QAAQ,EAAA;AAAClC,IAAAA,KAAK,EAAE5F,MAAM;AAAA0H,IAAAA,QAAA,EAAGA,QAAAA;AAAQ,GAAA,CAA+B,CAAA;AAC/F;;;;"}
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/element.tsx","../src/provider.tsx"],"sourcesContent":["import { createContext } from 'react';\nimport { zodResolverProps } from './type';\n\nexport const ZodResolverContext = createContext<zodResolverProps>({} as zodResolverProps);\n","import { z, ZodEffects } from 'zod';\nimport { ZodObjectOrWrapped } from './types';\n\nexport function getDefaultValueInZodStack(schema: z.ZodTypeAny): any {\n if (schema._def.typeName === 'ZodDefault') {\n return schema._def.defaultValue();\n }\n\n if (schema._def.typeName === 'ZodEffects') {\n return getDefaultValueInZodStack((schema as ZodEffects<any>).innerType());\n }\n\n return undefined;\n}\n\nexport function getDefaultValues(schema: ZodObjectOrWrapped): Record<string, any> {\n const objectSchema = schema instanceof z.ZodEffects ? schema.innerType() : schema;\n const shape = objectSchema.shape;\n\n const defaultValues: Record<string, any> = {};\n\n for (const [key, field] of Object.entries(shape)) {\n const defaultValue = getDefaultValueInZodStack(field as z.ZodTypeAny);\n if (defaultValue !== undefined) {\n defaultValues[key] = defaultValue;\n }\n }\n\n return defaultValues;\n}\n","import z from 'zod';\nimport { FieldConfig, SuperRefineFunction } from './types';\n\nexport const FIELD_CONFIG_SYMBOL = Symbol('GetFieldConfig');\n\ndeclare module 'zod' {\n interface ZodType {\n fieldConfig<Ob extends Record<string, any>>(config: FieldConfig<Ob, keyof Ob>): this;\n }\n}\n\nexport const extendZodWithFieldConfig = (zod: typeof z) => {\n (zod.ZodType.prototype as any).fieldConfig = function (config: FieldConfig<any, any>) {\n this._def.fieldConfig = config;\n return this;\n };\n\n const { object, array, ...zodRest } = zod;\n\n zod = {\n object: ((...args: [any]) => {\n const schema = object(...args);\n (schema._def as any).default = () => ({});\n return schema;\n }) as any,\n array: ((...args: [any]) => {\n const schema = array(...args);\n (schema._def as any).default = () => [];\n return schema;\n }) as any,\n ...zodRest,\n };\n};\n\nexport const createZodSchemaFieldConfig =\n <Ob extends Record<string, any>, K extends keyof Ob>() =>\n (config: FieldConfig<Ob, K>): 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<any, any> {\n // Verifica si el esquema tiene fieldConfig directamente\n if (schema._def.fieldConfig) {\n return schema._def.fieldConfig as FieldConfig<any, any>;\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<any, any>;\n}\n","import { z } from 'zod';\nimport { FieldConfig } from './types';\n\nexport function inferFieldType<Ob extends Record<string, any>, K extends keyof Ob>(\n schema: z.ZodTypeAny,\n fieldType?: FieldConfig<Ob, K>['fieldType'],\n): string {\n if (fieldType) {\n return fieldType;\n }\n\n const type = schema._def.typeName;\n\n const zodToInputType = new Map([\n ['ZodObject', 'object'],\n ['ZodString', 'string'],\n ['ZodNumber', 'number'],\n ['ZodBoolean', 'boolean'],\n ['ZodDate', 'date'],\n ['ZodEnum', 'select'],\n ['ZodNativeEnum', 'select'],\n ['ZodArray', 'array'],\n ]);\n\n const match = zodToInputType.get(type);\n\n return match || 'string'; // Default to string for unknown types\n}\n","import { ParsedField } from '@form-instant/react-input-mapping';\nimport { z } from 'zod';\nimport { getDefaultValueInZodStack } from './default-values';\nimport { getFieldConfigInZodStack } from './field-config';\nimport { inferFieldType } from './field-type-inference';\nimport { ParsedSchema, ZodObjectOrWrapped } from './types';\n\ninterface typeMappingProps {\n schema: z.ZodTypeAny;\n name: string;\n history?: string;\n dependecys: Record<string, any>;\n}\n\ntype typeMappingType = Record<\n 'ZodDiscriminatedUnion' | 'ZodObject' | 'ZodArray',\n (p: typeMappingProps) => ParsedField<any, string>[]\n>;\n\nconst typeMapping: typeMappingType = {\n ZodDiscriminatedUnion({ schema, name, history, dependecys }) {\n const { optionsMap, discriminator, fieldConfig } = schema._def;\n\n if (!Object.keys(dependecys).length) return [{}] as ParsedField<any, string>[];\n\n const optionKey = dependecys[discriminator];\n const option = optionsMap.get(optionKey);\n\n if (!option) return [{}] as ParsedField<any, string>[];\n\n const entries = Object.entries(option.shape);\n\n const fields = entries\n .filter(([key]) => key !== discriminator)\n .map(([key, field]) => {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n });\n });\n\n let historyFormat = (history ? [history, name, discriminator] : [name, discriminator]).join(\n '.',\n );\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n fields.unshift({\n name: {\n current: discriminator,\n history: historyFormat,\n },\n fieldType: 'discriminator',\n required: true,\n default: optionKey,\n fieldConfig,\n options: Array.from(optionsMap.keys()).map((key) => [String(key), String(key)]),\n });\n\n return fields;\n },\n\n ZodObject({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return Object.entries((schema as any).shape).map(([key, field]) =>\n parseField({\n name: key,\n schema: field as z.ZodTypeAny,\n history: historyFormat,\n dependecys,\n }),\n );\n },\n\n ZodArray({ schema, name, history, dependecys }) {\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n return [\n parseField({\n name: '0',\n schema: schema._def.type,\n history: historyFormat,\n dependecys,\n }),\n ];\n },\n};\n\nfunction parseField({\n name,\n schema,\n history,\n dependecys = {},\n}: typeMappingProps): ParsedField<any> {\n const baseSchema = getBaseSchema(schema);\n const { fieldType, ...fieldConfigBase } = getFieldConfigInZodStack(schema);\n const type = inferFieldType(baseSchema, fieldType);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n let fieldConfig = fieldConfigBase;\n\n // Enums\n const options = baseSchema._def.values;\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map((value) => [value, value]);\n }\n }\n\n const { typeName } = baseSchema._def;\n\n // Arrays and objects\n const getSubSchema = typeMapping[typeName as keyof typeof typeMapping];\n\n const subSchema = getSubSchema?.({\n name,\n schema: baseSchema,\n history,\n dependecys,\n });\n\n if (typeName === 'ZodDiscriminatedUnion') {\n const { optionsMap, discriminator } = baseSchema._def;\n\n const optionKey = dependecys[discriminator];\n\n if (optionKey) {\n const option = optionsMap.get(optionKey);\n\n if (option._def.fieldConfig) {\n fieldConfig = {\n ...fieldConfigBase,\n ...option._def.fieldConfig,\n };\n }\n }\n }\n\n if (type === 'array')\n fieldConfig = {\n min: baseSchema._def.minLength?.value || 1,\n max: baseSchema._def.maxLength?.value,\n ...fieldConfig,\n };\n\n let historyFormat = (history ? [history, name] : [name]).join('.');\n\n if (historyFormat.charAt(0) === '.') historyFormat = historyFormat.substring(1);\n\n const resp = {\n name: {\n current: name,\n history: historyFormat,\n },\n fieldType: type,\n required: !schema.isOptional(),\n default: defaultValue,\n fieldConfig,\n options: optionValues,\n schema: subSchema,\n description: baseSchema.description,\n };\n\n return resp;\n}\n\nfunction getBaseSchema<ChildType extends z.ZodAny | z.ZodTypeAny | z.AnyZodObject = z.ZodAny>(\n schema: ChildType | z.ZodEffects<ChildType>,\n): ChildType {\n if ('innerType' in schema._def) {\n return getBaseSchema(schema._def.innerType as ChildType);\n }\n if ('schema' in schema._def) {\n return getBaseSchema(schema._def.schema as ChildType);\n }\n\n return schema as ChildType;\n}\n\nexport const parseSchema = (S: ZodObjectOrWrapped): ParsedSchema => {\n const objectSchema = S instanceof z.ZodEffects ? S.innerType() : S;\n const shape = objectSchema.shape;\n\n const dependecys = (objectSchema._def as any).fieldConfig?.dp || {};\n\n const fieldsEntries = 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 const fields = Object.fromEntries(fieldsEntries);\n\n return { fields };\n};\n","import { useContext, useMemo } from 'react';\nimport { z, ZodEffects, ZodObject } from 'zod';\nimport { ZodResolverContext } from './context';\nimport { parseSchema } from './funcs/schema-parser';\n\nconst useSchemaBase = () =>\n useContext(ZodResolverContext) as ZodObject<never, never> | ZodEffects<never, never>;\n\nexport const useFields = <Sc extends Record<string, any>>(key: keyof Sc) => {\n const S = useSchemaBase();\n\n const { fields } = parseSchema(S);\n\n return fields[key as string];\n};\n\ntype Data = z.AnyZodObject | z.ZodEffects<z.AnyZodObject> | z.ZodDiscriminatedUnion<any, any>;\n\ntype DP = Record<string, any>;\n\nexport const generateInitialValues = <S extends Record<string, any>>(schema: Data, dp: DP): S => {\n try {\n const shape = (() => {\n if (schema._def.typeName === 'ZodEffects')\n return (schema as z.ZodEffects<any>).innerType().shape;\n if (schema._def.typeName === 'ZodObject') return (schema as z.ZodObject<any>).shape;\n\n const option = schema._def.optionsMap.get(dp[schema._def.discriminator]);\n\n if (!option) throw new Error('No option found');\n\n return option.shape;\n })();\n\n const initialValues: Record<string, any> = {};\n\n for (const key of Object.keys(shape)) {\n const fieldSchema = shape[key];\n const result = fieldSchema.safeParse(undefined);\n\n // Si tiene valor por defecto\n if (result.success) {\n initialValues[key] = result.data;\n continue;\n }\n\n if (Object.keys(dp).includes(key)) {\n initialValues[key] = dp[key];\n continue;\n }\n // Inferir tipo para campos requeridos sin default\n const fieldConfig = {\n ZodString() {\n initialValues[key] = '';\n },\n ZodNumber() {\n initialValues[key] = 0;\n },\n ZodBoolean() {\n initialValues[key] = false;\n },\n ZodDate() {\n initialValues[key] = null;\n },\n ZodArray() {\n initialValues[key] = [];\n },\n ZodObject() {\n initialValues[key] = generateInitialValues(fieldSchema, dp);\n },\n ZodDiscriminatedUnion() {\n const option = fieldSchema._def.optionsMap.get(\n dp[fieldSchema._def.discriminator],\n );\n\n if (option) {\n initialValues[key] = generateInitialValues(option, dp);\n } else {\n initialValues[key] = null;\n }\n },\n };\n\n const fieldType = fieldSchema._def.typeName;\n const fieldHandler = fieldConfig[fieldType as keyof typeof fieldConfig];\n\n if (fieldHandler) {\n fieldHandler();\n continue;\n }\n\n initialValues[key] = null;\n }\n\n return initialValues as S;\n } catch (error) {\n console.log('🔴 initialValues error', error);\n\n if (error instanceof Error) {\n console.log(error.cause);\n console.log(error.message);\n }\n\n return {} as S;\n }\n};\n\nexport const useSchema = <S extends Record<string, any>>(\n cbP: (dp: DP, preData?: Data) => Data,\n dp: DP,\n) => {\n const schema = useMemo(\n () => (cbP(dp) as any).fieldConfig({ dp, ...cbP(dp).fieldConfig }),\n [cbP, dp],\n );\n\n const initialValues = useMemo(() => generateInitialValues(schema, dp) as S, [schema, dp]);\n\n return { schema, initialValues };\n};\n","'use client';\nimport { ElementMapping } from '@form-instant/react-input-mapping';\nimport { Fragment, useId } from 'react';\nimport { useFields } from '../useSchema';\n\nexport interface ElementProps<Schema extends Record<string, any>> {\n name: keyof Schema;\n}\n\nexport const FormInstantElement = <S extends Record<string, any>>({ name }: ElementProps<S>) => {\n const field = useFields(name);\n\n const id = useId();\n\n if (!['object'].includes(field.fieldType)) return <ElementMapping formProps={field} />;\n\n return (\n <>\n {Object.values(field.schema || {}).map((props: any) => {\n return (\n <Fragment key={`${id}-${props.name?.history || ''}`}>\n <ElementMapping formProps={props} />\n </Fragment>\n );\n })}\n </>\n );\n};\n","import { FC, ReactNode } from 'react';\nimport { ZodResolverContext } from './context';\nimport { zodResolverProps } from './type';\n\nexport const FormInstantProvider: FC<{\n schema: zodResolverProps;\n children: ReactNode;\n}> = ({ children, schema }) => {\n return <ZodResolverContext.Provider value={schema}>{children}</ZodResolverContext.Provider>;\n};\n"],"names":["ZodResolverContext","createContext","getDefaultValueInZodStack","schema","_def","typeName","defaultValue","innerType","undefined","getDefaultValues","objectSchema","z","ZodEffects","shape","defaultValues","_i","_Object$entries","Object","entries","length","_Object$entries$_i","key","field","FIELD_CONFIG_SYMBOL","Symbol","extendZodWithFieldConfig","zod","ZodType","prototype","fieldConfig","config","_zod","object","array","zodRest","_objectWithoutPropertiesLoose","_excluded","_extends","apply","arguments","createZodSchemaFieldConfig","refinementFunction","getFieldConfigInZodStack","inferFieldType","fieldType","type","zodToInputType","Map","match","get","typeMapping","ZodDiscriminatedUnion","_ref","name","history","dependecys","_schema$_def","optionsMap","discriminator","keys","optionKey","option","fields","filter","_ref2","map","_ref3","historyFormat","join","charAt","substring","parseField","unshift","current","required","options","Array","from","String","ZodObject","_ref4","_ref5","ZodArray","_ref6","_ref7","_baseSchema$_def$minL","_baseSchema$_def$maxL","_ref7$dependecys","baseSchema","getBaseSchema","_getFieldConfigInZodS","fieldConfigBase","values","optionValues","isArray","value","getSubSchema","subSchema","_baseSchema$_def","min","minLength","max","maxLength","resp","isOptional","description","parseSchema","S","_objectSchema$_def$fi","dp","fieldsEntries","_ref8","fromEntries","useSchemaBase","useContext","useFields","_parseSchema","generateInitialValues","Error","initialValues","_loop","_Object$keys","fieldSchema","result","safeParse","success","data","includes","ZodString","ZodNumber","ZodBoolean","ZodDate","fieldHandler","_ret","error","console","log","cause","message","useSchema","cbP","useMemo","FormInstantElement","id","useId","_jsx","ElementMapping","formProps","_Fragment","children","props","_props$name","Fragment","FormInstantProvider","Provider"],"mappings":"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"}
@@ -1,12 +1,10 @@
1
- import { ZodEffects } from 'zod';
1
+ import { z } from 'zod';
2
2
  export declare const useFields: <Sc extends Record<string, any>>(key: keyof Sc) => import("@form-instant/react-input-mapping").ParsedField<null, string>;
3
- type Data = Zod.AnyZodObject | Zod.ZodEffects<Zod.AnyZodObject> | Zod.ZodDiscriminatedUnion<any, any>;
3
+ type Data = z.AnyZodObject | z.ZodEffects<z.AnyZodObject> | z.ZodDiscriminatedUnion<any, any>;
4
4
  type DP = Record<string, any>;
5
- export declare const useSchema: (cbP: (dp: DP, preData?: Data) => Data, dp: DP) => {
6
- schema: import("zod").AnyZodObject | ZodEffects<import("zod").AnyZodObject, {
7
- [x: string]: any;
8
- }, {
9
- [x: string]: any;
10
- }> | import("zod").ZodDiscriminatedUnion<any, any>;
5
+ export declare const generateInitialValues: <S extends Record<string, any>>(schema: Data, dp: DP) => S;
6
+ export declare const useSchema: <S extends Record<string, any>>(cbP: (dp: DP, preData?: Data) => Data, dp: DP) => {
7
+ schema: any;
8
+ initialValues: S;
11
9
  };
12
10
  export {};
package/package.json CHANGED
@@ -1,28 +1,49 @@
1
1
  {
2
2
  "name": "@form-instant/react-resolver-zod",
3
- "version": "1.6.2",
4
- "license": "MIT",
3
+ "version": "1.6.4",
5
4
  "author": {
6
5
  "name": "leomerida15",
7
6
  "email": "dimasmerida15@gmail.com",
8
7
  "url": "https://github.com/leomerida15"
9
8
  },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "git+https://github.com/leomerida15/form-instant-react-resolver-zod.git"
12
+ },
10
13
  "main": "dist/index.js",
11
14
  "module": "dist/react-input-mapping.esm.js",
12
- "typings": "dist/index.d.ts",
15
+ "devDependencies": {
16
+ "@size-limit/preset-small-lib": "^11.2.0",
17
+ "@tsconfig/recommended": "^1.0.10",
18
+ "@tsconfig/vite-react": "^3.4.0",
19
+ "@types/bun": "^1.2.17",
20
+ "@types/react": "^18.3.23",
21
+ "@typescript-eslint/eslint-plugin": "^8.34.1",
22
+ "@typescript-eslint/parser": "^8.34.1",
23
+ "dts-cli": "^2.0.5",
24
+ "eslint": "^9.29.0",
25
+ "eslint-plugin-prettier": "^5.5.0",
26
+ "husky": "^9.1.7",
27
+ "nodemon": "^3.1.10",
28
+ "prettier": "^3.6.0",
29
+ "size-limit": "^11.2.0",
30
+ "tslib": "^2.8.1",
31
+ "typescript": "~5.0.4",
32
+ "zod": "^3.25.67",
33
+ "minimatch": "^10.0.3"
34
+ },
35
+ "peerDependencies": {
36
+ "@form-instant/react-input-mapping": "^1.8.0",
37
+ "react": "^19.0.0",
38
+ "react-dom": "^19.0.0"
39
+ },
40
+ "engines": {
41
+ "node": ">=12"
42
+ },
13
43
  "files": [
14
44
  "dist"
15
45
  ],
16
- "scripts": {
17
- "analyze": "size-limit --why",
18
- "build": "dts build",
19
- "lint": "dts lint",
20
- "prepare": "dts build",
21
- "size": "size-limit",
22
- "start": "dts watch",
23
- "test": "dts test --passWithNoTests",
24
- "Up": "npm publish --access public"
25
- },
46
+ "homepage": "https://leomerida15.github.io/form-instant-react-mapping",
26
47
  "husky": {
27
48
  "hooks": {
28
49
  "pre-commit": "dts lint"
@@ -31,12 +52,23 @@
31
52
  "jest": {
32
53
  "testEnvironment": "jsdom"
33
54
  },
34
- "peerDependencies": {
35
- "@form-instant/react-input-mapping": "^1.0.0",
36
- "react": "^18.3.1"
37
- },
38
- "engines": {
39
- "node": ">=12"
55
+ "keywords": [
56
+ "@form-instant",
57
+ "react",
58
+ "mapping",
59
+ "zod"
60
+ ],
61
+ "license": "MIT",
62
+ "scripts": {
63
+ "analyze": "size-limit --why",
64
+ "build": "dts build",
65
+ "lint": "dts lint",
66
+ "prepare": "dts build",
67
+ "size": "size-limit",
68
+ "start": "dts watch",
69
+ "test": "dts test --passWithNoTests",
70
+ "Up": "npm publish --access public",
71
+ "Up:rc": "npm publish --access public --tag rc"
40
72
  },
41
73
  "size-limit": [
42
74
  {
@@ -48,36 +80,5 @@
48
80
  "limit": "10 KB"
49
81
  }
50
82
  ],
51
- "dependencies": {
52
- "use-context-selector": "^2.0.0"
53
- },
54
- "devDependencies": {
55
- "@size-limit/preset-small-lib": "^11.1.6",
56
- "@tsconfig/recommended": "^1.0.8",
57
- "@tsconfig/vite-react": "^3.0.2",
58
- "@types/bun": "^1.1.13",
59
- "@types/react": "^18.3.12",
60
- "@typescript-eslint/eslint-plugin": "^8.15.0",
61
- "@typescript-eslint/parser": "^8.15.0",
62
- "dts-cli": "^2.0.5",
63
- "eslint": "^9.15.0",
64
- "eslint-plugin-prettier": "^5.2.1",
65
- "husky": "^9.1.7",
66
- "nodemon": "^3.1.7",
67
- "prettier": "^3.3.3",
68
- "size-limit": "^11.1.6",
69
- "tslib": "^2.8.1",
70
- "typescript": "~5.0.4",
71
- "zod": "^3.23.8"
72
- },
73
- "homepage": "https://leomerida15.github.io/form-instant-react-mapping",
74
- "repository": {
75
- "type": "git",
76
- "url": "git+https://github.com/leomerida15/form-instant-react-resolver-zod.git"
77
- },
78
- "keywords": [
79
- "@form-instant",
80
- "react",
81
- "mapping"
82
- ]
83
+ "typings": "dist/index.d.ts"
83
84
  }
File without changes