@bitgo-beta/sdk-coin-polyx 1.0.1-beta.8 → 1.0.1-beta.81
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +22 -0
- package/dist/src/lib/iface.d.ts +5 -5
- package/dist/src/lib/iface.d.ts.map +1 -1
- package/dist/src/lib/iface.js +1 -1
- package/dist/src/lib/index.d.ts +4 -7
- package/dist/src/lib/index.d.ts.map +1 -1
- package/dist/src/lib/index.js +20 -47
- package/dist/src/lib/registerDidWithCDDBuilder.d.ts +29 -0
- package/dist/src/lib/registerDidWithCDDBuilder.d.ts.map +1 -0
- package/dist/src/lib/registerDidWithCDDBuilder.js +67 -0
- package/dist/src/lib/transactionBuilderFactory.d.ts +9 -5
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilderFactory.js +43 -8
- package/dist/src/lib/transferBuilder.d.ts +48 -2
- package/dist/src/lib/transferBuilder.d.ts.map +1 -1
- package/dist/src/lib/transferBuilder.js +104 -3
- package/dist/src/lib/txnSchema.d.ts +3 -0
- package/dist/src/lib/txnSchema.d.ts.map +1 -0
- package/dist/src/lib/txnSchema.js +15 -0
- package/dist/src/lib/utils.d.ts +4 -14
- package/dist/src/lib/utils.d.ts.map +1 -1
- package/dist/src/lib/utils.js +7 -25
- package/dist/src/polyx.js +2 -2
- package/dist/src/resources/index.d.ts +3 -0
- package/dist/src/resources/index.d.ts.map +1 -0
- package/dist/src/resources/index.js +19 -0
- package/dist/src/resources/mainnet.d.ts +13 -0
- package/dist/src/resources/mainnet.d.ts.map +1 -0
- package/dist/src/resources/mainnet.js +16 -0
- package/dist/src/resources/testnet.d.ts +13 -0
- package/dist/src/resources/testnet.d.ts.map +1 -0
- package/dist/src/resources/testnet.js +16 -0
- package/package.json +11 -8
- package/dist/src/lib/keyPair.d.ts +0 -12
- package/dist/src/lib/keyPair.d.ts.map +0 -1
- package/dist/src/lib/keyPair.js +0 -24
- package/dist/src/lib/transaction.d.ts +0 -8
- package/dist/src/lib/transaction.d.ts.map +0 -1
- package/dist/src/lib/transaction.js +0 -17
- package/dist/src/lib/transactionBuilder.d.ts +0 -43
- package/dist/src/lib/transactionBuilder.d.ts.map +0 -1
- package/dist/src/lib/transactionBuilder.js +0 -78
package/CHANGELOG.md
CHANGED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Change Log
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
|
+
|
|
6
|
+
## [1.0.4](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-polyx@1.0.3...@bitgo/sdk-coin-polyx@1.0.4) (2025-05-07)
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
- send statics coin to substrate class ([9ed860e](https://github.com/BitGo/BitGoJS/commit/9ed860ed288516959d5723e6119c7701588a41e7))
|
|
11
|
+
|
|
12
|
+
## [1.0.3](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-polyx@1.0.2...@bitgo/sdk-coin-polyx@1.0.3) (2025-04-29)
|
|
13
|
+
|
|
14
|
+
**Note:** Version bump only for package @bitgo/sdk-coin-polyx
|
|
15
|
+
|
|
16
|
+
## [1.0.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-polyx@1.0.1...@bitgo/sdk-coin-polyx@1.0.2) (2025-04-25)
|
|
17
|
+
|
|
18
|
+
**Note:** Version bump only for package @bitgo/sdk-coin-polyx
|
|
19
|
+
|
|
20
|
+
## 1.0.1 (2025-04-15)
|
|
21
|
+
|
|
22
|
+
**Note:** Version bump only for package @bitgo/sdk-coin-polyx
|
package/dist/src/lib/iface.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { Args } from '@substrate/txwrapper-core';
|
|
2
|
+
export interface RegisterDidWithCDDArgs extends Args {
|
|
3
|
+
targetAccount: string;
|
|
4
|
+
secondaryKeys: [];
|
|
5
|
+
expiry: null;
|
|
6
6
|
}
|
|
7
7
|
//# sourceMappingURL=iface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAEjD,MAAM,WAAW,sBAAuB,SAAQ,IAAI;IAClD,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,EAAE,CAAC;IAClB,MAAM,EAAE,IAAI,CAAC;CACd"}
|
package/dist/src/lib/iface.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcmdzIH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVnaXN0ZXJEaWRXaXRoQ0REQXJncyBleHRlbmRzIEFyZ3Mge1xuICB0YXJnZXRBY2NvdW50OiBzdHJpbmc7XG4gIHNlY29uZGFyeUtleXM6IFtdO1xuICBleHBpcnk6IG51bGw7XG59XG4iXX0=
|
package/dist/src/lib/index.d.ts
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
import * as Interface from './iface';
|
|
3
|
-
export { KeyPair } from './keyPair';
|
|
4
|
-
export { Transaction } from './transaction';
|
|
5
|
-
export { TransactionBuilder } from './transactionBuilder';
|
|
6
|
-
export { TransferBuilder } from './transferBuilder';
|
|
1
|
+
export { Constants, Errors, Interface, KeyPair, SingletonRegistry, Transaction, TransactionBuilder, } from '@bitgo-beta/abstract-substrate';
|
|
7
2
|
export { TransactionBuilderFactory } from './transactionBuilderFactory';
|
|
8
|
-
export {
|
|
3
|
+
export { TransferBuilder } from './transferBuilder';
|
|
4
|
+
export { RegisterDidWithCDDBuilder } from './registerDidWithCDDBuilder';
|
|
5
|
+
export { Utils, default as utils } from './utils';
|
|
9
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
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,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC"}
|
package/dist/src/lib/index.js
CHANGED
|
@@ -1,51 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
35
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.
|
|
37
|
-
|
|
38
|
-
exports.
|
|
39
|
-
|
|
40
|
-
exports
|
|
41
|
-
|
|
42
|
-
Object.defineProperty(exports, "
|
|
43
|
-
|
|
44
|
-
Object.defineProperty(exports, "
|
|
45
|
-
var transactionBuilder_1 = require("./transactionBuilder");
|
|
46
|
-
Object.defineProperty(exports, "TransactionBuilder", { enumerable: true, get: function () { return transactionBuilder_1.TransactionBuilder; } });
|
|
47
|
-
var transferBuilder_1 = require("./transferBuilder");
|
|
48
|
-
Object.defineProperty(exports, "TransferBuilder", { enumerable: true, get: function () { return transferBuilder_1.TransferBuilder; } });
|
|
6
|
+
exports.utils = exports.Utils = exports.RegisterDidWithCDDBuilder = exports.TransferBuilder = exports.TransactionBuilderFactory = exports.TransactionBuilder = exports.Transaction = exports.SingletonRegistry = exports.KeyPair = exports.Interface = exports.Errors = exports.Constants = void 0;
|
|
7
|
+
var abstract_substrate_1 = require("@bitgo-beta/abstract-substrate");
|
|
8
|
+
Object.defineProperty(exports, "Constants", { enumerable: true, get: function () { return abstract_substrate_1.Constants; } });
|
|
9
|
+
Object.defineProperty(exports, "Errors", { enumerable: true, get: function () { return abstract_substrate_1.Errors; } });
|
|
10
|
+
Object.defineProperty(exports, "Interface", { enumerable: true, get: function () { return abstract_substrate_1.Interface; } });
|
|
11
|
+
Object.defineProperty(exports, "KeyPair", { enumerable: true, get: function () { return abstract_substrate_1.KeyPair; } });
|
|
12
|
+
Object.defineProperty(exports, "SingletonRegistry", { enumerable: true, get: function () { return abstract_substrate_1.SingletonRegistry; } });
|
|
13
|
+
Object.defineProperty(exports, "Transaction", { enumerable: true, get: function () { return abstract_substrate_1.Transaction; } });
|
|
14
|
+
Object.defineProperty(exports, "TransactionBuilder", { enumerable: true, get: function () { return abstract_substrate_1.TransactionBuilder; } });
|
|
49
15
|
var transactionBuilderFactory_1 = require("./transactionBuilderFactory");
|
|
50
16
|
Object.defineProperty(exports, "TransactionBuilderFactory", { enumerable: true, get: function () { return transactionBuilderFactory_1.TransactionBuilderFactory; } });
|
|
51
|
-
|
|
17
|
+
var transferBuilder_1 = require("./transferBuilder");
|
|
18
|
+
Object.defineProperty(exports, "TransferBuilder", { enumerable: true, get: function () { return transferBuilder_1.TransferBuilder; } });
|
|
19
|
+
var registerDidWithCDDBuilder_1 = require("./registerDidWithCDDBuilder");
|
|
20
|
+
Object.defineProperty(exports, "RegisterDidWithCDDBuilder", { enumerable: true, get: function () { return registerDidWithCDDBuilder_1.RegisterDidWithCDDBuilder; } });
|
|
21
|
+
var utils_1 = require("./utils");
|
|
22
|
+
Object.defineProperty(exports, "Utils", { enumerable: true, get: function () { return utils_1.Utils; } });
|
|
23
|
+
Object.defineProperty(exports, "utils", { enumerable: true, get: function () { return __importDefault(utils_1).default; } });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHFFQVF3QztBQVB0QywrR0FBQSxTQUFTLE9BQUE7QUFDVCw0R0FBQSxNQUFNLE9BQUE7QUFDTiwrR0FBQSxTQUFTLE9BQUE7QUFDVCw2R0FBQSxPQUFPLE9BQUE7QUFDUCx1SEFBQSxpQkFBaUIsT0FBQTtBQUNqQixpSEFBQSxXQUFXLE9BQUE7QUFDWCx3SEFBQSxrQkFBa0IsT0FBQTtBQUdwQix5RUFBd0U7QUFBL0Qsc0lBQUEseUJBQXlCLE9BQUE7QUFDbEMscURBQW9EO0FBQTNDLGtIQUFBLGVBQWUsT0FBQTtBQUN4Qix5RUFBd0U7QUFBL0Qsc0lBQUEseUJBQXlCLE9BQUE7QUFDbEMsaUNBQWtEO0FBQXpDLDhGQUFBLEtBQUssT0FBQTtBQUFFLCtHQUFBLE9BQU8sT0FBUyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7XG4gIENvbnN0YW50cyxcbiAgRXJyb3JzLFxuICBJbnRlcmZhY2UsXG4gIEtleVBhaXIsXG4gIFNpbmdsZXRvblJlZ2lzdHJ5LFxuICBUcmFuc2FjdGlvbixcbiAgVHJhbnNhY3Rpb25CdWlsZGVyLFxufSBmcm9tICdAYml0Z28tYmV0YS9hYnN0cmFjdC1zdWJzdHJhdGUnO1xuXG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5JztcbmV4cG9ydCB7IFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNmZXJCdWlsZGVyJztcbmV4cG9ydCB7IFJlZ2lzdGVyRGlkV2l0aENEREJ1aWxkZXIgfSBmcm9tICcuL3JlZ2lzdGVyRGlkV2l0aENEREJ1aWxkZXInO1xuZXhwb3J0IHsgVXRpbHMsIGRlZmF1bHQgYXMgdXRpbHMgfSBmcm9tICcuL3V0aWxzJztcbiJdfQ==
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { TransactionBuilder } from '@bitgo-beta/abstract-substrate';
|
|
2
|
+
import { DecodedSignedTx, DecodedSigningPayload, UnsignedTransaction } from '@substrate/txwrapper-core';
|
|
3
|
+
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
4
|
+
import { TransactionType, BaseAddress } from '@bitgo-beta/sdk-core';
|
|
5
|
+
export declare class RegisterDidWithCDDBuilder extends TransactionBuilder {
|
|
6
|
+
protected _to: string;
|
|
7
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
8
|
+
protected get transactionType(): TransactionType;
|
|
9
|
+
protected buildTransaction(): UnsignedTransaction;
|
|
10
|
+
/**
|
|
11
|
+
*
|
|
12
|
+
* The destination address for transfer transaction.
|
|
13
|
+
*
|
|
14
|
+
* @param {string} dest
|
|
15
|
+
* @returns {TransferBuilder} This transfer builder.
|
|
16
|
+
*/
|
|
17
|
+
to({ address }: BaseAddress): this;
|
|
18
|
+
/** @inheritdoc */
|
|
19
|
+
validateDecodedTransaction(decodedTxn: DecodedSigningPayload | DecodedSignedTx, rawTransaction?: string): void;
|
|
20
|
+
/**
|
|
21
|
+
* Construct a transaction to register a DID with CDD information
|
|
22
|
+
*
|
|
23
|
+
* @param {RegisterDidWithCDDArgs} args Arguments to be passed to the cddRegisterDidWithCdd method
|
|
24
|
+
* @param {Interface.CreateBaseTxInfo} info Base txn info required to construct the DID registration txn
|
|
25
|
+
* @returns {UnsignedTransaction} an unsigned transaction for DID registration with CDD
|
|
26
|
+
*/
|
|
27
|
+
private RegisterDidWithCDD;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=registerDidWithCDDBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registerDidWithCDDBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/registerDidWithCDDBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAa,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAgB,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACtH,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,WAAW,EAA2B,MAAM,sBAAsB,CAAC;AAI7F,qBAAa,yBAA0B,SAAQ,kBAAkB;IAC/D,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC;gBAEV,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,SAAS,CAAC,gBAAgB,IAAI,mBAAmB;IAYjD;;;;;;OAMG;IACH,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,WAAW,GAAG,IAAI;IAMlC,kBAAkB;IAClB,0BAA0B,CAAC,UAAU,EAAE,qBAAqB,GAAG,eAAe,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI;IAc9G;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;CAa3B"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RegisterDidWithCDDBuilder = void 0;
|
|
4
|
+
const abstract_substrate_1 = require("@bitgo-beta/abstract-substrate");
|
|
5
|
+
const txwrapper_core_1 = require("@substrate/txwrapper-core");
|
|
6
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
7
|
+
const txnSchema_1 = require("./txnSchema");
|
|
8
|
+
class RegisterDidWithCDDBuilder extends abstract_substrate_1.TransactionBuilder {
|
|
9
|
+
constructor(_coinConfig) {
|
|
10
|
+
super(_coinConfig);
|
|
11
|
+
}
|
|
12
|
+
get transactionType() {
|
|
13
|
+
return sdk_core_1.TransactionType.WalletInitialization;
|
|
14
|
+
}
|
|
15
|
+
buildTransaction() {
|
|
16
|
+
const baseTxInfo = this.createBaseTxInfo();
|
|
17
|
+
return this.RegisterDidWithCDD({
|
|
18
|
+
targetAccount: this._to,
|
|
19
|
+
secondaryKeys: [],
|
|
20
|
+
expiry: null,
|
|
21
|
+
}, baseTxInfo);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
*
|
|
25
|
+
* The destination address for transfer transaction.
|
|
26
|
+
*
|
|
27
|
+
* @param {string} dest
|
|
28
|
+
* @returns {TransferBuilder} This transfer builder.
|
|
29
|
+
*/
|
|
30
|
+
to({ address }) {
|
|
31
|
+
this.validateAddress({ address });
|
|
32
|
+
this._to = address;
|
|
33
|
+
return this;
|
|
34
|
+
}
|
|
35
|
+
/** @inheritdoc */
|
|
36
|
+
validateDecodedTransaction(decodedTxn, rawTransaction) {
|
|
37
|
+
if (decodedTxn.method?.name === abstract_substrate_1.Interface.MethodNames.RegisterDidWithCDD) {
|
|
38
|
+
const txMethod = decodedTxn.method.args;
|
|
39
|
+
const targetAccount = txMethod.targetAccount;
|
|
40
|
+
const secondaryKeys = txMethod.secondaryKeys;
|
|
41
|
+
const expiry = txMethod.expiry;
|
|
42
|
+
const validationResult = txnSchema_1.RegisterDidWithCDDTransactionSchema.validate({ targetAccount, secondaryKeys, expiry });
|
|
43
|
+
if (validationResult.error) {
|
|
44
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid transaction: ${validationResult.error.message}`);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Construct a transaction to register a DID with CDD information
|
|
50
|
+
*
|
|
51
|
+
* @param {RegisterDidWithCDDArgs} args Arguments to be passed to the cddRegisterDidWithCdd method
|
|
52
|
+
* @param {Interface.CreateBaseTxInfo} info Base txn info required to construct the DID registration txn
|
|
53
|
+
* @returns {UnsignedTransaction} an unsigned transaction for DID registration with CDD
|
|
54
|
+
*/
|
|
55
|
+
RegisterDidWithCDD(args, info) {
|
|
56
|
+
return (0, txwrapper_core_1.defineMethod)({
|
|
57
|
+
method: {
|
|
58
|
+
args,
|
|
59
|
+
name: 'cddRegisterDidWithCdd',
|
|
60
|
+
pallet: 'identity',
|
|
61
|
+
},
|
|
62
|
+
...info.baseTxInfo,
|
|
63
|
+
}, info.options);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
exports.RegisterDidWithCDDBuilder = RegisterDidWithCDDBuilder;
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXJEaWRXaXRoQ0REQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvcmVnaXN0ZXJEaWRXaXRoQ0REQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx1RUFBK0U7QUFDL0UsOERBQXNIO0FBRXRILG1EQUE2RjtBQUU3RiwyQ0FBa0U7QUFFbEUsTUFBYSx5QkFBMEIsU0FBUSx1Q0FBa0I7SUFHL0QsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELElBQWMsZUFBZTtRQUMzQixPQUFPLDBCQUFlLENBQUMsb0JBQW9CLENBQUM7SUFDOUMsQ0FBQztJQUVTLGdCQUFnQjtRQUN4QixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUMzQyxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FDNUI7WUFDRSxhQUFhLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDdkIsYUFBYSxFQUFFLEVBQUU7WUFDakIsTUFBTSxFQUFFLElBQUk7U0FDYixFQUNELFVBQVUsQ0FDWCxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBZTtRQUN6QixJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQztRQUNuQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsMEJBQTBCLENBQUMsVUFBbUQsRUFBRSxjQUF1QjtRQUNyRyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxLQUFLLDhCQUFTLENBQUMsV0FBVyxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDekUsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUE4QixDQUFDO1lBQ2xFLE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUM7WUFDN0MsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQztZQUM3QyxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBRS9CLE1BQU0sZ0JBQWdCLEdBQUcsK0NBQW1DLENBQUMsUUFBUSxDQUFDLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO1lBQ2hILElBQUksZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQzNCLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyx3QkFBd0IsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7WUFDOUYsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ssa0JBQWtCLENBQUMsSUFBNEIsRUFBRSxJQUFnQztRQUN2RixPQUFPLElBQUEsNkJBQVksRUFDakI7WUFDRSxNQUFNLEVBQUU7Z0JBQ04sSUFBSTtnQkFDSixJQUFJLEVBQUUsdUJBQXVCO2dCQUM3QixNQUFNLEVBQUUsVUFBVTthQUNuQjtZQUNELEdBQUcsSUFBSSxDQUFDLFVBQVU7U0FDbkIsRUFDRCxJQUFJLENBQUMsT0FBTyxDQUNiLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUF2RUQsOERBdUVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyLCBJbnRlcmZhY2UgfSBmcm9tICdAYml0Z28tYmV0YS9hYnN0cmFjdC1zdWJzdHJhdGUnO1xuaW1wb3J0IHsgRGVjb2RlZFNpZ25lZFR4LCBEZWNvZGVkU2lnbmluZ1BheWxvYWQsIGRlZmluZU1ldGhvZCwgVW5zaWduZWRUcmFuc2FjdGlvbiB9IGZyb20gJ0BzdWJzdHJhdGUvdHh3cmFwcGVyLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25UeXBlLCBCYXNlQWRkcmVzcywgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBSZWdpc3RlckRpZFdpdGhDRERBcmdzIH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBSZWdpc3RlckRpZFdpdGhDRERUcmFuc2FjdGlvblNjaGVtYSB9IGZyb20gJy4vdHhuU2NoZW1hJztcblxuZXhwb3J0IGNsYXNzIFJlZ2lzdGVyRGlkV2l0aENEREJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX3RvOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLldhbGxldEluaXRpYWxpemF0aW9uO1xuICB9XG5cbiAgcHJvdGVjdGVkIGJ1aWxkVHJhbnNhY3Rpb24oKTogVW5zaWduZWRUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgYmFzZVR4SW5mbyA9IHRoaXMuY3JlYXRlQmFzZVR4SW5mbygpO1xuICAgIHJldHVybiB0aGlzLlJlZ2lzdGVyRGlkV2l0aENERChcbiAgICAgIHtcbiAgICAgICAgdGFyZ2V0QWNjb3VudDogdGhpcy5fdG8sXG4gICAgICAgIHNlY29uZGFyeUtleXM6IFtdLFxuICAgICAgICBleHBpcnk6IG51bGwsXG4gICAgICB9LFxuICAgICAgYmFzZVR4SW5mb1xuICAgICk7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogVGhlIGRlc3RpbmF0aW9uIGFkZHJlc3MgZm9yIHRyYW5zZmVyIHRyYW5zYWN0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gZGVzdFxuICAgKiBAcmV0dXJucyB7VHJhbnNmZXJCdWlsZGVyfSBUaGlzIHRyYW5zZmVyIGJ1aWxkZXIuXG4gICAqL1xuICB0byh7IGFkZHJlc3MgfTogQmFzZUFkZHJlc3MpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlQWRkcmVzcyh7IGFkZHJlc3MgfSk7XG4gICAgdGhpcy5fdG8gPSBhZGRyZXNzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlRGVjb2RlZFRyYW5zYWN0aW9uKGRlY29kZWRUeG46IERlY29kZWRTaWduaW5nUGF5bG9hZCB8IERlY29kZWRTaWduZWRUeCwgcmF3VHJhbnNhY3Rpb24/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoZGVjb2RlZFR4bi5tZXRob2Q/Lm5hbWUgPT09IEludGVyZmFjZS5NZXRob2ROYW1lcy5SZWdpc3RlckRpZFdpdGhDREQpIHtcbiAgICAgIGNvbnN0IHR4TWV0aG9kID0gZGVjb2RlZFR4bi5tZXRob2QuYXJncyBhcyBSZWdpc3RlckRpZFdpdGhDRERBcmdzO1xuICAgICAgY29uc3QgdGFyZ2V0QWNjb3VudCA9IHR4TWV0aG9kLnRhcmdldEFjY291bnQ7XG4gICAgICBjb25zdCBzZWNvbmRhcnlLZXlzID0gdHhNZXRob2Quc2Vjb25kYXJ5S2V5cztcbiAgICAgIGNvbnN0IGV4cGlyeSA9IHR4TWV0aG9kLmV4cGlyeTtcblxuICAgICAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IFJlZ2lzdGVyRGlkV2l0aENERFRyYW5zYWN0aW9uU2NoZW1hLnZhbGlkYXRlKHsgdGFyZ2V0QWNjb3VudCwgc2Vjb25kYXJ5S2V5cywgZXhwaXJ5IH0pO1xuICAgICAgaWYgKHZhbGlkYXRpb25SZXN1bHQuZXJyb3IpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIHRyYW5zYWN0aW9uOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ29uc3RydWN0IGEgdHJhbnNhY3Rpb24gdG8gcmVnaXN0ZXIgYSBESUQgd2l0aCBDREQgaW5mb3JtYXRpb25cbiAgICpcbiAgICogQHBhcmFtIHtSZWdpc3RlckRpZFdpdGhDRERBcmdzfSBhcmdzIEFyZ3VtZW50cyB0byBiZSBwYXNzZWQgdG8gdGhlIGNkZFJlZ2lzdGVyRGlkV2l0aENkZCBtZXRob2RcbiAgICogQHBhcmFtIHtJbnRlcmZhY2UuQ3JlYXRlQmFzZVR4SW5mb30gaW5mbyBCYXNlIHR4biBpbmZvIHJlcXVpcmVkIHRvIGNvbnN0cnVjdCB0aGUgRElEIHJlZ2lzdHJhdGlvbiB0eG5cbiAgICogQHJldHVybnMge1Vuc2lnbmVkVHJhbnNhY3Rpb259IGFuIHVuc2lnbmVkIHRyYW5zYWN0aW9uIGZvciBESUQgcmVnaXN0cmF0aW9uIHdpdGggQ0REXG4gICAqL1xuICBwcml2YXRlIFJlZ2lzdGVyRGlkV2l0aENERChhcmdzOiBSZWdpc3RlckRpZFdpdGhDRERBcmdzLCBpbmZvOiBJbnRlcmZhY2UuQ3JlYXRlQmFzZVR4SW5mbyk6IFVuc2lnbmVkVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBkZWZpbmVNZXRob2QoXG4gICAgICB7XG4gICAgICAgIG1ldGhvZDoge1xuICAgICAgICAgIGFyZ3MsXG4gICAgICAgICAgbmFtZTogJ2NkZFJlZ2lzdGVyRGlkV2l0aENkZCcsXG4gICAgICAgICAgcGFsbGV0OiAnaWRlbnRpdHknLFxuICAgICAgICB9LFxuICAgICAgICAuLi5pbmZvLmJhc2VUeEluZm8sXG4gICAgICB9LFxuICAgICAgaW5mby5vcHRpb25zXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import { BaseTransactionBuilderFactory } from '@bitgo-beta/sdk-core';
|
|
2
|
-
import {
|
|
2
|
+
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
3
3
|
import { TransferBuilder } from './transferBuilder';
|
|
4
|
+
import { RegisterDidWithCDDBuilder } from './registerDidWithCDDBuilder';
|
|
5
|
+
import { Interface, TransactionBuilder } from './';
|
|
4
6
|
export declare class TransactionBuilderFactory extends BaseTransactionBuilderFactory {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
/** @inheritdoc */
|
|
7
|
+
protected _material: Interface.Material;
|
|
8
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
8
9
|
getTransferBuilder(): TransferBuilder;
|
|
9
|
-
|
|
10
|
+
getRegisterDidWithCDDBuilder(): RegisterDidWithCDDBuilder;
|
|
10
11
|
getWalletInitializationBuilder(): void;
|
|
12
|
+
from(rawTxn: string): TransactionBuilder;
|
|
13
|
+
material(material: Interface.Material): this;
|
|
14
|
+
private getBuilder;
|
|
11
15
|
}
|
|
12
16
|
//# sourceMappingURL=transactionBuilderFactory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,
|
|
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;AAExE,OAAO,EAAE,SAAS,EAAqB,kBAAkB,EAAE,MAAM,IAAI,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,8BAA8B,IAAI,IAAI;IAItC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB;IAMxC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,GAAG,IAAI;IAK5C,OAAO,CAAC,UAAU;CAgBnB"}
|
|
@@ -1,20 +1,55 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.TransactionBuilderFactory = void 0;
|
|
4
7
|
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
8
|
+
const txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
|
|
9
|
+
const transferBuilder_1 = require("./transferBuilder");
|
|
10
|
+
const registerDidWithCDDBuilder_1 = require("./registerDidWithCDDBuilder");
|
|
11
|
+
const utils_1 = __importDefault(require("./utils"));
|
|
12
|
+
const _1 = require("./");
|
|
5
13
|
class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
14
|
+
constructor(_coinConfig) {
|
|
15
|
+
super(_coinConfig);
|
|
16
|
+
this._material = utils_1.default.getMaterial(_coinConfig.network.type);
|
|
9
17
|
}
|
|
10
|
-
/** @inheritdoc */
|
|
11
18
|
getTransferBuilder() {
|
|
12
|
-
|
|
19
|
+
return new transferBuilder_1.TransferBuilder(this._coinConfig).material(this._material);
|
|
20
|
+
}
|
|
21
|
+
getRegisterDidWithCDDBuilder() {
|
|
22
|
+
return new registerDidWithCDDBuilder_1.RegisterDidWithCDDBuilder(this._coinConfig).material(this._material);
|
|
13
23
|
}
|
|
14
|
-
/** @inheritdoc */
|
|
15
24
|
getWalletInitializationBuilder() {
|
|
16
|
-
throw new
|
|
25
|
+
throw new sdk_core_1.NotImplementedError(`walletInitialization for ${this._coinConfig.name} not implemented`);
|
|
26
|
+
}
|
|
27
|
+
from(rawTxn) {
|
|
28
|
+
const builder = this.getBuilder(rawTxn);
|
|
29
|
+
builder.from(rawTxn);
|
|
30
|
+
return builder;
|
|
31
|
+
}
|
|
32
|
+
material(material) {
|
|
33
|
+
this._material = material;
|
|
34
|
+
return this;
|
|
35
|
+
}
|
|
36
|
+
getBuilder(rawTxn) {
|
|
37
|
+
const registry = _1.SingletonRegistry.getInstance(this._material);
|
|
38
|
+
const decodedTxn = (0, txwrapper_polkadot_1.decode)(rawTxn, {
|
|
39
|
+
metadataRpc: this._material.metadata,
|
|
40
|
+
registry: registry,
|
|
41
|
+
});
|
|
42
|
+
const methodName = decodedTxn.method?.name;
|
|
43
|
+
if (methodName === _1.Interface.MethodNames.TransferWithMemo) {
|
|
44
|
+
return this.getTransferBuilder();
|
|
45
|
+
}
|
|
46
|
+
else if (methodName === _1.Interface.MethodNames.RegisterDidWithCDD) {
|
|
47
|
+
return this.getRegisterDidWithCDDBuilder();
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
throw new Error('Transaction cannot be parsed or has an unsupported transaction type');
|
|
51
|
+
}
|
|
17
52
|
}
|
|
18
53
|
}
|
|
19
54
|
exports.TransactionBuilderFactory = TransactionBuilderFactory;
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtREFBMEY7QUFFMUYsc0VBQXVEO0FBQ3ZELHVEQUFvRDtBQUNwRCwyRUFBd0U7QUFDeEUsb0RBQTRCO0FBQzVCLHlCQUFzRTtBQUV0RSxNQUFhLHlCQUEwQixTQUFRLHdDQUE2QjtJQUcxRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsU0FBUyxHQUFHLGVBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE9BQU8sSUFBSSxpQ0FBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCw0QkFBNEI7UUFDMUIsT0FBTyxJQUFJLHFEQUF5QixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFRCw4QkFBOEI7UUFDNUIsTUFBTSxJQUFJLDhCQUFtQixDQUFDLDRCQUE0QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksa0JBQWtCLENBQUMsQ0FBQztJQUNyRyxDQUFDO0lBRUQsSUFBSSxDQUFDLE1BQWM7UUFDakIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3JCLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxRQUFRLENBQUMsUUFBNEI7UUFDbkMsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7UUFDMUIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU8sVUFBVSxDQUFDLE1BQWM7UUFDL0IsTUFBTSxRQUFRLEdBQUcsb0JBQWlCLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMvRCxNQUFNLFVBQVUsR0FBRyxJQUFBLDJCQUFNLEVBQUMsTUFBTSxFQUFFO1lBQ2hDLFdBQVcsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVE7WUFDcEMsUUFBUSxFQUFFLFFBQVE7U0FDbkIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUM7UUFDM0MsSUFBSSxVQUFVLEtBQUssWUFBUyxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzFELE9BQU8sSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDbkMsQ0FBQzthQUFNLElBQUksVUFBVSxLQUFLLFlBQVMsQ0FBQyxXQUFXLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUNuRSxPQUFPLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxDQUFDO1FBQzdDLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQyxxRUFBcUUsQ0FBQyxDQUFDO1FBQ3pGLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUEvQ0QsOERBK0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksIE5vdEltcGxlbWVudGVkRXJyb3IgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBkZWNvZGUgfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1wb2xrYWRvdCc7XG5pbXBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zZmVyQnVpbGRlcic7XG5pbXBvcnQgeyBSZWdpc3RlckRpZFdpdGhDRERCdWlsZGVyIH0gZnJvbSAnLi9yZWdpc3RlckRpZFdpdGhDRERCdWlsZGVyJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IEludGVyZmFjZSwgU2luZ2xldG9uUmVnaXN0cnksIFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vJztcblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB7XG4gIHByb3RlY3RlZCBfbWF0ZXJpYWw6IEludGVyZmFjZS5NYXRlcmlhbDtcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gICAgdGhpcy5fbWF0ZXJpYWwgPSB1dGlscy5nZXRNYXRlcmlhbChfY29pbkNvbmZpZy5uZXR3b3JrLnR5cGUpO1xuICB9XG5cbiAgZ2V0VHJhbnNmZXJCdWlsZGVyKCk6IFRyYW5zZmVyQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2ZlckJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0UmVnaXN0ZXJEaWRXaXRoQ0REQnVpbGRlcigpOiBSZWdpc3RlckRpZFdpdGhDRERCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IFJlZ2lzdGVyRGlkV2l0aENEREJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0V2FsbGV0SW5pdGlhbGl6YXRpb25CdWlsZGVyKCk6IHZvaWQge1xuICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKGB3YWxsZXRJbml0aWFsaXphdGlvbiBmb3IgJHt0aGlzLl9jb2luQ29uZmlnLm5hbWV9IG5vdCBpbXBsZW1lbnRlZGApO1xuICB9XG5cbiAgZnJvbShyYXdUeG46IHN0cmluZyk6IFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgY29uc3QgYnVpbGRlciA9IHRoaXMuZ2V0QnVpbGRlcihyYXdUeG4pO1xuICAgIGJ1aWxkZXIuZnJvbShyYXdUeG4pO1xuICAgIHJldHVybiBidWlsZGVyO1xuICB9XG5cbiAgbWF0ZXJpYWwobWF0ZXJpYWw6IEludGVyZmFjZS5NYXRlcmlhbCk6IHRoaXMge1xuICAgIHRoaXMuX21hdGVyaWFsID0gbWF0ZXJpYWw7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwcml2YXRlIGdldEJ1aWxkZXIocmF3VHhuOiBzdHJpbmcpOiBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIGNvbnN0IHJlZ2lzdHJ5ID0gU2luZ2xldG9uUmVnaXN0cnkuZ2V0SW5zdGFuY2UodGhpcy5fbWF0ZXJpYWwpO1xuICAgIGNvbnN0IGRlY29kZWRUeG4gPSBkZWNvZGUocmF3VHhuLCB7XG4gICAgICBtZXRhZGF0YVJwYzogdGhpcy5fbWF0ZXJpYWwubWV0YWRhdGEsXG4gICAgICByZWdpc3RyeTogcmVnaXN0cnksXG4gICAgfSk7XG5cbiAgICBjb25zdCBtZXRob2ROYW1lID0gZGVjb2RlZFR4bi5tZXRob2Q/Lm5hbWU7XG4gICAgaWYgKG1ldGhvZE5hbWUgPT09IEludGVyZmFjZS5NZXRob2ROYW1lcy5UcmFuc2ZlcldpdGhNZW1vKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRUcmFuc2ZlckJ1aWxkZXIoKTtcbiAgICB9IGVsc2UgaWYgKG1ldGhvZE5hbWUgPT09IEludGVyZmFjZS5NZXRob2ROYW1lcy5SZWdpc3RlckRpZFdpdGhDREQpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFJlZ2lzdGVyRGlkV2l0aENEREJ1aWxkZXIoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUcmFuc2FjdGlvbiBjYW5ub3QgYmUgcGFyc2VkIG9yIGhhcyBhbiB1bnN1cHBvcnRlZCB0cmFuc2FjdGlvbiB0eXBlJyk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1,8 +1,54 @@
|
|
|
1
|
-
import { TransactionBuilder } from '
|
|
1
|
+
import { TransactionBuilder, Transaction } from '@bitgo-beta/abstract-substrate';
|
|
2
|
+
import { DecodedSignedTx, DecodedSigningPayload, UnsignedTransaction } from '@substrate/txwrapper-core';
|
|
2
3
|
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
3
|
-
import { TransactionType } from '@bitgo-beta/sdk-core';
|
|
4
|
+
import { BaseAddress, TransactionType } from '@bitgo-beta/sdk-core';
|
|
4
5
|
export declare class TransferBuilder extends TransactionBuilder {
|
|
6
|
+
protected _amount: string;
|
|
7
|
+
protected _to: string;
|
|
8
|
+
protected _memo: string;
|
|
5
9
|
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
6
10
|
protected get transactionType(): TransactionType;
|
|
11
|
+
/**
|
|
12
|
+
* Construct an unsigned `transferWithMemo` transaction using the provided details.
|
|
13
|
+
*
|
|
14
|
+
* @returns {UnsignedTransaction} The constructed unsigned transferWithMemo transaction.
|
|
15
|
+
*/
|
|
16
|
+
protected buildTransaction(): UnsignedTransaction;
|
|
17
|
+
/**
|
|
18
|
+
*
|
|
19
|
+
* The amount for transfer transaction.
|
|
20
|
+
*
|
|
21
|
+
* @param {string} amount
|
|
22
|
+
* @returns {TransferBuilder} This transfer builder.
|
|
23
|
+
*/
|
|
24
|
+
amount(amount: string): this;
|
|
25
|
+
/**
|
|
26
|
+
*
|
|
27
|
+
* The destination address for transfer transaction.
|
|
28
|
+
*
|
|
29
|
+
* @param {string} dest
|
|
30
|
+
* @returns {TransferBuilder} This transfer builder.
|
|
31
|
+
*/
|
|
32
|
+
to({ address }: BaseAddress): this;
|
|
33
|
+
/**
|
|
34
|
+
* The memo to attach to the transfer transaction.
|
|
35
|
+
* Pads the memo on the left with zeros to ensure it is 32 characters long.
|
|
36
|
+
*
|
|
37
|
+
* @param {string} memo The memo string to include.
|
|
38
|
+
* @returns {TransferBuilder} This transfer builder.
|
|
39
|
+
*/
|
|
40
|
+
memo(memo: string): this;
|
|
41
|
+
/** @inheritdoc */
|
|
42
|
+
validateDecodedTransaction(decodedTxn: DecodedSigningPayload | DecodedSignedTx, rawTransaction?: string): void;
|
|
43
|
+
/** @inheritdoc */
|
|
44
|
+
protected fromImplementation(rawTransaction: string): Transaction;
|
|
45
|
+
/**
|
|
46
|
+
* Construct a transaction to transfer funds with an attached memo.
|
|
47
|
+
*
|
|
48
|
+
* @param {Interface.TransferWithMemoArgs} args Arguments to be passed to the transferWithMemo method
|
|
49
|
+
* @param {Interface.CreateBaseTxInfo} info Base txn info required to construct the transfer transaction
|
|
50
|
+
* @returns {UnsignedTransaction} An unsigned transferWithMemo transaction
|
|
51
|
+
*/
|
|
52
|
+
private TransferWithMemo;
|
|
7
53
|
}
|
|
8
54
|
//# sourceMappingURL=transferBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAqB,MAAM,gCAAgC,CAAC;AACpG,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAgB,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACtH,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAA2B,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAI7F,qBAAa,eAAgB,SAAQ,kBAAkB;IACrD,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC;gBAEZ,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED;;;;OAIG;IACH,SAAS,CAAC,gBAAgB,IAAI,mBAAmB;IAYjD;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM5B;;;;;;OAMG;IACH,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,WAAW,GAAG,IAAI;IAMlC;;;;;;OAMG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMxB,kBAAkB;IAClB,0BAA0B,CAAC,UAAU,EAAE,qBAAqB,GAAG,eAAe,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI;IAgB9G,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IAajE;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;CAgBzB"}
|
|
@@ -1,15 +1,116 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.TransferBuilder = void 0;
|
|
4
|
-
const
|
|
7
|
+
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
8
|
+
const abstract_substrate_1 = require("@bitgo-beta/abstract-substrate");
|
|
9
|
+
const txwrapper_core_1 = require("@substrate/txwrapper-core");
|
|
5
10
|
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
6
|
-
|
|
11
|
+
const utils_1 = __importDefault(require("./utils"));
|
|
12
|
+
class TransferBuilder extends abstract_substrate_1.TransactionBuilder {
|
|
7
13
|
constructor(_coinConfig) {
|
|
8
14
|
super(_coinConfig);
|
|
15
|
+
this.material(utils_1.default.getMaterial(_coinConfig.network.type));
|
|
9
16
|
}
|
|
10
17
|
get transactionType() {
|
|
11
18
|
return sdk_core_1.TransactionType.Send;
|
|
12
19
|
}
|
|
20
|
+
/**
|
|
21
|
+
* Construct an unsigned `transferWithMemo` transaction using the provided details.
|
|
22
|
+
*
|
|
23
|
+
* @returns {UnsignedTransaction} The constructed unsigned transferWithMemo transaction.
|
|
24
|
+
*/
|
|
25
|
+
buildTransaction() {
|
|
26
|
+
const baseTxInfo = this.createBaseTxInfo();
|
|
27
|
+
return this.TransferWithMemo({
|
|
28
|
+
dest: { id: this._to },
|
|
29
|
+
value: this._amount,
|
|
30
|
+
memo: this._memo,
|
|
31
|
+
}, baseTxInfo);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
*
|
|
35
|
+
* The amount for transfer transaction.
|
|
36
|
+
*
|
|
37
|
+
* @param {string} amount
|
|
38
|
+
* @returns {TransferBuilder} This transfer builder.
|
|
39
|
+
*/
|
|
40
|
+
amount(amount) {
|
|
41
|
+
this.validateValue(new bignumber_js_1.default(amount));
|
|
42
|
+
this._amount = amount;
|
|
43
|
+
return this;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
*
|
|
47
|
+
* The destination address for transfer transaction.
|
|
48
|
+
*
|
|
49
|
+
* @param {string} dest
|
|
50
|
+
* @returns {TransferBuilder} This transfer builder.
|
|
51
|
+
*/
|
|
52
|
+
to({ address }) {
|
|
53
|
+
this.validateAddress({ address });
|
|
54
|
+
this._to = address;
|
|
55
|
+
return this;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* The memo to attach to the transfer transaction.
|
|
59
|
+
* Pads the memo on the left with zeros to ensure it is 32 characters long.
|
|
60
|
+
*
|
|
61
|
+
* @param {string} memo The memo string to include.
|
|
62
|
+
* @returns {TransferBuilder} This transfer builder.
|
|
63
|
+
*/
|
|
64
|
+
memo(memo) {
|
|
65
|
+
const paddedMemo = memo.padStart(32, '0');
|
|
66
|
+
this._memo = paddedMemo;
|
|
67
|
+
return this;
|
|
68
|
+
}
|
|
69
|
+
/** @inheritdoc */
|
|
70
|
+
validateDecodedTransaction(decodedTxn, rawTransaction) {
|
|
71
|
+
if (decodedTxn.method?.name === abstract_substrate_1.Interface.MethodNames.TransferWithMemo) {
|
|
72
|
+
const txMethod = decodedTxn.method.args;
|
|
73
|
+
const amount = `${txMethod.value}`;
|
|
74
|
+
const to = txMethod.dest.id;
|
|
75
|
+
const memo = txMethod.memo;
|
|
76
|
+
console.log(`Validating TransferWithMemo transaction: amount=${amount}, to=${to}, memo=${memo}`);
|
|
77
|
+
const validationResult = abstract_substrate_1.Schema.TransferWithMemoTransactionSchema.validate({ amount, to, memo });
|
|
78
|
+
if (validationResult.error) {
|
|
79
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid transaction: ${validationResult.error.message}`);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
/** @inheritdoc */
|
|
84
|
+
fromImplementation(rawTransaction) {
|
|
85
|
+
const tx = super.fromImplementation(rawTransaction);
|
|
86
|
+
if (this._method?.name === abstract_substrate_1.Interface.MethodNames.TransferWithMemo) {
|
|
87
|
+
const txMethod = this._method.args;
|
|
88
|
+
this.amount(txMethod.value);
|
|
89
|
+
this.to({ address: utils_1.default.decodeSubstrateAddress(txMethod.dest.id, this.getAddressFormat()) });
|
|
90
|
+
this.memo(txMethod.memo);
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${this._method?.name}. Expected transferWithMemo`);
|
|
94
|
+
}
|
|
95
|
+
return tx;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Construct a transaction to transfer funds with an attached memo.
|
|
99
|
+
*
|
|
100
|
+
* @param {Interface.TransferWithMemoArgs} args Arguments to be passed to the transferWithMemo method
|
|
101
|
+
* @param {Interface.CreateBaseTxInfo} info Base txn info required to construct the transfer transaction
|
|
102
|
+
* @returns {UnsignedTransaction} An unsigned transferWithMemo transaction
|
|
103
|
+
*/
|
|
104
|
+
TransferWithMemo(args, info) {
|
|
105
|
+
return (0, txwrapper_core_1.defineMethod)({
|
|
106
|
+
method: {
|
|
107
|
+
args,
|
|
108
|
+
name: 'transferWithMemo',
|
|
109
|
+
pallet: 'balances',
|
|
110
|
+
},
|
|
111
|
+
...info.baseTxInfo,
|
|
112
|
+
}, info.options);
|
|
113
|
+
}
|
|
13
114
|
}
|
|
14
115
|
exports.TransferBuilder = TransferBuilder;
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsZ0VBQXFDO0FBRXJDLHVFQUFvRztBQUNwRyw4REFBc0g7QUFFdEgsbURBQTZGO0FBRTdGLG9EQUE0QjtBQUU1QixNQUFhLGVBQWdCLFNBQVEsdUNBQWtCO0lBS3JELFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBSyxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELElBQWMsZUFBZTtRQUMzQixPQUFPLDBCQUFlLENBQUMsSUFBSSxDQUFDO0lBQzlCLENBQUM7SUFFRDs7OztPQUlHO0lBQ08sZ0JBQWdCO1FBQ3hCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzNDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUMxQjtZQUNFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ3RCLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTztZQUNuQixJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUs7U0FDakIsRUFDRCxVQUFVLENBQ1gsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxNQUFNLENBQUMsTUFBYztRQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksc0JBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBZTtRQUN6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YmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5cbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciwgVHJhbnNhY3Rpb24sIEludGVyZmFjZSwgU2NoZW1hIH0gZnJvbSAnQGJpdGdvLWJldGEvYWJzdHJhY3Qtc3Vic3RyYXRlJztcbmltcG9ydCB7IERlY29kZWRTaWduZWRUeCwgRGVjb2RlZFNpZ25pbmdQYXlsb2FkLCBkZWZpbmVNZXRob2QsIFVuc2lnbmVkVHJhbnNhY3Rpb24gfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IEJhc2VBZGRyZXNzLCBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuXG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2ZlckJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX2Ftb3VudDogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX3RvOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfbWVtbzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLm1hdGVyaWFsKHV0aWxzLmdldE1hdGVyaWFsKF9jb2luQ29uZmlnLm5ldHdvcmsudHlwZSkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlNlbmQ7XG4gIH1cblxuICAvKipcbiAgICogQ29uc3RydWN0IGFuIHVuc2lnbmVkIGB0cmFuc2ZlcldpdGhNZW1vYCB0cmFuc2FjdGlvbiB1c2luZyB0aGUgcHJvdmlkZWQgZGV0YWlscy5cbiAgICpcbiAgICogQHJldHVybnMge1Vuc2lnbmVkVHJhbnNhY3Rpb259IFRoZSBjb25zdHJ1Y3RlZCB1bnNpZ25lZCB0cmFuc2ZlcldpdGhNZW1vIHRyYW5zYWN0aW9uLlxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkVHJhbnNhY3Rpb24oKTogVW5zaWduZWRUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgYmFzZVR4SW5mbyA9IHRoaXMuY3JlYXRlQmFzZVR4SW5mbygpO1xuICAgIHJldHVybiB0aGlzLlRyYW5zZmVyV2l0aE1lbW8oXG4gICAgICB7XG4gICAgICAgIGRlc3Q6IHsgaWQ6IHRoaXMuX3RvIH0sXG4gICAgICAgIHZhbHVlOiB0aGlzLl9hbW91bnQsXG4gICAgICAgIG1lbW86IHRoaXMuX21lbW8sXG4gICAgICB9LFxuICAgICAgYmFzZVR4SW5mb1xuICAgICk7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogVGhlIGFtb3VudCBmb3IgdHJhbnNmZXIgdHJhbnNhY3Rpb24uXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhbW91bnRcbiAgICogQHJldHVybnMge1RyYW5zZmVyQnVpbGRlcn0gVGhpcyB0cmFuc2ZlciBidWlsZGVyLlxuICAgKi9cbiAgYW1vdW50KGFtb3VudDogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZVZhbHVlKG5ldyBCaWdOdW1iZXIoYW1vdW50KSk7XG4gICAgdGhpcy5fYW1vdW50ID0gYW1vdW50O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIFRoZSBkZXN0aW5hdGlvbiBhZGRyZXNzIGZvciB0cmFuc2ZlciB0cmFuc2FjdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGRlc3RcbiAgICogQHJldHVybnMge1RyYW5zZmVyQnVpbGRlcn0gVGhpcyB0cmFuc2ZlciBidWlsZGVyLlxuICAgKi9cbiAgdG8oeyBhZGRyZXNzIH06IEJhc2VBZGRyZXNzKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZUFkZHJlc3MoeyBhZGRyZXNzIH0pO1xuICAgIHRoaXMuX3RvID0gYWRkcmVzcztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbWVtbyB0byBhdHRhY2ggdG8gdGhlIHRyYW5zZmVyIHRyYW5zYWN0aW9uLlxuICAgKiBQYWRzIHRoZSBtZW1vIG9uIHRoZSBsZWZ0IHdpdGggemVyb3MgdG8gZW5zdXJlIGl0IGlzIDMyIGNoYXJhY3RlcnMgbG9uZy5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IG1lbW8gVGhlIG1lbW8gc3RyaW5nIHRvIGluY2x1ZGUuXG4gICAqIEByZXR1cm5zIHtUcmFuc2ZlckJ1aWxkZXJ9IFRoaXMgdHJhbnNmZXIgYnVpbGRlci5cbiAgICovXG4gIG1lbW8obWVtbzogc3RyaW5nKTogdGhpcyB7XG4gICAgY29uc3QgcGFkZGVkTWVtbyA9IG1lbW8ucGFkU3RhcnQoMzIsICcwJyk7XG4gICAgdGhpcy5fbWVtbyA9IHBhZGRlZE1lbW87XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVEZWNvZGVkVHJhbnNhY3Rpb24oZGVjb2RlZFR4bjogRGVjb2RlZFNpZ25pbmdQYXlsb2FkIHwgRGVjb2RlZFNpZ25lZFR4LCByYXdUcmFuc2FjdGlvbj86IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChkZWNvZGVkVHhuLm1ldGhvZD8ubmFtZSA9PT0gSW50ZXJmYWNlLk1ldGhvZE5hbWVzLlRyYW5zZmVyV2l0aE1lbW8pIHtcbiAgICAgIGNvbnN0IHR4TWV0aG9kID0gZGVjb2RlZFR4bi5tZXRob2QuYXJncyBhcyBJbnRlcmZhY2UuVHJhbnNmZXJXaXRoTWVtb0FyZ3M7XG4gICAgICBjb25zdCBhbW91bnQgPSBgJHt0eE1ldGhvZC52YWx1ZX1gO1xuICAgICAgY29uc3QgdG8gPSB0eE1ldGhvZC5kZXN0LmlkO1xuICAgICAgY29uc3QgbWVtbyA9IHR4TWV0aG9kLm1lbW87XG5cbiAgICAgIGNvbnNvbGUubG9nKGBWYWxpZGF0aW5nIFRyYW5zZmVyV2l0aE1lbW8gdHJhbnNhY3Rpb246IGFtb3VudD0ke2Ftb3VudH0sIHRvPSR7dG99LCBtZW1vPSR7bWVtb31gKTtcblxuICAgICAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IFNjaGVtYS5UcmFuc2ZlcldpdGhNZW1vVHJhbnNhY3Rpb25TY2hlbWEudmFsaWRhdGUoeyBhbW91bnQsIHRvLCBtZW1vIH0pO1xuICAgICAgaWYgKHZhbGlkYXRpb25SZXN1bHQuZXJyb3IpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIHRyYW5zYWN0aW9uOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHR4ID0gc3VwZXIuZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICBpZiAodGhpcy5fbWV0aG9kPy5uYW1lID09PSBJbnRlcmZhY2UuTWV0aG9kTmFtZXMuVHJhbnNmZXJXaXRoTWVtbykge1xuICAgICAgY29uc3QgdHhNZXRob2QgPSB0aGlzLl9tZXRob2QuYXJncyBhcyBJbnRlcmZhY2UuVHJhbnNmZXJXaXRoTWVtb0FyZ3M7XG4gICAgICB0aGlzLmFtb3VudCh0eE1ldGhvZC52YWx1ZSk7XG4gICAgICB0aGlzLnRvKHsgYWRkcmVzczogdXRpbHMuZGVjb2RlU3Vic3RyYXRlQWRkcmVzcyh0eE1ldGhvZC5kZXN0LmlkLCB0aGlzLmdldEFkZHJlc3NGb3JtYXQoKSkgfSk7XG4gICAgICB0aGlzLm1lbW8odHhNZXRob2QubWVtbyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihgSW52YWxpZCBUcmFuc2FjdGlvbiBUeXBlOiAke3RoaXMuX21ldGhvZD8ubmFtZX0uIEV4cGVjdGVkIHRyYW5zZmVyV2l0aE1lbW9gKTtcbiAgICB9XG4gICAgcmV0dXJuIHR4O1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdCBhIHRyYW5zYWN0aW9uIHRvIHRyYW5zZmVyIGZ1bmRzIHdpdGggYW4gYXR0YWNoZWQgbWVtby5cbiAgICpcbiAgICogQHBhcmFtIHtJbnRlcmZhY2UuVHJhbnNmZXJXaXRoTWVtb0FyZ3N9IGFyZ3MgQXJndW1lbnRzIHRvIGJlIHBhc3NlZCB0byB0aGUgdHJhbnNmZXJXaXRoTWVtbyBtZXRob2RcbiAgICogQHBhcmFtIHtJbnRlcmZhY2UuQ3JlYXRlQmFzZVR4SW5mb30gaW5mbyBCYXNlIHR4biBpbmZvIHJlcXVpcmVkIHRvIGNvbnN0cnVjdCB0aGUgdHJhbnNmZXIgdHJhbnNhY3Rpb25cbiAgICogQHJldHVybnMge1Vuc2lnbmVkVHJhbnNhY3Rpb259IEFuIHVuc2lnbmVkIHRyYW5zZmVyV2l0aE1lbW8gdHJhbnNhY3Rpb25cbiAgICovXG4gIHByaXZhdGUgVHJhbnNmZXJXaXRoTWVtbyhcbiAgICBhcmdzOiBJbnRlcmZhY2UuVHJhbnNmZXJXaXRoTWVtb0FyZ3MsXG4gICAgaW5mbzogSW50ZXJmYWNlLkNyZWF0ZUJhc2VUeEluZm9cbiAgKTogVW5zaWduZWRUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIGRlZmluZU1ldGhvZChcbiAgICAgIHtcbiAgICAgICAgbWV0aG9kOiB7XG4gICAgICAgICAgYXJncyxcbiAgICAgICAgICBuYW1lOiAndHJhbnNmZXJXaXRoTWVtbycsXG4gICAgICAgICAgcGFsbGV0OiAnYmFsYW5jZXMnLFxuICAgICAgICB9LFxuICAgICAgICAuLi5pbmZvLmJhc2VUeEluZm8sXG4gICAgICB9LFxuICAgICAgaW5mby5vcHRpb25zXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"txnSchema.d.ts","sourceRoot":"","sources":["../../../src/lib/txnSchema.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;AAKtB,eAAO,MAAM,mCAAmC,uBAI9C,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
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.RegisterDidWithCDDTransactionSchema = void 0;
|
|
7
|
+
const joi_1 = __importDefault(require("joi"));
|
|
8
|
+
const utils_1 = __importDefault(require("./utils"));
|
|
9
|
+
const addressSchema = joi_1.default.string().custom((addr) => utils_1.default.isValidAddress(addr));
|
|
10
|
+
exports.RegisterDidWithCDDTransactionSchema = joi_1.default.object({
|
|
11
|
+
targetAccount: addressSchema.required(),
|
|
12
|
+
secondaryKeys: joi_1.default.array().length(0).required(),
|
|
13
|
+
expiry: joi_1.default.valid(null).required(),
|
|
14
|
+
});
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhuU2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90eG5TY2hlbWEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsOENBQXNCO0FBQ3RCLG9EQUE0QjtBQUU1QixNQUFNLGFBQWEsR0FBRyxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxlQUFLLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7QUFFbkUsUUFBQSxtQ0FBbUMsR0FBRyxhQUFHLENBQUMsTUFBTSxDQUFDO0lBQzVELGFBQWEsRUFBRSxhQUFhLENBQUMsUUFBUSxFQUFFO0lBQ3ZDLGFBQWEsRUFBRSxhQUFHLENBQUMsS0FBSyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUMvQyxNQUFNLEVBQUUsYUFBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUU7Q0FDbkMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGpvaSBmcm9tICdqb2knO1xuaW1wb3J0IFV0aWxzIGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBhZGRyZXNzU2NoZW1hID0gam9pLnN0cmluZygpLmN1c3RvbSgoYWRkcikgPT4gVXRpbHMuaXNWYWxpZEFkZHJlc3MoYWRkcikpO1xuXG5leHBvcnQgY29uc3QgUmVnaXN0ZXJEaWRXaXRoQ0REVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgdGFyZ2V0QWNjb3VudDogYWRkcmVzc1NjaGVtYS5yZXF1aXJlZCgpLFxuICBzZWNvbmRhcnlLZXlzOiBqb2kuYXJyYXkoKS5sZW5ndGgoMCkucmVxdWlyZWQoKSxcbiAgZXhwaXJ5OiBqb2kudmFsaWQobnVsbCkucmVxdWlyZWQoKSxcbn0pO1xuIl19
|
package/dist/src/lib/utils.d.ts
CHANGED
|
@@ -1,17 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
/** @inheritdoc */
|
|
6
|
-
isValidBlockId(hash: string): boolean;
|
|
7
|
-
/** @inheritdoc */
|
|
8
|
-
isValidPrivateKey(key: string): boolean;
|
|
9
|
-
/** @inheritdoc */
|
|
10
|
-
isValidPublicKey(key: string): boolean;
|
|
11
|
-
/** @inheritdoc */
|
|
12
|
-
isValidSignature(signature: string): boolean;
|
|
13
|
-
/** @inheritdoc */
|
|
14
|
-
isValidTransactionId(txId: string): boolean;
|
|
1
|
+
import { Utils as SubstrateUtils, Interface } from '@bitgo-beta/abstract-substrate';
|
|
2
|
+
import { NetworkType } from '@bitgo-beta/statics';
|
|
3
|
+
export declare class Utils extends SubstrateUtils {
|
|
4
|
+
getMaterial(networkType: NetworkType): Interface.Material;
|
|
15
5
|
}
|
|
16
6
|
declare const utils: Utils;
|
|
17
7
|
export default utils;
|