@helios-lang/contract-utils 0.1.13 → 0.1.15

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@helios-lang/contract-utils",
3
- "version": "0.1.13",
3
+ "version": "0.1.15",
4
4
  "description": "Convenience and type-safety utilities for using Helios validators from within Typescript",
5
5
  "main": "src/index.js",
6
6
  "types": "types/index.d.ts",
package/src/lib/Lib.js CHANGED
@@ -11,8 +11,17 @@
11
11
  /**
12
12
  * @typedef {{
13
13
  * cborHex: string
14
+ * prettyIR: string
14
15
  * }} CompileOutput
15
16
  */
17
+
18
+ /**
19
+ * @typedef {{
20
+ * isMainnet?: boolean
21
+ * checkCasts?: boolean
22
+ * }} LibOptions
23
+ */
24
+
16
25
  /**
17
26
  * @typedef {{
18
27
  * version: string
@@ -1,3 +1,6 @@
1
+ import { bytesToHex } from "@helios-lang/compiler"
2
+ import { readHeader } from "@helios-lang/compiler-utils"
3
+
1
4
  /**
2
5
  * @typedef {import("../codegen/index.js").Module} ModuleDetails
3
6
  * @typedef {import("../codegen/index.js").Validator} ValidatorDetails
@@ -5,13 +8,10 @@
5
8
  * @typedef {import("./Lib.js").CompileOptions} CompileOptions
6
9
  * @typedef {import("./Lib.js").CompileOutput} CompileOutput
7
10
  * @typedef {import("./Lib.js").Lib} Lib
11
+ * @typedef {import("./Lib.js").LibOptions} LibOptions
8
12
  * @typedef {import("./Lib.js").SourceDetails} SourceDetails
9
13
  */
10
14
 
11
- import { bytesToHex } from "@helios-lang/compiler"
12
- import { readHeader } from "@helios-lang/compiler-utils"
13
- import { UplcProgramV1 } from "@helios-lang/uplc"
14
-
15
15
  /**
16
16
  * @typedef {{
17
17
  * [name: string]: string[]
@@ -116,9 +116,15 @@ import { UplcProgramV1 } from "@helios-lang/uplc"
116
116
  export class Lib_v0_16 {
117
117
  /**
118
118
  * @param {any} lib
119
+ * @param {LibOptions} options
119
120
  */
120
- constructor(lib) {
121
+ constructor(lib, { isMainnet, checkCasts }) {
121
122
  this.lib = lib
123
+
124
+ this.lib.config.set({
125
+ IS_TESTNET: !(isMainnet ?? false),
126
+ CHECK_CASTS: checkCasts ?? false
127
+ })
122
128
  }
123
129
 
124
130
  /**
@@ -423,6 +429,7 @@ export class Lib_v0_16 {
423
429
  const cborHex = bytesToHex(irProgram.toUplc().toCbor())
424
430
 
425
431
  return {
432
+ prettyIR: irProgram.program.annotate(),
426
433
  cborHex
427
434
  }
428
435
  } else {
@@ -431,6 +438,7 @@ export class Lib_v0_16 {
431
438
  const cborHex = bytesToHex(irProgram.toUplc().toCbor())
432
439
 
433
440
  return {
441
+ prettyIR: irProgram.program.annotate(),
434
442
  cborHex
435
443
  }
436
444
  }
package/src/lib/index.js CHANGED
@@ -2,4 +2,5 @@ export { loadLibrary } from "./load.js"
2
2
 
3
3
  /**
4
4
  * @typedef {import("./Lib.js").Lib} Lib
5
+ * @typedef {import("./Lib.js").LibOptions} LibOptions
5
6
  */
package/src/lib/load.js CHANGED
@@ -4,19 +4,21 @@ import { Lib_v0_16 } from "./Libg_v0_16.js"
4
4
 
5
5
  /**
6
6
  * @typedef {import("./Lib.js").Lib} Lib
7
+ * @typedef {import("./Lib.js").LibOptions} LibOptions
7
8
  */
8
9
 
9
10
  /**
11
+ * @param {LibOptions} options
10
12
  * @returns {Lib}
11
13
  */
12
- export function loadLibrary() {
14
+ export function loadLibrary(options = {}) {
13
15
  const [major, minor] = getVersion(lib)
14
16
 
15
17
  switch (major) {
16
18
  case 0:
17
19
  switch (minor) {
18
20
  case 16:
19
- return new Lib_v0_16(lib)
21
+ return new Lib_v0_16(lib, options)
20
22
  }
21
23
  default:
22
24
  throw new Error(`compiler version ${lib.VERSION} not supported`)
@@ -13,6 +13,7 @@ import { ContractContext } from "./ContractContext.js"
13
13
 
14
14
  /**
15
15
  * @typedef {import("../lib/index.js").Lib} Lib
16
+ * @typedef {import("../lib/index.js").LibOptions} LibOptions
16
17
  * @typedef {import("./ContractContext.js").Validator} CompiledValidator
17
18
  */
18
19
 
@@ -121,8 +122,8 @@ export class ContractContextBuilder {
121
122
  }
122
123
 
123
124
  /**
124
- *
125
125
  * @param {Option<{[name: string]: string}>} expectedHashes
126
+ * @param {LibOptions} options
126
127
  * @returns {{
127
128
  * [K in keyof T]:
128
129
  * T[K]["$purpose"] extends "spending" ? ValidatorHash<
@@ -147,8 +148,8 @@ export class ContractContextBuilder {
147
148
  * > : never
148
149
  * }}
149
150
  */
150
- build(expectedHashes = None) {
151
- const lib = loadLibrary()
151
+ build(expectedHashes = None, options = {}) {
152
+ const lib = loadLibrary(options)
152
153
 
153
154
  const allValidatorTypes = this.getValidatorTypes(lib)
154
155
 
@@ -229,7 +230,7 @@ export class ContractContextBuilder {
229
230
  function buildValidator(validator) {
230
231
  const name = validator.$name
231
232
 
232
- if (name in validator) {
233
+ if (name in validators) {
233
234
  return
234
235
  }
235
236
 
@@ -239,7 +240,7 @@ export class ContractContextBuilder {
239
240
 
240
241
  const modules = collectModules(validator)
241
242
 
242
- const { cborHex: optimizedCborHex } = lib.compile(
243
+ const { cborHex: optimizedCborHex, prettyIR } = lib.compile(
243
244
  validator.$sourceCode,
244
245
  Array.from(modules.values()),
245
246
  {
@@ -256,6 +257,8 @@ export class ContractContextBuilder {
256
257
 
257
258
  if (expectedHashes && name in expectedHashes) {
258
259
  if (expectedHashes[name] != ownHash) {
260
+ console.log(prettyIR)
261
+
259
262
  throw new Error(
260
263
  `expected hash ${expectedHashes[name]} for validator ${name}, got ${ownHash}`
261
264
  )
@@ -300,34 +303,25 @@ export class ContractContextBuilder {
300
303
  UplcProgramV2.fromCbor(unoptimizedCborHex)
301
304
 
302
305
  if (purpose == "spending") {
303
- validators[validator.$name] = new ValidatorHash(
304
- ownTypedHash.bytes,
305
- {
306
- program: optimizedProgram.withAlt(unoptimizedProgram),
307
- datum: expectSome(validator.$Datum),
308
- redeemer: validator.$Redeemer
309
- }
310
- )
306
+ validators[name] = new ValidatorHash(ownHash, {
307
+ program: optimizedProgram.withAlt(unoptimizedProgram),
308
+ datum: expectSome(validator.$Datum),
309
+ redeemer: validator.$Redeemer
310
+ })
311
311
  } else if (purpose == "minting") {
312
- validators[validator.$name] = new MintingPolicyHash(
313
- ownTypedHash.bytes,
314
- {
315
- program: optimizedProgram.withAlt(unoptimizedProgram),
316
- redeemer: validator.$Redeemer
317
- }
318
- )
312
+ validators[name] = new MintingPolicyHash(ownHash, {
313
+ program: optimizedProgram.withAlt(unoptimizedProgram),
314
+ redeemer: validator.$Redeemer
315
+ })
319
316
  } else if (
320
317
  purpose == "staking" ||
321
318
  purpose == "certifying" ||
322
319
  purpose == "rewarding"
323
320
  ) {
324
- validators[validator.$name] = new StakingValidatorHash(
325
- ownTypedHash.bytes,
326
- {
327
- program: optimizedProgram.withAlt(unoptimizedProgram),
328
- redeemer: validator.$Redeemer
329
- }
330
- )
321
+ validators[name] = new StakingValidatorHash(ownHash, {
322
+ program: optimizedProgram.withAlt(unoptimizedProgram),
323
+ redeemer: validator.$Redeemer
324
+ })
331
325
  } else {
332
326
  throw new Error("unhandled purpose")
333
327
  }
@@ -10,8 +10,15 @@
10
10
  /**
11
11
  * @typedef {{
12
12
  * cborHex: string
13
+ * prettyIR: string
13
14
  * }} CompileOutput
14
15
  */
16
+ /**
17
+ * @typedef {{
18
+ * isMainnet?: boolean
19
+ * checkCasts?: boolean
20
+ * }} LibOptions
21
+ */
15
22
  /**
16
23
  * @typedef {{
17
24
  * version: string
@@ -56,6 +63,11 @@ export type CompileOptions = {
56
63
  };
57
64
  export type CompileOutput = {
58
65
  cborHex: string;
66
+ prettyIR: string;
67
+ };
68
+ export type LibOptions = {
69
+ isMainnet?: boolean;
70
+ checkCasts?: boolean;
59
71
  };
60
72
  export type Lib = {
61
73
  version: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Lib.d.ts","sourceRoot":"","sources":["../../src/lib/Lib.js"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;GAIG;AACH;;;;;;;;GAQG;AAEH;;;;GAIG;AAEH;;;;;;GAMG;AAEH;;;GAGG;AACH,gCAHW;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,GACf,MAAM,EAAE,CAIpB;;;;;;;qBA1CgD,MAAM;kBAAQ,MAAM;;;;;cAGtD,OAAO;;4BAKT;IACZ,OAAW,EAAE,MAAM,CAAA;CAChB;;aAIU,MAAM;gCACa,MAAM,KAAK,GAAG;;;;;;;;;;;;;oBAG1B,MAAM,WAAW,MAAM,EAAE,WAAW,cAAc,KAAK,aAAa;;kCAK5E,OAAO,qBAAqB,EAAE,UAAU;4BACxC,OAAO,qBAAqB,EAAE,MAAM;+BACpC,OAAO,qBAAqB,EAAE,SAAS;4BAIvC;IACZ,MAAU,MAAM,CAAA;IAChB,OAAW,EAAE,MAAM,CAAA;IACnB,UAAc,EAAE,MAAM,CAAA;CACnB"}
1
+ {"version":3,"file":"Lib.d.ts","sourceRoot":"","sources":["../../src/lib/Lib.js"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;GAKG;AAEH;;;;;GAKG;AAEH;;;;;;;;GAQG;AAEH;;;;GAIG;AAEH;;;;;;GAMG;AAEH;;;GAGG;AACH,gCAHW;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,GACf,MAAM,EAAE,CAIpB;;;;;;;qBAnDgD,MAAM;kBAAQ,MAAM;;;;;cAGtD,OAAO;;4BAKT;IACZ,OAAW,EAAE,MAAM,CAAA;IACnB,QAAY,EAAE,MAAM,CAAA;CACjB;yBAIS;IACZ,SAAa,CAAC,EAAE,OAAO,CAAA;IACvB,UAAc,CAAC,EAAE,OAAO,CAAA;CACrB;;aAKU,MAAM;gCACa,MAAM,KAAK,GAAG;;;;;;;;;;;;;oBAG1B,MAAM,WAAW,MAAM,EAAE,WAAW,cAAc,KAAK,aAAa;;kCAK5E,OAAO,qBAAqB,EAAE,UAAU;4BACxC,OAAO,qBAAqB,EAAE,MAAM;+BACpC,OAAO,qBAAqB,EAAE,SAAS;4BAIvC;IACZ,MAAU,MAAM,CAAA;IAChB,OAAW,EAAE,MAAM,CAAA;IACnB,UAAc,EAAE,MAAM,CAAA;CACnB"}
@@ -1,3 +1,13 @@
1
+ /**
2
+ * @typedef {import("../codegen/index.js").Module} ModuleDetails
3
+ * @typedef {import("../codegen/index.js").Validator} ValidatorDetails
4
+ * @typedef {import("../codegen/index.js").TypeSchema} InternalTypeDetails
5
+ * @typedef {import("./Lib.js").CompileOptions} CompileOptions
6
+ * @typedef {import("./Lib.js").CompileOutput} CompileOutput
7
+ * @typedef {import("./Lib.js").Lib} Lib
8
+ * @typedef {import("./Lib.js").LibOptions} LibOptions
9
+ * @typedef {import("./Lib.js").SourceDetails} SourceDetails
10
+ */
1
11
  /**
2
12
  * @typedef {{
3
13
  * [name: string]: string[]
@@ -90,8 +100,9 @@
90
100
  export class Lib_v0_16 implements Lib {
91
101
  /**
92
102
  * @param {any} lib
103
+ * @param {LibOptions} options
93
104
  */
94
- constructor(lib: any);
105
+ constructor(lib: any, { isMainnet, checkCasts }: LibOptions);
95
106
  lib: any;
96
107
  /**
97
108
  * @type {string}
@@ -165,6 +176,7 @@ export type InternalTypeDetails = import("../codegen/index.js").TypeSchema;
165
176
  export type CompileOptions = import("./Lib.js").CompileOptions;
166
177
  export type CompileOutput = import("./Lib.js").CompileOutput;
167
178
  export type Lib = import("./Lib.js").Lib;
179
+ export type LibOptions = import("./Lib.js").LibOptions;
168
180
  export type SourceDetails = import("./Lib.js").SourceDetails;
169
181
  export type DagDependencies = {
170
182
  [name: string]: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"Libg_v0_16.d.ts","sourceRoot":"","sources":["../../src/lib/Libg_v0_16.js"],"names":[],"mappings":"AAcA;;;;GAIG;AAEH;;;GAGG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH;;GAEG;AAEH;;;;;;GAMG;AACH;;;;;;;;;GASG;AAEH;;;;GAIG;AAEH;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH;;;;GAIG;AAEH;;;;;;GAMG;AAEH;;;GAGG;AAEH;;GAEG;AACH;IACI;;OAEG;IACH,iBAFW,GAAG,EAIb;IADG,SAAc;IAGlB;;OAEG;IACH,sBAEC;IAED;;;OAGG;IACH,0BAHW,MAAM,GACJ,QAAQ,CAapB;IAED;;;;;;OAMG;IACH,uBAcC;IAED;;;;;OAKG;IACH,iBAWC;IAED;;;;;OAKG;IACH,6BAeC;IAED;;;;OAIG;IACH;;;;;;;;;;;MAuEC;IAED;;;OAGG;IACH,wBAHW,UAAU,GACR,mBAAmB,CAgC/B;IAED;;;OAGG;IACH,2BAHW,QAAQ,GACN,mBAAmB,CAc/B;IAED;;;;;OAKG;IACH,cALW,MAAM,WACN,MAAM,EAAE,WACR,cAAc,GACZ,aAAa,CAwFzB;CACJ;4BApbY,OAAO,qBAAqB,EAAE,MAAM;+BACpC,OAAO,qBAAqB,EAAE,SAAS;kCACvC,OAAO,qBAAqB,EAAE,UAAU;6BACxC,OAAO,UAAU,EAAE,cAAc;4BACjC,OAAO,UAAU,EAAE,aAAa;kBAChC,OAAO,UAAU,EAAE,GAAG;4BACtB,OAAO,UAAU,EAAE,aAAa;;;;uBAchC,EACT;;kBAKe,MAAM,KAAK,OAAO;;4BAKxB;IACZ,MAAU,MAAM,CAAA;CACb;8BAIS;IACZ,MAAU,MAAM,CAAA;CACb;wBAIS,eAAe,GAAG,aAAa,GAAG,GAAG;;UAKvC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC;8BACK,MAAM,EAAE,KAAK,MAAM,EAAE;gBACnC,SAAS,EAAE;;;UAKjB,MAAM;gBACA,GAAG,SAAS,IAAI,MAAM,EAAE,EAAE,CAAC,KAAK,EAAE;WACvC,SAAS;yBACK,MAAM,EAAE;gBACjB,MAAM;kBACJ,QAAQ,EAAE;;uBAKhB;IACZ,WAAe,CAAC,EAAE,WAAW,CAAA;CAC1B;yBAIS;IACZ,IAAQ,EAAG,MAAM,CAAA;CACd,GAAG;IACN,IAAQ,EAAM,MAAM,CAAA;IACpB,QAAY,EAAE,UAAU,CAAA;CACrB,GAAG;IACN,IAAQ,EAAO,KAAK,CAAA;IACpB,OAAW,EAAI,UAAU,CAAA;IACzB,SAAa,EAAE,UAAU,CAAA;CACtB,GAAG;IACN,IAAQ,EAAM,QAAQ,CAAA;IACtB,QAAY,EAAE,UAAU,CAAA;CACrB,GAAG;IACN,IAAQ,EAAQ,QAAQ,CAAA;IACxB,UAAc,EAAE,eAAe,EAAE,CAAA;CAC9B,GAAG;IACN,IAAQ,EAAU,MAAM,CAAA;IACxB,YAAgB,EAAE;QAAC,MAAM,MAAM,CAAC;QAAC,UAAU,EAAE,eAAe,EAAE,CAAA;KAAC,EAAE,CAAA;CAC9D;8BAIS;IACZ,MAAU,MAAM,CAAA;CACb,GAAG,UAAU;0BAIJ;IACZ,SAAa,EAAE,MAAM,CAAA;IACrB,UAAc,EAAE,MAAM,CAAA;IACtB,YAAgB,EAAE,UAAU,CAAA;CACzB;wBAIS,EACT"}
1
+ {"version":3,"file":"Libg_v0_16.d.ts","sourceRoot":"","sources":["../../src/lib/Libg_v0_16.js"],"names":[],"mappings":"AAGA;;;;;;;;;GASG;AAEH;;;;GAIG;AAEH;;;GAGG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH;;GAEG;AAEH;;;;;;GAMG;AACH;;;;;;;;;GASG;AAEH;;;;GAIG;AAEH;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH;;;;GAIG;AAEH;;;;;;GAMG;AAEH;;;GAGG;AAEH;;GAEG;AACH;IACI;;;OAGG;IACH,iBAHW,GAAG,6BACH,UAAU,EASpB;IANG,SAAc;IAQlB;;OAEG;IACH,sBAEC;IAED;;;OAGG;IACH,0BAHW,MAAM,GACJ,QAAQ,CAapB;IAED;;;;;;OAMG;IACH,uBAcC;IAED;;;;;OAKG;IACH,iBAWC;IAED;;;;;OAKG;IACH,6BAeC;IAED;;;;OAIG;IACH;;;;;;;;;;;MAuEC;IAED;;;OAGG;IACH,wBAHW,UAAU,GACR,mBAAmB,CAgC/B;IAED;;;OAGG;IACH,2BAHW,QAAQ,GACN,mBAAmB,CAc/B;IAED;;;;;OAKG;IACH,cALW,MAAM,WACN,MAAM,EAAE,WACR,cAAc,GACZ,aAAa,CA0FzB;CACJ;4BAzbY,OAAO,qBAAqB,EAAE,MAAM;+BACpC,OAAO,qBAAqB,EAAE,SAAS;kCACvC,OAAO,qBAAqB,EAAE,UAAU;6BACxC,OAAO,UAAU,EAAE,cAAc;4BACjC,OAAO,UAAU,EAAE,aAAa;kBAChC,OAAO,UAAU,EAAE,GAAG;yBACtB,OAAO,UAAU,EAAE,UAAU;4BAC7B,OAAO,UAAU,EAAE,aAAa;;;;uBAUhC,EACT;;kBAKe,MAAM,KAAK,OAAO;;4BAKxB;IACZ,MAAU,MAAM,CAAA;CACb;8BAIS;IACZ,MAAU,MAAM,CAAA;CACb;wBAIS,eAAe,GAAG,aAAa,GAAG,GAAG;;UAKvC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC;8BACK,MAAM,EAAE,KAAK,MAAM,EAAE;gBACnC,SAAS,EAAE;;;UAKjB,MAAM;gBACA,GAAG,SAAS,IAAI,MAAM,EAAE,EAAE,CAAC,KAAK,EAAE;WACvC,SAAS;yBACK,MAAM,EAAE;gBACjB,MAAM;kBACJ,QAAQ,EAAE;;uBAKhB;IACZ,WAAe,CAAC,EAAE,WAAW,CAAA;CAC1B;yBAIS;IACZ,IAAQ,EAAG,MAAM,CAAA;CACd,GAAG;IACN,IAAQ,EAAM,MAAM,CAAA;IACpB,QAAY,EAAE,UAAU,CAAA;CACrB,GAAG;IACN,IAAQ,EAAO,KAAK,CAAA;IACpB,OAAW,EAAI,UAAU,CAAA;IACzB,SAAa,EAAE,UAAU,CAAA;CACtB,GAAG;IACN,IAAQ,EAAM,QAAQ,CAAA;IACtB,QAAY,EAAE,UAAU,CAAA;CACrB,GAAG;IACN,IAAQ,EAAQ,QAAQ,CAAA;IACxB,UAAc,EAAE,eAAe,EAAE,CAAA;CAC9B,GAAG;IACN,IAAQ,EAAU,MAAM,CAAA;IACxB,YAAgB,EAAE;QAAC,MAAM,MAAM,CAAC;QAAC,UAAU,EAAE,eAAe,EAAE,CAAA;KAAC,EAAE,CAAA;CAC9D;8BAIS;IACZ,MAAU,MAAM,CAAA;CACb,GAAG,UAAU;0BAIJ;IACZ,SAAa,EAAE,MAAM,CAAA;IACrB,UAAc,EAAE,MAAM,CAAA;IACtB,YAAgB,EAAE,UAAU,CAAA;CACzB;wBAIS,EACT"}
@@ -1,3 +1,4 @@
1
1
  export { loadLibrary } from "./load.js";
2
2
  export type Lib = import("./Lib.js").Lib;
3
+ export type LibOptions = import("./Lib.js").LibOptions;
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.js"],"names":[],"mappings":";kBAGa,OAAO,UAAU,EAAE,GAAG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.js"],"names":[],"mappings":";kBAGa,OAAO,UAAU,EAAE,GAAG;yBACtB,OAAO,UAAU,EAAE,UAAU"}
@@ -1,9 +1,12 @@
1
1
  /**
2
2
  * @typedef {import("./Lib.js").Lib} Lib
3
+ * @typedef {import("./Lib.js").LibOptions} LibOptions
3
4
  */
4
5
  /**
6
+ * @param {LibOptions} options
5
7
  * @returns {Lib}
6
8
  */
7
- export function loadLibrary(): Lib;
9
+ export function loadLibrary(options?: LibOptions): Lib;
8
10
  export type Lib = import("./Lib.js").Lib;
11
+ export type LibOptions = import("./Lib.js").LibOptions;
9
12
  //# sourceMappingURL=load.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../../src/lib/load.js"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;GAEG;AACH,+BAFa,GAAG,CAcf;kBAlBY,OAAO,UAAU,EAAE,GAAG"}
1
+ {"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../../src/lib/load.js"],"names":[],"mappings":"AAIA;;;GAGG;AAEH;;;GAGG;AACH,sCAHW,UAAU,GACR,GAAG,CAcf;kBApBY,OAAO,UAAU,EAAE,GAAG;yBACtB,OAAO,UAAU,EAAE,UAAU"}
@@ -1,5 +1,6 @@
1
1
  /**
2
2
  * @typedef {import("../lib/index.js").Lib} Lib
3
+ * @typedef {import("../lib/index.js").LibOptions} LibOptions
3
4
  * @typedef {import("./ContractContext.js").Validator} CompiledValidator
4
5
  */
5
6
  /**
@@ -82,8 +83,8 @@ export class ContractContextBuilder<T extends {
82
83
  */
83
84
  private getValidatorTypes;
84
85
  /**
85
- *
86
86
  * @param {Option<{[name: string]: string}>} expectedHashes
87
+ * @param {LibOptions} options
87
88
  * @returns {{
88
89
  * [K in keyof T]:
89
90
  * T[K]["$purpose"] extends "spending" ? ValidatorHash<
@@ -110,9 +111,10 @@ export class ContractContextBuilder<T extends {
110
111
  */
111
112
  build(expectedHashes?: Option<{
112
113
  [name: string]: string;
113
- }>): { [K_1 in keyof T]: T[K_1]["$purpose"] extends "spending" ? ValidatorHash<SpendingContext<import("./StrictType.js").StrictType<T[K_1]["$Datum"]>, import("./PermissiveType.js").PermissiveType<T[K_1]["$Datum"]>, import("./StrictType.js").StrictType<T[K_1]["$Redeemer"]>, import("./PermissiveType.js").PermissiveType<T[K_1]["$Redeemer"]>>> : T[K_1]["$purpose"] extends "minting" ? MintingPolicyHash<MintingContext<import("./StrictType.js").StrictType<T[K_1]["$Redeemer"]>, import("./PermissiveType.js").PermissiveType<T[K_1]["$Redeemer"]>>> : T[K_1]["$purpose"] extends "certifying" | "rewarding" ? StakingValidatorHash<StakingContext<import("./StrictType.js").StrictType<T[K_1]["$Redeemer"]>, import("./PermissiveType.js").PermissiveType<T[K_1]["$Redeemer"]>>> : never; };
114
+ }>, options?: LibOptions): { [K_1 in keyof T]: T[K_1]["$purpose"] extends "spending" ? ValidatorHash<SpendingContext<import("./StrictType.js").StrictType<T[K_1]["$Datum"]>, import("./PermissiveType.js").PermissiveType<T[K_1]["$Datum"]>, import("./StrictType.js").StrictType<T[K_1]["$Redeemer"]>, import("./PermissiveType.js").PermissiveType<T[K_1]["$Redeemer"]>>> : T[K_1]["$purpose"] extends "minting" ? MintingPolicyHash<MintingContext<import("./StrictType.js").StrictType<T[K_1]["$Redeemer"]>, import("./PermissiveType.js").PermissiveType<T[K_1]["$Redeemer"]>>> : T[K_1]["$purpose"] extends "certifying" | "rewarding" ? StakingValidatorHash<StakingContext<import("./StrictType.js").StrictType<T[K_1]["$Redeemer"]>, import("./PermissiveType.js").PermissiveType<T[K_1]["$Redeemer"]>>> : never; };
114
115
  }
115
116
  export type Lib = import("../lib/index.js").Lib;
117
+ export type LibOptions = import("../lib/index.js").LibOptions;
116
118
  export type CompiledValidator = import("./ContractContext.js").Validator;
117
119
  export type MintingContext<TRedeemerStrict, TRedeemerPermissive> = import("@helios-lang/ledger").MintingContext<TRedeemerStrict, TRedeemerPermissive>;
118
120
  export type SpendingContext<TDatumStrict, TDatumPermissive, TRedeemerStrict, TRedeemerPermissive> = import("@helios-lang/ledger").SpendingContext<TDatumStrict, TDatumPermissive, TRedeemerStrict, TRedeemerPermissive>;
@@ -1 +1 @@
1
- {"version":3,"file":"ContractContextBuilder.d.ts","sourceRoot":"","sources":["../../src/runtime/ContractContextBuilder.js"],"names":[],"mappings":"AAaA;;;GAGG;AAEH;;;;GAIG;AAEH;;;;;;GAMG;AAEH;;;;GAIG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;;;;GAMG;AAEH;;;;;;;;;;;GAWG;AAEH;;GAEG;AACH;;;IAgBI;;OAEG;IACH,gBAFa,uBAAuB,EAAE,CAAC,CAItC;IAbD;;;OAGG;IACH,sBAEC;IAbD;;;;OAIG;IACH,4BAAU;IAiBV;;;;;;OAMG;IACH,+FAKC;IAED;;;;OAIG;IACH,0BAMC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH;;2wBA+LC;CACJ;kBAvUY,OAAO,iBAAiB,EAAE,GAAG;gCAC7B,OAAO,sBAAsB,EAAE,SAAS;mEAMxC,OAAO,qBAAqB,EAAE,cAAc,CAAC,eAAe,EAAE,mBAAmB,CAAC;oGAQlF,OAAO,qBAAqB,EAAE,eAAe,CAAC,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,CAAC;mEAMnH,OAAO,qBAAqB,EAAE,cAAc,CAAC,eAAe,EAAE,mBAAmB,CAAC;6HAKlF,OAAO,qBAAqB,EAAE,cAAc,CAAC,CAAC,CAAC;yHAK/C,OAAO,iBAAiB,EAAE,UAAU,CAAC,CAAC,CAAC;qBAIvC;IACZ,KAAS,EAAE,MAAM,CAAA;IACjB,WAAe,EAAE,MAAM,CAAA;IACvB,aAAiB,EAAE,MAAM,EAAE,CAAA;CACxB;wBAIS;IACZ,KAAS,EAAE,MAAM,CAAA;IACjB,QAAY,EAAE,MAAM,CAAA;IACpB,WAAe,EAAE,MAAM,CAAA;IACvB,aAAiB,EAAE,MAAM,EAAE,CAAA;IAC3B,iBAAqB,EAAE,SAAS,EAAE,CAAA;IAClC,iBAAqB,EAAE,OAAO,CAAA;IAC9B,SAAa,EAAE,KAAK,GAAG,EAAE,GAAG,CAAC,CAAA;IAC7B,MAAU,CAAC,EAAE,KAAK,GAAG,EAAE,GAAG,CAAC,CAAA;CACxB;8BA5DG,qBAAqB;kCAArB,qBAAqB;qCAArB,qBAAqB;qBAIP,WAAW"}
1
+ {"version":3,"file":"ContractContextBuilder.d.ts","sourceRoot":"","sources":["../../src/runtime/ContractContextBuilder.js"],"names":[],"mappings":"AAaA;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;;;GAMG;AAEH;;;;GAIG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;;;;GAMG;AAEH;;;;;;;;;;;GAWG;AAEH;;GAEG;AACH;;;IAgBI;;OAEG;IACH,gBAFa,uBAAuB,EAAE,CAAC,CAItC;IAbD;;;OAGG;IACH,sBAEC;IAbD;;;;OAIG;IACH,4BAAU;IAiBV;;;;;;OAMG;IACH,+FAKC;IAED;;;;OAIG;IACH,0BAMC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH;;kBAzBW,UAAU,qwBAiNpB;CACJ;kBAjUY,OAAO,iBAAiB,EAAE,GAAG;yBAC7B,OAAO,iBAAiB,EAAE,UAAU;gCACpC,OAAO,sBAAsB,EAAE,SAAS;mEAMxC,OAAO,qBAAqB,EAAE,cAAc,CAAC,eAAe,EAAE,mBAAmB,CAAC;oGAQlF,OAAO,qBAAqB,EAAE,eAAe,CAAC,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,CAAC;mEAMnH,OAAO,qBAAqB,EAAE,cAAc,CAAC,eAAe,EAAE,mBAAmB,CAAC;6HAKlF,OAAO,qBAAqB,EAAE,cAAc,CAAC,CAAC,CAAC;yHAK/C,OAAO,iBAAiB,EAAE,UAAU,CAAC,CAAC,CAAC;qBAIvC;IACZ,KAAS,EAAE,MAAM,CAAA;IACjB,WAAe,EAAE,MAAM,CAAA;IACvB,aAAiB,EAAE,MAAM,EAAE,CAAA;CACxB;wBAIS;IACZ,KAAS,EAAE,MAAM,CAAA;IACjB,QAAY,EAAE,MAAM,CAAA;IACpB,WAAe,EAAE,MAAM,CAAA;IACvB,aAAiB,EAAE,MAAM,EAAE,CAAA;IAC3B,iBAAqB,EAAE,SAAS,EAAE,CAAA;IAClC,iBAAqB,EAAE,OAAO,CAAA;IAC9B,SAAa,EAAE,KAAK,GAAG,EAAE,GAAG,CAAC,CAAA;IAC7B,MAAU,CAAC,EAAE,KAAK,GAAG,EAAE,GAAG,CAAC,CAAA;CACxB;8BA7DG,qBAAqB;kCAArB,qBAAqB;qCAArB,qBAAqB;qBAIP,WAAW"}