@bitgo-beta/sdk-coin-polyx 1.0.0-alpha.207 → 1.0.0-alpha.208

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 (30) hide show
  1. package/dist/src/lib/constants.d.ts +4 -0
  2. package/dist/src/lib/constants.d.ts.map +1 -1
  3. package/dist/src/lib/constants.js +6 -2
  4. package/dist/src/lib/hexTokenTransferBuilder.d.ts +21 -0
  5. package/dist/src/lib/hexTokenTransferBuilder.d.ts.map +1 -0
  6. package/dist/src/lib/hexTokenTransferBuilder.js +43 -0
  7. package/dist/src/lib/hexTransferBuilder.d.ts +26 -0
  8. package/dist/src/lib/hexTransferBuilder.d.ts.map +1 -0
  9. package/dist/src/lib/hexTransferBuilder.js +49 -0
  10. package/dist/src/lib/index.d.ts +2 -0
  11. package/dist/src/lib/index.d.ts.map +1 -1
  12. package/dist/src/lib/index.js +6 -2
  13. package/dist/src/lib/transactionBuilderFactory.d.ts +4 -0
  14. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
  15. package/dist/src/lib/transactionBuilderFactory.js +17 -1
  16. package/dist/src/lib/utils.d.ts +20 -0
  17. package/dist/src/lib/utils.d.ts.map +1 -1
  18. package/dist/src/lib/utils.js +43 -1
  19. package/dist/src/polyx.d.ts +2 -1
  20. package/dist/src/polyx.d.ts.map +1 -1
  21. package/dist/src/polyx.js +4 -1
  22. package/dist/test/unit/polyx.js +6 -1
  23. package/dist/test/unit/transactionBuilder/hexTokenTransferBuilder.d.ts +2 -0
  24. package/dist/test/unit/transactionBuilder/hexTokenTransferBuilder.d.ts.map +1 -0
  25. package/dist/test/unit/transactionBuilder/hexTokenTransferBuilder.js +261 -0
  26. package/dist/test/unit/transactionBuilder/hexTransferBuilder.d.ts +2 -0
  27. package/dist/test/unit/transactionBuilder/hexTransferBuilder.d.ts.map +1 -0
  28. package/dist/test/unit/transactionBuilder/hexTransferBuilder.js +389 -0
  29. package/dist/tsconfig.tsbuildinfo +1 -1
  30. package/package.json +8 -8
@@ -14,4 +14,8 @@ export declare const TPOLYX_ADDRESS_FORMAT = 42;
14
14
  * DIDs are 32-byte hex strings (0x prefix + 64 hex characters)
15
15
  */
16
16
  export declare const POLYX_DID_REGEX: RegExp;
17
+ /** 32-byte memo as 0x-prefixed hex (same shape as POLYX_DID_REGEX). */
18
+ export declare const MEMO_HEX_REGEX: RegExp;
19
+ /** Maximum UTF-8 byte length for an on-chain Polymesh memo. */
20
+ export declare const MEMO_MAX_BYTES = 32;
17
21
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAwB,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAwB,CAAC;AAErD,uEAAuE;AACvE,eAAO,MAAM,cAAc,QAAkB,CAAC;AAE9C,+DAA+D;AAC/D,eAAO,MAAM,cAAc,KAAK,CAAC"}
@@ -3,7 +3,7 @@
3
3
  * Address format constants for Polyx networks
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.POLYX_DID_REGEX = exports.TPOLYX_ADDRESS_FORMAT = exports.POLYX_ADDRESS_FORMAT = void 0;
6
+ exports.MEMO_MAX_BYTES = exports.MEMO_HEX_REGEX = exports.POLYX_DID_REGEX = exports.TPOLYX_ADDRESS_FORMAT = exports.POLYX_ADDRESS_FORMAT = void 0;
7
7
  /**
8
8
  * Polyx mainnet address format
9
9
  */
@@ -17,4 +17,8 @@ exports.TPOLYX_ADDRESS_FORMAT = 42;
17
17
  * DIDs are 32-byte hex strings (0x prefix + 64 hex characters)
18
18
  */
19
19
  exports.POLYX_DID_REGEX = /^0x[a-fA-F0-9]{64}$/;
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7QUFFSDs7R0FFRztBQUNVLFFBQUEsb0JBQW9CLEdBQUcsRUFBRSxDQUFDO0FBRXZDOztHQUVHO0FBQ1UsUUFBQSxxQkFBcUIsR0FBRyxFQUFFLENBQUM7QUFFeEM7OztHQUdHO0FBQ1UsUUFBQSxlQUFlLEdBQUcscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEFkZHJlc3MgZm9ybWF0IGNvbnN0YW50cyBmb3IgUG9seXggbmV0d29ya3NcbiAqL1xuXG4vKipcbiAqIFBvbHl4IG1haW5uZXQgYWRkcmVzcyBmb3JtYXRcbiAqL1xuZXhwb3J0IGNvbnN0IFBPTFlYX0FERFJFU1NfRk9STUFUID0gMTI7XG5cbi8qKlxuICogVHBvbHl4IHRlc3RuZXQgYWRkcmVzcyBmb3JtYXRcbiAqL1xuZXhwb3J0IGNvbnN0IFRQT0xZWF9BRERSRVNTX0ZPUk1BVCA9IDQyO1xuXG4vKipcbiAqIFJlZ2V4IHBhdHRlcm4gZm9yIHZhbGlkYXRpbmcgUG9seW1lc2ggRElEIChEZWNlbnRyYWxpemVkIElkZW50aWZpZXIpXG4gKiBESURzIGFyZSAzMi1ieXRlIGhleCBzdHJpbmdzICgweCBwcmVmaXggKyA2NCBoZXggY2hhcmFjdGVycylcbiAqL1xuZXhwb3J0IGNvbnN0IFBPTFlYX0RJRF9SRUdFWCA9IC9eMHhbYS1mQS1GMC05XXs2NH0kLztcbiJdfQ==
20
+ /** 32-byte memo as 0x-prefixed hex (same shape as POLYX_DID_REGEX). */
21
+ exports.MEMO_HEX_REGEX = exports.POLYX_DID_REGEX;
22
+ /** Maximum UTF-8 byte length for an on-chain Polymesh memo. */
23
+ exports.MEMO_MAX_BYTES = 32;
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7QUFFSDs7R0FFRztBQUNVLFFBQUEsb0JBQW9CLEdBQUcsRUFBRSxDQUFDO0FBRXZDOztHQUVHO0FBQ1UsUUFBQSxxQkFBcUIsR0FBRyxFQUFFLENBQUM7QUFFeEM7OztHQUdHO0FBQ1UsUUFBQSxlQUFlLEdBQUcscUJBQXFCLENBQUM7QUFFckQsdUVBQXVFO0FBQzFELFFBQUEsY0FBYyxHQUFHLHVCQUFlLENBQUM7QUFFOUMsK0RBQStEO0FBQ2xELFFBQUEsY0FBYyxHQUFHLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQWRkcmVzcyBmb3JtYXQgY29uc3RhbnRzIGZvciBQb2x5eCBuZXR3b3Jrc1xuICovXG5cbi8qKlxuICogUG9seXggbWFpbm5ldCBhZGRyZXNzIGZvcm1hdFxuICovXG5leHBvcnQgY29uc3QgUE9MWVhfQUREUkVTU19GT1JNQVQgPSAxMjtcblxuLyoqXG4gKiBUcG9seXggdGVzdG5ldCBhZGRyZXNzIGZvcm1hdFxuICovXG5leHBvcnQgY29uc3QgVFBPTFlYX0FERFJFU1NfRk9STUFUID0gNDI7XG5cbi8qKlxuICogUmVnZXggcGF0dGVybiBmb3IgdmFsaWRhdGluZyBQb2x5bWVzaCBESUQgKERlY2VudHJhbGl6ZWQgSWRlbnRpZmllcilcbiAqIERJRHMgYXJlIDMyLWJ5dGUgaGV4IHN0cmluZ3MgKDB4IHByZWZpeCArIDY0IGhleCBjaGFyYWN0ZXJzKVxuICovXG5leHBvcnQgY29uc3QgUE9MWVhfRElEX1JFR0VYID0gL14weFthLWZBLUYwLTldezY0fSQvO1xuXG4vKiogMzItYnl0ZSBtZW1vIGFzIDB4LXByZWZpeGVkIGhleCAoc2FtZSBzaGFwZSBhcyBQT0xZWF9ESURfUkVHRVgpLiAqL1xuZXhwb3J0IGNvbnN0IE1FTU9fSEVYX1JFR0VYID0gUE9MWVhfRElEX1JFR0VYO1xuXG4vKiogTWF4aW11bSBVVEYtOCBieXRlIGxlbmd0aCBmb3IgYW4gb24tY2hhaW4gUG9seW1lc2ggbWVtby4gKi9cbmV4cG9ydCBjb25zdCBNRU1PX01BWF9CWVRFUyA9IDMyO1xuIl19
@@ -0,0 +1,21 @@
1
+ import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
2
+ import { TokenTransferBuilder } from './tokenTransferBuilder';
3
+ /**
4
+ * Builds a POLYX settlement.addAndAffirmWithMediators transaction using the NEW Polymesh memo encoding:
5
+ * UTF-8 bytes right-padded with 0x00 to 32 bytes, passed as a 0x-prefixed hex string.
6
+ *
7
+ * OLD encoding (TokenTransferBuilder): plain string, left-padded with ASCII '0' to 32 chars.
8
+ * NEW encoding (this class): 0x-prefixed hex, right-padded with 0x00 to 32 bytes.
9
+ */
10
+ export declare class HexTokenTransferBuilder extends TokenTransferBuilder {
11
+ constructor(_coinConfig: Readonly<CoinConfig>);
12
+ /**
13
+ * Encode memo using the NEW Polymesh format.
14
+ *
15
+ * If the value is already a 0x-prefixed 32-byte hex string (e.g. when decoding an
16
+ * existing NEW-encoded transaction via fromImplementation), it is stored as-is.
17
+ * Otherwise the text is converted to UTF-8 hex and right-padded with 0x00 to 32 bytes.
18
+ */
19
+ memo(memo: string): this;
20
+ }
21
+ //# sourceMappingURL=hexTokenTransferBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hexTokenTransferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/hexTokenTransferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAI9D;;;;;;GAMG;AACH,qBAAa,uBAAwB,SAAQ,oBAAoB;gBACnD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;;;OAMG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAWzB"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.HexTokenTransferBuilder = void 0;
7
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
8
+ const tokenTransferBuilder_1 = require("./tokenTransferBuilder");
9
+ const constants_1 = require("./constants");
10
+ const utils_1 = __importDefault(require("./utils"));
11
+ /**
12
+ * Builds a POLYX settlement.addAndAffirmWithMediators transaction using the NEW Polymesh memo encoding:
13
+ * UTF-8 bytes right-padded with 0x00 to 32 bytes, passed as a 0x-prefixed hex string.
14
+ *
15
+ * OLD encoding (TokenTransferBuilder): plain string, left-padded with ASCII '0' to 32 chars.
16
+ * NEW encoding (this class): 0x-prefixed hex, right-padded with 0x00 to 32 bytes.
17
+ */
18
+ class HexTokenTransferBuilder extends tokenTransferBuilder_1.TokenTransferBuilder {
19
+ constructor(_coinConfig) {
20
+ super(_coinConfig);
21
+ }
22
+ /**
23
+ * Encode memo using the NEW Polymesh format.
24
+ *
25
+ * If the value is already a 0x-prefixed 32-byte hex string (e.g. when decoding an
26
+ * existing NEW-encoded transaction via fromImplementation), it is stored as-is.
27
+ * Otherwise the text is converted to UTF-8 hex and right-padded with 0x00 to 32 bytes.
28
+ */
29
+ memo(memo) {
30
+ if (memo.startsWith('0x') && memo.length === 66) {
31
+ if (!constants_1.MEMO_HEX_REGEX.test(memo)) {
32
+ throw new sdk_core_1.InvalidTransactionError(`Invalid memo hex encoding: ${memo}`);
33
+ }
34
+ this._memo = memo;
35
+ }
36
+ else {
37
+ this._memo = utils_1.default.encodeMemoNew(memo);
38
+ }
39
+ return this;
40
+ }
41
+ }
42
+ exports.HexTokenTransferBuilder = HexTokenTransferBuilder;
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGV4VG9rZW5UcmFuc2ZlckJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2hleFRva2VuVHJhbnNmZXJCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLG1EQUErRDtBQUMvRCxpRUFBOEQ7QUFDOUQsMkNBQTZDO0FBQzdDLG9EQUE0QjtBQUU1Qjs7Ozs7O0dBTUc7QUFDSCxNQUFhLHVCQUF3QixTQUFRLDJDQUFvQjtJQUMvRCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsSUFBSSxDQUFDLElBQVk7UUFDZixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUNoRCxJQUFJLENBQUMsMEJBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDL0IsTUFBTSxJQUFJLGtDQUF1QixDQUFDLDhCQUE4QixJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQzFFLENBQUM7WUFDRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNwQixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxLQUFLLEdBQUcsZUFBSyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0NBQ0Y7QUF2QkQsMERBdUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBUb2tlblRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdG9rZW5UcmFuc2ZlckJ1aWxkZXInO1xuaW1wb3J0IHsgTUVNT19IRVhfUkVHRVggfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogQnVpbGRzIGEgUE9MWVggc2V0dGxlbWVudC5hZGRBbmRBZmZpcm1XaXRoTWVkaWF0b3JzIHRyYW5zYWN0aW9uIHVzaW5nIHRoZSBORVcgUG9seW1lc2ggbWVtbyBlbmNvZGluZzpcbiAqIFVURi04IGJ5dGVzIHJpZ2h0LXBhZGRlZCB3aXRoIDB4MDAgdG8gMzIgYnl0ZXMsIHBhc3NlZCBhcyBhIDB4LXByZWZpeGVkIGhleCBzdHJpbmcuXG4gKlxuICogT0xEIGVuY29kaW5nIChUb2tlblRyYW5zZmVyQnVpbGRlcik6IHBsYWluIHN0cmluZywgbGVmdC1wYWRkZWQgd2l0aCBBU0NJSSAnMCcgdG8gMzIgY2hhcnMuXG4gKiBORVcgZW5jb2RpbmcgKHRoaXMgY2xhc3MpOiAgICAgICAgICAgMHgtcHJlZml4ZWQgaGV4LCByaWdodC1wYWRkZWQgd2l0aCAweDAwIHRvIDMyIGJ5dGVzLlxuICovXG5leHBvcnQgY2xhc3MgSGV4VG9rZW5UcmFuc2ZlckJ1aWxkZXIgZXh0ZW5kcyBUb2tlblRyYW5zZmVyQnVpbGRlciB7XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmNvZGUgbWVtbyB1c2luZyB0aGUgTkVXIFBvbHltZXNoIGZvcm1hdC5cbiAgICpcbiAgICogSWYgdGhlIHZhbHVlIGlzIGFscmVhZHkgYSAweC1wcmVmaXhlZCAzMi1ieXRlIGhleCBzdHJpbmcgKGUuZy4gd2hlbiBkZWNvZGluZyBhblxuICAgKiBleGlzdGluZyBORVctZW5jb2RlZCB0cmFuc2FjdGlvbiB2aWEgZnJvbUltcGxlbWVudGF0aW9uKSwgaXQgaXMgc3RvcmVkIGFzLWlzLlxuICAgKiBPdGhlcndpc2UgdGhlIHRleHQgaXMgY29udmVydGVkIHRvIFVURi04IGhleCBhbmQgcmlnaHQtcGFkZGVkIHdpdGggMHgwMCB0byAzMiBieXRlcy5cbiAgICovXG4gIG1lbW8obWVtbzogc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKG1lbW8uc3RhcnRzV2l0aCgnMHgnKSAmJiBtZW1vLmxlbmd0aCA9PT0gNjYpIHtcbiAgICAgIGlmICghTUVNT19IRVhfUkVHRVgudGVzdChtZW1vKSkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgbWVtbyBoZXggZW5jb2Rpbmc6ICR7bWVtb31gKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX21lbW8gPSBtZW1vO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9tZW1vID0gdXRpbHMuZW5jb2RlTWVtb05ldyhtZW1vKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,26 @@
1
+ import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
2
+ import { TransferBuilder } from './transferBuilder';
3
+ /**
4
+ * Builds a POLYX transferWithMemo transaction using the NEW Polymesh memo encoding:
5
+ * UTF-8 bytes right-padded with 0x00 to 32 bytes, passed as a 0x-prefixed hex string.
6
+ *
7
+ * OLD encoding (TransferBuilder): plain string, left-padded with ASCII '0' to 32 chars.
8
+ * NEW encoding (this class): 0x-prefixed hex, right-padded with 0x00 to 32 bytes.
9
+ *
10
+ * Same intended memo produces different on-chain bytes depending on which builder is used.
11
+ * Use this builder when the recipient or downstream tooling expects Polymesh-native encoding.
12
+ */
13
+ export declare class HexTransferBuilder extends TransferBuilder {
14
+ constructor(_coinConfig: Readonly<CoinConfig>);
15
+ /**
16
+ * Encode memo using the NEW Polymesh format.
17
+ *
18
+ * If the value is already a 0x-prefixed 32-byte hex string (e.g. when decoding an
19
+ * existing NEW-encoded transaction via fromImplementation), it is stored as-is.
20
+ * Otherwise the text is converted to UTF-8 hex and right-padded with 0x00 to 32 bytes.
21
+ *
22
+ * @param memo The intended memo string (e.g. "56594", "testmemo")
23
+ */
24
+ memo(memo: string): this;
25
+ }
26
+ //# sourceMappingURL=hexTransferBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hexTransferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/hexTransferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIpD;;;;;;;;;GASG;AACH,qBAAa,kBAAmB,SAAQ,eAAe;gBACzC,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;;;;;OAQG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAYzB"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.HexTransferBuilder = void 0;
7
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
8
+ const transferBuilder_1 = require("./transferBuilder");
9
+ const constants_1 = require("./constants");
10
+ const utils_1 = __importDefault(require("./utils"));
11
+ /**
12
+ * Builds a POLYX transferWithMemo transaction using the NEW Polymesh memo encoding:
13
+ * UTF-8 bytes right-padded with 0x00 to 32 bytes, passed as a 0x-prefixed hex string.
14
+ *
15
+ * OLD encoding (TransferBuilder): plain string, left-padded with ASCII '0' to 32 chars.
16
+ * NEW encoding (this class): 0x-prefixed hex, right-padded with 0x00 to 32 bytes.
17
+ *
18
+ * Same intended memo produces different on-chain bytes depending on which builder is used.
19
+ * Use this builder when the recipient or downstream tooling expects Polymesh-native encoding.
20
+ */
21
+ class HexTransferBuilder extends transferBuilder_1.TransferBuilder {
22
+ constructor(_coinConfig) {
23
+ super(_coinConfig);
24
+ }
25
+ /**
26
+ * Encode memo using the NEW Polymesh format.
27
+ *
28
+ * If the value is already a 0x-prefixed 32-byte hex string (e.g. when decoding an
29
+ * existing NEW-encoded transaction via fromImplementation), it is stored as-is.
30
+ * Otherwise the text is converted to UTF-8 hex and right-padded with 0x00 to 32 bytes.
31
+ *
32
+ * @param memo The intended memo string (e.g. "56594", "testmemo")
33
+ */
34
+ memo(memo) {
35
+ if (memo.startsWith('0x') && memo.length === 66) {
36
+ if (!constants_1.MEMO_HEX_REGEX.test(memo)) {
37
+ throw new sdk_core_1.InvalidTransactionError(`Invalid memo hex encoding: ${memo}`);
38
+ }
39
+ // already a fully-encoded 32-byte hex memo — store as-is (round-trip from fromImplementation)
40
+ this._memo = memo;
41
+ }
42
+ else {
43
+ this._memo = utils_1.default.encodeMemoNew(memo);
44
+ }
45
+ return this;
46
+ }
47
+ }
48
+ exports.HexTransferBuilder = HexTransferBuilder;
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGV4VHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9oZXhUcmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsbURBQStEO0FBQy9ELHVEQUFvRDtBQUNwRCwyQ0FBNkM7QUFDN0Msb0RBQTRCO0FBRTVCOzs7Ozs7Ozs7R0FTRztBQUNILE1BQWEsa0JBQW1CLFNBQVEsaUNBQWU7SUFDckQsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0gsSUFBSSxDQUFDLElBQVk7UUFDZixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUNoRCxJQUFJLENBQUMsMEJBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDL0IsTUFBTSxJQUFJLGtDQUF1QixDQUFDLDhCQUE4QixJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQzFFLENBQUM7WUFDRCw4RkFBOEY7WUFDOUYsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDcEIsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLGVBQUssQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUNGO0FBMUJELGdEQTBCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IEludmFsaWRUcmFuc2FjdGlvbkVycm9yIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2ZlckJ1aWxkZXInO1xuaW1wb3J0IHsgTUVNT19IRVhfUkVHRVggfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogQnVpbGRzIGEgUE9MWVggdHJhbnNmZXJXaXRoTWVtbyB0cmFuc2FjdGlvbiB1c2luZyB0aGUgTkVXIFBvbHltZXNoIG1lbW8gZW5jb2Rpbmc6XG4gKiBVVEYtOCBieXRlcyByaWdodC1wYWRkZWQgd2l0aCAweDAwIHRvIDMyIGJ5dGVzLCBwYXNzZWQgYXMgYSAweC1wcmVmaXhlZCBoZXggc3RyaW5nLlxuICpcbiAqIE9MRCBlbmNvZGluZyAoVHJhbnNmZXJCdWlsZGVyKTogcGxhaW4gc3RyaW5nLCBsZWZ0LXBhZGRlZCB3aXRoIEFTQ0lJICcwJyB0byAzMiBjaGFycy5cbiAqIE5FVyBlbmNvZGluZyAodGhpcyBjbGFzcyk6ICAgICAgMHgtcHJlZml4ZWQgaGV4LCByaWdodC1wYWRkZWQgd2l0aCAweDAwIHRvIDMyIGJ5dGVzLlxuICpcbiAqIFNhbWUgaW50ZW5kZWQgbWVtbyBwcm9kdWNlcyBkaWZmZXJlbnQgb24tY2hhaW4gYnl0ZXMgZGVwZW5kaW5nIG9uIHdoaWNoIGJ1aWxkZXIgaXMgdXNlZC5cbiAqIFVzZSB0aGlzIGJ1aWxkZXIgd2hlbiB0aGUgcmVjaXBpZW50IG9yIGRvd25zdHJlYW0gdG9vbGluZyBleHBlY3RzIFBvbHltZXNoLW5hdGl2ZSBlbmNvZGluZy5cbiAqL1xuZXhwb3J0IGNsYXNzIEhleFRyYW5zZmVyQnVpbGRlciBleHRlbmRzIFRyYW5zZmVyQnVpbGRlciB7XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmNvZGUgbWVtbyB1c2luZyB0aGUgTkVXIFBvbHltZXNoIGZvcm1hdC5cbiAgICpcbiAgICogSWYgdGhlIHZhbHVlIGlzIGFscmVhZHkgYSAweC1wcmVmaXhlZCAzMi1ieXRlIGhleCBzdHJpbmcgKGUuZy4gd2hlbiBkZWNvZGluZyBhblxuICAgKiBleGlzdGluZyBORVctZW5jb2RlZCB0cmFuc2FjdGlvbiB2aWEgZnJvbUltcGxlbWVudGF0aW9uKSwgaXQgaXMgc3RvcmVkIGFzLWlzLlxuICAgKiBPdGhlcndpc2UgdGhlIHRleHQgaXMgY29udmVydGVkIHRvIFVURi04IGhleCBhbmQgcmlnaHQtcGFkZGVkIHdpdGggMHgwMCB0byAzMiBieXRlcy5cbiAgICpcbiAgICogQHBhcmFtIG1lbW8gVGhlIGludGVuZGVkIG1lbW8gc3RyaW5nIChlLmcuIFwiNTY1OTRcIiwgXCJ0ZXN0bWVtb1wiKVxuICAgKi9cbiAgbWVtbyhtZW1vOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAobWVtby5zdGFydHNXaXRoKCcweCcpICYmIG1lbW8ubGVuZ3RoID09PSA2Nikge1xuICAgICAgaWYgKCFNRU1PX0hFWF9SRUdFWC50ZXN0KG1lbW8pKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihgSW52YWxpZCBtZW1vIGhleCBlbmNvZGluZzogJHttZW1vfWApO1xuICAgICAgfVxuICAgICAgLy8gYWxyZWFkeSBhIGZ1bGx5LWVuY29kZWQgMzItYnl0ZSBoZXggbWVtbyDigJQgc3RvcmUgYXMtaXMgKHJvdW5kLXRyaXAgZnJvbSBmcm9tSW1wbGVtZW50YXRpb24pXG4gICAgICB0aGlzLl9tZW1vID0gbWVtbztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fbWVtbyA9IHV0aWxzLmVuY29kZU1lbW9OZXcobWVtbyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG59XG4iXX0=
@@ -2,9 +2,11 @@ export { Constants, Errors, Interface, KeyPair, SingletonRegistry, Transaction,
2
2
  export { TransactionBuilderFactory } from './transactionBuilderFactory';
3
3
  export { PolyxBaseBuilder } from './baseBuilder';
4
4
  export { TransferBuilder } from './transferBuilder';
5
+ export { HexTransferBuilder } from './hexTransferBuilder';
5
6
  export { RegisterDidWithCDDBuilder } from './registerDidWithCDDBuilder';
6
7
  export { PreApproveAssetBuilder } from './preApproveAssetBuilder';
7
8
  export { TokenTransferBuilder } from './tokenTransferBuilder';
9
+ export { HexTokenTransferBuilder } from './hexTokenTransferBuilder';
8
10
  export { RejectInstructionBuilder } from './rejectInstructionBuilder';
9
11
  export { Transaction as PolyxTransaction } from './transaction';
10
12
  export { BondExtraBuilder } from './bondExtraBuilder';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,MAAM,EACN,SAAS,EACT,OAAO,EACP,iBAAiB,EACjB,WAAW,EACX,kBAAkB,GACnB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAClD,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAE7E;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,QAAS,MAAM,KAAG,OAAqC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,MAAM,EACN,SAAS,EACT,OAAO,EACP,iBAAiB,EACjB,WAAW,EACX,kBAAkB,GACnB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAClD,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAE7E;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,QAAS,MAAM,KAAG,OAAqC,CAAC"}
@@ -17,7 +17,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
17
17
  return (mod && mod.__esModule) ? mod : { "default": mod };
18
18
  };
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.isValidDid = exports.utils = exports.Utils = exports.WithdrawUnbondedBuilder = exports.UnbondBuilder = exports.BatchUnstakingBuilder = exports.NominateBuilder = exports.BatchBuilder = exports.BondExtraBuilder = exports.PolyxTransaction = exports.RejectInstructionBuilder = exports.TokenTransferBuilder = exports.PreApproveAssetBuilder = exports.RegisterDidWithCDDBuilder = exports.TransferBuilder = exports.PolyxBaseBuilder = exports.TransactionBuilderFactory = exports.TransactionBuilder = exports.Transaction = exports.SingletonRegistry = exports.KeyPair = exports.Interface = exports.Errors = exports.Constants = void 0;
20
+ exports.isValidDid = exports.utils = exports.Utils = exports.WithdrawUnbondedBuilder = exports.UnbondBuilder = exports.BatchUnstakingBuilder = exports.NominateBuilder = exports.BatchBuilder = exports.BondExtraBuilder = exports.PolyxTransaction = exports.RejectInstructionBuilder = exports.HexTokenTransferBuilder = exports.TokenTransferBuilder = exports.PreApproveAssetBuilder = exports.RegisterDidWithCDDBuilder = exports.HexTransferBuilder = exports.TransferBuilder = exports.PolyxBaseBuilder = exports.TransactionBuilderFactory = exports.TransactionBuilder = exports.Transaction = exports.SingletonRegistry = exports.KeyPair = exports.Interface = exports.Errors = exports.Constants = void 0;
21
21
  var abstract_substrate_1 = require("@bitgo-beta/abstract-substrate");
22
22
  Object.defineProperty(exports, "Constants", { enumerable: true, get: function () { return abstract_substrate_1.Constants; } });
23
23
  Object.defineProperty(exports, "Errors", { enumerable: true, get: function () { return abstract_substrate_1.Errors; } });
@@ -32,12 +32,16 @@ var baseBuilder_1 = require("./baseBuilder");
32
32
  Object.defineProperty(exports, "PolyxBaseBuilder", { enumerable: true, get: function () { return baseBuilder_1.PolyxBaseBuilder; } });
33
33
  var transferBuilder_1 = require("./transferBuilder");
34
34
  Object.defineProperty(exports, "TransferBuilder", { enumerable: true, get: function () { return transferBuilder_1.TransferBuilder; } });
35
+ var hexTransferBuilder_1 = require("./hexTransferBuilder");
36
+ Object.defineProperty(exports, "HexTransferBuilder", { enumerable: true, get: function () { return hexTransferBuilder_1.HexTransferBuilder; } });
35
37
  var registerDidWithCDDBuilder_1 = require("./registerDidWithCDDBuilder");
36
38
  Object.defineProperty(exports, "RegisterDidWithCDDBuilder", { enumerable: true, get: function () { return registerDidWithCDDBuilder_1.RegisterDidWithCDDBuilder; } });
37
39
  var preApproveAssetBuilder_1 = require("./preApproveAssetBuilder");
38
40
  Object.defineProperty(exports, "PreApproveAssetBuilder", { enumerable: true, get: function () { return preApproveAssetBuilder_1.PreApproveAssetBuilder; } });
39
41
  var tokenTransferBuilder_1 = require("./tokenTransferBuilder");
40
42
  Object.defineProperty(exports, "TokenTransferBuilder", { enumerable: true, get: function () { return tokenTransferBuilder_1.TokenTransferBuilder; } });
43
+ var hexTokenTransferBuilder_1 = require("./hexTokenTransferBuilder");
44
+ Object.defineProperty(exports, "HexTokenTransferBuilder", { enumerable: true, get: function () { return hexTokenTransferBuilder_1.HexTokenTransferBuilder; } });
41
45
  var rejectInstructionBuilder_1 = require("./rejectInstructionBuilder");
42
46
  Object.defineProperty(exports, "RejectInstructionBuilder", { enumerable: true, get: function () { return rejectInstructionBuilder_1.RejectInstructionBuilder; } });
43
47
  var transaction_1 = require("./transaction");
@@ -68,4 +72,4 @@ __exportStar(require("./iface"), exports);
68
72
  */
69
73
  const isValidDid = (did) => utils_1.default.isValidDid(did);
70
74
  exports.isValidDid = isValidDid;
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEscUVBUXdDO0FBUHRDLCtHQUFBLFNBQVMsT0FBQTtBQUNULDRHQUFBLE1BQU0sT0FBQTtBQUNOLCtHQUFBLFNBQVMsT0FBQTtBQUNULDZHQUFBLE9BQU8sT0FBQTtBQUNQLHVIQUFBLGlCQUFpQixPQUFBO0FBQ2pCLGlIQUFBLFdBQVcsT0FBQTtBQUNYLHdIQUFBLGtCQUFrQixPQUFBO0FBR3BCLHlFQUF3RTtBQUEvRCxzSUFBQSx5QkFBeUIsT0FBQTtBQUNsQyw2Q0FBaUQ7QUFBeEMsK0dBQUEsZ0JBQWdCLE9BQUE7QUFDekIscURBQW9EO0FBQTNDLGtIQUFBLGVBQWUsT0FBQTtBQUN4Qix5RUFBd0U7QUFBL0Qsc0lBQUEseUJBQXlCLE9BQUE7QUFDbEMsbUVBQWtFO0FBQXpELGdJQUFBLHNCQUFzQixPQUFBO0FBQy9CLCtEQUE4RDtBQUFyRCw0SEFBQSxvQkFBb0IsT0FBQTtBQUM3Qix1RUFBc0U7QUFBN0Qsb0lBQUEsd0JBQXdCLE9BQUE7QUFDakMsNkNBQWdFO0FBQXZELCtHQUFBLFdBQVcsT0FBb0I7QUFDeEMsdURBQXNEO0FBQTdDLG9IQUFBLGdCQUFnQixPQUFBO0FBQ3pCLDZEQUE0RTtBQUFuRSxtSEFBQSxtQkFBbUIsT0FBZ0I7QUFDNUMscURBQW9EO0FBQTNDLGtIQUFBLGVBQWUsT0FBQTtBQUN4QixpRUFBZ0U7QUFBdkQsOEhBQUEscUJBQXFCLE9BQUE7QUFDOUIsaURBQWdEO0FBQXZDLDhHQUFBLGFBQWEsT0FBQTtBQUN0QixxRUFBb0U7QUFBM0Qsa0lBQUEsdUJBQXVCLE9BQUE7QUFDaEMsb0RBQWlDO0FBQ2pDLGlDQUFrRDtBQUF6Qyw4RkFBQSxLQUFLLE9BQUE7QUFBRSwrR0FBQSxPQUFPLE9BQVM7QUFDaEMsMENBQXdCO0FBSXhCOzs7Ozs7R0FNRztBQUNJLE1BQU0sVUFBVSxHQUFHLENBQUMsR0FBVyxFQUFXLEVBQUUsQ0FBQyxlQUFVLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQWxFLFFBQUEsVUFBVSxjQUF3RCIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7XG4gIENvbnN0YW50cyxcbiAgRXJyb3JzLFxuICBJbnRlcmZhY2UsXG4gIEtleVBhaXIsXG4gIFNpbmdsZXRvblJlZ2lzdHJ5LFxuICBUcmFuc2FjdGlvbixcbiAgVHJhbnNhY3Rpb25CdWlsZGVyLFxufSBmcm9tICdAYml0Z28tYmV0YS9hYnN0cmFjdC1zdWJzdHJhdGUnO1xuXG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5JztcbmV4cG9ydCB7IFBvbHl4QmFzZUJ1aWxkZXIgfSBmcm9tICcuL2Jhc2VCdWlsZGVyJztcbmV4cG9ydCB7IFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNmZXJCdWlsZGVyJztcbmV4cG9ydCB7IFJlZ2lzdGVyRGlkV2l0aENEREJ1aWxkZXIgfSBmcm9tICcuL3JlZ2lzdGVyRGlkV2l0aENEREJ1aWxkZXInO1xuZXhwb3J0IHsgUHJlQXBwcm92ZUFzc2V0QnVpbGRlciB9IGZyb20gJy4vcHJlQXBwcm92ZUFzc2V0QnVpbGRlcic7XG5leHBvcnQgeyBUb2tlblRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdG9rZW5UcmFuc2ZlckJ1aWxkZXInO1xuZXhwb3J0IHsgUmVqZWN0SW5zdHJ1Y3Rpb25CdWlsZGVyIH0gZnJvbSAnLi9yZWplY3RJbnN0cnVjdGlvbkJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb24gYXMgUG9seXhUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuZXhwb3J0IHsgQm9uZEV4dHJhQnVpbGRlciB9IGZyb20gJy4vYm9uZEV4dHJhQnVpbGRlcic7XG5leHBvcnQgeyBCYXRjaFN0YWtpbmdCdWlsZGVyIGFzIEJhdGNoQnVpbGRlciB9IGZyb20gJy4vYmF0Y2hTdGFraW5nQnVpbGRlcic7XG5leHBvcnQgeyBOb21pbmF0ZUJ1aWxkZXIgfSBmcm9tICcuL25vbWluYXRlQnVpbGRlcic7XG5leHBvcnQgeyBCYXRjaFVuc3Rha2luZ0J1aWxkZXIgfSBmcm9tICcuL2JhdGNoVW5zdGFraW5nQnVpbGRlcic7XG5leHBvcnQgeyBVbmJvbmRCdWlsZGVyIH0gZnJvbSAnLi91bmJvbmRCdWlsZGVyJztcbmV4cG9ydCB7IFdpdGhkcmF3VW5ib25kZWRCdWlsZGVyIH0gZnJvbSAnLi93aXRoZHJhd1VuYm9uZGVkQnVpbGRlcic7XG5pbXBvcnQgcG9seXhVdGlscyBmcm9tICcuL3V0aWxzJztcbmV4cG9ydCB7IFV0aWxzLCBkZWZhdWx0IGFzIHV0aWxzIH0gZnJvbSAnLi91dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL2lmYWNlJztcblxuZXhwb3J0IHsgQm9uZEFyZ3MsIE5vbWluYXRlQXJncywgQmF0Y2hDYWxsT2JqZWN0LCBCYXRjaEFyZ3MgfSBmcm9tICcuL2lmYWNlJztcblxuLyoqXG4gKiBDaGVja3MgaWYgYSBzdHJpbmcgaXMgYSB2YWxpZCBQb2x5bWVzaCBESUQgKERlY2VudHJhbGl6ZWQgSWRlbnRpZmllcilcbiAqIERJRHMgYXJlIDMyLWJ5dGUgaGV4IHN0cmluZ3MgKDB4IHByZWZpeCArIDY0IGhleCBjaGFyYWN0ZXJzKVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBkaWQgLSBUaGUgc3RyaW5nIHRvIHZhbGlkYXRlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZiB2YWxpZCBESUQgZm9ybWF0LCBmYWxzZSBvdGhlcndpc2VcbiAqL1xuZXhwb3J0IGNvbnN0IGlzVmFsaWREaWQgPSAoZGlkOiBzdHJpbmcpOiBib29sZWFuID0+IHBvbHl4VXRpbHMuaXNWYWxpZERpZChkaWQpO1xuIl19
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEscUVBUXdDO0FBUHRDLCtHQUFBLFNBQVMsT0FBQTtBQUNULDRHQUFBLE1BQU0sT0FBQTtBQUNOLCtHQUFBLFNBQVMsT0FBQTtBQUNULDZHQUFBLE9BQU8sT0FBQTtBQUNQLHVIQUFBLGlCQUFpQixPQUFBO0FBQ2pCLGlIQUFBLFdBQVcsT0FBQTtBQUNYLHdIQUFBLGtCQUFrQixPQUFBO0FBR3BCLHlFQUF3RTtBQUEvRCxzSUFBQSx5QkFBeUIsT0FBQTtBQUNsQyw2Q0FBaUQ7QUFBeEMsK0dBQUEsZ0JBQWdCLE9BQUE7QUFDekIscURBQW9EO0FBQTNDLGtIQUFBLGVBQWUsT0FBQTtBQUN4QiwyREFBMEQ7QUFBakQsd0hBQUEsa0JBQWtCLE9BQUE7QUFDM0IseUVBQXdFO0FBQS9ELHNJQUFBLHlCQUF5QixPQUFBO0FBQ2xDLG1FQUFrRTtBQUF6RCxnSUFBQSxzQkFBc0IsT0FBQTtBQUMvQiwrREFBOEQ7QUFBckQsNEhBQUEsb0JBQW9CLE9BQUE7QUFDN0IscUVBQW9FO0FBQTNELGtJQUFBLHVCQUF1QixPQUFBO0FBQ2hDLHVFQUFzRTtBQUE3RCxvSUFBQSx3QkFBd0IsT0FBQTtBQUNqQyw2Q0FBZ0U7QUFBdkQsK0dBQUEsV0FBVyxPQUFvQjtBQUN4Qyx1REFBc0Q7QUFBN0Msb0hBQUEsZ0JBQWdCLE9BQUE7QUFDekIsNkRBQTRFO0FBQW5FLG1IQUFBLG1CQUFtQixPQUFnQjtBQUM1QyxxREFBb0Q7QUFBM0Msa0hBQUEsZUFBZSxPQUFBO0FBQ3hCLGlFQUFnRTtBQUF2RCw4SEFBQSxxQkFBcUIsT0FBQTtBQUM5QixpREFBZ0Q7QUFBdkMsOEdBQUEsYUFBYSxPQUFBO0FBQ3RCLHFFQUFvRTtBQUEzRCxrSUFBQSx1QkFBdUIsT0FBQTtBQUNoQyxvREFBaUM7QUFDakMsaUNBQWtEO0FBQXpDLDhGQUFBLEtBQUssT0FBQTtBQUFFLCtHQUFBLE9BQU8sT0FBUztBQUNoQywwQ0FBd0I7QUFJeEI7Ozs7OztHQU1HO0FBQ0ksTUFBTSxVQUFVLEdBQUcsQ0FBQyxHQUFXLEVBQVcsRUFBRSxDQUFDLGVBQVUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7QUFBbEUsUUFBQSxVQUFVLGNBQXdEIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHtcbiAgQ29uc3RhbnRzLFxuICBFcnJvcnMsXG4gIEludGVyZmFjZSxcbiAgS2V5UGFpcixcbiAgU2luZ2xldG9uUmVnaXN0cnksXG4gIFRyYW5zYWN0aW9uLFxuICBUcmFuc2FjdGlvbkJ1aWxkZXIsXG59IGZyb20gJ0BiaXRnby1iZXRhL2Fic3RyYWN0LXN1YnN0cmF0ZSc7XG5cbmV4cG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnknO1xuZXhwb3J0IHsgUG9seXhCYXNlQnVpbGRlciB9IGZyb20gJy4vYmFzZUJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2ZlckJ1aWxkZXInO1xuZXhwb3J0IHsgSGV4VHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi9oZXhUcmFuc2ZlckJ1aWxkZXInO1xuZXhwb3J0IHsgUmVnaXN0ZXJEaWRXaXRoQ0REQnVpbGRlciB9IGZyb20gJy4vcmVnaXN0ZXJEaWRXaXRoQ0REQnVpbGRlcic7XG5leHBvcnQgeyBQcmVBcHByb3ZlQXNzZXRCdWlsZGVyIH0gZnJvbSAnLi9wcmVBcHByb3ZlQXNzZXRCdWlsZGVyJztcbmV4cG9ydCB7IFRva2VuVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90b2tlblRyYW5zZmVyQnVpbGRlcic7XG5leHBvcnQgeyBIZXhUb2tlblRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vaGV4VG9rZW5UcmFuc2ZlckJ1aWxkZXInO1xuZXhwb3J0IHsgUmVqZWN0SW5zdHJ1Y3Rpb25CdWlsZGVyIH0gZnJvbSAnLi9yZWplY3RJbnN0cnVjdGlvbkJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb24gYXMgUG9seXhUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuZXhwb3J0IHsgQm9uZEV4dHJhQnVpbGRlciB9IGZyb20gJy4vYm9uZEV4dHJhQnVpbGRlcic7XG5leHBvcnQgeyBCYXRjaFN0YWtpbmdCdWlsZGVyIGFzIEJhdGNoQnVpbGRlciB9IGZyb20gJy4vYmF0Y2hTdGFraW5nQnVpbGRlcic7XG5leHBvcnQgeyBOb21pbmF0ZUJ1aWxkZXIgfSBmcm9tICcuL25vbWluYXRlQnVpbGRlcic7XG5leHBvcnQgeyBCYXRjaFVuc3Rha2luZ0J1aWxkZXIgfSBmcm9tICcuL2JhdGNoVW5zdGFraW5nQnVpbGRlcic7XG5leHBvcnQgeyBVbmJvbmRCdWlsZGVyIH0gZnJvbSAnLi91bmJvbmRCdWlsZGVyJztcbmV4cG9ydCB7IFdpdGhkcmF3VW5ib25kZWRCdWlsZGVyIH0gZnJvbSAnLi93aXRoZHJhd1VuYm9uZGVkQnVpbGRlcic7XG5pbXBvcnQgcG9seXhVdGlscyBmcm9tICcuL3V0aWxzJztcbmV4cG9ydCB7IFV0aWxzLCBkZWZhdWx0IGFzIHV0aWxzIH0gZnJvbSAnLi91dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL2lmYWNlJztcblxuZXhwb3J0IHsgQm9uZEFyZ3MsIE5vbWluYXRlQXJncywgQmF0Y2hDYWxsT2JqZWN0LCBCYXRjaEFyZ3MgfSBmcm9tICcuL2lmYWNlJztcblxuLyoqXG4gKiBDaGVja3MgaWYgYSBzdHJpbmcgaXMgYSB2YWxpZCBQb2x5bWVzaCBESUQgKERlY2VudHJhbGl6ZWQgSWRlbnRpZmllcilcbiAqIERJRHMgYXJlIDMyLWJ5dGUgaGV4IHN0cmluZ3MgKDB4IHByZWZpeCArIDY0IGhleCBjaGFyYWN0ZXJzKVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBkaWQgLSBUaGUgc3RyaW5nIHRvIHZhbGlkYXRlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZiB2YWxpZCBESUQgZm9ybWF0LCBmYWxzZSBvdGhlcndpc2VcbiAqL1xuZXhwb3J0IGNvbnN0IGlzVmFsaWREaWQgPSAoZGlkOiBzdHJpbmcpOiBib29sZWFuID0+IHBvbHl4VXRpbHMuaXNWYWxpZERpZChkaWQpO1xuIl19
@@ -1,6 +1,7 @@
1
1
  import { BaseTransactionBuilderFactory } from '@bitgo-beta/sdk-core';
2
2
  import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
3
3
  import { TransferBuilder } from './transferBuilder';
4
+ import { HexTransferBuilder } from './hexTransferBuilder';
4
5
  import { RegisterDidWithCDDBuilder } from './registerDidWithCDDBuilder';
5
6
  import { BondExtraBuilder } from './bondExtraBuilder';
6
7
  import { BatchStakingBuilder } from './batchStakingBuilder';
@@ -13,6 +14,7 @@ import { Transaction as BaseTransaction } from '@bitgo-beta/abstract-substrate';
13
14
  import { Transaction as PolyxTransaction } from './transaction';
14
15
  import { PreApproveAssetBuilder } from './preApproveAssetBuilder';
15
16
  import { TokenTransferBuilder } from './tokenTransferBuilder';
17
+ import { HexTokenTransferBuilder } from './hexTokenTransferBuilder';
16
18
  import { RejectInstructionBuilder } from './rejectInstructionBuilder';
17
19
  import { NominateBuilder } from './nominateBuilder';
18
20
  export type SupportedTransaction = BaseTransaction | PolyxTransaction;
@@ -20,9 +22,11 @@ export declare class TransactionBuilderFactory extends BaseTransactionBuilderFac
20
22
  protected _material: Interface.Material;
21
23
  constructor(_coinConfig: Readonly<CoinConfig>);
22
24
  getTransferBuilder(): TransferBuilder;
25
+ getHexTransferBuilder(): HexTransferBuilder;
23
26
  getRegisterDidWithCDDBuilder(): RegisterDidWithCDDBuilder;
24
27
  getPreApproveAssetBuilder(): PreApproveAssetBuilder;
25
28
  getTokenTransferBuilder(): TokenTransferBuilder;
29
+ getHexTokenTransferBuilder(): HexTokenTransferBuilder;
26
30
  getRejectInstructionBuilder(): RejectInstructionBuilder;
27
31
  getBondExtraBuilder(): BondExtraBuilder;
28
32
  getBatchBuilder(): BatchStakingBuilder;
@@ -1 +1 @@
1
- {"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAuB,MAAM,sBAAsB,CAAC;AAC1F,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAqB,kBAAkB,EAAE,MAAM,IAAI,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAgC,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,MAAM,oBAAoB,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAEtE,qBAAa,yBAA0B,SAAQ,6BAA6B;IAC1E,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,QAAQ,CAAC;gBAE5B,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,kBAAkB,IAAI,eAAe;IAIrC,4BAA4B,IAAI,yBAAyB;IAIzD,yBAAyB,IAAI,sBAAsB;IAInD,uBAAuB,IAAI,oBAAoB;IAI/C,2BAA2B,IAAI,wBAAwB;IAIvD,mBAAmB,IAAI,gBAAgB;IAIvC,eAAe,IAAI,mBAAmB;IAItC,wBAAwB,IAAI,qBAAqB;IAIjD,gBAAgB,IAAI,aAAa;IAIjC,0BAA0B,IAAI,uBAAuB;IAIrD,kBAAkB,IAAI,eAAe;IAIrC,8BAA8B,IAAI,IAAI;IAItC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IAMxE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,GAAG,IAAI;IAK5C,OAAO,CAAC,UAAU;CAqDnB"}
1
+ {"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAuB,MAAM,sBAAsB,CAAC;AAC1F,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAqB,kBAAkB,EAAE,MAAM,IAAI,CAAC;AACtE,OAAO,EAAE,QAAQ,EAA+D,MAAM,SAAS,CAAC;AAChG,OAAO,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,MAAM,oBAAoB,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAEtE,qBAAa,yBAA0B,SAAQ,6BAA6B;IAC1E,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,QAAQ,CAAC;gBAE5B,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,kBAAkB,IAAI,eAAe;IAIrC,qBAAqB,IAAI,kBAAkB;IAI3C,4BAA4B,IAAI,yBAAyB;IAIzD,yBAAyB,IAAI,sBAAsB;IAInD,uBAAuB,IAAI,oBAAoB;IAI/C,0BAA0B,IAAI,uBAAuB;IAIrD,2BAA2B,IAAI,wBAAwB;IAIvD,mBAAmB,IAAI,gBAAgB;IAIvC,eAAe,IAAI,mBAAmB;IAItC,wBAAwB,IAAI,qBAAqB;IAIjD,gBAAgB,IAAI,aAAa;IAIjC,0BAA0B,IAAI,uBAAuB;IAIrD,kBAAkB,IAAI,eAAe;IAIrC,8BAA8B,IAAI,IAAI;IAItC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IAMxE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,GAAG,IAAI;IAK5C,OAAO,CAAC,UAAU;CA6DnB"}
@@ -7,6 +7,7 @@ exports.TransactionBuilderFactory = void 0;
7
7
  const sdk_core_1 = require("@bitgo-beta/sdk-core");
8
8
  const txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
9
9
  const transferBuilder_1 = require("./transferBuilder");
10
+ const hexTransferBuilder_1 = require("./hexTransferBuilder");
10
11
  const registerDidWithCDDBuilder_1 = require("./registerDidWithCDDBuilder");
11
12
  const bondExtraBuilder_1 = require("./bondExtraBuilder");
12
13
  const batchStakingBuilder_1 = require("./batchStakingBuilder");
@@ -18,6 +19,7 @@ const _1 = require("./");
18
19
  const iface_1 = require("./iface");
19
20
  const preApproveAssetBuilder_1 = require("./preApproveAssetBuilder");
20
21
  const tokenTransferBuilder_1 = require("./tokenTransferBuilder");
22
+ const hexTokenTransferBuilder_1 = require("./hexTokenTransferBuilder");
21
23
  const rejectInstructionBuilder_1 = require("./rejectInstructionBuilder");
22
24
  const nominateBuilder_1 = require("./nominateBuilder");
23
25
  class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory {
@@ -28,6 +30,9 @@ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory
28
30
  getTransferBuilder() {
29
31
  return new transferBuilder_1.TransferBuilder(this._coinConfig).material(this._material);
30
32
  }
33
+ getHexTransferBuilder() {
34
+ return new hexTransferBuilder_1.HexTransferBuilder(this._coinConfig).material(this._material);
35
+ }
31
36
  getRegisterDidWithCDDBuilder() {
32
37
  return new registerDidWithCDDBuilder_1.RegisterDidWithCDDBuilder(this._coinConfig).material(this._material);
33
38
  }
@@ -37,6 +42,9 @@ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory
37
42
  getTokenTransferBuilder() {
38
43
  return new tokenTransferBuilder_1.TokenTransferBuilder(this._coinConfig).material(this._material);
39
44
  }
45
+ getHexTokenTransferBuilder() {
46
+ return new hexTokenTransferBuilder_1.HexTokenTransferBuilder(this._coinConfig).material(this._material);
47
+ }
40
48
  getRejectInstructionBuilder() {
41
49
  return new rejectInstructionBuilder_1.RejectInstructionBuilder(this._coinConfig).material(this._material);
42
50
  }
@@ -78,6 +86,10 @@ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory
78
86
  });
79
87
  const methodName = decodedTxn.method?.name;
80
88
  if (methodName === _1.Interface.MethodNames.TransferWithMemo) {
89
+ const args = decodedTxn.method.args;
90
+ if (utils_1.default.isNewMemoEncoding(args.memo)) {
91
+ return this.getHexTransferBuilder();
92
+ }
81
93
  return this.getTransferBuilder();
82
94
  }
83
95
  else if (methodName === iface_1.MethodNames.RegisterDidWithCDD) {
@@ -87,6 +99,10 @@ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory
87
99
  return this.getPreApproveAssetBuilder();
88
100
  }
89
101
  else if (methodName === iface_1.MethodNames.AddAndAffirmWithMediators) {
102
+ const args = decodedTxn.method.args;
103
+ if (utils_1.default.isNewMemoEncoding(args.instructionMemo)) {
104
+ return this.getHexTokenTransferBuilder();
105
+ }
90
106
  return this.getTokenTransferBuilder();
91
107
  }
92
108
  else if (methodName === iface_1.MethodNames.RejectInstruction) {
@@ -132,4 +148,4 @@ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory
132
148
  }
133
149
  }
134
150
  exports.TransactionBuilderFactory = TransactionBuilderFactory;
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtREFBMEY7QUFFMUYsc0VBQXVEO0FBQ3ZELHVEQUFvRDtBQUNwRCwyRUFBd0U7QUFDeEUseURBQXNEO0FBQ3RELCtEQUE0RDtBQUM1RCxtRUFBZ0U7QUFDaEUsbURBQWdEO0FBQ2hELHVFQUFvRTtBQUNwRSxvREFBNEI7QUFDNUIseUJBQXNFO0FBQ3RFLG1DQUFpRTtBQUdqRSxxRUFBa0U7QUFDbEUsaUVBQThEO0FBQzlELHlFQUFzRTtBQUN0RSx1REFBb0Q7QUFJcEQsTUFBYSx5QkFBMEIsU0FBUSx3Q0FBNkI7SUFHMUUsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxlQUFLLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixPQUFPLElBQUksaUNBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsNEJBQTRCO1FBQzFCLE9BQU8sSUFBSSxxREFBeUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBRUQseUJBQXlCO1FBQ3ZCLE9BQU8sSUFBSSwrQ0FBc0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRUQsdUJBQXVCO1FBQ3JCLE9BQU8sSUFBSSwyQ0FBb0Is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Q0FBQzthQUFNLElBQUksVUFBVSxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ2xDLE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ2hDLENBQUM7YUFBTSxJQUFJLFVBQVUsS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUNqQyxPQUFPLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNoQyxDQUFDO2FBQU0sSUFBSSxVQUFVLEtBQUssVUFBVSxFQUFFLENBQUM7WUFDckMsT0FBTyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUNuQyxDQUFDO2FBQU0sSUFBSSxVQUFVLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDbkMsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUNqQyxDQUFDO2FBQU0sSUFBSSxVQUFVLEtBQUssa0JBQWtCLEVBQUUsQ0FBQztZQUM3QyxPQUFPLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBQzNDLENBQUM7UUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLHFFQUFxRSxDQUFDLENBQUM7SUFDekYsQ0FBQztDQUNGO0FBeEhELDhEQXdIQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LCBOb3RJbXBsZW1lbnRlZEVycm9yIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgZGVjb2RlIH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItcG9sa2Fkb3QnO1xuaW1wb3J0IHsgVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2ZlckJ1aWxkZXInO1xuaW1wb3J0IHsgUmVnaXN0ZXJEaWRXaXRoQ0REQnVpbGRlciB9IGZyb20gJy4vcmVnaXN0ZXJEaWRXaXRoQ0REQnVpbGRlcic7XG5pbXBvcnQgeyBCb25kRXh0cmFCdWlsZGVyIH0gZnJvbSAnLi9ib25kRXh0cmFCdWlsZGVyJztcbmltcG9ydCB7IEJhdGNoU3Rha2luZ0J1aWxkZXIgfSBmcm9tICcuL2JhdGNoU3Rha2luZ0J1aWxkZXInO1xuaW1wb3J0IHsgQmF0Y2hVbnN0YWtpbmdCdWlsZGVyIH0gZnJvbSAnLi9iYXRjaFVuc3Rha2luZ0J1aWxkZXInO1xuaW1wb3J0IHsgVW5ib25kQnVpbGRlciB9IGZyb20gJy4vdW5ib25kQnVpbGRlcic7XG5pbXBvcnQgeyBXaXRoZHJhd1VuYm9uZGVkQnVpbGRlciB9IGZyb20gJy4vd2l0aGRyYXdVbmJvbmRlZEJ1aWxkZXInO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgSW50ZXJmYWNlLCBTaW5nbGV0b25SZWdpc3RyeSwgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi8nO1xuaW1wb3J0IHsgVHhNZXRob2QsIEJhdGNoQ2FsbE9iamVjdCwgTWV0aG9kTmFtZXMgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIGFzIEJhc2VUcmFuc2FjdGlvbiB9IGZyb20gJ0BiaXRnby1iZXRhL2Fic3RyYWN0LXN1YnN0cmF0ZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiBhcyBQb2x5eFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBQcmVBcHByb3ZlQXNzZXRCdWlsZGVyIH0gZnJvbSAnLi9wcmVBcHByb3ZlQXNzZXRCdWlsZGVyJztcbmltcG9ydCB7IFRva2VuVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90b2tlblRyYW5zZmVyQnVpbGRlcic7XG5pbXBvcnQgeyBSZWplY3RJbnN0cnVjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3JlamVjdEluc3RydWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBOb21pbmF0ZUJ1aWxkZXIgfSBmcm9tICcuL25vbWluYXRlQnVpbGRlcic7XG5cbmV4cG9ydCB0eXBlIFN1cHBvcnRlZFRyYW5zYWN0aW9uID0gQmFzZVRyYW5zYWN0aW9uIHwgUG9seXhUcmFuc2FjdGlvbjtcblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB7XG4gIHByb3RlY3RlZCBfbWF0ZXJpYWw6IEludGVyZmFjZS5NYXRlcmlhbDtcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gICAgdGhpcy5fbWF0ZXJpYWwgPSB1dGlscy5nZXRNYXRlcmlhbChfY29pbkNvbmZpZy5uZXR3b3JrLnR5cGUpO1xuICB9XG5cbiAgZ2V0VHJhbnNmZXJCdWlsZGVyKCk6IFRyYW5zZmVyQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2ZlckJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0UmVnaXN0ZXJEaWRXaXRoQ0REQnVpbGRlcigpOiBSZWdpc3RlckRpZFdpdGhDRERCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IFJlZ2lzdGVyRGlkV2l0aENEREJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0UHJlQXBwcm92ZUFzc2V0QnVpbGRlcigpOiBQcmVBcHByb3ZlQXNzZXRCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IFByZUFwcHJvdmVBc3NldEJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0VG9rZW5UcmFuc2ZlckJ1aWxkZXIoKTogVG9rZW5UcmFuc2ZlckJ1aWxkZXIge1xuICAgIHJldHVybiBuZXcgVG9rZW5UcmFuc2ZlckJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0UmVqZWN0SW5zdHJ1Y3Rpb25CdWlsZGVyKCk6IFJlamVjdEluc3RydWN0aW9uQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBSZWplY3RJbnN0cnVjdGlvbkJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0Qm9uZEV4dHJhQnVpbGRlcigpOiBCb25kRXh0cmFCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IEJvbmRFeHRyYUJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0QmF0Y2hCdWlsZGVyKCk6IEJhdGNoU3Rha2luZ0J1aWxkZXIge1xuICAgIHJldHVybiBuZXcgQmF0Y2hTdGFraW5nQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXRCYXRjaFVuc3Rha2luZ0J1aWxkZXIoKTogQmF0Y2hVbnN0YWtpbmdCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IEJhdGNoVW5zdGFraW5nQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXRVbmJvbmRCdWlsZGVyKCk6IFVuYm9uZEJ1aWxkZXIge1xuICAgIHJldHVybiBuZXcgVW5ib25kQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXRXaXRoZHJhd1VuYm9uZGVkQnVpbGRlcigpOiBXaXRoZHJhd1VuYm9uZGVkQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBXaXRoZHJhd1VuYm9uZGVkQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXROb21pbmF0ZUJ1aWxkZXIoKTogTm9taW5hdGVCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IE5vbWluYXRlQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXRXYWxsZXRJbml0aWFsaXphdGlvbkJ1aWxkZXIoKTogdm9pZCB7XG4gICAgdGhyb3cgbmV3IE5vdEltcGxlbWVudGVkRXJyb3IoYHdhbGxldEluaXRpYWxpemF0aW9uIGZvciAke3RoaXMuX2NvaW5Db25maWcubmFtZX0gbm90IGltcGxlbWVudGVkYCk7XG4gIH1cblxuICBmcm9tKHJhd1R4bjogc3RyaW5nKTogVHJhbnNhY3Rpb25CdWlsZGVyPFR4TWV0aG9kLCBTdXBwb3J0ZWRUcmFuc2FjdGlvbj4ge1xuICAgIGNvbnN0IGJ1aWxkZXIgPSB0aGlzLmdldEJ1aWxkZXIocmF3VHhuKTtcbiAgICBidWlsZGVyLmZyb20ocmF3VHhuKTtcbiAgICByZXR1cm4gYnVpbGRlcjtcbiAgfVxuXG4gIG1hdGVyaWFsKG1hdGVyaWFsOiBJbnRlcmZhY2UuTWF0ZXJpYWwpOiB0aGlzIHtcbiAgICB0aGlzLl9tYXRlcmlhbCA9IG1hdGVyaWFsO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRCdWlsZGVyKHJhd1R4bjogc3RyaW5nKTogVHJhbnNhY3Rpb25CdWlsZGVyPFR4TWV0aG9kLCBTdXBwb3J0ZWRUcmFuc2FjdGlvbj4ge1xuICAgIGNvbnN0IHJlZ2lzdHJ5ID0gU2luZ2xldG9uUmVnaXN0cnkuZ2V0SW5zdGFuY2UodGhpcy5fbWF0ZXJpYWwpO1xuICAgIGNvbnN0IGRlY29kZWRUeG4gPSBkZWNvZGUocmF3VHhuLCB7XG4gICAgICBtZXRhZGF0YVJwYzogdGhpcy5fbWF0ZXJpYWwubWV0YWRhdGEsXG4gICAgICByZWdpc3RyeTogcmVnaXN0cnksXG4gICAgfSk7XG5cbiAgICBjb25zdCBtZXRob2ROYW1lID0gZGVjb2RlZFR4bi5tZXRob2Q/Lm5hbWU7XG4gICAgaWYgKG1ldGhvZE5hbWUgPT09IEludGVyZmFjZS5NZXRob2ROYW1lcy5UcmFuc2ZlcldpdGhNZW1vKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRUcmFuc2ZlckJ1aWxkZXIoKTtcbiAgICB9IGVsc2UgaWYgKG1ldGhvZE5hbWUgPT09IE1ldGhvZE5hbWVzLlJlZ2lzdGVyRGlkV2l0aENERCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0UmVnaXN0ZXJEaWRXaXRoQ0REQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gTWV0aG9kTmFtZXMuUHJlQXBwcm92ZUFzc2V0KSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRQcmVBcHByb3ZlQXNzZXRCdWlsZGVyKCk7XG4gICAgfSBlbHNlIGlmIChtZXRob2ROYW1lID09PSBNZXRob2ROYW1lcy5BZGRBbmRBZmZpcm1XaXRoTWVkaWF0b3JzKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRUb2tlblRyYW5zZmVyQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gTWV0aG9kTmFtZXMuUmVqZWN0SW5zdHJ1Y3Rpb24pIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFJlamVjdEluc3RydWN0aW9uQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gJ2JvbmRFeHRyYScpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldEJvbmRFeHRyYUJ1aWxkZXIoKTtcbiAgICB9IGVsc2UgaWYgKG1ldGhvZE5hbWUgPT09ICdiYXRjaEFsbCcpIHtcbiAgICAgIGNvbnN0IGFyZ3MgPSBkZWNvZGVkVHhuLm1ldGhvZC5hcmdzIGFzIHsgY2FsbHM/OiBCYXRjaENhbGxPYmplY3RbXSB9O1xuXG4gICAgICBpZiAoYXJncy5jYWxscyAmJiBhcmdzLmNhbGxzLmxlbmd0aCA9PT0gMikge1xuICAgICAgICAvLyBEZWNvZGUgbWV0aG9kIG5hbWVzIGZyb20gdGhlIGNhbGxzIHVzaW5nIHV0aWxzLmRlY29kZU1ldGhvZE5hbWVcbiAgICAgICAgY29uc3QgZmlyc3RDYWxsTWV0aG9kID0gdXRpbHMuZGVjb2RlTWV0aG9kTmFtZShhcmdzLmNhbGxzWzBdLCByZWdpc3RyeSk7XG4gICAgICAgIGNvbnN0IHNlY29uZENhbGxNZXRob2QgPSB1dGlscy5kZWNvZGVNZXRob2ROYW1lKGFyZ3MuY2FsbHNbMV0sIHJlZ2lzdHJ5KTtcblxuICAgICAgICAvLyBDaGVjayBmb3IgYmF0Y2ggc3Rha2luZyBwYXR0ZXJuOiBib25kICsgbm9taW5hdGVcbiAgICAgICAgaWYgKGZpcnN0Q2FsbE1ldGhvZCA9PT0gJ2JvbmQnICYmIHNlY29uZENhbGxNZXRob2QgPT09ICdub21pbmF0ZScpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRCYXRjaEJ1aWxkZXIoKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBDaGVjayBmb3IgYmF0Y2ggdW5zdGFraW5nIHBhdHRlcm46IGNoaWxsICsgdW5ib25kXG4gICAgICAgIGlmIChmaXJzdENhbGxNZXRob2QgPT09ICdjaGlsbCcgJiYgc2Vjb25kQ2FsbE1ldGhvZCA9PT0gJ3VuYm9uZCcpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRCYXRjaFVuc3Rha2luZ0J1aWxkZXIoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLy8gRmFsbCBiYWNrIHRvIGdlbmVyYWwgYmF0Y2ggYnVpbGRlciBmb3Igb3RoZXIgYmF0Y2hBbGwgY2FzZXNcbiAgICAgIHJldHVybiB0aGlzLmdldEJhdGNoQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gJ2JhdGNoJykge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0QmF0Y2hCdWlsZGVyKCk7XG4gICAgfSBlbHNlIGlmIChtZXRob2ROYW1lID09PSAnYm9uZCcpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldEJhdGNoQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gJ25vbWluYXRlJykge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0Tm9taW5hdGVCdWlsZGVyKCk7XG4gICAgfSBlbHNlIGlmIChtZXRob2ROYW1lID09PSAndW5ib25kJykge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0VW5ib25kQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gJ3dpdGhkcmF3VW5ib25kZWQnKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRXaXRoZHJhd1VuYm9uZGVkQnVpbGRlcigpO1xuICAgIH1cblxuICAgIHRocm93IG5ldyBFcnJvcignVHJhbnNhY3Rpb24gY2Fubm90IGJlIHBhcnNlZCBvciBoYXMgYW4gdW5zdXBwb3J0ZWQgdHJhbnNhY3Rpb24gdHlwZScpO1xuICB9XG59XG4iXX0=
151
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtREFBMEY7QUFFMUYsc0VBQXVEO0FBQ3ZELHVEQUFvRDtBQUNwRCw2REFBMEQ7QUFDMUQsMkVBQXdFO0FBQ3hFLHlEQUFzRDtBQUN0RCwrREFBNEQ7QUFDNUQsbUVBQWdFO0FBQ2hFLG1EQUFnRDtBQUNoRCx1RUFBb0U7QUFDcEUsb0RBQTRCO0FBQzVCLHlCQUFzRTtBQUN0RSxtQ0FBZ0c7QUFHaEcscUVBQWtFO0FBQ2xFLGlFQUE4RDtBQUM5RCx1RUFBb0U7QUFDcEUseUVBQXNFO0FBQ3RFLHVEQUFvRDtBQUlwRCxNQUFhLHlCQUEwQixTQUFRLHdDQUE2QjtJQUcxRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsU0FBUyxHQUFHLGVBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE9BQU8sSUFBSSxpQ0FBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsT0FBTyxJQUFJLHVDQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFRCw0QkFBNEI7UUFDMUIsT0FBTyxJQUFJLHFEQUF5QixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFRCx5QkFB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QztRQUNqQyxDQUFDO2FBQU0sSUFBSSxVQUFVLEtBQUssa0JBQWtCLEVBQUUsQ0FBQztZQUM3QyxPQUFPLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBQzNDLENBQUM7UUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLHFFQUFxRSxDQUFDLENBQUM7SUFDekYsQ0FBQztDQUNGO0FBeElELDhEQXdJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LCBOb3RJbXBsZW1lbnRlZEVycm9yIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgZGVjb2RlIH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItcG9sa2Fkb3QnO1xuaW1wb3J0IHsgVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2ZlckJ1aWxkZXInO1xuaW1wb3J0IHsgSGV4VHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi9oZXhUcmFuc2ZlckJ1aWxkZXInO1xuaW1wb3J0IHsgUmVnaXN0ZXJEaWRXaXRoQ0REQnVpbGRlciB9IGZyb20gJy4vcmVnaXN0ZXJEaWRXaXRoQ0REQnVpbGRlcic7XG5pbXBvcnQgeyBCb25kRXh0cmFCdWlsZGVyIH0gZnJvbSAnLi9ib25kRXh0cmFCdWlsZGVyJztcbmltcG9ydCB7IEJhdGNoU3Rha2luZ0J1aWxkZXIgfSBmcm9tICcuL2JhdGNoU3Rha2luZ0J1aWxkZXInO1xuaW1wb3J0IHsgQmF0Y2hVbnN0YWtpbmdCdWlsZGVyIH0gZnJvbSAnLi9iYXRjaFVuc3Rha2luZ0J1aWxkZXInO1xuaW1wb3J0IHsgVW5ib25kQnVpbGRlciB9IGZyb20gJy4vdW5ib25kQnVpbGRlcic7XG5pbXBvcnQgeyBXaXRoZHJhd1VuYm9uZGVkQnVpbGRlciB9IGZyb20gJy4vd2l0aGRyYXdVbmJvbmRlZEJ1aWxkZXInO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgSW50ZXJmYWNlLCBTaW5nbGV0b25SZWdpc3RyeSwgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi8nO1xuaW1wb3J0IHsgVHhNZXRob2QsIEJhdGNoQ2FsbE9iamVjdCwgTWV0aG9kTmFtZXMsIEFkZEFuZEFmZmlybVdpdGhNZWRpYXRvcnNBcmdzIH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiBhcyBCYXNlVHJhbnNhY3Rpb24gfSBmcm9tICdAYml0Z28tYmV0YS9hYnN0cmFjdC1zdWJzdHJhdGUnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gYXMgUG9seXhUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgUHJlQXBwcm92ZUFzc2V0QnVpbGRlciB9IGZyb20gJy4vcHJlQXBwcm92ZUFzc2V0QnVpbGRlcic7XG5pbXBvcnQgeyBUb2tlblRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdG9rZW5UcmFuc2ZlckJ1aWxkZXInO1xuaW1wb3J0IHsgSGV4VG9rZW5UcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL2hleFRva2VuVHJhbnNmZXJCdWlsZGVyJztcbmltcG9ydCB7IFJlamVjdEluc3RydWN0aW9uQnVpbGRlciB9IGZyb20gJy4vcmVqZWN0SW5zdHJ1Y3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IE5vbWluYXRlQnVpbGRlciB9IGZyb20gJy4vbm9taW5hdGVCdWlsZGVyJztcblxuZXhwb3J0IHR5cGUgU3VwcG9ydGVkVHJhbnNhY3Rpb24gPSBCYXNlVHJhbnNhY3Rpb24gfCBQb2x5eFRyYW5zYWN0aW9uO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IHtcbiAgcHJvdGVjdGVkIF9tYXRlcmlhbDogSW50ZXJmYWNlLk1hdGVyaWFsO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLl9tYXRlcmlhbCA9IHV0aWxzLmdldE1hdGVyaWFsKF9jb2luQ29uZmlnLm5ldHdvcmsudHlwZSk7XG4gIH1cblxuICBnZXRUcmFuc2ZlckJ1aWxkZXIoKTogVHJhbnNmZXJCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zZmVyQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXRIZXhUcmFuc2ZlckJ1aWxkZXIoKTogSGV4VHJhbnNmZXJCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IEhleFRyYW5zZmVyQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXRSZWdpc3RlckRpZFdpdGhDRERCdWlsZGVyKCk6IFJlZ2lzdGVyRGlkV2l0aENEREJ1aWxkZXIge1xuICAgIHJldHVybiBuZXcgUmVnaXN0ZXJEaWRXaXRoQ0REQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXRQcmVBcHByb3ZlQXNzZXRCdWlsZGVyKCk6IFByZUFwcHJvdmVBc3NldEJ1aWxkZXIge1xuICAgIHJldHVybiBuZXcgUHJlQXBwcm92ZUFzc2V0QnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXRUb2tlblRyYW5zZmVyQnVpbGRlcigpOiBUb2tlblRyYW5zZmVyQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBUb2tlblRyYW5zZmVyQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXRIZXhUb2tlblRyYW5zZmVyQnVpbGRlcigpOiBIZXhUb2tlblRyYW5zZmVyQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBIZXhUb2tlblRyYW5zZmVyQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXRSZWplY3RJbnN0cnVjdGlvbkJ1aWxkZXIoKTogUmVqZWN0SW5zdHJ1Y3Rpb25CdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IFJlamVjdEluc3RydWN0aW9uQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXRCb25kRXh0cmFCdWlsZGVyKCk6IEJvbmRFeHRyYUJ1aWxkZXIge1xuICAgIHJldHVybiBuZXcgQm9uZEV4dHJhQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXRCYXRjaEJ1aWxkZXIoKTogQmF0Y2hTdGFraW5nQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBCYXRjaFN0YWtpbmdCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpLm1hdGVyaWFsKHRoaXMuX21hdGVyaWFsKTtcbiAgfVxuXG4gIGdldEJhdGNoVW5zdGFraW5nQnVpbGRlcigpOiBCYXRjaFVuc3Rha2luZ0J1aWxkZXIge1xuICAgIHJldHVybiBuZXcgQmF0Y2hVbnN0YWtpbmdCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpLm1hdGVyaWFsKHRoaXMuX21hdGVyaWFsKTtcbiAgfVxuXG4gIGdldFVuYm9uZEJ1aWxkZXIoKTogVW5ib25kQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBVbmJvbmRCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpLm1hdGVyaWFsKHRoaXMuX21hdGVyaWFsKTtcbiAgfVxuXG4gIGdldFdpdGhkcmF3VW5ib25kZWRCdWlsZGVyKCk6IFdpdGhkcmF3VW5ib25kZWRCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IFdpdGhkcmF3VW5ib25kZWRCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpLm1hdGVyaWFsKHRoaXMuX21hdGVyaWFsKTtcbiAgfVxuXG4gIGdldE5vbWluYXRlQnVpbGRlcigpOiBOb21pbmF0ZUJ1aWxkZXIge1xuICAgIHJldHVybiBuZXcgTm9taW5hdGVCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpLm1hdGVyaWFsKHRoaXMuX21hdGVyaWFsKTtcbiAgfVxuXG4gIGdldFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlcigpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcihgd2FsbGV0SW5pdGlhbGl6YXRpb24gZm9yICR7dGhpcy5fY29pbkNvbmZpZy5uYW1lfSBub3QgaW1wbGVtZW50ZWRgKTtcbiAgfVxuXG4gIGZyb20ocmF3VHhuOiBzdHJpbmcpOiBUcmFuc2FjdGlvbkJ1aWxkZXI8VHhNZXRob2QsIFN1cHBvcnRlZFRyYW5zYWN0aW9uPiB7XG4gICAgY29uc3QgYnVpbGRlciA9IHRoaXMuZ2V0QnVpbGRlcihyYXdUeG4pO1xuICAgIGJ1aWxkZXIuZnJvbShyYXdUeG4pO1xuICAgIHJldHVybiBidWlsZGVyO1xuICB9XG5cbiAgbWF0ZXJpYWwobWF0ZXJpYWw6IEludGVyZmFjZS5NYXRlcmlhbCk6IHRoaXMge1xuICAgIHRoaXMuX21hdGVyaWFsID0gbWF0ZXJpYWw7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwcml2YXRlIGdldEJ1aWxkZXIocmF3VHhuOiBzdHJpbmcpOiBUcmFuc2FjdGlvbkJ1aWxkZXI8VHhNZXRob2QsIFN1cHBvcnRlZFRyYW5zYWN0aW9uPiB7XG4gICAgY29uc3QgcmVnaXN0cnkgPSBTaW5nbGV0b25SZWdpc3RyeS5nZXRJbnN0YW5jZSh0aGlzLl9tYXRlcmlhbCk7XG4gICAgY29uc3QgZGVjb2RlZFR4biA9IGRlY29kZShyYXdUeG4sIHtcbiAgICAgIG1ldGFkYXRhUnBjOiB0aGlzLl9tYXRlcmlhbC5tZXRhZGF0YSxcbiAgICAgIHJlZ2lzdHJ5OiByZWdpc3RyeSxcbiAgICB9KTtcblxuICAgIGNvbnN0IG1ldGhvZE5hbWUgPSBkZWNvZGVkVHhuLm1ldGhvZD8ubmFtZTtcbiAgICBpZiAobWV0aG9kTmFtZSA9PT0gSW50ZXJmYWNlLk1ldGhvZE5hbWVzLlRyYW5zZmVyV2l0aE1lbW8pIHtcbiAgICAgIGNvbnN0IGFyZ3MgPSBkZWNvZGVkVHhuLm1ldGhvZC5hcmdzIGFzIEludGVyZmFjZS5UcmFuc2ZlcldpdGhNZW1vQXJncztcbiAgICAgIGlmICh1dGlscy5pc05ld01lbW9FbmNvZGluZyhhcmdzLm1lbW8pKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEhleFRyYW5zZmVyQnVpbGRlcigpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMuZ2V0VHJhbnNmZXJCdWlsZGVyKCk7XG4gICAgfSBlbHNlIGlmIChtZXRob2ROYW1lID09PSBNZXRob2ROYW1lcy5SZWdpc3RlckRpZFdpdGhDREQpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFJlZ2lzdGVyRGlkV2l0aENEREJ1aWxkZXIoKTtcbiAgICB9IGVsc2UgaWYgKG1ldGhvZE5hbWUgPT09IE1ldGhvZE5hbWVzLlByZUFwcHJvdmVBc3NldCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0UHJlQXBwcm92ZUFzc2V0QnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gTWV0aG9kTmFtZXMuQWRkQW5kQWZmaXJtV2l0aE1lZGlhdG9ycykge1xuICAgICAgY29uc3QgYXJncyA9IGRlY29kZWRUeG4ubWV0aG9kLmFyZ3MgYXMgQWRkQW5kQWZmaXJtV2l0aE1lZGlhdG9yc0FyZ3M7XG4gICAgICBpZiAodXRpbHMuaXNOZXdNZW1vRW5jb2RpbmcoYXJncy5pbnN0cnVjdGlvbk1lbW8pKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEhleFRva2VuVHJhbnNmZXJCdWlsZGVyKCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdGhpcy5nZXRUb2tlblRyYW5zZmVyQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gTWV0aG9kTmFtZXMuUmVqZWN0SW5zdHJ1Y3Rpb24pIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFJlamVjdEluc3RydWN0aW9uQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gJ2JvbmRFeHRyYScpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldEJvbmRFeHRyYUJ1aWxkZXIoKTtcbiAgICB9IGVsc2UgaWYgKG1ldGhvZE5hbWUgPT09ICdiYXRjaEFsbCcpIHtcbiAgICAgIGNvbnN0IGFyZ3MgPSBkZWNvZGVkVHhuLm1ldGhvZC5hcmdzIGFzIHsgY2FsbHM/OiBCYXRjaENhbGxPYmplY3RbXSB9O1xuXG4gICAgICBpZiAoYXJncy5jYWxscyAmJiBhcmdzLmNhbGxzLmxlbmd0aCA9PT0gMikge1xuICAgICAgICAvLyBEZWNvZGUgbWV0aG9kIG5hbWVzIGZyb20gdGhlIGNhbGxzIHVzaW5nIHV0aWxzLmRlY29kZU1ldGhvZE5hbWVcbiAgICAgICAgY29uc3QgZmlyc3RDYWxsTWV0aG9kID0gdXRpbHMuZGVjb2RlTWV0aG9kTmFtZShhcmdzLmNhbGxzWzBdLCByZWdpc3RyeSk7XG4gICAgICAgIGNvbnN0IHNlY29uZENhbGxNZXRob2QgPSB1dGlscy5kZWNvZGVNZXRob2ROYW1lKGFyZ3MuY2FsbHNbMV0sIHJlZ2lzdHJ5KTtcblxuICAgICAgICAvLyBDaGVjayBmb3IgYmF0Y2ggc3Rha2luZyBwYXR0ZXJuOiBib25kICsgbm9taW5hdGVcbiAgICAgICAgaWYgKGZpcnN0Q2FsbE1ldGhvZCA9PT0gJ2JvbmQnICYmIHNlY29uZENhbGxNZXRob2QgPT09ICdub21pbmF0ZScpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRCYXRjaEJ1aWxkZXIoKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBDaGVjayBmb3IgYmF0Y2ggdW5zdGFraW5nIHBhdHRlcm46IGNoaWxsICsgdW5ib25kXG4gICAgICAgIGlmIChmaXJzdENhbGxNZXRob2QgPT09ICdjaGlsbCcgJiYgc2Vjb25kQ2FsbE1ldGhvZCA9PT0gJ3VuYm9uZCcpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRCYXRjaFVuc3Rha2luZ0J1aWxkZXIoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLy8gRmFsbCBiYWNrIHRvIGdlbmVyYWwgYmF0Y2ggYnVpbGRlciBmb3Igb3RoZXIgYmF0Y2hBbGwgY2FzZXNcbiAgICAgIHJldHVybiB0aGlzLmdldEJhdGNoQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gJ2JhdGNoJykge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0QmF0Y2hCdWlsZGVyKCk7XG4gICAgfSBlbHNlIGlmIChtZXRob2ROYW1lID09PSAnYm9uZCcpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldEJhdGNoQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gJ25vbWluYXRlJykge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0Tm9taW5hdGVCdWlsZGVyKCk7XG4gICAgfSBlbHNlIGlmIChtZXRob2ROYW1lID09PSAndW5ib25kJykge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0VW5ib25kQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gJ3dpdGhkcmF3VW5ib25kZWQnKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRXaXRoZHJhd1VuYm9uZGVkQnVpbGRlcigpO1xuICAgIH1cblxuICAgIHRocm93IG5ldyBFcnJvcignVHJhbnNhY3Rpb24gY2Fubm90IGJlIHBhcnNlZCBvciBoYXMgYW4gdW5zdXBwb3J0ZWQgdHJhbnNhY3Rpb24gdHlwZScpO1xuICB9XG59XG4iXX0=
@@ -19,6 +19,26 @@ export declare class Utils extends SubstrateUtils {
19
19
  * @returns {boolean} true if valid DID format, false otherwise
20
20
  */
21
21
  isValidDid(did: string): boolean;
22
+ /**
23
+ * Encode a memo string using the NEW Polymesh format:
24
+ * UTF-8 bytes right-padded with 0x00 to 32 bytes, returned as a 0x-prefixed hex string.
25
+ *
26
+ * @param text The intended memo string
27
+ * @returns 0x-prefixed 66-character hex string representing the 32-byte encoded memo
28
+ */
29
+ encodeMemoNew(text: string): string;
30
+ /**
31
+ * Detect whether a decoded 32-byte memo (0x-prefixed hex from txwrapper decode()) uses NEW encoding.
32
+ *
33
+ * Detection rules (see problem.md):
34
+ * - Any 0x00 byte → NEW (null right-padding)
35
+ * - All 0x30 bytes → OLD (memo "0" in ASCII-left-padded form)
36
+ * - Leading 0x30 bytes then non-0x30 content → OLD (ASCII '0' left-padding)
37
+ * - Otherwise → NEW (content at byte 0, full 32-byte memo, or no ASCII pad)
38
+ *
39
+ * @param memo 0x-prefixed 66-char hex string as returned by txwrapper decode()
40
+ */
41
+ isNewMemoEncoding(memo: string): boolean;
22
42
  getMaterial(networkType: NetworkType): Interface.Material;
23
43
  decodeMethodName(call: BatchCallObject, registry: TypeRegistry): string;
24
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG1C,qBAAa,KAAM,SAAQ,cAAc;IACvC;;;;;;OAMG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAK1C;;;;;;OAMG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIhC,WAAW,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC,QAAQ;IAIzD,gBAAgB,CAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,GAAG,MAAM;CA0BxE;AAED,QAAA,MAAM,KAAK,OAAc,CAAC;AAC1B,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG1C,qBAAa,KAAM,SAAQ,cAAc;IACvC;;;;;;OAMG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAK1C;;;;;;OAMG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIhC;;;;;;OAMG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IASnC;;;;;;;;;;OAUG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAiBxC,WAAW,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC,QAAQ;IAIzD,gBAAgB,CAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,GAAG,MAAM;CA0BxE;AAED,QAAA,MAAM,KAAK,OAAc,CAAC;AAC1B,eAAe,KAAK,CAAC"}
@@ -27,6 +27,48 @@ class Utils extends abstract_substrate_1.Utils {
27
27
  isValidDid(did) {
28
28
  return constants_1.POLYX_DID_REGEX.test(did);
29
29
  }
30
+ /**
31
+ * Encode a memo string using the NEW Polymesh format:
32
+ * UTF-8 bytes right-padded with 0x00 to 32 bytes, returned as a 0x-prefixed hex string.
33
+ *
34
+ * @param text The intended memo string
35
+ * @returns 0x-prefixed 66-character hex string representing the 32-byte encoded memo
36
+ */
37
+ encodeMemoNew(text) {
38
+ const bytes = Buffer.from(text, 'utf8');
39
+ if (bytes.length > constants_1.MEMO_MAX_BYTES) {
40
+ throw new Error(`Memo exceeds maximum length of ${constants_1.MEMO_MAX_BYTES} bytes (got ${bytes.length} bytes)`);
41
+ }
42
+ const textHex = bytes.toString('hex');
43
+ return `0x${textHex.padEnd(64, '0')}`;
44
+ }
45
+ /**
46
+ * Detect whether a decoded 32-byte memo (0x-prefixed hex from txwrapper decode()) uses NEW encoding.
47
+ *
48
+ * Detection rules (see problem.md):
49
+ * - Any 0x00 byte → NEW (null right-padding)
50
+ * - All 0x30 bytes → OLD (memo "0" in ASCII-left-padded form)
51
+ * - Leading 0x30 bytes then non-0x30 content → OLD (ASCII '0' left-padding)
52
+ * - Otherwise → NEW (content at byte 0, full 32-byte memo, or no ASCII pad)
53
+ *
54
+ * @param memo 0x-prefixed 66-char hex string as returned by txwrapper decode()
55
+ */
56
+ isNewMemoEncoding(memo) {
57
+ if (!constants_1.MEMO_HEX_REGEX.test(memo))
58
+ return false;
59
+ const bytes = Buffer.from(memo.slice(2), 'hex');
60
+ if (bytes.some((b) => b === 0x00))
61
+ return true;
62
+ if (bytes.every((b) => b === 0x30))
63
+ return false;
64
+ let leadingAsciiZeros = 0;
65
+ while (leadingAsciiZeros < bytes.length && bytes[leadingAsciiZeros] === 0x30) {
66
+ leadingAsciiZeros++;
67
+ }
68
+ if (leadingAsciiZeros > 0 && leadingAsciiZeros < bytes.length)
69
+ return false;
70
+ return true;
71
+ }
30
72
  getMaterial(networkType) {
31
73
  return (networkType === statics_1.NetworkType.MAINNET ? resources_1.mainnetMaterial : resources_1.testnetMaterial);
32
74
  }
@@ -58,4 +100,4 @@ class Utils extends abstract_substrate_1.Utils {
58
100
  exports.Utils = Utils;
59
101
  const utils = new Utils();
60
102
  exports.default = utils;
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHVFQUFvRjtBQUNwRixpREFBa0Q7QUFFbEQsNENBQWdFO0FBRWhFLDJDQUE4QztBQUU5QyxNQUFhLEtBQU0sU0FBUSwwQkFBYztJQUN2Qzs7Ozs7O09BTUc7SUFDSCxnQkFBZ0IsQ0FBQyxRQUFnQjtRQUMvQixNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsV0FBVyxFQUFFLEtBQUssT0FBTyxDQUFDO1FBQ3JELE9BQU8sU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsVUFBVSxDQUFDLEdBQVc7UUFDcEIsT0FBTywyQkFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsV0FBVyxDQUFDLFdBQXdCO1FBQ2xDLE9BQU8sQ0FBQyxXQUFXLEtBQUsscUJBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLDJCQUFlLENBQUMsQ0FBQyxDQUFDLDJCQUFlLENBQWtDLENBQUM7SUFDcEgsQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQXFCLEVBQUUsUUFBc0I7UUFDNUQsMkNBQTJDO1FBQzNDLE1BQU0sYUFBYSxHQUFHLElBQWdELENBQUM7UUFDdkUsTUFBTSxnQkFBZ0IsR0FBRyxhQUFhLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUM7UUFFaEUsSUFBSSxPQUFPLGdCQUFnQixLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3pDLHlDQUF5QztZQUN6QyxJQUFJLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ3JFLElBQUksQ0FBQztvQkFDSCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsWUFBWSxDQUN2QyxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FDdkUsQ0FBQztvQkFDRixPQUFPLFdBQVcsQ0FBQyxNQUFNLENBQUM7Z0JBQzVCLENBQUM7Z0JBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztvQkFDWCxnREFBZ0Q7b0JBQ2hELE9BQU8sZ0JBQWdCLENBQUM7Z0JBQzFCLENBQUM7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sK0JBQStCO2dCQUMvQixPQUFPLGdCQUFnQixDQUFDO1lBQzFCLENBQUM7UUFDSCxDQUFDO1FBRUQsV0FBVztRQUNYLE9BQU8sTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDbEMsQ0FBQztDQUNGO0FBdERELHNCQXNEQztBQUVELE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7QUFDMUIsa0JBQWUsS0FBSyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXRpbHMgYXMgU3Vic3RyYXRlVXRpbHMsIEludGVyZmFjZSB9IGZyb20gJ0BiaXRnby1iZXRhL2Fic3RyYWN0LXN1YnN0cmF0ZSc7XG5pbXBvcnQgeyBOZXR3b3JrVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgVHlwZVJlZ2lzdHJ5IH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItY29yZS9saWIvdHlwZXMnO1xuaW1wb3J0IHsgbWFpbm5ldE1hdGVyaWFsLCB0ZXN0bmV0TWF0ZXJpYWwgfSBmcm9tICcuLi9yZXNvdXJjZXMnO1xuaW1wb3J0IHsgQmF0Y2hDYWxsT2JqZWN0IH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBQT0xZWF9ESURfUkVHRVggfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBjbGFzcyBVdGlscyBleHRlbmRzIFN1YnN0cmF0ZVV0aWxzIHtcbiAgLyoqXG4gICAqIEdldCB0aGUgYXBwcm9wcmlhdGUgYWRkcmVzcyBmb3JtYXQgYmFzZWQgb24gbmV0d29yayB0eXBlXG4gICAqIFJldHVybnMgMTIgZm9yIG1haW5uZXQgYW5kIDQyIGZvciB0ZXN0bmV0XG4gICAqXG4gICAqIEBwYXJhbSBjb2luTmFtZSBUaGUgbmFtZSBvZiB0aGUgY29pblxuICAgKiBAcmV0dXJucyBUaGUgYWRkcmVzcyBmb3JtYXQgdG8gdXNlXG4gICAqL1xuICBnZXRBZGRyZXNzRm9ybWF0KGNvaW5OYW1lOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIGNvbnN0IGlzTWFpbm5ldCA9IGNvaW5OYW1lLnRvTG93ZXJDYXNlKCkgPT09ICdwb2x5eCc7XG4gICAgcmV0dXJuIGlzTWFpbm5ldCA/IDEyIDogNDI7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIGEgc3RyaW5nIGlzIGEgdmFsaWQgUG9seW1lc2ggRElEIChEZWNlbnRyYWxpemVkIElkZW50aWZpZXIpXG4gICAqIERJRHMgYXJlIDMyLWJ5dGUgaGV4IHN0cmluZ3MgKDB4IHByZWZpeCArIDY0IGhleCBjaGFyYWN0ZXJzKVxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gZGlkIC0gVGhlIHN0cmluZyB0byB2YWxpZGF0ZVxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZiB2YWxpZCBESUQgZm9ybWF0LCBmYWxzZSBvdGhlcndpc2VcbiAgICovXG4gIGlzVmFsaWREaWQoZGlkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gUE9MWVhfRElEX1JFR0VYLnRlc3QoZGlkKTtcbiAgfVxuXG4gIGdldE1hdGVyaWFsKG5ldHdvcmtUeXBlOiBOZXR3b3JrVHlwZSk6IEludGVyZmFjZS5NYXRlcmlhbCB7XG4gICAgcmV0dXJuIChuZXR3b3JrVHlwZSA9PT0gTmV0d29ya1R5cGUuTUFJTk5FVCA/IG1haW5uZXRNYXRlcmlhbCA6IHRlc3RuZXRNYXRlcmlhbCkgYXMgdW5rbm93biBhcyBJbnRlcmZhY2UuTWF0ZXJpYWw7XG4gIH1cblxuICBkZWNvZGVNZXRob2ROYW1lKGNhbGw6IEJhdGNoQ2FsbE9iamVjdCwgcmVnaXN0cnk6IFR5cGVSZWdpc3RyeSk6IHN0cmluZyB7XG4gICAgLy8gSGFuZGxlIGJvdGggY2FsbEluZGV4IGFuZCBtZXRob2QgZm9ybWF0c1xuICAgIGNvbnN0IGNhbGxXaXRoSW5kZXggPSBjYWxsIGFzIEJhdGNoQ2FsbE9iamVjdCAmIHsgY2FsbEluZGV4Pzogc3RyaW5nIH07XG4gICAgY29uc3QgbWV0aG9kSWRlbnRpZmllciA9IGNhbGxXaXRoSW5kZXguY2FsbEluZGV4IHx8IGNhbGwubWV0aG9kO1xuXG4gICAgaWYgKHR5cGVvZiBtZXRob2RJZGVudGlmaWVyID09PSAnc3RyaW5nJykge1xuICAgICAgLy8gQ2hlY2sgaWYgaXQgbG9va3MgbGlrZSBhIGhleCBjYWxsSW5kZXhcbiAgICAgIGlmIChtZXRob2RJZGVudGlmaWVyLnN0YXJ0c1dpdGgoJzB4JykgJiYgbWV0aG9kSWRlbnRpZmllci5sZW5ndGggPiAyKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgZGVjb2RlZENhbGwgPSByZWdpc3RyeS5maW5kTWV0YUNhbGwoXG4gICAgICAgICAgICBuZXcgVWludDhBcnJheShCdWZmZXIuZnJvbShtZXRob2RJZGVudGlmaWVyLnJlcGxhY2UoJzB4JywgJycpLCAnaGV4JykpXG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm4gZGVjb2RlZENhbGwubWV0aG9kO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgLy8gRmFsbGJhY2s6IGFzc3VtZSBpdCdzIGFscmVhZHkgdGhlIG1ldGhvZCBuYW1lXG4gICAgICAgICAgcmV0dXJuIG1ldGhvZElkZW50aWZpZXI7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIEFscmVhZHkgYSBzaW1wbGUgbWV0aG9kIG5hbWVcbiAgICAgICAgcmV0dXJuIG1ldGhvZElkZW50aWZpZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRmFsbGJhY2tcbiAgICByZXR1cm4gU3RyaW5nKG1ldGhvZElkZW50aWZpZXIpO1xuICB9XG59XG5cbmNvbnN0IHV0aWxzID0gbmV3IFV0aWxzKCk7XG5leHBvcnQgZGVmYXVsdCB1dGlscztcbiJdfQ==
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHVFQUFvRjtBQUNwRixpREFBa0Q7QUFFbEQsNENBQWdFO0FBRWhFLDJDQUE4RTtBQUU5RSxNQUFhLEtBQU0sU0FBUSwwQkFBYztJQUN2Qzs7Ozs7O09BTUc7SUFDSCxnQkFBZ0IsQ0FBQyxRQUFnQjtRQUMvQixNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsV0FBVyxFQUFFLEtBQUssT0FBTyxDQUFDO1FBQ3JELE9BQU8sU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsVUFBVSxDQUFDLEdBQVc7UUFDcEIsT0FBTywyQkFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsYUFBYSxDQUFDLElBQVk7UUFDeEIsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDeEMsSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLDBCQUFjLEVBQUUsQ0FBQztZQUNsQyxNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQywwQkFBYyxlQUFlLEtBQUssQ0FBQyxNQUFNLFNBQVMsQ0FBQyxDQUFDO1FBQ3hHLENBQUM7UUFDRCxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLE9BQU8sS0FBSyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRDs7Ozs7Ozs7OztPQVVHO0lBQ0gsaUJBQWlCLENBQUMsSUFBWTtRQUM1QixJQUFJLENBQUMsMEJBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFFN0MsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRWhELElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FBQztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQy9DLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FBQztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBRWpELElBQUksaUJBQWlCLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLE9BQU8saUJBQWlCLEdBQUcsS0FBSyxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUM3RSxpQkFBaUIsRUFBRSxDQUFDO1FBQ3RCLENBQUM7UUFDRCxJQUFJLGlCQUFpQixHQUFHLENBQUMsSUFBSSxpQkFBaUIsR0FBRyxLQUFLLENBQUMsTUFBTTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBRTVFLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELFdBQVcsQ0FBQyxXQUF3QjtRQUNsQyxPQUFPLENBQUMsV0FBVyxLQUFLLHFCQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQywyQkFBZSxDQUFDLENBQUMsQ0FBQywyQkFBZSxDQUFrQyxDQUFDO0lBQ3BILENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxJQUFxQixFQUFFLFFBQXNCO1FBQzVELDJDQUEyQztRQUMzQyxNQUFNLGFBQWEsR0FBRyxJQUFnRCxDQUFDO1FBQ3ZFLE1BQU0sZ0JBQWdCLEdBQUcsYUFBYSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDO1FBRWhFLElBQUksT0FBTyxnQkFBZ0IsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUN6Qyx5Q0FBeUM7WUFDekMsSUFBSSxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksZ0JBQWdCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUNyRSxJQUFJLENBQUM7b0JBQ0gsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FDdkMsSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQ3ZFLENBQUM7b0JBQ0YsT0FBTyxXQUFXLENBQUMsTUFBTSxDQUFDO2dCQUM1QixDQUFDO2dCQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7b0JBQ1gsZ0RBQWdEO29CQUNoRCxPQUFPLGdCQUFnQixDQUFDO2dCQUMxQixDQUFDO1lBQ0gsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLCtCQUErQjtnQkFDL0IsT0FBTyxnQkFBZ0IsQ0FBQztZQUMxQixDQUFDO1FBQ0gsQ0FBQztRQUVELFdBQVc7UUFDWCxPQUFPLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7Q0FDRjtBQWxHRCxzQkFrR0M7QUFFRCxNQUFNLEtBQUssR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO0FBQzFCLGtCQUFlLEtBQUssQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFV0aWxzIGFzIFN1YnN0cmF0ZVV0aWxzLCBJbnRlcmZhY2UgfSBmcm9tICdAYml0Z28tYmV0YS9hYnN0cmFjdC1zdWJzdHJhdGUnO1xuaW1wb3J0IHsgTmV0d29ya1R5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IFR5cGVSZWdpc3RyeSB9IGZyb20gJ0BzdWJzdHJhdGUvdHh3cmFwcGVyLWNvcmUvbGliL3R5cGVzJztcbmltcG9ydCB7IG1haW5uZXRNYXRlcmlhbCwgdGVzdG5ldE1hdGVyaWFsIH0gZnJvbSAnLi4vcmVzb3VyY2VzJztcbmltcG9ydCB7IEJhdGNoQ2FsbE9iamVjdCB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgTUVNT19IRVhfUkVHRVgsIE1FTU9fTUFYX0JZVEVTLCBQT0xZWF9ESURfUkVHRVggfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBjbGFzcyBVdGlscyBleHRlbmRzIFN1YnN0cmF0ZVV0aWxzIHtcbiAgLyoqXG4gICAqIEdldCB0aGUgYXBwcm9wcmlhdGUgYWRkcmVzcyBmb3JtYXQgYmFzZWQgb24gbmV0d29yayB0eXBlXG4gICAqIFJldHVybnMgMTIgZm9yIG1haW5uZXQgYW5kIDQyIGZvciB0ZXN0bmV0XG4gICAqXG4gICAqIEBwYXJhbSBjb2luTmFtZSBUaGUgbmFtZSBvZiB0aGUgY29pblxuICAgKiBAcmV0dXJucyBUaGUgYWRkcmVzcyBmb3JtYXQgdG8gdXNlXG4gICAqL1xuICBnZXRBZGRyZXNzRm9ybWF0KGNvaW5OYW1lOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIGNvbnN0IGlzTWFpbm5ldCA9IGNvaW5OYW1lLnRvTG93ZXJDYXNlKCkgPT09ICdwb2x5eCc7XG4gICAgcmV0dXJuIGlzTWFpbm5ldCA/IDEyIDogNDI7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIGEgc3RyaW5nIGlzIGEgdmFsaWQgUG9seW1lc2ggRElEIChEZWNlbnRyYWxpemVkIElkZW50aWZpZXIpXG4gICAqIERJRHMgYXJlIDMyLWJ5dGUgaGV4IHN0cmluZ3MgKDB4IHByZWZpeCArIDY0IGhleCBjaGFyYWN0ZXJzKVxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gZGlkIC0gVGhlIHN0cmluZyB0byB2YWxpZGF0ZVxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZiB2YWxpZCBESUQgZm9ybWF0LCBmYWxzZSBvdGhlcndpc2VcbiAgICovXG4gIGlzVmFsaWREaWQoZGlkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gUE9MWVhfRElEX1JFR0VYLnRlc3QoZGlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmNvZGUgYSBtZW1vIHN0cmluZyB1c2luZyB0aGUgTkVXIFBvbHltZXNoIGZvcm1hdDpcbiAgICogVVRGLTggYnl0ZXMgcmlnaHQtcGFkZGVkIHdpdGggMHgwMCB0byAzMiBieXRlcywgcmV0dXJuZWQgYXMgYSAweC1wcmVmaXhlZCBoZXggc3RyaW5nLlxuICAgKlxuICAgKiBAcGFyYW0gdGV4dCBUaGUgaW50ZW5kZWQgbWVtbyBzdHJpbmdcbiAgICogQHJldHVybnMgMHgtcHJlZml4ZWQgNjYtY2hhcmFjdGVyIGhleCBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSAzMi1ieXRlIGVuY29kZWQgbWVtb1xuICAgKi9cbiAgZW5jb2RlTWVtb05ldyh0ZXh0OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGJ5dGVzID0gQnVmZmVyLmZyb20odGV4dCwgJ3V0ZjgnKTtcbiAgICBpZiAoYnl0ZXMubGVuZ3RoID4gTUVNT19NQVhfQllURVMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTWVtbyBleGNlZWRzIG1heGltdW0gbGVuZ3RoIG9mICR7TUVNT19NQVhfQllURVN9IGJ5dGVzIChnb3QgJHtieXRlcy5sZW5ndGh9IGJ5dGVzKWApO1xuICAgIH1cbiAgICBjb25zdCB0ZXh0SGV4ID0gYnl0ZXMudG9TdHJpbmcoJ2hleCcpO1xuICAgIHJldHVybiBgMHgke3RleHRIZXgucGFkRW5kKDY0LCAnMCcpfWA7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZWN0IHdoZXRoZXIgYSBkZWNvZGVkIDMyLWJ5dGUgbWVtbyAoMHgtcHJlZml4ZWQgaGV4IGZyb20gdHh3cmFwcGVyIGRlY29kZSgpKSB1c2VzIE5FVyBlbmNvZGluZy5cbiAgICpcbiAgICogRGV0ZWN0aW9uIHJ1bGVzIChzZWUgcHJvYmxlbS5tZCk6XG4gICAqIC0gQW55IDB4MDAgYnl0ZSDihpIgTkVXIChudWxsIHJpZ2h0LXBhZGRpbmcpXG4gICAqIC0gQWxsIDB4MzAgYnl0ZXMg4oaSIE9MRCAobWVtbyBcIjBcIiBpbiBBU0NJSS1sZWZ0LXBhZGRlZCBmb3JtKVxuICAgKiAtIExlYWRpbmcgMHgzMCBieXRlcyB0aGVuIG5vbi0weDMwIGNvbnRlbnQg4oaSIE9MRCAoQVNDSUkgJzAnIGxlZnQtcGFkZGluZylcbiAgICogLSBPdGhlcndpc2Ug4oaSIE5FVyAoY29udGVudCBhdCBieXRlIDAsIGZ1bGwgMzItYnl0ZSBtZW1vLCBvciBubyBBU0NJSSBwYWQpXG4gICAqXG4gICAqIEBwYXJhbSBtZW1vIDB4LXByZWZpeGVkIDY2LWNoYXIgaGV4IHN0cmluZyBhcyByZXR1cm5lZCBieSB0eHdyYXBwZXIgZGVjb2RlKClcbiAgICovXG4gIGlzTmV3TWVtb0VuY29kaW5nKG1lbW86IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmICghTUVNT19IRVhfUkVHRVgudGVzdChtZW1vKSkgcmV0dXJuIGZhbHNlO1xuXG4gICAgY29uc3QgYnl0ZXMgPSBCdWZmZXIuZnJvbShtZW1vLnNsaWNlKDIpLCAnaGV4Jyk7XG5cbiAgICBpZiAoYnl0ZXMuc29tZSgoYikgPT4gYiA9PT0gMHgwMCkpIHJldHVybiB0cnVlO1xuICAgIGlmIChieXRlcy5ldmVyeSgoYikgPT4gYiA9PT0gMHgzMCkpIHJldHVybiBmYWxzZTtcblxuICAgIGxldCBsZWFkaW5nQXNjaWlaZXJvcyA9IDA7XG4gICAgd2hpbGUgKGxlYWRpbmdBc2NpaVplcm9zIDwgYnl0ZXMubGVuZ3RoICYmIGJ5dGVzW2xlYWRpbmdBc2NpaVplcm9zXSA9PT0gMHgzMCkge1xuICAgICAgbGVhZGluZ0FzY2lpWmVyb3MrKztcbiAgICB9XG4gICAgaWYgKGxlYWRpbmdBc2NpaVplcm9zID4gMCAmJiBsZWFkaW5nQXNjaWlaZXJvcyA8IGJ5dGVzLmxlbmd0aCkgcmV0dXJuIGZhbHNlO1xuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBnZXRNYXRlcmlhbChuZXR3b3JrVHlwZTogTmV0d29ya1R5cGUpOiBJbnRlcmZhY2UuTWF0ZXJpYWwge1xuICAgIHJldHVybiAobmV0d29ya1R5cGUgPT09IE5ldHdvcmtUeXBlLk1BSU5ORVQgPyBtYWlubmV0TWF0ZXJpYWwgOiB0ZXN0bmV0TWF0ZXJpYWwpIGFzIHVua25vd24gYXMgSW50ZXJmYWNlLk1hdGVyaWFsO1xuICB9XG5cbiAgZGVjb2RlTWV0aG9kTmFtZShjYWxsOiBCYXRjaENhbGxPYmplY3QsIHJlZ2lzdHJ5OiBUeXBlUmVnaXN0cnkpOiBzdHJpbmcge1xuICAgIC8vIEhhbmRsZSBib3RoIGNhbGxJbmRleCBhbmQgbWV0aG9kIGZvcm1hdHNcbiAgICBjb25zdCBjYWxsV2l0aEluZGV4ID0gY2FsbCBhcyBCYXRjaENhbGxPYmplY3QgJiB7IGNhbGxJbmRleD86IHN0cmluZyB9O1xuICAgIGNvbnN0IG1ldGhvZElkZW50aWZpZXIgPSBjYWxsV2l0aEluZGV4LmNhbGxJbmRleCB8fCBjYWxsLm1ldGhvZDtcblxuICAgIGlmICh0eXBlb2YgbWV0aG9kSWRlbnRpZmllciA9PT0gJ3N0cmluZycpIHtcbiAgICAgIC8vIENoZWNrIGlmIGl0IGxvb2tzIGxpa2UgYSBoZXggY2FsbEluZGV4XG4gICAgICBpZiAobWV0aG9kSWRlbnRpZmllci5zdGFydHNXaXRoKCcweCcpICYmIG1ldGhvZElkZW50aWZpZXIubGVuZ3RoID4gMikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IGRlY29kZWRDYWxsID0gcmVnaXN0cnkuZmluZE1ldGFDYWxsKFxuICAgICAgICAgICAgbmV3IFVpbnQ4QXJyYXkoQnVmZmVyLmZyb20obWV0aG9kSWRlbnRpZmllci5yZXBsYWNlKCcweCcsICcnKSwgJ2hleCcpKVxuICAgICAgICAgICk7XG4gICAgICAgICAgcmV0dXJuIGRlY29kZWRDYWxsLm1ldGhvZDtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIC8vIEZhbGxiYWNrOiBhc3N1bWUgaXQncyBhbHJlYWR5IHRoZSBtZXRob2QgbmFtZVxuICAgICAgICAgIHJldHVybiBtZXRob2RJZGVudGlmaWVyO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBBbHJlYWR5IGEgc2ltcGxlIG1ldGhvZCBuYW1lXG4gICAgICAgIHJldHVybiBtZXRob2RJZGVudGlmaWVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEZhbGxiYWNrXG4gICAgcmV0dXJuIFN0cmluZyhtZXRob2RJZGVudGlmaWVyKTtcbiAgfVxufVxuXG5jb25zdCB1dGlscyA9IG5ldyBVdGlscygpO1xuZXhwb3J0IGRlZmF1bHQgdXRpbHM7XG4iXX0=
@@ -4,7 +4,7 @@ import { BaseCoin as StaticsBaseCoin } from '@bitgo-beta/statics';
4
4
  import { SubstrateCoin, Interface } from '@bitgo-beta/abstract-substrate';
5
5
  import { BatchStakingBuilder } from './lib/batchStakingBuilder';
6
6
  import { BondExtraBuilder } from './lib/bondExtraBuilder';
7
- import { TransactionBuilderFactory } from './lib';
7
+ import { TransactionBuilderFactory, HexTransferBuilder } from './lib';
8
8
  export declare class Polyx extends SubstrateCoin {
9
9
  protected readonly _staticsCoin: Readonly<StaticsBaseCoin>;
10
10
  protected constructor(bitgo: BitGoBase, staticsCoin?: Readonly<StaticsBaseCoin>);
@@ -22,6 +22,7 @@ export declare class Polyx extends SubstrateCoin {
22
22
  auditDecryptedKey({ publicKey, prv, multiSigType }: AuditDecryptedKeyParams): void;
23
23
  stakingBatch(): BatchStakingBuilder;
24
24
  bondExtra(): BondExtraBuilder;
25
+ hexTransfer(): HexTransferBuilder;
25
26
  /**
26
27
  * Retrieves the address format for Polyx.
27
28
  *
@@ -1 +1 @@
1
- {"version":3,"file":"polyx.d.ts","sourceRoot":"","sources":["../../src/polyx.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,QAAQ,EACR,SAAS,EAGT,kBAAkB,EAClB,WAAW,EACX,KAAK,EAIL,uBAAuB,EACvB,MAAM,EACN,qBAAqB,EACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAc,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAgC,MAAM,qBAAqB,CAAC;AAChG,OAAO,EAA+B,aAAa,EAAe,SAAS,EAAE,MAAM,gCAAgC,CAAC;AACpH,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI1D,OAAO,EAAE,yBAAyB,EAAmB,MAAM,OAAO,CAAC;AAEnE,qBAAa,KAAM,SAAQ,aAAa;IACtC,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC3D,SAAS,aAAa,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC;IAU/E,SAAS,CAAC,MAAM,CAAC,kBAAkB,UAAS;IAC5C,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC;IAEjC,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,QAAQ;IAI1F,UAAU,IAAI,yBAAyB;IAIvC;;OAEG;IACI,aAAa,IAAI,MAAM;IAIvB,QAAQ,IAAI,MAAM;IAIlB,WAAW,IAAI,MAAM;IAI5B,kBAAkB;IAClB,iBAAiB,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,uBAAuB;IAI3E,YAAY,IAAI,mBAAmB;IAInC,SAAS,IAAI,gBAAgB;IAI7B;;;;;OAKG;IACH,SAAS,CAAC,gBAAgB,IAAI,MAAM;cAIpB,qBAAqB,IAAI,OAAO,CAAC,UAAU,CAAC;cAS5C,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;cAOnF,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;cAM1E,aAAa,IAAI,OAAO,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;cAMtE,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC;IAY1D;;;;;;;OAOG;IACG,OAAO,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,GAAG,WAAW,CAAC;IAgJvE,oBAAoB;IACd,mCAAmC,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC;IAmE3F;;;;;;OAMG;IACH,wBAAwB,IAAI,qBAAqB;CAWlD"}
1
+ {"version":3,"file":"polyx.d.ts","sourceRoot":"","sources":["../../src/polyx.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,QAAQ,EACR,SAAS,EAGT,kBAAkB,EAClB,WAAW,EACX,KAAK,EAIL,uBAAuB,EACvB,MAAM,EACN,qBAAqB,EACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAc,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAgC,MAAM,qBAAqB,CAAC;AAChG,OAAO,EAA+B,aAAa,EAAe,SAAS,EAAE,MAAM,gCAAgC,CAAC;AACpH,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI1D,OAAO,EAAE,yBAAyB,EAAmB,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAEvF,qBAAa,KAAM,SAAQ,aAAa;IACtC,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC3D,SAAS,aAAa,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC;IAU/E,SAAS,CAAC,MAAM,CAAC,kBAAkB,UAAS;IAC5C,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC;IAEjC,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,QAAQ;IAI1F,UAAU,IAAI,yBAAyB;IAIvC;;OAEG;IACI,aAAa,IAAI,MAAM;IAIvB,QAAQ,IAAI,MAAM;IAIlB,WAAW,IAAI,MAAM;IAI5B,kBAAkB;IAClB,iBAAiB,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,uBAAuB;IAI3E,YAAY,IAAI,mBAAmB;IAInC,SAAS,IAAI,gBAAgB;IAI7B,WAAW,IAAI,kBAAkB;IAIjC;;;;;OAKG;IACH,SAAS,CAAC,gBAAgB,IAAI,MAAM;cAIpB,qBAAqB,IAAI,OAAO,CAAC,UAAU,CAAC;cAS5C,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;cAOnF,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;cAM1E,aAAa,IAAI,OAAO,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;cAMtE,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC;IAY1D;;;;;;;OAOG;IACG,OAAO,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,GAAG,WAAW,CAAC;IAgJvE,oBAAoB;IACd,mCAAmC,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC;IAmE3F;;;;;;OAMG;IACH,wBAAwB,IAAI,qBAAqB;CAWlD"}