@bitgo-beta/sdk-coin-tao 1.0.1-alpha.13 → 1.0.1-alpha.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/src/lib/errors.d.ts +8 -0
  3. package/dist/src/lib/errors.d.ts.map +1 -0
  4. package/dist/src/lib/errors.js +19 -0
  5. package/dist/src/lib/iface_utils.d.ts +59 -0
  6. package/dist/src/lib/iface_utils.d.ts.map +1 -0
  7. package/dist/src/lib/iface_utils.js +92 -0
  8. package/dist/src/lib/index.d.ts +2 -0
  9. package/dist/src/lib/index.d.ts.map +1 -1
  10. package/dist/src/lib/index.js +6 -2
  11. package/dist/src/lib/nativeTransferBuilder.d.ts +84 -0
  12. package/dist/src/lib/nativeTransferBuilder.d.ts.map +1 -0
  13. package/dist/src/lib/nativeTransferBuilder.js +219 -0
  14. package/dist/src/lib/singletonRegistry.d.ts +7 -0
  15. package/dist/src/lib/singletonRegistry.d.ts.map +1 -0
  16. package/dist/src/lib/singletonRegistry.js +20 -0
  17. package/dist/src/lib/transaction.d.ts +78 -3
  18. package/dist/src/lib/transaction.d.ts.map +1 -1
  19. package/dist/src/lib/transaction.js +599 -6
  20. package/dist/src/lib/transactionBuilder.d.ts +108 -20
  21. package/dist/src/lib/transactionBuilder.d.ts.map +1 -1
  22. package/dist/src/lib/transactionBuilder.js +305 -32
  23. package/dist/src/lib/transactionBuilderFactory.d.ts +8 -5
  24. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
  25. package/dist/src/lib/transactionBuilderFactory.js +39 -8
  26. package/dist/src/lib/transferBuilder.d.ts +7 -4
  27. package/dist/src/lib/transferBuilder.d.ts.map +1 -1
  28. package/dist/src/lib/transferBuilder.js +3 -7
  29. package/dist/src/lib/txnSchema.d.ts +15 -0
  30. package/dist/src/lib/txnSchema.d.ts.map +1 -0
  31. package/dist/src/lib/txnSchema.js +117 -0
  32. package/dist/src/lib/utils.d.ts +11 -1
  33. package/dist/src/lib/utils.d.ts.map +1 -1
  34. package/dist/src/lib/utils.js +26 -1
  35. package/dist/src/resources/index.d.ts +3 -0
  36. package/dist/src/resources/index.d.ts.map +1 -0
  37. package/dist/src/resources/index.js +19 -0
  38. package/dist/src/resources/mainnet.d.ts +2 -0
  39. package/dist/src/resources/mainnet.d.ts.map +1 -0
  40. package/dist/src/resources/mainnet.js +5 -0
  41. package/dist/src/resources/westend.d.ts +2 -0
  42. package/dist/src/resources/westend.d.ts.map +1 -0
  43. package/dist/src/resources/westend.js +5 -0
  44. package/package.json +9 -7
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SingletonRegistry = void 0;
4
+ const txwrapper_registry_1 = require("@substrate/txwrapper-registry");
5
+ class SingletonRegistry {
6
+ static getInstance(material) {
7
+ if (material !== SingletonRegistry.material) {
8
+ SingletonRegistry.material = material;
9
+ SingletonRegistry.instance = (0, txwrapper_registry_1.getRegistry)({
10
+ chainName: material.chainName,
11
+ specName: material.specName,
12
+ specVersion: material.specVersion,
13
+ metadataRpc: material.metadata,
14
+ });
15
+ }
16
+ return SingletonRegistry.instance;
17
+ }
18
+ }
19
+ exports.SingletonRegistry = SingletonRegistry;
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xldG9uUmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3NpbmdsZXRvblJlZ2lzdHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLHNFQUE0RDtBQUc1RCxNQUFhLGlCQUFpQjtJQUk1QixNQUFNLENBQUMsV0FBVyxDQUFDLFFBQVE7UUFDekIsSUFBSSxRQUFRLEtBQUssaUJBQWlCLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDNUMsaUJBQWlCLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztZQUN0QyxpQkFBaUIsQ0FBQyxRQUFRLEdBQUcsSUFBQSxnQ0FBVyxFQUFDO2dCQUN2QyxTQUFTLEVBQUUsUUFBUSxDQUFDLFNBQVM7Z0JBQzdCLFFBQVEsRUFBRSxRQUFRLENBQUMsUUFBaUM7Z0JBQ3BELFdBQVcsRUFBRSxRQUFRLENBQUMsV0FBVztnQkFDakMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxRQUF5QjthQUNoRCxDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTyxpQkFBaUIsQ0FBQyxRQUFRLENBQUM7SUFDcEMsQ0FBQztDQUNGO0FBaEJELDhDQWdCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJpdHRlbnNvclNwZWNOYW1lVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgVHlwZVJlZ2lzdHJ5IH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItY29yZS9saWIvdHlwZXMnO1xuaW1wb3J0IHsgZ2V0UmVnaXN0cnkgfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1yZWdpc3RyeSc7XG5pbXBvcnQgeyBNYXRlcmlhbCB9IGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgY2xhc3MgU2luZ2xldG9uUmVnaXN0cnkge1xuICBwcml2YXRlIHN0YXRpYyBpbnN0YW5jZTogVHlwZVJlZ2lzdHJ5O1xuICBwcml2YXRlIHN0YXRpYyBtYXRlcmlhbDogTWF0ZXJpYWw7XG5cbiAgc3RhdGljIGdldEluc3RhbmNlKG1hdGVyaWFsKTogVHlwZVJlZ2lzdHJ5IHtcbiAgICBpZiAobWF0ZXJpYWwgIT09IFNpbmdsZXRvblJlZ2lzdHJ5Lm1hdGVyaWFsKSB7XG4gICAgICBTaW5nbGV0b25SZWdpc3RyeS5tYXRlcmlhbCA9IG1hdGVyaWFsO1xuICAgICAgU2luZ2xldG9uUmVnaXN0cnkuaW5zdGFuY2UgPSBnZXRSZWdpc3RyeSh7XG4gICAgICAgIGNoYWluTmFtZTogbWF0ZXJpYWwuY2hhaW5OYW1lLFxuICAgICAgICBzcGVjTmFtZTogbWF0ZXJpYWwuc3BlY05hbWUgYXMgQml0dGVuc29yU3BlY05hbWVUeXBlLFxuICAgICAgICBzcGVjVmVyc2lvbjogbWF0ZXJpYWwuc3BlY1ZlcnNpb24sXG4gICAgICAgIG1ldGFkYXRhUnBjOiBtYXRlcmlhbC5tZXRhZGF0YSBhcyBgMHgke3N0cmluZ31gLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBTaW5nbGV0b25SZWdpc3RyeS5pbnN0YW5jZTtcbiAgfVxufVxuIl19
@@ -1,8 +1,83 @@
1
- import { BaseKey, BaseTransaction } from '@bitgo-beta/sdk-core';
2
- import { TxData } from './iface';
1
+ import { BaseKey, BaseTransaction, TransactionType } from '@bitgo-beta/sdk-core';
2
+ import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
3
+ import { UnsignedTransaction } from '@substrate/txwrapper-core';
4
+ import { TypeRegistry } from '@substrate/txwrapper-core/lib/types';
5
+ import { KeyPair } from './keyPair';
6
+ import { TransactionExplanation, TxData } from './iface';
7
+ /**
8
+ * Use a dummy address as the destination of a bond or bondExtra because our inputs and outputs model
9
+ * doesn't seem to handle the concept of locking funds within a wallet as a method of transferring coins.
10
+ */
11
+ export declare const STAKING_DESTINATION: string;
3
12
  export declare class Transaction extends BaseTransaction {
4
- canSign(key: BaseKey): boolean;
13
+ protected _dotTransaction: UnsignedTransaction;
14
+ private _signedTransaction?;
15
+ private _registry;
16
+ private _chainName;
17
+ private _sender;
18
+ private static FAKE_SIGNATURE;
19
+ constructor(coinConfig: Readonly<CoinConfig>);
20
+ /** @inheritdoc */
21
+ canSign({ key }: BaseKey): boolean;
22
+ /**
23
+ * Sign a polkadot transaction and update the transaction hex
24
+ *
25
+ * @param {KeyPair} keyPair - ed signature
26
+ */
27
+ sign(keyPair: KeyPair): void;
28
+ /**
29
+ * Adds the signature to the DOT Transaction
30
+ * @param {string} signature
31
+ */
32
+ addSignature(signature: string): void;
33
+ /**
34
+ * Returns a serialized representation of this transaction with a fake signature attached which
35
+ * can be used to estimate transaction fees.
36
+ */
37
+ fakeSign(): string;
38
+ registry(registry: TypeRegistry): void;
39
+ chainName(chainName: string): void;
40
+ sender(sender: string): void;
41
+ /** @inheritdoc */
5
42
  toBroadcastFormat(): string;
43
+ transactionSize(): number;
44
+ /** @inheritdoc */
6
45
  toJson(): TxData;
46
+ explainTransferTransaction(json: TxData, explanationResult: TransactionExplanation): TransactionExplanation;
47
+ explainStakingActivateTransaction(json: TxData, explanationResult: TransactionExplanation): TransactionExplanation;
48
+ explainAddressInitializationTransaction(json: TxData, explanationResult: TransactionExplanation): TransactionExplanation;
49
+ explainStakingUnlockTransaction(json: TxData, explanationResult: TransactionExplanation): TransactionExplanation;
50
+ /** @inheritdoc */
51
+ explainTransaction(): TransactionExplanation;
52
+ /**
53
+ * Load the input and output data on this transaction.
54
+ */
55
+ loadInputsAndOutputs(): void;
56
+ private decodeInputsAndOutputsForSend;
57
+ private decodeInputsAndOutputsForBatch;
58
+ private getRemoveProxyCost;
59
+ private getAddProxyCost;
60
+ private getConstant;
61
+ private decodeInputsAndOutputsForBond;
62
+ private decodeInputsAndOutputsForUnbond;
63
+ private decodeInputsAndOutputsForWithdrawUnbond;
64
+ /**
65
+ * Constructs a signed payload using construct.signTx
66
+ * This method will be called during the build step if a TSS signature
67
+ * is added and will set the signTransaction which is the txHex that will be broadcasted
68
+ * As well as add the signature used to sign to the signature array in hex format
69
+ *
70
+ * @param {Buffer} signature The signature to be added to a dot transaction
71
+ */
72
+ constructSignedPayload(signature: Buffer): void;
73
+ setTransaction(tx: UnsignedTransaction): void;
74
+ /** @inheritdoc **/
75
+ get signablePayload(): Buffer;
76
+ /**
77
+ * Set the transaction type.
78
+ *
79
+ * @param {TransactionType} transactionType The transaction type to be set.
80
+ */
81
+ transactionType(transactionType: TransactionType): void;
7
82
  }
8
83
  //# sourceMappingURL=transaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/lib/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,qBAAa,WAAY,SAAQ,eAAe;IAC9C,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAI9B,iBAAiB,IAAI,MAAM;IAI3B,MAAM,IAAI,MAAM;CAGjB"}
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/lib/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,eAAe,EAOf,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAI7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAeL,sBAAsB,EACtB,MAAM,EAGP,MAAM,SAAS,CAAC;AAQjB;;;GAGG;AACH,eAAO,MAAM,mBAAmB,QAAsF,CAAC;AAEvH,qBAAa,WAAY,SAAQ,eAAe;IAC9C,SAAS,CAAC,eAAe,EAAE,mBAAmB,CAAC;IAC/C,OAAO,CAAC,kBAAkB,CAAC,CAAS;IACpC,OAAO,CAAC,SAAS,CAAe;IAChC,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,MAAM,CAAC,cAAc,CAAmE;gBAEpF,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI5C,kBAAkB;IAClB,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,OAAO,GAAG,OAAO;IAMlC;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IA0B5B;;;OAGG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IASrC;;;OAGG;IACH,QAAQ,IAAI,MAAM;IASlB,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAItC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIlC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI5B,kBAAkB;IAClB,iBAAiB,IAAI,MAAM;IAa3B,eAAe,IAAI,MAAM;IAIzB,kBAAkB;IAClB,MAAM,IAAI,MAAM;IA4HhB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,sBAAsB,GAAG,sBAAsB;IAe3G,iCAAiC,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,sBAAsB,GAAG,sBAAsB;IAelH,uCAAuC,CACrC,IAAI,EAAE,MAAM,EACZ,iBAAiB,EAAE,sBAAsB,GACxC,sBAAsB;IAUzB,+BAA+B,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,sBAAsB,GAAG,sBAAsB;IAYhH,kBAAkB;IAClB,kBAAkB,IAAI,sBAAsB;IAgC5C;;OAEG;IACH,oBAAoB,IAAI,IAAI;IAuB5B,OAAO,CAAC,6BAA6B;IAqDrC,OAAO,CAAC,8BAA8B;IA6GtC,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,eAAe;IAcvB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,6BAA6B;IA4BrC,OAAO,CAAC,+BAA+B;IAKvC,OAAO,CAAC,uCAAuC;IAK/C;;;;;;;OAOG;IACH,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAgB/C,cAAc,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI;IAI7C,mBAAmB;IACnB,IAAI,eAAe,IAAI,MAAM,CAK5B;IAED;;;;OAIG;IACH,eAAe,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;CAGxD"}