@ic-reactor/core 3.0.1-beta.0 → 3.0.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.
Files changed (74) hide show
  1. package/README.md +6 -4
  2. package/dist/client.d.ts +3 -1
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/client.js +48 -4
  5. package/dist/client.js.map +1 -1
  6. package/dist/display/types.d.ts +2 -2
  7. package/dist/display/types.d.ts.map +1 -1
  8. package/dist/display/visitor.d.ts +2 -1
  9. package/dist/display/visitor.d.ts.map +1 -1
  10. package/dist/display/visitor.js +146 -121
  11. package/dist/display/visitor.js.map +1 -1
  12. package/dist/display-reactor.d.ts +9 -92
  13. package/dist/display-reactor.d.ts.map +1 -1
  14. package/dist/display-reactor.js +5 -41
  15. package/dist/display-reactor.js.map +1 -1
  16. package/dist/reactor.d.ts +36 -4
  17. package/dist/reactor.d.ts.map +1 -1
  18. package/dist/reactor.js +101 -61
  19. package/dist/reactor.js.map +1 -1
  20. package/dist/types/client.d.ts +11 -0
  21. package/dist/types/client.d.ts.map +1 -1
  22. package/dist/types/display-reactor.d.ts +54 -0
  23. package/dist/types/display-reactor.d.ts.map +1 -0
  24. package/dist/types/display-reactor.js +5 -0
  25. package/dist/types/display-reactor.js.map +1 -0
  26. package/dist/types/index.d.ts +1 -0
  27. package/dist/types/index.d.ts.map +1 -1
  28. package/dist/types/index.js +1 -0
  29. package/dist/types/index.js.map +1 -1
  30. package/dist/types/reactor.d.ts +10 -15
  31. package/dist/types/reactor.d.ts.map +1 -1
  32. package/dist/types/transform.d.ts +1 -1
  33. package/dist/types/transform.d.ts.map +1 -1
  34. package/dist/utils/constants.d.ts +1 -1
  35. package/dist/utils/constants.d.ts.map +1 -1
  36. package/dist/utils/constants.js +1 -1
  37. package/dist/utils/constants.js.map +1 -1
  38. package/dist/utils/helper.d.ts +20 -1
  39. package/dist/utils/helper.d.ts.map +1 -1
  40. package/dist/utils/helper.js +37 -6
  41. package/dist/utils/helper.js.map +1 -1
  42. package/dist/utils/index.d.ts +1 -0
  43. package/dist/utils/index.d.ts.map +1 -1
  44. package/dist/utils/index.js +1 -0
  45. package/dist/utils/index.js.map +1 -1
  46. package/dist/utils/zod.d.ts +34 -0
  47. package/dist/utils/zod.d.ts.map +1 -0
  48. package/dist/utils/zod.js +39 -0
  49. package/dist/utils/zod.js.map +1 -0
  50. package/package.json +7 -6
  51. package/src/client.ts +571 -0
  52. package/src/display/helper.ts +92 -0
  53. package/src/display/index.ts +3 -0
  54. package/src/display/types.ts +91 -0
  55. package/src/display/visitor.ts +415 -0
  56. package/src/display-reactor.ts +361 -0
  57. package/src/errors/index.ts +246 -0
  58. package/src/index.ts +8 -0
  59. package/src/reactor.ts +461 -0
  60. package/src/types/client.ts +110 -0
  61. package/src/types/display-reactor.ts +73 -0
  62. package/src/types/index.ts +6 -0
  63. package/src/types/reactor.ts +188 -0
  64. package/src/types/result.ts +50 -0
  65. package/src/types/transform.ts +29 -0
  66. package/src/types/variant.ts +39 -0
  67. package/src/utils/agent.ts +201 -0
  68. package/src/utils/candid.ts +112 -0
  69. package/src/utils/constants.ts +12 -0
  70. package/src/utils/helper.ts +155 -0
  71. package/src/utils/index.ts +5 -0
  72. package/src/utils/polling.ts +330 -0
  73. package/src/utils/zod.ts +56 -0
  74. package/src/version.ts +4 -0
@@ -1 +1 @@
1
- {"version":3,"file":"visitor.js","sourceRoot":"","sources":["../../src/display/visitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"visitor.js","sourceRoot":"","sources":["../../src/display/visitor.ts"],"names":[],"mappings":"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"}
@@ -1,57 +1,6 @@
1
1
  import { Reactor } from "./reactor";
2
- import { ActorMethodParameters, ActorMethodReturnType, FunctionName, ReactorArgs, ReactorReturnOk, ActorMethodCodecs, ReactorParameters, BaseActor } from "./types/reactor";
3
- import { ValidationIssue } from "./errors";
4
- /**
5
- * Validation result returned by a validator function.
6
- * Either success (true) or failure with issues.
7
- */
8
- export type ValidationResult = {
9
- success: true;
10
- } | {
11
- success: false;
12
- issues: ValidationIssue[];
13
- };
14
- /**
15
- * A validator function that validates method arguments.
16
- * Receives display types (strings for Principal, bigint, etc.).
17
- *
18
- * @param args - The display-type arguments to validate
19
- * @returns ValidationResult indicating success or failure with issues
20
- *
21
- * @example
22
- * ```typescript
23
- * // Validator receives display types
24
- * reactor.registerValidator("transfer", ([input]) => {
25
- * const issues = []
26
- *
27
- * // input.to is string (not Principal)
28
- * if (!input.to) {
29
- * issues.push({ path: ["to"], message: "Recipient is required" })
30
- * }
31
- *
32
- * // input.amount is string (not bigint)
33
- * if (!/^\d+$/.test(input.amount)) {
34
- * issues.push({ path: ["amount"], message: "Must be a valid number" })
35
- * }
36
- *
37
- * return issues.length > 0 ? { success: false, issues } : { success: true }
38
- * })
39
- * ```
40
- */
41
- export type Validator<Args = unknown[]> = (args: Args) => ValidationResult | Promise<ValidationResult>;
42
- /**
43
- * Validator that receives display types for a specific method.
44
- */
45
- export type DisplayValidator<A, M extends FunctionName<A>> = Validator<ReactorArgs<A, M, "display">>;
46
- export type DisplayReactorParameters<A = BaseActor> = ReactorParameters<A> & {
47
- /**
48
- * Optional initial validators to register.
49
- * Validators receive display types (strings for Principal, bigint, etc.)
50
- */
51
- validators?: Partial<{
52
- [M in FunctionName<A>]: DisplayValidator<A, M>;
53
- }>;
54
- };
2
+ import { ActorMethodParameters, ActorMethodReturnType, FunctionName, ReactorArgs, ReactorReturnOk, ActorMethodCodecs, BaseActor, TransformKey } from "./types/reactor";
3
+ import { DisplayReactorParameters, DisplayValidator, ValidationResult } from "./types/display-reactor";
55
4
  /**
56
5
  * DisplayReactor provides automatic type transformations between Candid and
57
6
  * display-friendly types, plus optional argument validation.
@@ -97,8 +46,8 @@ export type DisplayReactorParameters<A = BaseActor> = ReactorParameters<A> & {
97
46
  * })
98
47
  * ```
99
48
  */
100
- export declare class DisplayReactor<A = BaseActor> extends Reactor<A, "display"> {
101
- readonly transform = "display";
49
+ export declare class DisplayReactor<A = BaseActor, T extends TransformKey = "display"> extends Reactor<A, T> {
50
+ readonly transform: T;
102
51
  private codecs;
103
52
  private validators;
104
53
  constructor(config: DisplayReactorParameters<A>);
@@ -167,7 +116,7 @@ export declare class DisplayReactor<A = BaseActor> extends Reactor<A, "display">
167
116
  * }
168
117
  * ```
169
118
  */
170
- validate<M extends FunctionName<A>>(methodName: M, args: ReactorArgs<A, M, "display">): Promise<ValidationResult>;
119
+ validate<M extends FunctionName<A>>(methodName: M, args: ReactorArgs<A, M, T>): Promise<ValidationResult>;
171
120
  /**
172
121
  * Call a method with async validation support.
173
122
  * Use this instead of callMethod() when you have async validators.
@@ -194,52 +143,20 @@ export declare class DisplayReactor<A = BaseActor> extends Reactor<A, "display">
194
143
  */
195
144
  callMethodWithValidation<M extends FunctionName<A>>(params: {
196
145
  functionName: M;
197
- args?: ReactorArgs<A, M, "display">;
146
+ args?: ReactorArgs<A, M, T>;
198
147
  callConfig?: Parameters<Reactor<A, "display">["callMethod"]>[0]["callConfig"];
199
- }): Promise<ReactorReturnOk<A, M, "display">>;
148
+ }): Promise<ReactorReturnOk<A, M, T>>;
200
149
  /**
201
150
  * Transform arguments before calling the actor method.
202
151
  * 1. Validates display-type args (if validator registered)
203
152
  * 2. Converts Display → Candid
204
153
  */
205
- protected transformArgs<M extends FunctionName<A>>(methodName: M, args?: ReactorArgs<A, M, "display">): ActorMethodParameters<A[M]>;
154
+ protected transformArgs<M extends FunctionName<A>>(methodName: M, args?: ReactorArgs<A, M, T>): ActorMethodParameters<A[M]>;
206
155
  /**
207
156
  * Transform the result after calling the actor method.
208
157
  * Always extracts the Ok value from Result types (throws CanisterError on Err).
209
158
  * Also converts Candid → Display format.
210
159
  */
211
- protected transformResult<M extends FunctionName<A>>(methodName: M, result: ActorMethodReturnType<A[M]>): ReactorReturnOk<A, M, "display">;
160
+ protected transformResult<M extends FunctionName<A>>(methodName: M, result: ActorMethodReturnType<A[M]>): ReactorReturnOk<A, M, T>;
212
161
  }
213
- /**
214
- * Create a validator from a Zod schema.
215
- * This is a utility function to easily integrate Zod schemas as validators.
216
- *
217
- * @param schema - A Zod schema to validate against
218
- * @returns A Validator function compatible with DisplayReactor
219
- *
220
- * @example
221
- * ```typescript
222
- * import { z } from "zod"
223
- * import { fromZodSchema } from "@ic-reactor/core"
224
- *
225
- * const transferSchema = z.object({
226
- * to: z.string().min(1, "Recipient is required"),
227
- * amount: z.string().regex(/^\d+$/, "Must be a valid number"),
228
- * })
229
- *
230
- * reactor.registerValidator("transfer", fromZodSchema(transferSchema))
231
- * ```
232
- */
233
- export declare function fromZodSchema<T>(schema: {
234
- safeParse: (data: unknown) => {
235
- success: boolean;
236
- error?: {
237
- issues: Array<{
238
- path: (string | number)[];
239
- message: string;
240
- code?: string;
241
- }>;
242
- };
243
- };
244
- }): Validator<T[]>;
245
162
  //# sourceMappingURL=display-reactor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"display-reactor.d.ts","sourceRoot":"","sources":["../src/display-reactor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"display-reactor.d.ts","sourceRoot":"","sources":["../src/display-reactor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAQnC,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACZ,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,SAAS,EACT,YAAY,EACb,MAAM,iBAAiB,CAAA;AAGxB,OAAO,EACL,wBAAwB,EACxB,gBAAgB,EAChB,gBAAgB,EAEjB,MAAM,yBAAyB,CAAA;AAMhC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,qBAAa,cAAc,CACzB,CAAC,GAAG,SAAS,EACb,CAAC,SAAS,YAAY,GAAG,SAAS,CAClC,SAAQ,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IACrB,SAAgB,SAAS,EAAgB,CAAC,CAAA;IAC1C,OAAO,CAAC,MAAM,CAGD;IACb,OAAO,CAAC,UAAU,CAAyC;gBAE/C,MAAM,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAc/C;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA0BxB;;;;;OAKG;IACI,QAAQ,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EACvC,UAAU,EAAE,CAAC,GACZ,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI;IAajC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,iBAAiB,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EACzC,UAAU,EAAE,CAAC,EACb,SAAS,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,GAChC,IAAI;IAIP;;OAEG;IACH,mBAAmB,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,GAAG,IAAI;IAInE;;OAEG;IACH,YAAY,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,GAAG,OAAO;IAI/D;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,QAAQ,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EACtC,UAAU,EAAE,CAAC,EACb,IAAI,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GACzB,OAAO,CAAC,gBAAgB,CAAC;IAS5B;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,wBAAwB,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE;QAChE,YAAY,EAAE,CAAC,CAAA;QACf,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAC3B,UAAU,CAAC,EAAE,UAAU,CACrB,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,YAAY,CAAC,CACpC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;KACnB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IA8BrC;;;;OAIG;IACH,SAAS,CAAC,aAAa,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAC/C,UAAU,EAAE,CAAC,EACb,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAC1B,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAuC9B;;;;OAIG;IACH,SAAS,CAAC,eAAe,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EACjD,UAAU,EAAE,CAAC,EACb,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAClC,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;CAgB5B"}
@@ -230,6 +230,7 @@ export class DisplayReactor extends Reactor {
230
230
  this.validators.delete(params.functionName);
231
231
  }
232
232
  try {
233
+ // @ts-ignore
233
234
  return await this.callMethod(params);
234
235
  }
235
236
  finally {
@@ -250,8 +251,9 @@ export class DisplayReactor extends Reactor {
250
251
  transformArgs(methodName, args) {
251
252
  // 1. Validate FIRST (on display types)
252
253
  const validator = this.validators.get(methodName);
253
- if (validator && args) {
254
- const result = validator(args);
254
+ const displayArgs = args;
255
+ if (validator && displayArgs) {
256
+ const result = validator(displayArgs);
255
257
  // Handle Promise (async validator)
256
258
  if (result &&
257
259
  typeof result.then === "function") {
@@ -266,7 +268,7 @@ export class DisplayReactor extends Reactor {
266
268
  // 2. THEN transform: Display → Candid
267
269
  if (this.codecs.has(methodName)) {
268
270
  const codec = this.codecs.get(methodName);
269
- return transformArgsWithCodec(codec.args, args);
271
+ return transformArgsWithCodec(codec.args, displayArgs);
270
272
  }
271
273
  if (!args) {
272
274
  return [];
@@ -290,42 +292,4 @@ export class DisplayReactor extends Reactor {
290
292
  return extractOkResult(transformedResult);
291
293
  }
292
294
  }
293
- // ============================================================================
294
- // Zod Integration Helper
295
- // ============================================================================
296
- /**
297
- * Create a validator from a Zod schema.
298
- * This is a utility function to easily integrate Zod schemas as validators.
299
- *
300
- * @param schema - A Zod schema to validate against
301
- * @returns A Validator function compatible with DisplayReactor
302
- *
303
- * @example
304
- * ```typescript
305
- * import { z } from "zod"
306
- * import { fromZodSchema } from "@ic-reactor/core"
307
- *
308
- * const transferSchema = z.object({
309
- * to: z.string().min(1, "Recipient is required"),
310
- * amount: z.string().regex(/^\d+$/, "Must be a valid number"),
311
- * })
312
- *
313
- * reactor.registerValidator("transfer", fromZodSchema(transferSchema))
314
- * ```
315
- */
316
- export function fromZodSchema(schema) {
317
- return (args) => {
318
- // Validate the first argument (common IC pattern)
319
- const result = schema.safeParse(args[0]);
320
- if (result.success) {
321
- return { success: true };
322
- }
323
- const issues = result.error.issues.map((issue) => ({
324
- path: issue.path,
325
- message: issue.message,
326
- code: issue.code,
327
- }));
328
- return { success: false, issues };
329
- };
330
- }
331
295
  //# sourceMappingURL=display-reactor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"display-reactor.js","sourceRoot":"","sources":["../src/display-reactor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"display-reactor.js","sourceRoot":"","sources":["../src/display-reactor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,wBAAwB,EACxB,gBAAgB,GAEjB,MAAM,WAAW,CAAA;AAWlB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAQ1C,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAM,OAAO,cAGX,SAAQ,OAAa;IAQrB,YAAY,MAAmC;QAC7C,KAAK,CAAC,MAAM,CAAC,CAAA;QARC;;;;mBAAY,SAAc;WAAA;QAClC;;;;mBAGJ,IAAI,GAAG,EAAE;WAAA;QACL;;;;mBAA0C,IAAI,GAAG,EAAE;WAAA;QAIzD,IAAI,CAAC,gBAAgB,EAAE,CAAA;QAEvB,0CAA0C;QAC1C,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,KAAK,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;gBACxE,IAAI,SAAS,EAAE,CAAC;oBACd,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,SAAsB,CAAC,CAAA;gBACzD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,gBAAgB;QACtB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,EAAE,EAAE,OAAO,CAAA;YAClD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;YACpC,CAAC;YACD,KAAK,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,MAAM,EAAE,CAAC;gBAC5C,sBAAsB;gBACtB,MAAM,WAAW,GAAG,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBACvD,wBAAwB;gBACxB,MAAM,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBACtD,mBAAmB;gBACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE;oBAC1B,IAAI,EAAE,iBAAiB,CAAC,WAAW,CAAC;oBACpC,MAAM,EAAE,iBAAiB,CAAC,UAAU,CAAC;iBACtC,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAA;QACtD,CAAC;IACH,CAAC;IAED,+EAA+E;IAC/E,gBAAgB;IAChB,+EAA+E;IAE/E;;;;;OAKG;IACI,QAAQ,CACb,UAAa;QAEb,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAC1C,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAiC,CAAA;QAC1C,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,+EAA+E;IAC/E,qBAAqB;IACrB,+EAA+E;IAE/E;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,iBAAiB,CACf,UAAa,EACb,SAAiC;QAEjC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;IAC5C,CAAC;IAED;;OAEG;IACH,mBAAmB,CAA4B,UAAa;QAC1D,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACpC,CAAC;IAED;;OAEG;IACH,YAAY,CAA4B,UAAa;QACnD,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACxC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,KAAK,CAAC,QAAQ,CACZ,UAAa,EACb,IAA0B;QAE1B,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QACjD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QAC1B,CAAC;QAED,OAAO,SAAS,CAAC,IAAI,CAAC,CAAA;IACxB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,KAAK,CAAC,wBAAwB,CAA4B,MAMzD;QACC,gDAAgD;QAChD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;YACpE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,IAAI,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;YACvE,CAAC;QACH,CAAC;QAED,iFAAiF;QACjF,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QAC1D,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QAC7C,CAAC;QAED,IAAI,CAAC;YACH,aAAa;YACb,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACtC,CAAC;gBAAS,CAAC;YACT,oBAAoB;YACpB,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAA;YACrD,CAAC;QACH,CAAC;IACH,CAAC;IAED,+EAA+E;IAC/E,oBAAoB;IACpB,+EAA+E;IAE/E;;;;OAIG;IACO,aAAa,CACrB,UAAa,EACb,IAA2B;QAE3B,uCAAuC;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QACjD,MAAM,WAAW,GAAG,IAA+C,CAAA;QAEnE,IAAI,SAAS,IAAI,WAAW,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,SAAS,CAAC,WAAW,CAAC,CAAA;YAErC,mCAAmC;YACnC,IACE,MAAM;gBACN,OAAQ,MAAoC,CAAC,IAAI,KAAK,UAAU,EAChE,CAAC;gBACD,MAAM,IAAI,KAAK,CACb,sDAAsD;oBACpD,8DAA8D,CACjE,CAAA;YACH,CAAC;YAED,MAAM,UAAU,GAAG,MAA0B,CAAA;YAC7C,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;gBACxB,MAAM,IAAI,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;YAClE,CAAC;QACH,CAAC;QAED,sCAAsC;QACtC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAE,CAAA;YAC1C,OAAO,sBAAsB,CAC3B,KAAK,CAAC,IAAI,EACV,WAAW,CACZ,CAAA;QACH,CAAC;QACD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,EAA4C,CAAA;QACrD,CAAC;QACD,OAAO,IAAmC,CAAA;IAC5C,CAAC;IAED;;;;OAIG;IACO,eAAe,CACvB,UAAa,EACb,MAAmC;QAEnC,IAAI,iBAAiB,GAAG,MAAM,CAAA;QAC9B,qDAAqD;QACrD,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAE,CAAA;YAC1C,iBAAiB,GAAG,wBAAwB,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACpE,CAAC;QAED,2DAA2D;QAC3D,oEAAoE;QACpE,OAAO,eAAe,CAAC,iBAAiB,CAIvC,CAAA;IACH,CAAC;CACF"}
package/dist/reactor.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import type { CallConfig, PollingOptions, ReadStateOptions } from "@icp-sdk/core/agent";
2
2
  import type { ClientManager } from "./client";
3
3
  import type { QueryKey, FetchQueryOptions } from "@tanstack/query-core";
4
- import type { ReactorParameters, BaseActor, ActorMethodParameters, ActorMethodReturnType, FunctionName, TransformKey, ReactorArgs, ReactorReturnOk, ReactorQueryParams, ReactorCallParams } from "./types/reactor";
4
+ import type { ReactorParameters, BaseActor, ActorMethodParameters, ActorMethodReturnType, FunctionName, TransformKey, ReactorArgs, ReactorReturnOk, ReactorQueryParams, ReactorCallParams, CanisterId } from "./types/reactor";
5
5
  import { IDL } from "@icp-sdk/core/candid";
6
6
  import { Principal } from "@icp-sdk/core/principal";
7
7
  /**
@@ -18,13 +18,45 @@ import { Principal } from "@icp-sdk/core/principal";
18
18
  export declare class Reactor<A = BaseActor, T extends TransformKey = "candid"> {
19
19
  /** Phantom type brand for inference - never assigned at runtime */
20
20
  readonly _actor: A;
21
- readonly transform: T;
21
+ readonly transform: TransformKey;
22
22
  clientManager: ClientManager;
23
23
  name: string;
24
24
  canisterId: Principal;
25
25
  service: IDL.ServiceClass;
26
26
  pollingOptions: PollingOptions;
27
- constructor(config: ReactorParameters<A>);
27
+ constructor(config: ReactorParameters);
28
+ /**
29
+ * Set the canister ID for this reactor.
30
+ * Useful for dynamically switching between canisters of the same type (e.g., multiple ICRC tokens).
31
+ *
32
+ * @param canisterId - The new canister ID (as string or Principal)
33
+ *
34
+ * @example
35
+ * ```typescript
36
+ * // Switch to a different ledger canister
37
+ * ledgerReactor.setCanisterId("ryjl3-tyaaa-aaaaa-aaaba-cai")
38
+ *
39
+ * // Then use queries/mutations as normal
40
+ * const { data } = icrc1NameQuery.useQuery()
41
+ * ```
42
+ */
43
+ setCanisterId(canisterId: CanisterId): void;
44
+ /**
45
+ * Set the canister name for this reactor.
46
+ * Useful for dynamically switching between canisters of the same type (e.g., multiple ICRC tokens).
47
+ *
48
+ * @param name - The new canister name
49
+ *
50
+ * @example
51
+ * ```typescript
52
+ * // Switch to a different ledger canister
53
+ * ledgerReactor.setCanisterName("icrc1")
54
+ *
55
+ * // Then use queries/mutations as normal
56
+ * const { data } = icrc1NameQuery.useQuery()
57
+ * ```
58
+ */
59
+ setCanisterName(name: string): void;
28
60
  protected verifyCanister(): void;
29
61
  /**
30
62
  * Get the service interface (IDL.ServiceClass) for this reactor.
@@ -41,7 +73,7 @@ export declare class Reactor<A = BaseActor, T extends TransformKey = "candid"> {
41
73
  /**
42
74
  * Check if a method is a query method (query or composite_query).
43
75
  */
44
- protected isQueryMethod<M extends FunctionName<A>>(methodName: M): boolean;
76
+ isQueryMethod<M extends FunctionName<A>>(methodName: M): boolean;
45
77
  /**
46
78
  * Transform arguments before calling the method.
47
79
  * Default implementation returns arguments as-is.
@@ -1 +1 @@
1
- {"version":3,"file":"reactor.d.ts","sourceRoot":"","sources":["../src/reactor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reactor.d.ts","sourceRoot":"","sources":["../src/reactor.ts"],"names":[],"mappings":"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"}
package/dist/reactor.js CHANGED
@@ -1,9 +1,10 @@
1
- import { Actor, DEFAULT_POLLING_OPTIONS } from "@icp-sdk/core/agent";
1
+ import { DEFAULT_POLLING_OPTIONS } from "@icp-sdk/core/agent";
2
2
  import { IDL } from "@icp-sdk/core/candid";
3
3
  import { Principal } from "@icp-sdk/core/principal";
4
4
  import { generateKey, extractOkResult } from "./utils/helper";
5
5
  import { processQueryCallResponse, processUpdateCallResponse, } from "./utils/agent";
6
- import { CallError, CanisterError } from "./errors";
6
+ import { CallError, CanisterError, ValidationError } from "./errors";
7
+ import { safeGetCanisterEnv } from "@icp-sdk/core/agent/canister-env";
7
8
  /**
8
9
  * Reactor class for interacting with IC canisters.
9
10
  *
@@ -54,27 +55,68 @@ export class Reactor {
54
55
  value: void 0
55
56
  });
56
57
  this.clientManager = config.clientManager;
57
- this.name = config.name || "";
58
+ this.name = config.name;
58
59
  this.pollingOptions =
59
60
  "pollingOptions" in config && config.pollingOptions
60
61
  ? config.pollingOptions
61
62
  : DEFAULT_POLLING_OPTIONS;
62
- if ("actor" in config && config.actor) {
63
- // Legacy: if an actor is passed, extract service and canisterId from it
64
- this.canisterId = Actor.canisterIdOf(config.actor);
65
- this.service = Actor.interfaceOf(config.actor);
63
+ const { idlFactory } = config;
64
+ if (!idlFactory) {
65
+ throw new Error(`[ic-reactor] idlFactory is missing for ${this.name}`);
66
66
  }
67
- else if ("canisterId" in config && "idlFactory" in config) {
68
- const { canisterId, idlFactory } = config;
69
- this.canisterId = Principal.from(canisterId);
70
- this.service = idlFactory({ IDL });
71
- }
72
- else {
73
- throw new Error("Either actor or canisterId and idlFactory are required");
67
+ let canisterId = config.canisterId;
68
+ if (!canisterId) {
69
+ const env = safeGetCanisterEnv();
70
+ const key = `PUBLIC_CANISTER_ID:${this.name}`;
71
+ canisterId = env?.[key];
72
+ if (!canisterId) {
73
+ console.warn(`[ic-reactor] ${this.name} canister ID not found in ic_env cookie`);
74
+ canisterId = "aaaaa-aa"; // Fallback
75
+ }
74
76
  }
77
+ this.canisterId = Principal.from(canisterId);
78
+ this.service = idlFactory({ IDL });
75
79
  // Register this canister ID for delegation during login
76
80
  this.clientManager.registerCanisterId(this.canisterId.toString(), this.name);
77
81
  }
82
+ /**
83
+ * Set the canister ID for this reactor.
84
+ * Useful for dynamically switching between canisters of the same type (e.g., multiple ICRC tokens).
85
+ *
86
+ * @param canisterId - The new canister ID (as string or Principal)
87
+ *
88
+ * @example
89
+ * ```typescript
90
+ * // Switch to a different ledger canister
91
+ * ledgerReactor.setCanisterId("ryjl3-tyaaa-aaaaa-aaaba-cai")
92
+ *
93
+ * // Then use queries/mutations as normal
94
+ * const { data } = icrc1NameQuery.useQuery()
95
+ * ```
96
+ */
97
+ setCanisterId(canisterId) {
98
+ this.canisterId = Principal.from(canisterId);
99
+ // Register the new canister ID for delegation
100
+ this.clientManager.registerCanisterId(this.canisterId.toString(), this.name);
101
+ }
102
+ /**
103
+ * Set the canister name for this reactor.
104
+ * Useful for dynamically switching between canisters of the same type (e.g., multiple ICRC tokens).
105
+ *
106
+ * @param name - The new canister name
107
+ *
108
+ * @example
109
+ * ```typescript
110
+ * // Switch to a different ledger canister
111
+ * ledgerReactor.setCanisterName("icrc1")
112
+ *
113
+ * // Then use queries/mutations as normal
114
+ * const { data } = icrc1NameQuery.useQuery()
115
+ * ```
116
+ */
117
+ setCanisterName(name) {
118
+ this.name = name;
119
+ }
78
120
  verifyCanister() {
79
121
  // Optional: add any verification logic here
80
122
  }
@@ -145,23 +187,7 @@ export class Reactor {
145
187
  getQueryOptions(params) {
146
188
  return {
147
189
  queryKey: this.generateQueryKey(params),
148
- queryFn: async () => {
149
- try {
150
- return await this.callMethod(params);
151
- }
152
- catch (error) {
153
- // Re-throw CanisterError as-is (business logic error from canister)
154
- if (error instanceof CanisterError) {
155
- throw error;
156
- }
157
- let message = `Failed to query method "${String(params.functionName)}": `;
158
- // Wrap other errors in CallError (network/agent issues)
159
- if (error instanceof Error) {
160
- throw new CallError(message + error.message, error);
161
- }
162
- throw new CallError(message + String(error), error);
163
- }
164
- },
190
+ queryFn: () => this.callMethod(params),
165
191
  };
166
192
  }
167
193
  /**
@@ -218,34 +244,48 @@ export class Reactor {
218
244
  * ```
219
245
  */
220
246
  async callMethod(params) {
221
- const func = this.getFuncClass(params.functionName);
222
- if (!func) {
223
- throw new Error(`Method ${String(params.functionName)} not found`);
224
- }
225
- // Transform args
226
- const transformedArgs = this.transformArgs(params.functionName, params.args);
227
- // Encode arguments using Candid
228
- const arg = IDL.encode(func.argTypes, transformedArgs);
229
- // Determine if this is a query or update call
230
- const isQuery = func.annotations.includes("query") ||
231
- func.annotations.includes("composite_query");
232
- // Execute the call
233
- let rawResult;
234
- if (isQuery) {
235
- rawResult = await this.executeQuery(String(params.functionName), arg, params.callConfig);
247
+ try {
248
+ const func = this.getFuncClass(params.functionName);
249
+ if (!func) {
250
+ throw new Error(`Method ${String(params.functionName)} not found`);
251
+ }
252
+ // Transform args
253
+ const transformedArgs = this.transformArgs(params.functionName, params.args);
254
+ // Encode arguments using Candid
255
+ const arg = IDL.encode(func.argTypes, transformedArgs);
256
+ // Determine if this is a query or update call
257
+ const isQuery = func.annotations.includes("query") ||
258
+ func.annotations.includes("composite_query");
259
+ // Execute the call
260
+ let rawResponse;
261
+ if (isQuery) {
262
+ rawResponse = await this.executeQuery(String(params.functionName), arg, params.callConfig);
263
+ }
264
+ else {
265
+ rawResponse = await this.executeCall(String(params.functionName), arg, params.callConfig);
266
+ }
267
+ // Decode the result
268
+ const decoded = IDL.decode(func.retTypes, rawResponse);
269
+ // Handle single, zero, and multiple return values appropriately
270
+ const response = (decoded.length === 0
271
+ ? undefined
272
+ : decoded.length === 1
273
+ ? decoded[0]
274
+ : decoded);
275
+ return this.transformResult(params.functionName, response);
236
276
  }
237
- else {
238
- rawResult = await this.executeCall(String(params.functionName), arg, params.callConfig);
277
+ catch (error) {
278
+ // Re-throw CanisterError as-is (business logic error from canister)
279
+ if (error instanceof CanisterError || error instanceof ValidationError) {
280
+ throw error;
281
+ }
282
+ const message = `Failed to call method "${String(params.functionName)}": `;
283
+ // Wrap other errors in CallError (network/agent issues)
284
+ if (error instanceof Error) {
285
+ throw new CallError(message + error.message, error);
286
+ }
287
+ throw new CallError(message + String(error), error);
239
288
  }
240
- // Decode the result
241
- const decoded = IDL.decode(func.retTypes, rawResult);
242
- // Handle single, zero, and multiple return values appropriately
243
- const result = (decoded.length === 0
244
- ? undefined
245
- : decoded.length === 1
246
- ? decoded[0]
247
- : decoded);
248
- return this.transformResult(params.functionName, result);
249
289
  }
250
290
  /**
251
291
  * Fetch data from the canister and cache it using React Query.
@@ -268,25 +308,25 @@ export class Reactor {
268
308
  async executeQuery(methodName, arg, callConfig) {
269
309
  const agent = this.clientManager.agent;
270
310
  const effectiveCanisterId = callConfig?.effectiveCanisterId ?? this.canisterId;
271
- const result = await agent.query(this.canisterId, {
311
+ const response = await agent.query(this.canisterId, {
272
312
  methodName,
273
313
  arg,
274
314
  effectiveCanisterId,
275
315
  });
276
- return processQueryCallResponse(result, this.canisterId, methodName);
316
+ return processQueryCallResponse(response, this.canisterId, methodName);
277
317
  }
278
318
  /**
279
319
  * Execute an update call using agent.call()
280
320
  */
281
321
  async executeCall(methodName, arg, callConfig) {
282
322
  const agent = this.clientManager.agent;
283
- const result = await agent.call(this.canisterId, {
323
+ const response = await agent.call(this.canisterId, {
284
324
  methodName,
285
325
  arg,
286
326
  effectiveCanisterId: callConfig?.effectiveCanisterId,
287
327
  nonce: callConfig?.nonce,
288
328
  });
289
- return await processUpdateCallResponse(result, this.canisterId, methodName, agent, this.pollingOptions);
329
+ return await processUpdateCallResponse(response, this.canisterId, methodName, agent, this.pollingOptions);
290
330
  }
291
331
  // ══════════════════════════════════════════════════════════════════════
292
332
  // SUBNET