@bitgo/sdk-coin-sui 1.7.1 → 2.0.0

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 (45) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/src/lib/bcs.js +25 -1
  3. package/dist/src/lib/constants.d.ts +17 -5
  4. package/dist/src/lib/constants.d.ts.map +1 -1
  5. package/dist/src/lib/constants.js +19 -8
  6. package/dist/src/lib/iface.d.ts +153 -4
  7. package/dist/src/lib/iface.d.ts.map +1 -1
  8. package/dist/src/lib/iface.js +53 -1
  9. package/dist/src/lib/index.d.ts +3 -0
  10. package/dist/src/lib/index.d.ts.map +1 -1
  11. package/dist/src/lib/index.js +8 -2
  12. package/dist/src/lib/keyPair.d.ts +7 -0
  13. package/dist/src/lib/keyPair.d.ts.map +1 -1
  14. package/dist/src/lib/keyPair.js +15 -1
  15. package/dist/src/lib/stakingBuilder.d.ts +73 -0
  16. package/dist/src/lib/stakingBuilder.d.ts.map +1 -0
  17. package/dist/src/lib/stakingBuilder.js +223 -0
  18. package/dist/src/lib/stakingTransaction.d.ts +67 -0
  19. package/dist/src/lib/stakingTransaction.d.ts.map +1 -0
  20. package/dist/src/lib/stakingTransaction.js +353 -0
  21. package/dist/src/lib/transaction.d.ts +30 -30
  22. package/dist/src/lib/transaction.d.ts.map +1 -1
  23. package/dist/src/lib/transaction.js +115 -217
  24. package/dist/src/lib/transactionBuilder.d.ts +12 -26
  25. package/dist/src/lib/transactionBuilder.d.ts.map +1 -1
  26. package/dist/src/lib/transactionBuilder.js +13 -154
  27. package/dist/src/lib/transactionBuilderFactory.d.ts +6 -2
  28. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
  29. package/dist/src/lib/transactionBuilderFactory.js +22 -6
  30. package/dist/src/lib/transferBuilder.d.ts +25 -1
  31. package/dist/src/lib/transferBuilder.d.ts.map +1 -1
  32. package/dist/src/lib/transferBuilder.js +165 -1
  33. package/dist/src/lib/transferTransaction.d.ts +53 -0
  34. package/dist/src/lib/transferTransaction.d.ts.map +1 -0
  35. package/dist/src/lib/transferTransaction.js +240 -0
  36. package/dist/src/lib/txnSchema.d.ts +7 -0
  37. package/dist/src/lib/txnSchema.d.ts.map +1 -0
  38. package/dist/src/lib/txnSchema.js +81 -0
  39. package/dist/src/lib/utils.d.ts +111 -2
  40. package/dist/src/lib/utils.d.ts.map +1 -1
  41. package/dist/src/lib/utils.js +201 -2
  42. package/dist/src/sui.d.ts +2 -0
  43. package/dist/src/sui.d.ts.map +1 -1
  44. package/dist/src/sui.js +9 -2
  45. package/package.json +9 -7
@@ -0,0 +1,81 @@
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.SuiMoveCallTransactionSchema = exports.StakeTransactionSchema = exports.RequestSwitchDelegationTransactionSchema = exports.RequestWithdrawDelegationTransactionSchema = exports.RequestAddDelegationTransactionSchema = void 0;
7
+ const joi_1 = __importDefault(require("joi"));
8
+ const SuiObjectRefSchema = joi_1.default.object({
9
+ objectId: joi_1.default.string().required(),
10
+ version: joi_1.default.number().required(),
11
+ digest: joi_1.default.string().required(),
12
+ });
13
+ const SharedObjectRefSchema = joi_1.default.object({
14
+ objectId: joi_1.default.string().required(),
15
+ initialSharedVersion: joi_1.default.number().required(),
16
+ });
17
+ const ImmOrOwnedArgSchema = joi_1.default.object({
18
+ ImmOrOwned: SuiObjectRefSchema.required(),
19
+ });
20
+ const SharedArgSchema = joi_1.default.object({
21
+ Shared: SharedObjectRefSchema.required(),
22
+ });
23
+ const ObjectArgSchema = joi_1.default.alternatives().try(ImmOrOwnedArgSchema, SharedArgSchema);
24
+ const ObjVecArgSchema = joi_1.default.object({
25
+ ObjVec: joi_1.default.array().items(ObjectArgSchema).required(),
26
+ });
27
+ const CallArgSchema = joi_1.default.alternatives().try(joi_1.default.object({
28
+ Pure: joi_1.default.array().items(joi_1.default.number()).required(),
29
+ }), joi_1.default.object({
30
+ Object: ObjectArgSchema.required(),
31
+ }), ObjVecArgSchema);
32
+ const SuiJsonValueSchema = joi_1.default
33
+ .alternatives()
34
+ .try(joi_1.default.boolean(), joi_1.default.number(), joi_1.default.string(), SuiObjectRefSchema, SharedObjectRefSchema, CallArgSchema, joi_1.default.array().items(joi_1.default.any()));
35
+ const StructTagSchema = joi_1.default.object({
36
+ address: joi_1.default.string().required(),
37
+ module: joi_1.default.string().required(),
38
+ name: joi_1.default.string().required(),
39
+ typeParams: joi_1.default.array().items(joi_1.default.any()).optional(),
40
+ });
41
+ const TypeTagSchema = joi_1.default
42
+ .alternatives()
43
+ .try(joi_1.default.object({ bool: joi_1.default.equal(null).required() }), joi_1.default.object({ u8: joi_1.default.equal(null).required() }), joi_1.default.object({ u64: joi_1.default.equal(null).required() }), joi_1.default.object({ u128: joi_1.default.equal(null).required() }), joi_1.default.object({ address: joi_1.default.equal(null).required() }), joi_1.default.object({ signer: joi_1.default.equal(null).required() }), joi_1.default.object({ vector: joi_1.default.any().required() }), joi_1.default.object({ struct: StructTagSchema.required() }), joi_1.default.object({ u16: joi_1.default.equal(null).required() }), joi_1.default.object({ u32: joi_1.default.equal(null).required() }), joi_1.default.object({ u256: joi_1.default.equal(null).required() }));
44
+ const TypeArgumentsSchema = joi_1.default.array().items(TypeTagSchema).required();
45
+ const RequestAddDelegationArgumentsSchema = joi_1.default.array().length(4).items(SuiJsonValueSchema).required();
46
+ const RequestWithdrawArgumentsSchema = joi_1.default.array().length(3).items(SuiJsonValueSchema).required();
47
+ const RequestSwitchArgumentsSchema = joi_1.default.array().length(4).items(SuiJsonValueSchema).required();
48
+ exports.RequestAddDelegationTransactionSchema = joi_1.default.object({
49
+ package: joi_1.default.alternatives(SuiObjectRefSchema).match('one').required(),
50
+ module: joi_1.default.string().required(),
51
+ function: joi_1.default.string().required(),
52
+ typeArguments: TypeArgumentsSchema.optional(),
53
+ arguments: RequestAddDelegationArgumentsSchema.required(),
54
+ });
55
+ exports.RequestWithdrawDelegationTransactionSchema = joi_1.default.object({
56
+ package: joi_1.default.alternatives(SuiObjectRefSchema).match('one').required(),
57
+ module: joi_1.default.string().required(),
58
+ function: joi_1.default.string().required(),
59
+ typeArguments: TypeArgumentsSchema.optional(),
60
+ arguments: RequestWithdrawArgumentsSchema.required(),
61
+ });
62
+ exports.RequestSwitchDelegationTransactionSchema = joi_1.default.object({
63
+ package: joi_1.default.alternatives(SuiObjectRefSchema).match('one').required(),
64
+ module: joi_1.default.string().required(),
65
+ function: joi_1.default.string().required(),
66
+ typeArguments: TypeArgumentsSchema.optional(),
67
+ arguments: RequestSwitchArgumentsSchema.required(),
68
+ });
69
+ exports.StakeTransactionSchema = joi_1.default.alternatives(exports.RequestAddDelegationTransactionSchema).match('one');
70
+ exports.SuiMoveCallTransactionSchema = joi_1.default.object({
71
+ type: joi_1.default.string().required(),
72
+ sender: joi_1.default.string().required(),
73
+ tx: joi_1.default
74
+ .alternatives(exports.RequestAddDelegationTransactionSchema, exports.RequestWithdrawDelegationTransactionSchema, exports.RequestSwitchDelegationTransactionSchema)
75
+ .match('any')
76
+ .required(),
77
+ gasBudget: joi_1.default.number().required(),
78
+ gasPrice: joi_1.default.number().required(),
79
+ gasPayment: joi_1.default.alternatives(SuiObjectRefSchema).match('one').required(),
80
+ });
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhuU2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90eG5TY2hlbWEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsOENBQXNCO0FBRXRCLE1BQU0sa0JBQWtCLEdBQUcsYUFBRyxDQUFDLE1BQU0sQ0FBQztJQUNwQyxRQUFRLEVBQUUsYUFBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUNqQyxPQUFPLEVBQUUsYUFBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUNoQyxNQUFNLEVBQUUsYUFBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtDQUNoQyxDQUFDLENBQUM7QUFFSCxNQUFNLHFCQUFxQixHQUFHLGFBQUcsQ0FBQyxNQUFNLENBQUM7SUFDdkMsUUFBUSxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDakMsb0JBQW9CLEVBQUUsYUFBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtDQUM5QyxDQUFDLENBQUM7QUFFSCxNQUFNLG1CQUFtQixHQUFHLGFBQUcsQ0FBQyxNQUFNLENBQUM7SUFDckMsVUFBVSxFQUFFLGtCQUFrQixDQUFDLFFBQVEsRUFBRTtDQUMxQyxDQUFDLENBQUM7QUFFSCxNQUFNLGVBQWUsR0FBRyxhQUFHLENBQUMsTUFBTSxDQUFDO0lBQ2pDLE1BQU0sRUFBRSxxQkFBcUIsQ0FBQyxRQUFRLEVBQUU7Q0FDekMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxlQUFlLEdBQUcsYUFBRyxDQUFDLFlBQVksRUFBRSxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSxlQUFlLENBQUMsQ0FBQztBQUVyRixNQUFNLGVBQWUsR0FBRyxhQUFHLENBQUMsTUFBTSxDQUFDO0lBQ2pDLE1BQU0sRUFBRSxhQUFHLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtDQUN0RCxDQUFDLENBQUM7QUFFSCxNQUFNLGFBQWEsR0FBRyxhQUFHLENBQUMsWUFBWSxFQUFFLENBQUMsR0FBRyxDQUMxQyxhQUFHLENBQUMsTUFBTSxDQUFDO0lBQ1QsSUFBSSxFQUFFLGFBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLENBQUMsYUFBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFO0NBQ2pELENBQUMsRUFDRixhQUFHLENBQUMsTUFBTSxDQUFDO0lBQ1QsTUFBTSxFQUFFLGVBQWUsQ0FBQyxRQUFRLEVBQUU7Q0FDbkMsQ0FBQyxFQUNGLGVBQWUsQ0FDaEIsQ0FBQztBQUVGLE1BQU0sa0JBQWtCLEdBQUcsYUFBRztLQUMzQixZQUFZLEVBQUU7S0FDZCxHQUFHLENBQ0YsYUFBRyxDQUFDLE9BQU8sRUFBRSxFQUNiLGFBQUcsQ0FBQyxNQUFNLEVBQUUsRUFDWixhQUFHLENBQUMsTUFBTSxFQUFFLEVBQ1osa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQixhQUFhLEVBQ2IsYUFBRyxDQUFDLEtBQUssRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FDN0IsQ0FBQztBQUVKLE1BQU0sZUFBZSxHQUFHLGFBQUcsQ0FBQyxNQUFNLENBQUM7SUFDakMsT0FBTyxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDaEMsTUFBTSxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDL0IsSUFBSSxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDN0IsVUFBVSxFQUFFLGFBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLENBQUMsYUFBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFO0NBQ3BELENBQUMsQ0FBQztBQUVILE1BQU0sYUFBYSxHQUFHLGFBQUc7S0FDdEIsWUFBWSxFQUFFO0tBQ2QsR0FBRyxDQUNGLGFBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsYUFBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLEVBQ2hELGFBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEVBQUUsYUFBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLEVBQzlDLGFBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxHQUFHLEVBQUUsYUFBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLEVBQy9DLGFBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsYUFBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLEVBQ2hELGFBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxPQUFPLEVBQUUsYUFBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLEVBQ25ELGFBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxNQUFNLEVBQUUsYUFBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLEVBQ2xELGFBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxNQUFNLEVBQUUsYUFBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsRUFDNUMsYUFBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sRUFBRSxlQUFlLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxFQUNsRCxhQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsR0FBRyxFQUFFLGFBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxFQUMvQyxhQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsR0FBRyxFQUFFLGFBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxF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QyxnREFBd0MsQ0FDekM7U0FDQSxLQUFLLENBQUMsS0FBSyxDQUFDO1NBQ1osUUFBUSxFQUFFO0lBQ2IsU0FBUyxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDbEMsUUFBUSxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDakMsVUFBVSxFQUFFLGFBQUcsQ0FBQyxZQUFZLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxFQUFFO0NBQ3pFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBqb2kgZnJvbSAnam9pJztcblxuY29uc3QgU3VpT2JqZWN0UmVmU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIG9iamVjdElkOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgdmVyc2lvbjogam9pLm51bWJlcigpLnJlcXVpcmVkKCksXG4gIGRpZ2VzdDogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG59KTtcblxuY29uc3QgU2hhcmVkT2JqZWN0UmVmU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIG9iamVjdElkOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgaW5pdGlhbFNoYXJlZFZlcnNpb246IGpvaS5udW1iZXIoKS5yZXF1aXJlZCgpLFxufSk7XG5cbmNvbnN0IEltbU9yT3duZWRBcmdTY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgSW1tT3JPd25lZDogU3VpT2JqZWN0UmVmU2NoZW1hLnJlcXVpcmVkKCksXG59KTtcblxuY29uc3QgU2hhcmVkQXJnU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIFNoYXJlZDogU2hhcmVkT2JqZWN0UmVmU2NoZW1hLnJlcXVpcmVkKCksXG59KTtcblxuY29uc3QgT2JqZWN0QXJnU2NoZW1hID0gam9pLmFsdGVybmF0aXZlcygpLnRyeShJbW1Pck93bmVkQXJnU2NoZW1hLCBTaGFyZWRBcmdTY2hlbWEpO1xuXG5jb25zdCBPYmpWZWNBcmdTY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgT2JqVmVjOiBqb2kuYXJyYXkoKS5pdGVtcyhPYmplY3RBcmdTY2hlbWEpLnJlcXVpcmVkKCksXG59KTtcblxuY29uc3QgQ2FsbEFyZ1NjaGVtYSA9IGpvaS5hbHRlcm5hdGl2ZXMoKS50cnkoXG4gIGpvaS5vYmplY3Qoe1xuICAgIFB1cmU6IGpvaS5hcnJheSgpLml0ZW1zKGpvaS5udW1iZXIoKSkucmVxdWlyZWQoKSxcbiAgfSksXG4gIGpvaS5vYmplY3Qoe1xuICAgIE9iamVjdDogT2JqZWN0QXJnU2NoZW1hLnJlcXVpcmVkKCksXG4gIH0pLFxuICBPYmpWZWNBcmdTY2hlbWFcbik7XG5cbmNvbnN0IFN1aUpzb25WYWx1ZVNjaGVtYSA9IGpvaVxuICAuYWx0ZXJuYXRpdmVzKClcbiAgLnRyeShcbiAgICBqb2kuYm9vbGVhbigpLFxuICAgIGpvaS5udW1iZXIoKSxcbiAgICBqb2kuc3RyaW5nKCksXG4gICAgU3VpT2JqZWN0UmVmU2NoZW1hLFxuICAgIFNoYXJlZE9iamVjdFJlZlNjaGVtYSxcbiAgICBDYWxsQXJnU2NoZW1hLFxuICAgIGpvaS5hcnJheSgpLml0ZW1zKGpvaS5hbnkoKSlcbiAgKTtcblxuY29uc3QgU3RydWN0VGFnU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIGFkZHJlc3M6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICBtb2R1bGU6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICBuYW1lOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgdHlwZVBhcmFtczogam9pLmFycmF5KCkuaXRlbXMoam9pLmFueSgpKS5vcHRpb25hbCgpLFxufSk7XG5cbmNvbnN0IFR5cGVUYWdTY2hlbWEgPSBqb2lcbiAgLmFsdGVybmF0aXZlcygpXG4gIC50cnkoXG4gICAgam9pLm9iamVjdCh7IGJvb2w6IGpvaS5lcXVhbChudWxsKS5yZXF1aXJlZCgpIH0pLFxuICAgIGpvaS5vYmplY3QoeyB1ODogam9pLmVxdWFsKG51bGwpLnJlcXVpcmVkKCkgfSksXG4gICAgam9pLm9iamVjdCh7IHU2NDogam9pLmVxdWFsKG51bGwpLnJlcXVpcmVkKCkgfSksXG4gICAgam9pLm9iamVjdCh7IHUxMjg6IGpvaS5lcXVhbChudWxsKS5yZXF1aXJlZCgpIH0pLFxuICAgIGpvaS5vYmplY3QoeyBhZGRyZXNzOiBqb2kuZXF1YWwobnVsbCkucmVxdWlyZWQoKSB9KSxcbiAgICBqb2kub2JqZWN0KHsgc2lnbmVyOiBqb2kuZXF1YWwobnVsbCkucmVxdWlyZWQoKSB9KSxcbiAgICBqb2kub2JqZWN0KHsgdmVjdG9yOiBqb2kuYW55KCkucmVxdWlyZWQoKSB9KSxcbiAgICBqb2kub2JqZWN0KHsgc3RydWN0OiBTdHJ1Y3RUYWdTY2hlbWEucmVxdWlyZWQoKSB9KSxcbiAgICBqb2kub2JqZWN0KHsgdTE2OiBqb2kuZXF1YWwobnVsbCkucmVxdWlyZWQoKSB9KSxcbiAgICBqb2kub2JqZWN0KHsgdTMyOiBqb2kuZXF1YWwobnVsbCkucmVxdWlyZWQoKSB9KSxcbiAgICBqb2kub2JqZWN0KHsgdTI1Njogam9pLmVxdWFsKG51bGwpLnJlcXVpcmVkKCkgfSlcbiAgKTtcblxuY29uc3QgVHlwZUFyZ3VtZW50c1NjaGVtYSA9IGpvaS5hcnJheSgpLml0ZW1zKFR5cGVUYWdTY2hlbWEpLnJlcXVpcmVkKCk7XG5jb25zdCBSZXF1ZXN0QWRkRGVsZWdhdGlvbkFyZ3VtZW50c1NjaGVtYSA9IGpvaS5hcnJheSgpLmxlbmd0aCg0KS5pdGVtcyhTdWlKc29uVmFsdWVTY2hlbWEpLnJlcXVpcmVkKCk7XG5jb25zdCBSZXF1ZXN0V2l0aGRyYXdBcmd1bWVudHNTY2hlbWEgPSBqb2kuYXJyYXkoKS5sZW5ndGgoMykuaXRlbXMoU3VpSnNvblZhbHVlU2NoZW1hKS5yZXF1aXJlZCgpO1xuY29uc3QgUmVxdWVzdFN3aXRjaEFyZ3VtZW50c1NjaGVtYSA9IGpvaS5hcnJheSgpLmxlbmd0aCg0KS5pdGVtcyhTdWlKc29uVmFsdWVTY2hlbWEpLnJlcXVpcmVkKCk7XG5cbmV4cG9ydCBjb25zdCBSZXF1ZXN0QWRkRGVsZWdhdGlvblRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIHBhY2thZ2U6IGpvaS5hbHRlcm5hdGl2ZXMoU3VpT2JqZWN0UmVmU2NoZW1hKS5tYXRjaCgnb25lJykucmVxdWlyZWQoKSxcbiAgbW9kdWxlOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgZnVuY3Rpb246IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICB0eXBlQXJndW1lbnRzOiBUeXBlQXJndW1lbnRzU2NoZW1hLm9wdGlvbmFsKCksXG4gIGFyZ3VtZW50czogUmVxdWVzdEFkZERlbGVnYXRpb25Bcmd1bWVudHNTY2hlbWEucmVxdWlyZWQoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgUmVxdWVzdFdpdGhkcmF3RGVsZWdhdGlvblRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIHBhY2thZ2U6IGpvaS5hbHRlcm5hdGl2ZXMoU3VpT2JqZWN0UmVmU2NoZW1hKS5tYXRjaCgnb25lJykucmVxdWlyZWQoKSxcbiAgbW9kdWxlOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgZnVuY3Rpb246IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICB0eXBlQXJndW1lbnRzOiBUeXBlQXJndW1lbnRzU2NoZW1hLm9wdGlvbmFsKCksXG4gIGFyZ3VtZW50czogUmVxdWVzdFdpdGhkcmF3QXJndW1lbnRzU2NoZW1hLnJlcXVpcmVkKCksXG59KTtcblxuZXhwb3J0IGNvbnN0IFJlcXVlc3RTd2l0Y2hEZWxlZ2F0aW9uVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgcGFja2FnZTogam9pLmFsdGVybmF0aXZlcyhTdWlPYmplY3RSZWZTY2hlbWEpLm1hdGNoKCdvbmUnKS5yZXF1aXJlZCgpLFxuICBtb2R1bGU6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICBmdW5jdGlvbjogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG4gIHR5cGVBcmd1bWVudHM6IFR5cGVBcmd1bWVudHNTY2hlbWEub3B0aW9uYWwoKSxcbiAgYXJndW1lbnRzOiBSZXF1ZXN0U3dpdGNoQXJndW1lbnRzU2NoZW1hLnJlcXVpcmVkKCksXG59KTtcblxuZXhwb3J0IGNvbnN0IFN0YWtlVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2kuYWx0ZXJuYXRpdmVzKFJlcXVlc3RBZGREZWxlZ2F0aW9uVHJhbnNhY3Rpb25TY2hlbWEpLm1hdGNoKCdvbmUnKTtcbmV4cG9ydCBjb25zdCBTdWlNb3ZlQ2FsbFRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIHR5cGU6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICBzZW5kZXI6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICB0eDogam9pXG4gICAgLmFsdGVybmF0aXZlcyhcbiAgICAgIFJlcXVlc3RBZGREZWxlZ2F0aW9uVHJhbnNhY3Rpb25TY2hlbWEsXG4gICAgICBSZXF1ZXN0V2l0aGRyYXdEZWxlZ2F0aW9uVHJhbnNhY3Rpb25TY2hlbWEsXG4gICAgICBSZXF1ZXN0U3dpdGNoRGVsZWdhdGlvblRyYW5zYWN0aW9uU2NoZW1hXG4gICAgKVxuICAgIC5tYXRjaCgnYW55JylcbiAgICAucmVxdWlyZWQoKSxcbiAgZ2FzQnVkZ2V0OiBqb2kubnVtYmVyKCkucmVxdWlyZWQoKSxcbiAgZ2FzUHJpY2U6IGpvaS5udW1iZXIoKS5yZXF1aXJlZCgpLFxuICBnYXNQYXltZW50OiBqb2kuYWx0ZXJuYXRpdmVzKFN1aU9iamVjdFJlZlNjaGVtYSkubWF0Y2goJ29uZScpLnJlcXVpcmVkKCksXG59KTtcbiJdfQ==
@@ -1,4 +1,5 @@
1
- import { BaseUtils } from '@bitgo/sdk-core';
1
+ import { BaseUtils, TransactionType } from '@bitgo/sdk-core';
2
+ import { CallArg, ObjVecArg, SharedObjectRef, SuiAddress, SuiObjectRef, SuiTransactionType } from './iface';
2
3
  export declare class Utils implements BaseUtils {
3
4
  /** @inheritdoc */
4
5
  isValidBlockId(hash: string): boolean;
@@ -48,11 +49,119 @@ export declare class Utils implements BaseUtils {
48
49
  * @returns {boolean} - the validation result
49
50
  */
50
51
  isValidAmounts(amounts: number[]): boolean;
52
+ /**
53
+ * Returns whether or not the string is a valid amount
54
+ *
55
+ * @param {number} amounts - the amount to validate
56
+ * @returns {boolean} - the validation result
57
+ */
51
58
  isValidAmount(amount: number): boolean;
52
59
  /**
53
- Normalizes hex ids (addresses, object ids) to always contain the '0x' prefix.
60
+ * Normalizes hex ids (addresses, object ids) to always contain the '0x' prefix.
61
+ *
62
+ * @param {string} id
63
+ * @return {string}
54
64
  **/
55
65
  normalizeHexId(id: string): string;
66
+ /**
67
+ * Map Shared object to CallArg
68
+ *
69
+ * @param {SharedObjectRef} obj
70
+ * @return { Object: ObjectArg }
71
+ *
72
+ * example: { Object: { Shared: SUI_SYSTEM_STATE_OBJECT } };
73
+ */
74
+ mapSharedObjectToCallArg(obj: SharedObjectRef): CallArg;
75
+ /**
76
+ * Normalize ObjectId and version
77
+ *
78
+ * @param {SharedObjectRef} obj
79
+ * @return {SharedObjectRef}
80
+ */
81
+ normalizeObject(obj: SharedObjectRef): SharedObjectRef;
82
+ /**
83
+ * Map CallArg object to Shared
84
+ *
85
+ * @param {CallArg} callArg
86
+ * @return {SharedObjectRef}
87
+ */
88
+ mapCallArgToSharedObject(callArg: CallArg): SharedObjectRef;
89
+ /**
90
+ * Map coins objects to CallArg
91
+ *
92
+ * @param {SuiObjectRef[]} coins
93
+ * @return {CallArg}
94
+ * example: { ObjVec: [{ ImmOrOwned: coin_to_stake }] }
95
+ */
96
+ mapCoinsToCallArg(coins: SuiObjectRef[]): CallArg;
97
+ /**
98
+ * Map CallArg object to Coins
99
+ *
100
+ * @param {ObjVecArg} callArg
101
+ * @return {SuiObjectRef[]}
102
+ */
103
+ mapCallArgToCoins(callArg: ObjVecArg): SuiObjectRef[];
104
+ /**
105
+ * Map SuiObjectRef object to CallArg
106
+ *
107
+ * @param {SuiObjectRef[]} coins
108
+ * @return {CallArg}
109
+ * example: { ObjVec: [{ ImmOrOwned: coin_to_stake }] }
110
+ */
111
+ mapSuiObjectRefToCallArg(suiObjectRef: SuiObjectRef): CallArg;
112
+ /**
113
+ * Map CallArg object to SuiObjectRef
114
+ *
115
+ * @param {ObjVecArg} callArg
116
+ * @return {SuiObjectRef}
117
+ */
118
+ mapCallArgToSuiObjectRef(callArg: CallArg): SuiObjectRef;
119
+ /**
120
+ * Map staking amount to CallArg
121
+ *
122
+ * @param {number} amount
123
+ * @return {CallArg}
124
+ * example: { Pure: bcs.ser('vector<u64>', [AMOUNT]).toBytes() };
125
+ */
126
+ mapAmountToCallArg(amount: number): CallArg;
127
+ /**
128
+ * Map CallArg to staking amount
129
+ *
130
+ * @param {CallArg} callArg
131
+ * @return {number}
132
+ * example: { Pure: bcs.ser('vector<u64>', [AMOUNT]).toBytes() };
133
+ */
134
+ mapCallArgToAmount(callArg: CallArg): number;
135
+ /**
136
+ * Map staking validator address to CallArg
137
+ *
138
+ * @param {SuiAddress} suiAddress
139
+ * @return {CallArg}
140
+ * example: { Pure: bcs.ser('address', VALIDATOR_ADDRESS).toBytes() };
141
+ */
142
+ mapAddressToCallArg(address: SuiAddress): CallArg;
143
+ /**
144
+ * Map CallArg to staking amount
145
+ *
146
+ * @param {CallArg} callArg
147
+ * @return {string}
148
+ * example: { Pure: bcs.ser('vector<u64>', [AMOUNT]).toBytes() };
149
+ */
150
+ mapCallArgToAddress(callArg: CallArg): string;
151
+ /**
152
+ * Get transaction type by function name
153
+ *
154
+ * @param {MethodNames} fctName
155
+ * @return {TransactionType}
156
+ */
157
+ getTransactionType(fctName: string): TransactionType;
158
+ /**
159
+ * Get SUI transaction type by function name
160
+ *
161
+ * @param {MethodNames} fctName
162
+ * @return {SuiTransactionType}
163
+ */
164
+ getSuiTransactionType(fctName: string): SuiTransactionType;
56
165
  }
57
166
  declare const utils: Utils;
58
167
  export default utils;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAyE,MAAM,iBAAiB,CAAC;AAMnH,qBAAa,KAAM,YAAW,SAAS;IACrC,kBAAkB;IAClB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIrC,kBAAkB;IAClB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIvC,kBAAkB;IAClB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAItC,kBAAkB;IAClB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAI5C,kBAAkB;IAClB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI3C;;;;;OAKG;IACH,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO;IAWtD;;;;OAIG;IACH,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IASpD;;;;;OAKG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAM/D;;;;;OAKG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAMzD,kBAAkB;IAClB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIxC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI7B,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIvC;;;;;OAKG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO;IAS1C,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAQtC;;QAEI;IACJ,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;CAGnC;AAED,QAAA,MAAM,KAAK,OAAc,CAAC;AAE1B,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAKT,eAAe,EAEhB,MAAM,iBAAiB,CAAC;AAKzB,OAAO,EACL,OAAO,EAIP,SAAS,EACT,eAAe,EACf,UAAU,EACV,YAAY,EACZ,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAGjB,qBAAa,KAAM,YAAW,SAAS;IACrC,kBAAkB;IAClB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIrC,kBAAkB;IAClB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIvC,kBAAkB;IAClB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAItC,kBAAkB;IAClB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAI5C,kBAAkB;IAClB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI3C;;;;;OAKG;IACH,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO;IAWtD;;;;OAIG;IACH,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IASpD;;;;;OAKG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAM/D;;;;;OAKG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAMzD,kBAAkB;IAClB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIxC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI7B,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIvC;;;;;OAKG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO;IAS1C;;;;;OAKG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAQtC;;;;;QAKI;IACJ,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;IAIlC;;;;;;;OAOG;IACH,wBAAwB,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO;IAIvD;;;;;OAKG;IACH,eAAe,CAAC,GAAG,EAAE,eAAe,GAAG,eAAe;IAOtD;;;;;OAKG;IACH,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,eAAe;IAI3D;;;;;;OAMG;IACH,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,OAAO;IAQjD;;;;;OAKG;IACH,iBAAiB,CAAC,OAAO,EAAE,SAAS,GAAG,YAAY,EAAE;IAMrD;;;;;;OAMG;IACH,wBAAwB,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO;IAM7D;;;;;OAKG;IACH,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY;IAIxD;;;;;;OAMG;IACH,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAU3C;;;;;;OAMG;IACH,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;IAY5C;;;;;;OAMG;IACH,mBAAmB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO;IAUjD;;;;;;OAMG;IACH,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;IAY7C;;;;;OAKG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe;IAapD;;;;;OAKG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,kBAAkB;CAY3D;AAED,QAAA,MAAM,KAAK,OAAc,CAAC;AAE1B,eAAe,KAAK,CAAC"}
@@ -9,6 +9,8 @@ const bignumber_js_1 = __importDefault(require("bignumber.js"));
9
9
  const constants_1 = require("./constants");
10
10
  const bcs_1 = require("./bcs");
11
11
  const bcs_2 = require("@mysten/bcs");
12
+ const iface_1 = require("./iface");
13
+ const buffer_1 = require("buffer");
12
14
  class Utils {
13
15
  /** @inheritdoc */
14
16
  isValidBlockId(hash) {
@@ -106,6 +108,12 @@ class Utils {
106
108
  }
107
109
  return true;
108
110
  }
111
+ /**
112
+ * Returns whether or not the string is a valid amount
113
+ *
114
+ * @param {number} amounts - the amount to validate
115
+ * @returns {boolean} - the validation result
116
+ */
109
117
  isValidAmount(amount) {
110
118
  const bigNumberAmount = new bignumber_js_1.default(amount);
111
119
  if (!bigNumberAmount.isInteger() || bigNumberAmount.isLessThanOrEqualTo(0)) {
@@ -114,13 +122,204 @@ class Utils {
114
122
  return true;
115
123
  }
116
124
  /**
117
- Normalizes hex ids (addresses, object ids) to always contain the '0x' prefix.
125
+ * Normalizes hex ids (addresses, object ids) to always contain the '0x' prefix.
126
+ *
127
+ * @param {string} id
128
+ * @return {string}
118
129
  **/
119
130
  normalizeHexId(id) {
120
131
  return id.startsWith('0x') ? id : '0x'.concat(id);
121
132
  }
133
+ /**
134
+ * Map Shared object to CallArg
135
+ *
136
+ * @param {SharedObjectRef} obj
137
+ * @return { Object: ObjectArg }
138
+ *
139
+ * example: { Object: { Shared: SUI_SYSTEM_STATE_OBJECT } };
140
+ */
141
+ mapSharedObjectToCallArg(obj) {
142
+ return { Object: { Shared: utils.normalizeObject(obj) } };
143
+ }
144
+ /**
145
+ * Normalize ObjectId and version
146
+ *
147
+ * @param {SharedObjectRef} obj
148
+ * @return {SharedObjectRef}
149
+ */
150
+ normalizeObject(obj) {
151
+ return {
152
+ objectId: utils.normalizeHexId(obj.objectId),
153
+ initialSharedVersion: Number(obj.initialSharedVersion),
154
+ };
155
+ }
156
+ /**
157
+ * Map CallArg object to Shared
158
+ *
159
+ * @param {CallArg} callArg
160
+ * @return {SharedObjectRef}
161
+ */
162
+ mapCallArgToSharedObject(callArg) {
163
+ return callArg['Object'].Shared;
164
+ }
165
+ /**
166
+ * Map coins objects to CallArg
167
+ *
168
+ * @param {SuiObjectRef[]} coins
169
+ * @return {CallArg}
170
+ * example: { ObjVec: [{ ImmOrOwned: coin_to_stake }] }
171
+ */
172
+ mapCoinsToCallArg(coins) {
173
+ return {
174
+ ObjVec: coins.map((coin) => {
175
+ return { ImmOrOwned: coin };
176
+ }),
177
+ };
178
+ }
179
+ /**
180
+ * Map CallArg object to Coins
181
+ *
182
+ * @param {ObjVecArg} callArg
183
+ * @return {SuiObjectRef[]}
184
+ */
185
+ mapCallArgToCoins(callArg) {
186
+ return Array.from(callArg.ObjVec).map((it) => {
187
+ return it.ImmOrOwned;
188
+ });
189
+ }
190
+ /**
191
+ * Map SuiObjectRef object to CallArg
192
+ *
193
+ * @param {SuiObjectRef[]} coins
194
+ * @return {CallArg}
195
+ * example: { ObjVec: [{ ImmOrOwned: coin_to_stake }] }
196
+ */
197
+ mapSuiObjectRefToCallArg(suiObjectRef) {
198
+ return {
199
+ Object: { ImmOrOwned: suiObjectRef },
200
+ };
201
+ }
202
+ /**
203
+ * Map CallArg object to SuiObjectRef
204
+ *
205
+ * @param {ObjVecArg} callArg
206
+ * @return {SuiObjectRef}
207
+ */
208
+ mapCallArgToSuiObjectRef(callArg) {
209
+ return callArg.Object.ImmOrOwned;
210
+ }
211
+ /**
212
+ * Map staking amount to CallArg
213
+ *
214
+ * @param {number} amount
215
+ * @return {CallArg}
216
+ * example: { Pure: bcs.ser('vector<u64>', [AMOUNT]).toBytes() };
217
+ */
218
+ mapAmountToCallArg(amount) {
219
+ try {
220
+ return {
221
+ Pure: bcs_1.bcs.ser('vector<u64>', [String(amount)]).toBytes(),
222
+ };
223
+ }
224
+ catch (e) {
225
+ throw new sdk_core_1.BuildTransactionError('Failed to serialize amount to call argument');
226
+ }
227
+ }
228
+ /**
229
+ * Map CallArg to staking amount
230
+ *
231
+ * @param {CallArg} callArg
232
+ * @return {number}
233
+ * example: { Pure: bcs.ser('vector<u64>', [AMOUNT]).toBytes() };
234
+ */
235
+ mapCallArgToAmount(callArg) {
236
+ try {
237
+ if ('Pure' in callArg && callArg.Pure.length) {
238
+ return Number(bcs_1.bcs.de('vector<u64>', buffer_1.Buffer.from(callArg.Pure).toString('base64'), 'base64'));
239
+ }
240
+ else {
241
+ throw new sdk_core_1.InvalidParameterValueError('Not a valid amount CallArg');
242
+ }
243
+ }
244
+ catch (e) {
245
+ throw new sdk_core_1.BuildTransactionError('Failed to deserialize amount from call argument');
246
+ }
247
+ }
248
+ /**
249
+ * Map staking validator address to CallArg
250
+ *
251
+ * @param {SuiAddress} suiAddress
252
+ * @return {CallArg}
253
+ * example: { Pure: bcs.ser('address', VALIDATOR_ADDRESS).toBytes() };
254
+ */
255
+ mapAddressToCallArg(address) {
256
+ try {
257
+ return {
258
+ Pure: bcs_1.bcs.ser('address', address).toBytes(),
259
+ };
260
+ }
261
+ catch (e) {
262
+ throw new sdk_core_1.BuildTransactionError('Failed to serialize address to call argument');
263
+ }
264
+ }
265
+ /**
266
+ * Map CallArg to staking amount
267
+ *
268
+ * @param {CallArg} callArg
269
+ * @return {string}
270
+ * example: { Pure: bcs.ser('vector<u64>', [AMOUNT]).toBytes() };
271
+ */
272
+ mapCallArgToAddress(callArg) {
273
+ try {
274
+ if ('Pure' in callArg && callArg.Pure.length) {
275
+ return String(bcs_1.bcs.de('address', buffer_1.Buffer.from(callArg.Pure).toString('base64'), 'base64'));
276
+ }
277
+ else {
278
+ throw new sdk_core_1.InvalidParameterValueError('Not a valid address CallArg');
279
+ }
280
+ }
281
+ catch (e) {
282
+ throw new sdk_core_1.BuildTransactionError('Failed to deserialize address from call argument');
283
+ }
284
+ }
285
+ /**
286
+ * Get transaction type by function name
287
+ *
288
+ * @param {MethodNames} fctName
289
+ * @return {TransactionType}
290
+ */
291
+ getTransactionType(fctName) {
292
+ switch (fctName) {
293
+ case iface_1.MethodNames.RequestAddDelegationMulCoin:
294
+ return sdk_core_1.TransactionType.AddDelegator;
295
+ case iface_1.MethodNames.RequestWithdrawDelegation:
296
+ return sdk_core_1.TransactionType.StakingWithdraw;
297
+ case iface_1.MethodNames.RequestSwitchDelegation:
298
+ return sdk_core_1.TransactionType.StakingSwitch;
299
+ default:
300
+ throw new sdk_core_1.NotSupported(`Staking Transaction type with function ${fctName} not supported`);
301
+ }
302
+ }
303
+ /**
304
+ * Get SUI transaction type by function name
305
+ *
306
+ * @param {MethodNames} fctName
307
+ * @return {SuiTransactionType}
308
+ */
309
+ getSuiTransactionType(fctName) {
310
+ switch (fctName) {
311
+ case iface_1.MethodNames.RequestAddDelegationMulCoin:
312
+ return iface_1.SuiTransactionType.AddDelegation;
313
+ case iface_1.MethodNames.RequestWithdrawDelegation:
314
+ return iface_1.SuiTransactionType.WithdrawDelegation;
315
+ case iface_1.MethodNames.RequestSwitchDelegation:
316
+ return iface_1.SuiTransactionType.SwitchDelegation;
317
+ default:
318
+ throw new sdk_core_1.NotSupported(`Sui staking transaction type with function ${fctName} not supported`);
319
+ }
320
+ }
122
321
  }
123
322
  exports.Utils = Utils;
124
323
  const utils = new Utils();
125
324
  exports.default = utils;
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDhDQUFtSDtBQUNuSCxnRUFBcUM7QUFDckMsMkNBQWlEO0FBQ2pELCtCQUE0QjtBQUM1QixxQ0FBc0M7QUFFdEMsTUFBYSxLQUFLO0lBQ2hCLGtCQUFrQjtJQUNsQixjQUFjLENBQUMsSUFBWTtRQUN6QixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixpQkFBaUIsQ0FBQyxHQUFXO1FBQzNCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLGdCQUFnQixDQUFDLEdBQVc7UUFDMUIsT0FBTyxrQ0FBdUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLGdCQUFnQixDQUFDLFNBQWlCO1FBQ2hDLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLG9CQUFvQixDQUFDLElBQVk7UUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILHFCQUFxQixDQUFDLGNBQXNCO1FBQzFDLElBQUk7WUFDRixNQUFNLElBQUksR0FBRyxhQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDckMsTUFBTSxZQUFZLEdBQUcsU0FBRyxDQUFDLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNyRCxTQUFHLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLFlBQVksQ0FBQyxDQUFDO1lBQ3pDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILHNCQUFzQixDQUFDLGNBQXNCO1FBQzNDLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDbkIsTUFBTSxJQUFJLGdDQUFxQixDQUFDLG9DQUFvQyxDQUFDLENBQUM7U0FDdkU7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQy9DLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1NBQzVEO0lBQ0gsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsaUJBQWlCLENBQUMsU0FBbUIsRUFBRSxTQUFpQjtRQUN0RCxLQUFLLE1BQU0sT0FBTyxJQUFJLFNBQVMsRUFBRTtZQUMvQixJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQztTQUMxQztJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxPQUFlLEVBQUUsU0FBaUI7UUFDaEQsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDN0MsTUFBTSxJQUFJLGdDQUFxQixDQUFDLHNCQUFzQixTQUFTLFVBQVUsT0FBTyxFQUFFLENBQUMsQ0FBQztTQUNyRjtJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsY0FBYyxDQUFDLE9BQWU7UUFDNUIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsS0FBSyw4QkFBa0IsQ0FBQztJQUN0RixDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQWE7UUFDakIsT0FBTyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFhO1FBQzVCLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsY0FBYyxDQUFDLE9BQWlCO1FBQzlCLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1lBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUMvQixPQUFPLEtBQUssQ0FBQzthQUNkO1NBQ0Y7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxhQUFhLENBQUMsTUFBYztRQUMxQixNQUFNLGVBQWUsR0FBRyxJQUFJLHNCQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsSUFBSSxlQUFlLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDMUUsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOztRQUVJO0lBQ0osY0FBYyxDQUFDLEVBQVU7UUFDdkIsT0FBTyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDcEQsQ0FBQztDQUNGO0FBM0hELHNCQTJIQztBQUVELE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7QUFFMUIsa0JBQWUsS0FBSyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZVV0aWxzLCBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsIFBhcnNlVHJhbnNhY3Rpb25FcnJvciwgaXNWYWxpZEVkMjU1MTlQdWJsaWNLZXkgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHsgU1VJX0FERFJFU1NfTEVOR1RIIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgYmNzIH0gZnJvbSAnLi9iY3MnO1xuaW1wb3J0IHsgZnJvbUI2NCB9IGZyb20gJ0BteXN0ZW4vYmNzJztcblxuZXhwb3J0IGNsYXNzIFV0aWxzIGltcGxlbWVudHMgQmFzZVV0aWxzIHtcbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGlzVmFsaWRCbG9ja0lkKGhhc2g6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkUHJpdmF0ZUtleShrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkUHVibGljS2V5KGtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzVmFsaWRFZDI1NTE5UHVibGljS2V5KGtleSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZFNpZ25hdHVyZShzaWduYXR1cmU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkVHJhbnNhY3Rpb25JZCh0eElkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHJhdyB0cmFuc2FjdGlvbiBjYW4gYmUgZGVzZXJpYWxpemVkXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSByYXdUcmFuc2FjdGlvbiAtIHRyYW5zYWN0aW9uIGluIGJhc2U2NCBzdHJpbmcgZm9ybWF0XG4gICAqIEByZXR1cm5zIHtib29sZWFufSAtIHRoZSB2YWxpZGF0aW9uIHJlc3VsdFxuICAgKi9cbiAgaXNWYWxpZFJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgZGF0YSA9IGZyb21CNjQocmF3VHJhbnNhY3Rpb24pO1xuICAgICAgY29uc3QgZGVzZXJpYWxpemVkID0gYmNzLmRlKCdUcmFuc2FjdGlvbkRhdGEnLCBkYXRhKTtcbiAgICAgIGJjcy5zZXIoJ1RyYW5zYWN0aW9uRGF0YScsIGRlc2VyaWFsaXplZCk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIHRoZSByYXcgdHJhbnNhY3Rpb24gaGFzIGEgdmFsaWQgZm9ybWF0IGluIHRoZSBibG9ja2NoYWluIGNvbnRleHQsIHRocm93IG90aGVyd2lzZS5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHJhd1RyYW5zYWN0aW9uIC0gVHJhbnNhY3Rpb24gaW4gYmFzZTY0IHN0cmluZyAgZm9ybWF0XG4gICAqL1xuICB2YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXJhd1RyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgUGFyc2VUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHJhdyB0cmFuc2FjdGlvbjogVW5kZWZpbmVkJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5pc1ZhbGlkUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pKSB7XG4gICAgICB0aHJvdyBuZXcgUGFyc2VUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHJhdyB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgYWRkcmVzc2VzIHRvIGNoZWNrIGlmIGFsbCBleGlzdCBhbmQgYXJlIHZhbGlkIFN1aSBwdWJsaWMga2V5c1xuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYWRkcmVzc2VzIFRoZSBhZGRyZXNzIHRvIGJlIHZhbGlkYXRlZFxuICAgKiBAcGFyYW0ge3N0cmluZ30gZmllbGROYW1lIE5hbWUgb2YgdGhlIGZpZWxkIHRvIHZhbGlkYXRlLCBpdHMgbmVlZGVkIHRvIHJldHVybiB3aGljaCBmaWVsZCBpcyBmYWlsaW5nIG9uIGNhc2Ugb2YgZXJyb3IuXG4gICAqL1xuICB2YWxpZGF0ZUFkZHJlc3NlcyhhZGRyZXNzZXM6IHN0cmluZ1tdLCBmaWVsZE5hbWU6IHN0cmluZyk6IHZvaWQge1xuICAgIGZvciAoY29uc3QgYWRkcmVzcyBvZiBhZGRyZXNzZXMpIHtcbiAgICAgIHRoaXMudmFsaWRhdGVBZGRyZXNzKGFkZHJlc3MsIGZpZWxkTmFtZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyBhZGRyZXNzIHRvIGNoZWNrIGlmIGl0IGV4aXN0cyBhbmQgaXMgYSB2YWxpZCBTdWkgcHVibGljIGtleVxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYWRkcmVzcyBUaGUgYWRkcmVzcyB0byBiZSB2YWxpZGF0ZWRcbiAgICogQHBhcmFtIHtzdHJpbmd9IGZpZWxkTmFtZSBOYW1lIG9mIHRoZSBmaWVsZCB0byB2YWxpZGF0ZSwgaXRzIG5lZWRlZCB0byByZXR1cm4gd2hpY2ggZmllbGQgaXMgZmFpbGluZyBvbiBjYXNlIG9mIGVycm9yLlxuICAgKi9cbiAgdmFsaWRhdGVBZGRyZXNzKGFkZHJlc3M6IHN0cmluZywgZmllbGROYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIWFkZHJlc3MgfHwgIXRoaXMuaXNWYWxpZEFkZHJlc3MoYWRkcmVzcykpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgb3IgbWlzc2luZyAke2ZpZWxkTmFtZX0sIGdvdDogJHthZGRyZXNzfWApO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkQWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc0hleChhZGRyZXNzKSAmJiB0aGlzLmdldEhleEJ5dGVMZW5ndGgoYWRkcmVzcykgPT09IFNVSV9BRERSRVNTX0xFTkdUSDtcbiAgfVxuXG4gIGlzSGV4KHZhbHVlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gL14oMHh8MFgpP1thLWZBLUYwLTldKyQvLnRlc3QodmFsdWUpICYmIHZhbHVlLmxlbmd0aCAlIDIgPT09IDA7XG4gIH1cblxuICBnZXRIZXhCeXRlTGVuZ3RoKHZhbHVlOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIHJldHVybiAvXigweHwwWCkvLnRlc3QodmFsdWUpID8gKHZhbHVlLmxlbmd0aCAtIDIpIC8gMiA6IHZhbHVlLmxlbmd0aCAvIDI7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB3aGV0aGVyIG9yIG5vdCB0aGUgc3RyaW5nIGlzIGEgdmFsaWQgYW1vdW50XG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyW119IGFtb3VudHMgLSB0aGUgYW1vdW50cyB0byB2YWxpZGF0ZVxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gLSB0aGUgdmFsaWRhdGlvbiByZXN1bHRcbiAgICovXG4gIGlzVmFsaWRBbW91bnRzKGFtb3VudHM6IG51bWJlcltdKTogYm9vbGVhbiB7XG4gICAgZm9yIChjb25zdCBhbW91bnQgb2YgYW1vdW50cykge1xuICAgICAgaWYgKCF0aGlzLmlzVmFsaWRBbW91bnQoYW1vdW50KSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaXNWYWxpZEFtb3VudChhbW91bnQ6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGJpZ051bWJlckFtb3VudCA9IG5ldyBCaWdOdW1iZXIoYW1vdW50KTtcbiAgICBpZiAoIWJpZ051bWJlckFtb3VudC5pc0ludGVnZXIoKSB8fCBiaWdOdW1iZXJBbW91bnQuaXNMZXNzVGhhbk9yRXF1YWxUbygwKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgTm9ybWFsaXplcyBoZXggaWRzIChhZGRyZXNzZXMsIG9iamVjdCBpZHMpIHRvIGFsd2F5cyBjb250YWluIHRoZSAnMHgnIHByZWZpeC5cbiAgICoqL1xuICBub3JtYWxpemVIZXhJZChpZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gaWQuc3RhcnRzV2l0aCgnMHgnKSA/IGlkIDogJzB4Jy5jb25jYXQoaWQpO1xuICB9XG59XG5cbmNvbnN0IHV0aWxzID0gbmV3IFV0aWxzKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHV0aWxzO1xuIl19
325
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDhDQVF5QjtBQUN6QixnRUFBcUM7QUFDckMsMkNBQWlEO0FBQ2pELCtCQUE0QjtBQUM1QixxQ0FBc0M7QUFDdEMsbUNBVWlCO0FBQ2pCLG1DQUFnQztBQUVoQyxNQUFhLEtBQUs7SUFDaEIsa0JBQWtCO0lBQ2xCLGNBQWMsQ0FBQyxJQUFZO1FBQ3pCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLGlCQUFpQixDQUFDLEdBQVc7UUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsZ0JBQWdCLENBQUMsR0FBVztRQUMxQixPQUFPLGtDQUF1QixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsZ0JBQWdCLENBQUMsU0FBaUI7UUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsb0JBQW9CLENBQUMsSUFBWTtRQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gscUJBQXFCLENBQUMsY0FBc0I7UUFDMUMsSUFBSTtZQUNGLE1BQU0sSUFBSSxHQUFHLGFBQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUNyQyxNQUFNLFlBQVksR0FBRyxTQUFHLENBQUMsRUFBRSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3JELFNBQUcsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDekMsT0FBTyxJQUFJLENBQUM7U0FD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QUNqRztJQUNILENBQUM7Q0FDRjtBQXZVRCxzQkF1VUM7QUFFRCxNQUFNLEtBQUssR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO0FBRTFCLGtCQUFlLEtBQUssQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJhc2VVdGlscyxcbiAgQnVpbGRUcmFuc2FjdGlvbkVycm9yLFxuICBQYXJzZVRyYW5zYWN0aW9uRXJyb3IsXG4gIGlzVmFsaWRFZDI1NTE5UHVibGljS2V5LFxuICBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcixcbiAgVHJhbnNhY3Rpb25UeXBlLFxuICBOb3RTdXBwb3J0ZWQsXG59IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgQmlnTnVtYmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5pbXBvcnQgeyBTVUlfQUREUkVTU19MRU5HVEggfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBiY3MgfSBmcm9tICcuL2Jjcyc7XG5pbXBvcnQgeyBmcm9tQjY0IH0gZnJvbSAnQG15c3Rlbi9iY3MnO1xuaW1wb3J0IHtcbiAgQ2FsbEFyZyxcbiAgSW1tT3JPd25lZEFyZyxcbiAgTWV0aG9kTmFtZXMsXG4gIE9iamVjdEFyZyxcbiAgT2JqVmVjQXJnLFxuICBTaGFyZWRPYmplY3RSZWYsXG4gIFN1aUFkZHJlc3MsXG4gIFN1aU9iamVjdFJlZixcbiAgU3VpVHJhbnNhY3Rpb25UeXBlLFxufSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IEJ1ZmZlciB9IGZyb20gJ2J1ZmZlcic7XG5cbmV4cG9ydCBjbGFzcyBVdGlscyBpbXBsZW1lbnRzIEJhc2VVdGlscyB7XG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkQmxvY2tJZChoYXNoOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZFByaXZhdGVLZXkoa2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZFB1YmxpY0tleShrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1ZhbGlkRWQyNTUxOVB1YmxpY0tleShrZXkpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGlzVmFsaWRTaWduYXR1cmUoc2lnbmF0dXJlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZFRyYW5zYWN0aW9uSWQodHhJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiByYXcgdHJhbnNhY3Rpb24gY2FuIGJlIGRlc2VyaWFsaXplZFxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gcmF3VHJhbnNhY3Rpb24gLSB0cmFuc2FjdGlvbiBpbiBiYXNlNjQgc3RyaW5nIGZvcm1hdFxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gLSB0aGUgdmFsaWRhdGlvbiByZXN1bHRcbiAgICovXG4gIGlzVmFsaWRSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGRhdGEgPSBmcm9tQjY0KHJhd1RyYW5zYWN0aW9uKTtcbiAgICAgIGNvbnN0IGRlc2VyaWFsaXplZCA9IGJjcy5kZSgnVHJhbnNhY3Rpb25EYXRhJywgZGF0YSk7XG4gICAgICBiY3Muc2VyKCdUcmFuc2FjdGlvbkRhdGEnLCBkZXNlcmlhbGl6ZWQpO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayB0aGUgcmF3IHRyYW5zYWN0aW9uIGhhcyBhIHZhbGlkIGZvcm1hdCBpbiB0aGUgYmxvY2tjaGFpbiBjb250ZXh0LCB0aHJvdyBvdGhlcndpc2UuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSByYXdUcmFuc2FjdGlvbiAtIFRyYW5zYWN0aW9uIGluIGJhc2U2NCBzdHJpbmcgIGZvcm1hdFxuICAgKi9cbiAgdmFsaWRhdGVSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCFyYXdUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IFBhcnNlVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCByYXcgdHJhbnNhY3Rpb246IFVuZGVmaW5lZCcpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMuaXNWYWxpZFJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKSkge1xuICAgICAgdGhyb3cgbmV3IFBhcnNlVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCByYXcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIGFkZHJlc3NlcyB0byBjaGVjayBpZiBhbGwgZXhpc3QgYW5kIGFyZSB2YWxpZCBTdWkgcHVibGljIGtleXNcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFkZHJlc3NlcyBUaGUgYWRkcmVzcyB0byBiZSB2YWxpZGF0ZWRcbiAgICogQHBhcmFtIHtzdHJpbmd9IGZpZWxkTmFtZSBOYW1lIG9mIHRoZSBmaWVsZCB0byB2YWxpZGF0ZSwgaXRzIG5lZWRlZCB0byByZXR1cm4gd2hpY2ggZmllbGQgaXMgZmFpbGluZyBvbiBjYXNlIG9mIGVycm9yLlxuICAgKi9cbiAgdmFsaWRhdGVBZGRyZXNzZXMoYWRkcmVzc2VzOiBzdHJpbmdbXSwgZmllbGROYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IGFkZHJlc3Mgb2YgYWRkcmVzc2VzKSB7XG4gICAgICB0aGlzLnZhbGlkYXRlQWRkcmVzcyhhZGRyZXNzLCBmaWVsZE5hbWUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgYWRkcmVzcyB0byBjaGVjayBpZiBpdCBleGlzdHMgYW5kIGlzIGEgdmFsaWQgU3VpIHB1YmxpYyBrZXlcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFkZHJlc3MgVGhlIGFkZHJlc3MgdG8gYmUgdmFsaWRhdGVkXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBmaWVsZE5hbWUgTmFtZSBvZiB0aGUgZmllbGQgdG8gdmFsaWRhdGUsIGl0cyBuZWVkZWQgdG8gcmV0dXJuIHdoaWNoIGZpZWxkIGlzIGZhaWxpbmcgb24gY2FzZSBvZiBlcnJvci5cbiAgICovXG4gIHZhbGlkYXRlQWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcsIGZpZWxkTmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCFhZGRyZXNzIHx8ICF0aGlzLmlzVmFsaWRBZGRyZXNzKGFkZHJlc3MpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIG9yIG1pc3NpbmcgJHtmaWVsZE5hbWV9LCBnb3Q6ICR7YWRkcmVzc31gKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZEFkZHJlc3MoYWRkcmVzczogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNIZXgoYWRkcmVzcykgJiYgdGhpcy5nZXRIZXhCeXRlTGVuZ3RoKGFkZHJlc3MpID09PSBTVUlfQUREUkVTU19MRU5HVEg7XG4gIH1cblxuICBpc0hleCh2YWx1ZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIC9eKDB4fDBYKT9bYS1mQS1GMC05XSskLy50ZXN0KHZhbHVlKSAmJiB2YWx1ZS5sZW5ndGggJSAyID09PSAwO1xuICB9XG5cbiAgZ2V0SGV4Qnl0ZUxlbmd0aCh2YWx1ZTogc3RyaW5nKTogbnVtYmVyIHtcbiAgICByZXR1cm4gL14oMHh8MFgpLy50ZXN0KHZhbHVlKSA/ICh2YWx1ZS5sZW5ndGggLSAyKSAvIDIgOiB2YWx1ZS5sZW5ndGggLyAyO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgd2hldGhlciBvciBub3QgdGhlIHN0cmluZyBpcyBhIHZhbGlkIGFtb3VudFxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcltdfSBhbW91bnRzIC0gdGhlIGFtb3VudHMgdG8gdmFsaWRhdGVcbiAgICogQHJldHVybnMge2Jvb2xlYW59IC0gdGhlIHZhbGlkYXRpb24gcmVzdWx0XG4gICAqL1xuICBpc1ZhbGlkQW1vdW50cyhhbW91bnRzOiBudW1iZXJbXSk6IGJvb2xlYW4ge1xuICAgIGZvciAoY29uc3QgYW1vdW50IG9mIGFtb3VudHMpIHtcbiAgICAgIGlmICghdGhpcy5pc1ZhbGlkQW1vdW50KGFtb3VudCkpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHdoZXRoZXIgb3Igbm90IHRoZSBzdHJpbmcgaXMgYSB2YWxpZCBhbW91bnRcbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IGFtb3VudHMgLSB0aGUgYW1vdW50IHRvIHZhbGlkYXRlXG4gICAqIEByZXR1cm5zIHtib29sZWFufSAtIHRoZSB2YWxpZGF0aW9uIHJlc3VsdFxuICAgKi9cbiAgaXNWYWxpZEFtb3VudChhbW91bnQ6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGJpZ051bWJlckFtb3VudCA9IG5ldyBCaWdOdW1iZXIoYW1vdW50KTtcbiAgICBpZiAoIWJpZ051bWJlckFtb3VudC5pc0ludGVnZXIoKSB8fCBiaWdOdW1iZXJBbW91bnQuaXNMZXNzVGhhbk9yRXF1YWxUbygwKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBOb3JtYWxpemVzIGhleCBpZHMgKGFkZHJlc3Nlcywgb2JqZWN0IGlkcykgdG8gYWx3YXlzIGNvbnRhaW4gdGhlICcweCcgcHJlZml4LlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gaWRcbiAgICogQHJldHVybiB7c3RyaW5nfVxuICAgKiovXG4gIG5vcm1hbGl6ZUhleElkKGlkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBpZC5zdGFydHNXaXRoKCcweCcpID8gaWQgOiAnMHgnLmNvbmNhdChpZCk7XG4gIH1cblxuICAvKipcbiAgICogTWFwIFNoYXJlZCBvYmplY3QgdG8gQ2FsbEFyZ1xuICAgKlxuICAgKiBAcGFyYW0ge1NoYXJlZE9iamVjdFJlZn0gb2JqXG4gICAqIEByZXR1cm4geyBPYmplY3Q6IE9iamVjdEFyZyB9XG4gICAqXG4gICAqIGV4YW1wbGU6IHsgT2JqZWN0OiB7IFNoYXJlZDogU1VJX1NZU1RFTV9TVEFURV9PQkpFQ1QgfSB9O1xuICAgKi9cbiAgbWFwU2hhcmVkT2JqZWN0VG9DYWxsQXJnKG9iajogU2hhcmVkT2JqZWN0UmVmKTogQ2FsbEFyZyB7XG4gICAgcmV0dXJuIHsgT2JqZWN0OiB7IFNoYXJlZDogdXRpbHMubm9ybWFsaXplT2JqZWN0KG9iaikgfSB9O1xuICB9XG5cbiAgLyoqXG4gICAqIE5vcm1hbGl6ZSBPYmplY3RJZCBhbmQgdmVyc2lvblxuICAgKlxuICAgKiBAcGFyYW0ge1NoYXJlZE9iamVjdFJlZn0gb2JqXG4gICAqIEByZXR1cm4ge1NoYXJlZE9iamVjdFJlZn1cbiAgICovXG4gIG5vcm1hbGl6ZU9iamVjdChvYmo6IFNoYXJlZE9iamVjdFJlZik6IFNoYXJlZE9iamVjdFJlZiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG9iamVjdElkOiB1dGlscy5ub3JtYWxpemVIZXhJZChvYmoub2JqZWN0SWQpLFxuICAgICAgaW5pdGlhbFNoYXJlZFZlcnNpb246IE51bWJlcihvYmouaW5pdGlhbFNoYXJlZFZlcnNpb24pLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogTWFwIENhbGxBcmcgb2JqZWN0IHRvIFNoYXJlZFxuICAgKlxuICAgKiBAcGFyYW0ge0NhbGxBcmd9IGNhbGxBcmdcbiAgICogQHJldHVybiB7U2hhcmVkT2JqZWN0UmVmfVxuICAgKi9cbiAgbWFwQ2FsbEFyZ1RvU2hhcmVkT2JqZWN0KGNhbGxBcmc6IENhbGxBcmcpOiBTaGFyZWRPYmplY3RSZWYge1xuICAgIHJldHVybiBjYWxsQXJnWydPYmplY3QnXS5TaGFyZWQ7XG4gIH1cblxuICAvKipcbiAgICogTWFwIGNvaW5zIG9iamVjdHMgdG8gQ2FsbEFyZ1xuICAgKlxuICAgKiBAcGFyYW0ge1N1aU9iamVjdFJlZltdfSBjb2luc1xuICAgKiBAcmV0dXJuIHtDYWxsQXJnfVxuICAgKiBleGFtcGxlOiB7IE9ialZlYzogW3sgSW1tT3JPd25lZDogY29pbl90b19zdGFrZSB9XSB9XG4gICAqL1xuICBtYXBDb2luc1RvQ2FsbEFyZyhjb2luczogU3VpT2JqZWN0UmVmW10pOiBDYWxsQXJnIHtcbiAgICByZXR1cm4ge1xuICAgICAgT2JqVmVjOiBjb2lucy5tYXAoKGNvaW4pID0+IHtcbiAgICAgICAgcmV0dXJuIHsgSW1tT3JPd25lZDogY29pbiB9O1xuICAgICAgfSksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNYXAgQ2FsbEFyZyBvYmplY3QgdG8gQ29pbnNcbiAgICpcbiAgICogQHBhcmFtIHtPYmpWZWNBcmd9IGNhbGxBcmdcbiAgICogQHJldHVybiB7U3VpT2JqZWN0UmVmW119XG4gICAqL1xuICBtYXBDYWxsQXJnVG9Db2lucyhjYWxsQXJnOiBPYmpWZWNBcmcpOiBTdWlPYmplY3RSZWZbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20oY2FsbEFyZy5PYmpWZWMpLm1hcCgoaXQ6IE9iamVjdEFyZykgPT4ge1xuICAgICAgcmV0dXJuIChpdCBhcyBJbW1Pck93bmVkQXJnKS5JbW1Pck93bmVkO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIE1hcCBTdWlPYmplY3RSZWYgb2JqZWN0IHRvIENhbGxBcmdcbiAgICpcbiAgICogQHBhcmFtIHtTdWlPYmplY3RSZWZbXX0gY29pbnNcbiAgICogQHJldHVybiB7Q2FsbEFyZ31cbiAgICogZXhhbXBsZTogeyBPYmpWZWM6IFt7IEltbU9yT3duZWQ6IGNvaW5fdG9fc3Rha2UgfV0gfVxuICAgKi9cbiAgbWFwU3VpT2JqZWN0UmVmVG9DYWxsQXJnKHN1aU9iamVjdFJlZjogU3VpT2JqZWN0UmVmKTogQ2FsbEFyZyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIE9iamVjdDogeyBJbW1Pck93bmVkOiBzdWlPYmplY3RSZWYgfSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIE1hcCBDYWxsQXJnIG9iamVjdCB0byBTdWlPYmplY3RSZWZcbiAgICpcbiAgICogQHBhcmFtIHtPYmpWZWNBcmd9IGNhbGxBcmdcbiAgICogQHJldHVybiB7U3VpT2JqZWN0UmVmfVxuICAgKi9cbiAgbWFwQ2FsbEFyZ1RvU3VpT2JqZWN0UmVmKGNhbGxBcmc6IENhbGxBcmcpOiBTdWlPYmplY3RSZWYge1xuICAgIHJldHVybiAoKGNhbGxBcmcgYXMgeyBPYmplY3Q6IE9iamVjdEFyZyB9KS5PYmplY3QgYXMgSW1tT3JPd25lZEFyZykuSW1tT3JPd25lZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBNYXAgc3Rha2luZyBhbW91bnQgdG8gQ2FsbEFyZ1xuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gYW1vdW50XG4gICAqIEByZXR1cm4ge0NhbGxBcmd9XG4gICAqIGV4YW1wbGU6IHsgUHVyZTogYmNzLnNlcigndmVjdG9yPHU2ND4nLCBbQU1PVU5UXSkudG9CeXRlcygpIH07XG4gICAqL1xuICBtYXBBbW91bnRUb0NhbGxBcmcoYW1vdW50OiBudW1iZXIpOiBDYWxsQXJnIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgUHVyZTogYmNzLnNlcigndmVjdG9yPHU2ND4nLCBbU3RyaW5nKGFtb3VudCldKS50b0J5dGVzKCksXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ZhaWxlZCB0byBzZXJpYWxpemUgYW1vdW50IHRvIGNhbGwgYXJndW1lbnQnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTWFwIENhbGxBcmcgdG8gc3Rha2luZyBhbW91bnRcbiAgICpcbiAgICogQHBhcmFtIHtDYWxsQXJnfSBjYWxsQXJnXG4gICAqIEByZXR1cm4ge251bWJlcn1cbiAgICogZXhhbXBsZTogeyBQdXJlOiBiY3Muc2VyKCd2ZWN0b3I8dTY0PicsIFtBTU9VTlRdKS50b0J5dGVzKCkgfTtcbiAgICovXG4gIG1hcENhbGxBcmdUb0Ftb3VudChjYWxsQXJnOiBDYWxsQXJnKTogbnVtYmVyIHtcbiAgICB0cnkge1xuICAgICAgaWYgKCdQdXJlJyBpbiBjYWxsQXJnICYmIGNhbGxBcmcuUHVyZS5sZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIE51bWJlcihiY3MuZGUoJ3ZlY3Rvcjx1NjQ+JywgQnVmZmVyLmZyb20oY2FsbEFyZy5QdXJlKS50b1N0cmluZygnYmFzZTY0JyksICdiYXNlNjQnKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IoJ05vdCBhIHZhbGlkIGFtb3VudCBDYWxsQXJnJyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignRmFpbGVkIHRvIGRlc2VyaWFsaXplIGFtb3VudCBmcm9tIGNhbGwgYXJndW1lbnQnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTWFwIHN0YWtpbmcgdmFsaWRhdG9yIGFkZHJlc3MgdG8gQ2FsbEFyZ1xuICAgKlxuICAgKiBAcGFyYW0ge1N1aUFkZHJlc3N9IHN1aUFkZHJlc3NcbiAgICogQHJldHVybiB7Q2FsbEFyZ31cbiAgICogZXhhbXBsZTogeyBQdXJlOiBiY3Muc2VyKCdhZGRyZXNzJywgVkFMSURBVE9SX0FERFJFU1MpLnRvQnl0ZXMoKSB9O1xuICAgKi9cbiAgbWFwQWRkcmVzc1RvQ2FsbEFyZyhhZGRyZXNzOiBTdWlBZGRyZXNzKTogQ2FsbEFyZyB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIFB1cmU6IGJjcy5zZXIoJ2FkZHJlc3MnLCBhZGRyZXNzKS50b0J5dGVzKCksXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ZhaWxlZCB0byBzZXJpYWxpemUgYWRkcmVzcyB0byBjYWxsIGFyZ3VtZW50Jyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1hcCBDYWxsQXJnIHRvIHN0YWtpbmcgYW1vdW50XG4gICAqXG4gICAqIEBwYXJhbSB7Q2FsbEFyZ30gY2FsbEFyZ1xuICAgKiBAcmV0dXJuIHtzdHJpbmd9XG4gICAqIGV4YW1wbGU6IHsgUHVyZTogYmNzLnNlcigndmVjdG9yPHU2ND4nLCBbQU1PVU5UXSkudG9CeXRlcygpIH07XG4gICAqL1xuICBtYXBDYWxsQXJnVG9BZGRyZXNzKGNhbGxBcmc6IENhbGxBcmcpOiBzdHJpbmcge1xuICAgIHRyeSB7XG4gICAgICBpZiAoJ1B1cmUnIGluIGNhbGxBcmcgJiYgY2FsbEFyZy5QdXJlLmxlbmd0aCkge1xuICAgICAgICByZXR1cm4gU3RyaW5nKGJjcy5kZSgnYWRkcmVzcycsIEJ1ZmZlci5mcm9tKGNhbGxBcmcuUHVyZSkudG9TdHJpbmcoJ2Jhc2U2NCcpLCAnYmFzZTY0JykpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yKCdOb3QgYSB2YWxpZCBhZGRyZXNzIENhbGxBcmcnKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdGYWlsZWQgdG8gZGVzZXJpYWxpemUgYWRkcmVzcyBmcm9tIGNhbGwgYXJndW1lbnQnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRyYW5zYWN0aW9uIHR5cGUgYnkgZnVuY3Rpb24gbmFtZVxuICAgKlxuICAgKiBAcGFyYW0ge01ldGhvZE5hbWVzfSBmY3ROYW1lXG4gICAqIEByZXR1cm4ge1RyYW5zYWN0aW9uVHlwZX1cbiAgICovXG4gIGdldFRyYW5zYWN0aW9uVHlwZShmY3ROYW1lOiBzdHJpbmcpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHN3aXRjaCAoZmN0TmFtZSkge1xuICAgICAgY2FzZSBNZXRob2ROYW1lcy5SZXF1ZXN0QWRkRGVsZWdhdGlvbk11bENvaW46XG4gICAgICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuQWRkRGVsZWdhdG9yO1xuICAgICAgY2FzZSBNZXRob2ROYW1lcy5SZXF1ZXN0V2l0aGRyYXdEZWxlZ2F0aW9uOlxuICAgICAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdXaXRoZHJhdztcbiAgICAgIGNhc2UgTWV0aG9kTmFtZXMuUmVxdWVzdFN3aXRjaERlbGVnYXRpb246XG4gICAgICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ1N3aXRjaDtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBOb3RTdXBwb3J0ZWQoYFN0YWtpbmcgVHJhbnNhY3Rpb24gdHlwZSB3aXRoIGZ1bmN0aW9uICR7ZmN0TmFtZX0gbm90IHN1cHBvcnRlZGApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgU1VJIHRyYW5zYWN0aW9uIHR5cGUgYnkgZnVuY3Rpb24gbmFtZVxuICAgKlxuICAgKiBAcGFyYW0ge01ldGhvZE5hbWVzfSBmY3ROYW1lXG4gICAqIEByZXR1cm4ge1N1aVRyYW5zYWN0aW9uVHlwZX1cbiAgICovXG4gIGdldFN1aVRyYW5zYWN0aW9uVHlwZShmY3ROYW1lOiBzdHJpbmcpOiBTdWlUcmFuc2FjdGlvblR5cGUge1xuICAgIHN3aXRjaCAoZmN0TmFtZSkge1xuICAgICAgY2FzZSBNZXRob2ROYW1lcy5SZXF1ZXN0QWRkRGVsZWdhdGlvbk11bENvaW46XG4gICAgICAgIHJldHVybiBTdWlUcmFuc2FjdGlvblR5cGUuQWRkRGVsZWdhdGlvbjtcbiAgICAgIGNhc2UgTWV0aG9kTmFtZXMuUmVxdWVzdFdpdGhkcmF3RGVsZWdhdGlvbjpcbiAgICAgICAgcmV0dXJuIFN1aVRyYW5zYWN0aW9uVHlwZS5XaXRoZHJhd0RlbGVnYXRpb247XG4gICAgICBjYXNlIE1ldGhvZE5hbWVzLlJlcXVlc3RTd2l0Y2hEZWxlZ2F0aW9uOlxuICAgICAgICByZXR1cm4gU3VpVHJhbnNhY3Rpb25UeXBlLlN3aXRjaERlbGVnYXRpb247XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgTm90U3VwcG9ydGVkKGBTdWkgc3Rha2luZyB0cmFuc2FjdGlvbiB0eXBlIHdpdGggZnVuY3Rpb24gJHtmY3ROYW1lfSBub3Qgc3VwcG9ydGVkYCk7XG4gICAgfVxuICB9XG59XG5cbmNvbnN0IHV0aWxzID0gbmV3IFV0aWxzKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHV0aWxzO1xuIl19
package/dist/src/sui.d.ts CHANGED
@@ -47,6 +47,8 @@ export declare class Sui extends BaseCoin {
47
47
  explainTransaction(params: ExplainTransactionOptions): Promise<SuiTransactionExplanation>;
48
48
  private getBuilder;
49
49
  private getAddressFromPublicKey;
50
+ /** @inheritDoc */
51
+ getSignablePayload(serializedTx: string): Promise<Buffer>;
50
52
  }
51
53
  export {};
52
54
  //# sourceMappingURL=sui.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sui.d.ts","sourceRoot":"","sources":["../../src/sui.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,QAAQ,EAER,SAAS,EAGT,OAAO,EACP,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,IAAI,2BAA2B,EACtD,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAS,MAAM,gBAAgB,CAAC;AAOpE,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,0BAA2B,SAAQ,2BAA2B;IAC7E,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,aAAK,gBAAgB,GAAG,iBAAiB,CAAC;AAE1C,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB;IAE7D,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAG3B,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC9B;AAED,oBAAY,yBAAyB,GAAG,sBAAsB,CAAC;AAE/D,qBAAa,GAAI,SAAQ,QAAQ;IAC/B,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,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,QAAQ;IAI1F;;OAEG;IACI,aAAa,IAAI,MAAM;IAIvB,QAAQ,IAAI,MAAM;IAIlB,SAAS,IAAI,MAAM;IAInB,WAAW,IAAI,MAAM;IAI5B,kBAAkB;IAClB,WAAW,IAAI,OAAO;IAItB,eAAe,IAAI,YAAY;IAI/B,2BAA2B,IAAI,OAAO;IAIhC,iBAAiB,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,OAAO,CAAC;IA8BrE,eAAe,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC;IA2BlE,gBAAgB,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAuCzF,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO;IAIvC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIhC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIhC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIxC,eAAe,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAI3E;;;OAGG;IACG,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAc/F,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,uBAAuB;CAShC"}
1
+ {"version":3,"file":"sui.d.ts","sourceRoot":"","sources":["../../src/sui.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,QAAQ,EAER,SAAS,EAGT,OAAO,EACP,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,IAAI,2BAA2B,EACtD,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAS,MAAM,gBAAgB,CAAC;AAQpE,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,0BAA2B,SAAQ,2BAA2B;IAC7E,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,aAAK,gBAAgB,GAAG,iBAAiB,CAAC;AAE1C,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB;IAE7D,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAG3B,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC9B;AAED,oBAAY,yBAAyB,GAAG,sBAAsB,CAAC;AAE/D,qBAAa,GAAI,SAAQ,QAAQ;IAC/B,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,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,QAAQ;IAI1F;;OAEG;IACI,aAAa,IAAI,MAAM;IAIvB,QAAQ,IAAI,MAAM;IAIlB,SAAS,IAAI,MAAM;IAInB,WAAW,IAAI,MAAM;IAI5B,kBAAkB;IAClB,WAAW,IAAI,OAAO;IAItB,eAAe,IAAI,YAAY;IAI/B,2BAA2B,IAAI,OAAO;IAIhC,iBAAiB,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,OAAO,CAAC;IA8BrE,eAAe,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC;IA2BlE,gBAAgB,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAuCzF,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO;IAIvC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIhC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIhC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIxC,eAAe,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAI3E;;;OAGG;IACG,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAc/F,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,uBAAuB;IAU/B,kBAAkB;IACZ,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAKhE"}