@zod-to-form/codegen 0.6.4 → 0.6.6
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/config-template.d.ts +21 -0
- package/dist/config-template.d.ts.map +1 -1
- package/dist/config-template.js +21 -0
- package/dist/config-template.js.map +1 -1
- package/dist/field-templates.d.ts +16 -0
- package/dist/field-templates.d.ts.map +1 -1
- package/dist/field-templates.js +16 -0
- package/dist/field-templates.js.map +1 -1
- package/dist/generate.d.ts +84 -0
- package/dist/generate.d.ts.map +1 -1
- package/dist/generate.js +98 -2
- package/dist/generate.js.map +1 -1
- package/dist/index.d.ts +28 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +28 -0
- package/dist/index.js.map +1 -1
- package/dist/schema-lite-codegen.d.ts +23 -2
- package/dist/schema-lite-codegen.d.ts.map +1 -1
- package/dist/schema-lite-codegen.js +23 -2
- package/dist/schema-lite-codegen.js.map +1 -1
- package/dist/templates.d.ts +54 -0
- package/dist/templates.d.ts.map +1 -1
- package/dist/templates.js +54 -0
- package/dist/templates.js.map +1 -1
- package/package.json +10 -3
|
@@ -32,5 +32,26 @@ export type ConfigTemplateOptions = {
|
|
|
32
32
|
/** Per-field overrides */
|
|
33
33
|
fields?: Record<string, Record<string, unknown>>;
|
|
34
34
|
};
|
|
35
|
+
/**
|
|
36
|
+
* Generate a `z2f.config.ts` starter file as a source string.
|
|
37
|
+
* Produces a `defineConfig(...)` call with components, defaults, include/exclude,
|
|
38
|
+
* optional fields, and schemas blocks based on the provided options.
|
|
39
|
+
*
|
|
40
|
+
* @param opts - Template options controlling the generated config structure.
|
|
41
|
+
* @returns The complete config file source as a string, ready to write to disk.
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```ts
|
|
45
|
+
* const source = buildConfigSource({ componentSource: './components/ui', preset: 'shadcn' });
|
|
46
|
+
* await fs.writeFile('z2f.config.ts', source);
|
|
47
|
+
* ```
|
|
48
|
+
*
|
|
49
|
+
* @remarks
|
|
50
|
+
* The generated file uses TypeScript generics for full type inference:
|
|
51
|
+
* `defineConfig<typeof Components, typeof ZodSchemas>(...)`.
|
|
52
|
+
* Preset-specific overrides (e.g. `SHADCN_OVERRIDES`) are spread into the overrides block.
|
|
53
|
+
*
|
|
54
|
+
* @category Config Templates
|
|
55
|
+
*/
|
|
35
56
|
export declare function buildConfigSource(opts: ConfigTemplateOptions): string;
|
|
36
57
|
//# sourceMappingURL=config-template.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-template.d.ts","sourceRoot":"","sources":["../src/config-template.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,MAAM,qBAAqB,GAAG;IAClC,4DAA4D;IAC5D,eAAe,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gDAAgD;IAChD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,qCAAqC;IACrC,MAAM,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC3B,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACrD,qBAAqB;IACrB,QAAQ,CAAC,EAAE;QACT,IAAI,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC;QAC9B,EAAE,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;QACvB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,YAAY,CAAC,EAAE;YAAE,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;SAAE,CAAC;KACtC,CAAC;IACF,0BAA0B;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAClD,CAAC;AAOF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,qBAAqB,GAAG,MAAM,CAmHrE"}
|
|
1
|
+
{"version":3,"file":"config-template.d.ts","sourceRoot":"","sources":["../src/config-template.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,MAAM,qBAAqB,GAAG;IAClC,4DAA4D;IAC5D,eAAe,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gDAAgD;IAChD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,qCAAqC;IACrC,MAAM,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC3B,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACrD,qBAAqB;IACrB,QAAQ,CAAC,EAAE;QACT,IAAI,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC;QAC9B,EAAE,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;QACvB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,YAAY,CAAC,EAAE;YAAE,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;SAAE,CAAC;KACtC,CAAC;IACF,0BAA0B;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAClD,CAAC;AAOF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,qBAAqB,GAAG,MAAM,CAmHrE"}
|
package/dist/config-template.js
CHANGED
|
@@ -7,6 +7,27 @@ const PRESET_IMPORT_NAME = {
|
|
|
7
7
|
shadcn: 'SHADCN_OVERRIDES',
|
|
8
8
|
html: 'DEFAULT_OVERRIDES'
|
|
9
9
|
};
|
|
10
|
+
/**
|
|
11
|
+
* Generate a `z2f.config.ts` starter file as a source string.
|
|
12
|
+
* Produces a `defineConfig(...)` call with components, defaults, include/exclude,
|
|
13
|
+
* optional fields, and schemas blocks based on the provided options.
|
|
14
|
+
*
|
|
15
|
+
* @param opts - Template options controlling the generated config structure.
|
|
16
|
+
* @returns The complete config file source as a string, ready to write to disk.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```ts
|
|
20
|
+
* const source = buildConfigSource({ componentSource: './components/ui', preset: 'shadcn' });
|
|
21
|
+
* await fs.writeFile('z2f.config.ts', source);
|
|
22
|
+
* ```
|
|
23
|
+
*
|
|
24
|
+
* @remarks
|
|
25
|
+
* The generated file uses TypeScript generics for full type inference:
|
|
26
|
+
* `defineConfig<typeof Components, typeof ZodSchemas>(...)`.
|
|
27
|
+
* Preset-specific overrides (e.g. `SHADCN_OVERRIDES`) are spread into the overrides block.
|
|
28
|
+
*
|
|
29
|
+
* @category Config Templates
|
|
30
|
+
*/
|
|
10
31
|
export function buildConfigSource(opts) {
|
|
11
32
|
const preset = opts.preset;
|
|
12
33
|
const presetImportName = preset ? PRESET_IMPORT_NAME[preset] : undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-template.js","sourceRoot":"","sources":["../src/config-template.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config-template.js","sourceRoot":"","sources":["../src/config-template.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA4BH,MAAM,kBAAkB,GAA2B;IACjD,MAAM,EAAE,kBAAkB;IAC1B,IAAI,EAAE,mBAAmB;CAC1B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAA2B;IAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,MAAM,gBAAgB,GAAG,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEzE,UAAU;IACV,MAAM,WAAW,GAAG,CAAC,cAAc,CAAC,CAAC;IACrC,IAAI,gBAAgB;QAAE,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAEzD,MAAM,KAAK,GAAa,CAAC,YAAY,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAE3F,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,eAAe,CAAC;IAC7E,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,qCAAqC,mBAAmB,IAAI,CAAC,CAAC;IAEzE,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,qCAAqC,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;IAC7E,CAAC;IAED,uBAAuB;IACvB,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAClG,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,wCAAwC,CAAC,CAAC,CAAC,qBAAqB,CAAC;IAC/F,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,8BAA8B,QAAQ,IAAI,CAAC,CAAC;IAEvD,mBAAmB;IACnB,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC9B,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC;IACrD,IAAI,MAAM,EAAE,CAAC;QACX,KAAK,CAAC,IAAI,CAAC,gBAAgB,MAAM,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,YAAY;IACZ,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS;QACpC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;QAChE,CAAC,CAAC,EAAE,CAAC;IACP,IAAI,gBAAgB,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnD,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC/B,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACpD,KAAK,CAAC,IAAI,CAAC,YAAY,gBAAgB,GAAG,KAAK,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YACpC,MAAM,KAAK,GAAG,CAAC,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,yBAAyB,KAAK,EAAE,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtB,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEnB,iBAAiB;IACjB,MAAM,QAAQ,GAAG;QACf,IAAI,EAAE,QAAQ;QACd,EAAE,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;QAC3C,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,KAAK;QACnB,YAAY,EAAE,KAAK;QACnB,GAAG,IAAI,CAAC,QAAQ;KACjB,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC5B,KAAK,CAAC,IAAI,CAAC,cAAc,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC;IAC5C,KAAK,CAAC,IAAI,CAAC,YAAY,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC;IACxC,KAAK,CAAC,IAAI,CAAC,kBAAkB,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC;IACpD,KAAK,CAAC,IAAI,CAAC,qBAAqB,QAAQ,CAAC,YAAY,GAAG,CAAC,CAAC;IAC1D,KAAK,CAAC,IAAI,CAAC,qBAAqB,QAAQ,CAAC,YAAY,GAAG,CAAC,CAAC;IAC1D,IAAI,QAAQ,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,8BAA8B,QAAQ,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC,CAAC;IAC5E,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CACR,wFAAwF,CACzF,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEnB,kBAAkB;IAClB,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAE7B,eAAe;IACf,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM;QAC9B,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;YAC3C,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC;QAChE,CAAC,CAAC;QACJ,CAAC,CAAC,EAAE,CAAC;IAEP,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC1B,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE;YACxC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;iBACjC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;iBAClC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC7C,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,MAAM,KAAK,GAAG,CAAC,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,QAAQ,KAAK,KAAK,KAAK,EAAE,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC9B,CAAC;IAED,gBAAgB;IAChB,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC;IAC/C,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3B,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YAChC,MAAM,KAAK,GAAG,CAAC,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACtD,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,EAAE,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
|
@@ -6,5 +6,21 @@ export declare const SHADCN_FIELD_TEMPLATE = "import type { ReactNode } from 're
|
|
|
6
6
|
export declare const HTML_FIELD_TEMPLATE = "import type { ReactNode } from 'react';\n\nexport interface FieldTemplateProps {\n children: ReactNode;\n label: string;\n description?: string;\n helpText?: string;\n error?: string;\n name: string;\n required?: boolean;\n disabled?: boolean;\n deprecated?: boolean;\n}\n\nexport function FieldTemplate({\n children,\n label,\n description,\n helpText,\n error,\n name,\n deprecated\n}: FieldTemplateProps) {\n return (\n <div>\n <label htmlFor={name}>\n {deprecated ? <s>{label}</s> : label}\n {deprecated ? (\n <span aria-hidden=\"true\" title=\"Deprecated\"> \u26A0</span>\n ) : null}\n </label>\n {children}\n {description ? <p>{description}</p> : null}\n {helpText ? (\n <p style={{ fontSize: '0.875rem', color: '#6b7280', marginTop: '0.25rem' }}>\n {helpText}\n </p>\n ) : null}\n {error ? <p role=\"alert\">{error}</p> : null}\n </div>\n );\n}\n";
|
|
7
7
|
/** Components that each preset's field template imports from the component source */
|
|
8
8
|
export declare const PRESET_TEMPLATE_IMPORTS: Record<string, string[]>;
|
|
9
|
+
/**
|
|
10
|
+
* Return the source code for the preset's `FieldTemplate` React component.
|
|
11
|
+
* Used by the CLI `generate` and `init` commands to emit a standalone `FieldTemplate.tsx`
|
|
12
|
+
* alongside generated forms.
|
|
13
|
+
*
|
|
14
|
+
* @param preset - The preset name: `'shadcn'` for Radix/shadcn-ui, `'html'` for plain HTML.
|
|
15
|
+
* @returns The complete `FieldTemplate.tsx` source string for the chosen preset.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```ts
|
|
19
|
+
* const source = getFieldTemplateSource('shadcn');
|
|
20
|
+
* await fs.writeFile('src/components/FieldTemplate.tsx', source);
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* @category Templates
|
|
24
|
+
*/
|
|
9
25
|
export declare function getFieldTemplateSource(preset: 'shadcn' | 'html'): string;
|
|
10
26
|
//# sourceMappingURL=field-templates.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-templates.d.ts","sourceRoot":"","sources":["../src/field-templates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,qBAAqB,qmCAgDjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,08BA0C/B,CAAC;AAEF,qFAAqF;AACrF,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAG5D,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAExE"}
|
|
1
|
+
{"version":3,"file":"field-templates.d.ts","sourceRoot":"","sources":["../src/field-templates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,qBAAqB,qmCAgDjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,08BA0C/B,CAAC;AAEF,qFAAqF;AACrF,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAG5D,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAExE"}
|
package/dist/field-templates.js
CHANGED
|
@@ -99,6 +99,22 @@ export const PRESET_TEMPLATE_IMPORTS = {
|
|
|
99
99
|
shadcn: ['FormControl', 'FormDescription', 'FormField', 'FormItem', 'FormLabel', 'FormMessage'],
|
|
100
100
|
html: []
|
|
101
101
|
};
|
|
102
|
+
/**
|
|
103
|
+
* Return the source code for the preset's `FieldTemplate` React component.
|
|
104
|
+
* Used by the CLI `generate` and `init` commands to emit a standalone `FieldTemplate.tsx`
|
|
105
|
+
* alongside generated forms.
|
|
106
|
+
*
|
|
107
|
+
* @param preset - The preset name: `'shadcn'` for Radix/shadcn-ui, `'html'` for plain HTML.
|
|
108
|
+
* @returns The complete `FieldTemplate.tsx` source string for the chosen preset.
|
|
109
|
+
*
|
|
110
|
+
* @example
|
|
111
|
+
* ```ts
|
|
112
|
+
* const source = getFieldTemplateSource('shadcn');
|
|
113
|
+
* await fs.writeFile('src/components/FieldTemplate.tsx', source);
|
|
114
|
+
* ```
|
|
115
|
+
*
|
|
116
|
+
* @category Templates
|
|
117
|
+
*/
|
|
102
118
|
export function getFieldTemplateSource(preset) {
|
|
103
119
|
return preset === 'shadcn' ? SHADCN_FIELD_TEMPLATE : HTML_FIELD_TEMPLATE;
|
|
104
120
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-templates.js","sourceRoot":"","sources":["../src/field-templates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgDpC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0ClC,CAAC;AAEF,qFAAqF;AACrF,MAAM,CAAC,MAAM,uBAAuB,GAA6B;IAC/D,MAAM,EAAE,CAAC,aAAa,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,CAAC;IAC/F,IAAI,EAAE,EAAE;CACT,CAAC;AAEF,MAAM,UAAU,sBAAsB,CAAC,MAAyB;IAC9D,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,mBAAmB,CAAC;AAC3E,CAAC"}
|
|
1
|
+
{"version":3,"file":"field-templates.js","sourceRoot":"","sources":["../src/field-templates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgDpC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0ClC,CAAC;AAEF,qFAAqF;AACrF,MAAM,CAAC,MAAM,uBAAuB,GAA6B;IAC/D,MAAM,EAAE,CAAC,aAAa,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,CAAC;IAC/F,IAAI,EAAE,EAAE;CACT,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAyB;IAC9D,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,mBAAmB,CAAC;AAC3E,CAAC"}
|
package/dist/generate.d.ts
CHANGED
|
@@ -1,11 +1,95 @@
|
|
|
1
1
|
import type { CodegenConfig, FormField } from '@zod-to-form/core';
|
|
2
2
|
import type { ComponentOverride, FieldConfig, ZodFormsConfig } from '@zod-to-form/core';
|
|
3
3
|
export type { CodegenConfig } from '@zod-to-form/core';
|
|
4
|
+
/**
|
|
5
|
+
* Resolve the component name and override config for a single `FormField` key.
|
|
6
|
+
*
|
|
7
|
+
* Walks the `componentConfig.fields` map (by exact key, then normalized key) to
|
|
8
|
+
* find a per-field override, then falls back to the `componentConfig.components.overrides`
|
|
9
|
+
* map keyed by component name. Returns `{ source: 'none' }` when no config is present.
|
|
10
|
+
*
|
|
11
|
+
* @param fieldKey - Dot-path key from `FormField.key` (e.g. `'address.street'`).
|
|
12
|
+
* @param componentName - Inferred component name from the schema walker.
|
|
13
|
+
* @param componentConfig - Optional `ZodFormsConfig` with `fields` and `components` overrides.
|
|
14
|
+
* @returns Resolved component name, override config, and the resolution source.
|
|
15
|
+
*
|
|
16
|
+
* @remarks
|
|
17
|
+
* Resolution order: (1) `componentConfig.fields[fieldKey]` exact match,
|
|
18
|
+
* (2) `componentConfig.fields[normalizedKey]` for array-indexed paths (e.g. `items[].name`),
|
|
19
|
+
* (3) `componentConfig.components.overrides[componentName]` for component-level metadata.
|
|
20
|
+
* A field-level override wins over a component-level override on conflict.
|
|
21
|
+
*
|
|
22
|
+
* @useWhen
|
|
23
|
+
* - Building a custom codegen backend that needs the same override resolution logic as the CLI
|
|
24
|
+
* - Writing tests that verify field-to-component mapping for a given config
|
|
25
|
+
*
|
|
26
|
+
* @avoidWhen
|
|
27
|
+
* - You are using the CLI or Vite plugin — this is called internally and you don't need it
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```ts
|
|
31
|
+
* const mapping = resolveFieldMapping('address.street', 'Input', componentConfig);
|
|
32
|
+
* if (mapping.source !== 'none') {
|
|
33
|
+
* console.log('Override component:', mapping.componentName);
|
|
34
|
+
* }
|
|
35
|
+
* ```
|
|
36
|
+
*
|
|
37
|
+
* @never
|
|
38
|
+
* - NEVER assume `source: 'none'` means the field has no component — the schema walker may
|
|
39
|
+
* have inferred one; `resolveFieldMapping` only resolves user-provided config overrides
|
|
40
|
+
*
|
|
41
|
+
* @category Codegen
|
|
42
|
+
*/
|
|
4
43
|
export declare function resolveFieldMapping<TComponents extends Record<string, unknown>>(fieldKey: string, componentName: string | undefined, componentConfig: ZodFormsConfig<TComponents> | undefined): {
|
|
5
44
|
componentOverride?: ComponentOverride;
|
|
6
45
|
override?: FieldConfig;
|
|
7
46
|
componentName?: string;
|
|
8
47
|
source: 'fields' | 'components' | 'none';
|
|
9
48
|
};
|
|
49
|
+
/**
|
|
50
|
+
* Generate a React form component as a TypeScript string from `FormField[]`.
|
|
51
|
+
*
|
|
52
|
+
* Produces a `.tsx` file string containing imports, the form component, and
|
|
53
|
+
* (when `config.mode === 'auto-save'`) the `FormProvider` wrapper. The output
|
|
54
|
+
* is deterministic for a given `(fields, config)` pair — same inputs always
|
|
55
|
+
* produce the same output string.
|
|
56
|
+
*
|
|
57
|
+
* @param fields - Intermediate `FormField[]` from `walkSchema`.
|
|
58
|
+
* @param config - Resolved codegen config (output path, component names, UI preset, etc.).
|
|
59
|
+
* @returns The generated `.tsx` source as a string. Not yet written to disk.
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```ts
|
|
63
|
+
* const fields = walkSchema(schema, { formRegistry });
|
|
64
|
+
* const code = generateFormComponent(fields, {
|
|
65
|
+
* schemaPath: './signup.schema.ts',
|
|
66
|
+
* exportName: 'signupSchema',
|
|
67
|
+
* outputPath: './SignupForm.tsx',
|
|
68
|
+
* componentName: 'SignupForm',
|
|
69
|
+
* mode: 'submit',
|
|
70
|
+
* ui: 'shadcn',
|
|
71
|
+
* });
|
|
72
|
+
* await writeFile('./SignupForm.tsx', code, 'utf8');
|
|
73
|
+
* ```
|
|
74
|
+
*
|
|
75
|
+
* @useWhen
|
|
76
|
+
* - Building a custom codegen pipeline that assembles `FormField[]` and needs the TSX string
|
|
77
|
+
* - Writing codegen tests that verify output structure without spawning a CLI process
|
|
78
|
+
*
|
|
79
|
+
* @avoidWhen
|
|
80
|
+
* - You want file-writing behavior — use `runGenerate()` from `@zod-to-form/cli` instead
|
|
81
|
+
* - You are using the Vite plugin — `compileTarget` wraps this and handles esbuild transformation
|
|
82
|
+
*
|
|
83
|
+
* @throws Never — this function is purely a string transformer; I/O errors from writing
|
|
84
|
+
* the result to disk are the caller's responsibility.
|
|
85
|
+
*
|
|
86
|
+
* @never
|
|
87
|
+
* - NEVER call `generateFormComponent` with a stale `fields` array from a previous schema
|
|
88
|
+
* version — there is no cache invalidation; callers must re-run `walkSchema` on schema change
|
|
89
|
+
* - NEVER use the returned string as a module cache key — it is not content-addressed;
|
|
90
|
+
* use `configHash` from `@zod-to-form/core` on the config object instead
|
|
91
|
+
*
|
|
92
|
+
* @category Codegen
|
|
93
|
+
*/
|
|
10
94
|
export declare function generateFormComponent(fields: FormField[], config: CodegenConfig): string;
|
|
11
95
|
//# sourceMappingURL=generate.d.ts.map
|
package/dist/generate.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAElE,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAYxF,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AA4IvD,wBAAgB,mBAAmB,CAAC,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7E,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,eAAe,EAAE,cAAc,CAAC,WAAW,CAAC,GAAG,SAAS,GACvD;IACD,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,QAAQ,GAAG,YAAY,GAAG,MAAM,CAAC;CAC1C,CAkCA;
|
|
1
|
+
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAElE,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAYxF,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AA4IvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7E,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,eAAe,EAAE,cAAc,CAAC,WAAW,CAAC,GAAG,SAAS,GACvD;IACD,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,QAAQ,GAAG,YAAY,GAAG,MAAM,CAAC;CAC1C,CAkCA;AAuYD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,aAAa,GAAG,MAAM,CA4MxF"}
|
package/dist/generate.js
CHANGED
|
@@ -102,6 +102,45 @@ function normalizeFieldKey(key) {
|
|
|
102
102
|
result = result.replace(/\.(?:\d+|\$\{index\})$/, '[]');
|
|
103
103
|
return result;
|
|
104
104
|
}
|
|
105
|
+
/**
|
|
106
|
+
* Resolve the component name and override config for a single `FormField` key.
|
|
107
|
+
*
|
|
108
|
+
* Walks the `componentConfig.fields` map (by exact key, then normalized key) to
|
|
109
|
+
* find a per-field override, then falls back to the `componentConfig.components.overrides`
|
|
110
|
+
* map keyed by component name. Returns `{ source: 'none' }` when no config is present.
|
|
111
|
+
*
|
|
112
|
+
* @param fieldKey - Dot-path key from `FormField.key` (e.g. `'address.street'`).
|
|
113
|
+
* @param componentName - Inferred component name from the schema walker.
|
|
114
|
+
* @param componentConfig - Optional `ZodFormsConfig` with `fields` and `components` overrides.
|
|
115
|
+
* @returns Resolved component name, override config, and the resolution source.
|
|
116
|
+
*
|
|
117
|
+
* @remarks
|
|
118
|
+
* Resolution order: (1) `componentConfig.fields[fieldKey]` exact match,
|
|
119
|
+
* (2) `componentConfig.fields[normalizedKey]` for array-indexed paths (e.g. `items[].name`),
|
|
120
|
+
* (3) `componentConfig.components.overrides[componentName]` for component-level metadata.
|
|
121
|
+
* A field-level override wins over a component-level override on conflict.
|
|
122
|
+
*
|
|
123
|
+
* @useWhen
|
|
124
|
+
* - Building a custom codegen backend that needs the same override resolution logic as the CLI
|
|
125
|
+
* - Writing tests that verify field-to-component mapping for a given config
|
|
126
|
+
*
|
|
127
|
+
* @avoidWhen
|
|
128
|
+
* - You are using the CLI or Vite plugin — this is called internally and you don't need it
|
|
129
|
+
*
|
|
130
|
+
* @example
|
|
131
|
+
* ```ts
|
|
132
|
+
* const mapping = resolveFieldMapping('address.street', 'Input', componentConfig);
|
|
133
|
+
* if (mapping.source !== 'none') {
|
|
134
|
+
* console.log('Override component:', mapping.componentName);
|
|
135
|
+
* }
|
|
136
|
+
* ```
|
|
137
|
+
*
|
|
138
|
+
* @never
|
|
139
|
+
* - NEVER assume `source: 'none'` means the field has no component — the schema walker may
|
|
140
|
+
* have inferred one; `resolveFieldMapping` only resolves user-provided config overrides
|
|
141
|
+
*
|
|
142
|
+
* @category Codegen
|
|
143
|
+
*/
|
|
105
144
|
export function resolveFieldMapping(fieldKey, componentName, componentConfig) {
|
|
106
145
|
if (!componentConfig) {
|
|
107
146
|
return { source: 'none' };
|
|
@@ -253,19 +292,31 @@ function renderArrayBlock(field, componentConfig, indent, optimized = false) {
|
|
|
253
292
|
else {
|
|
254
293
|
itemJsx = renderFieldBlockWithConfig(indexedItemField, componentConfig, `${indent} `, 'html', optimized);
|
|
255
294
|
}
|
|
295
|
+
// Read optional label overrides from FormMeta.arrayConfig (stored at walk time)
|
|
296
|
+
const arrayConfig = field.props['_arrayConfig'];
|
|
297
|
+
const addLabel = escapeJsx(arrayConfig?.addLabel ?? '+ Add');
|
|
298
|
+
const removeLabel = escapeJsx(arrayConfig?.removeLabel ?? '− Remove');
|
|
256
299
|
return [
|
|
257
300
|
`${indent}<div>`,
|
|
258
301
|
`${indent} <label>${field.label}</label>`,
|
|
259
302
|
`${indent} {${varName}Fields.map((item, index) => (`,
|
|
260
303
|
`${indent} <div key={item.id}>`,
|
|
261
304
|
itemJsx,
|
|
262
|
-
`${indent} <button type="button" onClick={() => remove${capitalize(varName)}(index)}
|
|
305
|
+
`${indent} <button type="button" onClick={() => remove${capitalize(varName)}(index)} disabled={${varName}Fields.length <= ${field.constraints.minLength ?? 0}}>${removeLabel}</button>`,
|
|
263
306
|
`${indent} </div>`,
|
|
264
307
|
`${indent} ))}`,
|
|
265
|
-
`${indent} <button type="button" onClick={() => append${capitalize(varName)}(${getDefaultArrayItemExpression(itemField)})}
|
|
308
|
+
`${indent} <button type="button" onClick={() => append${capitalize(varName)}(${getDefaultArrayItemExpression(itemField)})}${field.constraints.maxLength != null ? ` disabled={${varName}Fields.length >= ${field.constraints.maxLength}}` : ''}>${addLabel}</button>`,
|
|
266
309
|
`${indent}</div>`
|
|
267
310
|
].join('\n');
|
|
268
311
|
}
|
|
312
|
+
function escapeJsx(s) {
|
|
313
|
+
return s
|
|
314
|
+
.replace(/&/g, '&')
|
|
315
|
+
.replace(/</g, '<')
|
|
316
|
+
.replace(/>/g, '>')
|
|
317
|
+
.replace(/{/g, '{')
|
|
318
|
+
.replace(/}/g, '}');
|
|
319
|
+
}
|
|
269
320
|
function capitalize(s) {
|
|
270
321
|
return s.charAt(0).toUpperCase() + s.slice(1);
|
|
271
322
|
}
|
|
@@ -416,6 +467,51 @@ function generateHoistedValidators(fields, exportName) {
|
|
|
416
467
|
return `const _validate_${safeKey} = (value: unknown) => { const r = ${accessor}.safeParse(value); return r.success ? true : r.error.issues[0]?.message ?? 'Invalid'; };`;
|
|
417
468
|
});
|
|
418
469
|
}
|
|
470
|
+
/**
|
|
471
|
+
* Generate a React form component as a TypeScript string from `FormField[]`.
|
|
472
|
+
*
|
|
473
|
+
* Produces a `.tsx` file string containing imports, the form component, and
|
|
474
|
+
* (when `config.mode === 'auto-save'`) the `FormProvider` wrapper. The output
|
|
475
|
+
* is deterministic for a given `(fields, config)` pair — same inputs always
|
|
476
|
+
* produce the same output string.
|
|
477
|
+
*
|
|
478
|
+
* @param fields - Intermediate `FormField[]` from `walkSchema`.
|
|
479
|
+
* @param config - Resolved codegen config (output path, component names, UI preset, etc.).
|
|
480
|
+
* @returns The generated `.tsx` source as a string. Not yet written to disk.
|
|
481
|
+
*
|
|
482
|
+
* @example
|
|
483
|
+
* ```ts
|
|
484
|
+
* const fields = walkSchema(schema, { formRegistry });
|
|
485
|
+
* const code = generateFormComponent(fields, {
|
|
486
|
+
* schemaPath: './signup.schema.ts',
|
|
487
|
+
* exportName: 'signupSchema',
|
|
488
|
+
* outputPath: './SignupForm.tsx',
|
|
489
|
+
* componentName: 'SignupForm',
|
|
490
|
+
* mode: 'submit',
|
|
491
|
+
* ui: 'shadcn',
|
|
492
|
+
* });
|
|
493
|
+
* await writeFile('./SignupForm.tsx', code, 'utf8');
|
|
494
|
+
* ```
|
|
495
|
+
*
|
|
496
|
+
* @useWhen
|
|
497
|
+
* - Building a custom codegen pipeline that assembles `FormField[]` and needs the TSX string
|
|
498
|
+
* - Writing codegen tests that verify output structure without spawning a CLI process
|
|
499
|
+
*
|
|
500
|
+
* @avoidWhen
|
|
501
|
+
* - You want file-writing behavior — use `runGenerate()` from `@zod-to-form/cli` instead
|
|
502
|
+
* - You are using the Vite plugin — `compileTarget` wraps this and handles esbuild transformation
|
|
503
|
+
*
|
|
504
|
+
* @throws Never — this function is purely a string transformer; I/O errors from writing
|
|
505
|
+
* the result to disk are the caller's responsibility.
|
|
506
|
+
*
|
|
507
|
+
* @never
|
|
508
|
+
* - NEVER call `generateFormComponent` with a stale `fields` array from a previous schema
|
|
509
|
+
* version — there is no cache invalidation; callers must re-run `walkSchema` on schema change
|
|
510
|
+
* - NEVER use the returned string as a module cache key — it is not content-addressed;
|
|
511
|
+
* use `configHash` from `@zod-to-form/core` on the config object instead
|
|
512
|
+
*
|
|
513
|
+
* @category Codegen
|
|
514
|
+
*/
|
|
419
515
|
export function generateFormComponent(fields, config) {
|
|
420
516
|
const schemaImportPath = config.schemaImportPath ?? './schema';
|
|
421
517
|
const arrayFields = collectArrayFields(fields);
|
package/dist/generate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser-safe code generation utilities for Zod v4 form components.
|
|
3
|
+
*
|
|
4
|
+
* Provides the building blocks for generating React form TSX files from a
|
|
5
|
+
* `FormField[]` tree and a `ZodFormsConfig`. No Node.js dependencies — safe
|
|
6
|
+
* to import in browser and server environments alike.
|
|
7
|
+
*
|
|
8
|
+
* Key exports:
|
|
9
|
+
* - `generateFormComponent` — produce a complete TSX form component string
|
|
10
|
+
* - `getFileHeader` — emit import declarations for generated files
|
|
11
|
+
* - `renderField` — render a single field to its JSX string
|
|
12
|
+
* - `buildConfigSource` — generate a `z2f.config.ts` starter file
|
|
13
|
+
* - `getFieldTemplateSource` — emit the preset FieldTemplate component source
|
|
14
|
+
* - `generateSchemaLiteFile` — emit the lite schema file for optimized validation
|
|
15
|
+
*
|
|
16
|
+
* @useWhen
|
|
17
|
+
* - You are building a custom codegen pipeline on top of `walkSchema`
|
|
18
|
+
* - You need to generate form components programmatically (e.g. a playground or IDE plugin)
|
|
19
|
+
*
|
|
20
|
+
* @avoidWhen
|
|
21
|
+
* - You just want to generate forms — use the CLI (`npx zod-to-form generate`) instead
|
|
22
|
+
*
|
|
23
|
+
* @never
|
|
24
|
+
* - NEVER import this in a browser bundle that tree-shakes — the template strings are large.
|
|
25
|
+
* Use dynamic `import()` if you only need codegen in certain code paths.
|
|
26
|
+
*
|
|
27
|
+
* @packageDocumentation
|
|
28
|
+
*/
|
|
1
29
|
export { generateFormComponent, resolveFieldMapping } from './generate.js';
|
|
2
30
|
export type { CodegenConfig } from './generate.js';
|
|
3
31
|
export { getFileHeader, renderField, registerPathExpr } from './templates.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAKH,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAC3E,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAE9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,YAAY,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAElE,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser-safe code generation utilities for Zod v4 form components.
|
|
3
|
+
*
|
|
4
|
+
* Provides the building blocks for generating React form TSX files from a
|
|
5
|
+
* `FormField[]` tree and a `ZodFormsConfig`. No Node.js dependencies — safe
|
|
6
|
+
* to import in browser and server environments alike.
|
|
7
|
+
*
|
|
8
|
+
* Key exports:
|
|
9
|
+
* - `generateFormComponent` — produce a complete TSX form component string
|
|
10
|
+
* - `getFileHeader` — emit import declarations for generated files
|
|
11
|
+
* - `renderField` — render a single field to its JSX string
|
|
12
|
+
* - `buildConfigSource` — generate a `z2f.config.ts` starter file
|
|
13
|
+
* - `getFieldTemplateSource` — emit the preset FieldTemplate component source
|
|
14
|
+
* - `generateSchemaLiteFile` — emit the lite schema file for optimized validation
|
|
15
|
+
*
|
|
16
|
+
* @useWhen
|
|
17
|
+
* - You are building a custom codegen pipeline on top of `walkSchema`
|
|
18
|
+
* - You need to generate form components programmatically (e.g. a playground or IDE plugin)
|
|
19
|
+
*
|
|
20
|
+
* @avoidWhen
|
|
21
|
+
* - You just want to generate forms — use the CLI (`npx zod-to-form generate`) instead
|
|
22
|
+
*
|
|
23
|
+
* @never
|
|
24
|
+
* - NEVER import this in a browser bundle that tree-shakes — the template strings are large.
|
|
25
|
+
* Use dynamic `import()` if you only need codegen in certain code paths.
|
|
26
|
+
*
|
|
27
|
+
* @packageDocumentation
|
|
28
|
+
*/
|
|
1
29
|
// @zod-to-form/codegen — Browser-safe code generation for Zod v4 forms
|
|
2
30
|
// No Node.js dependencies. Usable in browser and server environments.
|
|
3
31
|
export { generateFormComponent, resolveFieldMapping } from './generate.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,sEAAsE;AAEtE,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAG3E,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAE9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAGzD,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,uEAAuE;AACvE,sEAAsE;AAEtE,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAG3E,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAE9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAGzD,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -1,9 +1,30 @@
|
|
|
1
1
|
import type { SchemaLiteInfo } from '@zod-to-form/core';
|
|
2
2
|
/**
|
|
3
|
-
* Generate the content of a
|
|
3
|
+
* Generate the content of a `.lite.ts` file that reconstructs a lite Zod schema
|
|
4
4
|
* from the imported schema's check objects at runtime.
|
|
5
|
+
* Returns `null` when no schemaLite is needed (no top-level effects were detected).
|
|
5
6
|
*
|
|
6
|
-
*
|
|
7
|
+
* @param schemaImportPath - Module specifier for the original schema file (e.g. `'./schema'`).
|
|
8
|
+
* @param exportName - The named schema export (e.g. `'UserSchema'`).
|
|
9
|
+
* @param info - Metadata from `WalkResult.schemaLiteInfo` describing what to reconstruct.
|
|
10
|
+
* @returns The complete `.lite.ts` file source, or `null` if no lite schema is needed.
|
|
11
|
+
*
|
|
12
|
+
* @remarks
|
|
13
|
+
* Three reconstruction strategies based on `info.type`:
|
|
14
|
+
* - `'original'` — re-exports the original schema unchanged (non-decomposable pipes)
|
|
15
|
+
* - `'checks'` — slices `_zod.def.checks` at runtime to extract superRefine/refine checks
|
|
16
|
+
* - `'transform'` — extracts both inner checks and the transform function from a pipe wrapper
|
|
17
|
+
* Fallthrough fields are included in the base object via shape references into the original schema.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```ts
|
|
21
|
+
* const liteSource = generateSchemaLiteFile('./schema', 'UserSchema', schemaLiteInfo);
|
|
22
|
+
* if (liteSource) {
|
|
23
|
+
* await writeFile('./UserForm.lite.ts', liteSource, 'utf8');
|
|
24
|
+
* }
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* @category Templates
|
|
7
28
|
*/
|
|
8
29
|
export declare function generateSchemaLiteFile(schemaImportPath: string, exportName: string, info: SchemaLiteInfo): string | null;
|
|
9
30
|
//# sourceMappingURL=schema-lite-codegen.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-lite-codegen.d.ts","sourceRoot":"","sources":["../src/schema-lite-codegen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AA2ExD
|
|
1
|
+
{"version":3,"file":"schema-lite-codegen.d.ts","sourceRoot":"","sources":["../src/schema-lite-codegen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AA2ExD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,sBAAsB,CACpC,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,cAAc,GACnB,MAAM,GAAG,IAAI,CAmEf"}
|
|
@@ -66,10 +66,31 @@ function emitLiteBase(exportName, fallthroughFields) {
|
|
|
66
66
|
return `let _lite: any = z.object({ ${entries.join(', ')} }).loose();`;
|
|
67
67
|
}
|
|
68
68
|
/**
|
|
69
|
-
* Generate the content of a
|
|
69
|
+
* Generate the content of a `.lite.ts` file that reconstructs a lite Zod schema
|
|
70
70
|
* from the imported schema's check objects at runtime.
|
|
71
|
+
* Returns `null` when no schemaLite is needed (no top-level effects were detected).
|
|
71
72
|
*
|
|
72
|
-
*
|
|
73
|
+
* @param schemaImportPath - Module specifier for the original schema file (e.g. `'./schema'`).
|
|
74
|
+
* @param exportName - The named schema export (e.g. `'UserSchema'`).
|
|
75
|
+
* @param info - Metadata from `WalkResult.schemaLiteInfo` describing what to reconstruct.
|
|
76
|
+
* @returns The complete `.lite.ts` file source, or `null` if no lite schema is needed.
|
|
77
|
+
*
|
|
78
|
+
* @remarks
|
|
79
|
+
* Three reconstruction strategies based on `info.type`:
|
|
80
|
+
* - `'original'` — re-exports the original schema unchanged (non-decomposable pipes)
|
|
81
|
+
* - `'checks'` — slices `_zod.def.checks` at runtime to extract superRefine/refine checks
|
|
82
|
+
* - `'transform'` — extracts both inner checks and the transform function from a pipe wrapper
|
|
83
|
+
* Fallthrough fields are included in the base object via shape references into the original schema.
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```ts
|
|
87
|
+
* const liteSource = generateSchemaLiteFile('./schema', 'UserSchema', schemaLiteInfo);
|
|
88
|
+
* if (liteSource) {
|
|
89
|
+
* await writeFile('./UserForm.lite.ts', liteSource, 'utf8');
|
|
90
|
+
* }
|
|
91
|
+
* ```
|
|
92
|
+
*
|
|
93
|
+
* @category Templates
|
|
73
94
|
*/
|
|
74
95
|
export function generateSchemaLiteFile(schemaImportPath, exportName, info) {
|
|
75
96
|
if (!info)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-lite-codegen.js","sourceRoot":"","sources":["../src/schema-lite-codegen.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"schema-lite-codegen.js","sourceRoot":"","sources":["../src/schema-lite-codegen.ts"],"names":[],"mappings":"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"}
|
package/dist/templates.d.ts
CHANGED
|
@@ -1,4 +1,32 @@
|
|
|
1
1
|
import type { FormField } from '@zod-to-form/core';
|
|
2
|
+
/**
|
|
3
|
+
* Generate the import block for a form component file.
|
|
4
|
+
* Emits react-hook-form, zodResolver, zod, and component import lines
|
|
5
|
+
* based on the generation options. Also inlines the `StripIndexSignature` utility type
|
|
6
|
+
* and the `normalizeFormValues` helper for html-preset forms.
|
|
7
|
+
*
|
|
8
|
+
* @param schemaImportPath - Module specifier for the schema file (e.g. `'./schema'`).
|
|
9
|
+
* @param exportName - The named schema export to import (e.g. `'UserSchema'`).
|
|
10
|
+
* @param hasArrays - Whether to include `useFieldArray` in the RHF import.
|
|
11
|
+
* @param mode - Form submission mode: `'submit'` (default) or `'auto-save'`.
|
|
12
|
+
* @param componentImportLine - Optional custom import line for the component module.
|
|
13
|
+
* @param options - Additional flags: `hasControlled`, `formProvider`, `preset`.
|
|
14
|
+
* @param optimized - Whether to conditionally include `zodResolver` and `zod` imports.
|
|
15
|
+
* @returns The complete import block as a multi-line string.
|
|
16
|
+
*
|
|
17
|
+
* @remarks
|
|
18
|
+
* The `optimized` parameter controls whether the zodResolver and zod imports are included.
|
|
19
|
+
* When optimization eliminates the need for zodResolver (all fields use native or per-field validation),
|
|
20
|
+
* both can be omitted to reduce bundle size. The `hasControlled` flag adds `Controller` to RHF imports.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```ts
|
|
24
|
+
* const header = getFileHeader('./schema', 'UserSchema', false, 'submit', undefined, { preset: 'shadcn' });
|
|
25
|
+
* // → "import { useForm } from 'react-hook-form';\nimport { zodResolver } ..."
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* @category Templates
|
|
29
|
+
*/
|
|
2
30
|
export declare function getFileHeader(schemaImportPath: string, exportName: string, hasArrays?: boolean, mode?: 'submit' | 'auto-save', componentImportLine?: string, options?: {
|
|
3
31
|
hasControlled?: boolean;
|
|
4
32
|
formProvider?: boolean;
|
|
@@ -7,7 +35,33 @@ export declare function getFileHeader(schemaImportPath: string, exportName: stri
|
|
|
7
35
|
includeZodResolver: boolean;
|
|
8
36
|
includeZod: boolean;
|
|
9
37
|
}): string;
|
|
38
|
+
/**
|
|
39
|
+
* Produce the correct `register(...)` call expression for a field path.
|
|
40
|
+
* Uses template-literal syntax when the path contains `${` (e.g. array item paths),
|
|
41
|
+
* and single-quoted string syntax otherwise.
|
|
42
|
+
*
|
|
43
|
+
* @param path - The field path string (e.g. `"name"`, `"items.${index}.value"`).
|
|
44
|
+
* @returns A `register('...')` or `register(\`...\`)` expression string for inclusion in JSX.
|
|
45
|
+
*
|
|
46
|
+
* @example registerPathExpr('name') → "register('name')"
|
|
47
|
+
* @example registerPathExpr('items.${index}.name') → "register(`items.${index}.name`)"
|
|
48
|
+
*
|
|
49
|
+
* @category Templates
|
|
50
|
+
*/
|
|
10
51
|
export declare function registerPathExpr(path: string): string;
|
|
11
52
|
export declare function renderOptimizedRegister(field: FormField, fieldKey: string): string;
|
|
53
|
+
/**
|
|
54
|
+
* Render a single `FormField` to its plain-HTML JSX string.
|
|
55
|
+
* Dispatches on `field.component` to produce the correct input element.
|
|
56
|
+
* Used by the html-preset code generator for uncontrolled forms.
|
|
57
|
+
*
|
|
58
|
+
* @param field - The FormField to render.
|
|
59
|
+
* @param regExpr - Optional pre-built `register(...)` expression string. If omitted, generated from `field.key`.
|
|
60
|
+
* @returns A JSX string for the field's input element (e.g. `<input type="text" {...register('name')} />`).
|
|
61
|
+
*
|
|
62
|
+
* @example renderField({ component: 'Input', key: 'name', props: { type: 'text' }, ... }) → "<input ... />"
|
|
63
|
+
*
|
|
64
|
+
* @category Templates
|
|
65
|
+
*/
|
|
12
66
|
export declare function renderField(field: FormField, regExpr?: string): string;
|
|
13
67
|
//# sourceMappingURL=templates.d.ts.map
|
package/dist/templates.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAuEnD,wBAAgB,aAAa,CAC3B,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,MAAM,EAClB,SAAS,UAAQ,EACjB,IAAI,GAAE,QAAQ,GAAG,WAAsB,EACvC,mBAAmB,CAAC,EAAE,MAAM,EAC5B,OAAO,CAAC,EAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;CAAE,EACzF,SAAS,CAAC,EAAE;IAAE,kBAAkB,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,GAC/D,MAAM,CAuCR;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAErD;AAuCD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CA6DlF;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAmBtE"}
|
|
1
|
+
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAuEnD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,aAAa,CAC3B,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,MAAM,EAClB,SAAS,UAAQ,EACjB,IAAI,GAAE,QAAQ,GAAG,WAAsB,EACvC,mBAAmB,CAAC,EAAE,MAAM,EAC5B,OAAO,CAAC,EAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;CAAE,EACzF,SAAS,CAAC,EAAE;IAAE,kBAAkB,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,GAC/D,MAAM,CAuCR;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAErD;AAuCD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CA6DlF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAmBtE"}
|
package/dist/templates.js
CHANGED
|
@@ -65,6 +65,34 @@ function normalizeFormValues(value: unknown): unknown {
|
|
|
65
65
|
|
|
66
66
|
return value;
|
|
67
67
|
}`;
|
|
68
|
+
/**
|
|
69
|
+
* Generate the import block for a form component file.
|
|
70
|
+
* Emits react-hook-form, zodResolver, zod, and component import lines
|
|
71
|
+
* based on the generation options. Also inlines the `StripIndexSignature` utility type
|
|
72
|
+
* and the `normalizeFormValues` helper for html-preset forms.
|
|
73
|
+
*
|
|
74
|
+
* @param schemaImportPath - Module specifier for the schema file (e.g. `'./schema'`).
|
|
75
|
+
* @param exportName - The named schema export to import (e.g. `'UserSchema'`).
|
|
76
|
+
* @param hasArrays - Whether to include `useFieldArray` in the RHF import.
|
|
77
|
+
* @param mode - Form submission mode: `'submit'` (default) or `'auto-save'`.
|
|
78
|
+
* @param componentImportLine - Optional custom import line for the component module.
|
|
79
|
+
* @param options - Additional flags: `hasControlled`, `formProvider`, `preset`.
|
|
80
|
+
* @param optimized - Whether to conditionally include `zodResolver` and `zod` imports.
|
|
81
|
+
* @returns The complete import block as a multi-line string.
|
|
82
|
+
*
|
|
83
|
+
* @remarks
|
|
84
|
+
* The `optimized` parameter controls whether the zodResolver and zod imports are included.
|
|
85
|
+
* When optimization eliminates the need for zodResolver (all fields use native or per-field validation),
|
|
86
|
+
* both can be omitted to reduce bundle size. The `hasControlled` flag adds `Controller` to RHF imports.
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* ```ts
|
|
90
|
+
* const header = getFileHeader('./schema', 'UserSchema', false, 'submit', undefined, { preset: 'shadcn' });
|
|
91
|
+
* // → "import { useForm } from 'react-hook-form';\nimport { zodResolver } ..."
|
|
92
|
+
* ```
|
|
93
|
+
*
|
|
94
|
+
* @category Templates
|
|
95
|
+
*/
|
|
68
96
|
export function getFileHeader(schemaImportPath, exportName, hasArrays = false, mode = 'submit', componentImportLine, options, optimized) {
|
|
69
97
|
const rhfParts = ['useForm'];
|
|
70
98
|
if (hasArrays)
|
|
@@ -104,6 +132,19 @@ export function getFileHeader(schemaImportPath, exportName, hasArrays = false, m
|
|
|
104
132
|
...(!isShadcn ? [``, NORMALIZE_FORM_VALUES_BLOCK] : [])
|
|
105
133
|
].join('\n');
|
|
106
134
|
}
|
|
135
|
+
/**
|
|
136
|
+
* Produce the correct `register(...)` call expression for a field path.
|
|
137
|
+
* Uses template-literal syntax when the path contains `${` (e.g. array item paths),
|
|
138
|
+
* and single-quoted string syntax otherwise.
|
|
139
|
+
*
|
|
140
|
+
* @param path - The field path string (e.g. `"name"`, `"items.${index}.value"`).
|
|
141
|
+
* @returns A `register('...')` or `register(\`...\`)` expression string for inclusion in JSX.
|
|
142
|
+
*
|
|
143
|
+
* @example registerPathExpr('name') → "register('name')"
|
|
144
|
+
* @example registerPathExpr('items.${index}.name') → "register(`items.${index}.name`)"
|
|
145
|
+
*
|
|
146
|
+
* @category Templates
|
|
147
|
+
*/
|
|
107
148
|
export function registerPathExpr(path) {
|
|
108
149
|
return path.includes('${') ? `register(\`${path}\`)` : `register('${path}')`;
|
|
109
150
|
}
|
|
@@ -184,6 +225,19 @@ export function renderOptimizedRegister(field, fieldKey) {
|
|
|
184
225
|
// undefined validation — backward compatible
|
|
185
226
|
return registerPathExpr(fieldKey);
|
|
186
227
|
}
|
|
228
|
+
/**
|
|
229
|
+
* Render a single `FormField` to its plain-HTML JSX string.
|
|
230
|
+
* Dispatches on `field.component` to produce the correct input element.
|
|
231
|
+
* Used by the html-preset code generator for uncontrolled forms.
|
|
232
|
+
*
|
|
233
|
+
* @param field - The FormField to render.
|
|
234
|
+
* @param regExpr - Optional pre-built `register(...)` expression string. If omitted, generated from `field.key`.
|
|
235
|
+
* @returns A JSX string for the field's input element (e.g. `<input type="text" {...register('name')} />`).
|
|
236
|
+
*
|
|
237
|
+
* @example renderField({ component: 'Input', key: 'name', props: { type: 'text' }, ... }) → "<input ... />"
|
|
238
|
+
*
|
|
239
|
+
* @category Templates
|
|
240
|
+
*/
|
|
187
241
|
export function renderField(field, regExpr) {
|
|
188
242
|
switch (field.component) {
|
|
189
243
|
case 'Checkbox':
|
package/dist/templates.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"AAEA,wEAAwE;AACxE,EAAE;AACF,4EAA4E;AAC5E,4EAA4E;AAC5E,0EAA0E;AAC1E,oDAAoD;AACpD,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;WAcxB,CAAC;AAEZ,wEAAwE;AACxE,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4ClC,CAAC;AAEH,MAAM,UAAU,aAAa,CAC3B,gBAAwB,EACxB,UAAkB,EAClB,SAAS,GAAG,KAAK,EACjB,IAAI,GAA2B,QAAQ,EACvC,mBAA4B,EAC5B,OAAyF,EACzF,SAAgE;IAEhE,MAAM,QAAQ,GAAG,CAAC,SAAS,CAAC,CAAC;IAC7B,IAAI,SAAS;QAAE,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC9C,IAAI,OAAO,EAAE,aAAa;QAAE,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACxD,IAAI,OAAO,EAAE,YAAY,IAAI,IAAI,KAAK,WAAW;QAAE,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACjF,MAAM,UAAU,GAAG,YAAY,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC;IAE/E,MAAM,YAAY,GAAG,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEtF,MAAM,QAAQ,GAAG,OAAO,EAAE,MAAM,KAAK,QAAQ,CAAC;IAE9C,oEAAoE;IACpE,MAAM,kBAAkB,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3E,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;IAE3D,OAAO;QACL,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,UAAU;QACV,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,wDAAwD,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,YAAY,UAAU,YAAY,gBAAgB,IAAI;QACtD,EAAE;QACF,0BAA0B;QAC1B,EAAE;QACF,oEAAoE;QACpE,+EAA+E;QAC/E,yEAAyE;QACzE,GAAG,CAAC,UAAU;YACZ,CAAC,CAAC;gBACE,sDAAsD,UAAU,KAAK;gBACrE,yDAAyD,UAAU,KAAK;aACzE;YACH,CAAC,CAAC;gBACE,kEAAkE,UAAU,KAAK;gBACjF,qEAAqE,UAAU,KAAK;aACrF,CAAC;QACN,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,2BAA2B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,IAAI,KAAK,CAAC,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC;AAC/E,CAAC;AAED,SAAS,YAAY,CAAC,KAAgB;IACpC,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;AAC3C,CAAC;AAED,SAAS,WAAW,CAAC,KAAgB,EAAE,OAAgB;IACrD,MAAM,SAAS,GAAG,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACzF,MAAM,GAAG,GAAG,OAAO,IAAI,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnD,OAAO,cAAc,KAAK,CAAC,GAAG,WAAW,SAAS,IAAI,YAAY,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC;AAC7F,CAAC;AAED,SAAS,cAAc,CAAC,KAAgB,EAAE,OAAgB;IACxD,MAAM,GAAG,GAAG,OAAO,IAAI,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnD,OAAO,cAAc,KAAK,CAAC,GAAG,oBAAoB,YAAY,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC;AACzF,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAgB,EAAE,OAAgB;IAC1D,MAAM,GAAG,GACP,OAAO;QACP,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CAAC,cAAc,KAAK,CAAC,GAAG,4BAA4B;YACrD,CAAC,CAAC,aAAa,KAAK,CAAC,GAAG,2BAA2B,CAAC,CAAC;IACzD,OAAO,cAAc,KAAK,CAAC,GAAG,gBAAgB,YAAY,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC;AACrF,CAAC;AAED,SAAS,eAAe,CAAC,KAAgB,EAAE,OAAgB;IACzD,MAAM,GAAG,GAAG,OAAO,IAAI,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnD,OAAO,cAAc,KAAK,CAAC,GAAG,gBAAgB,YAAY,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC;AACrF,CAAC;AAED,SAAS,YAAY,CAAC,KAAgB,EAAE,OAAgB;IACtD,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;SAClC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,kBAAkB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,KAAK,WAAW,CAAC;SACnF,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,MAAM,GAAG,GAAG,OAAO,IAAI,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnD,OAAO,eAAe,KAAK,CAAC,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,QAAQ,GAAG,KAAK,OAAO,WAAW,CAAC;AAC3F,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,KAAgB,EAAE,QAAgB;IACxE,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC;IAEpC,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC;QACtC,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9C,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC;QACD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CACR,uBAAuB,KAAK,CAAC,SAAS,CAAC,KAAK,cAAc,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CACtG,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CACR,uBAAuB,KAAK,CAAC,SAAS,CAAC,KAAK,cAAc,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CACtG,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CACR,iBAAiB,KAAK,CAAC,GAAG,CAAC,KAAK,cAAc,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CACpF,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CACR,iBAAiB,KAAK,CAAC,GAAG,CAAC,KAAK,cAAc,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CACpF,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAChC,KAAK,CAAC,IAAI,CACR,qBAAqB,KAAK,CAAC,OAAO,CAAC,KAAK,cAAc,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAChG,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,OAAO,cAAc,QAAQ,SAAS,QAAQ,KAAK,CAAC;QACtD,CAAC;QACD,OAAO,aAAa,QAAQ,QAAQ,QAAQ,KAAK,CAAC;IACpD,CAAC;IAED,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;QACxD,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,OAAO,cAAc,QAAQ,6BAA6B,OAAO,KAAK,CAAC;QACzE,CAAC;QACD,OAAO,aAAa,QAAQ,4BAA4B,OAAO,KAAK,CAAC;IACvE,CAAC;IAED,IAAI,IAAI,KAAK,oBAAoB,EAAE,CAAC;QAClC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,2EAA2E;IAC3E,gCAAgC;IAEhC,6CAA6C;IAC7C,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAgB,EAAE,OAAgB;IAC5D,QAAQ,KAAK,CAAC,SAAS,EAAE,CAAC;QACxB,KAAK,UAAU,CAAC;QAChB,KAAK,QAAQ;YACX,OAAO,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACxC,KAAK,YAAY;YACf,OAAO,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC1C,KAAK,WAAW;YACd,OAAO,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACzC,KAAK,QAAQ,CAAC;QACd,KAAK,YAAY;YACf,OAAO,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACtC,KAAK,UAAU,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,OAAO,IAAI,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnD,OAAO,iBAAiB,KAAK,CAAC,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC;QAC5E,CAAC;QACD;YACE,OAAO,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zod-to-form/codegen",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.6",
|
|
4
4
|
"description": "Browser-safe code generation for Zod v4 form components",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://github.com/pradeepmouli/zod-to-form#readme",
|
|
@@ -11,10 +11,16 @@
|
|
|
11
11
|
},
|
|
12
12
|
"keywords": [
|
|
13
13
|
"zod",
|
|
14
|
+
"zod-v4",
|
|
14
15
|
"codegen",
|
|
15
16
|
"forms",
|
|
16
17
|
"form-generation",
|
|
17
|
-
"
|
|
18
|
+
"react-hook-form",
|
|
19
|
+
"schema-driven",
|
|
20
|
+
"template-generation",
|
|
21
|
+
"browser-safe",
|
|
22
|
+
"component-codegen",
|
|
23
|
+
"schema-to-tsx"
|
|
18
24
|
],
|
|
19
25
|
"type": "module",
|
|
20
26
|
"exports": {
|
|
@@ -29,7 +35,7 @@
|
|
|
29
35
|
"dist"
|
|
30
36
|
],
|
|
31
37
|
"dependencies": {
|
|
32
|
-
"@zod-to-form/core": "0.6.
|
|
38
|
+
"@zod-to-form/core": "0.6.7"
|
|
33
39
|
},
|
|
34
40
|
"devDependencies": {
|
|
35
41
|
"zod": "^4.3.6"
|
|
@@ -37,6 +43,7 @@
|
|
|
37
43
|
"publishConfig": {
|
|
38
44
|
"access": "public"
|
|
39
45
|
},
|
|
46
|
+
"author": "Pradeep Mouli <pmouli@mac.com> (https://github.com/pradeepmouli)",
|
|
40
47
|
"scripts": {
|
|
41
48
|
"build": "tsgo -p tsconfig.build.json",
|
|
42
49
|
"clean": "rm -rf dist tsconfig.build.tsbuildinfo tsconfig.tsbuildinfo",
|