@zod-to-form/cli 0.6.0 → 0.6.2

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/README.md CHANGED
@@ -37,16 +37,16 @@ Alias: `z2f`.
37
37
 
38
38
  Required options:
39
39
 
40
+ - `--config <path>`: path to config file (`.json` or `.ts`) that drives generation
40
41
  - `--schema <path>`: path to schema module
41
- - `--export <name>`: named export containing the schema
42
42
 
43
43
  Optional options:
44
44
 
45
+ - `--export <name>`: named export containing the schema (optional when `config.types` or `config.include` are set)
45
46
  - `--mode <mode>`: `submit | auto-save` (default `submit`)
46
- - `--config <path>`: path to generate config (`.json` or `.ts`) **required**
47
47
  - `--out <path>`: output directory or `.tsx` file path
48
48
  - `--name <componentName>`: generated component name override
49
- - `--ui <preset>`: `shadcn | unstyled` (default `shadcn`)
49
+ - `--ui <preset>`: `shadcn | html` (default `shadcn`)
50
50
  - `--dry-run`: print generated code to stdout without writing files
51
51
  - `--server-action`: generate Next.js server action next to form output
52
52
  - `--watch`: watch schema file and regenerate on changes
@@ -78,6 +78,7 @@ Optional options:
78
78
 
79
79
  - `--out <path>`: output file or directory (default `z2f.config.ts`)
80
80
  - `--components <modulePath>`: module path assigned to `components` in generated config (overrides inference)
81
+ - `--schemas <path>`: path to schema file or directory for autodiscovery
81
82
  - `--force`: overwrite existing config file
82
83
  - `--dry-run`: print generated config and skip file writes
83
84
  - `--verbose`: print detailed diagnostics for each step
@@ -139,42 +140,36 @@ zod-to-form init --components ../../src/components/zod-form-components
139
140
 
140
141
  The package exports helpers to define and validate component config.
141
142
 
142
- ### `defineComponentConfig(...)`
143
+ ### `defineConfig(...)`
143
144
 
144
- `defineComponentConfig` gives type-safe field path support (including array path normalization).
145
+ `defineConfig` (re-exported from `@zod-to-form/core`) gives type-safe config construction with preset merging.
145
146
 
146
147
  ```ts
147
- import { defineComponentConfig } from '@zod-to-form/cli';
148
-
149
- type Values = {
150
- profile: { bio: string };
151
- tags: Array<{ label: string }>;
152
- };
153
-
154
- type Components = {
155
- TextInput: unknown;
156
- TextareaInput: unknown;
157
- };
158
-
159
- export default defineComponentConfig<Components, Values>({
160
- components: '@/components/form-components',
161
- overwrite: true,
148
+ import { defineConfig } from '@zod-to-form/cli';
149
+
150
+ export default defineConfig({
151
+ components: {
152
+ source: '@/components/form-components',
153
+ preset: 'shadcn',
154
+ overrides: {
155
+ TextareaInput: { controlled: false },
156
+ },
157
+ },
162
158
  types: ['userSchema'],
163
159
  include: ['*Schema'],
164
160
  exclude: ['Internal*'],
161
+ defaults: {
162
+ overwrite: true,
163
+ },
165
164
  formPrimitives: {
166
165
  field: 'Field',
167
166
  label: 'FieldLabel',
168
- control: 'FieldControl'
169
- },
170
- fieldTypes: {
171
- Input: { component: 'TextInput' },
172
- textarea: { component: 'TextareaInput' }
167
+ control: 'FieldControl',
173
168
  },
174
169
  fields: {
175
- 'profile.bio': { fieldType: 'textarea', props: { rows: 5 } },
176
- 'tags[].label': { fieldType: 'Input' }
177
- }
170
+ 'profile.bio': { component: 'TextareaInput', props: { rows: 5 } },
171
+ 'tags[].label': { component: 'TextInput' },
172
+ },
178
173
  });
179
174
  ```
180
175
 
@@ -198,14 +193,14 @@ formPrimitives: {
198
193
  }
199
194
  ```
200
195
 
201
- ### `validateComponentConfig(...)`
196
+ ### `validateConfig(...)`
202
197
 
203
- Use at runtime when loading external config objects.
198
+ Use at runtime when loading external config objects. Validates and returns a typed `ZodFormsConfig`.
204
199
 
205
200
  ```ts
206
- import { validateComponentConfig } from '@zod-to-form/cli';
201
+ import { validateConfig } from '@zod-to-form/cli';
207
202
 
208
- const parsed = validateComponentConfig(configObject, 'component-config');
203
+ const parsed = validateConfig(configObject, 'component-config');
209
204
  ```
210
205
 
211
206
  ## Programmatic API
package/dist/codegen.d.ts CHANGED
@@ -1,22 +1,11 @@
1
1
  import type { FormField } from '@zod-to-form/core';
2
- import type { ComponentOverride, FieldConfig, ZodFormsConfig } from './index.js';
3
- export type CodegenConfig = {
2
+ import { type CodegenConfig as CodegenConfigBase } from '@zod-to-form/codegen';
3
+ export { resolveFieldMapping } from '@zod-to-form/codegen';
4
+ export type CodegenConfig = CodegenConfigBase & {
5
+ /** Absolute path to schema file (used to compute relative import path) */
4
6
  schemaPath: string;
5
- exportName: string;
7
+ /** Absolute path to output file (used to compute relative import path) */
6
8
  outputPath: string;
7
- componentName: string;
8
- mode: 'submit' | 'auto-save';
9
- componentConfig?: ZodFormsConfig<Record<string, unknown>>;
10
- ui: 'shadcn' | 'unstyled';
11
- serverAction: boolean;
12
- /** Wrap generated form in <FormProvider {...form}> */
13
- formProvider?: boolean;
14
- };
15
- export declare function resolveFieldMapping<TComponents extends Record<string, unknown>>(fieldKey: string, componentName: string | undefined, componentConfig: ZodFormsConfig<TComponents> | undefined): {
16
- componentOverride?: ComponentOverride;
17
- override?: FieldConfig;
18
- componentName?: string;
19
- source: 'fields' | 'components' | 'none';
20
9
  };
21
10
  export declare function generateFormComponent(fields: FormField[], config: CodegenConfig): Promise<string>;
22
11
  //# sourceMappingURL=codegen.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../src/codegen.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,KAAK,EACV,iBAAiB,EACjB,WAAW,EAEX,cAAc,EACf,MAAM,YAAY,CAAC;AAGpB,MAAM,MAAM,aAAa,GAAG;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC7B,eAAe,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1D,EAAE,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,sDAAsD;IACtD,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AA6JF,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,CAmCA;AAuUD,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,SAAS,EAAE,EACnB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,MAAM,CAAC,CAoHjB"}
1
+ {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../src/codegen.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAEL,KAAK,aAAa,IAAI,iBAAiB,EACxC,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAAG;IAC9C,0EAA0E;IAC1E,UAAU,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAcF,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,SAAS,EAAE,EACnB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,MAAM,CAAC,CAMjB"}
package/dist/codegen.js CHANGED
@@ -1,147 +1,7 @@
1
1
  import path from 'node:path';
2
- import { getEmptyDefault } from '@zod-to-form/core';
3
- import { getFileHeader, renderField } from './templates.js';
4
- function renderLiteralProp(value) {
5
- if (typeof value === 'string') {
6
- const json = JSON.stringify(value);
7
- const inner = json.slice(1, -1);
8
- return `"${inner}"`;
9
- }
10
- if (typeof value === 'number' || typeof value === 'boolean') {
11
- return `{${String(value)}}`;
12
- }
13
- return undefined;
14
- }
15
- function renderOverrideProps(props) {
16
- if (!props) {
17
- return '';
18
- }
19
- const attrs = Object.entries(props)
20
- .map(([key, value]) => {
21
- const rendered = renderLiteralProp(value);
22
- return rendered ? ` ${key}=${rendered}` : '';
23
- })
24
- .join('');
25
- return attrs;
26
- }
27
- function getMappedFieldComponent(field, componentConfig) {
28
- const mapping = resolveFieldMapping(field.key, field.component, componentConfig);
29
- if (!mapping.componentName) {
30
- return { source: mapping.source };
31
- }
32
- return {
33
- componentName: mapping.componentName,
34
- override: mapping.override,
35
- componentOverride: mapping.componentOverride,
36
- source: mapping.source
37
- };
38
- }
39
- function collectMappedComponentNames(fields, componentConfig, out = new Set()) {
40
- for (const field of fields) {
41
- const mapping = getMappedFieldComponent(field, componentConfig);
42
- if (mapping.componentName && (mapping.componentOverride || mapping.override)) {
43
- out.add(mapping.componentName);
44
- }
45
- if (field.children?.length) {
46
- collectMappedComponentNames(field.children, componentConfig, out);
47
- }
48
- if (field.arrayItem) {
49
- collectMappedComponentNames([field.arrayItem], componentConfig, out);
50
- }
51
- }
52
- return out;
53
- }
54
- function collectFormPrimitiveNames(primitives) {
55
- const names = new Set();
56
- if (!primitives) {
57
- return names;
58
- }
59
- if (primitives.field) {
60
- names.add(primitives.field);
61
- }
62
- if (primitives.label) {
63
- names.add(primitives.label);
64
- }
65
- if (primitives.control) {
66
- names.add(primitives.control);
67
- }
68
- return names;
69
- }
70
- function renderFieldContainer(field, content, indent, primitives) {
71
- const styleAttr = field.gridColumn ? ` style={{ gridColumn: '${field.gridColumn}' }}` : '';
72
- const fieldTag = primitives?.field;
73
- const labelTag = primitives?.label;
74
- const controlTag = primitives?.control;
75
- if (!fieldTag && !labelTag && !controlTag) {
76
- return [
77
- `${indent}<div${styleAttr}>`,
78
- `${indent} <label htmlFor="${field.key}">${field.label}</label>`,
79
- `${indent} ${content}`,
80
- `${indent}</div>`
81
- ].join('\n');
82
- }
83
- const openField = fieldTag ? `<${fieldTag}${styleAttr}>` : `<div${styleAttr}>`;
84
- const closeField = fieldTag ? `</${fieldTag}>` : `</div>`;
85
- const openLabel = labelTag
86
- ? `<${labelTag} htmlFor="${field.key}">`
87
- : `<label htmlFor="${field.key}">`;
88
- const closeLabel = labelTag ? `</${labelTag}>` : `</label>`;
89
- if (!controlTag) {
90
- return [
91
- `${indent}${openField}`,
92
- `${indent} ${openLabel}${field.label}${closeLabel}`,
93
- `${indent} ${content}`,
94
- `${indent}${closeField}`
95
- ].join('\n');
96
- }
97
- return [
98
- `${indent}${openField}`,
99
- `${indent} ${openLabel}${field.label}${closeLabel}`,
100
- `${indent} <${controlTag}>`,
101
- `${indent} ${content}`,
102
- `${indent} </${controlTag}>`,
103
- `${indent}${closeField}`
104
- ].join('\n');
105
- }
106
- /**
107
- * Normalise a concrete field key (e.g. `attributes.0.typeCall.type` or
108
- * `attributes.${index}.typeCall.type`) to the bracket notation used in
109
- * the user-facing `fields` config (e.g. `attributes[].typeCall.type`).
110
- */
111
- function normalizeFieldKey(key) {
112
- // Replace `.number.` or `.${index}.` segments with `[].`
113
- let result = key.replace(/\.(?:\d+|\$\{index\})\./g, '[].');
114
- // Replace trailing `.number` or `.${index}`
115
- result = result.replace(/\.(?:\d+|\$\{index\})$/, '[]');
116
- return result;
117
- }
118
- export function resolveFieldMapping(fieldKey, componentName, componentConfig) {
119
- if (!componentConfig) {
120
- return { source: 'none' };
121
- }
122
- const normalizedKey = normalizeFieldKey(fieldKey);
123
- const override = componentConfig.fields?.[fieldKey] ?? componentConfig.fields?.[normalizedKey];
124
- // Determine final component name: per-field override > field's default
125
- const resolvedComponent = override?.component ?? componentName;
126
- if (override) {
127
- return {
128
- componentName: resolvedComponent,
129
- componentOverride: resolvedComponent
130
- ? componentConfig.components.overrides?.[resolvedComponent]
131
- : undefined,
132
- override,
133
- source: 'fields'
134
- };
135
- }
136
- if (resolvedComponent) {
137
- return {
138
- componentName: resolvedComponent,
139
- componentOverride: componentConfig.components.overrides?.[resolvedComponent],
140
- source: 'components'
141
- };
142
- }
143
- return { source: 'none' };
144
- }
2
+ import { generateFormComponent as generateFormComponentBase } from '@zod-to-form/codegen';
3
+ // Re-export the browser-safe resolveFieldMapping for use by other CLI modules
4
+ export { resolveFieldMapping } from '@zod-to-form/codegen';
145
5
  function getSchemaImportPath(config) {
146
6
  const relative = path
147
7
  .relative(path.dirname(config.outputPath), config.schemaPath)
@@ -152,360 +12,11 @@ function getSchemaImportPath(config) {
152
12
  .replace(/\.cts$/i, '.cjs')
153
13
  .replace(/\.tsx?$/i, '.js');
154
14
  }
155
- /** Convert a field key to a safe camelCase variable prefix (e.g. 'address.street' → 'addressStreet') */
156
- function toVarName(key) {
157
- return key.replace(/[^a-zA-Z0-9]+([a-zA-Z0-9])/g, (_, c) => c.toUpperCase());
158
- }
159
- /** Collect all array fields (recursively through nested objects) */
160
- function collectArrayFields(fields) {
161
- const result = [];
162
- for (const field of fields) {
163
- if (field.component === 'ArrayField' && !field.key.includes('.0.')) {
164
- result.push(field);
165
- }
166
- if (field.component === 'Fieldset' && field.children) {
167
- result.push(...collectArrayFields(field.children));
168
- }
169
- }
170
- return result;
171
- }
172
- function replaceArrayIndexToken(key, arrayKey) {
173
- const prefix = `${arrayKey}.0`;
174
- if (key === prefix) {
175
- return `${arrayKey}.${'${index}'}`;
176
- }
177
- if (key.startsWith(`${prefix}.`)) {
178
- return `${arrayKey}.${'${index}'}.${key.slice(prefix.length + 1)}`;
179
- }
180
- return key;
181
- }
182
- function cloneFieldWithArrayIndex(field, arrayKey) {
183
- return {
184
- ...field,
185
- key: replaceArrayIndexToken(field.key, arrayKey),
186
- children: field.children?.map((child) => cloneFieldWithArrayIndex(child, arrayKey)),
187
- arrayItem: field.arrayItem ? cloneFieldWithArrayIndex(field.arrayItem, arrayKey) : undefined
188
- };
189
- }
190
- function getDefaultArrayItemExpression(field) {
191
- if (!field) {
192
- return `''`;
193
- }
194
- const value = getEmptyDefault(field);
195
- return serializeDefaultValue(value);
196
- }
197
- const charMap = {
198
- '<': '\\u003C',
199
- '>': '\\u003E',
200
- '/': '\\u002F',
201
- '\\': '\\\\',
202
- '\b': '\\b',
203
- '\f': '\\f',
204
- '\n': '\\n',
205
- '\r': '\\r',
206
- '\t': '\\t',
207
- '\0': '\\0',
208
- '\u2028': '\\u2028',
209
- '\u2029': '\\u2029'
210
- };
211
- function escapeUnsafeChars(str) {
212
- return str.replace(/[<>/\\\b\f\n\r\t\0\u2028\u2029]/g, (x) => charMap[x] ?? x);
213
- }
214
- function serializeDefaultValue(value) {
215
- if (value === undefined)
216
- return 'undefined';
217
- if (value === '')
218
- return `''`;
219
- if (typeof value === 'number' || typeof value === 'boolean')
220
- return String(value);
221
- if (typeof value === 'string')
222
- return escapeUnsafeChars(JSON.stringify(value));
223
- if (Array.isArray(value))
224
- return '[]';
225
- if (value && typeof value === 'object') {
226
- const entries = Object.entries(value)
227
- .map(([k, v]) => `${escapeUnsafeChars(JSON.stringify(k))}: ${serializeDefaultValue(v)}`)
228
- .join(', ');
229
- return `{ ${entries} }`;
230
- }
231
- return escapeUnsafeChars(JSON.stringify(value));
232
- }
233
- function renderNestedBlock(field, componentConfig, primitives, indent) {
234
- const children = (field.children ?? [])
235
- .map((child) => renderFieldBlockWithConfig(child, componentConfig, primitives, `${indent} `))
236
- .join('\n');
237
- return [
238
- `${indent}<div>`,
239
- `${indent} <label>${field.label}</label>`,
240
- `${indent} <fieldset>`,
241
- `${indent} <legend>${field.label}</legend>`,
242
- children,
243
- `${indent} </fieldset>`,
244
- `${indent}</div>`
245
- ].join('\n');
246
- }
247
- function renderArrayBlock(field, componentConfig, primitives, indent) {
248
- if (field.key.includes('${')) {
249
- return [
250
- `${indent}<div>`,
251
- `${indent} <label>${field.label}</label>`,
252
- `${indent} <p>Nested array editing is not auto-generated for dynamic paths. Use a custom renderer for ${field.key}.</p>`,
253
- `${indent}</div>`
254
- ].join('\n');
255
- }
256
- const varName = toVarName(field.key);
257
- const itemField = field.arrayItem;
258
- const indexedItemField = itemField ? cloneFieldWithArrayIndex(itemField, field.key) : undefined;
259
- const mappedItem = indexedItemField
260
- ? getMappedFieldComponent(indexedItemField, componentConfig)
261
- : { source: 'none' };
262
- let itemJsx;
263
- if (!indexedItemField) {
264
- itemJsx = `${indent} <input {...register(\`${field.key}.\${index}\`)} />`;
265
- }
266
- else if (mappedItem.source === 'fields' &&
267
- mappedItem.componentName &&
268
- mappedItem.componentOverride?.controlled) {
269
- const overrideProps = renderOverrideProps(mappedItem.override?.props);
270
- const propMap = resolvePropMap(mappedItem.componentOverride, mappedItem.override);
271
- itemJsx = renderControlledComponent(indexedItemField.key, mappedItem.componentName, propMap, overrideProps);
272
- }
273
- else if (mappedItem.source === 'fields' && mappedItem.componentName) {
274
- itemJsx = `<${mappedItem.componentName} {...register(\`${indexedItemField.key}\`)}${renderOverrideProps(mappedItem.override?.props)} />`;
275
- }
276
- else {
277
- itemJsx = renderFieldBlockWithConfig(indexedItemField, componentConfig, primitives, `${indent} `);
278
- }
279
- return [
280
- `${indent}<div>`,
281
- `${indent} <label>${field.label}</label>`,
282
- `${indent} {${varName}Fields.map((item, index) => (`,
283
- `${indent} <div key={item.id}>`,
284
- itemJsx,
285
- `${indent} <button type="button" onClick={() => remove${capitalize(varName)}(index)}>Remove</button>`,
286
- `${indent} </div>`,
287
- `${indent} ))}`,
288
- `${indent} <button type="button" onClick={() => append${capitalize(varName)}(${getDefaultArrayItemExpression(itemField)})}>Add</button>`,
289
- `${indent}</div>`
290
- ].join('\n');
291
- }
292
- function capitalize(s) {
293
- return s.charAt(0).toUpperCase() + s.slice(1);
294
- }
295
- /**
296
- * Merge component-level propMap with per-field propMap override.
297
- * Per-field entries win when keys overlap.
298
- */
299
- function resolvePropMap(componentOverride, override) {
300
- const entryMap = componentOverride?.propMap;
301
- const fieldMap = override?.propMap;
302
- if (!entryMap && !fieldMap)
303
- return undefined;
304
- return { ...entryMap, ...fieldMap };
305
- }
306
- /**
307
- * Render a controlled component using <Controller> with propMap applied.
308
- *
309
- * Default RHF field props: value, onChange, onBlur, ref, name
310
- * propMap remaps these: e.g. { onSelect: 'field.onChange' } means
311
- * the component receives `onSelect={field.onChange}` instead of `onChange={field.onChange}`.
312
- */
313
- function renderControlledComponent(fieldKey, componentName, propMap, overrideProps) {
314
- // Default RHF field prop mappings
315
- const defaultFieldProps = {
316
- value: 'field.value',
317
- onChange: 'field.onChange',
318
- onBlur: 'field.onBlur',
319
- ref: 'field.ref',
320
- name: 'field.name'
321
- };
322
- // Build the final prop wiring: start with defaults, apply propMap remapping
323
- const finalProps = { ...defaultFieldProps };
324
- if (propMap) {
325
- // propMap maps componentPropName → RHF field expression
326
- // e.g. { onSelect: 'field.onChange', value: 'field.value' }
327
- // First, remove default props that are being remapped away
328
- const rhfTargets = new Set(Object.values(propMap));
329
- for (const [defaultProp, defaultExpr] of Object.entries(defaultFieldProps)) {
330
- if (rhfTargets.has(defaultExpr) && !(defaultProp in propMap)) {
331
- delete finalProps[defaultProp];
332
- }
333
- }
334
- // Then add the remapped props
335
- for (const [componentProp, rhfExpr] of Object.entries(propMap)) {
336
- // Remove any default that would conflict with this component prop name
337
- if (componentProp in finalProps && !(componentProp in propMap)) {
338
- // Already handled
339
- }
340
- finalProps[componentProp] = rhfExpr;
341
- }
342
- }
343
- const propsStr = Object.entries(finalProps)
344
- .map(([prop, expr]) => `${prop}={${expr}}`)
345
- .join(' ');
346
- const nameExpr = fieldKey.includes('${') ? `\`${fieldKey}\`` : `"${fieldKey}"`;
347
- const idExpr = fieldKey.includes('${') ? `{${'`'}${fieldKey}${'`'}}` : `"${fieldKey}"`;
348
- return [
349
- `<Controller name={${nameExpr}} control={control} render={({ field }) => (`,
350
- ` <${componentName} id=${idExpr} ${propsStr}${overrideProps} />`,
351
- `)} />`
352
- ].join('\n');
353
- }
354
- function renderFieldBlockWithConfig(field, componentConfig, primitives, indent = ' ') {
355
- const mapping = getMappedFieldComponent(field, componentConfig);
356
- if (field.hasCustomRender) {
357
- const styleAttr = field.gridColumn ? ` style={{ gridColumn: '${field.gridColumn}' }}` : '';
358
- return [
359
- `${indent}<div${styleAttr}>`,
360
- `${indent} <label htmlFor="${field.key}">${field.label}</label>`,
361
- `${indent} {/* TODO: custom renderer for ${field.key} — replace with your component */}`,
362
- `${indent}</div>`
363
- ].join('\n');
364
- }
365
- // If a fields override maps this nested/array field to a custom component,
366
- // render that component instead of expanding children.
367
- if (mapping.source === 'fields' && mapping.componentName) {
368
- const overrideProps = renderOverrideProps(mapping.override?.props);
369
- let content;
370
- if (mapping.componentOverride?.controlled) {
371
- const propMap = resolvePropMap(mapping.componentOverride, mapping.override);
372
- content = renderControlledComponent(field.key, mapping.componentName, propMap, overrideProps);
373
- }
374
- else {
375
- const regExpr = field.key.includes('${')
376
- ? `register(\`${field.key}\`)`
377
- : `register('${field.key}')`;
378
- content = `<${mapping.componentName} id="${field.key}" {...${regExpr}}${overrideProps} />`;
379
- }
380
- return renderFieldContainer(field, content, indent, primitives);
381
- }
382
- if (field.component === 'Fieldset') {
383
- return renderNestedBlock(field, componentConfig, primitives, indent);
384
- }
385
- if (field.component === 'ArrayField') {
386
- return renderArrayBlock(field, componentConfig, primitives, indent);
387
- }
388
- if (mapping.componentName && (mapping.componentOverride || mapping.override)) {
389
- const overrideProps = renderOverrideProps(mapping.override?.props);
390
- let content;
391
- if (mapping.componentOverride?.controlled) {
392
- const propMap = resolvePropMap(mapping.componentOverride, mapping.override);
393
- content = renderControlledComponent(field.key, mapping.componentName, propMap, overrideProps);
394
- }
395
- else {
396
- content = `<${mapping.componentName} id="${field.key}" {...${field.key.includes('${') ? `register(\`${field.key}\`)` : `register('${field.key}')`}}${overrideProps} />`;
397
- }
398
- return renderFieldContainer(field, content, indent, primitives);
399
- }
400
- return renderFieldContainer(field, renderField(field), indent, primitives);
401
- }
402
- /** Check if any field in the tree uses a controlled component entry */
403
- function hasControlledFields(fields, componentConfig) {
404
- if (!componentConfig)
405
- return false;
406
- for (const field of fields) {
407
- const mapping = resolveFieldMapping(field.key, field.component, componentConfig);
408
- if (mapping.componentOverride?.controlled)
409
- return true;
410
- if (field.children?.length && hasControlledFields(field.children, componentConfig))
411
- return true;
412
- if (field.arrayItem && hasControlledFields([field.arrayItem], componentConfig))
413
- return true;
414
- }
415
- return false;
416
- }
417
15
  export async function generateFormComponent(fields, config) {
418
16
  const schemaImportPath = getSchemaImportPath(config);
419
- const arrayFields = collectArrayFields(fields);
420
- const hasArrays = arrayFields.length > 0;
421
- const formPrimitives = config.componentConfig?.formPrimitives;
422
- const useFormProvider = config.formProvider || config.mode === 'auto-save';
423
- const hasControlled = hasControlledFields(fields, config.componentConfig);
424
- const mappedComponents = collectMappedComponentNames(fields, config.componentConfig);
425
- const primitiveComponents = collectFormPrimitiveNames(formPrimitives);
426
- const importNames = new Set([...mappedComponents, ...primitiveComponents]);
427
- const componentImportLine = config.componentConfig && importNames.size > 0
428
- ? `import { ${Array.from(importNames).sort().join(', ')} } from '${config.componentConfig.components.source}';`
429
- : undefined;
430
- const header = getFileHeader(schemaImportPath, config.exportName, hasArrays, config.mode, componentImportLine, { hasControlled, formProvider: useFormProvider });
431
- const body = fields
432
- .map((field) => renderFieldBlockWithConfig(field, config.componentConfig, formPrimitives, ' '))
433
- .join('\n');
434
- // useFieldArray hook declarations
435
- const arrayHooks = arrayFields
436
- .map((f) => {
437
- const varName = toVarName(f.key);
438
- return ` const { fields: ${varName}Fields, append: append${capitalize(varName)}, remove: remove${capitalize(varName)} } = useFieldArray<FormData, '${f.key}'>({ control, name: '${f.key}' });`;
439
- })
440
- .join('\n');
441
- // Build useForm destructure parts
442
- const destructureParts = ['register'];
443
- if (config.mode === 'auto-save') {
444
- destructureParts.push('watch');
445
- }
446
- else {
447
- destructureParts.push('handleSubmit');
448
- }
449
- if (hasArrays || hasControlled) {
450
- destructureParts.push('control');
451
- }
452
- const useFormDestructure = `{ ${destructureParts.join(', ')} }`;
453
- // Props interface
454
- const propsLines = [];
455
- if (config.mode === 'auto-save') {
456
- propsLines.push(` onValueChange?: (data: FormData) => void;`);
457
- propsLines.push(` onSubmit?: (data: FormData) => void;`);
458
- }
459
- else {
460
- propsLines.push(` onSubmit: (data: FormData) => void;`);
461
- }
462
- propsLines.push(` defaultValues?: Partial<FormData>;`);
463
- propsLines.push(` values?: FormData;`);
464
- const autoSaveEffect = config.mode === 'auto-save'
465
- ? [
466
- ` useEffect(() => {`,
467
- ` const subscription = watch((values) => {`,
468
- ` props.onValueChange?.(values as FormData);`,
469
- ` });`,
470
- ``,
471
- ` return () => subscription.unsubscribe();`,
472
- ` }, [watch, props.onValueChange]);`,
473
- ``
474
- ]
475
- : [];
476
- const formOpen = config.mode === 'auto-save'
477
- ? ` <form>`
478
- : ` <form onSubmit={handleSubmit(props.onSubmit)}>`;
479
- const formTail = config.mode === 'auto-save' ? [] : [` <button type="submit">Submit</button>`];
480
- // Form body with optional FormProvider wrapping
481
- const formContent = [formOpen, body, ...formTail, ` </form>`];
482
- const wrappedContent = useFormProvider
483
- ? [
484
- ` <FormProvider {...form}>`,
485
- ...formContent.map((line) => (line ? ` ${line}` : line)),
486
- ` </FormProvider>`
487
- ]
488
- : formContent;
489
- return [
490
- header,
491
- '',
492
- `export function ${config.componentName}(props: {`,
493
- ...propsLines,
494
- `}) {`,
495
- ` const form = useForm<FormData>({`,
496
- ` resolver: zodResolver(${config.exportName}),`,
497
- ...(config.mode === 'auto-save' ? [` mode: 'onChange',`] : []),
498
- ` defaultValues: props.defaultValues,`,
499
- ` values: props.values,`,
500
- ` });`,
501
- ` const ${useFormDestructure} = form;`,
502
- ...(hasArrays ? [arrayHooks] : []),
503
- ...autoSaveEffect,
504
- '',
505
- ` return (`,
506
- ...wrappedContent,
507
- ` );`,
508
- `}`
509
- ].join('\n');
17
+ return generateFormComponentBase(fields, {
18
+ ...config,
19
+ schemaImportPath
20
+ });
510
21
  }
511
22
  //# sourceMappingURL=codegen.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../src/codegen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../src/codegen.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EACL,qBAAqB,IAAI,yBAAyB,EAEnD,MAAM,sBAAsB,CAAC;AAE9B,8EAA8E;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAS3D,SAAS,mBAAmB,CAAC,MAAqB;IAChD,MAAM,QAAQ,GAAG,IAAI;SAClB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;SAC5D,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAEvB,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;IACtE,OAAO,OAAO;SACX,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC;SAC1B,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC;SAC1B,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAmB,EACnB,MAAqB;IAErB,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACrD,OAAO,yBAAyB,CAAC,MAAM,EAAE;QACvC,GAAG,MAAM;QACT,gBAAgB;KACjB,CAAC,CAAC;AACL,CAAC"}
package/dist/index.d.ts CHANGED
@@ -13,7 +13,7 @@ type GenerateOptions = {
13
13
  mode?: 'submit' | 'auto-save';
14
14
  out?: string;
15
15
  name?: string;
16
- ui?: 'shadcn' | 'unstyled';
16
+ ui?: 'shadcn' | 'html';
17
17
  dryRun?: boolean;
18
18
  serverAction?: boolean;
19
19
  watch?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;GAEG;AAMH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,YAAY,EACZ,cAAc,EAGd,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAEhB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EAEpB,MAAM,mBAAmB,CAAC;AAQ3B,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC;AAExC,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,oBAAoB,EAAE,cAAc,EAAE,CAAC;AAErF,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,sDAAsD;IACtD,aAAa,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACzD,CAAC;AA0CF,wBAAsB,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC,CA0FD;AAED,wBAAgB,aAAa,IAAI,OAAO,CAmGvC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;GAEG;AAMH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,YAAY,EACZ,cAAc,EAGd,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAEhB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EAEpB,MAAM,mBAAmB,CAAC;AAQ3B,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC;AAExC,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,oBAAoB,EAAE,cAAc,EAAE,CAAC;AAErF,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,sDAAsD;IACtD,aAAa,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACzD,CAAC;AA0CF,wBAAsB,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC,CA0FD;AAED,wBAAgB,aAAa,IAAI,OAAO,CAmGvC"}
package/dist/index.js CHANGED
@@ -134,7 +134,7 @@ export function createProgram() {
134
134
  .option('--mode <mode>', 'Generation mode (submit|auto-save)')
135
135
  .option('--out <path>', 'Output directory or file path')
136
136
  .option('--name <componentName>', 'Generated component name')
137
- .option('--ui <preset>', 'UI preset (shadcn|unstyled)')
137
+ .option('--ui <preset>', 'UI preset (shadcn|html)')
138
138
  .option('--dry-run', 'Print generated code without writing files', false)
139
139
  .option('--server-action', 'Generate a Next.js server action alongside the form', false)
140
140
  .option('--watch', 'Watch schema file for changes and regenerate on change', false)
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAoBF,MAAM,MAAM,UAAU,GAAG;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAqoBF,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CA6HvE"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAoBF,MAAM,MAAM,UAAU,GAAG;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAolBF,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CA6HvE"}
package/dist/init.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import { access, mkdir, readFile, writeFile } from 'node:fs/promises';
2
2
  import path from 'node:path';
3
3
  import { DEFAULT_OVERRIDES } from '@zod-to-form/core';
4
+ import { buildConfigSource } from '@zod-to-form/codegen';
4
5
  import { resolveSchemaExportNames } from './loader.js';
5
6
  function toPosixPath(value) {
6
7
  return value.replace(/\\/g, '/');
@@ -137,8 +138,8 @@ async function discoverFormPrimitives(cwd, modulePath, snapshot, verbose) {
137
138
  }
138
139
  logVerbose(verbose, `scanned exports from ${toPosixPath(path.relative(cwd, filePath))}`);
139
140
  }
140
- catch {
141
- // ignore unreadable candidates and continue with defaults/other candidates
141
+ catch (err) {
142
+ logVerbose(verbose, `skipping unreadable candidate ${toPosixPath(path.relative(cwd, filePath))}: ${err instanceof Error ? err.message : String(err)}`);
142
143
  }
143
144
  }
144
145
  }
@@ -255,8 +256,8 @@ async function discoverComponents(cwd, modulePath, snapshot, formPrimitives, ver
255
256
  }
256
257
  logVerbose(verbose, `scanned component exports from ${toPosixPath(path.relative(cwd, filePath))}`);
257
258
  }
258
- catch {
259
- // ignore unreadable files
259
+ catch (err) {
260
+ logVerbose(verbose, `skipping unreadable component file: ${err instanceof Error ? err.message : String(err)}`);
260
261
  }
261
262
  }
262
263
  const components = Array.from(componentMap.entries())
@@ -279,8 +280,8 @@ async function discoverSchemas(cwd, explicitPath, verbose) {
279
280
  logVerbose(verbose, `found ${String(exports.length)} schemas in ${explicitPath}`);
280
281
  return { exports, schemaPath: toPosixPath(path.relative(cwd, resolved)) };
281
282
  }
282
- catch {
283
- logVerbose(verbose, `could not load schemas from ${explicitPath}`);
283
+ catch (err) {
284
+ console.warn(`Warning: Could not load schemas from ${explicitPath}: ${err instanceof Error ? err.message : String(err)}`);
284
285
  return { exports: [] };
285
286
  }
286
287
  }
@@ -297,18 +298,14 @@ async function discoverSchemas(cwd, explicitPath, verbose) {
297
298
  return { exports, schemaPath: relativePath };
298
299
  }
299
300
  }
300
- catch {
301
- // ignore unloadable candidates
301
+ catch (err) {
302
+ logVerbose(verbose, `skipping unloadable schema candidate: ${err instanceof Error ? err.message : String(err)}`);
302
303
  }
303
304
  }
304
305
  }
305
306
  logVerbose(verbose, 'no schema files discovered');
306
307
  return { exports: [] };
307
308
  }
308
- const PRESET_IMPORT_NAME = {
309
- shadcn: 'SHADCN_OVERRIDES',
310
- unstyled: 'DEFAULT_OVERRIDES'
311
- };
312
309
  function resolveComponentEntries(discoveredComponents, preset) {
313
310
  if (preset) {
314
311
  // When a preset is active, only return discovered (non-preset) components.
@@ -352,67 +349,30 @@ function resolveSchemaTypeImportSpecifier(cwd, outputPath, schemaPath, explicitS
352
349
  return toImportSpecifierFromAbsolute(outputPath, path.resolve(cwd, importPath));
353
350
  }
354
351
  function buildConfigTemplate(cwd, outputPath, modulePath, explicitModulePath, formPrimitives, componentEntries, discoveredSchemas, explicitSchemaPath, preset) {
355
- const presetImportName = preset ? PRESET_IMPORT_NAME[preset] : undefined;
356
352
  const componentsImportPath = resolveComponentTypeImportSpecifier(cwd, outputPath, modulePath, explicitModulePath);
357
353
  const schemaImportPath = resolveSchemaTypeImportSpecifier(cwd, outputPath, discoveredSchemas.schemaPath, explicitSchemaPath);
358
- const defineConfigGenerics = discoveredSchemas.exports.length > 0
359
- ? '<typeof Components, typeof ZodSchemas>'
360
- : '<typeof Components>';
361
- // Build import line
362
- const importNames = ['defineConfig'];
363
- if (presetImportName) {
364
- importNames.push(presetImportName);
365
- }
366
- // Build overrides entries — only emit entries that have controlled: true
367
- const overrideLines = [];
368
- if (presetImportName) {
369
- const controlledEntries = componentEntries.filter((entry) => entry.controlled);
370
- const comma = controlledEntries.length > 0 ? ',' : '';
371
- overrideLines.push(` ...${presetImportName}${comma}`);
372
- controlledEntries.forEach((entry, i) => {
373
- const comma = i < controlledEntries.length - 1 ? ',' : '';
374
- overrideLines.push(` ${entry.name}: { controlled: true }${comma}`);
375
- });
376
- }
377
- else {
378
- const controlledEntries = componentEntries.filter((entry) => entry.controlled);
379
- controlledEntries.forEach((entry, i) => {
380
- const comma = i < controlledEntries.length - 1 ? ',' : '';
381
- overrideLines.push(` ${entry.name}: { controlled: true }${comma}`);
382
- });
383
- }
384
- const lines = [
385
- `import { ${importNames.join(', ')} } from '@zod-to-form/core';`,
386
- ``,
387
- `import type * as Components from '${componentsImportPath}';`,
388
- ...(schemaImportPath ? [`import type * as ZodSchemas from '${schemaImportPath}';`] : []),
389
- ``,
390
- `export default defineConfig${defineConfigGenerics}({`,
391
- ` components: {`,
392
- ` source: '${modulePath}',`
393
- ];
394
- if (preset) {
395
- lines.push(` preset: '${preset}',`);
396
- }
397
- if (overrideLines.length > 0) {
398
- lines.push(` overrides: {`);
399
- lines.push(...overrideLines);
400
- lines.push(` }`);
401
- }
402
- lines.push(` },`, ` formPrimitives: {`, ` field: '${formPrimitives.field}',`, ` label: '${formPrimitives.label}',`, ` control: '${formPrimitives.control}'`, ` },`, ` defaults: {`, ` mode: 'submit',`, ` ui: 'shadcn',`, ` overwrite: false,`, ` serverAction: false,`, ` formProvider: false`, ` },`, ` include: [],`, ` exclude: []`);
403
- if (discoveredSchemas.exports.length > 0) {
404
- lines[lines.length - 1] += ',';
405
- lines.push(` schemas: {`);
406
- for (let i = 0; i < discoveredSchemas.exports.length; i++) {
407
- const name = discoveredSchemas.exports[i];
408
- const comma = i < discoveredSchemas.exports.length - 1 ? ',' : '';
409
- lines.push(` ${name}: {}${comma}`);
354
+ const overrides = {};
355
+ for (const entry of componentEntries) {
356
+ if (entry.controlled) {
357
+ overrides[entry.name] = { controlled: true };
410
358
  }
411
- lines.push(` }`);
412
359
  }
413
- lines.push(`});`);
414
- lines.push(``);
415
- return lines.join('\n');
360
+ return buildConfigSource({
361
+ componentSource: modulePath,
362
+ componentTypeImport: componentsImportPath,
363
+ schemaTypeImport: schemaImportPath,
364
+ schemaExports: discoveredSchemas.exports,
365
+ preset,
366
+ overrides,
367
+ formPrimitives,
368
+ defaults: {
369
+ mode: 'submit',
370
+ ui: 'shadcn',
371
+ overwrite: false,
372
+ serverAction: false,
373
+ formProvider: false
374
+ }
375
+ });
416
376
  }
417
377
  async function detectShadcnConfig(cwd) {
418
378
  const componentsPath = path.join(cwd, 'components.json');
@@ -440,7 +400,10 @@ async function detectShadcnConfig(cwd) {
440
400
  sourcePath: componentsPath
441
401
  };
442
402
  }
443
- catch {
403
+ catch (err) {
404
+ if (await exists(path.join(cwd, 'components.json'))) {
405
+ console.warn(`Warning: Found components.json but could not parse it: ${err instanceof Error ? err.message : String(err)}`);
406
+ }
444
407
  return {
445
408
  exists: false,
446
409
  aliases: {}
package/dist/init.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,2 @@
1
- import type { FormField } from '@zod-to-form/core';
2
- export type FileHeaderOptions = {
3
- schemaImportPath: string;
4
- exportName: string;
5
- hasArrays?: boolean;
6
- hasControlled?: boolean;
7
- mode?: 'submit' | 'auto-save';
8
- formProvider?: boolean;
9
- componentImportLine?: string;
10
- };
11
- export declare function getFileHeader(schemaImportPath: string, exportName: string, hasArrays?: boolean, mode?: 'submit' | 'auto-save', componentImportLine?: string, options?: {
12
- hasControlled?: boolean;
13
- formProvider?: boolean;
14
- }): string;
15
- export declare function renderField(field: FormField): string;
1
+ export { getFileHeader, renderField, registerPathExpr } from '@zod-to-form/codegen';
16
2
  //# sourceMappingURL=templates.d.ts.map
@@ -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;AAEnD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,IAAI,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,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,CAAA;CAAE,GAC5D,MAAM,CAoBR;AAkCD,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAiBpD"}
1
+ {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC"}
package/dist/templates.js CHANGED
@@ -1,66 +1,3 @@
1
- export function getFileHeader(schemaImportPath, exportName, hasArrays = false, mode = 'submit', componentImportLine, options) {
2
- const rhfParts = ['useForm'];
3
- if (hasArrays)
4
- rhfParts.push('useFieldArray');
5
- if (options?.hasControlled)
6
- rhfParts.push('Controller');
7
- if (options?.formProvider || mode === 'auto-save')
8
- rhfParts.push('FormProvider');
9
- const rhfImports = `import { ${rhfParts.join(', ')} } from 'react-hook-form';`;
10
- const reactImports = mode === 'auto-save' ? `import { useEffect } from 'react';` : '';
11
- return [
12
- ...(reactImports ? [reactImports] : []),
13
- rhfImports,
14
- `import { zodResolver } from '@hookform/resolvers/zod';`,
15
- `import { z } from 'zod';`,
16
- `import type { StripIndexSignature } from '@zod-to-form/core';`,
17
- ...(componentImportLine ? [componentImportLine] : []),
18
- `import { ${exportName} } from '${schemaImportPath}';`,
19
- ``,
20
- `type FormData = StripIndexSignature<z.output<typeof ${exportName}>>;`
21
- ].join('\n');
22
- }
23
- function registerPathExpr(path) {
24
- return path.includes('${') ? `register(\`${path}\`)` : `register('${path}')`;
25
- }
26
- function renderInput(field) {
27
- const inputType = typeof field.props['type'] === 'string' ? field.props['type'] : 'text';
28
- return `<input id="${field.key}" type="${inputType}" {...${registerPathExpr(field.key)}} />`;
29
- }
30
- function renderCheckbox(field) {
31
- return `<input id="${field.key}" type="checkbox" {...${registerPathExpr(field.key)}} />`;
32
- }
33
- function renderDatePicker(field) {
34
- const registerExpr = field.key.includes('${')
35
- ? `register(\`${field.key}\`, { valueAsDate: true })`
36
- : `register('${field.key}', { valueAsDate: true })`;
37
- return `<input id="${field.key}" type="date" {...${registerExpr}} />`;
38
- }
39
- function renderFileInput(field) {
40
- return `<input id="${field.key}" type="file" {...${registerPathExpr(field.key)}} />`;
41
- }
42
- function renderSelect(field) {
43
- const options = (field.options ?? [])
44
- .map((option) => `<option value="${String(option.value)}">${option.label}</option>`)
45
- .join('');
46
- return `<select id="${field.key}" {...${registerPathExpr(field.key)}}>${options}</select>`;
47
- }
48
- export function renderField(field) {
49
- switch (field.component) {
50
- case 'Checkbox':
51
- case 'Switch':
52
- return renderCheckbox(field);
53
- case 'DatePicker':
54
- return renderDatePicker(field);
55
- case 'FileInput':
56
- return renderFileInput(field);
57
- case 'Select':
58
- case 'RadioGroup':
59
- return renderSelect(field);
60
- case 'Textarea':
61
- return `<textarea id="${field.key}" {...${registerPathExpr(field.key)}} />`;
62
- default:
63
- return renderInput(field);
64
- }
65
- }
1
+ // Re-export templates from @zod-to-form/codegen
2
+ export { getFileHeader, renderField, registerPathExpr } from '@zod-to-form/codegen';
66
3
  //# sourceMappingURL=templates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"templates.js","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"AAYA,MAAM,UAAU,aAAa,CAC3B,gBAAwB,EACxB,UAAkB,EAClB,SAAS,GAAG,KAAK,EACjB,IAAI,GAA2B,QAAQ,EACvC,mBAA4B,EAC5B,OAA6D;IAE7D,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,OAAO;QACL,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,UAAU;QACV,wDAAwD;QACxD,0BAA0B;QAC1B,+DAA+D;QAC/D,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,YAAY,UAAU,YAAY,gBAAgB,IAAI;QACtD,EAAE;QACF,uDAAuD,UAAU,KAAK;KACvE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY;IACpC,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,WAAW,CAAC,KAAgB;IACnC,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,OAAO,cAAc,KAAK,CAAC,GAAG,WAAW,SAAS,SAAS,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;AAC/F,CAAC;AAED,SAAS,cAAc,CAAC,KAAgB;IACtC,OAAO,cAAc,KAAK,CAAC,GAAG,yBAAyB,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;AAC3F,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAgB;IACxC,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC3C,CAAC,CAAC,cAAc,KAAK,CAAC,GAAG,4BAA4B;QACrD,CAAC,CAAC,aAAa,KAAK,CAAC,GAAG,2BAA2B,CAAC;IACtD,OAAO,cAAc,KAAK,CAAC,GAAG,qBAAqB,YAAY,MAAM,CAAC;AACxE,CAAC;AAED,SAAS,eAAe,CAAC,KAAgB;IACvC,OAAO,cAAc,KAAK,CAAC,GAAG,qBAAqB,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;AACvF,CAAC;AAED,SAAS,YAAY,CAAC,KAAgB;IACpC,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;IAEZ,OAAO,eAAe,KAAK,CAAC,GAAG,SAAS,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,OAAO,WAAW,CAAC;AAC7F,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAgB;IAC1C,QAAQ,KAAK,CAAC,SAAS,EAAE,CAAC;QACxB,KAAK,UAAU,CAAC;QAChB,KAAK,QAAQ;YACX,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;QAC/B,KAAK,YAAY;YACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACjC,KAAK,WAAW;YACd,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;QAChC,KAAK,QAAQ,CAAC;QACd,KAAK,YAAY;YACf,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;QAC7B,KAAK,UAAU;YACb,OAAO,iBAAiB,KAAK,CAAC,GAAG,SAAS,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;QAC9E;YACE,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zod-to-form/cli",
3
- "version": "0.6.0",
3
+ "version": "0.6.2",
4
4
  "description": "Build-time code generator for Zod v4 form components",
5
5
  "license": "MIT",
6
6
  "homepage": "https://github.com/pradeepmouli/zod-to-form#readme",
@@ -37,7 +37,8 @@
37
37
  "chokidar": "^5.0.0",
38
38
  "commander": "^14.0.3",
39
39
  "jiti": "^2.6.1",
40
- "@zod-to-form/core": "0.6.0"
40
+ "@zod-to-form/codegen": "0.6.2",
41
+ "@zod-to-form/core": "0.6.2"
41
42
  },
42
43
  "devDependencies": {
43
44
  "zod": "^4.3.6"