@astrox/connection 0.0.37 → 0.0.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/connections/baseConnection.d.ts +1 -1
- package/lib/cjs/connections/baseConnection.js +9 -7
- package/lib/cjs/connections/baseConnection.js.map +1 -1
- package/lib/cjs/connections/ledgerConnection.d.ts +2 -1
- package/lib/cjs/connections/ledgerConnection.js +3 -2
- package/lib/cjs/connections/ledgerConnection.js.map +1 -1
- package/lib/cjs/ic/icAuthClient.js +8 -8
- package/lib/cjs/ic/icAuthClient.js.map +1 -1
- package/lib/cjs/ic/icConnect.d.ts +7 -5
- package/lib/cjs/ic/icConnect.js +55 -50
- package/lib/cjs/ic/icConnect.js.map +1 -1
- package/lib/cjs/ic/icStorage.d.ts +7 -7
- package/lib/cjs/ic/icStorage.js +20 -20
- package/lib/cjs/ic/icStorage.js.map +1 -1
- package/lib/cjs/services/history/rosseta.js +8 -51
- package/lib/cjs/services/history/rosseta.js.map +1 -1
- package/lib/cjs/types/index.d.ts +1 -0
- package/lib/cjs/types/index.js.map +1 -1
- package/lib/esm/connections/baseConnection.d.ts +1 -1
- package/lib/esm/connections/baseConnection.js +9 -7
- package/lib/esm/connections/baseConnection.js.map +1 -1
- package/lib/esm/connections/ledgerConnection.d.ts +2 -1
- package/lib/esm/connections/ledgerConnection.js +3 -2
- package/lib/esm/connections/ledgerConnection.js.map +1 -1
- package/lib/esm/ic/icAuthClient.js +9 -9
- package/lib/esm/ic/icAuthClient.js.map +1 -1
- package/lib/esm/ic/icConnect.d.ts +7 -5
- package/lib/esm/ic/icConnect.js +55 -50
- package/lib/esm/ic/icConnect.js.map +1 -1
- package/lib/esm/ic/icStorage.d.ts +7 -7
- package/lib/esm/ic/icStorage.js +18 -18
- package/lib/esm/ic/icStorage.js.map +1 -1
- package/lib/esm/services/history/rosseta.js +9 -52
- package/lib/esm/services/history/rosseta.js.map +1 -1
- package/lib/esm/types/index.d.ts +1 -0
- package/lib/esm/types/index.js.map +1 -1
- package/lib/tsconfig-cjs.tsbuildinfo +364 -337
- package/lib/tsconfig.tsbuildinfo +364 -337
- package/package.json +5 -3
@@ -40,7 +40,7 @@ const getTransactionInfo = (accountId, rosettaTransaction) => {
|
|
40
40
|
from: accountId,
|
41
41
|
},
|
42
42
|
};
|
43
|
-
operations.forEach(
|
43
|
+
operations.forEach(operation => {
|
44
44
|
const value = BigInt(operation.amount.value);
|
45
45
|
const { decimals } = operation.amount.currency;
|
46
46
|
const amount = converter_1.parseBalance({ value: value.toString(), decimals });
|
@@ -76,7 +76,7 @@ exports.getICPTransactions = async (accountId) => {
|
|
76
76
|
}),
|
77
77
|
headers: {
|
78
78
|
'Content-Type': 'application/json',
|
79
|
-
Accept: '*/*',
|
79
|
+
'Accept': '*/*',
|
80
80
|
},
|
81
81
|
});
|
82
82
|
if (!response.ok)
|
@@ -102,7 +102,7 @@ exports.getICPTransactionsByBlock = async (fromAccount, blockHeight) => {
|
|
102
102
|
}),
|
103
103
|
headers: {
|
104
104
|
'Content-Type': 'application/json',
|
105
|
-
Accept: '*/*',
|
105
|
+
'Accept': '*/*',
|
106
106
|
},
|
107
107
|
});
|
108
108
|
if (!response.ok)
|
@@ -131,15 +131,14 @@ exports.getExactTransaction = (fromAccount, singleResponse, txns) => {
|
|
131
131
|
const { blockHeight } = singleResponse;
|
132
132
|
const { transactions } = txns;
|
133
133
|
console.log({ singleResponse, txns });
|
134
|
-
const found = transactions.find(
|
134
|
+
const found = transactions.find(val => {
|
135
135
|
return created_at_time[0] !== undefined
|
136
136
|
? val.timestamp.timestamp_nanos >
|
137
137
|
created_at_time[0].timestamp_nanos
|
138
138
|
: true &&
|
139
139
|
val.block_height === blockHeight &&
|
140
140
|
val.memo === memo &&
|
141
|
-
JSON.stringify(val.transaction_type[0]) ===
|
142
|
-
JSON.stringify({ Send: null }) &&
|
141
|
+
JSON.stringify(val.transaction_type[0]) === JSON.stringify({ Send: null }) &&
|
143
142
|
val.transfer.Send.amount.e8s === amount.e8s &&
|
144
143
|
val.transfer.Send.to === to;
|
145
144
|
});
|
@@ -181,16 +180,13 @@ exports.getTransactionFromRosseta = (fromAccount, singleResponse, txns) => {
|
|
181
180
|
const { amount, created_at_time, memo, to } = sendArgs;
|
182
181
|
const { blockHeight } = singleResponse;
|
183
182
|
const { transactions } = txns;
|
184
|
-
|
185
|
-
const found = transactions.find((val) => {
|
183
|
+
const found = transactions.find(val => {
|
186
184
|
var _a;
|
187
185
|
return created_at_time[0] !== undefined
|
188
|
-
? val.timestamp.length <
|
189
|
-
created_at_time[0].timestamp_nanos.toString().length
|
186
|
+
? val.timestamp.length < created_at_time[0].timestamp_nanos.toString().length
|
190
187
|
? BigInt(val.timestamp) * BigInt(1000000) >
|
191
188
|
created_at_time[0].timestamp_nanos
|
192
|
-
: BigInt(val.timestamp) >
|
193
|
-
created_at_time[0].timestamp_nanos
|
189
|
+
: BigInt(val.timestamp) > created_at_time[0].timestamp_nanos
|
194
190
|
: true &&
|
195
191
|
BigInt(val.block_height) === blockHeight &&
|
196
192
|
BigInt(val.memo) === memo &&
|
@@ -200,43 +196,4 @@ exports.getTransactionFromRosseta = (fromAccount, singleResponse, txns) => {
|
|
200
196
|
});
|
201
197
|
return found;
|
202
198
|
};
|
203
|
-
const aaa = {
|
204
|
-
transaction_identifier: {
|
205
|
-
hash: 'df8576aa9be05b561dae1b7f706d109789cf25b895d29b3a1d7da2df92247d97',
|
206
|
-
},
|
207
|
-
operations: [
|
208
|
-
{
|
209
|
-
type: 'TRANSACTION',
|
210
|
-
operation_identifier: { index: 0 },
|
211
|
-
status: 'COMPLETED',
|
212
|
-
account: {
|
213
|
-
address: 'da5fd722e22c4970b4347d41873ba86c51f87ee32f271d6762fc49627eeecb71',
|
214
|
-
},
|
215
|
-
amount: { value: -100000, currency: { symbol: 'ICP', decimals: 8 } },
|
216
|
-
},
|
217
|
-
{
|
218
|
-
type: 'TRANSACTION',
|
219
|
-
operation_identifier: { index: 1 },
|
220
|
-
status: 'COMPLETED',
|
221
|
-
account: {
|
222
|
-
address: '848753b6fac50019dffc34ead1af095863405b3cce463352c1ecf3109ada4b23',
|
223
|
-
},
|
224
|
-
amount: { value: 100000, currency: { symbol: 'ICP', decimals: 8 } },
|
225
|
-
},
|
226
|
-
{
|
227
|
-
type: 'FEE',
|
228
|
-
operation_identifier: { index: 2 },
|
229
|
-
status: 'COMPLETED',
|
230
|
-
account: {
|
231
|
-
address: 'da5fd722e22c4970b4347d41873ba86c51f87ee32f271d6762fc49627eeecb71',
|
232
|
-
},
|
233
|
-
amount: { value: -10000, currency: { symbol: 'ICP', decimals: 8 } },
|
234
|
-
},
|
235
|
-
],
|
236
|
-
metadata: {
|
237
|
-
block_height: 1680083,
|
238
|
-
memo: 22380256,
|
239
|
-
timestamp: 1639810289340003912,
|
240
|
-
},
|
241
|
-
};
|
242
199
|
//# sourceMappingURL=rosseta.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"rosseta.js","sourceRoot":"","sources":["../../../../src/services/history/rosseta.ts"],"names":[],"mappings":";;;;;;AAIA,8DAAgC;AAChC,WAAW;AACX,6BAA6B;AAC7B,UAAU;AACV,eAAe;AACf,4CAA4C;AAC5C,qDAA4D;AAC5D,
|
1
|
+
{"version":3,"file":"rosseta.js","sourceRoot":"","sources":["../../../../src/services/history/rosseta.ts"],"names":[],"mappings":";;;;;;AAIA,8DAAgC;AAChC,WAAW;AACX,6BAA6B;AAC7B,UAAU;AACV,eAAe;AACf,4CAA4C;AAC5C,qDAA4D;AAC5D,qDAAuF;AAEvF,mEAAuE;AAG1D,QAAA,eAAe,GAAG,OAAS,CAAC;AAiBzC,IAAY,wBAIX;AAJD,WAAY,wBAAwB;IAClC,mDAAuB,CAAA;IACvB,iDAAqB,CAAA;IACrB,+CAAmB,CAAA;AACrB,CAAC,EAJW,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAInC;AAED,IAAY,sBAKX;AALD,WAAY,sBAAsB;IAChC,qDAA2B,CAAA;IAC3B,qCAAW,CAAA;IACX,6CAAmB,CAAA;IACnB,uCAAa,CAAA;AACf,CAAC,EALW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAKjC;AAyDD,MAAM,kBAAkB,GAAG,CACzB,SAAiB,EACjB,kBAAsC,EACjB,EAAE;IACvB,MAAM,EACJ,UAAU,EACV,QAAQ,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EACrE,sBAAsB,EAAE,EAAE,IAAI,EAAE,GACjC,GAAG,kBAAkB,CAAC;IACvB,oEAAoE;IACpE,uCAAuC;IACvC,kEAAkE;IAElE,MAAM,WAAW,GAAyB;QACxC,IAAI,EAAE,sBAAsB,CAAC,IAAI;QACjC,OAAO,EAAE;YACP,MAAM,EAAE,wBAAwB,CAAC,SAAS;YAC1C,GAAG,EAAE,EAAE;YACP,IAAI,EAAE,SAAS;SAChB;KACF,CAAC;IAEF,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC/C,MAAM,MAAM,GAAG,wBAAY,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACnE,IAAI,SAAS,CAAC,IAAI,KAAK,sBAAsB,CAAC,GAAG,EAAE;YACjD,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;YACxC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC;YAC7D,OAAO;SACR;QAED,IAAI,KAAK,IAAI,CAAC;YAAE,WAAW,CAAC,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;QACnE,IAAI,KAAK,IAAI,CAAC;YAAE,WAAW,CAAC,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;QAErE,IACE,WAAW,CAAC,OAAO,CAAC,MAAM,KAAK,wBAAwB,CAAC,SAAS;YACjE,SAAS,CAAC,MAAM,KAAK,wBAAwB,CAAC,SAAS;YAEvD,WAAW,CAAC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QAEhD,WAAW,CAAC,IAAI;YACd,WAAW,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS;gBAClC,CAAC,CAAC,sBAAsB,CAAC,OAAO;gBAChC,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC;QAClC,WAAW,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;QACpC,WAAW,CAAC,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,uCACK,WAAW,KACd,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,EAChC,IAAI,EACJ,SAAS,EAAE,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,uBAAe,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EACpF,YAAY,EAAE,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAC3D,IAAI,EAAE,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EACnD,QAAQ,EAAE,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,IACvD;AACJ,CAAC,CAAC;AAEW,QAAA,kBAAkB,GAAG,KAAK,EACrC,SAAiB,EACwB,EAAE;IAC3C,MAAM,QAAQ,GAAG,MAAM,qBAAK,CAAC,GAAG,uBAAW,sBAAsB,EAAE;QACjE,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,kBAAkB,EAAE,kBAAM;YAC1B,kBAAkB,EAAE;gBAClB,OAAO,EAAE,SAAS;aACnB;SACF,CAAC;QACF,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,QAAQ,EAAE,KAAK;SAChB;KACF,CAAC,CAAC;IACH,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,KAAK,CAAC,2BAA2B,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IAChF,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC5D,MAAM,gBAAgB,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,EAAwB,EAAE,EAAE,CAClF,kBAAkB,CAAC,SAAS,EAAE,WAAW,CAAC,CAC3C,CAAC;IACF,OAAO;QACL,KAAK,EAAE,WAAW;QAClB,YAAY,EAAE,gBAAgB;KAC/B,CAAC;AACJ,CAAC,CAAC;AAEW,QAAA,eAAe,GAAG,KAAK,EAClC,uBAA2C,EAC3C,WAAmB,EACe,EAAE;IACpC,MAAM,MAAM,GAAG,MAAM,6BAAG,CAAC,eAAe,CACtC,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,EAC/C,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,kBAAkB,EAAE,WAAW,EAAE,CAC9D,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEW,QAAA,yBAAyB,GAAG,KAAK,EAAE,WAAmB,EAAE,WAAmB,EAAE,EAAE;IAC1F,IAAI;QACF,MAAM,QAAQ,GAAG,MAAM,qBAAK,CAAC,GAAG,uBAAW,QAAQ,EAAE;YACnD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,kBAAkB,EAAE,kBAAM;gBAC1B,gBAAgB,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,EAAE;aAC9D,CAAC;YACF,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,QAAQ,EAAE,KAAK;aAChB;SACF,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,MAAM,KAAK,CAAC,2BAA2B,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QAChF,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;QAC/B,IAAI,YAAY,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE;YACrD,OAAO;gBACL,KAAK,EAAE,YAAY,CAAC,MAAM;gBAC1B,YAAY,EAAE,EAAE;aACjB,CAAC;SACH;QACD,MAAM,gBAAgB,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,WAA+B,EAAE,EAAE,CAC5E,kBAAkB,CAAC,WAAW,EAAE,WAAW,CAAC,CAC7C,CAAC;QACF,OAAO;YACL,KAAK,EAAE,YAAY,CAAC,MAAM;YAC1B,YAAY,EAAE,gBAAgB;SAC/B,CAAC;KACH;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,KAAK,CAAC;KACb;AACH,CAAC,CAAC;AAEW,QAAA,mBAAmB,GAAG,CACjC,WAAmB,EACnB,cAAmC,EACnC,IAA6B,EACI,EAAE;IACnC,MAAM,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;IACpC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC;IACvD,MAAM,EAAE,WAAW,EAAE,GAAG,cAAc,CAAC;IACvC,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;IAE9B,OAAO,CAAC,GAAG,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;IAEtC,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QACpC,OAAO,eAAe,CAAC,CAAC,CAAC,KAAK,SAAS;YACrC,CAAC,CAAE,GAAG,CAAC,SAAuB,CAAC,eAAe;gBACzC,eAAe,CAAC,CAAC,CAAe,CAAC,eAAe;YACrD,CAAC,CAAC,IAAI;gBACF,GAAG,CAAC,YAAY,KAAK,WAAW;gBAChC,GAAG,CAAC,IAAI,KAAK,IAAI;gBACjB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBACzE,GAAG,CAAC,QAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG;gBAC9D,GAAG,CAAC,QAA2B,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC;IACxD,CAAC,CAAC,CAAC;IACH,IAAI,KAAK,EAAE;QACT,MAAM,GAAG,GAAG;YACV,IAAI,EAAE,EAAE;YACR,SAAS,EAAE,CACT,MAAM,CAAE,KAAK,CAAC,SAAuB,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CACzE,CAAC,QAAQ,EAAE;YACZ,IAAI,EAAE,sBAAsB,CAAC,IAAI;YACjC,OAAO,EAAE;gBACP,EAAE;gBACF,IAAI,EAAE,WAAW;gBACjB,MAAM,EAAE,wBAAwB,CAAC,SAAS;gBAC1C,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE;gBAC7B,QAAQ,EAAE;oBACR,MAAM,EAAE,uBAAW,CAAC,GAAG;oBACvB,QAAQ,EAAE,EAAE;iBACb;gBACD,GAAG,EAAE;oBACH,MAAM,EAAG,KAAK,CAAC,QAA2B,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE;oBAClE,QAAQ,EAAE;wBACR,MAAM,EAAE,uBAAW,CAAC,GAAG;wBACvB,QAAQ,EAAE,EAAE;qBACb;iBACF;aACF;YACD,MAAM,EAAE,WAAW;YACnB,YAAY,EAAE,WAAW,CAAC,QAAQ,EAAE;YACpC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE;YACrB,QAAQ,EAAE,EAAE;SACb,CAAC;QACF,OAAO,GAAG,CAAC;KACZ;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,wDAAwD;AACxD,0DAA0D;AAC7C,QAAA,yBAAyB,GAAG,CACvC,WAAmB,EACnB,cAAmC,EACnC,IAAoC,EACH,EAAE;IACnC,MAAM,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;IACpC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC;IACvD,MAAM,EAAE,WAAW,EAAE,GAAG,cAAc,CAAC;IACvC,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;IAE9B,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;;QACpC,OAAO,eAAe,CAAC,CAAC,CAAC,KAAK,SAAS;YACrC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,GAAI,eAAe,CAAC,CAAC,CAAe,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,MAAM;gBAC1F,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC;oBACtC,eAAe,CAAC,CAAC,CAAe,CAAC,eAAe;gBACnD,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,GAAI,eAAe,CAAC,CAAC,CAAe,CAAC,eAAe;YAC7E,CAAC,CAAC,IAAI;gBACF,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,WAAW;gBACxC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI;gBACzB,GAAG,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE;gBACrB,GAAG,CAAC,OAAO,CAAC,MAAM,YAChB,+BAAmB,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,QAAS,CAAC,MAAM,CAAC,0CAAE,MAAM,CAAC,QAAQ,GAAE;gBAClF,GAAG,CAAC,MAAM,KAAK,WAAW,CAAC;IACnC,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
|
package/lib/cjs/types/index.d.ts
CHANGED
@@ -78,6 +78,7 @@ export interface AuthClientLoginOptions extends AuthClientCreateOptions {
|
|
78
78
|
}
|
79
79
|
export interface ConnectOptions extends AuthClientLoginOptions {
|
80
80
|
ledgerCanisterId?: string;
|
81
|
+
ledgerHost?: string;
|
81
82
|
walletProviderUrl?: string;
|
82
83
|
signerProviderUrl?: string;
|
83
84
|
useFrame: boolean;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":";;;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":";;;AAyLA,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,oDAAiC,CAAA;IACjC,gDAA6B,CAAA;AAC/B,CAAC,EAHW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAG1B;AAED,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,6CAAwB,CAAA;IACxB,2CAAsB,CAAA;IACtB,sDAAiC,CAAA;IACjC,mDAA8B,CAAA;AAChC,CAAC,EALW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAK5B;AA+BD,oBAAoB;AACpB,IAAY,sBAKX;AALD,WAAY,sBAAsB;IAChC,uDAA6B,CAAA;IAC7B,qDAA2B,CAAA;IAC3B,gEAAsC,CAAA;IACtC,6DAAmC,CAAA;AACrC,CAAC,EALW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAKjC"}
|
@@ -7,7 +7,7 @@ export declare const requestDelegation: (identity: SignIdentity, { canisterId, d
|
|
7
7
|
canisterId?: string | undefined;
|
8
8
|
date?: Date | undefined;
|
9
9
|
}) => Promise<DelegationIdentity>;
|
10
|
-
export declare function _createActor<T>(interfaceFactory: InterfaceFactory, canisterId: string, identity?: SignIdentity): Promise<CreateActorResult<T>>;
|
10
|
+
export declare function _createActor<T>(interfaceFactory: InterfaceFactory, canisterId: string, identity?: SignIdentity, host?: string): Promise<CreateActorResult<T>>;
|
11
11
|
export declare class BaseConnection<T> implements AbstractConnection<T> {
|
12
12
|
identity: SignIdentity;
|
13
13
|
delegationIdentity: DelegationIdentity;
|
@@ -11,8 +11,8 @@ export const requestDelegation = async (identity, { canisterId, date }) => {
|
|
11
11
|
});
|
12
12
|
return DelegationIdentity.fromDelegation(sessionKey, chain);
|
13
13
|
};
|
14
|
-
export async function _createActor(interfaceFactory, canisterId, identity) {
|
15
|
-
const agent = new HttpAgent({ identity });
|
14
|
+
export async function _createActor(interfaceFactory, canisterId, identity, host) {
|
15
|
+
const agent = new HttpAgent({ identity, host });
|
16
16
|
// Only fetch the root key when we're not in prod
|
17
17
|
if (process.env.II_ENV === 'development') {
|
18
18
|
await agent.fetchRootKey();
|
@@ -37,11 +37,13 @@ export class BaseConnection {
|
|
37
37
|
}
|
38
38
|
async _getActor(canisterId, interfaceFactory, date) {
|
39
39
|
var _a, _b;
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
40
|
+
if (this.delegationIdentity) {
|
41
|
+
for (const { delegation } of this.delegationIdentity.getDelegation().delegations) {
|
42
|
+
// prettier-ignore
|
43
|
+
if (+new Date(Number(delegation.expiration / BigInt(1000000))) <= +Date.now()) {
|
44
|
+
this.actor = undefined;
|
45
|
+
break;
|
46
|
+
}
|
45
47
|
}
|
46
48
|
}
|
47
49
|
if (this.actor === undefined) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"baseConnection.js","sourceRoot":"","sources":["../../../src/connections/baseConnection.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EAGL,SAAS,GAGV,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAQ/C,MAAM,UAAU,gBAAgB,CAC9B,QAAsB,EACtB,kBAAsC,EACtC,UAAkB,EAClB,gBAAkC,EAClC,KAAwB,EACxB,KAAiB;IAEjB,OAAO,IAAI,cAAc,CACvB,QAAQ,EACR,kBAAkB,EAClB,UAAU,EACV,gBAAgB,EAChB,KAAK,EACL,KAAK,CACN,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EACpC,QAAsB,EACtB,EAAE,UAAU,EAAE,IAAI,EAAwC,EAC7B,EAAE;IAC/B,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,EAAE,CAAC;IACjD,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,MAAM,CACxC,QAAQ,EACR,UAAU,CAAC,YAAY,EAAE,EACzB,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAC1C;QACE,OAAO,EAAE,UAAU,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;KAChF,CACF,CAAC;IAEF,OAAO,kBAAkB,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;AAC9D,CAAC,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,gBAAkC,EAClC,UAAkB,EAClB,QAAuB;
|
1
|
+
{"version":3,"file":"baseConnection.js","sourceRoot":"","sources":["../../../src/connections/baseConnection.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EAGL,SAAS,GAGV,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAQ/C,MAAM,UAAU,gBAAgB,CAC9B,QAAsB,EACtB,kBAAsC,EACtC,UAAkB,EAClB,gBAAkC,EAClC,KAAwB,EACxB,KAAiB;IAEjB,OAAO,IAAI,cAAc,CACvB,QAAQ,EACR,kBAAkB,EAClB,UAAU,EACV,gBAAgB,EAChB,KAAK,EACL,KAAK,CACN,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EACpC,QAAsB,EACtB,EAAE,UAAU,EAAE,IAAI,EAAwC,EAC7B,EAAE;IAC/B,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,EAAE,CAAC;IACjD,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,MAAM,CACxC,QAAQ,EACR,UAAU,CAAC,YAAY,EAAE,EACzB,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAC1C;QACE,OAAO,EAAE,UAAU,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;KAChF,CACF,CAAC;IAEF,OAAO,kBAAkB,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;AAC9D,CAAC,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,gBAAkC,EAClC,UAAkB,EAClB,QAAuB,EACvB,IAAa;IAEb,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,iDAAiD;IACjD,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,aAAa,EAAE;QACxC,MAAM,KAAK,CAAC,YAAY,EAAE,CAAC;KAC5B;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAI,gBAAgB,EAAE;QACnD,KAAK;QACL,UAAU;KACX,CAAC,CAAC;IACH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAC1B,CAAC;AAED,MAAM,OAAO,cAAc;IACzB,YACS,QAAsB,EACtB,kBAAsC,EACtC,UAAkB,EAClB,gBAAkC,EAClC,KAAwB,EACxB,KAAiB;QALjB,aAAQ,GAAR,QAAQ,CAAc;QACtB,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,eAAU,GAAV,UAAU,CAAQ;QAClB,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,UAAK,GAAL,KAAK,CAAmB;QACxB,UAAK,GAAL,KAAK,CAAY;IACvB,CAAC;IACJ,KAAK,CAAC,QAAQ;QACZ,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAES,KAAK,CAAC,SAAS,CACvB,UAAkB,EAClB,gBAAkC,EAClC,IAAW;;QAEX,IAAI,IAAI,CAAC,kBAAkB,EAAE;YAC3B,KAAK,MAAM,EAAE,UAAU,EAAE,IAAI,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,CAAC,WAAW,EAAE;gBAChF,kBAAkB;gBAClB,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE;oBAC7E,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;oBACvB,MAAM;iBACP;aACF;SACF;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;YAC5B,wEAAwE;YACxE,IAAI,CAAC,kBAAkB,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAC/D,UAAU,QAAE,IAAI,CAAC,UAAU,mCAAI,UAAU;gBACzC,IAAI,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,SAAS;aACxB,CAAC,CAAC;YACH,IAAI,CAAC,KAAK,GAAG,CACX,MAAM,YAAY,CAChB,gBAAgB,QAChB,IAAI,CAAC,UAAU,mCAAI,UAAU,EAC7B,IAAI,CAAC,kBAAkB,CACxB,CACF,CAAC,KAAyB,CAAC;SAC7B;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAA0B,EAC1B,GAAiB;IAEjB,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE;QAC7D,OAAO;YACL,UAAU,EAAE,IAAI,UAAU,CACxB,gBAAgB,CAAC,UAAU,CAAC,MAAM,EAClC,gBAAgB,CAAC,UAAU,CAAC,UAAU,EACtC,gBAAgB,CAAC,UAAU,CAAC,OAAO,CACpC;YACD,SAAS,EAAE,gBAAgB,CAAC,SAAS,CAAC,MAAmB;SAC1D,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,eAAe,CAAC,eAAe,CACrD,WAAW,EACX,OAAO,CAAC,aAAa,CAAC,MAA6B,CACpD,CAAC;IACF,OAAO;QACL,eAAe;QACf,kBAAkB,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,EAAE,eAAe,CAAC;KAC5E,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EAAK,IAAsB,EAAc,EAAE;IAChF,IAAI;QACF,OAAO,MAAM,IAAI,EAAE,CAAC;KACrB;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACf,MAAM,CAAC,CAAC;KACT;AACH,CAAC,CAAC"}
|
@@ -29,10 +29,11 @@ export declare class LedgerConnection extends BaseConnection<LEDGER_SERVICE> {
|
|
29
29
|
* @param delegationIdentity
|
30
30
|
* @param canisterId
|
31
31
|
* @param ledgerCanisterId
|
32
|
+
* @param host
|
32
33
|
* @function {function name}
|
33
34
|
* @returns {type} {description}
|
34
35
|
*/
|
35
|
-
static createActor(delegationIdentity: DelegationIdentity, ledgerCanisterId?: string): Promise<CreateActorResult<LEDGER_SERVICE>>;
|
36
|
+
static createActor(delegationIdentity: DelegationIdentity, ledgerCanisterId?: string, host?: string): Promise<CreateActorResult<LEDGER_SERVICE>>;
|
36
37
|
static createConnectionWithII(identity: SignIdentity, delegationIdentity: DelegationIdentity, legerCanisterId?: string): Promise<LedgerConnection>;
|
37
38
|
static actorGetBalance(actor: ActorSubclass<LEDGER_SERVICE>, account: AccountIdentifier): Promise<bigint>;
|
38
39
|
static actorSend(actor: ActorSubclass<LEDGER_SERVICE>, { to, amount, sendOpts, }: {
|
@@ -28,11 +28,12 @@ export class LedgerConnection extends BaseConnection {
|
|
28
28
|
* @param delegationIdentity
|
29
29
|
* @param canisterId
|
30
30
|
* @param ledgerCanisterId
|
31
|
+
* @param host
|
31
32
|
* @function {function name}
|
32
33
|
* @returns {type} {description}
|
33
34
|
*/
|
34
|
-
static async createActor(delegationIdentity, ledgerCanisterId) {
|
35
|
-
const actor = await _createActor(ledger_idl, ledgerCanisterId !== null && ledgerCanisterId !== void 0 ? ledgerCanisterId : LEDGER_CANISTER_ID, delegationIdentity);
|
35
|
+
static async createActor(delegationIdentity, ledgerCanisterId, host) {
|
36
|
+
const actor = await _createActor(ledger_idl, ledgerCanisterId !== null && ledgerCanisterId !== void 0 ? ledgerCanisterId : LEDGER_CANISTER_ID, delegationIdentity, host);
|
36
37
|
return actor;
|
37
38
|
}
|
38
39
|
static async createConnectionWithII(identity, delegationIdentity, legerCanisterId) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ledgerConnection.js","sourceRoot":"","sources":["../../../src/connections/ledgerConnection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,UAAU,MAAM,yBAAyB,CAAC;AAWjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;
|
1
|
+
{"version":3,"file":"ledgerConnection.js","sourceRoot":"","sources":["../../../src/connections/ledgerConnection.ts"],"names":[],"mappings":"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"}
|
@@ -5,7 +5,7 @@ import { AnonymousIdentity, } from '@dfinity/agent';
|
|
5
5
|
import { isDelegationValid } from '@dfinity/authentication';
|
6
6
|
import { Delegation, DelegationChain, DelegationIdentity, Ed25519KeyIdentity, } from '@dfinity/identity';
|
7
7
|
import { PermissionsType, } from '../types';
|
8
|
-
import { IDENTITY_PROVIDER_DEFAULT, IDENTITY_PROVIDER_ENDPOINT,
|
8
|
+
import { IDENTITY_PROVIDER_DEFAULT, IDENTITY_PROVIDER_ENDPOINT, KEY_ICSTORAGE_DELEGATION, KEY_ICSTORAGE_KEY, KEY_ICSTORAGE_WALLET, ICStorage, _deleteStorage, } from './icStorage';
|
9
9
|
export class AuthClient {
|
10
10
|
constructor(_identity, _key, _chain, _storage, _appId, _wallet, _idpWindowOption,
|
11
11
|
// A handle on the IdP window.
|
@@ -26,19 +26,19 @@ export class AuthClient {
|
|
26
26
|
appId: '',
|
27
27
|
}) {
|
28
28
|
var _a;
|
29
|
-
const storage = (_a = options.storage) !== null && _a !== void 0 ? _a : new
|
29
|
+
const storage = (_a = options.storage) !== null && _a !== void 0 ? _a : new ICStorage('astrox-');
|
30
30
|
let key = null;
|
31
31
|
if (options.identity) {
|
32
32
|
key = options.identity;
|
33
33
|
}
|
34
34
|
else {
|
35
|
-
const maybeIdentityStorage = await storage.get(
|
35
|
+
const maybeIdentityStorage = await storage.get(KEY_ICSTORAGE_KEY);
|
36
36
|
if (maybeIdentityStorage) {
|
37
37
|
try {
|
38
38
|
key = Ed25519KeyIdentity.fromJSON(maybeIdentityStorage);
|
39
39
|
}
|
40
40
|
catch (e) {
|
41
|
-
// Ignore this, this means that the
|
41
|
+
// Ignore this, this means that the ICStorage value isn't a valid Ed25519KeyIdentity
|
42
42
|
// serialization.
|
43
43
|
}
|
44
44
|
}
|
@@ -48,8 +48,8 @@ export class AuthClient {
|
|
48
48
|
let wallet = null;
|
49
49
|
if (key) {
|
50
50
|
try {
|
51
|
-
const chainStorage = await storage.get(
|
52
|
-
wallet = await storage.get(
|
51
|
+
const chainStorage = await storage.get(KEY_ICSTORAGE_DELEGATION);
|
52
|
+
wallet = await storage.get(KEY_ICSTORAGE_WALLET);
|
53
53
|
if (chainStorage) {
|
54
54
|
chain = DelegationChain.fromJSON(chainStorage);
|
55
55
|
// Verify that the delegation isn't expired.
|
@@ -132,7 +132,7 @@ export class AuthClient {
|
|
132
132
|
// Create a new key (whether or not one was in storage).
|
133
133
|
key = Ed25519KeyIdentity.generate();
|
134
134
|
this._key = key;
|
135
|
-
await this._storage.set(
|
135
|
+
await this._storage.set(KEY_ICSTORAGE_KEY, JSON.stringify(key));
|
136
136
|
}
|
137
137
|
// Create the URL of the IDP. (e.g. https://XXXX/#authorize)
|
138
138
|
const identityProviderUrl = new URL(((_a = options === null || options === void 0 ? void 0 : options.identityProvider) === null || _a === void 0 ? void 0 : _a.toString()) || IDENTITY_PROVIDER_DEFAULT);
|
@@ -178,10 +178,10 @@ export class AuthClient {
|
|
178
178
|
// it a sync function. Having _handleSuccess as an async function
|
179
179
|
// messes up the jest tests for some reason.
|
180
180
|
if (this._chain) {
|
181
|
-
await this._storage.set(
|
181
|
+
await this._storage.set(KEY_ICSTORAGE_DELEGATION, JSON.stringify(this._chain.toJSON()));
|
182
182
|
}
|
183
183
|
if (this._wallet !== undefined) {
|
184
|
-
await this._storage.set(
|
184
|
+
await this._storage.set(KEY_ICSTORAGE_WALLET, this._wallet);
|
185
185
|
}
|
186
186
|
}
|
187
187
|
catch (err) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"icAuthClient.js","sourceRoot":"","sources":["../../../src/ic/icAuthClient.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,uDAAuD;AACvD,2EAA2E;AAC3E,OAAO,EACL,iBAAiB,GAKlB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EACL,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAUL,eAAe,GAChB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,
|
1
|
+
{"version":3,"file":"icAuthClient.js","sourceRoot":"","sources":["../../../src/ic/icAuthClient.ts"],"names":[],"mappings":"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"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { ActorSubclass, Identity } from '@dfinity/agent';
|
1
|
+
import { ActorSubclass, HttpAgent, Identity } from '@dfinity/agent';
|
2
2
|
import { InterfaceFactory } from '@dfinity/candid/lib/cjs/idl';
|
3
3
|
import { Principal } from '@dfinity/principal';
|
4
4
|
import { AuthClient } from './icAuthClient';
|
@@ -11,8 +11,9 @@ declare global {
|
|
11
11
|
}
|
12
12
|
export declare class IC extends ICWindow {
|
13
13
|
#private;
|
14
|
-
|
15
|
-
|
14
|
+
protected constructor(authClient: AuthClient, agent: HttpAgent);
|
15
|
+
static create(config: any): Promise<IC>;
|
16
|
+
connect(connectOptions: ConnectOptions): Promise<IC>;
|
16
17
|
isAuthenticated(): Promise<boolean>;
|
17
18
|
get identity(): Identity;
|
18
19
|
get principal(): Principal;
|
@@ -25,9 +26,10 @@ export declare class IC extends ICWindow {
|
|
25
26
|
returnTo?: string;
|
26
27
|
}) => Promise<void>;
|
27
28
|
queryBalance: () => Promise<bigint>;
|
28
|
-
handleAuthenticated: (
|
29
|
+
handleAuthenticated: ({ ledgerCanisterId, ledgerHost }: {
|
29
30
|
ledgerCanisterId?: string | undefined;
|
30
|
-
|
31
|
+
ledgerHost?: string | undefined;
|
32
|
+
}) => Promise<void>;
|
31
33
|
private injectWindow;
|
32
34
|
handleError(error?: string): void;
|
33
35
|
createActor: <T>(idlFactory: InterfaceFactory, canisterId: string) => ActorSubclass<T>;
|
package/lib/esm/ic/icConnect.js
CHANGED
@@ -20,7 +20,6 @@ import { IDENTITY_PROVIDER_DEFAULT } from './icStorage';
|
|
20
20
|
import { ICWindow } from './icWindow';
|
21
21
|
import { LedgerConnection } from '../connections/ledgerConnection';
|
22
22
|
import { PermissionsType, SignerMessageKind, TransactionMessageKind, } from '../types';
|
23
|
-
import { assert } from 'console';
|
24
23
|
const days = BigInt(1);
|
25
24
|
const hours = BigInt(24);
|
26
25
|
const nanoseconds = BigInt(3600000000000);
|
@@ -31,7 +30,7 @@ const SIGNER_PROVIDER_ENDPOINT = '#signer';
|
|
31
30
|
const FRAME_SETTING = 'height=600, width=800, top=0, right=0, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no';
|
32
31
|
const FRAME_SETTING_PAYMENT = 'height=600, width=480, top=0, right=0, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no';
|
33
32
|
export class IC extends ICWindow {
|
34
|
-
constructor(authClient) {
|
33
|
+
constructor(authClient, agent) {
|
35
34
|
super();
|
36
35
|
_authClient.set(this, void 0);
|
37
36
|
_agent.set(this, void 0);
|
@@ -48,21 +47,14 @@ export class IC extends ICWindow {
|
|
48
47
|
throw Error('Wallet address is not found');
|
49
48
|
}
|
50
49
|
if (__classPrivateFieldGet(this, _localLedger) === undefined) {
|
51
|
-
throw Error('Ledger connection
|
50
|
+
throw Error('Ledger connection failed');
|
52
51
|
}
|
53
52
|
const result = await ((_a = __classPrivateFieldGet(this, _localLedger)) === null || _a === void 0 ? void 0 : _a.getBalance(this.wallet));
|
54
53
|
return result;
|
55
54
|
};
|
56
|
-
this.handleAuthenticated = async (
|
57
|
-
const
|
58
|
-
__classPrivateFieldSet(this,
|
59
|
-
if (!process.env.isProduction) {
|
60
|
-
await __classPrivateFieldGet(this, _agent).fetchRootKey();
|
61
|
-
}
|
62
|
-
const actorResult = await LedgerConnection.createActor(ic.getAuthClient().getDelegationIdentity(), ledgerCanisterId);
|
63
|
-
__classPrivateFieldSet(this, _localLedger, LedgerConnection.createConnection(ic.getAuthClient().getInnerKey(), ic.getAuthClient().getDelegationIdentity(), ledgerCanisterId, actorResult.actor, __classPrivateFieldGet(this, _agent)));
|
64
|
-
this.injectWindow();
|
65
|
-
return new IC(ic.getAuthClient());
|
55
|
+
this.handleAuthenticated = async ({ ledgerCanisterId, ledgerHost }) => {
|
56
|
+
const actorResult = await LedgerConnection.createActor(this.getAuthClient().getDelegationIdentity(), ledgerCanisterId, ledgerHost);
|
57
|
+
__classPrivateFieldSet(this, _localLedger, LedgerConnection.createConnection(this.getAuthClient().getInnerKey(), this.getAuthClient().getDelegationIdentity(), ledgerCanisterId, actorResult.actor, __classPrivateFieldGet(this, _agent)));
|
66
58
|
};
|
67
59
|
this.createActor = (idlFactory, canisterId) => {
|
68
60
|
return Actor.createActor(idlFactory, {
|
@@ -73,7 +65,7 @@ export class IC extends ICWindow {
|
|
73
65
|
// requestTransfer
|
74
66
|
this.requestTransfer = async (options) => {
|
75
67
|
var _a;
|
76
|
-
assert(this.wallet !== undefined, 'wallet address is not found');
|
68
|
+
console.assert(this.wallet !== undefined, 'wallet address is not found');
|
77
69
|
const walletProviderUrl = new URL(((_a = options === null || options === void 0 ? void 0 : options.walletProvider) === null || _a === void 0 ? void 0 : _a.toString()) || __classPrivateFieldGet(this, _walletProvider) || WALLET_PROVIDER_DEFAULT);
|
78
70
|
walletProviderUrl.hash = WALLET_PROVIDER_ENDPOINT;
|
79
71
|
this._openWindow(walletProviderUrl.toString(), 'icWindow', __classPrivateFieldGet(this, _useFrame) ? FRAME_SETTING_PAYMENT : undefined);
|
@@ -84,7 +76,7 @@ export class IC extends ICWindow {
|
|
84
76
|
};
|
85
77
|
this.signMessage = async (options) => {
|
86
78
|
var _a;
|
87
|
-
assert(this.wallet !== undefined, 'wallet address is not found');
|
79
|
+
console.assert(this.wallet !== undefined, 'wallet address is not found');
|
88
80
|
const signerProviderUrl = new URL(((_a = options === null || options === void 0 ? void 0 : options.signerProvider) === null || _a === void 0 ? void 0 : _a.toString()) || __classPrivateFieldGet(this, _signerProvider) || SIGNER_PROVIDER_DEFAULT);
|
89
81
|
signerProviderUrl.hash = SIGNER_PROVIDER_ENDPOINT;
|
90
82
|
this._openWindow(signerProviderUrl.toString(), 'icWindow', __classPrivateFieldGet(this, _useFrame) ? FRAME_SETTING_PAYMENT : undefined);
|
@@ -94,38 +86,56 @@ export class IC extends ICWindow {
|
|
94
86
|
});
|
95
87
|
};
|
96
88
|
__classPrivateFieldSet(this, _authClient, authClient);
|
89
|
+
__classPrivateFieldSet(this, _agent, agent);
|
90
|
+
this.injectWindow();
|
97
91
|
}
|
98
|
-
static async
|
99
|
-
var _a, _b, _c
|
100
|
-
const authClient = await AuthClient.create(Object.assign(Object.assign({},
|
92
|
+
static async create(config) {
|
93
|
+
var _a, _b, _c;
|
94
|
+
const authClient = await AuthClient.create(Object.assign(Object.assign({}, config), { idpWindowOption: config.useFrame === true
|
101
95
|
? FRAME_SETTING
|
102
96
|
: undefined }));
|
103
|
-
const
|
104
|
-
const
|
105
|
-
newIC
|
106
|
-
|
107
|
-
|
97
|
+
const identity = authClient.getIdentity();
|
98
|
+
const agent = new HttpAgent({ identity });
|
99
|
+
const newIC = new this(authClient, agent);
|
100
|
+
if (config.dev) {
|
101
|
+
await agent.fetchRootKey();
|
102
|
+
}
|
103
|
+
newIC._setWalletProvider(config === null || config === void 0 ? void 0 : config.walletProviderUrl);
|
104
|
+
newIC._setSignerProvider(config === null || config === void 0 ? void 0 : config.signerProviderUrl);
|
105
|
+
newIC._setUseFrame(config === null || config === void 0 ? void 0 : config.useFrame);
|
108
106
|
if (await newIC.isAuthenticated()) {
|
109
|
-
await newIC.handleAuthenticated(
|
110
|
-
|
111
|
-
|
107
|
+
await newIC.handleAuthenticated({
|
108
|
+
ledgerCanisterId: (_a = config.ledgerCanisterId) !== null && _a !== void 0 ? _a : 'ryjl3-tyaaa-aaaaa-aaaba-cai',
|
109
|
+
ledgerHost: (_b = config.ledgerHost) !== null && _b !== void 0 ? _b : 'https://boundary.ic0.app/',
|
110
|
+
});
|
111
|
+
await ((_c = config === null || config === void 0 ? void 0 : config.onAuthenticated) === null || _c === void 0 ? void 0 : _c.call(config, newIC));
|
112
112
|
}
|
113
|
-
await newIC.getAuthClient().login({
|
114
|
-
identityProvider: provider,
|
115
|
-
// Maximum authorization expiration is 8 days
|
116
|
-
maxTimeToLive: (_c = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.maxTimeToLive) !== null && _c !== void 0 ? _c : days * hours * nanoseconds,
|
117
|
-
permissions: (_d = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.permissions) !== null && _d !== void 0 ? _d : [PermissionsType.identity],
|
118
|
-
onSuccess: async () => {
|
119
|
-
var _a, _b, _c;
|
120
|
-
await newIC.handleAuthenticated(newIC, {
|
121
|
-
ledgerCanisterId: connectOptions.ledgerCanisterId,
|
122
|
-
});
|
123
|
-
(_b = (await ((_a = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.onSuccess) === null || _a === void 0 ? void 0 : _a.call(connectOptions)))) !== null && _b !== void 0 ? _b : (await ((_c = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.onAuthenticated) === null || _c === void 0 ? void 0 : _c.call(connectOptions, newIC)));
|
124
|
-
},
|
125
|
-
onError: newIC.handleError,
|
126
|
-
});
|
127
113
|
return newIC;
|
128
114
|
}
|
115
|
+
async connect(connectOptions) {
|
116
|
+
var _a;
|
117
|
+
const provider = (_a = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.identityProvider) !== null && _a !== void 0 ? _a : IDENTITY_PROVIDER_DEFAULT;
|
118
|
+
await new Promise((resolve, reject) => {
|
119
|
+
var _a, _b;
|
120
|
+
this.getAuthClient().login({
|
121
|
+
identityProvider: provider,
|
122
|
+
// Maximum authorization expiration is 8 days
|
123
|
+
maxTimeToLive: (_a = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.maxTimeToLive) !== null && _a !== void 0 ? _a : days * hours * nanoseconds,
|
124
|
+
permissions: (_b = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.permissions) !== null && _b !== void 0 ? _b : [PermissionsType.identity],
|
125
|
+
onSuccess: async () => {
|
126
|
+
var _a, _b, _c, _d;
|
127
|
+
await this.handleAuthenticated({
|
128
|
+
ledgerCanisterId: connectOptions.ledgerCanisterId,
|
129
|
+
ledgerHost: (_a = connectOptions.ledgerHost) !== null && _a !== void 0 ? _a : 'https://boundary.ic0.app/',
|
130
|
+
});
|
131
|
+
(_c = (await ((_b = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.onSuccess) === null || _b === void 0 ? void 0 : _b.call(connectOptions)))) !== null && _c !== void 0 ? _c : (await ((_d = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.onAuthenticated) === null || _d === void 0 ? void 0 : _d.call(connectOptions, this)));
|
132
|
+
resolve(undefined);
|
133
|
+
},
|
134
|
+
onError: this.handleError,
|
135
|
+
});
|
136
|
+
});
|
137
|
+
return this;
|
138
|
+
}
|
129
139
|
async isAuthenticated() {
|
130
140
|
const result = await __classPrivateFieldGet(this, _authClient).isAuthenticated();
|
131
141
|
return result;
|
@@ -151,17 +161,12 @@ export class IC extends ICWindow {
|
|
151
161
|
getAuthClient() {
|
152
162
|
return __classPrivateFieldGet(this, _authClient);
|
153
163
|
}
|
154
|
-
injectWindow(
|
164
|
+
injectWindow() {
|
155
165
|
if (window.ic !== undefined) {
|
156
|
-
|
157
|
-
if (window.ic.plug !== undefined) {
|
158
|
-
plug = window.ic.plug;
|
159
|
-
}
|
160
|
-
window.ic = ic !== null && ic !== void 0 ? ic : this;
|
161
|
-
window.ic.plug = plug;
|
166
|
+
window.ic.astrox = this;
|
162
167
|
}
|
163
168
|
else {
|
164
|
-
window.ic =
|
169
|
+
window.ic = { astrox: this };
|
165
170
|
}
|
166
171
|
}
|
167
172
|
handleError(error) {
|
@@ -182,7 +187,7 @@ export class IC extends ICWindow {
|
|
182
187
|
from: (_a = options.from) !== null && _a !== void 0 ? _a : this.wallet,
|
183
188
|
message: options.message,
|
184
189
|
maxTimeout: (_b = options.maxTimeout) !== null && _b !== void 0 ? _b : 90,
|
185
|
-
successTimeout: (_c = options.successTimeout) !== null && _c !== void 0 ? _c : 10
|
190
|
+
successTimeout: (_c = options.successTimeout) !== null && _c !== void 0 ? _c : 10,
|
186
191
|
};
|
187
192
|
(_d = this._window) === null || _d === void 0 ? void 0 : _d.postMessage(request, walletProviderUrl.origin);
|
188
193
|
break;
|
@@ -221,7 +226,7 @@ export class IC extends ICWindow {
|
|
221
226
|
amount: options.amount,
|
222
227
|
sendOpts: options.sendOpts,
|
223
228
|
maxTimeout: (_b = options.maxTimeout) !== null && _b !== void 0 ? _b : 90,
|
224
|
-
successTimeout: (_c = options.successTimeout) !== null && _c !== void 0 ? _c : 10
|
229
|
+
successTimeout: (_c = options.successTimeout) !== null && _c !== void 0 ? _c : 10,
|
225
230
|
};
|
226
231
|
(_d = this._window) === null || _d === void 0 ? void 0 : _d.postMessage(request, walletProviderUrl.origin);
|
227
232
|
break;
|