@helios-lang/contract-utils 0.2.32 → 0.2.34

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.2.32",
3
+ "version": "0.2.34",
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/cast/Cast.js CHANGED
@@ -12,6 +12,8 @@ import {
12
12
  StakingValidatorHash,
13
13
  TimeRange,
14
14
  TxId,
15
+ TxInput,
16
+ TxOutput,
15
17
  TxOutputDatum,
16
18
  TxOutputId,
17
19
  ValidatorHash,
@@ -161,6 +163,10 @@ function schemaToUplc(schema, x, defs = {}) {
161
163
  return TimeRange.new(x).toUplcData()
162
164
  case "TxId":
163
165
  return TxId.new(x).toUplcData()
166
+ case "TxInput":
167
+ return /** @type {TxInput} */ (x).toUplcData()
168
+ case "TxOutput":
169
+ return /** @type {TxOutput} */ (x).toUplcData()
164
170
  case "TxOutputDatum":
165
171
  return x
166
172
  ? TxOutputDatum.new(x)?.toUplcData() ??
@@ -189,6 +195,10 @@ function schemaToUplc(schema, x, defs = {}) {
189
195
  ])
190
196
  )
191
197
  }
198
+ case "tuple":
199
+ return new ListData(
200
+ x.map((x, i) => schemaToUplc(schema.itemTypes[i], x, defs))
201
+ )
192
202
  case "option":
193
203
  return encodeOptionData(
194
204
  x ? schemaToUplc(schema.someType, x, defs) : None
@@ -321,6 +331,10 @@ function uplcToSchema(schema, data, config, defs = {}) {
321
331
  return TimeRange.fromUplcData(data)
322
332
  case "TxId":
323
333
  return TxId.fromUplcData(data)
334
+ case "TxInput":
335
+ return TxInput.fromUplcData(config.isMainnet, data)
336
+ case "TxOutput":
337
+ return TxOutput.fromUplcData(config.isMainnet, data)
324
338
  case "TxOutputId":
325
339
  return TxOutputId.fromUplcData(data)
326
340
  case "ValidatorHash":
@@ -342,6 +356,10 @@ function uplcToSchema(schema, data, config, defs = {}) {
342
356
  uplcToSchema(schema.valueType, v, config, defs)
343
357
  ])
344
358
  )
359
+ case "tuple":
360
+ return ListData.expect(data).items.map((x, i) =>
361
+ uplcToSchema(schema.itemTypes[i], x, config, defs)
362
+ )
345
363
  case "option": {
346
364
  const optionData = decodeOptionData(data)
347
365
  return optionData
@@ -188,6 +188,8 @@ export class LoadedScriptsWriter {
188
188
  "StakingValidatorHash",
189
189
  "TimeRange",
190
190
  "TxId",
191
+ "TxInput",
192
+ "TxOutput",
191
193
  "TxOutputDatum",
192
194
  "ValidatorHash",
193
195
  "Value"
@@ -76,6 +76,10 @@ export function genTypes(schema) {
76
76
  ]
77
77
  case "TxId":
78
78
  return ["TxId", "TxId | string | number[]"]
79
+ case "TxInput":
80
+ return ["TxInput", "TxInput"]
81
+ case "TxOutput":
82
+ return ["TxOutput", "TxOutput"]
79
83
  case "TxOutputDatum":
80
84
  return [
81
85
  "TxOutputDatum | null",
@@ -106,6 +110,14 @@ export function genTypes(schema) {
106
110
 
107
111
  return [`Map<${ck}, ${cv}>`, `Map<${pk}, ${pv}> | [${pk}, ${pv}][]`]
108
112
  }
113
+ case "tuple": {
114
+ const itemTypes = schema.itemTypes.map((it) => genTypes(it))
115
+
116
+ return [
117
+ `[${itemTypes.map((it) => it[0]).join(", ")}]`,
118
+ `[${itemTypes.map((it) => it[1]).join(", ")}]`
119
+ ]
120
+ }
109
121
  case "option": {
110
122
  const [c, p] = genTypes(schema.someType)
111
123
  return [`(${c}) | null`, `(${p}) | null | undefined`]
@@ -1 +1 @@
1
- {"version":3,"file":"Cast.d.ts","sourceRoot":"","sources":["../../src/cast/Cast.js"],"names":[],"mappings":"AAgdA;;;;;;GAMG;AACH,kGAHW,UAAU,8BASpB;AA3bD;;;GAGG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;;GAKG;AAEH;;;GAGG;AACH;IAaI;;;OAGG;IACH,oBAHW,UAAU,UACV,UAAU,EAKpB;IAnBD;;;OAGG;IACH,iBAFU,UAAU,CAEd;IAEN;;;OAGG;IACH,iBAFU,UAAU,CAEd;IAWN;;;OAGG;IACH,mBAHW,QAAQ,GACN,OAAO,CAInB;IAED;;;OAGG;IACH,cAHW,WAAW,GACT,QAAQ,CAIpB;CACJ;uBAhEY,OAAO,mBAAmB,EAAE,QAAQ;yBACpC,OAAO,qBAAqB,EAAE,UAAU;yBAIxC;IACZ,SAAa,EAAE,OAAO,CAAA;CACnB;8DAMkB,UAAU,KAAK,KAAK,OAAO,EAAE,WAAW,CAAC;;;;6CAOlD,KAAK,OAAO,EAAE,WAAW,CAAC,GAAG,iBAAiB,OAAO,EAAE,WAAW,CAAC"}
1
+ {"version":3,"file":"Cast.d.ts","sourceRoot":"","sources":["../../src/cast/Cast.js"],"names":[],"mappings":"AAkeA;;;;;;GAMG;AACH,kGAHW,UAAU,8BASpB;AA3cD;;;GAGG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;;GAKG;AAEH;;;GAGG;AACH;IAaI;;;OAGG;IACH,oBAHW,UAAU,UACV,UAAU,EAKpB;IAnBD;;;OAGG;IACH,iBAFU,UAAU,CAEd;IAEN;;;OAGG;IACH,iBAFU,UAAU,CAEd;IAWN;;;OAGG;IACH,mBAHW,QAAQ,GACN,OAAO,CAInB;IAED;;;OAGG;IACH,cAHW,WAAW,GACT,QAAQ,CAIpB;CACJ;uBAhEY,OAAO,mBAAmB,EAAE,QAAQ;yBACpC,OAAO,qBAAqB,EAAE,UAAU;yBAIxC;IACZ,SAAa,EAAE,OAAO,CAAA;CACnB;8DAMkB,UAAU,KAAK,KAAK,OAAO,EAAE,WAAW,CAAC;;;;6CAOlD,KAAK,OAAO,EAAE,WAAW,CAAC,GAAG,iBAAiB,OAAO,EAAE,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"LoadedScriptsWriter.d.ts","sourceRoot":"","sources":["../../src/codegen/LoadedScriptsWriter.js"],"names":[],"mappings":"AAIA;;;;;GAKG;AAEH;IAUI;;;OAGG;IACH,gBAFa,mBAAmB,CAQ/B;IAfG,yBAAoC;IACpC,0BAAqC;IACrC,uBAAkC;IAetC;;;OAGG;IACH;;QAFa,mBAAmB,CAgC/B;IAED;;;OAGG;IACH;;QAFa,mBAAmB,CAoC/B;IAED;;OAEG;IACH,YAFa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAQpC;IAED;;;;;OAKG;IACH,cAKC;IAED;;;;;OAKG;IACH,sBALW,MAAM,YACN,MAAM,eACN,MAAM,EAAE,GACN,mBAAmB,CAmB/B;IAED;;;;OAIG;IACH,kBAJW,MAAM,kBACN,MAAM,EAAE,GACN,mBAAmB,CAQ/B;IAED;;OAEG;IACH,qBA8BC;IAED;;OAEG;IACH,kBAFW,OAAO,MAAM,EAAE,UAAU,CAAC,QAyBpC;IAED;;OAEG;IACH,0BAFW,OAAO,MAAM,EAAE,mBAAmB,CAAC,QA2B7C;IAED;;;OAGG;IACH,oBA6BC;IAED;;;OAGG;IACH,uBAqDC;IAED;;OAEG;IACH,kCAFW,OAAO,MAAM,EAAE,oBAAoB,CAAC,QAuB9C;CACJ;gCA1XY,OAAO,wBAAwB,EAAE,iBAAiB;kCAClD,OAAO,wBAAwB,EAAE,mBAAmB;mCACpD,OAAO,2BAA2B,EAAE,oBAAoB;yBACxD,OAAO,iBAAiB,EAAE,UAAU;6BARpB,0BAA0B"}
1
+ {"version":3,"file":"LoadedScriptsWriter.d.ts","sourceRoot":"","sources":["../../src/codegen/LoadedScriptsWriter.js"],"names":[],"mappings":"AAIA;;;;;GAKG;AAEH;IAUI;;;OAGG;IACH,gBAFa,mBAAmB,CAQ/B;IAfG,yBAAoC;IACpC,0BAAqC;IACrC,uBAAkC;IAetC;;;OAGG;IACH;;QAFa,mBAAmB,CAgC/B;IAED;;;OAGG;IACH;;QAFa,mBAAmB,CAoC/B;IAED;;OAEG;IACH,YAFa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAQpC;IAED;;;;;OAKG;IACH,cAKC;IAED;;;;;OAKG;IACH,sBALW,MAAM,YACN,MAAM,eACN,MAAM,EAAE,GACN,mBAAmB,CAmB/B;IAED;;;;OAIG;IACH,kBAJW,MAAM,kBACN,MAAM,EAAE,GACN,mBAAmB,CAQ/B;IAED;;OAEG;IACH,qBAgCC;IAED;;OAEG;IACH,kBAFW,OAAO,MAAM,EAAE,UAAU,CAAC,QAyBpC;IAED;;OAEG;IACH,0BAFW,OAAO,MAAM,EAAE,mBAAmB,CAAC,QA2B7C;IAED;;;OAGG;IACH,oBA6BC;IAED;;;OAGG;IACH,uBAqDC;IAED;;OAEG;IACH,kCAFW,OAAO,MAAM,EAAE,oBAAoB,CAAC,QAuB9C;CACJ;gCA5XY,OAAO,wBAAwB,EAAE,iBAAiB;kCAClD,OAAO,wBAAwB,EAAE,mBAAmB;mCACpD,OAAO,2BAA2B,EAAE,oBAAoB;yBACxD,OAAO,iBAAiB,EAAE,UAAU;6BARpB,0BAA0B"}
@@ -1 +1 @@
1
- {"version":3,"file":"TypeSchema.d.ts","sourceRoot":"","sources":["../../src/codegen/TypeSchema.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;GAIG;AACH,iCAHW,UAAU,GACR,CAAC,MAAM,EAAE,MAAM,CAAC,CAoJ5B;yBA1JY,OAAO,yBAAyB,EAAE,UAAU"}
1
+ {"version":3,"file":"TypeSchema.d.ts","sourceRoot":"","sources":["../../src/codegen/TypeSchema.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;GAIG;AACH,iCAHW,UAAU,GACR,CAAC,MAAM,EAAE,MAAM,CAAC,CAgK5B;yBAtKY,OAAO,yBAAyB,EAAE,UAAU"}