@coinflowlabs/react 1.1.2 → 1.3.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.
- package/README.md +10 -0
- package/build/cjs/CoinflowIFrame.d.ts +8 -5
- package/build/cjs/CoinflowIFrame.js +9 -17
- package/build/cjs/CoinflowIFrame.js.map +1 -1
- package/build/cjs/CoinflowPurchase.d.ts +32 -7
- package/build/cjs/CoinflowPurchase.js +37 -9
- package/build/cjs/CoinflowPurchase.js.map +1 -1
- package/build/cjs/CoinflowPurchaseHistory.d.ts +1 -1
- package/build/cjs/CoinflowPurchaseHistory.js +9 -9
- package/build/cjs/CoinflowPurchaseHistory.js.map +1 -1
- package/build/cjs/CoinflowUtils.d.ts +37 -13
- package/build/cjs/CoinflowUtils.js +19 -6
- package/build/cjs/CoinflowUtils.js.map +1 -1
- package/build/cjs/CoinflowWithdraw.d.ts +12 -6
- package/build/cjs/CoinflowWithdraw.js +23 -9
- package/build/cjs/CoinflowWithdraw.js.map +1 -1
- package/build/cjs/CoinflowWithdrawHistory.d.ts +2 -17
- package/build/cjs/CoinflowWithdrawHistory.js +21 -9
- package/build/cjs/CoinflowWithdrawHistory.js.map +1 -1
- package/build/cjs/CommonCoinflowProps.d.ts +25 -0
- package/build/cjs/CommonCoinflowProps.js +3 -0
- package/build/cjs/CommonCoinflowProps.js.map +1 -0
- package/build/cjs/EthIFrameMessageHandlers.d.ts +7 -0
- package/build/cjs/EthIFrameMessageHandlers.js +46 -0
- package/build/cjs/EthIFrameMessageHandlers.js.map +1 -0
- package/build/cjs/NearIFrameMessageHandlers.js +1 -22
- package/build/cjs/NearIFrameMessageHandlers.js.map +1 -1
- package/build/cjs/SolanaIFrameMessageHandlers.d.ts +1 -1
- package/build/cjs/SolanaIFrameMessageHandlers.js +22 -30
- package/build/cjs/SolanaIFrameMessageHandlers.js.map +1 -1
- package/build/cjs/index.js +1 -1
- package/build/cjs/useIframeWallet.d.ts +1 -1
- package/build/cjs/useIframeWallet.js +24 -21
- package/build/cjs/useIframeWallet.js.map +1 -1
- package/build/esm/CoinflowIFrame.d.ts +8 -5
- package/build/esm/CoinflowIFrame.js +7 -15
- package/build/esm/CoinflowIFrame.js.map +1 -1
- package/build/esm/CoinflowPurchase.d.ts +32 -7
- package/build/esm/CoinflowPurchase.js +33 -6
- package/build/esm/CoinflowPurchase.js.map +1 -1
- package/build/esm/CoinflowPurchaseHistory.d.ts +1 -1
- package/build/esm/CoinflowPurchaseHistory.js +7 -7
- package/build/esm/CoinflowPurchaseHistory.js.map +1 -1
- package/build/esm/CoinflowUtils.d.ts +37 -13
- package/build/esm/CoinflowUtils.js +18 -5
- package/build/esm/CoinflowUtils.js.map +1 -1
- package/build/esm/CoinflowWithdraw.d.ts +12 -6
- package/build/esm/CoinflowWithdraw.js +21 -7
- package/build/esm/CoinflowWithdraw.js.map +1 -1
- package/build/esm/CoinflowWithdrawHistory.d.ts +2 -17
- package/build/esm/CoinflowWithdrawHistory.js +20 -8
- package/build/esm/CoinflowWithdrawHistory.js.map +1 -1
- package/build/esm/CommonCoinflowProps.d.ts +25 -0
- package/build/esm/CommonCoinflowProps.js +2 -0
- package/build/esm/CommonCoinflowProps.js.map +1 -0
- package/build/esm/EthIFrameMessageHandlers.d.ts +7 -0
- package/build/esm/EthIFrameMessageHandlers.js +42 -0
- package/build/esm/EthIFrameMessageHandlers.js.map +1 -0
- package/build/esm/NearIFrameMessageHandlers.js +0 -21
- package/build/esm/NearIFrameMessageHandlers.js.map +1 -1
- package/build/esm/SolanaIFrameMessageHandlers.d.ts +1 -1
- package/build/esm/SolanaIFrameMessageHandlers.js +18 -26
- package/build/esm/SolanaIFrameMessageHandlers.js.map +1 -1
- package/build/esm/useIframeWallet.d.ts +1 -1
- package/build/esm/useIframeWallet.js +23 -20
- package/build/esm/useIframeWallet.js.map +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { __awaiter, __generator } from "tslib";
|
|
2
|
+
import { useCallback } from 'react';
|
|
3
|
+
export function useEthIFrameMessageHandlers(_a) {
|
|
4
|
+
var _this = this;
|
|
5
|
+
var wallet = _a.wallet;
|
|
6
|
+
var handleSendTransaction = useCallback(function (_a) {
|
|
7
|
+
var data = _a.data;
|
|
8
|
+
return __awaiter(_this, void 0, void 0, function () {
|
|
9
|
+
var transaction, hash;
|
|
10
|
+
return __generator(this, function (_b) {
|
|
11
|
+
switch (_b.label) {
|
|
12
|
+
case 0:
|
|
13
|
+
transaction = JSON.parse(Buffer.from(data, 'base64').toString());
|
|
14
|
+
return [4 /*yield*/, wallet.sendTransaction(transaction)];
|
|
15
|
+
case 1:
|
|
16
|
+
hash = (_b.sent()).hash;
|
|
17
|
+
return [2 /*return*/, hash];
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
});
|
|
21
|
+
}, [wallet]);
|
|
22
|
+
var handleSignMessage = useCallback(function (_a) {
|
|
23
|
+
var data = _a.data;
|
|
24
|
+
return __awaiter(_this, void 0, void 0, function () {
|
|
25
|
+
return __generator(this, function (_b) {
|
|
26
|
+
switch (_b.label) {
|
|
27
|
+
case 0:
|
|
28
|
+
console.log('handleSignMessage');
|
|
29
|
+
if (!wallet.signMessage)
|
|
30
|
+
throw new Error('Wallet does not support message signing!');
|
|
31
|
+
return [4 /*yield*/, wallet.signMessage(data)];
|
|
32
|
+
case 1: return [2 /*return*/, _b.sent()];
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
}, [wallet]);
|
|
37
|
+
return {
|
|
38
|
+
handleSendTransaction: handleSendTransaction,
|
|
39
|
+
handleSignMessage: handleSignMessage,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=EthIFrameMessageHandlers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EthIFrameMessageHandlers.js","sourceRoot":"","sources":["../../src/EthIFrameMessageHandlers.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,OAAO,CAAC;AAMlC,MAAM,UAAU,2BAA2B,CAAC,EAI3C;IAJD,iBA6BC;QA5BC,MAAM,YAAA;IAIN,IAAM,qBAAqB,GAAG,WAAW,CACvC,UAAO,EAAkB;YAAjB,IAAI,UAAA;;;;;;wBACJ,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;wBACxD,qBAAM,MAAM,CAAC,eAAe,CAAC,WAAW,CAAC,EAAA;;wBAAjD,IAAI,GAAI,CAAA,SAAyC,CAAA,KAA7C;wBACX,sBAAO,IAAI,EAAC;;;;KACb,EACD,CAAC,MAAM,CAAC,CACT,CAAC;IAEF,IAAM,iBAAiB,GAAG,WAAW,CACnC,UAAO,EAAkB;YAAjB,IAAI,UAAA;;;;;wBACV,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;wBACjC,IAAI,CAAC,MAAM,CAAC,WAAW;4BACrB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;wBAEvD,qBAAM,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,EAAA;4BAArC,sBAAO,SAA8B,EAAC;;;;KACvC,EACD,CAAC,MAAM,CAAC,CACT,CAAC;IAEF,OAAO;QACL,qBAAqB,uBAAA;QACrB,iBAAiB,mBAAA;KAClB,CAAC;AACJ,CAAC"}
|
|
@@ -3,26 +3,6 @@ import { useCallback } from 'react';
|
|
|
3
3
|
export function useNearIFrameMessageHandlers(_a) {
|
|
4
4
|
var _this = this;
|
|
5
5
|
var wallet = _a.wallet;
|
|
6
|
-
var handleSignMessage = useCallback(function (_a) {
|
|
7
|
-
var data = _a.data;
|
|
8
|
-
return __awaiter(_this, void 0, void 0, function () {
|
|
9
|
-
var message, owner;
|
|
10
|
-
return __generator(this, function (_b) {
|
|
11
|
-
switch (_b.label) {
|
|
12
|
-
case 0:
|
|
13
|
-
message = data;
|
|
14
|
-
return [4 /*yield*/, wallet.verifyOwner({
|
|
15
|
-
message: message
|
|
16
|
-
})];
|
|
17
|
-
case 1:
|
|
18
|
-
owner = _b.sent();
|
|
19
|
-
if (!owner)
|
|
20
|
-
throw new Error('Wallet did not sign');
|
|
21
|
-
return [2 /*return*/, JSON.stringify(owner)];
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
});
|
|
25
|
-
}, [wallet]);
|
|
26
6
|
var handleSendTransaction = useCallback(function (_a) {
|
|
27
7
|
var data = _a.data;
|
|
28
8
|
return __awaiter(_this, void 0, void 0, function () {
|
|
@@ -44,7 +24,6 @@ export function useNearIFrameMessageHandlers(_a) {
|
|
|
44
24
|
}, [wallet]);
|
|
45
25
|
return {
|
|
46
26
|
handleSendTransaction: handleSendTransaction,
|
|
47
|
-
handleSignMessage: handleSignMessage
|
|
48
27
|
};
|
|
49
28
|
}
|
|
50
29
|
//# sourceMappingURL=NearIFrameMessageHandlers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NearIFrameMessageHandlers.js","sourceRoot":"","sources":["../../src/NearIFrameMessageHandlers.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,OAAO,CAAC;AAIlC,MAAM,UAAU,4BAA4B,CAAC,EAI5C;IAJD,
|
|
1
|
+
{"version":3,"file":"NearIFrameMessageHandlers.js","sourceRoot":"","sources":["../../src/NearIFrameMessageHandlers.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,OAAO,CAAC;AAIlC,MAAM,UAAU,4BAA4B,CAAC,EAI5C;IAJD,iBAmBC;QAlBC,MAAM,YAAA;IAIN,IAAM,qBAAqB,GAAG,WAAW,CACvC,UAAO,EAAkB;YAAjB,IAAI,UAAA;;;;;;wBACJ,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;wBACzC,qBAAM,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAA;;wBAA9D,gBAAgB,GAAG,SAA2C;wBACpE,IAAI,CAAC,gBAAgB;4BAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;wBAC/C,iBAAiB,GAAI,gBAAgB,YAApB,CAAqB;wBAC1D,sBAAO,iBAAiB,CAAC,IAAI,EAAC;;;;KAC/B,EACD,CAAC,MAAM,CAAC,CACT,CAAC;IAEF,OAAO;QACL,qBAAqB,uBAAA;KACtB,CAAC;AACJ,CAAC"}
|
|
@@ -11,8 +11,8 @@ export type SolanaIFrameWalletProps = {
|
|
|
11
11
|
debugTx?: boolean;
|
|
12
12
|
};
|
|
13
13
|
export type IFrameMessageHandlers = {
|
|
14
|
+
handleSignMessage?: ({ data }: WalletCall) => Promise<string>;
|
|
14
15
|
handleSignTransaction?: ({ data }: WalletCall) => Promise<string>;
|
|
15
16
|
handleSendTransaction: ({ data }: WalletCall) => Promise<string>;
|
|
16
|
-
handleSignMessage: ({ data }: WalletCall) => Promise<string>;
|
|
17
17
|
};
|
|
18
18
|
export declare function useSolanaIFrameMessageHandlers({ wallet, connection, partialSigners, debugTx, }: SolanaIFrameWalletProps): IFrameMessageHandlers;
|
|
@@ -5,39 +5,32 @@ import { Transaction, VersionedTransaction, } from '@solana/web3.js';
|
|
|
5
5
|
export function useSolanaIFrameMessageHandlers(_a) {
|
|
6
6
|
var _this = this;
|
|
7
7
|
var wallet = _a.wallet, connection = _a.connection, partialSigners = _a.partialSigners, _b = _a.debugTx, debugTx = _b === void 0 ? false : _b;
|
|
8
|
-
var handleSignMessage = useCallback(function (_a) {
|
|
9
|
-
var data = _a.data;
|
|
10
|
-
return __awaiter(_this, void 0, void 0, function () {
|
|
11
|
-
var signature;
|
|
12
|
-
return __generator(this, function (_b) {
|
|
13
|
-
switch (_b.label) {
|
|
14
|
-
case 0:
|
|
15
|
-
if (!wallet.signMessage)
|
|
16
|
-
throw new Error('Wallet does not support message signing'); // TODO see if this is correct
|
|
17
|
-
return [4 /*yield*/, wallet.signMessage(base58.decode(data))];
|
|
18
|
-
case 1:
|
|
19
|
-
signature = _b.sent();
|
|
20
|
-
return [2 /*return*/, base58.encode(signature)];
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
});
|
|
24
|
-
}, [wallet]);
|
|
25
8
|
var sendTransactionDebug = useCallback(function (tx) { return __awaiter(_this, void 0, void 0, function () {
|
|
26
|
-
var signedTx, serializedTx, signature;
|
|
27
|
-
|
|
28
|
-
|
|
9
|
+
var signedTx, serializedTx, simulation, _i, _a, log, signature;
|
|
10
|
+
var _b;
|
|
11
|
+
return __generator(this, function (_c) {
|
|
12
|
+
switch (_c.label) {
|
|
29
13
|
case 0:
|
|
30
14
|
if (!wallet.signTransaction)
|
|
31
15
|
throw new Error('Wallet does not support sign transaction');
|
|
32
16
|
return [4 /*yield*/, wallet.signTransaction(tx)];
|
|
33
17
|
case 1:
|
|
34
|
-
signedTx =
|
|
18
|
+
signedTx = _c.sent();
|
|
35
19
|
serializedTx = signedTx.serialize();
|
|
20
|
+
return [4 /*yield*/, connection.simulateTransaction(signedTx)];
|
|
21
|
+
case 2:
|
|
22
|
+
simulation = (_c.sent()).value;
|
|
23
|
+
console.log('simulation logs:');
|
|
24
|
+
for (_i = 0, _a = (_b = simulation.logs) !== null && _b !== void 0 ? _b : []; _i < _a.length; _i++) {
|
|
25
|
+
log = _a[_i];
|
|
26
|
+
console.log(log);
|
|
27
|
+
}
|
|
36
28
|
return [4 /*yield*/, connection.sendRawTransaction(serializedTx, {
|
|
37
|
-
skipPreflight: true
|
|
29
|
+
skipPreflight: true,
|
|
38
30
|
})];
|
|
39
|
-
case
|
|
40
|
-
signature =
|
|
31
|
+
case 3:
|
|
32
|
+
signature = _c.sent();
|
|
33
|
+
console.log('signature', signature);
|
|
41
34
|
return [2 /*return*/, signature];
|
|
42
35
|
}
|
|
43
36
|
});
|
|
@@ -116,7 +109,7 @@ export function useSolanaIFrameMessageHandlers(_a) {
|
|
|
116
109
|
signedTransaction = _b.sent();
|
|
117
110
|
return [2 /*return*/, base58.encode(signedTransaction.serialize({
|
|
118
111
|
requireAllSignatures: false,
|
|
119
|
-
verifySignatures: false
|
|
112
|
+
verifySignatures: false,
|
|
120
113
|
}))];
|
|
121
114
|
}
|
|
122
115
|
});
|
|
@@ -125,7 +118,6 @@ export function useSolanaIFrameMessageHandlers(_a) {
|
|
|
125
118
|
return {
|
|
126
119
|
handleSignTransaction: handleSignTransaction,
|
|
127
120
|
handleSendTransaction: handleSendTransaction,
|
|
128
|
-
handleSignMessage: handleSignMessage
|
|
129
121
|
};
|
|
130
122
|
}
|
|
131
123
|
//# sourceMappingURL=SolanaIFrameMessageHandlers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolanaIFrameMessageHandlers.js","sourceRoot":"","sources":["../../src/SolanaIFrameMessageHandlers.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,OAAO,CAAC;AAClC,OAAO,MAAM,MAAM,MAAM,CAAC;AAC1B,OAAO,EAGL,WAAW,EACX,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAkBzB,MAAM,UAAU,8BAA8B,CAAC,EAKrB;IAL1B,
|
|
1
|
+
{"version":3,"file":"SolanaIFrameMessageHandlers.js","sourceRoot":"","sources":["../../src/SolanaIFrameMessageHandlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
import { IFrameMessageHandlers } from './SolanaIFrameMessageHandlers';
|
|
3
3
|
export type OnSuccessMethod = (params: string) => void | Promise<void>;
|
|
4
4
|
export declare function useIframeWallet({ handleSignTransaction, handleSendTransaction, handleSignMessage, }: IFrameMessageHandlers, onSuccess?: OnSuccessMethod): {
|
|
5
|
-
IFrameRef: import("react").
|
|
5
|
+
IFrameRef: import("react").MutableRefObject<HTMLIFrameElement | null>;
|
|
6
6
|
};
|
|
@@ -5,15 +5,15 @@ export function useIframeWallet(_a, onSuccess) {
|
|
|
5
5
|
var handleSignTransaction = _a.handleSignTransaction, handleSendTransaction = _a.handleSendTransaction, handleSignMessage = _a.handleSignMessage;
|
|
6
6
|
var IFrameRef = useRef(null);
|
|
7
7
|
var sendIFrameMessage = useCallback(function (message) {
|
|
8
|
-
var _a;
|
|
8
|
+
var _a, _b;
|
|
9
9
|
if (!((_a = IFrameRef === null || IFrameRef === void 0 ? void 0 : IFrameRef.current) === null || _a === void 0 ? void 0 : _a.contentWindow))
|
|
10
10
|
throw new Error('Iframe not defined');
|
|
11
|
-
IFrameRef.current.contentWindow.postMessage(message, '*');
|
|
11
|
+
(_b = IFrameRef.current) === null || _b === void 0 ? void 0 : _b.contentWindow.postMessage(message, '*');
|
|
12
12
|
}, [IFrameRef]);
|
|
13
13
|
var handleIframeMessages = useCallback(function (_a) {
|
|
14
14
|
var data = _a.data;
|
|
15
15
|
return __awaiter(_this, void 0, void 0, function () {
|
|
16
|
-
var parsedData, _b,
|
|
16
|
+
var parsedData, _b, signature, signedTransaction, signedMessage, e_1, message;
|
|
17
17
|
return __generator(this, function (_c) {
|
|
18
18
|
switch (_c.label) {
|
|
19
19
|
case 0:
|
|
@@ -23,40 +23,43 @@ export function useIframeWallet(_a, onSuccess) {
|
|
|
23
23
|
return [2 /*return*/];
|
|
24
24
|
_b = parsedData.method;
|
|
25
25
|
switch (_b) {
|
|
26
|
-
case '
|
|
27
|
-
case '
|
|
28
|
-
case '
|
|
29
|
-
case '
|
|
26
|
+
case 'sendTransaction': return [3 /*break*/, 1];
|
|
27
|
+
case 'success': return [3 /*break*/, 3];
|
|
28
|
+
case 'signTransaction': return [3 /*break*/, 4];
|
|
29
|
+
case 'signMessage': return [3 /*break*/, 6];
|
|
30
30
|
}
|
|
31
31
|
return [3 /*break*/, 8];
|
|
32
|
-
case 1: return [4 /*yield*/,
|
|
32
|
+
case 1: return [4 /*yield*/, handleSendTransaction(parsedData)];
|
|
33
33
|
case 2:
|
|
34
|
-
message = _c.sent();
|
|
35
|
-
sendIFrameMessage(message);
|
|
36
|
-
return [3 /*break*/, 9];
|
|
37
|
-
case 3: return [4 /*yield*/, handleSendTransaction(parsedData)];
|
|
38
|
-
case 4:
|
|
39
34
|
signature = _c.sent();
|
|
40
35
|
sendIFrameMessage(signature);
|
|
41
36
|
return [3 /*break*/, 9];
|
|
42
|
-
case
|
|
37
|
+
case 3:
|
|
43
38
|
{
|
|
44
39
|
if (onSuccess)
|
|
45
40
|
onSuccess(data);
|
|
46
41
|
return [3 /*break*/, 9];
|
|
47
42
|
}
|
|
48
|
-
_c.label =
|
|
49
|
-
case
|
|
43
|
+
_c.label = 4;
|
|
44
|
+
case 4:
|
|
50
45
|
if (!handleSignTransaction)
|
|
51
46
|
throw new Error("This wallet does not support method ".concat(parsedData.method));
|
|
52
47
|
return [4 /*yield*/, handleSignTransaction(parsedData)];
|
|
53
|
-
case
|
|
48
|
+
case 5:
|
|
54
49
|
signedTransaction = _c.sent();
|
|
55
50
|
sendIFrameMessage(signedTransaction);
|
|
56
51
|
return [3 /*break*/, 9];
|
|
52
|
+
case 6:
|
|
53
|
+
if (!handleSignMessage)
|
|
54
|
+
throw new Error("This wallet does not support method ".concat(parsedData.method));
|
|
55
|
+
return [4 /*yield*/, handleSignMessage(parsedData)];
|
|
56
|
+
case 7:
|
|
57
|
+
signedMessage = _c.sent();
|
|
58
|
+
sendIFrameMessage(signedMessage);
|
|
59
|
+
return [3 /*break*/, 9];
|
|
57
60
|
case 8:
|
|
58
61
|
{
|
|
59
|
-
throw new Error("Unsupported Wallet Method ".concat(parsedData.method, ", must be
|
|
62
|
+
throw new Error("Unsupported Wallet Method ".concat(parsedData.method, ", must be sendTransaction"));
|
|
60
63
|
}
|
|
61
64
|
_c.label = 9;
|
|
62
65
|
case 9: return [3 /*break*/, 11];
|
|
@@ -76,11 +79,11 @@ export function useIframeWallet(_a, onSuccess) {
|
|
|
76
79
|
});
|
|
77
80
|
});
|
|
78
81
|
}, [
|
|
79
|
-
handleSignMessage,
|
|
80
82
|
handleSendTransaction,
|
|
83
|
+
sendIFrameMessage,
|
|
81
84
|
onSuccess,
|
|
82
85
|
handleSignTransaction,
|
|
83
|
-
|
|
86
|
+
handleSignMessage,
|
|
84
87
|
]);
|
|
85
88
|
useEffect(function () {
|
|
86
89
|
if (!window)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useIframeWallet.js","sourceRoot":"","sources":["../../src/useIframeWallet.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,WAAW,EAAE,SAAS,EAAE,MAAM,EAAC,MAAM,OAAO,CAAC;AAKrD,MAAM,UAAU,eAAe,CAC7B,EAIwB,EACxB,SAA2B;IAN7B,
|
|
1
|
+
{"version":3,"file":"useIframeWallet.js","sourceRoot":"","sources":["../../src/useIframeWallet.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coinflowlabs/react",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"description": "React Component for Coinflow Withdraw",
|
|
5
5
|
"main": "./build/cjs/index.js",
|
|
6
6
|
"module": "./build/esm/index.js",
|
|
@@ -24,15 +24,15 @@
|
|
|
24
24
|
],
|
|
25
25
|
"dependencies": {
|
|
26
26
|
"bs58": "^5.0.0",
|
|
27
|
-
"@solana/web3.js": "^1.
|
|
27
|
+
"@solana/web3.js": "^1.74.0",
|
|
28
28
|
"bn.js": "^5.2.1"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
|
-
"@types/react": "^18.0.
|
|
31
|
+
"@types/react": "^18.0.29",
|
|
32
32
|
"eslint-config-react-app": "^7.0.1",
|
|
33
33
|
"react": "^18.2.0",
|
|
34
34
|
"react-dom": "^18.2.0",
|
|
35
|
-
"typescript": "^
|
|
35
|
+
"typescript": "^5.0.2"
|
|
36
36
|
},
|
|
37
37
|
"peerDependencies": {
|
|
38
38
|
"react": ">=16"
|