@ic-reactor/candid 3.0.18-beta.1 → 3.1.0
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 +41 -14
- package/dist/display-reactor.d.ts.map +1 -1
- package/dist/display-reactor.js +1 -1
- package/dist/display-reactor.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/metadata-display-reactor.d.ts +4 -4
- package/dist/metadata-display-reactor.d.ts.map +1 -1
- package/dist/metadata-display-reactor.js +1 -1
- package/dist/metadata-display-reactor.js.map +1 -1
- package/dist/metadata-reactor.d.ts +51 -0
- package/dist/metadata-reactor.d.ts.map +1 -0
- package/dist/metadata-reactor.js +202 -0
- package/dist/metadata-reactor.js.map +1 -0
- package/dist/reactor.d.ts +3 -2
- package/dist/reactor.d.ts.map +1 -1
- package/dist/reactor.js +6 -0
- package/dist/reactor.js.map +1 -1
- package/dist/types.d.ts +10 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/visitor/candid/helpers.d.ts +4 -0
- package/dist/visitor/candid/helpers.d.ts.map +1 -0
- package/dist/visitor/candid/helpers.js +84 -0
- package/dist/visitor/candid/helpers.js.map +1 -0
- package/dist/visitor/candid/index.d.ts +46 -0
- package/dist/visitor/candid/index.d.ts.map +1 -0
- package/dist/visitor/candid/index.js +421 -0
- package/dist/visitor/candid/index.js.map +1 -0
- package/dist/visitor/candid/types.d.ts +168 -0
- package/dist/visitor/candid/types.d.ts.map +1 -0
- package/dist/visitor/candid/types.js +2 -0
- package/dist/visitor/candid/types.js.map +1 -0
- package/dist/visitor/constants.d.ts +1 -1
- package/dist/visitor/constants.d.ts.map +1 -1
- package/dist/visitor/index.d.ts +1 -0
- package/dist/visitor/index.d.ts.map +1 -1
- package/dist/visitor/index.js +1 -0
- package/dist/visitor/index.js.map +1 -1
- package/dist/visitor/returns/index.d.ts.map +1 -1
- package/dist/visitor/returns/index.js +1 -1
- package/dist/visitor/returns/index.js.map +1 -1
- package/dist/visitor/returns/types.d.ts +1 -1
- package/dist/visitor/returns/types.d.ts.map +1 -1
- package/package.json +11 -7
- package/src/display-reactor.ts +1 -2
- package/src/index.ts +1 -0
- package/src/metadata-display-reactor.ts +4 -4
- package/src/metadata-reactor.ts +304 -0
- package/src/reactor.ts +12 -2
- package/src/types.ts +11 -0
- package/src/visitor/candid/helpers.ts +89 -0
- package/src/visitor/candid/index.ts +673 -0
- package/src/visitor/candid/types.ts +292 -0
- package/src/visitor/constants.ts +1 -1
- package/src/visitor/index.ts +1 -0
- package/src/visitor/returns/index.ts +6 -4
- package/src/visitor/returns/types.ts +0 -2
package/README.md
CHANGED
|
@@ -9,7 +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 `
|
|
12
|
+
- **Dynamic Forms**: Generate rich form metadata with validation schemas using `MetadataReactor` and `CandidFormVisitor`
|
|
13
13
|
- **Lightweight**: Uses raw `agent.query` calls - no Actor overhead
|
|
14
14
|
- **ClientManager Compatible**: Seamlessly integrates with `@ic-reactor/core`
|
|
15
15
|
|
|
@@ -172,32 +172,59 @@ const cachedBalance = await reactor.fetchQueryDynamic({
|
|
|
172
172
|
})
|
|
173
173
|
```
|
|
174
174
|
|
|
175
|
-
###
|
|
175
|
+
### MetadataReactor (Dynamic Forms)
|
|
176
176
|
|
|
177
|
-
|
|
177
|
+
Use `MetadataReactor` to build runtime form metadata directly from a canister interface.
|
|
178
178
|
|
|
179
179
|
```typescript
|
|
180
|
-
import {
|
|
180
|
+
import { MetadataReactor } from "@ic-reactor/candid"
|
|
181
|
+
import { ClientManager } from "@ic-reactor/core"
|
|
182
|
+
import { QueryClient } from "@tanstack/query-core"
|
|
183
|
+
|
|
184
|
+
const clientManager = new ClientManager({ queryClient: new QueryClient() })
|
|
185
|
+
await clientManager.initialize()
|
|
186
|
+
|
|
187
|
+
const reactor = new MetadataReactor({
|
|
188
|
+
canisterId: "ryjl3-tyaaa-aaaaa-aaaba-cai",
|
|
189
|
+
clientManager,
|
|
190
|
+
name: "ledger",
|
|
191
|
+
})
|
|
192
|
+
await reactor.initialize()
|
|
181
193
|
|
|
182
|
-
const
|
|
194
|
+
const inputMeta = reactor.getInputMeta("icrc1_transfer")
|
|
195
|
+
console.log(inputMeta?.schema) // Zod tuple for full argument validation
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
### CandidFormVisitor (Low-Level Form Metadata)
|
|
199
|
+
|
|
200
|
+
Use `CandidFormVisitor` when you already have an `IDL.ServiceClass` and want direct visitor output.
|
|
201
|
+
|
|
202
|
+
```typescript
|
|
203
|
+
import { CandidFormVisitor } from "@ic-reactor/candid"
|
|
204
|
+
|
|
205
|
+
const visitor = new CandidFormVisitor()
|
|
183
206
|
const serviceMeta = service.accept(visitor, null)
|
|
184
207
|
|
|
185
208
|
// Access method metadata
|
|
186
209
|
const methodMeta = serviceMeta["icrc1_transfer"]
|
|
187
210
|
|
|
188
|
-
//
|
|
189
|
-
|
|
190
|
-
console.log(
|
|
191
|
-
|
|
192
|
-
//
|
|
211
|
+
// Argument metadata
|
|
212
|
+
console.log(methodMeta.schema) // Zod tuple for all args
|
|
213
|
+
console.log(methodMeta.defaults) // Default values for form initialization
|
|
214
|
+
|
|
215
|
+
// Field-level UI and validation metadata
|
|
216
|
+
const arg0 = methodMeta.args[0]
|
|
217
|
+
console.log(arg0.component) // e.g. "record-container"
|
|
218
|
+
console.log(arg0.renderHint) // { isCompound: true, isPrimitive: false, ... }
|
|
219
|
+
console.log(arg0.schema) // Zod schema for this field
|
|
193
220
|
```
|
|
194
221
|
|
|
195
222
|
**Features:**
|
|
196
223
|
|
|
197
|
-
- **
|
|
198
|
-
- **
|
|
199
|
-
- **
|
|
200
|
-
- **
|
|
224
|
+
- **Zod Validation**: Includes method-level and field-level schemas (`schema`) for runtime validation.
|
|
225
|
+
- **Component Hints**: Includes `component` values for renderer selection (`variant-select`, `vector-list`, `blob-upload`, etc.).
|
|
226
|
+
- **Render Hints**: Includes `renderHint` for primitive/compound strategy and input type hints.
|
|
227
|
+
- **Form Defaults**: Includes ready-to-use `defaults` for form initialization.
|
|
201
228
|
|
|
202
229
|
### Fetch Raw Candid Source
|
|
203
230
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"display-reactor.d.ts","sourceRoot":"","sources":["../src/display-reactor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,8BAA8B,EAC9B,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAEzC,OAAO,EACL,SAAS,EAET,YAAY,EACZ,cAAc,EAGf,MAAM,kBAAkB,CAAA;AAOzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,qBAAa,oBAAoB,CAC/B,CAAC,GAAG,SAAS,EACb,CAAC,SAAS,YAAY,GAAG,SAAS,CAClC,SAAQ,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;IAC5B,SAAgB,SAAS,EAAgB,CAAC,CAAA;IACnC,OAAO,EAAE,aAAa,CAAA;IAC7B,OAAO,CAAC,YAAY,CAAC,CAAQ;gBAEjB,MAAM,EAAE,8BAA8B,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"display-reactor.d.ts","sourceRoot":"","sources":["../src/display-reactor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,8BAA8B,EAC9B,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAEzC,OAAO,EACL,SAAS,EAET,YAAY,EACZ,cAAc,EAGf,MAAM,kBAAkB,CAAA;AAOzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,qBAAa,oBAAoB,CAC/B,CAAC,GAAG,SAAS,EACb,CAAC,SAAS,YAAY,GAAG,SAAS,CAClC,SAAQ,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;IAC5B,SAAgB,SAAS,EAAgB,CAAC,CAAA;IACnC,OAAO,EAAE,aAAa,CAAA;IAC7B,OAAO,CAAC,YAAY,CAAC,CAAQ;gBAEjB,MAAM,EAAE,8BAA8B,CAAC,CAAC,CAAC;IA8BrD;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBxC;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IA4B1B;;;;;;;;;;;;;;;;;;;OAmBG;IACU,cAAc,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiCzE;;;;;;;;;;OAUG;IACU,eAAe,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5E;;OAEG;IACI,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;IAI/C;;OAEG;IACI,cAAc,IAAI,MAAM,EAAE;IAQjC;;;;;;;;;;;;OAYG;IACU,WAAW,CAAC,CAAC,GAAG,OAAO,EAClC,OAAO,EAAE,oBAAoB,GAAG;QAAE,IAAI,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,GACnD,OAAO,CAAC,CAAC,CAAC;IAQb;;;;;;;;;;;;;OAaG;IACU,YAAY,CAAC,CAAC,GAAG,OAAO,EACnC,OAAO,EAAE,oBAAoB,GAAG;QAAE,IAAI,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,GACnD,OAAO,CAAC,CAAC,CAAC;IAQb;;;;;;;;;;;;;;OAcG;IACU,iBAAiB,CAAC,CAAC,GAAG,OAAO,EACxC,OAAO,EAAE,oBAAoB,GAAG;QAAE,IAAI,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,GACnD,OAAO,CAAC,CAAC,CAAC;CAOd"}
|
package/dist/display-reactor.js
CHANGED
|
@@ -58,7 +58,7 @@ export class CandidDisplayReactor extends DisplayReactor {
|
|
|
58
58
|
// If funcClass is provided, build an idlFactory from it
|
|
59
59
|
if (config.funcClass && !superConfig.idlFactory) {
|
|
60
60
|
const { methodName, func } = config.funcClass;
|
|
61
|
-
superConfig.idlFactory = ({ IDL
|
|
61
|
+
superConfig.idlFactory = ({ IDL }) => IDL.Service({ [methodName]: func });
|
|
62
62
|
}
|
|
63
63
|
if (!superConfig.idlFactory) {
|
|
64
64
|
superConfig.idlFactory = ({ IDL }) => IDL.Service({});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"display-reactor.js","sourceRoot":"","sources":["../src/display-reactor.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAEzC,OAAO,EAIL,cAAc,EACd,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAE1C,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,MAAM,OAAO,oBAGX,SAAQ,cAAoB;IAK5B,YAAY,MAAyC;QACnD,MAAM,WAAW,GAAG,EAAE,GAAG,MAAM,EAAE,CAAA;QAEjC,wDAAwD;QACxD,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;YAChD,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,SAAS,CAAA;YAC7C,WAAW,CAAC,UAAU,GAAG,CAAC,EAAE,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"display-reactor.js","sourceRoot":"","sources":["../src/display-reactor.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,mBAAmB,CAAA;AACjC,cAAc,4BAA4B,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,mBAAmB,CAAA;AACjC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oBAAoB,CAAA"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,mBAAmB,CAAA;AACjC,cAAc,4BAA4B,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,mBAAmB,CAAA;AACjC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oBAAoB,CAAA"}
|
|
@@ -41,14 +41,14 @@ import { MethodMeta, MethodResult, ServiceMeta } from "./visitor/returns";
|
|
|
41
41
|
*/
|
|
42
42
|
declare module "@ic-reactor/core" {
|
|
43
43
|
interface TransformArgsRegistry<T> {
|
|
44
|
-
|
|
44
|
+
metadataDisplay: TransformArgsRegistry<T>["display"];
|
|
45
45
|
}
|
|
46
46
|
interface TransformReturnRegistry<T, A = BaseActor> {
|
|
47
|
-
|
|
47
|
+
metadataDisplay: MethodResult<A>;
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
|
-
export declare class MetadataDisplayReactor<A = BaseActor> extends CandidDisplayReactor<A, "
|
|
51
|
-
readonly transform: "
|
|
50
|
+
export declare class MetadataDisplayReactor<A = BaseActor> extends CandidDisplayReactor<A, "metadataDisplay"> {
|
|
51
|
+
readonly transform: "metadataDisplay";
|
|
52
52
|
private argumentMeta;
|
|
53
53
|
private resultMeta;
|
|
54
54
|
private static argVisitor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata-display-reactor.d.ts","sourceRoot":"","sources":["../src/metadata-display-reactor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,SAAS,EACT,YAAY,EACb,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EACV,8BAA8B,EAC9B,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAChB,OAAO,EAEL,aAAa,EACb,oBAAoB,EAErB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,UAAU,EACV,YAAY,EAEZ,WAAW,EACZ,MAAM,mBAAmB,CAAA;AAM1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,OAAO,QAAQ,kBAAkB,CAAC;IAChC,UAAU,qBAAqB,CAAC,CAAC;QAC/B,
|
|
1
|
+
{"version":3,"file":"metadata-display-reactor.d.ts","sourceRoot":"","sources":["../src/metadata-display-reactor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,SAAS,EACT,YAAY,EACb,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EACV,8BAA8B,EAC9B,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAChB,OAAO,EAEL,aAAa,EACb,oBAAoB,EAErB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,UAAU,EACV,YAAY,EAEZ,WAAW,EACZ,MAAM,mBAAmB,CAAA;AAM1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,OAAO,QAAQ,kBAAkB,CAAC;IAChC,UAAU,qBAAqB,CAAC,CAAC;QAC/B,eAAe,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;KACrD;IACD,UAAU,uBAAuB,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS;QAChD,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC,CAAA;KACjC;CACF;AAED,qBAAa,sBAAsB,CAAC,CAAC,GAAG,SAAS,CAAE,SAAQ,oBAAoB,CAC7E,CAAC,EACD,iBAAiB,CAClB;IACC,SAAyB,SAAS,EAAG,iBAAiB,CAAS;IAG/D,OAAO,CAAC,YAAY,CAAuC;IAC3D,OAAO,CAAC,UAAU,CAA8B;IAGhD,OAAO,CAAC,MAAM,CAAC,UAAU,CAAqB;IAC9C,OAAO,CAAC,MAAM,CAAC,aAAa,CAA2B;gBAE3C,MAAM,EAAE,8BAA8B,CAAC,CAAC,CAAC;IAarD;;OAEG;IACmB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAOjD;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAqBxB;;;;;;OAMG;IACI,YAAY,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAC3C,UAAU,EAAE,CAAC,GACZ,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS;IAIlC;;;;;;OAMG;IACI,aAAa,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAC5C,UAAU,EAAE,CAAC,GACZ,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS;IAI/B;;OAEG;IACI,eAAe,IAAI,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI;IAIxD;;OAEG;IACI,gBAAgB,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI;IAOhD;;;OAGG;IACmB,cAAc,CAClC,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,IAAI,CAAC;cAUG,eAAe,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAC1D,UAAU,EAAE,CAAC,EACb,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAClC,YAAY,CAAC,CAAC,CAAC;IAclB;;;;;OAKG;IACU,mBAAmB,CAAC,CAAC,GAAG,OAAO,EAC1C,OAAO,EAAE,oBAAoB,GAAG;QAAE,IAAI,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,GACnD,OAAO,CAAC;QAAE,MAAM,EAAE,CAAC,CAAC;QAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;KAAE,CAAC;CAY/C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata-display-reactor.js","sourceRoot":"","sources":["../src/metadata-display-reactor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAKxD,OAAO,EACL,YAAY,EAGZ,aAAa,GACd,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAGL,kBAAkB,GAEnB,MAAM,mBAAmB,CAAA;AAmD1B,MAAM,OAAO,sBAAsC,SAAQ,oBAG1D;IAWC,YAAY,MAAyC;QACnD,KAAK,CAAC,MAAM,CAAC,CAAA;QAXU;;;;mBAAY,
|
|
1
|
+
{"version":3,"file":"metadata-display-reactor.js","sourceRoot":"","sources":["../src/metadata-display-reactor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { ActorMethodReturnType, BaseActor, FunctionName } from "@ic-reactor/core";
|
|
2
|
+
import { CandidReactor } from "./reactor";
|
|
3
|
+
import type { DynamicMethodOptions, MetadataReactorParameters } from "./types";
|
|
4
|
+
import { FormServiceMeta, FormArgumentsMeta, VariableRefCandidate, MethodMetadataOptions, CandidFormMetadata } from "./visitor/candid";
|
|
5
|
+
import { MethodMeta, MethodResult, ServiceMeta } from "./visitor/returns";
|
|
6
|
+
declare module "@ic-reactor/core" {
|
|
7
|
+
interface TransformArgsRegistry<T> {
|
|
8
|
+
metadata: TransformArgsRegistry<T>["candid"];
|
|
9
|
+
}
|
|
10
|
+
interface TransformReturnRegistry<T, A = BaseActor> {
|
|
11
|
+
metadata: MethodResult<A>;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Runtime form metadata reactor for Candid interfaces.
|
|
16
|
+
*
|
|
17
|
+
* Extends {@link CandidReactor} and adds method input/output metadata generation
|
|
18
|
+
* powered by {@link CandidFormVisitor}. Returned field metadata includes:
|
|
19
|
+
* - `schema` (Zod validation)
|
|
20
|
+
* - `component` (UI component hint)
|
|
21
|
+
* - `renderHint` (primitive/compound + input hint)
|
|
22
|
+
*/
|
|
23
|
+
export declare class MetadataReactor<A = BaseActor> extends CandidReactor<A, "metadata"> {
|
|
24
|
+
readonly transform: "metadata";
|
|
25
|
+
private methodMeta;
|
|
26
|
+
private resultMeta;
|
|
27
|
+
private static formVisitor;
|
|
28
|
+
private static resultVisitor;
|
|
29
|
+
constructor(config: MetadataReactorParameters);
|
|
30
|
+
initialize(): Promise<void>;
|
|
31
|
+
private generateMetadata;
|
|
32
|
+
/**
|
|
33
|
+
* Get form metadata for a single method.
|
|
34
|
+
*/
|
|
35
|
+
getInputMeta<M extends FunctionName<A>>(methodName: M): FormArgumentsMeta | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* Get form metadata for all service methods.
|
|
38
|
+
*/
|
|
39
|
+
getAllInputMeta(): FormServiceMeta<A> | null;
|
|
40
|
+
getOutputMeta<M extends FunctionName<A>>(methodName: M): MethodMeta<A, M> | undefined;
|
|
41
|
+
getAllOutputMeta(): ServiceMeta<A> | null;
|
|
42
|
+
buildForMethod<M extends FunctionName<A>>(methodName: M, options?: MethodMetadataOptions): Promise<CandidFormMetadata>;
|
|
43
|
+
buildForValueType(valueType: string, options?: MethodMetadataOptions): Promise<CandidFormMetadata>;
|
|
44
|
+
buildMethodVariableCandidates<M extends FunctionName<A>>(methodName: M): VariableRefCandidate[];
|
|
45
|
+
registerMethod(options: DynamicMethodOptions): Promise<void>;
|
|
46
|
+
private findMethod;
|
|
47
|
+
private parseValueType;
|
|
48
|
+
private hydrateValues;
|
|
49
|
+
protected transformResult<M extends FunctionName<A>>(methodName: M, result: ActorMethodReturnType<A[M]>): MethodResult<A>;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=metadata-reactor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata-reactor.d.ts","sourceRoot":"","sources":["../src/metadata-reactor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,SAAS,EACT,YAAY,EAEb,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,KAAK,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAC9E,OAAO,EAEL,eAAe,EACf,iBAAiB,EAEjB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAEnB,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EACL,UAAU,EACV,YAAY,EAEZ,WAAW,EACZ,MAAM,mBAAmB,CAAA;AAE1B,OAAO,QAAQ,kBAAkB,CAAC;IAChC,UAAU,qBAAqB,CAAC,CAAC;QAC/B,QAAQ,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;KAC7C;IACD,UAAU,uBAAuB,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS;QAChD,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,CAAA;KAC1B;CACF;AAED;;;;;;;;GAQG;AACH,qBAAa,eAAe,CAAC,CAAC,GAAG,SAAS,CAAE,SAAQ,aAAa,CAC/D,CAAC,EACD,UAAU,CACX;IACC,SAAyB,SAAS,EAAG,UAAU,CAAS;IAExD,OAAO,CAAC,UAAU,CAAkC;IACpD,OAAO,CAAC,UAAU,CAA8B;IAChD,OAAO,CAAC,MAAM,CAAC,WAAW,CAA0B;IACpD,OAAO,CAAC,MAAM,CAAC,aAAa,CAA2B;gBAE3C,MAAM,EAAE,yBAAyB;IAevB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjD,OAAO,CAAC,gBAAgB;IAaxB;;OAEG;IACI,YAAY,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAC3C,UAAU,EAAE,CAAC,GACZ,iBAAiB,GAAG,SAAS;IAIhC;;OAEG;IACI,eAAe,IAAI,eAAe,CAAC,CAAC,CAAC,GAAG,IAAI;IAI5C,aAAa,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAC5C,UAAU,EAAE,CAAC,GACZ,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS;IAIxB,gBAAgB,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI;IAInC,cAAc,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EACnD,UAAU,EAAE,CAAC,EACb,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,kBAAkB,CAAC;IAcjB,iBAAiB,CAC5B,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,kBAAkB,CAAC;IAOvB,6BAA6B,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAC5D,UAAU,EAAE,CAAC,GACZ,oBAAoB,EAAE;IAyDH,cAAc,CAClC,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,IAAI,CAAC;IAKhB,OAAO,CAAC,UAAU;YAUJ,cAAc;IA2B5B,OAAO,CAAC,aAAa;cA0CF,eAAe,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAC1D,UAAU,EAAE,CAAC,EACb,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAClC,YAAY,CAAC,CAAC,CAAC;CAYnB"}
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
import { hexToUint8Array } from "@ic-reactor/core";
|
|
2
|
+
import { IDL } from "@icp-sdk/core/candid";
|
|
3
|
+
import { CandidReactor } from "./reactor";
|
|
4
|
+
import { CandidFormVisitor, } from "./visitor/candid";
|
|
5
|
+
import { MetadataError } from "./visitor/arguments";
|
|
6
|
+
import { ResultFieldVisitor, } from "./visitor/returns";
|
|
7
|
+
/**
|
|
8
|
+
* Runtime form metadata reactor for Candid interfaces.
|
|
9
|
+
*
|
|
10
|
+
* Extends {@link CandidReactor} and adds method input/output metadata generation
|
|
11
|
+
* powered by {@link CandidFormVisitor}. Returned field metadata includes:
|
|
12
|
+
* - `schema` (Zod validation)
|
|
13
|
+
* - `component` (UI component hint)
|
|
14
|
+
* - `renderHint` (primitive/compound + input hint)
|
|
15
|
+
*/
|
|
16
|
+
export class MetadataReactor extends CandidReactor {
|
|
17
|
+
constructor(config) {
|
|
18
|
+
const superConfig = { ...config };
|
|
19
|
+
if (config.funcClass && !superConfig.idlFactory) {
|
|
20
|
+
const { methodName, func } = config.funcClass;
|
|
21
|
+
superConfig.idlFactory = ({ IDL }) => IDL.Service({ [methodName]: func });
|
|
22
|
+
}
|
|
23
|
+
super(superConfig);
|
|
24
|
+
Object.defineProperty(this, "transform", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
configurable: true,
|
|
27
|
+
writable: true,
|
|
28
|
+
value: "metadata"
|
|
29
|
+
});
|
|
30
|
+
Object.defineProperty(this, "methodMeta", {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
configurable: true,
|
|
33
|
+
writable: true,
|
|
34
|
+
value: null
|
|
35
|
+
});
|
|
36
|
+
Object.defineProperty(this, "resultMeta", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
configurable: true,
|
|
39
|
+
writable: true,
|
|
40
|
+
value: null
|
|
41
|
+
});
|
|
42
|
+
if (config.funcClass || config.idlFactory) {
|
|
43
|
+
this.generateMetadata();
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
async initialize() {
|
|
47
|
+
await super.initialize();
|
|
48
|
+
this.generateMetadata();
|
|
49
|
+
}
|
|
50
|
+
generateMetadata() {
|
|
51
|
+
const service = this.getServiceInterface();
|
|
52
|
+
if (!service)
|
|
53
|
+
return;
|
|
54
|
+
this.methodMeta = service.accept(MetadataReactor.formVisitor, null);
|
|
55
|
+
this.resultMeta = service.accept(MetadataReactor.resultVisitor, null);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Get form metadata for a single method.
|
|
59
|
+
*/
|
|
60
|
+
getInputMeta(methodName) {
|
|
61
|
+
return this.methodMeta?.[methodName];
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Get form metadata for all service methods.
|
|
65
|
+
*/
|
|
66
|
+
getAllInputMeta() {
|
|
67
|
+
return this.methodMeta;
|
|
68
|
+
}
|
|
69
|
+
getOutputMeta(methodName) {
|
|
70
|
+
return this.resultMeta?.[methodName];
|
|
71
|
+
}
|
|
72
|
+
getAllOutputMeta() {
|
|
73
|
+
return this.resultMeta;
|
|
74
|
+
}
|
|
75
|
+
async buildForMethod(methodName, options = {}) {
|
|
76
|
+
const method = this.findMethod(String(methodName));
|
|
77
|
+
if (!method) {
|
|
78
|
+
throw new Error(`Method \"${String(methodName)}\" not found`);
|
|
79
|
+
}
|
|
80
|
+
const meta = this.getInputMeta(methodName);
|
|
81
|
+
if (!meta) {
|
|
82
|
+
throw new Error(`Method \"${String(methodName)}\" metadata not found`);
|
|
83
|
+
}
|
|
84
|
+
const hydration = this.hydrateValues(method.func.argTypes ?? [], options);
|
|
85
|
+
return { meta, hydration };
|
|
86
|
+
}
|
|
87
|
+
async buildForValueType(valueType, options = {}) {
|
|
88
|
+
const parsed = await this.parseValueType(valueType);
|
|
89
|
+
const meta = MetadataReactor.formVisitor.buildValueMeta(parsed.type);
|
|
90
|
+
const hydration = this.hydrateValues([parsed.type], options);
|
|
91
|
+
return { meta, hydration };
|
|
92
|
+
}
|
|
93
|
+
buildMethodVariableCandidates(methodName) {
|
|
94
|
+
const method = this.findMethod(String(methodName));
|
|
95
|
+
if (!method)
|
|
96
|
+
return [];
|
|
97
|
+
const visitor = new CandidFormVisitor();
|
|
98
|
+
const out = [];
|
|
99
|
+
const argMeta = visitor.buildFunctionMeta(method.func, method.name);
|
|
100
|
+
for (let argIndex = 0; argIndex < argMeta.args.length; argIndex += 1) {
|
|
101
|
+
const argField = argMeta.args[argIndex];
|
|
102
|
+
if (!argField)
|
|
103
|
+
continue;
|
|
104
|
+
const suffix = argMeta.args.length === 1 ? "" : `.${argIndex}`;
|
|
105
|
+
out.push(...visitor.collectRefCandidatesFromRoot(method.name, "arg", `$${method.name}.arg${suffix}`, `$${method.name}.arg${suffix}`, argField));
|
|
106
|
+
}
|
|
107
|
+
const retTypes = Array.isArray(method.func.retTypes)
|
|
108
|
+
? method.func.retTypes
|
|
109
|
+
: [];
|
|
110
|
+
if (retTypes.length === 1 && retTypes[0]) {
|
|
111
|
+
const resultField = visitor.buildFieldForType(retTypes[0], "ret", "$ret");
|
|
112
|
+
out.push(...visitor.collectRefCandidatesFromRoot(method.name, "ret", `$${method.name}.ret`, `$${method.name}.ret`, resultField));
|
|
113
|
+
}
|
|
114
|
+
else if (retTypes.length > 1) {
|
|
115
|
+
const resultField = visitor.buildTupleFieldForTypes(retTypes, "ret", "$ret");
|
|
116
|
+
out.push(...visitor.collectRefCandidatesFromRoot(method.name, "ret", `$${method.name}.ret`, `$${method.name}.ret`, resultField));
|
|
117
|
+
}
|
|
118
|
+
return out;
|
|
119
|
+
}
|
|
120
|
+
async registerMethod(options) {
|
|
121
|
+
await super.registerMethod(options);
|
|
122
|
+
this.generateMetadata();
|
|
123
|
+
}
|
|
124
|
+
findMethod(methodName) {
|
|
125
|
+
const service = this.getServiceInterface();
|
|
126
|
+
if (!service)
|
|
127
|
+
return null;
|
|
128
|
+
const field = service._fields.find(([name]) => name === methodName);
|
|
129
|
+
if (!field)
|
|
130
|
+
return null;
|
|
131
|
+
return { name: field[0], func: field[1] };
|
|
132
|
+
}
|
|
133
|
+
async parseValueType(valueType) {
|
|
134
|
+
const normalized = String(valueType ?? "").trim();
|
|
135
|
+
if (!normalized) {
|
|
136
|
+
throw new Error("Provide a value type first.");
|
|
137
|
+
}
|
|
138
|
+
const serviceSource = `service : { __value : (${normalized}) -> (); }`;
|
|
139
|
+
const { idlFactory } = await this.adapter.parseCandidSource(serviceSource);
|
|
140
|
+
const service = idlFactory({ IDL });
|
|
141
|
+
const funcField = service._fields.find(([name]) => name === "__value");
|
|
142
|
+
if (!funcField) {
|
|
143
|
+
throw new Error('Value parser method "__value" not found');
|
|
144
|
+
}
|
|
145
|
+
const func = funcField[1];
|
|
146
|
+
const argTypes = Array.isArray(func.argTypes) ? func.argTypes : [];
|
|
147
|
+
if (argTypes.length !== 1) {
|
|
148
|
+
throw new Error(`Value type must produce exactly one type, got ${argTypes.length}`);
|
|
149
|
+
}
|
|
150
|
+
return { type: argTypes[0] };
|
|
151
|
+
}
|
|
152
|
+
hydrateValues(argTypes, options) {
|
|
153
|
+
const candidArgsHex = String(options.candidArgsHex ?? "").trim();
|
|
154
|
+
if (!candidArgsHex) {
|
|
155
|
+
return { status: "empty" };
|
|
156
|
+
}
|
|
157
|
+
const skipToken = options.skipHydrationIfContains;
|
|
158
|
+
if (skipToken && candidArgsHex.includes(skipToken)) {
|
|
159
|
+
return {
|
|
160
|
+
status: "skipped",
|
|
161
|
+
reason: `Input contains \"${skipToken}\". Using schema defaults.`,
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
try {
|
|
165
|
+
const decoded = IDL.decode(argTypes, hexToUint8Array(candidArgsHex));
|
|
166
|
+
const visitor = new CandidFormVisitor();
|
|
167
|
+
const fields = argTypes
|
|
168
|
+
.map((argType, index) => visitor.buildFunctionMeta(new IDL.FuncClass([argType], []), `__arg${index}`).args[0])
|
|
169
|
+
.filter((field) => Boolean(field));
|
|
170
|
+
return {
|
|
171
|
+
status: "hydrated",
|
|
172
|
+
values: visitor.toFormValuesFromDecodedArgs(fields, decoded),
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
catch (error) {
|
|
176
|
+
return {
|
|
177
|
+
status: "error",
|
|
178
|
+
message: error instanceof Error ? error.message : String(error),
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
transformResult(methodName, result) {
|
|
183
|
+
const meta = this.getOutputMeta(methodName);
|
|
184
|
+
if (!meta) {
|
|
185
|
+
throw new MetadataError(`No output metadata found for method`, String(methodName), "method");
|
|
186
|
+
}
|
|
187
|
+
return meta.resolve(result);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
Object.defineProperty(MetadataReactor, "formVisitor", {
|
|
191
|
+
enumerable: true,
|
|
192
|
+
configurable: true,
|
|
193
|
+
writable: true,
|
|
194
|
+
value: new CandidFormVisitor()
|
|
195
|
+
});
|
|
196
|
+
Object.defineProperty(MetadataReactor, "resultVisitor", {
|
|
197
|
+
enumerable: true,
|
|
198
|
+
configurable: true,
|
|
199
|
+
writable: true,
|
|
200
|
+
value: new ResultFieldVisitor()
|
|
201
|
+
});
|
|
202
|
+
//# sourceMappingURL=metadata-reactor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata-reactor.js","sourceRoot":"","sources":["../src/metadata-reactor.ts"],"names":[],"mappings":"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"}
|
package/dist/reactor.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import type { BaseActor } from "@ic-reactor/core";
|
|
1
|
+
import type { BaseActor, TransformArgsRegistry, TransformKey } from "@ic-reactor/core";
|
|
2
2
|
import type { CandidReactorParameters, DynamicMethodOptions } from "./types";
|
|
3
3
|
import { Reactor } from "@ic-reactor/core";
|
|
4
4
|
import { CandidAdapter } from "./adapter";
|
|
5
|
-
export declare class CandidReactor<A = BaseActor> extends Reactor<A> {
|
|
5
|
+
export declare class CandidReactor<A = BaseActor, T extends TransformKey = "candid"> extends Reactor<A, T> {
|
|
6
|
+
transform: keyof TransformArgsRegistry<unknown>;
|
|
6
7
|
adapter: CandidAdapter;
|
|
7
8
|
private candidSource?;
|
|
8
9
|
constructor(config: CandidReactorParameters);
|
package/dist/reactor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactor.d.ts","sourceRoot":"","sources":["../src/reactor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"reactor.d.ts","sourceRoot":"","sources":["../src/reactor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EAET,qBAAqB,EACrB,YAAY,EACb,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAE5E,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,qBAAa,aAAa,CACxB,CAAC,GAAG,SAAS,EACb,CAAC,SAAS,YAAY,GAAG,QAAQ,CACjC,SAAQ,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IACd,SAAS,EAAE,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAoB;IAEnE,OAAO,EAAE,aAAa,CAAA;IAC7B,OAAO,CAAC,YAAY,CAAC,CAAQ;gBAEjB,MAAM,EAAE,uBAAuB;IAmB3C;;;;;OAKG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAcxC;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACU,cAAc,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BzE;;OAEG;IACU,eAAe,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5E;;OAEG;IACI,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;IAI/C;;OAEG;IACI,cAAc,IAAI,MAAM,EAAE;IAQjC;;;;;;;;;;;;OAYG;IACU,WAAW,CAAC,CAAC,GAAG,OAAO,EAClC,OAAO,EAAE,oBAAoB,GAAG;QAAE,IAAI,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,GACnD,OAAO,CAAC,CAAC,CAAC;IAQb;;;;;;;;;;;;OAYG;IACU,YAAY,CAAC,CAAC,GAAG,OAAO,EACnC,OAAO,EAAE,oBAAoB,GAAG;QAAE,IAAI,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,GACnD,OAAO,CAAC,CAAC,CAAC;IAQb;;;;;;;;;;;;OAYG;IACU,iBAAiB,CAAC,CAAC,GAAG,OAAO,EACxC,OAAO,EAAE,oBAAoB,GAAG;QAAE,IAAI,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,GACnD,OAAO,CAAC,CAAC,CAAC;CAOd"}
|
package/dist/reactor.js
CHANGED
|
@@ -8,6 +8,12 @@ export class CandidReactor extends Reactor {
|
|
|
8
8
|
superConfig.idlFactory = ({ IDL }) => IDL.Service({});
|
|
9
9
|
}
|
|
10
10
|
super(superConfig);
|
|
11
|
+
Object.defineProperty(this, "transform", {
|
|
12
|
+
enumerable: true,
|
|
13
|
+
configurable: true,
|
|
14
|
+
writable: true,
|
|
15
|
+
value: "candid"
|
|
16
|
+
});
|
|
11
17
|
Object.defineProperty(this, "adapter", {
|
|
12
18
|
enumerable: true,
|
|
13
19
|
configurable: true,
|
package/dist/reactor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactor.js","sourceRoot":"","sources":["../src/reactor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"reactor.js","sourceRoot":"","sources":["../src/reactor.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -52,6 +52,16 @@ export interface CandidDisplayReactorParameters<A = BaseActor> extends Omit<Disp
|
|
|
52
52
|
func: import("@icp-sdk/core/candid").IDL.FuncClass;
|
|
53
53
|
};
|
|
54
54
|
}
|
|
55
|
+
export interface MetadataReactorParameters extends CandidReactorParameters {
|
|
56
|
+
/**
|
|
57
|
+
* An IDL.FuncClass to register as a single-method service.
|
|
58
|
+
* Useful for func-record callbacks.
|
|
59
|
+
*/
|
|
60
|
+
funcClass?: {
|
|
61
|
+
methodName: string;
|
|
62
|
+
func: import("@icp-sdk/core/candid").IDL.FuncClass;
|
|
63
|
+
};
|
|
64
|
+
}
|
|
55
65
|
/**
|
|
56
66
|
* Minimal interface for ClientManager that CandidAdapter depends on.
|
|
57
67
|
* This allows the candid package to work with ClientManager without importing the full core package.
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,KAAK,EACV,SAAS,EACT,UAAU,EACV,wBAAwB,EACxB,iBAAiB,EAClB,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAE9C,MAAM,WAAW,oBAAoB;IACnC,mCAAmC;IACnC,YAAY,EAAE,MAAM,CAAA;IACpB;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,uBAAwB,SAAQ,IAAI,CACnD,iBAAiB,EACjB,YAAY,CACb;IACC,uBAAuB;IACvB,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,sFAAsF;IACtF,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,iCAAiC;IACjC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,CAAA;IAC9B,0BAA0B;IAC1B,OAAO,CAAC,EAAE,aAAa,CAAA;CACxB;AAMD,MAAM,WAAW,8BAA8B,CAAC,CAAC,GAAG,SAAS,CAAE,SAAQ,IAAI,CACzE,wBAAwB,CAAC,CAAC,CAAC,EAC3B,YAAY,CACb;IACC,uBAAuB;IACvB,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,sFAAsF;IACtF,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,iCAAiC;IACjC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,CAAA;IAC9B,0BAA0B;IAC1B,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,EAAE;QACV,kCAAkC;QAClC,UAAU,EAAE,MAAM,CAAA;QAClB,0DAA0D;QAC1D,IAAI,EAAE,OAAO,sBAAsB,EAAE,GAAG,CAAC,SAAS,CAAA;KACnD,CAAA;CACF;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,+CAA+C;IAC/C,KAAK,EAAE,SAAS,CAAA;IAChB,yDAAyD;IACzD,OAAO,EAAE,OAAO,CAAA;IAChB,sEAAsE;IACtE,SAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,GAAG,MAAM,IAAI,CAAA;CAC9D;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,kEAAkE;IAClE,aAAa,EAAE,mBAAmB,CAAA;IAClC,gFAAgF;IAChF,eAAe,CAAC,EAAE,UAAU,CAAA;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,iCAAiC;IACjC,UAAU,EAAE,GAAG,CAAC,gBAAgB,CAAA;IAChC,+CAA+C;IAC/C,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,GAAG,EAAE,OAAO,GAAG,CAAA;KAAE,KAAK,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAA;CAC1D;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7B;;;;OAIG;IACH,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAA;IACrC;;;;OAIG;IACH,WAAW,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAA;CAC3C"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,KAAK,EACV,SAAS,EACT,UAAU,EACV,wBAAwB,EACxB,iBAAiB,EAClB,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAE9C,MAAM,WAAW,oBAAoB;IACnC,mCAAmC;IACnC,YAAY,EAAE,MAAM,CAAA;IACpB;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,uBAAwB,SAAQ,IAAI,CACnD,iBAAiB,EACjB,YAAY,CACb;IACC,uBAAuB;IACvB,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,sFAAsF;IACtF,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,iCAAiC;IACjC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,CAAA;IAC9B,0BAA0B;IAC1B,OAAO,CAAC,EAAE,aAAa,CAAA;CACxB;AAMD,MAAM,WAAW,8BAA8B,CAAC,CAAC,GAAG,SAAS,CAAE,SAAQ,IAAI,CACzE,wBAAwB,CAAC,CAAC,CAAC,EAC3B,YAAY,CACb;IACC,uBAAuB;IACvB,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,sFAAsF;IACtF,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,iCAAiC;IACjC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,CAAA;IAC9B,0BAA0B;IAC1B,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,EAAE;QACV,kCAAkC;QAClC,UAAU,EAAE,MAAM,CAAA;QAClB,0DAA0D;QAC1D,IAAI,EAAE,OAAO,sBAAsB,EAAE,GAAG,CAAC,SAAS,CAAA;KACnD,CAAA;CACF;AAED,MAAM,WAAW,yBAA0B,SAAQ,uBAAuB;IACxE;;;OAGG;IACH,SAAS,CAAC,EAAE;QACV,UAAU,EAAE,MAAM,CAAA;QAClB,IAAI,EAAE,OAAO,sBAAsB,EAAE,GAAG,CAAC,SAAS,CAAA;KACnD,CAAA;CACF;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,+CAA+C;IAC/C,KAAK,EAAE,SAAS,CAAA;IAChB,yDAAyD;IACzD,OAAO,EAAE,OAAO,CAAA;IAChB,sEAAsE;IACtE,SAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,GAAG,MAAM,IAAI,CAAA;CAC9D;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,kEAAkE;IAClE,aAAa,EAAE,mBAAmB,CAAA;IAClC,gFAAgF;IAChF,eAAe,CAAC,EAAE,UAAU,CAAA;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,iCAAiC;IACjC,UAAU,EAAE,GAAG,CAAC,gBAAgB,CAAA;IAChC,+CAA+C;IAC/C,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,GAAG,EAAE,OAAO,GAAG,CAAA;KAAE,KAAK,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAA;CAC1D;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7B;;;;OAIG;IACH,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAA;IACrC;;;;OAIG;IACH,WAAW,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAA;CAC3C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/visitor/candid/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE5C,wBAAgB,UAAU,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAa/D;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAuEvE"}
|