@ic-reactor/candid 3.0.13-beta.0 → 3.0.14-beta.1

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
@@ -9,6 +9,7 @@ Lightweight adapter for fetching and parsing Candid definitions from Internet Co
9
9
  - **Local Parsing**: Use the optional WASM-based parser for fast, offline Candid compilation
10
10
  - **Remote Fallback**: Falls back to the didjs canister for Candid-to-JavaScript compilation
11
11
  - **Dynamic Reactor**: Includes `CandidReactor` for dynamic IDL fetching and interaction
12
+ - **Dynamic Forms**: Generate rich form metadata with validation schemas using `FieldVisitor`
12
13
  - **Lightweight**: Uses raw `agent.query` calls - no Actor overhead
13
14
  - **ClientManager Compatible**: Seamlessly integrates with `@ic-reactor/core`
14
15
 
@@ -171,6 +172,33 @@ const cachedBalance = await reactor.fetchQueryDynamic({
171
172
  })
172
173
  ```
173
174
 
175
+ ### FieldVisitor (Dynamic Forms)
176
+
177
+ Generate type-safe, enhanced metadata for dynamic forms from Candid definitions.
178
+
179
+ ```typescript
180
+ import { FieldVisitor } from "@ic-reactor/candid"
181
+
182
+ const visitor = new FieldVisitor()
183
+ const serviceMeta = service.accept(visitor, null)
184
+
185
+ // Access method metadata
186
+ const methodMeta = serviceMeta["icrc1_transfer"]
187
+
188
+ // Detected field formats detected automatically
189
+ const amountField = methodMeta.fields[1] // e.g. "amount"
190
+ console.log(amountField.format) // "token"
191
+ console.log(amountField.inputProps)
192
+ // { type: "text", inputMode: "numeric", pattern: "\\d+", ... }
193
+ ```
194
+
195
+ **Features:**
196
+
197
+ - **Auto-Format Detection**: Identifies `email`, `url`, `uuid`, `timestamp`, `cycle`, `principal`, etc. based on labels.
198
+ - **Enhanced Schemas**: Generates Zod schemas with specific validation (e.g., `z.string().email()`).
199
+ - **Input Props**: Provides ready-to-use HTML attributes (`type="email"`, `pattern`, `min`, `max`) for primitive fields.
200
+ - **Component Hints**: Suggests UI components (`variant-select`, `vector-list`, `blob-upload`).
201
+
174
202
  ### Fetch Raw Candid Source
175
203
 
176
204
  ```typescript
@@ -1,4 +1,4 @@
1
- import { ArgumentFieldType, CompoundField, Field, FieldByType, PrimitiveField, RecordField, TupleField, VariantField } from "./types";
1
+ import { VisitorDataType, CompoundField, FieldNode, FieldByType, PrimitiveField, RecordField, TupleField, VariantField } from "./types";
2
2
  /**
3
3
  * Type guard for checking specific field types.
4
4
  *
@@ -17,13 +17,13 @@ import { ArgumentFieldType, CompoundField, Field, FieldByType, PrimitiveField, R
17
17
  * }
18
18
  * ```
19
19
  */
20
- export declare function isFieldType<T extends ArgumentFieldType>(field: Field, type: T): field is FieldByType<T>;
20
+ export declare function isFieldType<T extends VisitorDataType>(field: FieldNode, type: T): field is FieldByType<T>;
21
21
  /** Check if a field is a compound type (contains other fields) */
22
- export declare function isCompoundField(field: Field): field is CompoundField;
22
+ export declare function isCompoundField(field: FieldNode): field is CompoundField;
23
23
  /** Check if a field is a primitive type */
24
- export declare function isPrimitiveField(field: Field): field is PrimitiveField;
24
+ export declare function isPrimitiveField(field: FieldNode): field is PrimitiveField;
25
25
  /** Check if a field has children (for iteration) */
26
- export declare function hasChildFields(field: Field): field is RecordField | VariantField | TupleField;
26
+ export declare function hasChildFields(field: FieldNode): field is RecordField | VariantField | TupleField;
27
27
  /**
28
28
  * Format a raw Candid label into a human-readable display label.
29
29
  * Handles common patterns like "__arg0", "_0_", "snake_case", etc.
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/visitor/arguments/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,KAAK,EACL,WAAW,EACX,cAAc,EACd,WAAW,EACX,UAAU,EACV,YAAY,EACb,MAAM,SAAS,CAAA;AAEhB;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,iBAAiB,EACrD,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,CAAC,GACN,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC,CAEzB;AAED,kEAAkE;AAClE,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,aAAa,CASpE;AAED,2CAA2C;AAC3C,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,cAAc,CAEtE;AAED,oDAAoD;AACpD,wBAAgB,cAAc,CAC5B,KAAK,EAAE,KAAK,GACX,KAAK,IAAI,WAAW,GAAG,YAAY,GAAG,UAAU,CAElD;AAMD;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CA2BjD"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/visitor/arguments/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,aAAa,EACb,SAAS,EACT,WAAW,EACX,cAAc,EACd,WAAW,EACX,UAAU,EACV,YAAY,EACb,MAAM,SAAS,CAAA;AAEhB;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,eAAe,EACnD,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,CAAC,GACN,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC,CAEzB;AAED,kEAAkE;AAClE,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK,IAAI,aAAa,CASxE;AAED,2CAA2C;AAC3C,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK,IAAI,cAAc,CAE1E;AAED,oDAAoD;AACpD,wBAAgB,cAAc,CAC5B,KAAK,EAAE,SAAS,GACf,KAAK,IAAI,WAAW,GAAG,YAAY,GAAG,UAAU,CAElD;AAMD;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CA2BjD"}
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/visitor/arguments/helpers.ts"],"names":[],"mappings":"AAWA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,WAAW,CACzB,KAAY,EACZ,IAAO;IAEP,OAAO,KAAK,CAAC,IAAI,KAAK,IAAI,CAAA;AAC5B,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,eAAe,CAAC,KAAY;IAC1C,OAAO;QACL,QAAQ;QACR,SAAS;QACT,OAAO;QACP,UAAU;QACV,QAAQ;QACR,WAAW;KACZ,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AACxB,CAAC;AAED,2CAA2C;AAC3C,MAAM,UAAU,gBAAgB,CAAC,KAAY;IAC3C,OAAO,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AAChF,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,cAAc,CAC5B,KAAY;IAEZ,OAAO,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,CAAE,KAAqB,CAAC,MAAM,CAAC,CAAA;AAC1E,CAAC;AAED,+EAA+E;AAC/E,6BAA6B;AAC7B,+EAA+E;AAE/E;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,0CAA0C;IAC1C,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC1B,OAAO,OAAO,GAAG,EAAE,CAAA;IACrB,CAAC;IAED,2CAA2C;IAC3C,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9B,OAAO,QAAQ,GAAG,EAAE,CAAA;IACtB,CAAC;IAED,qDAAqD;IACrD,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAA;IACf,CAAC;IAED,kDAAkD;IAClD,2BAA2B;IAC3B,OAAO,KAAK;SACT,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,sCAAsC;SAC9D,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,kCAAkC;SACrD,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,wCAAwC;SAC5E,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAC3D,IAAI,CAAC,GAAG,CAAC,CAAA;AACd,CAAC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/visitor/arguments/helpers.ts"],"names":[],"mappings":"AAWA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,WAAW,CACzB,KAAgB,EAChB,IAAO;IAEP,OAAO,KAAK,CAAC,IAAI,KAAK,IAAI,CAAA;AAC5B,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,eAAe,CAAC,KAAgB;IAC9C,OAAO;QACL,QAAQ;QACR,SAAS;QACT,OAAO;QACP,UAAU;QACV,QAAQ;QACR,WAAW;KACZ,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AACxB,CAAC;AAED,2CAA2C;AAC3C,MAAM,UAAU,gBAAgB,CAAC,KAAgB;IAC/C,OAAO,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AAChF,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,cAAc,CAC5B,KAAgB;IAEhB,OAAO,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,CAAE,KAAqB,CAAC,MAAM,CAAC,CAAA;AAC1E,CAAC;AAED,+EAA+E;AAC/E,6BAA6B;AAC7B,+EAA+E;AAE/E;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,0CAA0C;IAC1C,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC1B,OAAO,OAAO,GAAG,EAAE,CAAA;IACrB,CAAC;IAED,2CAA2C;IAC3C,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9B,OAAO,QAAQ,GAAG,EAAE,CAAA;IACtB,CAAC;IAED,qDAAqD;IACrD,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAA;IACf,CAAC;IAED,kDAAkD;IAClD,2BAA2B;IAC3B,OAAO,KAAK;SACT,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,sCAAsC;SAC9D,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,kCAAkC;SACrD,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,wCAAwC;SAC5E,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAC3D,IAAI,CAAC,GAAG,CAAC,CAAA;AACd,CAAC"}
@@ -1,8 +1,10 @@
1
- import type { Field, RecordField, VariantField, TupleField, OptionalField, VectorField, BlobField, RecursiveField, PrincipalField, NumberField, BooleanField, NullField, TextField, UnknownField, ArgumentsMeta, ArgumentsServiceMeta } from "./types";
1
+ import type { FieldNode, RecordField, VariantField, TupleField, OptionalField, VectorField, BlobField, RecursiveField, PrincipalField, NumberField, BooleanField, NullField, TextField, UnknownField, ArgumentsMeta, ArgumentsServiceMeta } from "./types";
2
2
  import { IDL } from "@icp-sdk/core/candid";
3
3
  import { BaseActor, FunctionName } from "@ic-reactor/core";
4
4
  import * as z from "zod";
5
5
  export * from "./types";
6
+ export * from "./helpers";
7
+ export { checkTextFormat, checkNumberFormat } from "../constants";
6
8
  /**
7
9
  * FieldVisitor generates metadata for form input fields from Candid IDL types.
8
10
  *
@@ -55,7 +57,7 @@ export * from "./types";
55
57
  * ))
56
58
  * ```
57
59
  */
58
- export declare class FieldVisitor<A = BaseActor> extends IDL.Visitor<string, Field | ArgumentsMeta<A> | ArgumentsServiceMeta<A>> {
60
+ export declare class FieldVisitor<A = BaseActor> extends IDL.Visitor<string, FieldNode | ArgumentsMeta<A> | ArgumentsServiceMeta<A>> {
59
61
  recursiveSchemas: Map<string, z.ZodTypeAny>;
60
62
  private nameStack;
61
63
  /**
@@ -78,6 +80,14 @@ export declare class FieldVisitor<A = BaseActor> extends IDL.Visitor<string, Fie
78
80
  visitRec<T>(_t: IDL.RecClass<T>, ty: IDL.ConstructType<T>, label: string): RecursiveField;
79
81
  visitPrincipal(_t: IDL.PrincipalClass, label: string): PrincipalField;
80
82
  visitText(_t: IDL.TextClass, label: string): TextField;
83
+ /**
84
+ * Generate format-specific input props for text fields.
85
+ */
86
+ private getTextInputProps;
87
+ /**
88
+ * Generate format-specific zod schema for text fields.
89
+ */
90
+ private getTextSchema;
81
91
  visitBool(_t: IDL.BoolClass, label: string): BooleanField;
82
92
  visitNull(_t: IDL.NullClass, label: string): NullField;
83
93
  private visitNumberType;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/visitor/arguments/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/visitor/arguments/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,UAAU,EACV,aAAa,EACb,WAAW,EACX,SAAS,EACT,cAAc,EACd,cAAc,EACd,WAAW,EACX,YAAY,EACZ,SAAS,EACT,SAAS,EACT,YAAY,EACZ,aAAa,EACb,oBAAoB,EAOrB,MAAM,SAAS,CAAA;AAEhB,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAE1C,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC1D,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAGxB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AA+FjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,qBAAa,YAAY,CAAC,CAAC,GAAG,SAAS,CAAE,SAAQ,GAAG,CAAC,OAAO,CAC1D,MAAM,EACN,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,oBAAoB,CAAC,CAAC,CAAC,CACvD;IACQ,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,CAAC,CAAY;IAE9D,OAAO,CAAC,SAAS,CAAe;IAEhC;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAShB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAQZ,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,YAAY,GAAG,oBAAoB,CAAC,CAAC,CAAC;IAa1D,SAAS,CACd,CAAC,EAAE,GAAG,CAAC,SAAS,EAChB,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,GAC5B,aAAa,CAAC,CAAC,CAAC;IA0CZ,WAAW,CAChB,EAAE,EAAE,GAAG,CAAC,WAAW,EACnB,OAAO,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,EAClC,KAAK,EAAE,MAAM,GACZ,WAAW;IAgCP,YAAY,CACjB,EAAE,EAAE,GAAG,CAAC,YAAY,EACpB,OAAO,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,EAClC,KAAK,EAAE,MAAM,GACZ,YAAY;IA6FR,UAAU,CAAC,CAAC,SAAS,GAAG,CAAC,IAAI,EAAE,EACpC,EAAE,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EACrB,UAAU,EAAE,GAAG,CAAC,IAAI,EAAE,EACtB,KAAK,EAAE,MAAM,GACZ,UAAU;IAiCN,QAAQ,CAAC,CAAC,EACf,EAAE,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EACnB,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EACf,KAAK,EAAE,MAAM,GACZ,aAAa;IAsCT,QAAQ,CAAC,CAAC,EACf,EAAE,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EACnB,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EACf,KAAK,EAAE,MAAM,GACZ,WAAW,GAAG,SAAS;IA6EnB,QAAQ,CAAC,CAAC,EACf,EAAE,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EACnB,EAAE,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EACxB,KAAK,EAAE,MAAM,GACZ,cAAc;IAwCV,cAAc,CAAC,EAAE,EAAE,GAAG,CAAC,cAAc,EAAE,KAAK,EAAE,MAAM,GAAG,cAAc;IA6CrE,SAAS,CAAC,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS;IAwB7D;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA6EzB;;OAEG;IACH,OAAO,CAAC,aAAa;IAad,SAAS,CAAC,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,YAAY;IAmBzD,SAAS,CAAC,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS;IAqB7D,OAAO,CAAC,eAAe;IAmFhB,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAOlE,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAOlE,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW;IAQzD,aAAa,CAClB,CAAC,EAAE,GAAG,CAAC,aAAa,EACpB,KAAK,EAAE,MAAM,GACZ,WAAW,GAAG,SAAS;IAenB,aAAa,CAClB,CAAC,EAAE,GAAG,CAAC,aAAa,EACpB,KAAK,EAAE,MAAM,GACZ,WAAW,GAAG,SAAS;IAcnB,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,YAAY;CAgBlE"}
@@ -1,9 +1,12 @@
1
1
  import { isQuery } from "../helpers";
2
+ import { checkTextFormat, checkNumberFormat } from "../constants";
2
3
  import { IDL } from "@icp-sdk/core/candid";
3
4
  import { Principal } from "@icp-sdk/core/principal";
4
5
  import * as z from "zod";
5
6
  import { formatLabel } from "./helpers";
6
7
  export * from "./types";
8
+ export * from "./helpers";
9
+ export { checkTextFormat, checkNumberFormat } from "../constants";
7
10
  // ════════════════════════════════════════════════════════════════════════════
8
11
  // Render Hint Helpers
9
12
  // ════════════════════════════════════════════════════════════════════════════
@@ -206,13 +209,11 @@ export class FieldVisitor extends IDL.Visitor {
206
209
  visitRecord(_t, fields_, label) {
207
210
  const name = this.currentName();
208
211
  const fields = [];
209
- const fieldMap = new Map();
210
212
  const defaultValue = {};
211
213
  const schemaShape = {};
212
214
  for (const [key, type] of fields_) {
213
215
  const field = this.withName(name ? `.${key}` : key, () => type.accept(this, key));
214
216
  fields.push(field);
215
- fieldMap.set(key, field);
216
217
  defaultValue[key] = field.defaultValue;
217
218
  schemaShape[key] = field.schema;
218
219
  }
@@ -225,7 +226,6 @@ export class FieldVisitor extends IDL.Visitor {
225
226
  component: "record-container",
226
227
  renderHint: COMPOUND_RENDER_HINT,
227
228
  fields,
228
- fieldMap,
229
229
  defaultValue,
230
230
  schema,
231
231
  candidType: "record",
@@ -234,33 +234,42 @@ export class FieldVisitor extends IDL.Visitor {
234
234
  visitVariant(_t, fields_, label) {
235
235
  const name = this.currentName();
236
236
  const fields = [];
237
- const options = [];
238
- const optionMap = new Map();
239
237
  const variantSchemas = [];
240
238
  for (const [key, type] of fields_) {
241
239
  const field = this.withName(`.${key}`, () => type.accept(this, key));
242
240
  fields.push(field);
243
- options.push(key);
244
- optionMap.set(key, field);
245
- variantSchemas.push(z.object({ [key]: field.schema }));
241
+ if (field.type === "null") {
242
+ variantSchemas.push(z.object({ _type: z.literal(key) }));
243
+ }
244
+ else {
245
+ variantSchemas.push(z.object({
246
+ _type: z.literal(key),
247
+ [key]: field.schema,
248
+ }));
249
+ }
246
250
  }
247
- const defaultOption = options[0];
248
251
  const firstField = fields[0];
249
- const defaultValue = {
250
- [defaultOption]: firstField.defaultValue,
251
- };
252
+ const defaultOption = firstField.label;
253
+ const defaultValue = firstField.type === "null"
254
+ ? { _type: defaultOption }
255
+ : {
256
+ _type: defaultOption,
257
+ [defaultOption]: firstField.defaultValue,
258
+ };
252
259
  const schema = z.union(variantSchemas);
253
260
  // Helper to get default value for any option
254
261
  const getOptionDefault = (option) => {
255
- const optField = optionMap.get(option);
262
+ const optField = fields.find((f) => f.label === option);
256
263
  if (!optField) {
257
264
  throw new Error(`Unknown variant option: ${option}`);
258
265
  }
259
- return { [option]: optField.defaultValue };
266
+ return optField.type === "null"
267
+ ? { _type: option }
268
+ : { _type: option, [option]: optField.defaultValue };
260
269
  };
261
270
  // Helper to get field for a specific option
262
271
  const getField = (option) => {
263
- const optField = optionMap.get(option);
272
+ const optField = fields.find((f) => f.label === option);
264
273
  if (!optField) {
265
274
  throw new Error(`Unknown variant option: ${option}`);
266
275
  }
@@ -268,7 +277,10 @@ export class FieldVisitor extends IDL.Visitor {
268
277
  };
269
278
  // Helper to get currently selected option from a value
270
279
  const getSelectedOption = (value) => {
271
- const validKeys = Object.keys(value).filter((k) => options.includes(k));
280
+ if (value._type && typeof value._type === "string") {
281
+ return value._type;
282
+ }
283
+ const validKeys = Object.keys(value).filter((k) => fields.some((f) => f.label === k));
272
284
  return validKeys[0] ?? defaultOption;
273
285
  };
274
286
  // Helper to get selected field from a value
@@ -284,9 +296,7 @@ export class FieldVisitor extends IDL.Visitor {
284
296
  component: "variant-select",
285
297
  renderHint: COMPOUND_RENDER_HINT,
286
298
  fields,
287
- options,
288
299
  defaultOption,
289
- optionMap,
290
300
  defaultValue,
291
301
  schema,
292
302
  getOptionDefault,
@@ -482,17 +492,18 @@ export class FieldVisitor extends IDL.Visitor {
482
492
  defaultValue: "",
483
493
  maxLength: 64,
484
494
  minLength: 7,
495
+ format: checkTextFormat(label),
485
496
  schema,
486
497
  inputProps,
487
498
  candidType: "principal",
488
499
  };
489
500
  }
490
501
  visitText(_t, label) {
491
- const inputProps = {
492
- type: "text",
493
- placeholder: "Enter text...",
494
- spellCheck: true,
495
- };
502
+ const format = checkTextFormat(label);
503
+ // Generate format-specific inputProps
504
+ const inputProps = this.getTextInputProps(format);
505
+ // Generate format-specific schema
506
+ const schema = this.getTextSchema(format);
496
507
  return {
497
508
  type: "text",
498
509
  label,
@@ -501,11 +512,105 @@ export class FieldVisitor extends IDL.Visitor {
501
512
  component: "text-input",
502
513
  renderHint: TEXT_RENDER_HINT,
503
514
  defaultValue: "",
504
- schema: z.string().min(1, "Required"),
515
+ format,
516
+ schema,
505
517
  inputProps,
506
518
  candidType: "text",
507
519
  };
508
520
  }
521
+ /**
522
+ * Generate format-specific input props for text fields.
523
+ */
524
+ getTextInputProps(format) {
525
+ switch (format) {
526
+ case "email":
527
+ return {
528
+ type: "email",
529
+ placeholder: "email@example.com",
530
+ inputMode: "email",
531
+ autoComplete: "email",
532
+ spellCheck: false,
533
+ };
534
+ case "url":
535
+ return {
536
+ type: "url",
537
+ placeholder: "https://example.com",
538
+ inputMode: "url",
539
+ autoComplete: "url",
540
+ spellCheck: false,
541
+ };
542
+ case "phone":
543
+ return {
544
+ type: "tel",
545
+ placeholder: "+1 (555) 123-4567",
546
+ inputMode: "tel",
547
+ autoComplete: "tel",
548
+ spellCheck: false,
549
+ };
550
+ case "uuid":
551
+ return {
552
+ type: "text",
553
+ placeholder: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
554
+ pattern: "[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}",
555
+ spellCheck: false,
556
+ autoComplete: "off",
557
+ };
558
+ case "btc":
559
+ return {
560
+ type: "text",
561
+ placeholder: "bc1... or 1... or 3...",
562
+ spellCheck: false,
563
+ autoComplete: "off",
564
+ };
565
+ case "eth":
566
+ return {
567
+ type: "text",
568
+ placeholder: "0x...",
569
+ pattern: "0x[0-9a-fA-F]{40}",
570
+ spellCheck: false,
571
+ autoComplete: "off",
572
+ };
573
+ case "account-id":
574
+ return {
575
+ type: "text",
576
+ placeholder: "64-character hex string",
577
+ pattern: "[0-9a-fA-F]{64}",
578
+ maxLength: 64,
579
+ spellCheck: false,
580
+ autoComplete: "off",
581
+ };
582
+ case "principal":
583
+ return {
584
+ type: "text",
585
+ placeholder: "aaaaa-aa or full principal ID",
586
+ minLength: 7,
587
+ maxLength: 64,
588
+ spellCheck: false,
589
+ autoComplete: "off",
590
+ };
591
+ default:
592
+ return {
593
+ type: "text",
594
+ placeholder: "Enter text...",
595
+ spellCheck: true,
596
+ };
597
+ }
598
+ }
599
+ /**
600
+ * Generate format-specific zod schema for text fields.
601
+ */
602
+ getTextSchema(format) {
603
+ switch (format) {
604
+ case "email":
605
+ return z.email("Invalid email address");
606
+ case "url":
607
+ return z.url("Invalid URL");
608
+ case "uuid":
609
+ return z.uuid("Invalid UUID");
610
+ default:
611
+ return z.string().min(1, "Required");
612
+ }
613
+ }
509
614
  visitBool(_t, label) {
510
615
  const inputProps = {
511
616
  type: "checkbox",
@@ -543,6 +648,7 @@ export class FieldVisitor extends IDL.Visitor {
543
648
  // Number Types with Constraints
544
649
  // ════════════════════════════════════════════════════════════════════════
545
650
  visitNumberType(label, candidType, options) {
651
+ const format = checkNumberFormat(label);
546
652
  let schema = z.string().min(1, "Required");
547
653
  if (options.isFloat) {
548
654
  schema = schema.refine((val) => !isNaN(Number(val)), "Must be a number");
@@ -558,6 +664,12 @@ export class FieldVisitor extends IDL.Visitor {
558
664
  const isBigInt = !options.isFloat && (!options.bits || options.bits > 32);
559
665
  const type = isBigInt ? "text" : "number";
560
666
  if (type === "text") {
667
+ // Propagate timestamp/cycle format if detected, otherwise default to plain
668
+ let textFormat = "plain";
669
+ if (format === "timestamp")
670
+ textFormat = "timestamp";
671
+ if (format === "cycle")
672
+ textFormat = "cycle";
561
673
  const inputProps = {
562
674
  type: "text",
563
675
  placeholder: options.unsigned ? "e.g. 100000" : "e.g. -100000",
@@ -574,6 +686,7 @@ export class FieldVisitor extends IDL.Visitor {
574
686
  component: "text-input",
575
687
  renderHint: TEXT_RENDER_HINT,
576
688
  defaultValue: "",
689
+ format: textFormat,
577
690
  candidType,
578
691
  schema,
579
692
  inputProps,
@@ -596,7 +709,8 @@ export class FieldVisitor extends IDL.Visitor {
596
709
  renderHint: NUMBER_RENDER_HINT,
597
710
  defaultValue: "",
598
711
  candidType,
599
- schema: schema,
712
+ format,
713
+ schema,
600
714
  inputProps,
601
715
  ...options,
602
716
  };
@@ -657,6 +771,7 @@ export class FieldVisitor extends IDL.Visitor {
657
771
  isPrimitive: false,
658
772
  },
659
773
  defaultValue: undefined,
774
+ candidType: "unknown",
660
775
  schema: z.any(),
661
776
  };
662
777
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/visitor/arguments/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/visitor/arguments/index.ts"],"names":[],"mappings":"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"}