@airgap/coinlib-core 0.13.5 → 0.13.6-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/airgap-coinlib-core.min.js +9538 -6290
  2. package/package.json +3 -3
  3. package/protocols/tezos/TezosUtils.d.ts +2 -1
  4. package/protocols/tezos/TezosUtils.js +14 -1
  5. package/protocols/tezos/TezosUtils.js.map +1 -1
  6. package/protocols/tezos/sapling/TezosSaplingProtocol.d.ts +7 -7
  7. package/protocols/tezos/sapling/TezosSaplingProtocol.js +155 -135
  8. package/protocols/tezos/sapling/TezosSaplingProtocol.js.map +1 -1
  9. package/protocols/tezos/sapling/TezosSaplingProtocolOptions.js +7 -3
  10. package/protocols/tezos/sapling/TezosSaplingProtocolOptions.js.map +1 -1
  11. package/protocols/tezos/sapling/TezosShieldedTezProtocol.d.ts +2 -3
  12. package/protocols/tezos/sapling/TezosShieldedTezProtocol.js +4 -60
  13. package/protocols/tezos/sapling/TezosShieldedTezProtocol.js.map +1 -1
  14. package/protocols/tezos/sapling/utils/TezosSaplingBookkeeper.d.ts +2 -3
  15. package/protocols/tezos/sapling/utils/TezosSaplingBookkeeper.js +39 -31
  16. package/protocols/tezos/sapling/utils/TezosSaplingBookkeeper.js.map +1 -1
  17. package/protocols/tezos/sapling/utils/TezosSaplingEncoder.d.ts +1 -1
  18. package/protocols/tezos/sapling/utils/TezosSaplingEncoder.js +20 -4
  19. package/protocols/tezos/sapling/utils/TezosSaplingEncoder.js.map +1 -1
  20. package/protocols/tezos/sapling/utils/TezosSaplingForger.d.ts +1 -1
  21. package/protocols/tezos/sapling/utils/TezosSaplingForger.js +10 -6
  22. package/protocols/tezos/sapling/utils/TezosSaplingForger.js.map +1 -1
  23. package/protocols/tezos/types/michelson/MichelsonType.d.ts +2 -1
  24. package/protocols/tezos/types/michelson/MichelsonTypeUtils.d.ts +1 -0
  25. package/protocols/tezos/types/michelson/MichelsonTypeUtils.js +28 -0
  26. package/protocols/tezos/types/michelson/MichelsonTypeUtils.js.map +1 -1
  27. package/protocols/tezos/types/michelson/primitives/MichelsonAddress.d.ts +2 -1
  28. package/protocols/tezos/types/michelson/primitives/MichelsonBytes.d.ts +2 -1
  29. package/protocols/tezos/types/michelson/primitives/MichelsonBytes.js +14 -1
  30. package/protocols/tezos/types/michelson/primitives/MichelsonBytes.js.map +1 -1
  31. package/protocols/tezos/types/michelson/primitives/MichelsonInt.d.ts +2 -1
  32. package/protocols/tezos/types/michelson/primitives/MichelsonInt.js +1 -3
  33. package/protocols/tezos/types/michelson/primitives/MichelsonInt.js.map +1 -1
  34. package/protocols/tezos/types/michelson/primitives/MichelsonString.d.ts +3 -1
  35. package/protocols/tezos/types/michelson/primitives/MichelsonString.js +14 -1
  36. package/protocols/tezos/types/michelson/primitives/MichelsonString.js.map +1 -1
  37. package/protocols/tezos/types/sapling/TezosSaplingOutput.d.ts +1 -0
  38. package/protocols/tezos/types/sapling/TezosSaplingTransaction.d.ts +1 -0
  39. package/serializer/schemas/definitions/unsigned-transaction-tezos-sapling.d.ts +2 -1
  40. package/serializer/types.d.ts +1 -1
  41. package/serializer-v3/schemas/definitions/unsigned-transaction-tezos-sapling.d.ts +1 -1
  42. package/serializer-v3/schemas/generated/transaction-sign-request-tezos-sapling.json +4 -4
  43. package/serializer-v3/types.d.ts +2 -1
  44. package/utils/hex.d.ts +1 -1
  45. package/utils/hex.js +15 -4
  46. package/utils/hex.js.map +1 -1
  47. package/protocols/tezos/types/sapling/TezosSaplingWrappedTransaction.d.ts +0 -6
  48. package/protocols/tezos/types/sapling/TezosSaplingWrappedTransaction.js +0 -3
  49. package/protocols/tezos/types/sapling/TezosSaplingWrappedTransaction.js.map +0 -1
@@ -62,6 +62,7 @@ exports.TezosSaplingForger = void 0;
62
62
  var sapling = __importStar(require("@airgap/sapling-wasm"));
63
63
  var bignumber_1 = __importDefault(require("../../../../dependencies/src/bignumber.js-9.0.0/bignumber"));
64
64
  var blake2b_1 = require("../../../../utils/blake2b");
65
+ var hex_1 = require("../../../../utils/hex");
65
66
  var TezosSaplingAddress_1 = require("../TezosSaplingAddress");
66
67
  var TezosSaplingForger = /** @class */ (function () {
67
68
  function TezosSaplingForger(cryptoClient, state, encoder, externalProvider) {
@@ -70,7 +71,8 @@ var TezosSaplingForger = /** @class */ (function () {
70
71
  this.encoder = encoder;
71
72
  this.externalProvider = externalProvider;
72
73
  }
73
- TezosSaplingForger.prototype.forgeSaplingTransaction = function (inputs, outputs, merkleTree, antiReplay, spendingKey) {
74
+ TezosSaplingForger.prototype.forgeSaplingTransaction = function (inputs, outputs, merkleTree, antiReplay, boundData, spendingKey) {
75
+ if (boundData === void 0) { boundData = ''; }
74
76
  return __awaiter(this, void 0, void 0, function () {
75
77
  var _this = this;
76
78
  return __generator(this, function (_a) {
@@ -103,7 +105,7 @@ var TezosSaplingForger = /** @class */ (function () {
103
105
  case 7:
104
106
  outputDescriptions = _c.sent();
105
107
  balance = this.calculateTransactionBalance(inputs, outputs);
106
- sighash = this.createTransactionSighash(spendDescriptions, outputDescriptions, antiReplay);
108
+ sighash = this.createTransactionSighash(spendDescriptions, outputDescriptions, antiReplay, boundData);
107
109
  return [4 /*yield*/, this.createBindingSignature(context, balance.toFixed(), sighash)];
108
110
  case 8:
109
111
  bindingSignature = _c.sent();
@@ -112,7 +114,8 @@ var TezosSaplingForger = /** @class */ (function () {
112
114
  outputDescriptions: outputDescriptions,
113
115
  bindingSignature: bindingSignature,
114
116
  balance: balance,
115
- root: merkleTree.root
117
+ root: merkleTree.root,
118
+ boundData: boundData
116
119
  }];
117
120
  }
118
121
  });
@@ -195,7 +198,7 @@ var TezosSaplingForger = /** @class */ (function () {
195
198
  output.value]))];
196
199
  case 5:
197
200
  outputDescription = _c.sent();
198
- return [4 /*yield*/, this.cryptoClient.encryptCiphertext(output, outputDescription, rcm, esk, new bignumber_1.default(output.value).gt(0) ? viewingKey : undefined)];
201
+ return [4 /*yield*/, this.cryptoClient.encryptCiphertext(output, outputDescription, rcm, esk, output.browsable ? viewingKey : undefined)];
199
202
  case 6:
200
203
  ciphertext = _c.sent();
201
204
  descriptions.push({
@@ -212,10 +215,11 @@ var TezosSaplingForger = /** @class */ (function () {
212
215
  });
213
216
  });
214
217
  };
215
- TezosSaplingForger.prototype.createTransactionSighash = function (spends, outputs, antiReplay) {
218
+ TezosSaplingForger.prototype.createTransactionSighash = function (spends, outputs, antiReplay, boundData) {
216
219
  var spendBytes = this.encoder.encodeSpendDescriptions(spends);
217
220
  var outputBytes = this.encoder.encodeOutputDescriptions(outputs);
218
- return Buffer.from(blake2b_1.blake2bAsBytes(Buffer.concat([spendBytes, outputBytes]), 256, {
221
+ var boundDataBytes = hex_1.hexToBytes(boundData);
222
+ return Buffer.from(blake2b_1.blake2bAsBytes(Buffer.concat([spendBytes, outputBytes, boundDataBytes]), 256, {
219
223
  key: Buffer.from(antiReplay)
220
224
  }));
221
225
  };
@@ -1 +1 @@
1
- {"version":3,"file":"TezosSaplingForger.js","sourceRoot":"","sources":["../../../../../src/protocols/tezos/sapling/utils/TezosSaplingForger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TezosSaplingForger.js","sourceRoot":"","sources":["../../../../../src/protocols/tezos/sapling/utils/TezosSaplingForger.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ /// <reference types="node" />
1
2
  import { MichelineDataNode } from '../micheline/MichelineNode';
2
3
  export declare abstract class MichelsonType {
3
4
  name?: string | undefined;
@@ -5,6 +6,6 @@ export declare abstract class MichelsonType {
5
6
  abstract asRawValue(): any;
6
7
  abstract toMichelineJSON(): MichelineDataNode;
7
8
  eval(): void;
8
- encode(): string;
9
+ encode(): Buffer;
9
10
  setName(name: string): void;
10
11
  }
@@ -13,6 +13,7 @@ export declare class MichelsonTypeUtils {
13
13
  static readonly sequencePrefixes: {
14
14
  list: Buffer;
15
15
  };
16
+ static decode(encoded: string | Buffer | Uint8Array): MichelsonType | undefined;
16
17
  private static readonly michelsonTypeFactories;
17
18
  static create(type: MichelsonGrammarType, ...args: unknown[]): MichelsonType;
18
19
  }
@@ -8,6 +8,7 @@ var __spreadArrays = (this && this.__spreadArrays) || function () {
8
8
  };
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.MichelsonTypeUtils = void 0;
11
+ var hex_1 = require("../../../../utils/hex");
11
12
  var MichelsonList_1 = require("./generics/MichelsonList");
12
13
  var MichelsonMap_1 = require("./generics/MichelsonMap");
13
14
  var MichelsonOption_1 = require("./generics/MichelsonOption");
@@ -22,6 +23,33 @@ var MichelsonUnit_1 = require("./primitives/MichelsonUnit");
22
23
  var MichelsonTypeUtils = /** @class */ (function () {
23
24
  function MichelsonTypeUtils() {
24
25
  }
26
+ MichelsonTypeUtils.decode = function (encoded) {
27
+ var bytes = hex_1.hexToBytes(encoded);
28
+ if (bytes.slice(0, this.literalPrefixes.int.length).equals(this.literalPrefixes.int)) {
29
+ // Not implemented
30
+ // return MichelsonInt.decode(bytes)
31
+ return undefined;
32
+ }
33
+ else if (bytes.slice(0, this.literalPrefixes.string.length).equals(this.literalPrefixes.string)) {
34
+ return MichelsonString_1.MichelsonString.decode(bytes);
35
+ }
36
+ else if (bytes.slice(0, this.literalPrefixes.bytes.length).equals(this.literalPrefixes.bytes)) {
37
+ return MichelsonBytes_1.MichelsonBytes.decode(bytes);
38
+ }
39
+ else if (bytes.slice(0, this.primPrefixes.pair.length).equals(this.primPrefixes.pair)) {
40
+ // Not implemented
41
+ // return MichelsonPair.decode(bytes)
42
+ return undefined;
43
+ }
44
+ else if (bytes.slice(0, this.sequencePrefixes.list.length).equals(this.sequencePrefixes.list)) {
45
+ // Not implemented
46
+ // return MichelsonList.decode(bytes)
47
+ return undefined;
48
+ }
49
+ else {
50
+ return undefined;
51
+ }
52
+ };
25
53
  MichelsonTypeUtils.create = function (type) {
26
54
  var _a;
27
55
  var args = [];
@@ -1 +1 @@
1
- {"version":3,"file":"MichelsonTypeUtils.js","sourceRoot":"","sources":["../../../../../src/protocols/tezos/types/michelson/MichelsonTypeUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MichelsonTypeUtils.js","sourceRoot":"","sources":["../../../../../src/protocols/tezos/types/michelson/MichelsonTypeUtils.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ /// <reference types="node" />
1
2
  import { MichelineDataNode, MichelinePrimitive } from '../../micheline/MichelineNode';
2
3
  import { MichelsonType } from '../MichelsonType';
3
4
  import { MichelsonBytes } from './MichelsonBytes';
@@ -8,7 +9,7 @@ export declare class MichelsonAddress extends MichelsonType {
8
9
  static from(value: unknown, name?: string): MichelsonAddress;
9
10
  static fromMicheline(micheline: MichelinePrimitive<'string'> | MichelinePrimitive<'bytes'>, name?: string): MichelsonAddress;
10
11
  static fromUnknown(unknownValue: unknown, name?: string): MichelsonAddress;
11
- encode(): string;
12
+ encode(): Buffer;
12
13
  asRawValue(): Record<string, string> | string;
13
14
  toMichelineJSON(): MichelineDataNode;
14
15
  }
@@ -7,7 +7,8 @@ export declare class MichelsonBytes extends MichelsonType {
7
7
  static from(value: unknown, name?: string): MichelsonBytes;
8
8
  static fromMicheline(micheline: MichelinePrimitive<'bytes'>, name?: string): MichelsonBytes;
9
9
  static fromUnknown(unknownValue: unknown, name?: string): MichelsonBytes;
10
- encode(): string;
10
+ static decode(bytes: Buffer): MichelsonBytes;
11
+ encode(): Buffer;
11
12
  asRawValue(): Record<string, string> | string;
12
13
  toMichelineJSON(): MichelineDataNode;
13
14
  }
@@ -14,6 +14,8 @@ var __extends = (this && this.__extends) || (function () {
14
14
  })();
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.MichelsonBytes = void 0;
17
+ var errors_1 = require("../../../../../errors");
18
+ var coinlib_error_1 = require("../../../../../errors/coinlib-error");
17
19
  var error_1 = require("../../../../../utils/error");
18
20
  var hex_1 = require("../../../../../utils/hex");
19
21
  var utils_1 = require("../../utils");
@@ -41,10 +43,21 @@ var MichelsonBytes = /** @class */ (function (_super) {
41
43
  }
42
44
  return new MichelsonBytes(unknownValue, name);
43
45
  };
46
+ MichelsonBytes.decode = function (bytes) {
47
+ var prefix = bytes.slice(0, MichelsonTypeUtils_1.MichelsonTypeUtils.literalPrefixes.bytes.length);
48
+ if (!prefix.equals(MichelsonTypeUtils_1.MichelsonTypeUtils.literalPrefixes.bytes)) {
49
+ throw new errors_1.ConditionViolationError(coinlib_error_1.Domain.TEZOS, 'Invalid encoded MichelsonBytes.');
50
+ }
51
+ var length = bytes.readInt32BE(prefix.length);
52
+ var valueStart = prefix.length + 4;
53
+ var valueEnd = valueStart + length;
54
+ var value = bytes.slice(valueStart, valueEnd);
55
+ return new MichelsonBytes(value);
56
+ };
44
57
  MichelsonBytes.prototype.encode = function () {
45
58
  var length = Buffer.alloc(4);
46
59
  length.writeInt32BE(this.value.length);
47
- return Buffer.concat([MichelsonTypeUtils_1.MichelsonTypeUtils.literalPrefixes.bytes, length, this.value]).toString('hex');
60
+ return Buffer.concat([MichelsonTypeUtils_1.MichelsonTypeUtils.literalPrefixes.bytes, length, this.value]);
48
61
  };
49
62
  MichelsonBytes.prototype.asRawValue = function () {
50
63
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"MichelsonBytes.js","sourceRoot":"","sources":["../../../../../../src/protocols/tezos/types/michelson/primitives/MichelsonBytes.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAqE;AACrE,gDAAiE;AAEjE,qCAAkD;AAClD,kDAAgD;AAChD,4DAA0D;AAE1D;IAAoC,kCAAa;IAG/C,wBAAY,KAAsB,EAAE,IAAa;QAAjD,YACE,kBAAM,IAAI,CAAC,SAEZ;QADC,KAAI,CAAC,KAAK,GAAG,gBAAU,CAAC,KAAK,CAAC,CAAA;;IAChC,CAAC;IAEa,mBAAI,GAAlB,UAAmB,KAAc,EAAE,IAAa;QAC9C,OAAO,4BAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnI,CAAC;IAEa,4BAAa,GAA3B,UAA4B,SAAsC,EAAE,IAAa;QAC/E,OAAO,cAAc,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAC1D,CAAC;IAEa,0BAAW,GAAzB,UAA0B,YAAqB,EAAE,IAAa;QAC5D,IAAI,YAAY,YAAY,cAAc,EAAE;YAC1C,OAAO,YAAY,CAAA;SACpB;QAED,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;YACtE,MAAM,gCAAwB,CAAC,gBAAgB,EAAE,kBAAkB,EAAK,OAAO,YAAY,UAAK,YAAc,CAAC,CAAA;SAChH;QAED,OAAO,IAAI,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;IAC/C,CAAC;IAEM,+BAAM,GAAb;QACE,IAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC9B,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAEtC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,uCAAkB,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IACtG,CAAC;IAEM,mCAAU,GAAjB;;QACE,IAAM,KAAK,GAAW,gBAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAE5C,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,WAAG,GAAC,IAAI,CAAC,IAAI,IAAG,KAAK,MAAG,CAAC,CAAC,KAAK,CAAA;IACnD,CAAC;IAEM,wCAAe,GAAtB;QACE,OAAO;YACL,KAAK,EAAE,gBAAU,CAAC,IAAI,CAAC,KAAK,CAAC;SAC9B,CAAA;IACH,CAAC;IACH,qBAAC;AAAD,CAAC,AA9CD,CAAoC,6BAAa,GA8ChD;AA9CY,wCAAc"}
1
+ {"version":3,"file":"MichelsonBytes.js","sourceRoot":"","sources":["../../../../../../src/protocols/tezos/types/michelson/primitives/MichelsonBytes.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ /// <reference types="node" />
1
2
  import BigNumber from '../../../../../dependencies/src/bignumber.js-9.0.0/bignumber';
2
3
  import { MichelineDataNode, MichelinePrimitive } from '../../micheline/MichelineNode';
3
4
  import { MichelsonType } from '../MichelsonType';
@@ -7,7 +8,7 @@ export declare class MichelsonInt extends MichelsonType {
7
8
  static from(value: unknown, name?: string): MichelsonInt;
8
9
  static fromMicheline(micheline: MichelinePrimitive<'int'>, name?: string): MichelsonInt;
9
10
  static fromUnknown(unknownValue: unknown, name?: string): MichelsonInt;
10
- encode(): string;
11
+ encode(): Buffer;
11
12
  asRawValue(): Record<string, BigNumber> | BigNumber;
12
13
  toMichelineJSON(): MichelineDataNode;
13
14
  }
@@ -55,9 +55,7 @@ var MichelsonInt = /** @class */ (function (_super) {
55
55
  absValue = absValue.shiftRight(7);
56
56
  }
57
57
  u8Numbers[u8Numbers.length - 1] = u8Numbers[u8Numbers.length - 1].and(127);
58
- return u8Numbers
59
- .reduce(function (bytes, next) { return Buffer.concat([bytes, Buffer.from(new Uint8Array([next.toJSNumber()]))]); }, MichelsonTypeUtils_1.MichelsonTypeUtils.literalPrefixes.int)
60
- .toString('hex');
58
+ return u8Numbers.reduce(function (bytes, next) { return Buffer.concat([bytes, Buffer.from(new Uint8Array([next.toJSNumber()]))]); }, MichelsonTypeUtils_1.MichelsonTypeUtils.literalPrefixes.int);
61
59
  };
62
60
  MichelsonInt.prototype.asRawValue = function () {
63
61
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"MichelsonInt.js","sourceRoot":"","sources":["../../../../../../src/protocols/tezos/types/michelson/primitives/MichelsonInt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MichelsonInt.js","sourceRoot":"","sources":["../../../../../../src/protocols/tezos/types/michelson/primitives/MichelsonInt.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ /// <reference types="node" />
1
2
  import { MichelineDataNode, MichelinePrimitive } from '../../micheline/MichelineNode';
2
3
  import { MichelsonType } from '../MichelsonType';
3
4
  export declare class MichelsonString extends MichelsonType {
@@ -6,7 +7,8 @@ export declare class MichelsonString extends MichelsonType {
6
7
  static from(value: unknown, name?: string): MichelsonString;
7
8
  static fromMicheline(micheline: MichelinePrimitive<'string'>, name?: string): MichelsonString;
8
9
  static fromUnknown(unknownValue: unknown, name?: string): MichelsonString;
9
- encode(): string;
10
+ static decode(bytes: Buffer): MichelsonString;
11
+ encode(): Buffer;
10
12
  asRawValue(): Record<string, string> | string;
11
13
  toMichelineJSON(): MichelineDataNode;
12
14
  }
@@ -14,6 +14,8 @@ var __extends = (this && this.__extends) || (function () {
14
14
  })();
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.MichelsonString = void 0;
17
+ var errors_1 = require("../../../../../errors");
18
+ var coinlib_error_1 = require("../../../../../errors/coinlib-error");
17
19
  var error_1 = require("../../../../../utils/error");
18
20
  var utils_1 = require("../../utils");
19
21
  var MichelsonType_1 = require("../MichelsonType");
@@ -40,11 +42,22 @@ var MichelsonString = /** @class */ (function (_super) {
40
42
  }
41
43
  return new MichelsonString(unknownValue, name);
42
44
  };
45
+ MichelsonString.decode = function (bytes) {
46
+ var prefix = bytes.slice(0, MichelsonTypeUtils_1.MichelsonTypeUtils.literalPrefixes.string.length);
47
+ if (!prefix.equals(MichelsonTypeUtils_1.MichelsonTypeUtils.literalPrefixes.string)) {
48
+ throw new errors_1.ConditionViolationError(coinlib_error_1.Domain.TEZOS, 'Invalid encoded MichelsonString.');
49
+ }
50
+ var length = bytes.readInt32BE(prefix.length);
51
+ var valueStart = prefix.length + 4;
52
+ var valueEnd = valueStart + length;
53
+ var value = bytes.slice(valueStart, valueEnd).toString();
54
+ return new MichelsonString(value);
55
+ };
43
56
  MichelsonString.prototype.encode = function () {
44
57
  var bytes = Buffer.from(this.value);
45
58
  var length = Buffer.alloc(4);
46
59
  length.writeInt32BE(bytes.length);
47
- return Buffer.concat([MichelsonTypeUtils_1.MichelsonTypeUtils.literalPrefixes.string, length, bytes]).toString('hex');
60
+ return Buffer.concat([MichelsonTypeUtils_1.MichelsonTypeUtils.literalPrefixes.string, length, bytes]);
48
61
  };
49
62
  MichelsonString.prototype.asRawValue = function () {
50
63
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"MichelsonString.js","sourceRoot":"","sources":["../../../../../../src/protocols/tezos/types/michelson/primitives/MichelsonString.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAqE;AAErE,qCAAkD;AAClD,kDAAgD;AAChD,4DAA0D;AAE1D;IAAqC,mCAAa;IAChD,yBAA4B,KAAa,EAAE,IAAa;QAAxD,YACE,kBAAM,IAAI,CAAC,SACZ;QAF2B,WAAK,GAAL,KAAK,CAAQ;;IAEzC,CAAC;IAEa,oBAAI,GAAlB,UAAmB,KAAc,EAAE,IAAa;QAC9C,OAAO,4BAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACtI,CAAC;IAEa,6BAAa,GAA3B,UAA4B,SAAuC,EAAE,IAAa;QAChF,OAAO,eAAe,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAC5D,CAAC;IAEa,2BAAW,GAAzB,UAA0B,YAAqB,EAAE,IAAa;QAC5D,IAAI,YAAY,YAAY,eAAe,EAAE;YAC3C,OAAO,YAAY,CAAA;SACpB;QAED,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;YACpC,MAAM,gCAAwB,CAAC,iBAAiB,EAAE,QAAQ,EAAE,OAAO,YAAY,CAAC,CAAA;SACjF;QAED,OAAO,IAAI,eAAe,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;IAChD,CAAC;IAEM,gCAAM,GAAb;QACE,IAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACrC,IAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC9B,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAEjC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,uCAAkB,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAClG,CAAC;IAEM,oCAAU,GAAjB;;QACE,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,WAAG,GAAC,IAAI,CAAC,IAAI,IAAG,IAAI,CAAC,KAAK,MAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAA;IAC7D,CAAC;IAEM,yCAAe,GAAtB;QACE,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,KAAK;SACnB,CAAA;IACH,CAAC;IACH,sBAAC;AAAD,CAAC,AA1CD,CAAqC,6BAAa,GA0CjD;AA1CY,0CAAe"}
1
+ {"version":3,"file":"MichelsonString.js","sourceRoot":"","sources":["../../../../../../src/protocols/tezos/types/michelson/primitives/MichelsonString.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA+D;AAC/D,qEAA4D;AAC5D,oDAAqE;AAErE,qCAAkD;AAClD,kDAAgD;AAChD,4DAA0D;AAE1D;IAAqC,mCAAa;IAChD,yBAA4B,KAAa,EAAE,IAAa;QAAxD,YACE,kBAAM,IAAI,CAAC,SACZ;QAF2B,WAAK,GAAL,KAAK,CAAQ;;IAEzC,CAAC;IAEa,oBAAI,GAAlB,UAAmB,KAAc,EAAE,IAAa;QAC9C,OAAO,4BAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACtI,CAAC;IAEa,6BAAa,GAA3B,UAA4B,SAAuC,EAAE,IAAa;QAChF,OAAO,eAAe,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAC5D,CAAC;IAEa,2BAAW,GAAzB,UAA0B,YAAqB,EAAE,IAAa;QAC5D,IAAI,YAAY,YAAY,eAAe,EAAE;YAC3C,OAAO,YAAY,CAAA;SACpB;QAED,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;YACpC,MAAM,gCAAwB,CAAC,iBAAiB,EAAE,QAAQ,EAAE,OAAO,YAAY,CAAC,CAAA;SACjF;QAED,OAAO,IAAI,eAAe,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;IAChD,CAAC;IAEa,sBAAM,GAApB,UAAqB,KAAa;QAChC,IAAM,MAAM,GAAW,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,uCAAkB,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACvF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,uCAAkB,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE;YAC7D,MAAM,IAAI,gCAAuB,CAAC,sBAAM,CAAC,KAAK,EAAE,kCAAkC,CAAC,CAAA;SACpF;QAED,IAAM,MAAM,GAAW,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACvD,IAAM,UAAU,GAAW,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;QAC5C,IAAM,QAAQ,GAAW,UAAU,GAAG,MAAM,CAAA;QAC5C,IAAM,KAAK,GAAW,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAA;QAElE,OAAO,IAAI,eAAe,CAAC,KAAK,CAAC,CAAA;IACnC,CAAC;IAEM,gCAAM,GAAb;QACE,IAAM,KAAK,GAAW,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC7C,IAAM,MAAM,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACtC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAEjC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,uCAAkB,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;IAClF,CAAC;IAEM,oCAAU,GAAjB;;QACE,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,WAAG,GAAC,IAAI,CAAC,IAAI,IAAG,IAAI,CAAC,KAAK,MAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAA;IAC7D,CAAC;IAEM,yCAAe,GAAtB;QACE,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,KAAK;SACnB,CAAA;IACH,CAAC;IACH,sBAAC;AAAD,CAAC,AAxDD,CAAqC,6BAAa,GAwDjD;AAxDY,0CAAe"}
@@ -2,4 +2,5 @@ export interface TezosSaplingOutput {
2
2
  address: string;
3
3
  value: string;
4
4
  memo: string;
5
+ browsable: boolean;
5
6
  }
@@ -19,4 +19,5 @@ export interface TezosSaplingTransaction {
19
19
  bindingSignature: Buffer;
20
20
  balance: BigNumber;
21
21
  root: string;
22
+ boundData: string;
22
23
  }
@@ -9,6 +9,7 @@ interface TezosSaplingOutput {
9
9
  address: string;
10
10
  value: string;
11
11
  memo: string;
12
+ browsable: boolean;
12
13
  }
13
14
  interface TezosSaplingStateDiff {
14
15
  root: string;
@@ -29,7 +30,7 @@ interface RawTezosSaplingTransaction {
29
30
  contractAddress: string;
30
31
  chainId: string;
31
32
  stateDiff: TezosSaplingStateDiff;
32
- callParameters: string;
33
+ unshieldTarget: string;
33
34
  }
34
35
  export interface UnsignedTezosSaplingTransaction extends UnsignedTransaction {
35
36
  transaction: RawTezosSaplingTransaction;
@@ -12,7 +12,7 @@ export interface RawTezosSaplingTransaction {
12
12
  contractAddress: string;
13
13
  chainId: string;
14
14
  stateDiff: TezosSaplingStateDiff;
15
- callParameters: string;
15
+ unshieldTarget?: string;
16
16
  }
17
17
  export interface RawEthereumTransaction {
18
18
  nonce: string;
@@ -29,7 +29,7 @@ interface RawTezosSaplingTransaction {
29
29
  contractAddress: string;
30
30
  chainId: string;
31
31
  stateDiff: TezosSaplingStateDiff;
32
- callParameters: string;
32
+ unshieldTarget: string;
33
33
  }
34
34
  export interface UnsignedTezosSaplingTransaction extends UnsignedTransaction {
35
35
  transaction: RawTezosSaplingTransaction;
@@ -14,9 +14,6 @@
14
14
  "transaction": {
15
15
  "additionalProperties": false,
16
16
  "properties": {
17
- "callParameters": {
18
- "type": "string"
19
- },
20
17
  "chainId": {
21
18
  "type": "string"
22
19
  },
@@ -117,9 +114,12 @@
117
114
  },
118
115
  "required": ["root", "commitments_and_ciphertexts", "nullifiers"],
119
116
  "type": "object"
117
+ },
118
+ "unshieldTarget": {
119
+ "type": "string"
120
120
  }
121
121
  },
122
- "required": ["ins", "outs", "contractAddress", "chainId", "stateDiff", "callParameters"],
122
+ "required": ["ins", "outs", "contractAddress", "chainId", "stateDiff", "unshieldTarget"],
123
123
  "type": "object"
124
124
  }
125
125
  },
@@ -9,9 +9,10 @@ export interface RawTezosTransaction {
9
9
  export interface RawTezosSaplingTransaction {
10
10
  ins: TezosSaplingInput[];
11
11
  outs: TezosSaplingOutput[];
12
+ contractAddress: string;
12
13
  chainId: string;
13
14
  stateDiff: TezosSaplingStateDiff;
14
- callParameters: string;
15
+ unshieldTarget: string;
15
16
  }
16
17
  export interface RawEthereumTransaction {
17
18
  nonce: string;
package/utils/hex.d.ts CHANGED
@@ -6,7 +6,7 @@ export declare function isHex(value: string): boolean;
6
6
  export declare function toHexBuffer(value: number | BigNumber, bitLength?: number): Buffer;
7
7
  export declare function toHexStringRaw(value: number | BigNumber, bitLength?: number): string;
8
8
  export declare function toHexString(value: number | BigNumber, bitLength?: number): string;
9
- export declare function hexToBytes(hex: string | Uint8Array | Buffer): Buffer;
9
+ export declare function hexToBytes(hex: string | Uint8Array | Buffer, bitLength?: number): Buffer;
10
10
  export declare function bytesToHex(bytes: Uint8Array | Buffer | string, config?: {
11
11
  withPrefix: boolean;
12
12
  }): string;
package/utils/hex.js CHANGED
@@ -43,15 +43,26 @@ function toHexString(value, bitLength) {
43
43
  return addHexPrefix(toHexStringRaw(value, bitLength));
44
44
  }
45
45
  exports.toHexString = toHexString;
46
- function hexToBytes(hex) {
46
+ function hexToBytes(hex, bitLength) {
47
+ var byteLength = bitLength !== undefined ? Math.ceil(bitLength / 8) : undefined;
48
+ var buffer;
47
49
  if (typeof hex === 'string' && isHex(hex)) {
48
- return Buffer.from(stripHexPrefix(hex), 'hex');
50
+ buffer = Buffer.from(stripHexPrefix(hex), 'hex');
49
51
  }
50
52
  else if (!(typeof hex === 'string')) {
51
- return Buffer.from(hex);
53
+ buffer = Buffer.from(hex);
52
54
  }
53
55
  else {
54
- return Buffer.from([0]);
56
+ buffer = Buffer.from([0]);
57
+ }
58
+ if (byteLength !== undefined && buffer.length < byteLength) {
59
+ var newBuffer = Buffer.alloc(byteLength, 0);
60
+ var offset = newBuffer.length - buffer.length;
61
+ buffer.copy(newBuffer, offset);
62
+ return newBuffer;
63
+ }
64
+ else {
65
+ return buffer;
55
66
  }
56
67
  }
57
68
  exports.hexToBytes = hexToBytes;
package/utils/hex.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hex.js","sourceRoot":"","sources":["../../src/utils/hex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hex.js","sourceRoot":"","sources":["../../src/utils/hex.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- /// <reference types="node" />
2
- import { TezosAddress } from '../../TezosAddress';
3
- export interface TezosSaplingWrappedTransaction {
4
- signed: string | Buffer;
5
- unshieldTarget?: TezosAddress;
6
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=TezosSaplingWrappedTransaction.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TezosSaplingWrappedTransaction.js","sourceRoot":"","sources":["../../../../../src/protocols/tezos/types/sapling/TezosSaplingWrappedTransaction.ts"],"names":[],"mappings":""}