@zod-to-form/core 0.2.2 → 0.2.3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../src/processors/string.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACnC,OAAO,KAAK,EAAE,SAAS,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAUlF,wBAAgB,aAAa,CAC3B,MAAM,EAAE,OAAO,EACf,GAAG,EAAE,oBAAoB,EACzB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,aAAa,GACrB,IAAI,CA8BN;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,oBAAoB,EAC1B,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,aAAa,GACrB,IAAI,CAQN"}
1
+ {"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../src/processors/string.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACnC,OAAO,KAAK,EAAE,SAAS,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAWlF,wBAAgB,aAAa,CAC3B,MAAM,EAAE,OAAO,EACf,GAAG,EAAE,oBAAoB,EACzB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,aAAa,GACrB,IAAI,CAuCN;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,oBAAoB,EAC1B,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,aAAa,GACrB,IAAI,CAQN"}
@@ -1,3 +1,4 @@
1
+ import { regexToMask } from '../utils.js';
1
2
  function getDef(schema) {
2
3
  return schema['_zod']?.['def'] ?? {};
3
4
  }
@@ -11,7 +12,11 @@ export function processString(schema, ctx, field, _params) {
11
12
  const format = typeof bag['format'] === 'string' ? bag['format'] : undefined;
12
13
  const minimum = typeof bag['minimum'] === 'number' ? bag['minimum'] : undefined;
13
14
  const maximum = typeof bag['maximum'] === 'number' ? bag['maximum'] : undefined;
14
- const pattern = typeof bag['pattern'] === 'string' ? bag['pattern'] : undefined;
15
+ // bag.patterns holds a Set<RegExp> take the first regex's source
16
+ const patternsSet = bag['patterns'];
17
+ const pattern = patternsSet instanceof Set && patternsSet.size > 0
18
+ ? [...patternsSet][0].source
19
+ : undefined;
15
20
  field.component = fieldType === 'textarea' ? 'Textarea' : 'Input';
16
21
  field.props = {
17
22
  ...field.props,
@@ -31,6 +36,10 @@ export function processString(schema, ctx, field, _params) {
31
36
  if (pattern) {
32
37
  field.constraints.pattern = pattern;
33
38
  field.props['pattern'] = pattern;
39
+ const mask = regexToMask(pattern);
40
+ if (mask !== null) {
41
+ field.props['inputMask'] = mask;
42
+ }
34
43
  }
35
44
  }
36
45
  export function processTemplateLiteral(schema, _ctx, field, _params) {
@@ -1 +1 @@
1
- {"version":3,"file":"string.js","sourceRoot":"","sources":["../../src/processors/string.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"string.js","sourceRoot":"","sources":["../../src/processors/string.ts"],"names":[],"mappings":"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"}
package/dist/utils.d.ts CHANGED
@@ -13,6 +13,29 @@ export declare function inferLabel(key: string): string;
13
13
  * @example joinPath('address', 'street') → 'address.street'
14
14
  */
15
15
  export declare function joinPath(parent: string | undefined, key: string): string;
16
+ /**
17
+ * Translate a simple structural regex pattern into an input mask string.
18
+ *
19
+ * Supported tokens:
20
+ * - `\d{N}` or `\d` → N digit placeholders (`9`)
21
+ * - `[0-9]{N}` → N digit placeholders (`9`)
22
+ * - `[A-Z]{N}`, `[a-z]{N}`, `[A-Za-z]{N}` → N letter placeholders (`a`)
23
+ * - `[A-Za-z0-9]{N}` → N alphanumeric placeholders (`*`)
24
+ * - Literal separator chars (`- / ( ) . : _ + space`)
25
+ * - `^` / `$` anchors (stripped)
26
+ *
27
+ * Returns `null` for patterns that cannot be expressed as a fixed mask
28
+ * (variable length, alternation, lookaheads, capturing groups, etc.).
29
+ *
30
+ * The output format is compatible with `imask`, `react-input-mask`, and
31
+ * similar libraries where `9`=digit, `a`=letter, `*`=alphanumeric.
32
+ *
33
+ * @example regexToMask('^\\d{3}-\\d{2}-\\d{4}$') → '999-99-9999'
34
+ * @example regexToMask('^[A-Z]{2}\\d{5}$') → 'aa99999'
35
+ * @example regexToMask('^\\d{2}/\\d{2}/\\d{4}$') → '99/99/9999'
36
+ * @example regexToMask('^[a-zA-Z0-9._%+-]+@') → null (too complex)
37
+ */
38
+ export declare function regexToMask(pattern: string): string | null;
16
39
  /**
17
40
  * Create a base FormField with sensible defaults.
18
41
  * Processors fill in the specific component and props.
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAc9C;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAGxE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,CAYvE"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAc9C;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAGxE;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgE1D;AA8BD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,CAYvE"}
package/dist/utils.js CHANGED
@@ -27,6 +27,118 @@ export function joinPath(parent, key) {
27
27
  return key;
28
28
  return `${parent}.${key}`;
29
29
  }
30
+ /**
31
+ * Translate a simple structural regex pattern into an input mask string.
32
+ *
33
+ * Supported tokens:
34
+ * - `\d{N}` or `\d` → N digit placeholders (`9`)
35
+ * - `[0-9]{N}` → N digit placeholders (`9`)
36
+ * - `[A-Z]{N}`, `[a-z]{N}`, `[A-Za-z]{N}` → N letter placeholders (`a`)
37
+ * - `[A-Za-z0-9]{N}` → N alphanumeric placeholders (`*`)
38
+ * - Literal separator chars (`- / ( ) . : _ + space`)
39
+ * - `^` / `$` anchors (stripped)
40
+ *
41
+ * Returns `null` for patterns that cannot be expressed as a fixed mask
42
+ * (variable length, alternation, lookaheads, capturing groups, etc.).
43
+ *
44
+ * The output format is compatible with `imask`, `react-input-mask`, and
45
+ * similar libraries where `9`=digit, `a`=letter, `*`=alphanumeric.
46
+ *
47
+ * @example regexToMask('^\\d{3}-\\d{2}-\\d{4}$') → '999-99-9999'
48
+ * @example regexToMask('^[A-Z]{2}\\d{5}$') → 'aa99999'
49
+ * @example regexToMask('^\\d{2}/\\d{2}/\\d{4}$') → '99/99/9999'
50
+ * @example regexToMask('^[a-zA-Z0-9._%+-]+@') → null (too complex)
51
+ */
52
+ export function regexToMask(pattern) {
53
+ // Strip anchors
54
+ const p = pattern.replace(/^\^/, '').replace(/\$$/, '');
55
+ let result = '';
56
+ let i = 0;
57
+ while (i < p.length) {
58
+ // \d (optionally followed by {N})
59
+ if (p[i] === '\\' && p[i + 1] === 'd') {
60
+ i += 2;
61
+ const q = parseQuantifier(p, i);
62
+ if (q === null) {
63
+ result += '9';
64
+ }
65
+ else {
66
+ result += '9'.repeat(q.value);
67
+ i += q.consumed;
68
+ }
69
+ continue;
70
+ }
71
+ // Character class [...]
72
+ if (p[i] === '[') {
73
+ const end = p.indexOf(']', i + 1);
74
+ if (end === -1)
75
+ return null;
76
+ const cls = p.slice(i + 1, end);
77
+ i = end + 1;
78
+ const q = parseQuantifier(p, i);
79
+ const n = q ? q.value : 1;
80
+ if (q)
81
+ i += q.consumed;
82
+ const ch = charClassToMaskChar(cls);
83
+ if (ch === null)
84
+ return null;
85
+ result += ch.repeat(n);
86
+ continue;
87
+ }
88
+ // \\( and \\) — escaped literal parens, and other escaped separator chars (e.g. \/)
89
+ if (p[i] === '\\' && i + 1 < p.length) {
90
+ const next = p[i + 1];
91
+ if (next === '(' || next === ')') {
92
+ result += next;
93
+ i += 2;
94
+ continue;
95
+ }
96
+ // Escaped separator (\/ \- \. etc.) — treat as the literal char
97
+ if (/[-\/() .:_]/.test(next)) {
98
+ result += next;
99
+ i += 2;
100
+ continue;
101
+ }
102
+ }
103
+ // Literal separator characters (not quantifiers)
104
+ const ch = p[i];
105
+ if (/[-\/() .:_]/.test(ch)) {
106
+ result += ch;
107
+ i++;
108
+ continue;
109
+ }
110
+ // Anything else (quantifiers without a preceding token, special chars, etc.) — bail out
111
+ return null;
112
+ }
113
+ return result.length > 0 ? result : null;
114
+ }
115
+ function parseQuantifier(p, i) {
116
+ if (p[i] !== '{')
117
+ return null;
118
+ const end = p.indexOf('}', i + 1);
119
+ if (end === -1)
120
+ return null;
121
+ const inner = p.slice(i + 1, end);
122
+ // Reject ranges like {2,4} — not fixed-length
123
+ if (inner.includes(','))
124
+ return null;
125
+ const n = parseInt(inner, 10);
126
+ if (isNaN(n) || n < 1)
127
+ return null;
128
+ return { value: n, consumed: end - i + 1 };
129
+ }
130
+ function charClassToMaskChar(cls) {
131
+ if (cls === '0-9')
132
+ return '9';
133
+ if (cls === 'A-Z' || cls === 'a-z' || cls === 'A-Za-z' || cls === 'a-zA-Z')
134
+ return 'a';
135
+ if (cls === 'A-Za-z0-9' ||
136
+ cls === 'a-zA-Z0-9' ||
137
+ cls === '0-9A-Za-z' ||
138
+ cls === '0-9a-zA-Z')
139
+ return '*';
140
+ return null;
141
+ }
30
142
  /**
31
143
  * Create a base FormField with sensible defaults.
32
144
  * Processors fill in the specific component and props.
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,GAAW,EAAU;IAC9C,iFAAiF;IACjF,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAE7D,OAAO,CACL,IAAI;QACF,oDAAoD;SACnD,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC;QACpC,8CAA8C;SAC7C,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;QACtB,2CAA2C;SAC1C,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SACxC,IAAI,EAAE,CACV,CAAC;AAAA,CACH;AAED;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAC,MAA0B,EAAE,GAAW,EAAU;IACxE,IAAI,CAAC,MAAM;QAAE,OAAO,GAAG,CAAC;IACxB,OAAO,GAAG,MAAM,IAAI,GAAG,EAAE,CAAC;AAAA,CAC3B;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW,EAAE,OAAe,EAAa;IACvE,OAAO;QACL,GAAG;QACH,SAAS,EAAE,OAAO;QAClB,KAAK,EAAE,EAAE;QACT,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC;QACtB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;QACb,WAAW,EAAE,EAAE;QACf,OAAO;KACR,CAAC;AAAA,CACH"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zod-to-form/core",
3
- "version": "0.2.2",
3
+ "version": "0.2.3",
4
4
  "description": "Schema walker and processor registry for Zod v4 form generation",
5
5
  "license": "MIT",
6
6
  "homepage": "https://github.com/pradeepmouli/zodforms#readme",