@ic-reactor/candid 3.0.14-beta.0 → 3.0.14-beta.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.
Files changed (33) hide show
  1. package/dist/metadata-display-reactor.d.ts +66 -11
  2. package/dist/metadata-display-reactor.d.ts.map +1 -1
  3. package/dist/metadata-display-reactor.js +48 -12
  4. package/dist/metadata-display-reactor.js.map +1 -1
  5. package/dist/visitor/arguments/helpers.d.ts +22 -7
  6. package/dist/visitor/arguments/helpers.d.ts.map +1 -1
  7. package/dist/visitor/arguments/helpers.js +39 -5
  8. package/dist/visitor/arguments/helpers.js.map +1 -1
  9. package/dist/visitor/arguments/index.d.ts.map +1 -1
  10. package/dist/visitor/arguments/index.js +26 -34
  11. package/dist/visitor/arguments/index.js.map +1 -1
  12. package/dist/visitor/arguments/types.d.ts +120 -132
  13. package/dist/visitor/arguments/types.d.ts.map +1 -1
  14. package/dist/visitor/arguments/types.js +25 -1
  15. package/dist/visitor/arguments/types.js.map +1 -1
  16. package/dist/visitor/constants.d.ts.map +1 -1
  17. package/dist/visitor/constants.js +19 -17
  18. package/dist/visitor/constants.js.map +1 -1
  19. package/dist/visitor/returns/index.d.ts.map +1 -1
  20. package/dist/visitor/returns/index.js +24 -13
  21. package/dist/visitor/returns/index.js.map +1 -1
  22. package/dist/visitor/returns/types.d.ts +48 -10
  23. package/dist/visitor/returns/types.d.ts.map +1 -1
  24. package/package.json +2 -2
  25. package/src/metadata-display-reactor.ts +86 -14
  26. package/src/visitor/arguments/helpers.ts +50 -8
  27. package/src/visitor/arguments/index.test.ts +105 -61
  28. package/src/visitor/arguments/index.ts +38 -36
  29. package/src/visitor/arguments/types.ts +211 -220
  30. package/src/visitor/constants.ts +24 -15
  31. package/src/visitor/returns/index.test.ts +30 -30
  32. package/src/visitor/returns/index.ts +52 -21
  33. package/src/visitor/returns/types.ts +60 -17
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/visitor/constants.ts"],"names":[],"mappings":"AAEA,MAAM,cAAc,GAAG;IACrB,MAAM;IACN,MAAM;IACN,UAAU;IACV,WAAW;IACX,iBAAiB;IACjB,UAAU;IACV,WAAW;IACX,WAAW;IACX,WAAW;IACX,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,aAAa;CACd,CAAA;AAED,MAAM,oBAAoB,GAAG,IAAI,MAAM,CACrC,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAC/D,GAAG,CACJ,CAAA;AAED,MAAM,UAAU,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;AAEtC,MAAM,gBAAgB,GAAG,IAAI,MAAM,CACjC,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAC3D,GAAG,CACJ,CAAA;AAED,MAAM,gBAAgB,GAAG,aAAa,CAAA;AACtC,MAAM,gBAAgB,GAAG,mBAAmB,CAAA;AAC5C,MAAM,cAAc,GAAG,mBAAmB,CAAA;AAC1C,MAAM,eAAe,GAAG,YAAY,CAAA;AACpC,MAAM,kBAAkB,GAAG,cAAc,CAAA;AACzC,MAAM,mBAAmB,GAAG,eAAe,CAAA;AAC3C,MAAM,qBAAqB,GACzB,mFAAmF,CAAA;AACrF,MAAM,oBAAoB,GAAG,qBAAqB,CAAA;AAElD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAc,EAAc,EAAE;IAC5D,IAAI,CAAC,KAAK;QAAE,OAAO,OAAO,CAAA;IAC1B,IAAI,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,WAAW,CAAA;IACxD,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,OAAO,CAAA;IAChD,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,OAAO,CAAA;IAChD,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAC5C,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,MAAM,CAAA;IAC9C,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAChD,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACjD,IAAI,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,YAAY,CAAA;IAC1D,IAAI,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,WAAW,CAAA;IACxD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAgB,EAAE;IAChE,IAAI,CAAC,KAAK;QAAE,OAAO,QAAQ,CAAA;IAC3B,IAAI,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,WAAW,CAAA;IACxD,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,OAAO,CAAA;IAChD,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/visitor/constants.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/visitor/returns/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/visitor/returns/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,UAAU,EAGV,UAAU,EACV,WAAW,EAIZ,MAAM,SAAS,CAAA;AAGhB,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAE1C,OAAO,KAAK,EAEV,SAAS,EACT,YAAY,EAEb,MAAM,kBAAkB,CAAA;AAEzB,cAAc,SAAS,CAAA;AAiDvB,qBAAa,kBAAkB,CAAC,CAAC,GAAG,SAAS,CAAE,SAAQ,GAAG,CAAC,OAAO,CAChE,MAAM,EACN,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAC5C;IACC,OAAO,CAAC,KAAK,CAA4B;IAEzC,OAAO,CAAC,QAAQ,CAAwD;IAExE,OAAO,CAAC,QAAQ;IAiBT,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC;IAQjD,SAAS,CACd,CAAC,EAAE,GAAG,CAAC,SAAS,EAChB,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,GAC5B,UAAU,CAAC,CAAC,CAAC;IA6BT,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,UAAU,CAAC,QAAQ,CAAC;IA8ChB,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,UAAU,CAAC,SAAS,CAAC;IA8CjB,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,CAAC,OAAO,CAAC;IA+Bf,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,UAAU,CAAC,UAAU,CAAC;IA2BlB,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,UAAU,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC;IA8DrC,QAAQ,CAAC,CAAC,EACf,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAClB,EAAE,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EACxB,KAAK,EAAE,MAAM,GACZ,UAAU,CAAC,WAAW,CAAC;IA+BnB,cAAc,CACnB,CAAC,EAAE,GAAG,CAAC,cAAc,EACrB,KAAK,EAAE,MAAM,GACZ,UAAU,CAAC,WAAW,CAAC;IAanB,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAM9D,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC;IAIjE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAI9D,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC;IAM9D,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC;IAM9D,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC;IAalE,aAAa,CAClB,CAAC,EAAE,GAAG,CAAC,aAAa,EACpB,KAAK,EAAE,MAAM,GACZ,UAAU,CAAC,QAAQ,CAAC;IAchB,aAAa,CAClB,CAAC,EAAE,GAAG,CAAC,aAAa,EACpB,KAAK,EAAE,MAAM,GACZ,UAAU,CAAC,QAAQ,CAAC;IAchB,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC;CAK3E"}
@@ -1,5 +1,7 @@
1
1
  import { isQuery } from "../helpers";
2
2
  import { checkTextFormat, checkNumberFormat } from "../constants";
3
+ import { formatLabel } from "../arguments/helpers";
4
+ import { MetadataError } from "../arguments/types";
3
5
  import { sha256 } from "@noble/hashes/sha2.js";
4
6
  import { IDL } from "@icp-sdk/core/candid";
5
7
  import { DisplayCodecVisitor, uint8ArrayToHex } from "@ic-reactor/core";
@@ -11,6 +13,7 @@ function primitiveNode(type, label, candidType, displayType, codec, extras = {})
11
13
  const node = {
12
14
  type,
13
15
  label,
16
+ displayLabel: formatLabel(label),
14
17
  candidType,
15
18
  displayType,
16
19
  ...extras,
@@ -23,7 +26,7 @@ function primitiveNode(type, label, candidType, displayType, codec, extras = {})
23
26
  };
24
27
  }
25
28
  catch (e) {
26
- throw new Error(`Failed to decode field "${label}" of type ${type} (${candidType}) with data: ${JSON.stringify(data)}. Error: ${e}`);
29
+ throw new MetadataError(`Failed to decode: ${e instanceof Error ? e.message : String(e)}`, label, candidType);
27
30
  }
28
31
  },
29
32
  };
@@ -101,12 +104,13 @@ export class ResultFieldVisitor extends IDL.Visitor {
101
104
  const node = {
102
105
  type: "record",
103
106
  label,
107
+ displayLabel: formatLabel(label),
104
108
  candidType: "record",
105
109
  displayType: "object",
106
110
  fields,
107
111
  resolve(data) {
108
112
  if (data === null || data === undefined) {
109
- throw new Error(`Expected record for field ${label}, but got ${data}`);
113
+ throw new MetadataError(`Expected record, but got ${data === null ? "null" : "undefined"}`, label, "record");
110
114
  }
111
115
  const recordData = data;
112
116
  const resolvedFields = {};
@@ -115,7 +119,7 @@ export class ResultFieldVisitor extends IDL.Visitor {
115
119
  // Try named key first, then try numeric index (for tuples/indexed records)
116
120
  const value = recordData[key] !== undefined ? recordData[key] : recordData[index];
117
121
  if (!field || typeof field.resolve !== "function") {
118
- throw new Error(`Field "${key}" in record "${label}" is not a valid ResultNode. Got: ${JSON.stringify(field)}`);
122
+ throw new MetadataError(`Field "${key}" is not a valid ResultNode`, `${label}.${key}`, "record");
119
123
  }
120
124
  resolvedFields[key] = field.resolve(value);
121
125
  index++;
@@ -126,32 +130,34 @@ export class ResultFieldVisitor extends IDL.Visitor {
126
130
  return node;
127
131
  }
128
132
  visitVariant(_t, fields_, label) {
129
- const selectedOption = {};
133
+ const options = {};
130
134
  for (const [key, type] of fields_) {
131
- selectedOption[key] = type.accept(this, key);
135
+ options[key] = type.accept(this, key);
132
136
  }
133
- const isResult = "Ok" in selectedOption && "Err" in selectedOption;
137
+ const isResult = "Ok" in options && "Err" in options;
134
138
  const node = {
135
139
  type: "variant",
136
140
  label,
141
+ displayLabel: formatLabel(label),
137
142
  candidType: "variant",
138
143
  displayType: isResult ? "result" : "variant",
139
- selectedOption: {}, // placeholder, populated on resolve
144
+ options,
145
+ selectedValue: {}, // placeholder, populated on resolve
140
146
  resolve(data) {
141
147
  if (data === null || data === undefined) {
142
- throw new Error(`Expected variant for field ${label}, but got ${data}`);
148
+ throw new MetadataError(`Expected variant, but got ${data === null ? "null" : "undefined"}`, label, "variant");
143
149
  }
144
150
  const variantData = data;
145
151
  // Support both raw { Selected: value } and transformed { _type: 'Selected', Selected: value }
146
152
  const selected = variantData._type || Object.keys(variantData)[0];
147
- const optionNode = selectedOption[selected];
153
+ const optionNode = options[selected];
148
154
  if (!optionNode) {
149
- throw new Error(`Option ${selected} not found in variant ${label}. Available options: ${Object.keys(selectedOption).join(", ")}`);
155
+ throw new MetadataError(`Option "${selected}" not found. Available: ${Object.keys(options).join(", ")}`, label, "variant");
150
156
  }
151
157
  return {
152
158
  ...node,
153
159
  selected,
154
- selectedOption: optionNode.resolve(variantData[selected]),
160
+ selectedValue: optionNode.resolve(variantData[selected]),
155
161
  raw: data,
156
162
  };
157
163
  },
@@ -163,12 +169,13 @@ export class ResultFieldVisitor extends IDL.Visitor {
163
169
  const node = {
164
170
  type: "tuple",
165
171
  label,
172
+ displayLabel: formatLabel(label),
166
173
  candidType: "tuple",
167
174
  displayType: "array",
168
175
  items,
169
176
  resolve(data) {
170
177
  if (data === null || data === undefined) {
171
- throw new Error(`Expected tuple for field ${label}, but got ${data}`);
178
+ throw new MetadataError(`Expected tuple, but got ${data === null ? "null" : "undefined"}`, label, "tuple");
172
179
  }
173
180
  const tupleData = data;
174
181
  return {
@@ -185,6 +192,7 @@ export class ResultFieldVisitor extends IDL.Visitor {
185
192
  const node = {
186
193
  type: "optional",
187
194
  label,
195
+ displayLabel: formatLabel(label),
188
196
  candidType: "opt",
189
197
  displayType: "nullable",
190
198
  value: null, // null until resolved
@@ -210,6 +218,7 @@ export class ResultFieldVisitor extends IDL.Visitor {
210
218
  const node = {
211
219
  type: "blob",
212
220
  label,
221
+ displayLabel: formatLabel(label),
213
222
  candidType: "blob",
214
223
  displayType: "string",
215
224
  length: 0,
@@ -235,12 +244,13 @@ export class ResultFieldVisitor extends IDL.Visitor {
235
244
  const node = {
236
245
  type: "vector",
237
246
  label,
247
+ displayLabel: formatLabel(label),
238
248
  candidType: "vec",
239
249
  displayType: "array",
240
250
  items: [], // empty schema placeholder, populated on resolve
241
251
  resolve(data) {
242
252
  if (data === null || data === undefined) {
243
- throw new Error(`Expected vector for field ${label}, but got ${data}`);
253
+ throw new MetadataError(`Expected vector, but got ${data === null ? "null" : "undefined"}`, label, "vec");
244
254
  }
245
255
  const vectorData = data;
246
256
  return {
@@ -263,6 +273,7 @@ export class ResultFieldVisitor extends IDL.Visitor {
263
273
  const node = {
264
274
  type: "recursive",
265
275
  label,
276
+ displayLabel: formatLabel(label),
266
277
  candidType: "rec",
267
278
  displayType: "recursive",
268
279
  inner: {}, // placeholder, populated on resolve
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/visitor/returns/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/visitor/returns/index.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,21 @@
1
1
  import type { BaseActor, FunctionName, FunctionType, ActorMethodReturnType } from "@ic-reactor/core";
2
2
  import type { VisitorDataType, TextFormat, NumberFormat } from "../types";
3
- export type { TextFormat, NumberFormat };
4
- export type NodeType = VisitorDataType;
3
+ export type { VisitorDataType, TextFormat, NumberFormat };
4
+ /**
5
+ * The display type category after transformation.
6
+ * Maps Candid types to JavaScript-friendly display types.
7
+ */
5
8
  export type DisplayType = "string" | "number" | "boolean" | "null" | "object" | "array" | "variant" | "result" | "nullable" | "recursive" | "blob" | "unknown";
6
9
  /**
7
10
  * Base properties shared by all result nodes.
8
11
  */
9
- interface ResultNodeBase<T extends NodeType = NodeType> {
12
+ interface ResultNodeBase<T extends VisitorDataType = VisitorDataType> {
10
13
  /** The Candid type category */
11
14
  type: T;
12
- /** Human-readable label */
15
+ /** Raw label from Candid definition */
13
16
  label: string;
17
+ /** Human-readable formatted label for display */
18
+ displayLabel: string;
14
19
  /** Original Candid type name */
15
20
  candidType: string;
16
21
  /** What it becomes after display transformation */
@@ -20,10 +25,14 @@ interface ResultNodeBase<T extends NodeType = NodeType> {
20
25
  /** Value after display transformation (present after resolution) */
21
26
  value?: unknown;
22
27
  }
23
- type NodeTypeExtras<T extends NodeType> = T extends "record" ? {
28
+ type NodeTypeExtras<T extends VisitorDataType> = T extends "record" ? {
24
29
  fields: Record<string, ResultNode>;
25
30
  } : T extends "variant" ? {
26
- selectedOption: ResultNode;
31
+ /** All variant options as schema */
32
+ options: Record<string, ResultNode>;
33
+ /** The resolved selected option value */
34
+ selectedValue: ResultNode;
35
+ /** The selected option key (populated after resolution) */
27
36
  selected?: string;
28
37
  } : T extends "tuple" | "vector" ? {
29
38
  items: ResultNode[];
@@ -57,14 +66,14 @@ type NodeTypeExtras<T extends NodeType> = T extends "record" ? {
57
66
  * resolved children directly in their structure fields.
58
67
  * Primitive types store the display value in `value`.
59
68
  */
60
- export type ResultNode<T extends NodeType = NodeType> = ResultNodeBase<T> & NodeTypeExtras<T> & {
69
+ export type ResultNode<T extends VisitorDataType = VisitorDataType> = ResultNodeBase<T> & NodeTypeExtras<T> & {
61
70
  /** Resolve this node with a value, returning a new resolved node */
62
71
  resolve(data: unknown): ResolvedNode<T>;
63
72
  };
64
73
  /**
65
74
  * A resolved node has `raw` populated and children resolved.
66
75
  */
67
- export type ResolvedNode<T extends NodeType = NodeType> = ResultNode<T> & {
76
+ export type ResolvedNode<T extends VisitorDataType = VisitorDataType> = ResultNode<T> & {
68
77
  raw: unknown;
69
78
  };
70
79
  export type RecordNode = ResultNode<"record">;
@@ -80,23 +89,52 @@ export type TextNode = ResultNode<"text">;
80
89
  export type BooleanNode = ResultNode<"boolean">;
81
90
  export type NullNode = ResultNode<"null">;
82
91
  export type UnknownNode = ResultNode<"unknown">;
92
+ /**
93
+ * Metadata for a single method's return values.
94
+ * Use this to render method results.
95
+ */
83
96
  export interface MethodMeta<A = BaseActor, Name extends FunctionName<A> = FunctionName<A>> {
97
+ /** Whether this is a "query" or "update" call */
84
98
  functionType: FunctionType;
99
+ /** The method name as defined in the Candid interface */
85
100
  functionName: Name;
101
+ /** Array of result node descriptors, one per return value */
86
102
  returns: ResultNode[];
103
+ /** Number of return values */
87
104
  returnCount: number;
88
105
  /**
89
106
  * Resolve the method result schema with actual return data.
107
+ * @param data The raw return data from the canister
108
+ * @returns A resolved result with display-friendly values
90
109
  */
91
- resolve(data: ActorMethodReturnType<A[Name]>): ResolvedMethodResult<A>;
110
+ resolve(data: ActorMethodReturnType<A[Name]>): MethodResult<A>;
92
111
  }
93
- export interface ResolvedMethodResult<A = BaseActor> {
112
+ /**
113
+ * A resolved method result with display-friendly values.
114
+ */
115
+ export interface MethodResult<A = BaseActor> {
116
+ /** Whether this is a "query" or "update" call */
94
117
  functionType: FunctionType;
118
+ /** The method name */
95
119
  functionName: FunctionName<A>;
120
+ /** Resolved return values */
96
121
  results: ResolvedNode[];
122
+ /** Original raw data from the canister */
97
123
  raw: ActorMethodReturnType<A[FunctionName<A>]>;
98
124
  }
125
+ /**
126
+ * Service-level metadata mapping method names to their return metadata.
127
+ */
99
128
  export type ServiceMeta<A = BaseActor> = {
100
129
  [K in FunctionName<A>]: MethodMeta<A, K>;
101
130
  };
131
+ /**
132
+ * Props type for result display components.
133
+ */
134
+ export type ResultDisplayProps<T extends VisitorDataType = VisitorDataType> = {
135
+ /** The resolved result node */
136
+ node: ResolvedNode<T>;
137
+ /** Nesting depth for indentation */
138
+ depth?: number;
139
+ };
102
140
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/visitor/returns/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/visitor/returns/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,qBAAqB,EACtB,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEzE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,YAAY,EAAE,CAAA;AAMzD;;;GAGG;AACH,MAAM,MAAM,WAAW,GACnB,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,MAAM,GACN,QAAQ,GACR,OAAO,GACP,SAAS,GACT,QAAQ,GACR,UAAU,GACV,WAAW,GACX,MAAM,GACN,SAAS,CAAA;AAMb;;GAEG;AACH,UAAU,cAAc,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe;IAClE,+BAA+B;IAC/B,IAAI,EAAE,CAAC,CAAA;IACP,uCAAuC;IACvC,KAAK,EAAE,MAAM,CAAA;IACb,iDAAiD;IACjD,YAAY,EAAE,MAAM,CAAA;IACpB,gCAAgC;IAChC,UAAU,EAAE,MAAM,CAAA;IAClB,mDAAmD;IACnD,WAAW,EAAE,WAAW,CAAA;IACxB,0EAA0E;IAC1E,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,oEAAoE;IACpE,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAOD,KAAK,cAAc,CAAC,CAAC,SAAS,eAAe,IAAI,CAAC,SAAS,QAAQ,GAC/D;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;CAAE,GACtC,CAAC,SAAS,SAAS,GACjB;IACE,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IACnC,yCAAyC;IACzC,aAAa,EAAE,UAAU,CAAA;IACzB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,GACD,CAAC,SAAS,OAAO,GAAG,QAAQ,GAC1B;IAAE,KAAK,EAAE,UAAU,EAAE,CAAA;CAAE,GACvB,CAAC,SAAS,UAAU,GAClB;IAAE,KAAK,EAAE,UAAU,GAAG,IAAI,CAAA;CAAE,GAC5B,CAAC,SAAS,WAAW,GACnB;IAAE,KAAK,EAAE,UAAU,CAAA;CAAE,GACrB,CAAC,SAAS,MAAM,GACd;IAAE,KAAK,EAAE,MAAM,GAAG,UAAU,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC5D,CAAC,SAAS,QAAQ,GAChB;IAAE,MAAM,EAAE,YAAY,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,GAChD,CAAC,SAAS,MAAM,GAAG,WAAW,GAC5B;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACrC,CAAC,SAAS,SAAS,GACjB;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,GAClB,CAAC,SAAS,MAAM,GACd;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,GACf;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,CAAA;AAExC;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,IAChE,cAAc,CAAC,CAAC,CAAC,GACf,cAAc,CAAC,CAAC,CAAC,GAAG;IAClB,oEAAoE;IACpE,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;CACxC,CAAA;AAEL;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,IAClE,UAAU,CAAC,CAAC,CAAC,GAAG;IACd,GAAG,EAAE,OAAO,CAAA;CACb,CAAA;AAMH,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;AAC7C,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC,CAAA;AAC/C,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;AAC3C,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;AACjD,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;AAC7C,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAA;AACzC,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,WAAW,CAAC,CAAA;AACnD,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,WAAW,CAAC,CAAA;AACnD,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;AAC7C,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAA;AACzC,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC,CAAA;AAC/C,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAA;AACzC,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC,CAAA;AAM/C;;;GAGG;AACH,MAAM,WAAW,UAAU,CACzB,CAAC,GAAG,SAAS,EACb,IAAI,SAAS,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;IAE9C,iDAAiD;IACjD,YAAY,EAAE,YAAY,CAAA;IAC1B,yDAAyD;IACzD,YAAY,EAAE,IAAI,CAAA;IAClB,6DAA6D;IAC7D,OAAO,EAAE,UAAU,EAAE,CAAA;IACrB,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;CAC/D;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,SAAS;IACzC,iDAAiD;IACjD,YAAY,EAAE,YAAY,CAAA;IAC1B,sBAAsB;IACtB,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAA;IAC7B,6BAA6B;IAC7B,OAAO,EAAE,YAAY,EAAE,CAAA;IACvB,0CAA0C;IAC1C,GAAG,EAAE,qBAAqB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;CAC/C;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,SAAS,IAAI;KACtC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;CACzC,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,IAAI;IAC5E,+BAA+B;IAC/B,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAA;IACrB,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ic-reactor/candid",
3
- "version": "3.0.14-beta.0",
3
+ "version": "3.0.14-beta.2",
4
4
  "description": "IC Reactor Candid Adapter - Fetch and parse Candid definitions from Internet Computer canisters",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -44,7 +44,7 @@
44
44
  "dependencies": {
45
45
  "@noble/hashes": "^2.0.1",
46
46
  "zod": "^4.3.5",
47
- "@ic-reactor/core": "^3.0.14-beta.0"
47
+ "@ic-reactor/core": "^3.0.14-beta.2"
48
48
  },
49
49
  "peerDependencies": {
50
50
  "zod": "^4.3.5",
@@ -12,10 +12,11 @@ import {
12
12
  FieldVisitor,
13
13
  ArgumentsMeta,
14
14
  ArgumentsServiceMeta,
15
+ MetadataError,
15
16
  } from "./visitor/arguments"
16
17
  import {
17
18
  MethodMeta,
18
- ResolvedMethodResult,
19
+ MethodResult,
19
20
  ResultFieldVisitor,
20
21
  ServiceMeta,
21
22
  } from "./visitor/returns"
@@ -33,13 +34,39 @@ import {
33
34
  * It extends the base Reactor and adds metadata generation capabilities.
34
35
  * Unlike DisplayReactor, it does not use a separate codec for transformation.
35
36
  * Instead, it uses the metadata visitor to resolve raw values into display-ready structures.
37
+ *
38
+ * ## Usage
39
+ *
40
+ * ```typescript
41
+ * const reactor = new MetadataDisplayReactor({
42
+ * canisterId: "ryjl3-tyaaa-aaaaa-aaaba-cai",
43
+ * clientManager,
44
+ * name: "ICPLedger",
45
+ * })
46
+ *
47
+ * await reactor.initialize()
48
+ *
49
+ * // Get form metadata
50
+ * const argMeta = reactor.getInputMeta("icrc1_transfer")
51
+ * console.log(argMeta.args) // Field descriptors
52
+ * console.log(argMeta.defaults) // Default values
53
+ *
54
+ * // Get result metadata
55
+ * const resultMeta = reactor.getOutputMeta("icrc1_transfer")
56
+ *
57
+ * // Call with display types
58
+ * const result = await reactor.callMethod({
59
+ * functionName: "icrc1_transfer",
60
+ * args: [{ to: { owner: "aaaaa-aa" }, amount: "1000000" }]
61
+ * })
62
+ * ```
36
63
  */
37
64
  declare module "@ic-reactor/core" {
38
65
  interface TransformArgsRegistry<T> {
39
66
  metadata: TransformArgsRegistry<T>["display"]
40
67
  }
41
68
  interface TransformReturnRegistry<T, A = BaseActor> {
42
- metadata: ResolvedMethodResult<A>
69
+ metadata: MethodResult<A>
43
70
  }
44
71
  }
45
72
 
@@ -98,37 +125,44 @@ export class MetadataDisplayReactor<A = BaseActor> extends CandidDisplayReactor<
98
125
  // ══════════════════════════════════════════════════════════════════════════
99
126
  // METADATA ACCESS
100
127
  // ══════════════════════════════════════════════════════════════════════════
128
+
101
129
  /**
102
- * Get argument field metadata for a method.
130
+ * Get input field metadata for a method.
103
131
  * Use this to generate input forms.
132
+ *
133
+ * @param methodName The method name to get metadata for
134
+ * @returns ArgumentsMeta containing args, defaults, and validation schema
104
135
  */
105
- public getArgumentMeta<M extends FunctionName<A>>(
136
+ public getInputMeta<M extends FunctionName<A>>(
106
137
  methodName: M
107
138
  ): ArgumentsMeta<A, M> | undefined {
108
139
  return this.argumentMeta?.[methodName]
109
140
  }
110
141
 
111
142
  /**
112
- * Get result field metadata for a method.
143
+ * Get output field metadata for a method.
113
144
  * Use this to render results.
145
+ *
146
+ * @param methodName The method name to get metadata for
147
+ * @returns MethodMeta containing return schema and resolve function
114
148
  */
115
- public getResultMeta<M extends FunctionName<A>>(
149
+ public getOutputMeta<M extends FunctionName<A>>(
116
150
  methodName: M
117
151
  ): MethodMeta<A, M> | undefined {
118
152
  return this.resultMeta?.[methodName]
119
153
  }
120
154
 
121
155
  /**
122
- * Get all argument metadata.
156
+ * Get all input metadata for all methods.
123
157
  */
124
- public getAllArgumentMeta(): ArgumentsServiceMeta<A> | null {
158
+ public getAllInputMeta(): ArgumentsServiceMeta<A> | null {
125
159
  return this.argumentMeta
126
160
  }
127
161
 
128
162
  /**
129
- * Get all result metadata.
163
+ * Get all output metadata for all methods.
130
164
  */
131
- public getAllResultMeta(): ServiceMeta<A> | null {
165
+ public getAllOutputMeta(): ServiceMeta<A> | null {
132
166
  return this.resultMeta
133
167
  }
134
168
 
@@ -154,11 +188,15 @@ export class MetadataDisplayReactor<A = BaseActor> extends CandidDisplayReactor<
154
188
  protected override transformResult<M extends FunctionName<A>>(
155
189
  methodName: M,
156
190
  result: ActorMethodReturnType<A[M]>
157
- ): ResolvedMethodResult<A> {
191
+ ): MethodResult<A> {
158
192
  // Get metadata and generate resolved result
159
- const meta = this.getResultMeta(methodName)
193
+ const meta = this.getOutputMeta(methodName)
160
194
  if (!meta) {
161
- throw new Error(`No metadata found for method "${methodName}"`)
195
+ throw new MetadataError(
196
+ `No output metadata found for method`,
197
+ String(methodName),
198
+ "method"
199
+ )
162
200
  }
163
201
 
164
202
  return meta.resolve(result)
@@ -166,6 +204,9 @@ export class MetadataDisplayReactor<A = BaseActor> extends CandidDisplayReactor<
166
204
 
167
205
  /**
168
206
  * Perform a dynamic call and return result with metadata.
207
+ *
208
+ * @param options Method registration and call options
209
+ * @returns Object containing the result and metadata
169
210
  */
170
211
  public async callDynamicWithMeta<T = unknown>(
171
212
  options: DynamicMethodOptions & { args?: unknown[] }
@@ -177,8 +218,39 @@ export class MetadataDisplayReactor<A = BaseActor> extends CandidDisplayReactor<
177
218
  args: options.args as any,
178
219
  })) as T
179
220
 
180
- const meta = this.getResultMeta(options.functionName as any)!
221
+ const meta = this.getOutputMeta(options.functionName as any)!
181
222
 
182
223
  return { result, meta }
183
224
  }
184
225
  }
226
+
227
+ // ════════════════════════════════════════════════════════════════════════════
228
+ // Factory Function
229
+ // ════════════════════════════════════════════════════════════════════════════
230
+
231
+ /**
232
+ * Create and initialize a MetadataDisplayReactor.
233
+ * This is a convenience function that creates the reactor and calls initialize().
234
+ *
235
+ * @param options Reactor configuration options
236
+ * @returns Initialized MetadataDisplayReactor
237
+ *
238
+ * @example
239
+ * ```typescript
240
+ * const reactor = await createMetadataReactor({
241
+ * canisterId: "ryjl3-tyaaa-aaaaa-aaaba-cai",
242
+ * clientManager,
243
+ * name: "ICPLedger",
244
+ * })
245
+ *
246
+ * // Reactor is ready to use
247
+ * const methods = reactor.getMethodNames()
248
+ * ```
249
+ */
250
+ export async function createMetadataReactor<A = BaseActor>(
251
+ options: CandidDisplayReactorParameters<A>
252
+ ): Promise<MetadataDisplayReactor<A>> {
253
+ const reactor = new MetadataDisplayReactor<A>(options)
254
+ await reactor.initialize()
255
+ return reactor
256
+ }