@bitgo/sdk-coin-icp 1.10.1 → 1.12.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.
@@ -1,11 +1,12 @@
1
1
  import { TransactionExplanation as BaseTransactionExplanation, TransactionType as BitGoTransactionType } from '@bitgo/sdk-core';
2
- export declare const REQUEST_STATUS = "request_status";
3
2
  export declare const MAX_INGRESS_TTL: number;
4
3
  export declare const PERMITTED_DRIFT: number;
5
4
  export declare const LEDGER_CANISTER_ID: Uint8Array<ArrayBuffer>;
5
+ export declare const ROOT_PATH = "m/0";
6
+ export declare const ACCOUNT_BALANCE_ENDPOINT = "/account/balance";
7
+ export declare const PUBLIC_NODE_REQUEST_ENDPOINT = "/api/v3/canister/";
6
8
  export declare enum RequestType {
7
- CALL = "call",
8
- READ_STATE = "read_state"
9
+ CALL = "call"
9
10
  }
10
11
  export declare enum SignatureType {
11
12
  ECDSA = "ecdsa"
@@ -29,7 +30,7 @@ export interface IcpTransactionData {
29
30
  amount: string;
30
31
  fee: string;
31
32
  senderPublicKeyHex: string;
32
- memo: number | BigInt;
33
+ memo?: number | BigInt;
33
34
  transactionType: OperationType;
34
35
  expiryTime: number | BigInt;
35
36
  }
@@ -53,27 +54,33 @@ export interface IcpOperation {
53
54
  account: IcpAccount;
54
55
  amount: IcpAmount;
55
56
  }
56
- export interface IcpMetadata {
57
+ export interface IcpTransactionParseMetadata {
57
58
  created_at_time: number;
58
- memo: number | BigInt;
59
+ memo?: number | BigInt;
59
60
  ingress_start?: number | BigInt;
60
61
  ingress_end?: number | BigInt;
61
62
  }
63
+ export interface IcpTransactionBuildMetadata {
64
+ created_at_time: number;
65
+ memo?: number | BigInt;
66
+ ingress_start: number | BigInt;
67
+ ingress_end: number | BigInt;
68
+ }
62
69
  export interface IcpTransaction {
63
70
  public_keys: IcpPublicKey[];
64
71
  operations: IcpOperation[];
65
- metadata: IcpMetadata;
72
+ metadata: IcpTransactionBuildMetadata;
66
73
  }
67
74
  export interface ParsedTransaction {
68
75
  operations: IcpOperation[];
69
76
  account_identifier_signers: IcpAccount[];
70
- metadata: IcpMetadata;
77
+ metadata: IcpTransactionParseMetadata;
71
78
  }
72
79
  export interface IcpAccountIdentifier {
73
80
  address: string;
74
81
  }
75
82
  export interface SendArgs {
76
- memo: {
83
+ memo?: {
77
84
  memo: number | BigInt;
78
85
  };
79
86
  payment: {
@@ -114,28 +121,11 @@ export interface Signatures {
114
121
  hex_bytes: string;
115
122
  }
116
123
  export interface CborUnsignedTransaction {
117
- updates: [string, HttpCanisterUpdate][];
124
+ updates: [HttpCanisterUpdate][];
118
125
  ingress_expiries: bigint[];
119
126
  }
120
- export interface ReadState {
121
- sender: Uint8Array;
122
- paths: Array<[Buffer, Buffer]>;
123
- ingress_expiry: bigint;
124
- }
125
127
  export interface UpdateEnvelope {
126
- content: {
127
- request_type: RequestType;
128
- canister_id: Uint8Array;
129
- method_name: MethodName;
130
- arg: Uint8Array;
131
- sender: Uint8Array;
132
- ingress_expiry: bigint;
133
- };
134
- sender_pubkey: Uint8Array;
135
- sender_sig: Uint8Array;
136
- }
137
- export interface ReadStateEnvelope {
138
- content: ReadState & {
128
+ content: HttpCanisterUpdate & {
139
129
  request_type: RequestType;
140
130
  };
141
131
  sender_pubkey: Uint8Array;
@@ -143,7 +133,6 @@ export interface ReadStateEnvelope {
143
133
  }
144
134
  export interface RequestEnvelope {
145
135
  update: UpdateEnvelope;
146
- read_state: ReadStateEnvelope;
147
136
  }
148
137
  /**
149
138
  * The transaction data returned from the toJson() function of a transaction
@@ -153,7 +142,7 @@ export interface TxData {
153
142
  sender: string;
154
143
  senderPublicKey: string;
155
144
  recipient: string;
156
- memo: number | BigInt;
145
+ memo?: number | BigInt;
157
146
  feeAmount: string;
158
147
  expirationTime: number | BigInt;
159
148
  type?: BitGoTransactionType;
@@ -166,12 +155,19 @@ export interface NetworkIdentifier {
166
155
  blockchain: string;
167
156
  network: string;
168
157
  }
169
- export interface SignedTransactionRequest {
170
- network_identifier: NetworkIdentifier;
171
- signed_transaction: string;
172
- }
173
158
  export interface RawTransaction {
174
159
  serializedTxHex: string;
175
160
  publicKey: string;
176
161
  }
162
+ export interface RecoveryOptions {
163
+ userKey: string;
164
+ backupKey: string;
165
+ bitgoKey?: string;
166
+ recoveryDestination: string;
167
+ walletPassphrase: string;
168
+ memo?: number | BigInt;
169
+ }
170
+ export interface PublicNodeSubmitResponse {
171
+ status: string;
172
+ }
177
173
  //# sourceMappingURL=iface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Network = exports.MethodName = exports.OperationType = exports.CurveType = exports.SignatureType = exports.RequestType = exports.LEDGER_CANISTER_ID = exports.PERMITTED_DRIFT = exports.MAX_INGRESS_TTL = exports.REQUEST_STATUS = void 0;
4
- exports.REQUEST_STATUS = 'request_status';
3
+ exports.Network = exports.MethodName = exports.OperationType = exports.CurveType = exports.SignatureType = exports.RequestType = exports.PUBLIC_NODE_REQUEST_ENDPOINT = exports.ACCOUNT_BALANCE_ENDPOINT = exports.ROOT_PATH = exports.LEDGER_CANISTER_ID = exports.PERMITTED_DRIFT = exports.MAX_INGRESS_TTL = void 0;
5
4
  exports.MAX_INGRESS_TTL = 5 * 60 * 1000000000; // 5 minutes in nanoseconds
6
5
  exports.PERMITTED_DRIFT = 60 * 1000000000; // 60 seconds in nanoseconds
7
6
  exports.LEDGER_CANISTER_ID = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 2, 1, 1]); // Uint8Array value for "00000000000000020101" and the string value is "ryjl3-tyaaa-aaaaa-aaaba-cai"
7
+ exports.ROOT_PATH = 'm/0';
8
+ exports.ACCOUNT_BALANCE_ENDPOINT = '/account/balance';
9
+ exports.PUBLIC_NODE_REQUEST_ENDPOINT = '/api/v3/canister/';
8
10
  var RequestType;
9
11
  (function (RequestType) {
10
12
  RequestType["CALL"] = "call";
11
- RequestType["READ_STATE"] = "read_state";
12
13
  })(RequestType || (exports.RequestType = RequestType = {}));
13
14
  var SignatureType;
14
15
  (function (SignatureType) {
@@ -31,4 +32,4 @@ var Network;
31
32
  (function (Network) {
32
33
  Network["ID"] = "00000000000000020101";
33
34
  })(Network || (exports.Network = Network = {}));
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUthLFFBQUEsY0FBYyxHQUFHLGdCQUFnQixDQUFDO0FBQ2xDLFFBQUEsZUFBZSxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsVUFBWSxDQUFDLENBQUMsMkJBQTJCO0FBQ3BFLFFBQUEsZUFBZSxHQUFHLEVBQUUsR0FBRyxVQUFZLENBQUMsQ0FBQyw0QkFBNEI7QUFDakUsUUFBQSxrQkFBa0IsR0FBRyxJQUFJLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxvR0FBb0c7QUFFdEwsSUFBWSxXQUdYO0FBSEQsV0FBWSxXQUFXO0lBQ3JCLDRCQUFhLENBQUE7SUFDYix3Q0FBeUIsQ0FBQTtBQUMzQixDQUFDLEVBSFcsV0FBVywyQkFBWCxXQUFXLFFBR3RCO0FBRUQsSUFBWSxhQUVYO0FBRkQsV0FBWSxhQUFhO0lBQ3ZCLGdDQUFlLENBQUE7QUFDakIsQ0FBQyxFQUZXLGFBQWEsNkJBQWIsYUFBYSxRQUV4QjtBQUVELElBQVksU0FFWDtBQUZELFdBQVksU0FBUztJQUNuQixvQ0FBdUIsQ0FBQTtBQUN6QixDQUFDLEVBRlcsU0FBUyx5QkFBVCxTQUFTLFFBRXBCO0FBRUQsSUFBWSxhQUdYO0FBSEQsV0FBWSxhQUFhO0lBQ3ZCLDRDQUEyQixDQUFBO0lBQzNCLDRCQUFXLENBQUE7QUFDYixDQUFDLEVBSFcsYUFBYSw2QkFBYixhQUFhLFFBR3hCO0FBRUQsSUFBWSxVQUVYO0FBRkQsV0FBWSxVQUFVO0lBQ3BCLGlDQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFGVyxVQUFVLDBCQUFWLFVBQVUsUUFFckI7QUFFRCxJQUFZLE9BRVg7QUFGRCxXQUFZLE9BQU87SUFDakIsc0NBQTJCLENBQUE7QUFDN0IsQ0FBQyxFQUZXLE9BQU8sdUJBQVAsT0FBTyxRQUVsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFRyYW5zYWN0aW9uRXhwbGFuYXRpb24gYXMgQmFzZVRyYW5zYWN0aW9uRXhwbGFuYXRpb24sXG4gIFRyYW5zYWN0aW9uVHlwZSBhcyBCaXRHb1RyYW5zYWN0aW9uVHlwZSxcbn0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcblxuZXhwb3J0IGNvbnN0IFJFUVVFU1RfU1RBVFVTID0gJ3JlcXVlc3Rfc3RhdHVzJztcbmV4cG9ydCBjb25zdCBNQVhfSU5HUkVTU19UVEwgPSA1ICogNjAgKiAxMDAwXzAwMF8wMDA7IC8vIDUgbWludXRlcyBpbiBuYW5vc2Vjb25kc1xuZXhwb3J0IGNvbnN0IFBFUk1JVFRFRF9EUklGVCA9IDYwICogMTAwMF8wMDBfMDAwOyAvLyA2MCBzZWNvbmRzIGluIG5hbm9zZWNvbmRzXG5leHBvcnQgY29uc3QgTEVER0VSX0NBTklTVEVSX0lEID0gbmV3IFVpbnQ4QXJyYXkoWzAsIDAsIDAsIDAsIDAsIDAsIDAsIDIsIDEsIDFdKTsgLy8gVWludDhBcnJheSB2YWx1ZSBmb3IgXCIwMDAwMDAwMDAwMDAwMDAyMDEwMVwiIGFuZCB0aGUgc3RyaW5nIHZhbHVlIGlzIFwicnlqbDMtdHlhYWEtYWFhYWEtYWFhYmEtY2FpXCJcblxuZXhwb3J0IGVudW0gUmVxdWVzdFR5cGUge1xuICBDQUxMID0gJ2NhbGwnLFxuICBSRUFEX1NUQVRFID0gJ3JlYWRfc3RhdGUnLFxufVxuXG5leHBvcnQgZW51bSBTaWduYXR1cmVUeXBlIHtcbiAgRUNEU0EgPSAnZWNkc2EnLFxufVxuXG5leHBvcnQgZW51bSBDdXJ2ZVR5cGUge1xuICBTRUNQMjU2SzEgPSAnc2VjcDI1NmsxJyxcbn1cblxuZXhwb3J0IGVudW0gT3BlcmF0aW9uVHlwZSB7XG4gIFRSQU5TQUNUSU9OID0gJ1RSQU5TQUNUSU9OJyxcbiAgRkVFID0gJ0ZFRScsXG59XG5cbmV4cG9ydCBlbnVtIE1ldGhvZE5hbWUge1xuICBTRU5EX1BCID0gJ3NlbmRfcGInLCAvLyBzZW5kX3BiIGlzIHRoZSBtZXRob2QgbmFtZSBmb3IgSUNQIHRyYW5zZmVyIHRyYW5zYWN0aW9uXG59XG5cbmV4cG9ydCBlbnVtIE5ldHdvcmsge1xuICBJRCA9ICcwMDAwMDAwMDAwMDAwMDAyMDEwMScsIC8vIElDUCBkb2VzIG5vdCBoYXZlIGRpZmZlcmVudCBuZXR3b3JrIElEcyBmb3IgbWFpbm5ldCBhbmQgdGVzdG5ldFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEljcFRyYW5zYWN0aW9uRGF0YSB7XG4gIHNlbmRlckFkZHJlc3M6IHN0cmluZztcbiAgcmVjZWl2ZXJBZGRyZXNzOiBzdHJpbmc7XG4gIGFtb3VudDogc3RyaW5nO1xuICBmZWU6IHN0cmluZztcbiAgc2VuZGVyUHVibGljS2V5SGV4OiBzdHJpbmc7XG4gIG1lbW86IG51bWJlciB8IEJpZ0ludDsgLy8gbWVtbyBpbiBzdHJpbmcgaXMgbm90IGFjY2VwdGVkIGJ5IElDUCBjaGFpbi5cbiAgdHJhbnNhY3Rpb25UeXBlOiBPcGVyYXRpb25UeXBlO1xuICBleHBpcnlUaW1lOiBudW1iZXIgfCBCaWdJbnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWNwUHVibGljS2V5IHtcbiAgaGV4X2J5dGVzOiBzdHJpbmc7XG4gIGN1cnZlX3R5cGU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJY3BBY2NvdW50IHtcbiAgYWRkcmVzczogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEljcEN1cnJlbmN5IHtcbiAgc3ltYm9sOiBzdHJpbmc7XG4gIGRlY2ltYWxzOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWNwQW1vdW50IHtcbiAgdmFsdWU6IHN0cmluZztcbiAgY3VycmVuY3k6IEljcEN1cnJlbmN5O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEljcE9wZXJhdGlvbiB7XG4gIHR5cGU6IHN0cmluZztcbiAgYWNjb3VudDogSWNwQWNjb3VudDtcbiAgYW1vdW50OiBJY3BBbW91bnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWNwTWV0YWRhdGEge1xuICBjcmVhdGVkX2F0X3RpbWU6IG51bWJlcjtcbiAgbWVtbzogbnVtYmVyIHwgQmlnSW50OyAvLyBtZW1vIGluIHN0cmluZyBpcyBub3QgYWNjZXB0ZWQgYnkgSUNQIGNoYWluLlxuICBpbmdyZXNzX3N0YXJ0PzogbnVtYmVyIHwgQmlnSW50OyAvLyBpdCBzaG91bGQgYmUgbmFubyBzZWNvbmRzXG4gIGluZ3Jlc3NfZW5kPzogbnVtYmVyIHwgQmlnSW50OyAvLyBpdCBzaG91bGQgYmUgbmFubyBzZWNvbmRzXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWNwVHJhbnNhY3Rpb24ge1xuICBwdWJsaWNfa2V5czogSWNwUHVibGljS2V5W107XG4gIG9wZXJhdGlvbnM6IEljcE9wZXJhdGlvbltdO1xuICBtZXRhZGF0YTogSWNwTWV0YWRhdGE7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyc2VkVHJhbnNhY3Rpb24ge1xuICBvcGVyYXRpb25zOiBJY3BPcGVyYXRpb25bXTtcbiAgYWNjb3VudF9pZGVudGlmaWVyX3NpZ25lcnM6IEljcEFjY291bnRbXTtcbiAgbWV0YWRhdGE6IEljcE1ldGFkYXRhO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEljcEFjY291bnRJZGVudGlmaWVyIHtcbiAgYWRkcmVzczogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlbmRBcmdzIHtcbiAgbWVtbzogeyBtZW1vOiBudW1iZXIgfCBCaWdJbnQgfTtcbiAgcGF5bWVudDogeyByZWNlaXZlckdldHM6IHsgZThzOiBudW1iZXIgfSB9O1xuICBtYXhGZWU6IHsgZThzOiBudW1iZXIgfTtcbiAgdG86IHsgaGFzaDogQnVmZmVyIH07XG4gIGNyZWF0ZWRBdFRpbWU6IHsgdGltZXN0YW1wTmFub3M6IG51bWJlciB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEh0dHBDYW5pc3RlclVwZGF0ZSB7XG4gIGNhbmlzdGVyX2lkOiBVaW50OEFycmF5O1xuICBtZXRob2RfbmFtZTogTWV0aG9kTmFtZTtcbiAgYXJnOiBVaW50OEFycmF5O1xuICBzZW5kZXI6IFVpbnQ4QXJyYXk7XG4gIGluZ3Jlc3NfZXhwaXJ5OiBiaWdpbnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmluZ1BheWxvYWQge1xuICBhY2NvdW50X2lkZW50aWZpZXI6IEljcEFjY291bnRJZGVudGlmaWVyO1xuICBoZXhfYnl0ZXM6IHN0cmluZztcbiAgc2lnbmF0dXJlX3R5cGU6IFNpZ25hdHVyZVR5cGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGF5bG9hZHNEYXRhIHtcbiAgcGF5bG9hZHM6IFNpZ25pbmdQYXlsb2FkW107XG4gIHVuc2lnbmVkX3RyYW5zYWN0aW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmF0dXJlcyB7XG4gIHNpZ25pbmdfcGF5bG9hZDogU2lnbmluZ1BheWxvYWQ7XG4gIHNpZ25hdHVyZV90eXBlOiBTaWduYXR1cmVUeXBlO1xuICBwdWJsaWNfa2V5OiBJY3BQdWJsaWNLZXk7XG4gIGhleF9ieXRlczogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENib3JVbnNpZ25lZFRyYW5zYWN0aW9uIHtcbiAgdXBkYXRlczogW3N0cmluZywgSHR0cENhbmlzdGVyVXBkYXRlXVtdO1xuICBpbmdyZXNzX2V4cGlyaWVzOiBiaWdpbnRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZWFkU3RhdGUge1xuICBzZW5kZXI6IFVpbnQ4QXJyYXk7XG4gIHBhdGhzOiBBcnJheTxbQnVmZmVyLCBCdWZmZXJdPjtcbiAgaW5ncmVzc19leHBpcnk6IGJpZ2ludDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVFbnZlbG9wZSB7XG4gIGNvbnRlbnQ6IHtcbiAgICByZXF1ZXN0X3R5cGU6IFJlcXVlc3RUeXBlO1xuICAgIGNhbmlzdGVyX2lkOiBVaW50OEFycmF5O1xuICAgIG1ldGhvZF9uYW1lOiBNZXRob2ROYW1lO1xuICAgIGFyZzogVWludDhBcnJheTtcbiAgICBzZW5kZXI6IFVpbnQ4QXJyYXk7XG4gICAgaW5ncmVzc19leHBpcnk6IGJpZ2ludDtcbiAgfTtcbiAgc2VuZGVyX3B1YmtleTogVWludDhBcnJheTtcbiAgc2VuZGVyX3NpZzogVWludDhBcnJheTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZWFkU3RhdGVFbnZlbG9wZSB7XG4gIGNvbnRlbnQ6IFJlYWRTdGF0ZSAmIHtcbiAgICByZXF1ZXN0X3R5cGU6IFJlcXVlc3RUeXBlO1xuICB9O1xuICBzZW5kZXJfcHVia2V5OiBVaW50OEFycmF5O1xuICBzZW5kZXJfc2lnOiBVaW50OEFycmF5O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RFbnZlbG9wZSB7XG4gIHVwZGF0ZTogVXBkYXRlRW52ZWxvcGU7XG4gIHJlYWRfc3RhdGU6IFJlYWRTdGF0ZUVudmVsb3BlO1xufVxuXG4vKipcbiAqIFRoZSB0cmFuc2FjdGlvbiBkYXRhIHJldHVybmVkIGZyb20gdGhlIHRvSnNvbigpIGZ1bmN0aW9uIG9mIGEgdHJhbnNhY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUeERhdGEge1xuICBpZD86IHN0cmluZztcbiAgc2VuZGVyOiBzdHJpbmc7XG4gIHNlbmRlclB1YmxpY0tleTogc3RyaW5nO1xuICByZWNpcGllbnQ6IHN0cmluZztcbiAgbWVtbzogbnVtYmVyIHwgQmlnSW50O1xuICBmZWVBbW91bnQ6IHN0cmluZztcbiAgZXhwaXJhdGlvblRpbWU6IG51bWJlciB8IEJpZ0ludDtcbiAgdHlwZT86IEJpdEdvVHJhbnNhY3Rpb25UeXBlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEljcFRyYW5zYWN0aW9uRXhwbGFuYXRpb24gZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB7XG4gIHNlbmRlcj86IHN0cmluZztcbiAgdHlwZT86IEJpdEdvVHJhbnNhY3Rpb25UeXBlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5ldHdvcmtJZGVudGlmaWVyIHtcbiAgYmxvY2tjaGFpbjogc3RyaW5nO1xuICBuZXR3b3JrOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmVkVHJhbnNhY3Rpb25SZXF1ZXN0IHtcbiAgbmV0d29ya19pZGVudGlmaWVyOiBOZXR3b3JrSWRlbnRpZmllcjtcbiAgc2lnbmVkX3RyYW5zYWN0aW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmF3VHJhbnNhY3Rpb24ge1xuICBzZXJpYWxpemVkVHhIZXg6IHN0cmluZztcbiAgcHVibGljS2V5OiBzdHJpbmc7XG59XG4iXX0=
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUthLFFBQUEsZUFBZSxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsVUFBWSxDQUFDLENBQUMsMkJBQTJCO0FBQ3BFLFFBQUEsZUFBZSxHQUFHLEVBQUUsR0FBRyxVQUFZLENBQUMsQ0FBQyw0QkFBNEI7QUFDakUsUUFBQSxrQkFBa0IsR0FBRyxJQUFJLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxvR0FBb0c7QUFDekssUUFBQSxTQUFTLEdBQUcsS0FBSyxDQUFDO0FBQ2xCLFFBQUEsd0JBQXdCLEdBQUcsa0JBQWtCLENBQUM7QUFDOUMsUUFBQSw0QkFBNEIsR0FBRyxtQkFBbUIsQ0FBQztBQUVoRSxJQUFZLFdBRVg7QUFGRCxXQUFZLFdBQVc7SUFDckIsNEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFGVyxXQUFXLDJCQUFYLFdBQVcsUUFFdEI7QUFFRCxJQUFZLGFBRVg7QUFGRCxXQUFZLGFBQWE7SUFDdkIsZ0NBQWUsQ0FBQTtBQUNqQixDQUFDLEVBRlcsYUFBYSw2QkFBYixhQUFhLFFBRXhCO0FBRUQsSUFBWSxTQUVYO0FBRkQsV0FBWSxTQUFTO0lBQ25CLG9DQUF1QixDQUFBO0FBQ3pCLENBQUMsRUFGVyxTQUFTLHlCQUFULFNBQVMsUUFFcEI7QUFFRCxJQUFZLGFBR1g7QUFIRCxXQUFZLGFBQWE7SUFDdkIsNENBQTJCLENBQUE7SUFDM0IsNEJBQVcsQ0FBQTtBQUNiLENBQUMsRUFIVyxhQUFhLDZCQUFiLGFBQWEsUUFHeEI7QUFFRCxJQUFZLFVBRVg7QUFGRCxXQUFZLFVBQVU7SUFDcEIsaUNBQW1CLENBQUE7QUFDckIsQ0FBQyxFQUZXLFVBQVUsMEJBQVYsVUFBVSxRQUVyQjtBQUVELElBQVksT0FFWDtBQUZELFdBQVksT0FBTztJQUNqQixzQ0FBMkIsQ0FBQTtBQUM3QixDQUFDLEVBRlcsT0FBTyx1QkFBUCxPQUFPLFFBRWxCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBhcyBCYXNlVHJhbnNhY3Rpb25FeHBsYW5hdGlvbixcbiAgVHJhbnNhY3Rpb25UeXBlIGFzIEJpdEdvVHJhbnNhY3Rpb25UeXBlLFxufSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuXG5leHBvcnQgY29uc3QgTUFYX0lOR1JFU1NfVFRMID0gNSAqIDYwICogMTAwMF8wMDBfMDAwOyAvLyA1IG1pbnV0ZXMgaW4gbmFub3NlY29uZHNcbmV4cG9ydCBjb25zdCBQRVJNSVRURURfRFJJRlQgPSA2MCAqIDEwMDBfMDAwXzAwMDsgLy8gNjAgc2Vjb25kcyBpbiBuYW5vc2Vjb25kc1xuZXhwb3J0IGNvbnN0IExFREdFUl9DQU5JU1RFUl9JRCA9IG5ldyBVaW50OEFycmF5KFswLCAwLCAwLCAwLCAwLCAwLCAwLCAyLCAxLCAxXSk7IC8vIFVpbnQ4QXJyYXkgdmFsdWUgZm9yIFwiMDAwMDAwMDAwMDAwMDAwMjAxMDFcIiBhbmQgdGhlIHN0cmluZyB2YWx1ZSBpcyBcInJ5amwzLXR5YWFhLWFhYWFhLWFhYWJhLWNhaVwiXG5leHBvcnQgY29uc3QgUk9PVF9QQVRIID0gJ20vMCc7XG5leHBvcnQgY29uc3QgQUNDT1VOVF9CQUxBTkNFX0VORFBPSU5UID0gJy9hY2NvdW50L2JhbGFuY2UnO1xuZXhwb3J0IGNvbnN0IFBVQkxJQ19OT0RFX1JFUVVFU1RfRU5EUE9JTlQgPSAnL2FwaS92My9jYW5pc3Rlci8nO1xuXG5leHBvcnQgZW51bSBSZXF1ZXN0VHlwZSB7XG4gIENBTEwgPSAnY2FsbCcsXG59XG5cbmV4cG9ydCBlbnVtIFNpZ25hdHVyZVR5cGUge1xuICBFQ0RTQSA9ICdlY2RzYScsXG59XG5cbmV4cG9ydCBlbnVtIEN1cnZlVHlwZSB7XG4gIFNFQ1AyNTZLMSA9ICdzZWNwMjU2azEnLFxufVxuXG5leHBvcnQgZW51bSBPcGVyYXRpb25UeXBlIHtcbiAgVFJBTlNBQ1RJT04gPSAnVFJBTlNBQ1RJT04nLFxuICBGRUUgPSAnRkVFJyxcbn1cblxuZXhwb3J0IGVudW0gTWV0aG9kTmFtZSB7XG4gIFNFTkRfUEIgPSAnc2VuZF9wYicsIC8vIHNlbmRfcGIgaXMgdGhlIG1ldGhvZCBuYW1lIGZvciBJQ1AgdHJhbnNmZXIgdHJhbnNhY3Rpb25cbn1cblxuZXhwb3J0IGVudW0gTmV0d29yayB7XG4gIElEID0gJzAwMDAwMDAwMDAwMDAwMDIwMTAxJywgLy8gSUNQIGRvZXMgbm90IGhhdmUgZGlmZmVyZW50IG5ldHdvcmsgSURzIGZvciBtYWlubmV0IGFuZCB0ZXN0bmV0XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWNwVHJhbnNhY3Rpb25EYXRhIHtcbiAgc2VuZGVyQWRkcmVzczogc3RyaW5nO1xuICByZWNlaXZlckFkZHJlc3M6IHN0cmluZztcbiAgYW1vdW50OiBzdHJpbmc7XG4gIGZlZTogc3RyaW5nO1xuICBzZW5kZXJQdWJsaWNLZXlIZXg6IHN0cmluZztcbiAgbWVtbz86IG51bWJlciB8IEJpZ0ludDsgLy8gbWVtbyBpbiBzdHJpbmcgaXMgbm90IGFjY2VwdGVkIGJ5IElDUCBjaGFpbi5cbiAgdHJhbnNhY3Rpb25UeXBlOiBPcGVyYXRpb25UeXBlO1xuICBleHBpcnlUaW1lOiBudW1iZXIgfCBCaWdJbnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWNwUHVibGljS2V5IHtcbiAgaGV4X2J5dGVzOiBzdHJpbmc7XG4gIGN1cnZlX3R5cGU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJY3BBY2NvdW50IHtcbiAgYWRkcmVzczogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEljcEN1cnJlbmN5IHtcbiAgc3ltYm9sOiBzdHJpbmc7XG4gIGRlY2ltYWxzOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWNwQW1vdW50IHtcbiAgdmFsdWU6IHN0cmluZztcbiAgY3VycmVuY3k6IEljcEN1cnJlbmN5O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEljcE9wZXJhdGlvbiB7XG4gIHR5cGU6IHN0cmluZztcbiAgYWNjb3VudDogSWNwQWNjb3VudDtcbiAgYW1vdW50OiBJY3BBbW91bnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWNwVHJhbnNhY3Rpb25QYXJzZU1ldGFkYXRhIHtcbiAgY3JlYXRlZF9hdF90aW1lOiBudW1iZXI7XG4gIG1lbW8/OiBudW1iZXIgfCBCaWdJbnQ7IC8vIG1lbW8gaW4gc3RyaW5nIGlzIG5vdCBhY2NlcHRlZCBieSBJQ1AgY2hhaW4uXG4gIGluZ3Jlc3Nfc3RhcnQ/OiBudW1iZXIgfCBCaWdJbnQ7IC8vIGl0IHNob3VsZCBiZSBuYW5vIHNlY29uZHNcbiAgaW5ncmVzc19lbmQ/OiBudW1iZXIgfCBCaWdJbnQ7IC8vIGl0IHNob3VsZCBiZSBuYW5vIHNlY29uZHNcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJY3BUcmFuc2FjdGlvbkJ1aWxkTWV0YWRhdGEge1xuICBjcmVhdGVkX2F0X3RpbWU6IG51bWJlcjtcbiAgbWVtbz86IG51bWJlciB8IEJpZ0ludDsgLy8gbWVtbyBpbiBzdHJpbmcgaXMgbm90IGFjY2VwdGVkIGJ5IElDUCBjaGFpbi5cbiAgaW5ncmVzc19zdGFydDogbnVtYmVyIHwgQmlnSW50OyAvLyBpdCBzaG91bGQgYmUgbmFubyBzZWNvbmRzXG4gIGluZ3Jlc3NfZW5kOiBudW1iZXIgfCBCaWdJbnQ7IC8vIGl0IHNob3VsZCBiZSBuYW5vIHNlY29uZHNcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJY3BUcmFuc2FjdGlvbiB7XG4gIHB1YmxpY19rZXlzOiBJY3BQdWJsaWNLZXlbXTtcbiAgb3BlcmF0aW9uczogSWNwT3BlcmF0aW9uW107XG4gIG1ldGFkYXRhOiBJY3BUcmFuc2FjdGlvbkJ1aWxkTWV0YWRhdGE7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyc2VkVHJhbnNhY3Rpb24ge1xuICBvcGVyYXRpb25zOiBJY3BPcGVyYXRpb25bXTtcbiAgYWNjb3VudF9pZGVudGlmaWVyX3NpZ25lcnM6IEljcEFjY291bnRbXTtcbiAgbWV0YWRhdGE6IEljcFRyYW5zYWN0aW9uUGFyc2VNZXRhZGF0YTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJY3BBY2NvdW50SWRlbnRpZmllciB7XG4gIGFkZHJlc3M6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZW5kQXJncyB7XG4gIG1lbW8/OiB7IG1lbW86IG51bWJlciB8IEJpZ0ludCB9O1xuICBwYXltZW50OiB7IHJlY2VpdmVyR2V0czogeyBlOHM6IG51bWJlciB9IH07XG4gIG1heEZlZTogeyBlOHM6IG51bWJlciB9O1xuICB0bzogeyBoYXNoOiBCdWZmZXIgfTtcbiAgY3JlYXRlZEF0VGltZTogeyB0aW1lc3RhbXBOYW5vczogbnVtYmVyIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSHR0cENhbmlzdGVyVXBkYXRlIHtcbiAgY2FuaXN0ZXJfaWQ6IFVpbnQ4QXJyYXk7XG4gIG1ldGhvZF9uYW1lOiBNZXRob2ROYW1lO1xuICBhcmc6IFVpbnQ4QXJyYXk7XG4gIHNlbmRlcjogVWludDhBcnJheTtcbiAgaW5ncmVzc19leHBpcnk6IGJpZ2ludDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTaWduaW5nUGF5bG9hZCB7XG4gIGFjY291bnRfaWRlbnRpZmllcjogSWNwQWNjb3VudElkZW50aWZpZXI7XG4gIGhleF9ieXRlczogc3RyaW5nO1xuICBzaWduYXR1cmVfdHlwZTogU2lnbmF0dXJlVHlwZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYXlsb2Fkc0RhdGEge1xuICBwYXlsb2FkczogU2lnbmluZ1BheWxvYWRbXTtcbiAgdW5zaWduZWRfdHJhbnNhY3Rpb246IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTaWduYXR1cmVzIHtcbiAgc2lnbmluZ19wYXlsb2FkOiBTaWduaW5nUGF5bG9hZDtcbiAgc2lnbmF0dXJlX3R5cGU6IFNpZ25hdHVyZVR5cGU7XG4gIHB1YmxpY19rZXk6IEljcFB1YmxpY0tleTtcbiAgaGV4X2J5dGVzOiBzdHJpbmc7XG59XG5cbi8vVG9kbzogcmVtb3ZlIHRoaXMgaW50ZXJmYWNlIHdoZW4gd2UgaGF2ZSBhIGJldHRlciB3YXkgdG8gaGFuZGxlIHRoZSB0cmFuc2FjdGlvblxuZXhwb3J0IGludGVyZmFjZSBDYm9yVW5zaWduZWRUcmFuc2FjdGlvbiB7XG4gIHVwZGF0ZXM6IFtIdHRwQ2FuaXN0ZXJVcGRhdGVdW107XG4gIGluZ3Jlc3NfZXhwaXJpZXM6IGJpZ2ludFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZUVudmVsb3BlIHtcbiAgY29udGVudDogSHR0cENhbmlzdGVyVXBkYXRlICYge1xuICAgIHJlcXVlc3RfdHlwZTogUmVxdWVzdFR5cGU7XG4gIH07XG4gIHNlbmRlcl9wdWJrZXk6IFVpbnQ4QXJyYXk7XG4gIHNlbmRlcl9zaWc6IFVpbnQ4QXJyYXk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVxdWVzdEVudmVsb3BlIHtcbiAgdXBkYXRlOiBVcGRhdGVFbnZlbG9wZTtcbn1cblxuLyoqXG4gKiBUaGUgdHJhbnNhY3Rpb24gZGF0YSByZXR1cm5lZCBmcm9tIHRoZSB0b0pzb24oKSBmdW5jdGlvbiBvZiBhIHRyYW5zYWN0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHhEYXRhIHtcbiAgaWQ/OiBzdHJpbmc7XG4gIHNlbmRlcjogc3RyaW5nO1xuICBzZW5kZXJQdWJsaWNLZXk6IHN0cmluZztcbiAgcmVjaXBpZW50OiBzdHJpbmc7XG4gIG1lbW8/OiBudW1iZXIgfCBCaWdJbnQ7XG4gIGZlZUFtb3VudDogc3RyaW5nO1xuICBleHBpcmF0aW9uVGltZTogbnVtYmVyIHwgQmlnSW50O1xuICB0eXBlPzogQml0R29UcmFuc2FjdGlvblR5cGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWNwVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgc2VuZGVyPzogc3RyaW5nO1xuICB0eXBlPzogQml0R29UcmFuc2FjdGlvblR5cGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmV0d29ya0lkZW50aWZpZXIge1xuICBibG9ja2NoYWluOiBzdHJpbmc7XG4gIG5ldHdvcms6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSYXdUcmFuc2FjdGlvbiB7XG4gIHNlcmlhbGl6ZWRUeEhleDogc3RyaW5nO1xuICBwdWJsaWNLZXk6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZWNvdmVyeU9wdGlvbnMge1xuICB1c2VyS2V5OiBzdHJpbmc7IC8vIEJveCBBXG4gIGJhY2t1cEtleTogc3RyaW5nOyAvLyBCb3ggQlxuICBiaXRnb0tleT86IHN0cmluZztcbiAgcmVjb3ZlcnlEZXN0aW5hdGlvbjogc3RyaW5nO1xuICB3YWxsZXRQYXNzcGhyYXNlOiBzdHJpbmc7XG4gIG1lbW8/OiBudW1iZXIgfCBCaWdJbnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHVibGljTm9kZVN1Ym1pdFJlc3BvbnNlIHtcbiAgc3RhdHVzOiBzdHJpbmc7XG59XG4iXX0=
@@ -1,4 +1,5 @@
1
1
  import * as Utils from './utils';
2
+ export * from './iface';
2
3
  export { KeyPair } from './keyPair';
3
4
  export { TransactionBuilder } from './transactionBuilder';
4
5
  export { TransferBuilder } from './transferBuilder';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -32,10 +32,14 @@ var __importStar = (this && this.__importStar) || (function () {
32
32
  return result;
33
33
  };
34
34
  })();
35
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
36
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
37
+ };
35
38
  Object.defineProperty(exports, "__esModule", { value: true });
36
39
  exports.Utils = exports.Transaction = exports.TransactionBuilderFactory = exports.TransferBuilder = exports.TransactionBuilder = exports.KeyPair = void 0;
37
40
  const Utils = __importStar(require("./utils"));
38
41
  exports.Utils = Utils;
42
+ __exportStar(require("./iface"), exports);
39
43
  var keyPair_1 = require("./keyPair");
40
44
  Object.defineProperty(exports, "KeyPair", { enumerable: true, get: function () { return keyPair_1.KeyPair; } });
41
45
  var transactionBuilder_1 = require("./transactionBuilder");
@@ -46,4 +50,4 @@ var transactionBuilderFactory_1 = require("./transactionBuilderFactory");
46
50
  Object.defineProperty(exports, "TransactionBuilderFactory", { enumerable: true, get: function () { return transactionBuilderFactory_1.TransactionBuilderFactory; } });
47
51
  var transaction_1 = require("./transaction");
48
52
  Object.defineProperty(exports, "Transaction", { enumerable: true, get: function () { return transaction_1.Transaction; } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUFpQztBQU94QixzQkFBSztBQUxkLHFDQUFvQztBQUEzQixrR0FBQSxPQUFPLE9BQUE7QUFDaEIsMkRBQTBEO0FBQWpELHdIQUFBLGtCQUFrQixPQUFBO0FBQzNCLHFEQUFvRDtBQUEzQyxrSEFBQSxlQUFlLE9BQUE7QUFDeEIseUVBQXdFO0FBQS9ELHNJQUFBLHlCQUF5QixPQUFBO0FBQ2xDLDZDQUE0QztBQUFuQywwR0FBQSxXQUFXLE9BQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBVdGlscyBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IHsgS2V5UGFpciB9IGZyb20gJy4va2V5UGFpcic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zZmVyQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5JztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5leHBvcnQgeyBVdGlscyB9O1xuIl19
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUFpQztBQVF4QixzQkFBSztBQVBkLDBDQUF3QjtBQUV4QixxQ0FBb0M7QUFBM0Isa0dBQUEsT0FBTyxPQUFBO0FBQ2hCLDJEQUEwRDtBQUFqRCx3SEFBQSxrQkFBa0IsT0FBQTtBQUMzQixxREFBb0Q7QUFBM0Msa0hBQUEsZUFBZSxPQUFBO0FBQ3hCLHlFQUF3RTtBQUEvRCxzSUFBQSx5QkFBeUIsT0FBQTtBQUNsQyw2Q0FBNEM7QUFBbkMsMEdBQUEsV0FBVyxPQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgVXRpbHMgZnJvbSAnLi91dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL2lmYWNlJztcblxuZXhwb3J0IHsgS2V5UGFpciB9IGZyb20gJy4va2V5UGFpcic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zZmVyQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5JztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5leHBvcnQgeyBVdGlscyB9O1xuIl19
@@ -4,6 +4,6 @@ export declare class SignedTransactionBuilder {
4
4
  protected _signaturePayload: Signatures[];
5
5
  constructor(unsigned_transaction: string, signatures: Signatures[]);
6
6
  getSignTransaction(): string;
7
- getEnvelopes(unsignedTransaction: CborUnsignedTransaction, signatureMap: Map<string, Signatures>): [string, RequestEnvelope[]][];
7
+ getEnvelopes(unsignedTransaction: CborUnsignedTransaction, signatureMap: Map<string, Signatures>): [RequestEnvelope[]][];
8
8
  }
9
9
  //# sourceMappingURL=signedTransactionBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"signedTransactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/signedTransactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EAEvB,UAAU,EAGV,eAAe,EAChB,MAAM,SAAS,CAAC;AAIjB,qBAAa,wBAAwB;IACnC,SAAS,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACxC,SAAS,CAAC,iBAAiB,EAAE,UAAU,EAAE,CAAC;gBAE9B,oBAAoB,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE;IAKlE,kBAAkB,IAAI,MAAM;IAoB5B,YAAY,CACV,mBAAmB,EAAE,uBAAuB,EAC5C,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GACpC,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,EAAE;CAwCjC"}
1
+ {"version":3,"file":"signedTransactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/signedTransactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EAEvB,UAAU,EAEV,eAAe,EAEhB,MAAM,SAAS,CAAC;AAIjB,qBAAa,wBAAwB;IACnC,SAAS,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACxC,SAAS,CAAC,iBAAiB,EAAE,UAAU,EAAE,CAAC;gBAE9B,oBAAoB,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE;IAKlE,kBAAkB,IAAI,MAAM;IAwB5B,YAAY,CACV,mBAAmB,EAAE,uBAAuB,EAC5C,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GACpC,CAAC,eAAe,EAAE,CAAC,EAAE;CA8BzB"}
@@ -22,48 +22,43 @@ class SignedTransactionBuilder {
22
22
  signatureMap.set(sig.signing_payload.hex_bytes, sig);
23
23
  }
24
24
  const unsignedTransaction = utils_1.default.cborDecode(utils_1.default.blobFromHex(combineRequest.unsigned_transaction));
25
- (0, assert_1.default)(combineRequest.signatures.length === unsignedTransaction.ingress_expiries.length * 2);
25
+ // at present we expect only one request type and one signature
26
+ (0, assert_1.default)(combineRequest.signatures.length === 1);
26
27
  (0, assert_1.default)(unsignedTransaction.updates.length === 1);
27
28
  const envelopes = this.getEnvelopes(unsignedTransaction, signatureMap);
28
- const envelopRequests = { requests: envelopes };
29
- const signedTransaction = utils_1.default.cborEncode(envelopRequests);
29
+ const requestEnvelopeArray = envelopes[0];
30
+ const requestEnvelopes = requestEnvelopeArray[0];
31
+ (0, assert_1.default)(requestEnvelopes.length === 1);
32
+ const requestEnvelope = requestEnvelopes[0];
33
+ const signedTransaction = utils_1.default.cborEncode(requestEnvelope.update);
30
34
  return signedTransaction;
31
35
  }
32
36
  getEnvelopes(unsignedTransaction, signatureMap) {
33
37
  const envelopes = [];
34
- for (const [reqType, update] of unsignedTransaction.updates) {
38
+ for (const [, update] of unsignedTransaction.updates) {
35
39
  const requestEnvelopes = [];
36
- for (const ingressExpiry of unsignedTransaction.ingress_expiries) {
37
- update.ingress_expiry = ingressExpiry;
38
- const readState = utils_1.default.makeReadStateFromUpdate(update);
39
- const transactionSignature = utils_1.default.getTransactionSignature(signatureMap, update);
40
- if (!transactionSignature) {
41
- throw new Error('Transaction signature is invalid');
42
- }
43
- const readStateSignature = utils_1.default.getReadStateSignature(signatureMap, readState);
44
- if (!readStateSignature) {
45
- throw new Error('read state signature is invalid');
46
- }
47
- const pk_der = utils_1.default.getPublicKeyInDERFormat(transactionSignature.public_key.hex_bytes);
48
- const updateEnvelope = {
49
- content: { request_type: iface_1.RequestType.CALL, ...update },
50
- sender_pubkey: pk_der,
51
- sender_sig: utils_1.default.blobFromHex(transactionSignature.hex_bytes),
52
- };
53
- const readStateEnvelope = {
54
- content: { request_type: iface_1.RequestType.READ_STATE, ...readState },
55
- sender_pubkey: pk_der,
56
- sender_sig: utils_1.default.blobFromHex(readStateSignature.hex_bytes),
57
- };
58
- requestEnvelopes.push({
59
- update: updateEnvelope,
60
- read_state: readStateEnvelope,
61
- });
40
+ if (unsignedTransaction.ingress_expiries.length != 1) {
41
+ throw new Error('ingress expiry can have only one entry');
62
42
  }
63
- envelopes.push([reqType, requestEnvelopes]);
43
+ const ingressExpiry = unsignedTransaction.ingress_expiries[0];
44
+ update.ingress_expiry = ingressExpiry;
45
+ const transactionSignature = utils_1.default.getTransactionSignature(signatureMap, update);
46
+ if (!transactionSignature) {
47
+ throw new Error('Transaction signature is invalid');
48
+ }
49
+ const pk_der = utils_1.default.getPublicKeyInDERFormat(transactionSignature.public_key.hex_bytes);
50
+ const updateEnvelope = {
51
+ content: { request_type: iface_1.RequestType.CALL, ...update },
52
+ sender_pubkey: pk_der,
53
+ sender_sig: utils_1.default.blobFromHex(transactionSignature.hex_bytes),
54
+ };
55
+ requestEnvelopes.push({
56
+ update: updateEnvelope,
57
+ });
58
+ envelopes.push([requestEnvelopes]);
64
59
  }
65
60
  return envelopes;
66
61
  }
67
62
  }
68
63
  exports.SignedTransactionBuilder = SignedTransactionBuilder;
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmVkVHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9zaWduZWRUcmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbUNBT2lCO0FBQ2pCLG9EQUE0QjtBQUM1QixvREFBNEI7QUFFNUIsTUFBYSx3QkFBd0I7SUFJbkMsWUFBWSxvQkFBNEIsRUFBRSxVQUF3QjtRQUNoRSxJQUFJLENBQUMscUJBQXFCLEdBQUcsb0JBQW9CLENBQUM7UUFDbEQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLFVBQVUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE1BQU0sY0FBYyxHQUFHO1lBQ3JCLFVBQVUsRUFBRSxJQUFJLENBQUMsaUJBQWlCO1lBQ2xDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxxQkFBcUI7U0FDakQsQ0FBQztRQUNGLE1BQU0sWUFBWSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFDL0IsS0FBSyxNQUFNLEdBQUcsSUFBSSxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDNUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBQ0QsTUFBTSxtQkFBbUIsR0FBRyxlQUFLLENBQUMsVUFBVSxDQUMxQyxlQUFLLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUM1QixDQUFDO1FBQzdCLElBQUEsZ0JBQU0sRUFBQyxjQUFjLENBQUMsVUFBVSxDQUFDLE1BQU0sS0FBSyxtQkFBbUIsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDN0YsSUFBQSxnQkFBTSxFQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxtQkFBbUIsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUN2RSxNQUFNLGVBQWUsR0FBRyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsQ0FBQztRQUNoRCxNQUFNLGlCQUFpQixHQUFHLGVBQUssQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDNUQsT0FBTyxpQkFBaUIsQ0FBQztJQUMzQixDQUFDO0lBRUQsWUFBWSxDQUNWLG1CQUE0QyxFQUM1QyxZQUFxQztRQUVyQyxNQUFNLFNBQVMsR0FBa0MsRUFBRSxDQUFDO1FBQ3BELEtBQUssTUFBTSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsSUFBSSxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUM1RCxNQUFNLGdCQUFnQixHQUFzQixFQUFFLENBQUM7WUFDL0MsS0FBSyxNQUFNLGFBQWEsSUFBSSxtQkFBbUIsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2dCQUNqRSxNQUFNLENBQUMsY0FBYyxHQUFHLGFBQWEsQ0FBQztnQkFFdEMsTUFBTSxTQUFTLEdBQUcsZUFBSyxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN4RCxNQUFNLG9CQUFvQixHQUFHLGVBQUssQ0FBQyx1QkFBdUIsQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQ2pGLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO29CQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7Z0JBQ3RELENBQUM7Z0JBRUQsTUFBTSxrQkFBa0IsR0FBRyxlQUFLLENBQUMscUJBQXFCLENBQUMsWUFBWSxFQUFFLFNBQVMsQ0FBQyxDQUFDO2dCQUNoRixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztvQkFDeEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO2dCQUNyRCxDQUFDO2dCQUVELE1BQU0sTUFBTSxHQUFHLGVBQUssQ0FBQyx1QkFBdUIsQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQ3hGLE1BQU0sY0FBYyxHQUFtQjtvQkFDckMsT0FBTyxFQUFFLEVBQUUsWUFBWSxFQUFFLG1CQUFXLENBQUMsSUFBSSxFQUFFLEdBQUcsTUFBTSxFQUFFO29CQUN0RCxhQUFhLEVBQUUsTUFBTTtvQkFDckIsVUFBVSxFQUFFLGVBQUssQ0FBQyxXQUFXLENBQUMsb0JBQW9CLENBQUMsU0FBUyxDQUFDO2lCQUM5RCxDQUFDO2dCQUVGLE1BQU0saUJBQWlCLEdBQXNCO29CQUMzQyxPQUFPLEVBQUUsRUFBRSxZQUFZLEVBQUUsbUJBQVcsQ0FBQyxVQUFVLEVBQUUsR0FBRyxTQUFTLEVBQUU7b0JBQy9ELGFBQWEsRUFBRSxNQUFNO29CQUNyQixVQUFVLEVBQUUsZUFBSyxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUM7aUJBQzVELENBQUM7Z0JBRUYsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO29CQUNwQixNQUFNLEVBQUUsY0FBYztvQkFDdEIsVUFBVSxFQUFFLGlCQUFpQjtpQkFDOUIsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztZQUNELFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0NBQ0Y7QUF4RUQsNERBd0VDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2JvclVuc2lnbmVkVHJhbnNhY3Rpb24sXG4gIFJlcXVlc3RUeXBlLFxuICBTaWduYXR1cmVzLFxuICBVcGRhdGVFbnZlbG9wZSxcbiAgUmVhZFN0YXRlRW52ZWxvcGUsXG4gIFJlcXVlc3RFbnZlbG9wZSxcbn0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5cbmV4cG9ydCBjbGFzcyBTaWduZWRUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX3Vuc2lnbmVkX3RyYW5zYWN0aW9uOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfc2lnbmF0dXJlUGF5bG9hZDogU2lnbmF0dXJlc1tdO1xuXG4gIGNvbnN0cnVjdG9yKHVuc2lnbmVkX3RyYW5zYWN0aW9uOiBzdHJpbmcsIHNpZ25hdHVyZXM6IFNpZ25hdHVyZXNbXSkge1xuICAgIHRoaXMuX3Vuc2lnbmVkX3RyYW5zYWN0aW9uID0gdW5zaWduZWRfdHJhbnNhY3Rpb247XG4gICAgdGhpcy5fc2lnbmF0dXJlUGF5bG9hZCA9IHNpZ25hdHVyZXM7XG4gIH1cblxuICBnZXRTaWduVHJhbnNhY3Rpb24oKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb21iaW5lUmVxdWVzdCA9IHtcbiAgICAgIHNpZ25hdHVyZXM6IHRoaXMuX3NpZ25hdHVyZVBheWxvYWQsXG4gICAgICB1bnNpZ25lZF90cmFuc2FjdGlvbjogdGhpcy5fdW5zaWduZWRfdHJhbnNhY3Rpb24sXG4gICAgfTtcbiAgICBjb25zdCBzaWduYXR1cmVNYXAgPSBuZXcgTWFwKCk7XG4gICAgZm9yIChjb25zdCBzaWcgb2YgY29tYmluZVJlcXVlc3Quc2lnbmF0dXJlcykge1xuICAgICAgc2lnbmF0dXJlTWFwLnNldChzaWcuc2lnbmluZ19wYXlsb2FkLmhleF9ieXRlcywgc2lnKTtcbiAgICB9XG4gICAgY29uc3QgdW5zaWduZWRUcmFuc2FjdGlvbiA9IHV0aWxzLmNib3JEZWNvZGUoXG4gICAgICB1dGlscy5ibG9iRnJvbUhleChjb21iaW5lUmVxdWVzdC51bnNpZ25lZF90cmFuc2FjdGlvbilcbiAgICApIGFzIENib3JVbnNpZ25lZFRyYW5zYWN0aW9uO1xuICAgIGFzc2VydChjb21iaW5lUmVxdWVzdC5zaWduYXR1cmVzLmxlbmd0aCA9PT0gdW5zaWduZWRUcmFuc2FjdGlvbi5pbmdyZXNzX2V4cGlyaWVzLmxlbmd0aCAqIDIpO1xuICAgIGFzc2VydCh1bnNpZ25lZFRyYW5zYWN0aW9uLnVwZGF0ZXMubGVuZ3RoID09PSAxKTtcbiAgICBjb25zdCBlbnZlbG9wZXMgPSB0aGlzLmdldEVudmVsb3Blcyh1bnNpZ25lZFRyYW5zYWN0aW9uLCBzaWduYXR1cmVNYXApO1xuICAgIGNvbnN0IGVudmVsb3BSZXF1ZXN0cyA9IHsgcmVxdWVzdHM6IGVudmVsb3BlcyB9O1xuICAgIGNvbnN0IHNpZ25lZFRyYW5zYWN0aW9uID0gdXRpbHMuY2JvckVuY29kZShlbnZlbG9wUmVxdWVzdHMpO1xuICAgIHJldHVybiBzaWduZWRUcmFuc2FjdGlvbjtcbiAgfVxuXG4gIGdldEVudmVsb3BlcyhcbiAgICB1bnNpZ25lZFRyYW5zYWN0aW9uOiBDYm9yVW5zaWduZWRUcmFuc2FjdGlvbixcbiAgICBzaWduYXR1cmVNYXA6IE1hcDxzdHJpbmcsIFNpZ25hdHVyZXM+XG4gICk6IFtzdHJpbmcsIFJlcXVlc3RFbnZlbG9wZVtdXVtdIHtcbiAgICBjb25zdCBlbnZlbG9wZXM6IFtzdHJpbmcsIFJlcXVlc3RFbnZlbG9wZVtdXVtdID0gW107XG4gICAgZm9yIChjb25zdCBbcmVxVHlwZSwgdXBkYXRlXSBvZiB1bnNpZ25lZFRyYW5zYWN0aW9uLnVwZGF0ZXMpIHtcbiAgICAgIGNvbnN0IHJlcXVlc3RFbnZlbG9wZXM6IFJlcXVlc3RFbnZlbG9wZVtdID0gW107XG4gICAgICBmb3IgKGNvbnN0IGluZ3Jlc3NFeHBpcnkgb2YgdW5zaWduZWRUcmFuc2FjdGlvbi5pbmdyZXNzX2V4cGlyaWVzKSB7XG4gICAgICAgIHVwZGF0ZS5pbmdyZXNzX2V4cGlyeSA9IGluZ3Jlc3NFeHBpcnk7XG5cbiAgICAgICAgY29uc3QgcmVhZFN0YXRlID0gdXRpbHMubWFrZVJlYWRTdGF0ZUZyb21VcGRhdGUodXBkYXRlKTtcbiAgICAgICAgY29uc3QgdHJhbnNhY3Rpb25TaWduYXR1cmUgPSB1dGlscy5nZXRUcmFuc2FjdGlvblNpZ25hdHVyZShzaWduYXR1cmVNYXAsIHVwZGF0ZSk7XG4gICAgICAgIGlmICghdHJhbnNhY3Rpb25TaWduYXR1cmUpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RyYW5zYWN0aW9uIHNpZ25hdHVyZSBpcyBpbnZhbGlkJyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCByZWFkU3RhdGVTaWduYXR1cmUgPSB1dGlscy5nZXRSZWFkU3RhdGVTaWduYXR1cmUoc2lnbmF0dXJlTWFwLCByZWFkU3RhdGUpO1xuICAgICAgICBpZiAoIXJlYWRTdGF0ZVNpZ25hdHVyZSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcigncmVhZCBzdGF0ZSBzaWduYXR1cmUgaXMgaW52YWxpZCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcGtfZGVyID0gdXRpbHMuZ2V0UHVibGljS2V5SW5ERVJGb3JtYXQodHJhbnNhY3Rpb25TaWduYXR1cmUucHVibGljX2tleS5oZXhfYnl0ZXMpO1xuICAgICAgICBjb25zdCB1cGRhdGVFbnZlbG9wZTogVXBkYXRlRW52ZWxvcGUgPSB7XG4gICAgICAgICAgY29udGVudDogeyByZXF1ZXN0X3R5cGU6IFJlcXVlc3RUeXBlLkNBTEwsIC4uLnVwZGF0ZSB9LFxuICAgICAgICAgIHNlbmRlcl9wdWJrZXk6IHBrX2RlcixcbiAgICAgICAgICBzZW5kZXJfc2lnOiB1dGlscy5ibG9iRnJvbUhleCh0cmFuc2FjdGlvblNpZ25hdHVyZS5oZXhfYnl0ZXMpLFxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IHJlYWRTdGF0ZUVudmVsb3BlOiBSZWFkU3RhdGVFbnZlbG9wZSA9IHtcbiAgICAgICAgICBjb250ZW50OiB7IHJlcXVlc3RfdHlwZTogUmVxdWVzdFR5cGUuUkVBRF9TVEFURSwgLi4ucmVhZFN0YXRlIH0sXG4gICAgICAgICAgc2VuZGVyX3B1YmtleTogcGtfZGVyLFxuICAgICAgICAgIHNlbmRlcl9zaWc6IHV0aWxzLmJsb2JGcm9tSGV4KHJlYWRTdGF0ZVNpZ25hdHVyZS5oZXhfYnl0ZXMpLFxuICAgICAgICB9O1xuXG4gICAgICAgIHJlcXVlc3RFbnZlbG9wZXMucHVzaCh7XG4gICAgICAgICAgdXBkYXRlOiB1cGRhdGVFbnZlbG9wZSxcbiAgICAgICAgICByZWFkX3N0YXRlOiByZWFkU3RhdGVFbnZlbG9wZSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICBlbnZlbG9wZXMucHVzaChbcmVxVHlwZSwgcmVxdWVzdEVudmVsb3Blc10pO1xuICAgIH1cbiAgICByZXR1cm4gZW52ZWxvcGVzO1xuICB9XG59XG4iXX0=
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmVkVHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9zaWduZWRUcmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbUNBT2lCO0FBQ2pCLG9EQUE0QjtBQUM1QixvREFBNEI7QUFFNUIsTUFBYSx3QkFBd0I7SUFJbkMsWUFBWSxvQkFBNEIsRUFBRSxVQUF3QjtRQUNoRSxJQUFJLENBQUMscUJBQXFCLEdBQUcsb0JBQW9CLENBQUM7UUFDbEQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLFVBQVUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE1BQU0sY0FBYyxHQUFHO1lBQ3JCLFVBQVUsRUFBRSxJQUFJLENBQUMsaUJBQWlCO1lBQ2xDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxxQkFBcUI7U0FDakQsQ0FBQztRQUNGLE1BQU0sWUFBWSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFDL0IsS0FBSyxNQUFNLEdBQUcsSUFBSSxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDNUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBQ0QsTUFBTSxtQkFBbUIsR0FBRyxlQUFLLENBQUMsVUFBVSxDQUMxQyxlQUFLLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUM1QixDQUFDO1FBQzdCLCtEQUErRDtRQUMvRCxJQUFBLGdCQUFNLEVBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDL0MsSUFBQSxnQkFBTSxFQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxtQkFBbUIsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUN2RSxNQUFNLG9CQUFvQixHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQXdCLENBQUM7UUFDakUsTUFBTSxnQkFBZ0IsR0FBRyxvQkFBb0IsQ0FBQyxDQUFDLENBQXNCLENBQUM7UUFDdEUsSUFBQSxnQkFBTSxFQUFDLGdCQUFnQixDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN0QyxNQUFNLGVBQWUsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDLENBQW9CLENBQUM7UUFDL0QsTUFBTSxpQkFBaUIsR0FBRyxlQUFLLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxNQUF3QixDQUFDLENBQUM7UUFDckYsT0FBTyxpQkFBaUIsQ0FBQztJQUMzQixDQUFDO0lBRUQsWUFBWSxDQUNWLG1CQUE0QyxFQUM1QyxZQUFxQztRQUVyQyxNQUFNLFNBQVMsR0FBMEIsRUFBRSxDQUFDO1FBQzVDLEtBQUssTUFBTSxDQUFDLEVBQUUsTUFBTSxDQUFDLElBQUksbUJBQW1CLENBQUMsT0FBb0QsRUFBRSxDQUFDO1lBQ2xHLE1BQU0sZ0JBQWdCLEdBQXNCLEVBQUUsQ0FBQztZQUMvQyxJQUFJLG1CQUFtQixDQUFDLGdCQUFnQixDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDckQsTUFBTSxJQUFJLEtBQUssQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO1lBQzVELENBQUM7WUFDRCxNQUFNLGFBQWEsR0FBRyxtQkFBbUIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM5RCxNQUFNLENBQUMsY0FBYyxHQUFHLGFBQWEsQ0FBQztZQUV0QyxNQUFNLG9CQUFvQixHQUFHLGVBQUssQ0FBQyx1QkFBdUIsQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDakYsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7Z0JBQzFCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQztZQUN0RCxDQUFDO1lBRUQsTUFBTSxNQUFNLEdBQUcsZUFBSyxDQUFDLHVCQUF1QixDQUFDLG9CQUFvQixDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN4RixNQUFNLGNBQWMsR0FBbUI7Z0JBQ3JDLE9BQU8sRUFBRSxFQUFFLFlBQVksRUFBRSxtQkFBVyxDQUFDLElBQUksRUFBRSxHQUFHLE1BQU0sRUFBRTtnQkFDdEQsYUFBYSxFQUFFLE1BQU07Z0JBQ3JCLFVBQVUsRUFBRSxlQUFLLENBQUMsV0FBVyxDQUFDLG9CQUFvQixDQUFDLFNBQVMsQ0FBQzthQUM5RCxDQUFDO1lBRUYsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO2dCQUNwQixNQUFNLEVBQUUsY0FBYzthQUN2QixDQUFDLENBQUM7WUFFSCxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO1FBQ3JDLENBQUM7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0NBQ0Y7QUFsRUQsNERBa0VDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2JvclVuc2lnbmVkVHJhbnNhY3Rpb24sXG4gIFJlcXVlc3RUeXBlLFxuICBTaWduYXR1cmVzLFxuICBVcGRhdGVFbnZlbG9wZSxcbiAgUmVxdWVzdEVudmVsb3BlLFxuICBIdHRwQ2FuaXN0ZXJVcGRhdGUsXG59IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuXG5leHBvcnQgY2xhc3MgU2lnbmVkVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgcHJvdGVjdGVkIF91bnNpZ25lZF90cmFuc2FjdGlvbjogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX3NpZ25hdHVyZVBheWxvYWQ6IFNpZ25hdHVyZXNbXTtcblxuICBjb25zdHJ1Y3Rvcih1bnNpZ25lZF90cmFuc2FjdGlvbjogc3RyaW5nLCBzaWduYXR1cmVzOiBTaWduYXR1cmVzW10pIHtcbiAgICB0aGlzLl91bnNpZ25lZF90cmFuc2FjdGlvbiA9IHVuc2lnbmVkX3RyYW5zYWN0aW9uO1xuICAgIHRoaXMuX3NpZ25hdHVyZVBheWxvYWQgPSBzaWduYXR1cmVzO1xuICB9XG5cbiAgZ2V0U2lnblRyYW5zYWN0aW9uKCk6IHN0cmluZyB7XG4gICAgY29uc3QgY29tYmluZVJlcXVlc3QgPSB7XG4gICAgICBzaWduYXR1cmVzOiB0aGlzLl9zaWduYXR1cmVQYXlsb2FkLFxuICAgICAgdW5zaWduZWRfdHJhbnNhY3Rpb246IHRoaXMuX3Vuc2lnbmVkX3RyYW5zYWN0aW9uLFxuICAgIH07XG4gICAgY29uc3Qgc2lnbmF0dXJlTWFwID0gbmV3IE1hcCgpO1xuICAgIGZvciAoY29uc3Qgc2lnIG9mIGNvbWJpbmVSZXF1ZXN0LnNpZ25hdHVyZXMpIHtcbiAgICAgIHNpZ25hdHVyZU1hcC5zZXQoc2lnLnNpZ25pbmdfcGF5bG9hZC5oZXhfYnl0ZXMsIHNpZyk7XG4gICAgfVxuICAgIGNvbnN0IHVuc2lnbmVkVHJhbnNhY3Rpb24gPSB1dGlscy5jYm9yRGVjb2RlKFxuICAgICAgdXRpbHMuYmxvYkZyb21IZXgoY29tYmluZVJlcXVlc3QudW5zaWduZWRfdHJhbnNhY3Rpb24pXG4gICAgKSBhcyBDYm9yVW5zaWduZWRUcmFuc2FjdGlvbjtcbiAgICAvLyBhdCBwcmVzZW50IHdlIGV4cGVjdCBvbmx5IG9uZSByZXF1ZXN0IHR5cGUgYW5kIG9uZSBzaWduYXR1cmVcbiAgICBhc3NlcnQoY29tYmluZVJlcXVlc3Quc2lnbmF0dXJlcy5sZW5ndGggPT09IDEpO1xuICAgIGFzc2VydCh1bnNpZ25lZFRyYW5zYWN0aW9uLnVwZGF0ZXMubGVuZ3RoID09PSAxKTtcbiAgICBjb25zdCBlbnZlbG9wZXMgPSB0aGlzLmdldEVudmVsb3Blcyh1bnNpZ25lZFRyYW5zYWN0aW9uLCBzaWduYXR1cmVNYXApO1xuICAgIGNvbnN0IHJlcXVlc3RFbnZlbG9wZUFycmF5ID0gZW52ZWxvcGVzWzBdIGFzIFtSZXF1ZXN0RW52ZWxvcGVbXV07XG4gICAgY29uc3QgcmVxdWVzdEVudmVsb3BlcyA9IHJlcXVlc3RFbnZlbG9wZUFycmF5WzBdIGFzIFJlcXVlc3RFbnZlbG9wZVtdO1xuICAgIGFzc2VydChyZXF1ZXN0RW52ZWxvcGVzLmxlbmd0aCA9PT0gMSk7XG4gICAgY29uc3QgcmVxdWVzdEVudmVsb3BlID0gcmVxdWVzdEVudmVsb3Blc1swXSBhcyBSZXF1ZXN0RW52ZWxvcGU7XG4gICAgY29uc3Qgc2lnbmVkVHJhbnNhY3Rpb24gPSB1dGlscy5jYm9yRW5jb2RlKHJlcXVlc3RFbnZlbG9wZS51cGRhdGUgYXMgVXBkYXRlRW52ZWxvcGUpO1xuICAgIHJldHVybiBzaWduZWRUcmFuc2FjdGlvbjtcbiAgfVxuXG4gIGdldEVudmVsb3BlcyhcbiAgICB1bnNpZ25lZFRyYW5zYWN0aW9uOiBDYm9yVW5zaWduZWRUcmFuc2FjdGlvbixcbiAgICBzaWduYXR1cmVNYXA6IE1hcDxzdHJpbmcsIFNpZ25hdHVyZXM+XG4gICk6IFtSZXF1ZXN0RW52ZWxvcGVbXV1bXSB7XG4gICAgY29uc3QgZW52ZWxvcGVzOiBbUmVxdWVzdEVudmVsb3BlW11dW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IFssIHVwZGF0ZV0gb2YgdW5zaWduZWRUcmFuc2FjdGlvbi51cGRhdGVzIGFzIHVua25vd24gYXMgW3N0cmluZywgSHR0cENhbmlzdGVyVXBkYXRlXVtdKSB7XG4gICAgICBjb25zdCByZXF1ZXN0RW52ZWxvcGVzOiBSZXF1ZXN0RW52ZWxvcGVbXSA9IFtdO1xuICAgICAgaWYgKHVuc2lnbmVkVHJhbnNhY3Rpb24uaW5ncmVzc19leHBpcmllcy5sZW5ndGggIT0gMSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2luZ3Jlc3MgZXhwaXJ5IGNhbiBoYXZlIG9ubHkgb25lIGVudHJ5Jyk7XG4gICAgICB9XG4gICAgICBjb25zdCBpbmdyZXNzRXhwaXJ5ID0gdW5zaWduZWRUcmFuc2FjdGlvbi5pbmdyZXNzX2V4cGlyaWVzWzBdO1xuICAgICAgdXBkYXRlLmluZ3Jlc3NfZXhwaXJ5ID0gaW5ncmVzc0V4cGlyeTtcblxuICAgICAgY29uc3QgdHJhbnNhY3Rpb25TaWduYXR1cmUgPSB1dGlscy5nZXRUcmFuc2FjdGlvblNpZ25hdHVyZShzaWduYXR1cmVNYXAsIHVwZGF0ZSk7XG4gICAgICBpZiAoIXRyYW5zYWN0aW9uU2lnbmF0dXJlKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVHJhbnNhY3Rpb24gc2lnbmF0dXJlIGlzIGludmFsaWQnKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcGtfZGVyID0gdXRpbHMuZ2V0UHVibGljS2V5SW5ERVJGb3JtYXQodHJhbnNhY3Rpb25TaWduYXR1cmUucHVibGljX2tleS5oZXhfYnl0ZXMpO1xuICAgICAgY29uc3QgdXBkYXRlRW52ZWxvcGU6IFVwZGF0ZUVudmVsb3BlID0ge1xuICAgICAgICBjb250ZW50OiB7IHJlcXVlc3RfdHlwZTogUmVxdWVzdFR5cGUuQ0FMTCwgLi4udXBkYXRlIH0sXG4gICAgICAgIHNlbmRlcl9wdWJrZXk6IHBrX2RlcixcbiAgICAgICAgc2VuZGVyX3NpZzogdXRpbHMuYmxvYkZyb21IZXgodHJhbnNhY3Rpb25TaWduYXR1cmUuaGV4X2J5dGVzKSxcbiAgICAgIH07XG5cbiAgICAgIHJlcXVlc3RFbnZlbG9wZXMucHVzaCh7XG4gICAgICAgIHVwZGF0ZTogdXBkYXRlRW52ZWxvcGUsXG4gICAgICB9KTtcblxuICAgICAgZW52ZWxvcGVzLnB1c2goW3JlcXVlc3RFbnZlbG9wZXNdKTtcbiAgICB9XG4gICAgcmV0dXJuIGVudmVsb3BlcztcbiAgfVxufVxuIl19
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/lib/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,eAAe,EAKhB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,YAAY,EAEZ,UAAU,EACV,MAAM,EACN,yBAAyB,EAKzB,iBAAiB,EAMlB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,qBAAa,WAAY,SAAQ,eAAe;IAC9C,SAAS,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;IAClD,SAAS,CAAC,eAAe,EAAE,cAAc,CAAC;IAC1C,SAAS,CAAC,aAAa,EAAE,YAAY,CAAC;IACtC,SAAS,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACrC,SAAS,CAAC,iBAAiB,EAAE,UAAU,EAAE,CAAC;IAC1C,SAAS,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACzD,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;gBAEZ,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK;IAK3D,IAAI,kBAAkB,IAAI,kBAAkB,CAE3C;IAED,IAAI,kBAAkB,CAAC,kBAAkB,EAAE,kBAAkB,EAE5D;IAED,IAAI,cAAc,IAAI,cAAc,CAEnC;IAED,IAAI,cAAc,CAAC,cAAc,EAAE,cAAc,EAEhD;IAED,IAAI,mBAAmB,IAAI,MAAM,CAEhC;IAED,IAAI,gBAAgB,IAAI,UAAU,EAAE,CAEnC;IAED,IAAI,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAEtC;IAED,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAED,IAAI,YAAY,CAAC,YAAY,EAAE,YAAY,EAE1C;IAED,IAAI,YAAY,IAAI,YAAY,CAE/B;IAED,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,EAE5C;IAED,IAAI,gBAAgB,IAAI,MAAM,GAAG,MAAM,GAAG,SAAS,CAElD;IAEK,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA4B/D,YAAY,CAAC,iBAAiB,EAAE,UAAU,EAAE,GAAG,IAAI;IAUnD,kBAAkB;IAClB,MAAM,IAAI,MAAM;IAqBhB,kBAAkB;IAClB,kBAAkB,IAAI,yBAAyB;IAwB/C;;;;;OAKG;IACH,0BAA0B,CAAC,iBAAiB,EAAE,yBAAyB,GAAG,yBAAyB;IAcnG,kBAAkB;IAClB,iBAAiB,IAAI,MAAM;IAO3B,SAAS,IAAI,MAAM;IAWb,wBAAwB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;YASpE,8BAA8B;IA+DtC,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAShF,kBAAkB;IAClB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;CAG/B"}
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/lib/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,eAAe,EAKhB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,YAAY,EAEZ,UAAU,EACV,MAAM,EACN,yBAAyB,EAGzB,iBAAiB,EAOlB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,qBAAa,WAAY,SAAQ,eAAe;IAC9C,SAAS,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;IAClD,SAAS,CAAC,eAAe,EAAE,cAAc,CAAC;IAC1C,SAAS,CAAC,aAAa,EAAE,YAAY,CAAC;IACtC,SAAS,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACrC,SAAS,CAAC,iBAAiB,EAAE,UAAU,EAAE,CAAC;IAC1C,SAAS,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACzD,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;gBAEZ,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK;IAK3D,IAAI,kBAAkB,IAAI,kBAAkB,CAE3C;IAED,IAAI,kBAAkB,CAAC,kBAAkB,EAAE,kBAAkB,EAE5D;IAED,IAAI,cAAc,IAAI,cAAc,CAEnC;IAED,IAAI,cAAc,CAAC,cAAc,EAAE,cAAc,EAEhD;IAED,IAAI,mBAAmB,IAAI,MAAM,CAEhC;IAED,IAAI,gBAAgB,IAAI,UAAU,EAAE,CAEnC;IAED,IAAI,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAEtC;IAED,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAED,IAAI,YAAY,CAAC,YAAY,EAAE,YAAY,EAE1C;IAED,IAAI,YAAY,IAAI,YAAY,CAE/B;IAED,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,EAE5C;IAED,IAAI,gBAAgB,IAAI,MAAM,GAAG,MAAM,GAAG,SAAS,CAElD;IAEK,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B/D,YAAY,CAAC,iBAAiB,EAAE,UAAU,EAAE,GAAG,IAAI;IAUnD,kBAAkB;IAClB,MAAM,IAAI,MAAM;IAyBhB,kBAAkB;IAClB,kBAAkB,IAAI,yBAAyB;IAwB/C;;;;;OAKG;IACH,0BAA0B,CAAC,iBAAiB,EAAE,yBAAyB,GAAG,yBAAyB;IAcnG,kBAAkB;IAClB,iBAAiB,IAAI,MAAM;IAO3B,SAAS,IAAI,MAAM;IAIb,wBAAwB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;YASpE,8BAA8B;IAiEtC,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAMhF,kBAAkB;IAClB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;CAG/B"}
@@ -58,10 +58,12 @@ class Transaction extends sdk_core_1.BaseTransaction {
58
58
  amount: parsedTx.operations[1].amount.value,
59
59
  fee: parsedTx.operations[2].amount.value,
60
60
  senderPublicKeyHex: senderPublicKeyHex,
61
- memo: parsedTx.metadata.memo,
62
61
  transactionType: transactionType,
63
62
  expiryTime: Number(parsedTx.metadata.created_at_time + (iface_1.MAX_INGRESS_TTL - iface_1.PERMITTED_DRIFT)),
64
63
  };
64
+ if (parsedTx.metadata.memo !== undefined) {
65
+ this._icpTransactionData.memo = parsedTx.metadata.memo;
66
+ }
65
67
  this._utils.validateRawTransaction(this._icpTransactionData);
66
68
  break;
67
69
  default:
@@ -88,7 +90,7 @@ class Transaction extends sdk_core_1.BaseTransaction {
88
90
  }
89
91
  switch (this._icpTransactionData.transactionType) {
90
92
  case iface_1.OperationType.TRANSACTION:
91
- return {
93
+ const txData = {
92
94
  id: this._id,
93
95
  sender: this._icpTransactionData.senderAddress,
94
96
  senderPublicKey: this._icpTransactionData.senderPublicKeyHex,
@@ -98,8 +100,12 @@ class Transaction extends sdk_core_1.BaseTransaction {
98
100
  expirationTime: this._icpTransactionData.expiryTime,
99
101
  type: sdk_core_1.TransactionType.Send,
100
102
  };
103
+ if (this._icpTransactionData.memo !== undefined) {
104
+ txData.memo = this._icpTransactionData.memo;
105
+ }
106
+ return txData;
101
107
  default:
102
- throw new Error('Unsupported transaction type');
108
+ throw new Error(`Unsupported transaction type: ${this._icpTransactionData.transactionType}`);
103
109
  }
104
110
  }
105
111
  /** @inheritDoc */
@@ -150,14 +156,7 @@ class Transaction extends sdk_core_1.BaseTransaction {
150
156
  return this.serialize();
151
157
  }
152
158
  serialize() {
153
- const transaction = {
154
- signed_transaction: this._signedTransaction,
155
- network_identifier: {
156
- blockchain: this._coinConfig.fullName,
157
- network: iface_1.Network.ID,
158
- },
159
- };
160
- return JSON.stringify(transaction);
159
+ return this._signedTransaction;
161
160
  }
162
161
  async parseUnsignedTransaction(rawTransaction) {
163
162
  const unsignedTransaction = this._utils.cborDecode(this._utils.blobFromHex(rawTransaction));
@@ -212,19 +211,18 @@ class Transaction extends sdk_core_1.BaseTransaction {
212
211
  operations: [senderOperation, receiverOperation, feeOperation],
213
212
  metadata: {
214
213
  created_at_time: args.createdAtTime.timestampNanos,
215
- memo: Number(args.memo.memo),
216
214
  },
217
215
  account_identifier_signers: accountIdentifierSigners,
218
216
  };
217
+ if (args.memo !== undefined) {
218
+ parsedTxn.metadata.memo = Number(args.memo.memo);
219
+ }
219
220
  this.createdTimestamp = args.createdAtTime.timestampNanos;
220
221
  return parsedTxn;
221
222
  }
222
223
  async parseSignedTransaction(rawTransaction) {
223
224
  const signedTransaction = this._utils.cborDecode(this._utils.blobFromHex(rawTransaction));
224
- const signedTransactionTyped = signedTransaction;
225
- const envelopes = signedTransactionTyped.requests[0][1];
226
- const updates = envelopes.map((envelope) => envelope.update);
227
- const httpCanisterUpdate = updates[0].content;
225
+ const httpCanisterUpdate = signedTransaction.content;
228
226
  return await this.getParsedTransactionFromUpdate(httpCanisterUpdate, true);
229
227
  }
230
228
  /** @inheritdoc */
@@ -233,4 +231,4 @@ class Transaction extends sdk_core_1.BaseTransaction {
233
231
  }
234
232
  }
235
233
  exports.Transaction = Transaction;
236
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDhDQU95QjtBQUV6QixtQ0FrQmlCO0FBR2pCLE1BQWEsV0FBWSxTQUFRLDBCQUFlO0lBUzlDLFlBQVksV0FBaUMsRUFBRSxLQUFZO1FBQ3pELEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQUksa0JBQWtCLENBQUMsa0JBQXNDO1FBQzNELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxrQkFBa0IsQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxjQUFjLENBQUMsY0FBOEI7UUFDL0MsSUFBSSxDQUFDLGVBQWUsR0FBRyxjQUFjLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQztJQUNqRCxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksaUJBQWlCLENBQUMsU0FBaUI7UUFDckMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFNBQVMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBSSxpQkFBaUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksWUFBWSxDQUFDLFlBQTBCO1FBQ3pDLElBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDO0lBQ3BDLENBQUM7SUFF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QUEvUUQsa0NBK1FDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmFzZUtleSxcbiAgQmFzZVRyYW5zYWN0aW9uLFxuICBUcmFuc2FjdGlvblJlY2lwaWVudCxcbiAgVHJhbnNhY3Rpb25UeXBlLFxuICBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcixcbiAgVHJhbnNhY3Rpb25UeXBlIGFzIEJpdEdvVHJhbnNhY3Rpb25UeXBlLFxufSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcbmltcG9ydCB7XG4gIEljcFRyYW5zYWN0aW9uLFxuICBJY3BUcmFuc2FjdGlvbkRhdGEsXG4gIFBheWxvYWRzRGF0YSxcbiAgT3BlcmF0aW9uVHlwZSxcbiAgU2lnbmF0dXJlcyxcbiAgVHhEYXRhLFxuICBJY3BUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLFxuICBTaWduZWRUcmFuc2FjdGlvblJlcXVlc3QsXG4gIE5ldHdvcmssXG4gIENib3JVbnNpZ25lZFRyYW5zYWN0aW9uLFxuICBIdHRwQ2FuaXN0ZXJVcGRhdGUsXG4gIFBhcnNlZFRyYW5zYWN0aW9uLFxuICBJY3BPcGVyYXRpb24sXG4gIEljcEFjY291bnQsXG4gIE1BWF9JTkdSRVNTX1RUTCxcbiAgUEVSTUlUVEVEX0RSSUZULFxuICBSYXdUcmFuc2FjdGlvbixcbn0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBVdGlscyB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb24ge1xuICBwcm90ZWN0ZWQgX2ljcFRyYW5zYWN0aW9uRGF0YTogSWNwVHJhbnNhY3Rpb25EYXRhO1xuICBwcm90ZWN0ZWQgX2ljcFRyYW5zYWN0aW9uOiBJY3BUcmFuc2FjdGlvbjtcbiAgcHJvdGVjdGVkIF9wYXlsb2Fkc0RhdGE6IFBheWxvYWRzRGF0YTtcbiAgcHJvdGVjdGVkIF9zaWduZWRUcmFuc2FjdGlvbjogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX3NpZ25hdHVyZVBheWxvYWQ6IFNpZ25hdHVyZXNbXTtcbiAgcHJvdGVjdGVkIF9jcmVhdGVkVGltZXN0YW1wOiBudW1iZXIgfCBiaWdpbnQgfCB1bmRlZmluZWQ7XG4gIHByb3RlY3RlZCBfdXRpbHM6IFV0aWxzO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPiwgdXRpbHM6IFV0aWxzKSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3V0aWxzID0gdXRpbHM7XG4gIH1cblxuICBnZXQgaWNwVHJhbnNhY3Rpb25EYXRhKCk6IEljcFRyYW5zYWN0aW9uRGF0YSB7XG4gICAgcmV0dXJuIHRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YTtcbiAgfVxuXG4gIHNldCBpY3BUcmFuc2FjdGlvbkRhdGEoaWNwVHJhbnNhY3Rpb25EYXRhOiBJY3BUcmFuc2FjdGlvbkRhdGEpIHtcbiAgICB0aGlzLl9pY3BUcmFuc2FjdGlvbkRhdGEgPSBpY3BUcmFuc2FjdGlvbkRhdGE7XG4gIH1cblxuICBnZXQgaWNwVHJhbnNhY3Rpb24oKTogSWNwVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLl9pY3BUcmFuc2FjdGlvbjtcbiAgfVxuXG4gIHNldCBpY3BUcmFuc2FjdGlvbihpY3BUcmFuc2FjdGlvbjogSWNwVHJhbnNhY3Rpb24pIHtcbiAgICB0aGlzLl9pY3BUcmFuc2FjdGlvbiA9IGljcFRyYW5zYWN0aW9uO1xuICB9XG5cbiAgZ2V0IHVuc2lnbmVkVHJhbnNhY3Rpb24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fcGF5bG9hZHNEYXRhLnVuc2lnbmVkX3RyYW5zYWN0aW9uO1xuICB9XG5cbiAgZ2V0IHNpZ25hdHVyZVBheWxvYWQoKTogU2lnbmF0dXJlc1tdIHtcbiAgICByZXR1cm4gdGhpcy5fc2lnbmF0dXJlUGF5bG9hZDtcbiAgfVxuXG4gIHNldCBzaWduZWRUcmFuc2FjdGlvbihzaWduYXR1cmU6IHN0cmluZykge1xuICAgIHRoaXMuX3NpZ25lZFRyYW5zYWN0aW9uID0gc2lnbmF0dXJlO1xuICB9XG5cbiAgZ2V0IHNpZ25lZFRyYW5zYWN0aW9uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3NpZ25lZFRyYW5zYWN0aW9uO1xuICB9XG5cbiAgc2V0IHBheWxvYWRzRGF0YShwYXlsb2Fkc0RhdGE6IFBheWxvYWRzRGF0YSkge1xuICAgIHRoaXMuX3BheWxvYWRzRGF0YSA9IHBheWxvYWRzRGF0YTtcbiAgfVxuXG4gIGdldCBwYXlsb2Fkc0RhdGEoKTogUGF5bG9hZHNEYXRhIHtcbiAgICByZXR1cm4gdGhpcy5fcGF5bG9hZHNEYXRhO1xuICB9XG5cbiAgc2V0IGNyZWF0ZWRUaW1lc3RhbXAoY3JlYXRlZFRpbWVzdGFtcDogbnVtYmVyKSB7XG4gICAgdGhpcy5fY3JlYXRlZFRpbWVzdGFtcCA9IGNyZWF0ZWRUaW1lc3RhbXA7XG4gIH1cblxuICBnZXQgY3JlYXRlZFRpbWVzdGFtcCgpOiBudW1iZXIgfCBiaWdpbnQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9jcmVhdGVkVGltZXN0YW1wO1xuICB9XG5cbiAgYXN5bmMgZnJvbVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QganNvblJhd1RyYW5zYWN0aW9uOiBSYXdUcmFuc2FjdGlvbiA9IEpTT04ucGFyc2UocmF3VHJhbnNhY3Rpb24pO1xuICAgICAgY29uc3QgcGFyc2VkVHggPSBhd2FpdCB0aGlzLnBhcnNlVW5zaWduZWRUcmFuc2FjdGlvbihqc29uUmF3VHJhbnNhY3Rpb24uc2VyaWFsaXplZFR4SGV4KTtcbiAgICAgIGNvbnN0IHNlbmRlclB1YmxpY0tleUhleCA9IGpzb25SYXdUcmFuc2FjdGlvbi5wdWJsaWNLZXk7XG4gICAgICBjb25zdCB0cmFuc2FjdGlvblR5cGUgPSBwYXJzZWRUeC5vcGVyYXRpb25zWzBdLnR5cGU7XG4gICAgICBzd2l0Y2ggKHRyYW5zYWN0aW9uVHlwZSkge1xuICAgICAgICBjYXNlIE9wZXJhdGlvblR5cGUuVFJBTlNBQ1RJT046XG4gICAgICAgICAgdGhpcy5faWNwVHJhbnNhY3Rpb25EYXRhID0ge1xuICAgICAgICAgICAgc2VuZGVyQWRkcmVzczogcGFyc2VkVHgub3BlcmF0aW9uc1swXS5hY2NvdW50LmFkZHJlc3MsXG4gICAgICAgICAgICByZWNlaXZlckFkZHJlc3M6IHBhcnNlZFR4Lm9wZXJhdGlvbnNbMV0uYWNjb3VudC5hZGRyZXNzLFxuICAgICAgICAgICAgYW1vdW50OiBwYXJzZWRUeC5vcGVyYXRpb25zWzFdLmFtb3VudC52YWx1ZSxcbiAgICAgICAgICAgIGZlZTogcGFyc2VkVHgub3BlcmF0aW9uc1syXS5hbW91bnQudmFsdWUsXG4gICAgICAgICAgICBzZW5kZXJQdWJsaWNLZXlIZXg6IHNlbmRlclB1YmxpY0tleUhleCxcbiAgICAgICAgICAgIG1lbW86IHBhcnNlZFR4Lm1ldGFkYXRhLm1lbW8sXG4gICAgICAgICAgICB0cmFuc2FjdGlvblR5cGU6IHRyYW5zYWN0aW9uVHlwZSxcbiAgICAgICAgICAgIGV4cGlyeVRpbWU6IE51bWJlcihwYXJzZWRUeC5tZXRhZGF0YS5jcmVhdGVkX2F0X3RpbWUgKyAoTUFYX0lOR1JFU1NfVFRMIC0gUEVSTUlUVEVEX0RSSUZUKSksXG4gICAgICAgICAgfTtcbiAgICAgICAgICB0aGlzLl91dGlscy52YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uIHR5cGUnKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHJhdyB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgfVxuXG4gIGFkZFNpZ25hdHVyZShzaWduYXR1cmVQYXlsb2FkczogU2lnbmF0dXJlc1tdKTogdm9pZCB7XG4gICAgaWYgKCFzaWduYXR1cmVQYXlsb2Fkcykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdzaWduYXR1cmVzIG5vdCBwcm92aWRlZCcpO1xuICAgIH1cbiAgICBpZiAoc2lnbmF0dXJlUGF5bG9hZHMubGVuZ3RoICE9PSB0aGlzLl9wYXlsb2Fkc0RhdGEucGF5bG9hZHMubGVuZ3RoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3NpZ25hdHVyZXMgbGVuZ3RoIGlzIG5vdCBtYXRjaGluZycpO1xuICAgIH1cbiAgICB0aGlzLl9zaWduYXR1cmVQYXlsb2FkID0gc2lnbmF0dXJlUGF5bG9hZHM7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9Kc29uKCk6IFR4RGF0YSB7XG4gICAgaWYgKCF0aGlzLl9pY3BUcmFuc2FjdGlvbkRhdGEpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignRW1wdHkgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gICAgc3dpdGNoICh0aGlzLl9pY3BUcmFuc2FjdGlvbkRhdGEudHJhbnNhY3Rpb25UeXBlKSB7XG4gICAgICBjYXNlIE9wZXJhdGlvblR5cGUuVFJBTlNBQ1RJT046XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgaWQ6IHRoaXMuX2lkLFxuICAgICAgICAgIHNlbmRlcjogdGhpcy5faWNwVHJhbnNhY3Rpb25EYXRhLnNlbmRlckFkZHJlc3MsXG4gICAgICAgICAgc2VuZGVyUHVibGljS2V5OiB0aGlzLl9pY3BUcmFuc2FjdGlvbkRhdGEuc2VuZGVyUHVibGljS2V5SGV4LFxuICAgICAgICAgIHJlY2lwaWVudDogdGhpcy5faWNwVHJhbnNhY3Rpb25EYXRhLnJlY2VpdmVyQWRkcmVzcyxcbiAgICAgICAgICBtZW1vOiB0aGlzLl9pY3BUcmFuc2FjdGlvbkRhdGEubWVtbyxcbiAgICAgICAgICBmZWVBbW91bnQ6IHRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YS5mZWUsXG4gICAgICAgICAgZXhwaXJhdGlvblRpbWU6IHRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YS5leHBpcnlUaW1lLFxuICAgICAgICAgIHR5cGU6IEJpdEdvVHJhbnNhY3Rpb25UeXBlLlNlbmQsXG4gICAgICAgIH07XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vuc3VwcG9ydGVkIHRyYW5zYWN0aW9uIHR5cGUnKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXREb2MgKi9cbiAgZXhwbGFpblRyYW5zYWN0aW9uKCk6IEljcFRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMudG9Kc29uKCk7XG4gICAgY29uc3QgZGlzcGxheU9yZGVyID0gWydpZCcsICdvdXRwdXRBbW91bnQnLCAnY2hhbmdlQW1vdW50JywgJ291dHB1dHMnLCAnY2hhbmdlT3V0cHV0cycsICdmZWUnXTtcbiAgICBjb25zdCBvdXRwdXRzOiBUcmFuc2FjdGlvblJlY2lwaWVudFtdID0gW107XG5cbiAgICBjb25zdCBleHBsYW5hdGlvblJlc3VsdCA9IHtcbiAgICAgIGRpc3BsYXlPcmRlcixcbiAgICAgIGlkOiB0aGlzLmlkLFxuICAgICAgb3V0cHV0cyxcbiAgICAgIG91dHB1dEFtb3VudDogJzAnLFxuICAgICAgZmVlOiB7IGZlZTogJzAnIH0sXG4gICAgICB0eXBlOiByZXN1bHQudHlwZSxcbiAgICAgIGNoYW5nZU91dHB1dHM6IFtdLCAvLyBhY2NvdW50IGJhc2VkIGRvZXMgbm90IHVzZSBjaGFuZ2Ugb3V0cHV0c1xuICAgICAgY2hhbmdlQW1vdW50OiAnMCcsIC8vIGFjY291bnQgYmFzZWQgZG9lcyBub3QgbWFrZSBjaGFuZ2VcbiAgICB9O1xuXG4gICAgc3dpdGNoIChleHBsYW5hdGlvblJlc3VsdC50eXBlKSB7XG4gICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TZW5kOlxuICAgICAgICByZXR1cm4gdGhpcy5leHBsYWluVHJhbnNmZXJUcmFuc2FjdGlvbihleHBsYW5hdGlvblJlc3VsdCk7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ1RyYW5zYWN0aW9uIHR5cGUgbm90IHN1cHBvcnRlZCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBFeHBsYWlucyBhIHRyYW5zZmVyIHRyYW5zYWN0aW9uIGJ5IHByb3ZpZGluZyBkZXRhaWxzIGFib3V0IHRoZSByZWNpcGllbnRzIGFuZCB0aGUgdG90YWwgb3V0cHV0IGFtb3VudC5cbiAgICpcbiAgICogQHBhcmFtIHtJY3BUcmFuc2FjdGlvbkV4cGxhbmF0aW9ufSBleHBsYW5hdGlvblJlc3VsdCAtIFRoZSBpbml0aWFsIGV4cGxhbmF0aW9uIHJlc3VsdCB0byBiZSBleHRlbmRlZC5cbiAgICogQHJldHVybnMge0ljcFRyYW5zYWN0aW9uRXhwbGFuYXRpb259IFRoZSBleHRlbmRlZCBleHBsYW5hdGlvbiByZXN1bHQgaW5jbHVkaW5nIHRoZSBvdXRwdXQgYW1vdW50IGFuZCByZWNpcGllbnRzLlxuICAgKi9cbiAgZXhwbGFpblRyYW5zZmVyVHJhbnNhY3Rpb24oZXhwbGFuYXRpb25SZXN1bHQ6IEljcFRyYW5zYWN0aW9uRXhwbGFuYXRpb24pOiBJY3BUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgICBleHBsYW5hdGlvblJlc3VsdC5mZWUgPSB7IGZlZTogdGhpcy5pY3BUcmFuc2FjdGlvbkRhdGEuZmVlIH07XG4gICAgY29uc3QgcmVjaXBpZW50cyA9IHRoaXMuX3V0aWxzLmdldFJlY2lwaWVudHModGhpcy5pY3BUcmFuc2FjdGlvbkRhdGEpO1xuICAgIGNvbnN0IG91dHB1dHM6IFRyYW5zYWN0aW9uUmVjaXBpZW50W10gPSBbcmVjaXBpZW50c107XG4gICAgY29uc3Qgb3V0cHV0QW1vdW50Qk4gPSByZWNpcGllbnRzLmFtb3VudDtcbiAgICBjb25zdCBvdXRwdXRBbW91bnQgPSBvdXRwdXRBbW91bnRCTi50b1N0cmluZygpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLmV4cGxhbmF0aW9uUmVzdWx0LFxuICAgICAgb3V0cHV0QW1vdW50LFxuICAgICAgb3V0cHV0cyxcbiAgICB9O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHRvQnJvYWRjYXN0Rm9ybWF0KCk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLl9zaWduZWRUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zZXJpYWxpemUoKTtcbiAgfVxuXG4gIHNlcmlhbGl6ZSgpOiBzdHJpbmcge1xuICAgIGNvbnN0IHRyYW5zYWN0aW9uOiBTaWduZWRUcmFuc2FjdGlvblJlcXVlc3QgPSB7XG4gICAgICBzaWduZWRfdHJhbnNhY3Rpb246IHRoaXMuX3NpZ25lZFRyYW5zYWN0aW9uLFxuICAgICAgbmV0d29ya19pZGVudGlmaWVyOiB7XG4gICAgICAgIGJsb2NrY2hhaW46IHRoaXMuX2NvaW5Db25maWcuZnVsbE5hbWUsXG4gICAgICAgIG5ldHdvcms6IE5ldHdvcmsuSUQsXG4gICAgICB9LFxuICAgIH07XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRyYW5zYWN0aW9uKTtcbiAgfVxuXG4gIGFzeW5jIHBhcnNlVW5zaWduZWRUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogUHJvbWlzZTxQYXJzZWRUcmFuc2FjdGlvbj4ge1xuICAgIGNvbnN0IHVuc2lnbmVkVHJhbnNhY3Rpb24gPSB0aGlzLl91dGlscy5jYm9yRGVjb2RlKFxuICAgICAgdGhpcy5fdXRpbHMuYmxvYkZyb21IZXgocmF3VHJhbnNhY3Rpb24pXG4gICAgKSBhcyBDYm9yVW5zaWduZWRUcmFuc2FjdGlvbjtcbiAgICBjb25zdCB1cGRhdGUgPSB1bnNpZ25lZFRyYW5zYWN0aW9uLnVwZGF0ZXNbMF07XG4gICAgY29uc3QgaHR0cENhbmlzdGVyVXBkYXRlID0gdXBkYXRlWzFdIGFzIEh0dHBDYW5pc3RlclVwZGF0ZTtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5nZXRQYXJzZWRUcmFuc2FjdGlvbkZyb21VcGRhdGUoaHR0cENhbmlzdGVyVXBkYXRlLCBmYWxzZSk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGdldFBhcnNlZFRyYW5zYWN0aW9uRnJvbVVwZGF0ZShcbiAgICBodHRwQ2FuaXN0ZXJVcGRhdGU6IEh0dHBDYW5pc3RlclVwZGF0ZSxcbiAgICBpc1NpZ25lZDogYm9vbGVhblxuICApOiBQcm9taXNlPFBhcnNlZFRyYW5zYWN0aW9uPiB7XG4gICAgY29uc3Qgc2VuZGVyUHJpbmNpcGFsID0gdGhpcy5fdXRpbHMuY29udmVydFNlbmRlckJsb2JUb1ByaW5jaXBhbChodHRwQ2FuaXN0ZXJVcGRhdGUuc2VuZGVyKTtcbiAgICBjb25zdCBBQ0NPVU5UX0lEX1BSRUZJWCA9IHRoaXMuX3V0aWxzLmdldEFjY291bnRJZFByZWZpeCgpO1xuICAgIGNvbnN0IHN1YkFjY291bnQgPSBuZXcgVWludDhBcnJheSgzMik7XG4gICAgY29uc3Qgc2VuZGVyQWNjb3VudCA9IHRoaXMuX3V0aWxzLmdldEFjY291bnRJZEZyb21QcmluY2lwYWxCeXRlcyhcbiAgICAgIEFDQ09VTlRfSURfUFJFRklYLFxuICAgICAgQnVmZmVyLmZyb20oc2VuZGVyUHJpbmNpcGFsLmJ1ZmZlciksXG4gICAgICBzdWJBY2NvdW50XG4gICAgKTtcbiAgICBjb25zdCBhcmdzID0gYXdhaXQgdGhpcy5fdXRpbHMuZnJvbUFyZ3MoaHR0cENhbmlzdGVyVXBkYXRlLmFyZyk7XG4gICAgY29uc3Qgc2VuZGVyT3BlcmF0aW9uOiBJY3BPcGVyYXRpb24gPSB7XG4gICAgICB0eXBlOiBPcGVyYXRpb25UeXBlLlRSQU5TQUNUSU9OLFxuICAgICAgYWNjb3VudDogeyBhZGRyZXNzOiBzZW5kZXJBY2NvdW50IH0sXG4gICAgICBhbW91bnQ6IHtcbiAgICAgICAgdmFsdWU6IGAtJHthcmdzLnBheW1lbnQucmVjZWl2ZXJHZXRzLmU4cy50b1N0cmluZygpfWAsXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgc3ltYm9sOiB0aGlzLl9jb2luQ29uZmlnLmZhbWlseSxcbiAgICAgICAgICBkZWNpbWFsczogdGhpcy5fY29pbkNvbmZpZy5kZWNpbWFsUGxhY2VzLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuICAgIGNvbnN0IHJlY2VpdmVyT3BlcmF0aW9uOiBJY3BPcGVyYXRpb24gPSB7XG4gICAgICB0eXBlOiBPcGVyYXRpb25UeXBlLlRSQU5TQUNUSU9OLFxuICAgICAgYWNjb3VudDogeyBhZGRyZXNzOiBhcmdzLnRvLmhhc2gudG9TdHJpbmcoJ2hleCcpIH0sXG4gICAgICBhbW91bnQ6IHtcbiAgICAgICAgdmFsdWU6IGFyZ3MucGF5bWVudC5yZWNlaXZlckdldHMuZThzLnRvU3RyaW5nKCksXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgc3ltYm9sOiB0aGlzLl9jb2luQ29uZmlnLmZhbWlseSxcbiAgICAgICAgICBkZWNpbWFsczogdGhpcy5fY29pbkNvbmZpZy5kZWNpbWFsUGxhY2VzLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgY29uc3QgZmVlT3BlcmF0aW9uOiBJY3BPcGVyYXRpb24gPSB7XG4gICAgICB0eXBlOiBPcGVyYXRpb25UeXBlLkZFRSxcbiAgICAgIGFjY291bnQ6IHsgYWRkcmVzczogc2VuZGVyQWNjb3VudCB9LFxuICAgICAgYW1vdW50OiB7XG4gICAgICAgIHZhbHVlOiBgLSR7YXJncy5tYXhGZWUuZThzLnRvU3RyaW5nKCl9YCxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICBzeW1ib2w6IHRoaXMuX2NvaW5Db25maWcuZmFtaWx5LFxuICAgICAgICAgIGRlY2ltYWxzOiB0aGlzLl9jb2luQ29uZmlnLmRlY2ltYWxQbGFjZXMsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG4gICAgY29uc3QgYWNjb3VudElkZW50aWZpZXJTaWduZXJzOiBJY3BBY2NvdW50W10gPSBbXTtcbiAgICBpZiAoaXNTaWduZWQpIHtcbiAgICAgIGFjY291bnRJZGVudGlmaWVyU2lnbmVycy5wdXNoKHsgYWRkcmVzczogc2VuZGVyQWNjb3VudCB9KTtcbiAgICB9XG4gICAgY29uc3QgcGFyc2VkVHhuOiBQYXJzZWRUcmFuc2FjdGlvbiA9IHtcbiAgICAgIG9wZXJhdGlvbnM6IFtzZW5kZXJPcGVyYXRpb24sIHJlY2VpdmVyT3BlcmF0aW9uLCBmZWVPcGVyYXRpb25dLFxuICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgY3JlYXRlZF9hdF90aW1lOiBhcmdzLmNyZWF0ZWRBdFRpbWUudGltZXN0YW1wTmFub3MsXG4gICAgICAgIG1lbW86IE51bWJlcihhcmdzLm1lbW8ubWVtbyksXG4gICAgICB9LFxuICAgICAgYWNjb3VudF9pZGVudGlmaWVyX3NpZ25lcnM6IGFjY291bnRJZGVudGlmaWVyU2lnbmVycyxcbiAgICB9O1xuICAgIHRoaXMuY3JlYXRlZFRpbWVzdGFtcCA9IGFyZ3MuY3JlYXRlZEF0VGltZS50aW1lc3RhbXBOYW5vcztcbiAgICByZXR1cm4gcGFyc2VkVHhuO1xuICB9XG5cbiAgYXN5bmMgcGFyc2VTaWduZWRUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogUHJvbWlzZTxQYXJzZWRUcmFuc2FjdGlvbj4ge1xuICAgIGNvbnN0IHNpZ25lZFRyYW5zYWN0aW9uID0gdGhpcy5fdXRpbHMuY2JvckRlY29kZSh0aGlzLl91dGlscy5ibG9iRnJvbUhleChyYXdUcmFuc2FjdGlvbikpO1xuICAgIGNvbnN0IHNpZ25lZFRyYW5zYWN0aW9uVHlwZWQgPSBzaWduZWRUcmFuc2FjdGlvbiBhcyB7IHJlcXVlc3RzOiBhbnlbXSB9O1xuICAgIGNvbnN0IGVudmVsb3BlcyA9IHNpZ25lZFRyYW5zYWN0aW9uVHlwZWQucmVxdWVzdHNbMF1bMV07XG4gICAgY29uc3QgdXBkYXRlcyA9IGVudmVsb3Blcy5tYXAoKGVudmVsb3BlKSA9PiBlbnZlbG9wZS51cGRhdGUpO1xuICAgIGNvbnN0IGh0dHBDYW5pc3RlclVwZGF0ZSA9IHVwZGF0ZXNbMF0uY29udGVudCBhcyBIdHRwQ2FuaXN0ZXJVcGRhdGU7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuZ2V0UGFyc2VkVHJhbnNhY3Rpb25Gcm9tVXBkYXRlKGh0dHBDYW5pc3RlclVwZGF0ZSwgdHJ1ZSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgY2FuU2lnbihrZXk6IEJhc2VLZXkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuIl19
234
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDhDQU95QjtBQUV6QixtQ0FpQmlCO0FBR2pCLE1BQWEsV0FBWSxTQUFRLDBCQUFlO0lBUzlDLFlBQVksV0FBaUMsRUFBRSxLQUFZO1FBQ3pELEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQUksa0JBQWtCLENBQUMsa0JBQXNDO1FBQzNELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxrQkFBa0IsQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxjQUFjLENBQUMsY0FBOEI7UUFDL0MsSUFBSSxDQUFDLGVBQWUsR0FBRyxjQUFjLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQztJQUNqRCxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksaUJBQWlCLENBQUMsU0FBaUI7UUFDckMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFNBQVMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBSSxpQkFBaUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksWUFBWSxDQUFDLFlBQTBCO1FBQ3pDLElBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDO0lBQ3BDLENBQUM7SUFF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ZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJhc2VLZXksXG4gIEJhc2VUcmFuc2FjdGlvbixcbiAgVHJhbnNhY3Rpb25SZWNpcGllbnQsXG4gIFRyYW5zYWN0aW9uVHlwZSxcbiAgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IsXG4gIFRyYW5zYWN0aW9uVHlwZSBhcyBCaXRHb1RyYW5zYWN0aW9uVHlwZSxcbn0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQge1xuICBJY3BUcmFuc2FjdGlvbixcbiAgSWNwVHJhbnNhY3Rpb25EYXRhLFxuICBQYXlsb2Fkc0RhdGEsXG4gIE9wZXJhdGlvblR5cGUsXG4gIFNpZ25hdHVyZXMsXG4gIFR4RGF0YSxcbiAgSWNwVHJhbnNhY3Rpb25FeHBsYW5hdGlvbixcbiAgQ2JvclVuc2lnbmVkVHJhbnNhY3Rpb24sXG4gIEh0dHBDYW5pc3RlclVwZGF0ZSxcbiAgUGFyc2VkVHJhbnNhY3Rpb24sXG4gIEljcE9wZXJhdGlvbixcbiAgVXBkYXRlRW52ZWxvcGUsXG4gIEljcEFjY291bnQsXG4gIE1BWF9JTkdSRVNTX1RUTCxcbiAgUEVSTUlUVEVEX0RSSUZULFxuICBSYXdUcmFuc2FjdGlvbixcbn0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBVdGlscyB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb24ge1xuICBwcm90ZWN0ZWQgX2ljcFRyYW5zYWN0aW9uRGF0YTogSWNwVHJhbnNhY3Rpb25EYXRhO1xuICBwcm90ZWN0ZWQgX2ljcFRyYW5zYWN0aW9uOiBJY3BUcmFuc2FjdGlvbjtcbiAgcHJvdGVjdGVkIF9wYXlsb2Fkc0RhdGE6IFBheWxvYWRzRGF0YTtcbiAgcHJvdGVjdGVkIF9zaWduZWRUcmFuc2FjdGlvbjogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX3NpZ25hdHVyZVBheWxvYWQ6IFNpZ25hdHVyZXNbXTtcbiAgcHJvdGVjdGVkIF9jcmVhdGVkVGltZXN0YW1wOiBudW1iZXIgfCBiaWdpbnQgfCB1bmRlZmluZWQ7XG4gIHByb3RlY3RlZCBfdXRpbHM6IFV0aWxzO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPiwgdXRpbHM6IFV0aWxzKSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3V0aWxzID0gdXRpbHM7XG4gIH1cblxuICBnZXQgaWNwVHJhbnNhY3Rpb25EYXRhKCk6IEljcFRyYW5zYWN0aW9uRGF0YSB7XG4gICAgcmV0dXJuIHRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YTtcbiAgfVxuXG4gIHNldCBpY3BUcmFuc2FjdGlvbkRhdGEoaWNwVHJhbnNhY3Rpb25EYXRhOiBJY3BUcmFuc2FjdGlvbkRhdGEpIHtcbiAgICB0aGlzLl9pY3BUcmFuc2FjdGlvbkRhdGEgPSBpY3BUcmFuc2FjdGlvbkRhdGE7XG4gIH1cblxuICBnZXQgaWNwVHJhbnNhY3Rpb24oKTogSWNwVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLl9pY3BUcmFuc2FjdGlvbjtcbiAgfVxuXG4gIHNldCBpY3BUcmFuc2FjdGlvbihpY3BUcmFuc2FjdGlvbjogSWNwVHJhbnNhY3Rpb24pIHtcbiAgICB0aGlzLl9pY3BUcmFuc2FjdGlvbiA9IGljcFRyYW5zYWN0aW9uO1xuICB9XG5cbiAgZ2V0IHVuc2lnbmVkVHJhbnNhY3Rpb24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fcGF5bG9hZHNEYXRhLnVuc2lnbmVkX3RyYW5zYWN0aW9uO1xuICB9XG5cbiAgZ2V0IHNpZ25hdHVyZVBheWxvYWQoKTogU2lnbmF0dXJlc1tdIHtcbiAgICByZXR1cm4gdGhpcy5fc2lnbmF0dXJlUGF5bG9hZDtcbiAgfVxuXG4gIHNldCBzaWduZWRUcmFuc2FjdGlvbihzaWduYXR1cmU6IHN0cmluZykge1xuICAgIHRoaXMuX3NpZ25lZFRyYW5zYWN0aW9uID0gc2lnbmF0dXJlO1xuICB9XG5cbiAgZ2V0IHNpZ25lZFRyYW5zYWN0aW9uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3NpZ25lZFRyYW5zYWN0aW9uO1xuICB9XG5cbiAgc2V0IHBheWxvYWRzRGF0YShwYXlsb2Fkc0RhdGE6IFBheWxvYWRzRGF0YSkge1xuICAgIHRoaXMuX3BheWxvYWRzRGF0YSA9IHBheWxvYWRzRGF0YTtcbiAgfVxuXG4gIGdldCBwYXlsb2Fkc0RhdGEoKTogUGF5bG9hZHNEYXRhIHtcbiAgICByZXR1cm4gdGhpcy5fcGF5bG9hZHNEYXRhO1xuICB9XG5cbiAgc2V0IGNyZWF0ZWRUaW1lc3RhbXAoY3JlYXRlZFRpbWVzdGFtcDogbnVtYmVyKSB7XG4gICAgdGhpcy5fY3JlYXRlZFRpbWVzdGFtcCA9IGNyZWF0ZWRUaW1lc3RhbXA7XG4gIH1cblxuICBnZXQgY3JlYXRlZFRpbWVzdGFtcCgpOiBudW1iZXIgfCBiaWdpbnQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9jcmVhdGVkVGltZXN0YW1wO1xuICB9XG5cbiAgYXN5bmMgZnJvbVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QganNvblJhd1RyYW5zYWN0aW9uOiBSYXdUcmFuc2FjdGlvbiA9IEpTT04ucGFyc2UocmF3VHJhbnNhY3Rpb24pO1xuICAgICAgY29uc3QgcGFyc2VkVHggPSBhd2FpdCB0aGlzLnBhcnNlVW5zaWduZWRUcmFuc2FjdGlvbihqc29uUmF3VHJhbnNhY3Rpb24uc2VyaWFsaXplZFR4SGV4KTtcbiAgICAgIGNvbnN0IHNlbmRlclB1YmxpY0tleUhleCA9IGpzb25SYXdUcmFuc2FjdGlvbi5wdWJsaWNLZXk7XG4gICAgICBjb25zdCB0cmFuc2FjdGlvblR5cGUgPSBwYXJzZWRUeC5vcGVyYXRpb25zWzBdLnR5cGU7XG4gICAgICBzd2l0Y2ggKHRyYW5zYWN0aW9uVHlwZSkge1xuICAgICAgICBjYXNlIE9wZXJhdGlvblR5cGUuVFJBTlNBQ1RJT046XG4gICAgICAgICAgdGhpcy5faWNwVHJhbnNhY3Rpb25EYXRhID0ge1xuICAgICAgICAgICAgc2VuZGVyQWRkcmVzczogcGFyc2VkVHgub3BlcmF0aW9uc1swXS5hY2NvdW50LmFkZHJlc3MsXG4gICAgICAgICAgICByZWNlaXZlckFkZHJlc3M6IHBhcnNlZFR4Lm9wZXJhdGlvbnNbMV0uYWNjb3VudC5hZGRyZXNzLFxuICAgICAgICAgICAgYW1vdW50OiBwYXJzZWRUeC5vcGVyYXRpb25zWzFdLmFtb3VudC52YWx1ZSxcbiAgICAgICAgICAgIGZlZTogcGFyc2VkVHgub3BlcmF0aW9uc1syXS5hbW91bnQudmFsdWUsXG4gICAgICAgICAgICBzZW5kZXJQdWJsaWNLZXlIZXg6IHNlbmRlclB1YmxpY0tleUhleCxcbiAgICAgICAgICAgIHRyYW5zYWN0aW9uVHlwZTogdHJhbnNhY3Rpb25UeXBlLFxuICAgICAgICAgICAgZXhwaXJ5VGltZTogTnVtYmVyKHBhcnNlZFR4Lm1ldGFkYXRhLmNyZWF0ZWRfYXRfdGltZSArIChNQVhfSU5HUkVTU19UVEwgLSBQRVJNSVRURURfRFJJRlQpKSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGlmIChwYXJzZWRUeC5tZXRhZGF0YS5tZW1vICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YS5tZW1vID0gcGFyc2VkVHgubWV0YWRhdGEubWVtbztcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5fdXRpbHMudmFsaWRhdGVSYXdUcmFuc2FjdGlvbih0aGlzLl9pY3BUcmFuc2FjdGlvbkRhdGEpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbiB0eXBlJyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCByYXcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gIH1cblxuICBhZGRTaWduYXR1cmUoc2lnbmF0dXJlUGF5bG9hZHM6IFNpZ25hdHVyZXNbXSk6IHZvaWQge1xuICAgIGlmICghc2lnbmF0dXJlUGF5bG9hZHMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignc2lnbmF0dXJlcyBub3QgcHJvdmlkZWQnKTtcbiAgICB9XG4gICAgaWYgKHNpZ25hdHVyZVBheWxvYWRzLmxlbmd0aCAhPT0gdGhpcy5fcGF5bG9hZHNEYXRhLnBheWxvYWRzLmxlbmd0aCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdzaWduYXR1cmVzIGxlbmd0aCBpcyBub3QgbWF0Y2hpbmcnKTtcbiAgICB9XG4gICAgdGhpcy5fc2lnbmF0dXJlUGF5bG9hZCA9IHNpZ25hdHVyZVBheWxvYWRzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHRvSnNvbigpOiBUeERhdGEge1xuICAgIGlmICghdGhpcy5faWNwVHJhbnNhY3Rpb25EYXRhKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ0VtcHR5IHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIHN3aXRjaCAodGhpcy5faWNwVHJhbnNhY3Rpb25EYXRhLnRyYW5zYWN0aW9uVHlwZSkge1xuICAgICAgY2FzZSBPcGVyYXRpb25UeXBlLlRSQU5TQUNUSU9OOlxuICAgICAgICBjb25zdCB0eERhdGE6IFR4RGF0YSA9IHtcbiAgICAgICAgICBpZDogdGhpcy5faWQsXG4gICAgICAgICAgc2VuZGVyOiB0aGlzLl9pY3BUcmFuc2FjdGlvbkRhdGEuc2VuZGVyQWRkcmVzcyxcbiAgICAgICAgICBzZW5kZXJQdWJsaWNLZXk6IHRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YS5zZW5kZXJQdWJsaWNLZXlIZXgsXG4gICAgICAgICAgcmVjaXBpZW50OiB0aGlzLl9pY3BUcmFuc2FjdGlvbkRhdGEucmVjZWl2ZXJBZGRyZXNzLFxuICAgICAgICAgIG1lbW86IHRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YS5tZW1vLFxuICAgICAgICAgIGZlZUFtb3VudDogdGhpcy5faWNwVHJhbnNhY3Rpb25EYXRhLmZlZSxcbiAgICAgICAgICBleHBpcmF0aW9uVGltZTogdGhpcy5faWNwVHJhbnNhY3Rpb25EYXRhLmV4cGlyeVRpbWUsXG4gICAgICAgICAgdHlwZTogQml0R29UcmFuc2FjdGlvblR5cGUuU2VuZCxcbiAgICAgICAgfTtcbiAgICAgICAgaWYgKHRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YS5tZW1vICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0eERhdGEubWVtbyA9IHRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YS5tZW1vO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0eERhdGE7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVuc3VwcG9ydGVkIHRyYW5zYWN0aW9uIHR5cGU6ICR7dGhpcy5faWNwVHJhbnNhY3Rpb25EYXRhLnRyYW5zYWN0aW9uVHlwZX1gKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXREb2MgKi9cbiAgZXhwbGFpblRyYW5zYWN0aW9uKCk6IEljcFRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMudG9Kc29uKCk7XG4gICAgY29uc3QgZGlzcGxheU9yZGVyID0gWydpZCcsICdvdXRwdXRBbW91bnQnLCAnY2hhbmdlQW1vdW50JywgJ291dHB1dHMnLCAnY2hhbmdlT3V0cHV0cycsICdmZWUnXTtcbiAgICBjb25zdCBvdXRwdXRzOiBUcmFuc2FjdGlvblJlY2lwaWVudFtdID0gW107XG5cbiAgICBjb25zdCBleHBsYW5hdGlvblJlc3VsdCA9IHtcbiAgICAgIGRpc3BsYXlPcmRlcixcbiAgICAgIGlkOiB0aGlzLmlkLFxuICAgICAgb3V0cHV0cyxcbiAgICAgIG91dHB1dEFtb3VudDogJzAnLFxuICAgICAgZmVlOiB7IGZlZTogJzAnIH0sXG4gICAgICB0eXBlOiByZXN1bHQudHlwZSxcbiAgICAgIGNoYW5nZU91dHB1dHM6IFtdLCAvLyBhY2NvdW50IGJhc2VkIGRvZXMgbm90IHVzZSBjaGFuZ2Ugb3V0cHV0c1xuICAgICAgY2hhbmdlQW1vdW50OiAnMCcsIC8vIGFjY291bnQgYmFzZWQgZG9lcyBub3QgbWFrZSBjaGFuZ2VcbiAgICB9O1xuXG4gICAgc3dpdGNoIChleHBsYW5hdGlvblJlc3VsdC50eXBlKSB7XG4gICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TZW5kOlxuICAgICAgICByZXR1cm4gdGhpcy5leHBsYWluVHJhbnNmZXJUcmFuc2FjdGlvbihleHBsYW5hdGlvblJlc3VsdCk7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ1RyYW5zYWN0aW9uIHR5cGUgbm90IHN1cHBvcnRlZCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBFeHBsYWlucyBhIHRyYW5zZmVyIHRyYW5zYWN0aW9uIGJ5IHByb3ZpZGluZyBkZXRhaWxzIGFib3V0IHRoZSByZWNpcGllbnRzIGFuZCB0aGUgdG90YWwgb3V0cHV0IGFtb3VudC5cbiAgICpcbiAgICogQHBhcmFtIHtJY3BUcmFuc2FjdGlvbkV4cGxhbmF0aW9ufSBleHBsYW5hdGlvblJlc3VsdCAtIFRoZSBpbml0aWFsIGV4cGxhbmF0aW9uIHJlc3VsdCB0byBiZSBleHRlbmRlZC5cbiAgICogQHJldHVybnMge0ljcFRyYW5zYWN0aW9uRXhwbGFuYXRpb259IFRoZSBleHRlbmRlZCBleHBsYW5hdGlvbiByZXN1bHQgaW5jbHVkaW5nIHRoZSBvdXRwdXQgYW1vdW50IGFuZCByZWNpcGllbnRzLlxuICAgKi9cbiAgZXhwbGFpblRyYW5zZmVyVHJhbnNhY3Rpb24oZXhwbGFuYXRpb25SZXN1bHQ6IEljcFRyYW5zYWN0aW9uRXhwbGFuYXRpb24pOiBJY3BUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgICBleHBsYW5hdGlvblJlc3VsdC5mZWUgPSB7IGZlZTogdGhpcy5pY3BUcmFuc2FjdGlvbkRhdGEuZmVlIH07XG4gICAgY29uc3QgcmVjaXBpZW50cyA9IHRoaXMuX3V0aWxzLmdldFJlY2lwaWVudHModGhpcy5pY3BUcmFuc2FjdGlvbkRhdGEpO1xuICAgIGNvbnN0IG91dHB1dHM6IFRyYW5zYWN0aW9uUmVjaXBpZW50W10gPSBbcmVjaXBpZW50c107XG4gICAgY29uc3Qgb3V0cHV0QW1vdW50Qk4gPSByZWNpcGllbnRzLmFtb3VudDtcbiAgICBjb25zdCBvdXRwdXRBbW91bnQgPSBvdXRwdXRBbW91bnRCTi50b1N0cmluZygpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLmV4cGxhbmF0aW9uUmVzdWx0LFxuICAgICAgb3V0cHV0QW1vdW50LFxuICAgICAgb3V0cHV0cyxcbiAgICB9O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHRvQnJvYWRjYXN0Rm9ybWF0KCk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLl9zaWduZWRUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zZXJpYWxpemUoKTtcbiAgfVxuXG4gIHNlcmlhbGl6ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9zaWduZWRUcmFuc2FjdGlvbjtcbiAgfVxuXG4gIGFzeW5jIHBhcnNlVW5zaWduZWRUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogUHJvbWlzZTxQYXJzZWRUcmFuc2FjdGlvbj4ge1xuICAgIGNvbnN0IHVuc2lnbmVkVHJhbnNhY3Rpb24gPSB0aGlzLl91dGlscy5jYm9yRGVjb2RlKFxuICAgICAgdGhpcy5fdXRpbHMuYmxvYkZyb21IZXgocmF3VHJhbnNhY3Rpb24pXG4gICAgKSBhcyBDYm9yVW5zaWduZWRUcmFuc2FjdGlvbjtcbiAgICBjb25zdCB1cGRhdGUgPSB1bnNpZ25lZFRyYW5zYWN0aW9uLnVwZGF0ZXNbMF07XG4gICAgY29uc3QgaHR0cENhbmlzdGVyVXBkYXRlID0gKHVwZGF0ZSBhcyB1bmtub3duIGFzIFtzdHJpbmcsIEh0dHBDYW5pc3RlclVwZGF0ZV0pWzFdO1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmdldFBhcnNlZFRyYW5zYWN0aW9uRnJvbVVwZGF0ZShodHRwQ2FuaXN0ZXJVcGRhdGUsIGZhbHNlKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZ2V0UGFyc2VkVHJhbnNhY3Rpb25Gcm9tVXBkYXRlKFxuICAgIGh0dHBDYW5pc3RlclVwZGF0ZTogSHR0cENhbmlzdGVyVXBkYXRlLFxuICAgIGlzU2lnbmVkOiBib29sZWFuXG4gICk6IFByb21pc2U8UGFyc2VkVHJhbnNhY3Rpb24+IHtcbiAgICBjb25zdCBzZW5kZXJQcmluY2lwYWwgPSB0aGlzLl91dGlscy5jb252ZXJ0U2VuZGVyQmxvYlRvUHJpbmNpcGFsKGh0dHBDYW5pc3RlclVwZGF0ZS5zZW5kZXIpO1xuICAgIGNvbnN0IEFDQ09VTlRfSURfUFJFRklYID0gdGhpcy5fdXRpbHMuZ2V0QWNjb3VudElkUHJlZml4KCk7XG4gICAgY29uc3Qgc3ViQWNjb3VudCA9IG5ldyBVaW50OEFycmF5KDMyKTtcbiAgICBjb25zdCBzZW5kZXJBY2NvdW50ID0gdGhpcy5fdXRpbHMuZ2V0QWNjb3VudElkRnJvbVByaW5jaXBhbEJ5dGVzKFxuICAgICAgQUNDT1VOVF9JRF9QUkVGSVgsXG4gICAgICBCdWZmZXIuZnJvbShzZW5kZXJQcmluY2lwYWwuYnVmZmVyKSxcbiAgICAgIHN1YkFjY291bnRcbiAgICApO1xuICAgIGNvbnN0IGFyZ3MgPSBhd2FpdCB0aGlzLl91dGlscy5mcm9tQXJncyhodHRwQ2FuaXN0ZXJVcGRhdGUuYXJnKTtcbiAgICBjb25zdCBzZW5kZXJPcGVyYXRpb246IEljcE9wZXJhdGlvbiA9IHtcbiAgICAgIHR5cGU6IE9wZXJhdGlvblR5cGUuVFJBTlNBQ1RJT04sXG4gICAgICBhY2NvdW50OiB7IGFkZHJlc3M6IHNlbmRlckFjY291bnQgfSxcbiAgICAgIGFtb3VudDoge1xuICAgICAgICB2YWx1ZTogYC0ke2FyZ3MucGF5bWVudC5yZWNlaXZlckdldHMuZThzLnRvU3RyaW5nKCl9YCxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICBzeW1ib2w6IHRoaXMuX2NvaW5Db25maWcuZmFtaWx5LFxuICAgICAgICAgIGRlY2ltYWxzOiB0aGlzLl9jb2luQ29uZmlnLmRlY2ltYWxQbGFjZXMsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG4gICAgY29uc3QgcmVjZWl2ZXJPcGVyYXRpb246IEljcE9wZXJhdGlvbiA9IHtcbiAgICAgIHR5cGU6IE9wZXJhdGlvblR5cGUuVFJBTlNBQ1RJT04sXG4gICAgICBhY2NvdW50OiB7IGFkZHJlc3M6IGFyZ3MudG8uaGFzaC50b1N0cmluZygnaGV4JykgfSxcbiAgICAgIGFtb3VudDoge1xuICAgICAgICB2YWx1ZTogYXJncy5wYXltZW50LnJlY2VpdmVyR2V0cy5lOHMudG9TdHJpbmcoKSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICBzeW1ib2w6IHRoaXMuX2NvaW5Db25maWcuZmFtaWx5LFxuICAgICAgICAgIGRlY2ltYWxzOiB0aGlzLl9jb2luQ29uZmlnLmRlY2ltYWxQbGFjZXMsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgICBjb25zdCBmZWVPcGVyYXRpb246IEljcE9wZXJhdGlvbiA9IHtcbiAgICAgIHR5cGU6IE9wZXJhdGlvblR5cGUuRkVFLFxuICAgICAgYWNjb3VudDogeyBhZGRyZXNzOiBzZW5kZXJBY2NvdW50IH0sXG4gICAgICBhbW91bnQ6IHtcbiAgICAgICAgdmFsdWU6IGAtJHthcmdzLm1heEZlZS5lOHMudG9TdHJpbmcoKX1gLFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgIHN5bWJvbDogdGhpcy5fY29pbkNvbmZpZy5mYW1pbHksXG4gICAgICAgICAgZGVjaW1hbHM6IHRoaXMuX2NvaW5Db25maWcuZGVjaW1hbFBsYWNlcyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcbiAgICBjb25zdCBhY2NvdW50SWRlbnRpZmllclNpZ25lcnM6IEljcEFjY291bnRbXSA9IFtdO1xuICAgIGlmIChpc1NpZ25lZCkge1xuICAgICAgYWNjb3VudElkZW50aWZpZXJTaWduZXJzLnB1c2goeyBhZGRyZXNzOiBzZW5kZXJBY2NvdW50IH0pO1xuICAgIH1cbiAgICBjb25zdCBwYXJzZWRUeG46IFBhcnNlZFRyYW5zYWN0aW9uID0ge1xuICAgICAgb3BlcmF0aW9uczogW3NlbmRlck9wZXJhdGlvbiwgcmVjZWl2ZXJPcGVyYXRpb24sIGZlZU9wZXJhdGlvbl0sXG4gICAgICBtZXRhZGF0YToge1xuICAgICAgICBjcmVhdGVkX2F0X3RpbWU6IGFyZ3MuY3JlYXRlZEF0VGltZS50aW1lc3RhbXBOYW5vcyxcbiAgICAgIH0sXG4gICAgICBhY2NvdW50X2lkZW50aWZpZXJfc2lnbmVyczogYWNjb3VudElkZW50aWZpZXJTaWduZXJzLFxuICAgIH07XG4gICAgaWYgKGFyZ3MubWVtbyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBwYXJzZWRUeG4ubWV0YWRhdGEubWVtbyA9IE51bWJlcihhcmdzLm1lbW8ubWVtbyk7XG4gICAgfVxuICAgIHRoaXMuY3JlYXRlZFRpbWVzdGFtcCA9IGFyZ3MuY3JlYXRlZEF0VGltZS50aW1lc3RhbXBOYW5vcztcbiAgICByZXR1cm4gcGFyc2VkVHhuO1xuICB9XG5cbiAgYXN5bmMgcGFyc2VTaWduZWRUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogUHJvbWlzZTxQYXJzZWRUcmFuc2FjdGlvbj4ge1xuICAgIGNvbnN0IHNpZ25lZFRyYW5zYWN0aW9uID0gdGhpcy5fdXRpbHMuY2JvckRlY29kZSh0aGlzLl91dGlscy5ibG9iRnJvbUhleChyYXdUcmFuc2FjdGlvbikpO1xuICAgIGNvbnN0IGh0dHBDYW5pc3RlclVwZGF0ZSA9IChzaWduZWRUcmFuc2FjdGlvbiBhcyBVcGRhdGVFbnZlbG9wZSkuY29udGVudCBhcyBIdHRwQ2FuaXN0ZXJVcGRhdGU7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuZ2V0UGFyc2VkVHJhbnNhY3Rpb25Gcm9tVXBkYXRlKGh0dHBDYW5pc3RlclVwZGF0ZSwgdHJ1ZSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgY2FuU2lnbihrZXk6IEJhc2VLZXkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuIl19
@@ -2,7 +2,7 @@ import { BaseCoin as CoinConfig } from '@bitgo/statics';
2
2
  import BigNumber from 'bignumber.js';
3
3
  import { BaseTransactionBuilder, BaseAddress, BaseKey } from '@bitgo/sdk-core';
4
4
  import { Transaction } from './transaction';
5
- import { IcpTransactionData, Signatures } from './iface';
5
+ import { IcpTransaction, IcpTransactionData, PayloadsData, Signatures } from './iface';
6
6
  export declare abstract class TransactionBuilder extends BaseTransactionBuilder {
7
7
  protected _transaction: Transaction;
8
8
  protected _sender: string;
@@ -12,7 +12,8 @@ export declare abstract class TransactionBuilder extends BaseTransactionBuilder
12
12
  protected _amount: string;
13
13
  constructor(_coinConfig: Readonly<CoinConfig>);
14
14
  signaturePayload(): Signatures[];
15
- unsignedTransaction(): string;
15
+ payloadData(): PayloadsData;
16
+ icpTransaction(): IcpTransaction;
16
17
  /**
17
18
  * Sets the public key and the address of the sender of this transaction.
18
19
  *
@@ -62,6 +63,9 @@ export declare abstract class TransactionBuilder extends BaseTransactionBuilder
62
63
  validateRawTransaction(rawTransaction: IcpTransactionData): void;
63
64
  /** @inheritdoc */
64
65
  validateKey(key: BaseKey): void;
66
+ /**
67
+ * Combines the unsigned transaction and the signature payload to create a signed transaction.
68
+ */
65
69
  combine(): void;
66
70
  }
67
71
  //# sourceMappingURL=transactionBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAyB,WAAW,EAAgB,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACpH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGzD,8BAAsB,kBAAmB,SAAQ,sBAAsB;IACrE,SAAS,CAAC,YAAY,EAAE,WAAW,CAAC;IACpC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;IAC9B,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEd,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAKtC,gBAAgB,IAAI,UAAU,EAAE;IAIhC,mBAAmB,IAAI,MAAM;IAIpC;;;;;;OAMG;IACI,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAYpD;;;;;OAKG;IACI,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAQ/B;;;;;OAKG;IACI,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAQ1C,kBAAkB;IAClB,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,kBAAkB;IAClB,IAAI,WAAW,CAAC,WAAW,EAAE,WAAW,EAEvC;IAED,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,kBAAkB;IAClB,kBAAkB,CAAC,cAAc,EAAE,kBAAkB,GAAG,WAAW;IAMnE,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAOnD;;;;;OAKG;IACI,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMlC,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAIrC;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAUlC,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAM3C,sBAAsB,CAAC,cAAc,EAAE,kBAAkB,GAAG,IAAI;IAIhE,kBAAkB;IAClB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAUxB,OAAO,IAAI,IAAI;CAOvB"}
1
+ {"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAyB,WAAW,EAAgB,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACpH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGvF,8BAAsB,kBAAmB,SAAQ,sBAAsB;IACrE,SAAS,CAAC,YAAY,EAAE,WAAW,CAAC;IACpC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;IAC9B,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEd,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAKtC,gBAAgB,IAAI,UAAU,EAAE;IAIhC,WAAW,IAAI,YAAY;IAI3B,cAAc,IAAI,cAAc;IAIvC;;;;;;OAMG;IACI,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAYpD;;;;;OAKG;IACI,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAQ/B;;;;;OAKG;IACI,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAQ1C,kBAAkB;IAClB,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,kBAAkB;IAClB,IAAI,WAAW,CAAC,WAAW,EAAE,WAAW,EAEvC;IAED,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,kBAAkB;IAClB,kBAAkB,CAAC,cAAc,EAAE,kBAAkB,GAAG,WAAW;IAMnE,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAOnD;;;;;OAKG;IACI,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMlC,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAIrC;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAYlC,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAM3C,sBAAsB,CAAC,cAAc,EAAE,kBAAkB,GAAG,IAAI;IAIhE,kBAAkB;IAClB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAS/B;;OAEG;IACI,OAAO,IAAI,IAAI;CAOvB"}