@suilend/sui-fe-next 3.0.9 → 3.1.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,50 +1,3 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
- return new (P || (P = Promise))(function (resolve, reject) {
15
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
- step((generator = generator.apply(thisArg, _arguments || [])).next());
19
- });
20
- };
21
- var __generator = (this && this.__generator) || function (thisArg, body) {
22
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
23
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
- function verb(n) { return function (v) { return step([n, v]); }; }
25
- function step(op) {
26
- if (f) throw new TypeError("Generator is already executing.");
27
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
28
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
- if (y = 0, t) op = [op[0] & 2, t.value];
30
- switch (op[0]) {
31
- case 0: case 1: t = op; break;
32
- case 4: _.label++; return { value: op[1], done: false };
33
- case 5: _.label++; y = op[1]; op = [0]; continue;
34
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
- default:
36
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
- if (t[2]) _.ops.pop();
41
- _.trys.pop(); continue;
42
- }
43
- op = body.call(thisArg, _);
44
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
- }
47
- };
48
1
  import { normalizeStructTag } from "@mysten/sui/utils";
49
2
  import BigNumber from "bignumber.js";
50
3
  import useSWR from "swr";
@@ -52,56 +5,43 @@ import { useSettingsContext } from "../contexts/SettingsContext";
52
5
  import { useWalletContext } from "../contexts/WalletContext";
53
6
  import { showErrorToast } from "../lib/toasts";
54
7
  export default function useFetchBalances() {
55
- var _this = this;
56
- var suiGrpcClient = useSettingsContext().suiGrpcClient;
57
- var address = useWalletContext().address;
58
- var dataFetcher = function () { return __awaiter(_this, void 0, void 0, function () {
59
- var balancesMap, allBalances, cursor, hasNextPage, result, rawBalances, _i, rawBalances_1, rawBalance, totalBalance;
60
- return __generator(this, function (_a) {
61
- switch (_a.label) {
62
- case 0:
63
- balancesMap = {};
64
- if (!address) return [3 /*break*/, 4];
65
- allBalances = [];
66
- cursor = null;
67
- hasNextPage = true;
68
- _a.label = 1;
69
- case 1:
70
- if (!hasNextPage) return [3 /*break*/, 3];
71
- return [4 /*yield*/, suiGrpcClient.listBalances({
72
- owner: address,
73
- cursor: cursor,
74
- })];
75
- case 2:
76
- result = _a.sent();
77
- allBalances = allBalances.concat(result.balances);
78
- cursor = result.cursor;
79
- hasNextPage = result.hasNextPage;
80
- return [3 /*break*/, 1];
81
- case 3:
82
- rawBalances = allBalances
83
- .map(function (b) { return (__assign(__assign({}, b), { coinType: normalizeStructTag(b.coinType) })); })
84
- .sort(function (a, b) { return (a.coinType < b.coinType ? -1 : 1); });
85
- for (_i = 0, rawBalances_1 = rawBalances; _i < rawBalances_1.length; _i++) {
86
- rawBalance = rawBalances_1[_i];
87
- totalBalance = new BigNumber(rawBalance.balance);
88
- if (totalBalance.gt(0))
89
- balancesMap[rawBalance.coinType] = totalBalance;
90
- }
91
- _a.label = 4;
92
- case 4: return [2 /*return*/, balancesMap];
8
+ const { suiGrpcClient } = useSettingsContext();
9
+ const { address } = useWalletContext();
10
+ const dataFetcher = async () => {
11
+ const balancesMap = {};
12
+ if (address) {
13
+ let allBalances = [];
14
+ let cursor = null;
15
+ let hasNextPage = true;
16
+ while (hasNextPage) {
17
+ const result = await suiGrpcClient.listBalances({
18
+ owner: address,
19
+ cursor,
20
+ });
21
+ allBalances = allBalances.concat(result.balances);
22
+ cursor = result.cursor;
23
+ hasNextPage = result.hasNextPage;
93
24
  }
94
- });
95
- }); };
96
- var _a = useSWR("balances-".concat(address), dataFetcher, {
25
+ const rawBalances = allBalances
26
+ .map((b) => ({ ...b, coinType: normalizeStructTag(b.coinType) }))
27
+ .sort((a, b) => (a.coinType < b.coinType ? -1 : 1));
28
+ for (const rawBalance of rawBalances) {
29
+ const totalBalance = new BigNumber(rawBalance.balance);
30
+ if (totalBalance.gt(0))
31
+ balancesMap[rawBalance.coinType] = totalBalance;
32
+ }
33
+ }
34
+ return balancesMap;
35
+ };
36
+ const { data, mutate } = useSWR(`balances-${address}`, dataFetcher, {
97
37
  refreshInterval: 15 * 1000,
98
- onSuccess: function (data) {
38
+ onSuccess: (data) => {
99
39
  console.log("Refreshed wallet balances", data);
100
40
  },
101
- onError: function (err) {
41
+ onError: (err) => {
102
42
  showErrorToast("Failed to refresh wallet balances", err);
103
43
  console.error(err);
104
44
  },
105
- }), data = _a.data, mutate = _a.mutate;
106
- return { data: data, mutateData: mutate };
45
+ });
46
+ return { data, mutateData: mutate };
107
47
  }
@@ -1,5 +1,5 @@
1
1
  import { LastSignedTransaction } from "@suilend/sui-fe";
2
2
  export declare const useLastSignedTransaction: <T>(prefix: string) => {
3
- lastSignedTransactionRef: import("react").MutableRefObject<LastSignedTransaction<T> | undefined>;
3
+ lastSignedTransactionRef: import("react").RefObject<LastSignedTransaction<T> | undefined>;
4
4
  setLastSignedTransaction: (value: LastSignedTransaction<T> | undefined) => void;
5
5
  };
package/hooks/keypair.js CHANGED
@@ -1,19 +1,19 @@
1
1
  import { useRef } from "react";
2
2
  // LAST SIGNED TRANSACTION
3
- export var useLastSignedTransaction = function (prefix) {
4
- var lastSignedTransactionRef = useRef((function () {
5
- var value = window.localStorage.getItem("".concat(prefix, "-lastSignedTransaction"));
3
+ export const useLastSignedTransaction = (prefix) => {
4
+ const lastSignedTransactionRef = useRef((() => {
5
+ const value = window.localStorage.getItem(`${prefix}-lastSignedTransaction`);
6
6
  return value !== null
7
7
  ? JSON.parse(value)
8
8
  : undefined;
9
9
  })());
10
- var setLastSignedTransaction = function (value) {
10
+ const setLastSignedTransaction = (value) => {
11
11
  console.log("[setLastSignedTransaction]", value);
12
12
  lastSignedTransactionRef.current = value;
13
13
  if (value === undefined)
14
- window.localStorage.removeItem("".concat(prefix, "-lastSignedTransaction"));
14
+ window.localStorage.removeItem(`${prefix}-lastSignedTransaction`);
15
15
  else
16
- window.localStorage.setItem("".concat(prefix, "-lastSignedTransaction"), JSON.stringify(value));
16
+ window.localStorage.setItem(`${prefix}-lastSignedTransaction`, JSON.stringify(value));
17
17
  };
18
- return { lastSignedTransactionRef: lastSignedTransactionRef, setLastSignedTransaction: setLastSignedTransaction };
18
+ return { lastSignedTransactionRef, setLastSignedTransaction };
19
19
  };
@@ -1,75 +1,18 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
- return new (P || (P = Promise))(function (resolve, reject) {
15
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
- step((generator = generator.apply(thisArg, _arguments || [])).next());
19
- });
20
- };
21
- var __generator = (this && this.__generator) || function (thisArg, body) {
22
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
23
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
- function verb(n) { return function (v) { return step([n, v]); }; }
25
- function step(op) {
26
- if (f) throw new TypeError("Generator is already executing.");
27
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
28
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
- if (y = 0, t) op = [op[0] & 2, t.value];
30
- switch (op[0]) {
31
- case 0: case 1: t = op; break;
32
- case 4: _.label++; return { value: op[1], done: false };
33
- case 5: _.label++; y = op[1]; op = [0]; continue;
34
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
- default:
36
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
- if (t[2]) _.ops.pop();
41
- _.trys.pop(); continue;
42
- }
43
- op = body.call(thisArg, _);
44
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
- }
47
- };
48
1
  import { useEffect, useRef, useState } from "react";
49
2
  import { getCoinMetadataMap } from "@suilend/sui-fe";
50
- var useCoinMetadataMap = function (coinTypes) {
3
+ const useCoinMetadataMap = (coinTypes) => {
51
4
  // State
52
- var _a = useState(undefined), coinMetadataMap = _a[0], setCoinMetadataMap = _a[1];
53
- var coinTypesBeingFetchedRef = useRef([]);
54
- useEffect(function () {
55
- (function () { return __awaiter(void 0, void 0, void 0, function () {
56
- var filteredCoinTypes, coinMetadataMap;
57
- var _a;
58
- return __generator(this, function (_b) {
59
- switch (_b.label) {
60
- case 0:
61
- filteredCoinTypes = Array.from(new Set(coinTypes)).filter(function (coinType) { return !coinTypesBeingFetchedRef.current.includes(coinType); });
62
- if (filteredCoinTypes.length === 0)
63
- return [2 /*return*/];
64
- (_a = coinTypesBeingFetchedRef.current).push.apply(_a, filteredCoinTypes);
65
- return [4 /*yield*/, getCoinMetadataMap(filteredCoinTypes)];
66
- case 1:
67
- coinMetadataMap = _b.sent();
68
- setCoinMetadataMap(function (prev) { return (__assign(__assign({}, (prev !== null && prev !== void 0 ? prev : {})), coinMetadataMap)); });
69
- return [2 /*return*/];
70
- }
71
- });
72
- }); })();
5
+ const [coinMetadataMap, setCoinMetadataMap] = useState(undefined);
6
+ const coinTypesBeingFetchedRef = useRef([]);
7
+ useEffect(() => {
8
+ (async () => {
9
+ const filteredCoinTypes = Array.from(new Set(coinTypes)).filter((coinType) => !coinTypesBeingFetchedRef.current.includes(coinType));
10
+ if (filteredCoinTypes.length === 0)
11
+ return;
12
+ coinTypesBeingFetchedRef.current.push(...filteredCoinTypes);
13
+ const coinMetadataMap = await getCoinMetadataMap(filteredCoinTypes);
14
+ setCoinMetadataMap((prev) => ({ ...(prev ?? {}), ...coinMetadataMap }));
15
+ })();
73
16
  }, [coinTypes]);
74
17
  return coinMetadataMap;
75
18
  };
@@ -1,2 +1,2 @@
1
- var useIsAndroid = function () { return /android/i.test(navigator.userAgent); };
1
+ const useIsAndroid = () => /android/i.test(navigator.userAgent);
2
2
  export default useIsAndroid;
@@ -1,7 +1,5 @@
1
1
  import { useMediaQuery } from "react-responsive";
2
- var useIsTouchscreen = function () {
3
- return useMediaQuery({
4
- query: "(pointer: coarse)",
5
- });
6
- };
2
+ const useIsTouchscreen = () => useMediaQuery({
3
+ query: "(pointer: coarse)",
4
+ });
7
5
  export default useIsTouchscreen;
@@ -1,7 +1,5 @@
1
- var useIsiOS = function () {
2
- return /iPad/i.test(navigator.userAgent) ||
3
- /iPhone/i.test(navigator.userAgent) ||
4
- /iPod/i.test(navigator.userAgent) ||
5
- (navigator.platform === "MacIntel" && navigator.maxTouchPoints > 1);
6
- }; // iPad iOS 13
1
+ const useIsiOS = () => /iPad/i.test(navigator.userAgent) ||
2
+ /iPhone/i.test(navigator.userAgent) ||
3
+ /iPod/i.test(navigator.userAgent) ||
4
+ (navigator.platform === "MacIntel" && navigator.maxTouchPoints > 1); // iPad iOS 13
7
5
  export default useIsiOS;
@@ -1,71 +1,26 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- var __generator = (this && this.__generator) || function (thisArg, body) {
11
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
12
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
- function verb(n) { return function (v) { return step([n, v]); }; }
14
- function step(op) {
15
- if (f) throw new TypeError("Generator is already executing.");
16
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
- if (y = 0, t) op = [op[0] & 2, t.value];
19
- switch (op[0]) {
20
- case 0: case 1: t = op; break;
21
- case 4: _.label++; return { value: op[1], done: false };
22
- case 5: _.label++; y = op[1]; op = [0]; continue;
23
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
- default:
25
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
- if (t[2]) _.ops.pop();
30
- _.trys.pop(); continue;
31
- }
32
- op = body.call(thisArg, _);
33
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
- }
36
- };
37
1
  import { useCallback, useState } from "react";
38
2
  import { getLedgerHash } from "@suilend/sui-fe";
39
3
  import { useSettingsContext } from "../contexts/SettingsContext";
40
4
  import { useWalletContext } from "../contexts/WalletContext";
41
- var useLedgerHashDialog = function () {
42
- var suiGrpcClient = useSettingsContext().suiGrpcClient;
43
- var _a = useWalletContext(), address = _a.address, isUsingLedger = _a.isUsingLedger;
44
- var _b = useState(undefined), ledgerHash = _b[0], setLedgerHash = _b[1];
45
- var _c = useState(false), isOpen = _c[0], setIsOpen = _c[1];
46
- var open = useCallback(function (transaction) { return __awaiter(void 0, void 0, void 0, function () {
47
- var transactionLedgerHash;
48
- return __generator(this, function (_a) {
49
- switch (_a.label) {
50
- case 0:
51
- if (!address)
52
- return [2 /*return*/];
53
- if (!isUsingLedger)
54
- return [2 /*return*/];
55
- return [4 /*yield*/, getLedgerHash(address, transaction, suiGrpcClient)];
56
- case 1:
57
- transactionLedgerHash = _a.sent();
58
- setLedgerHash(transactionLedgerHash);
59
- setIsOpen(true);
60
- return [2 /*return*/];
61
- }
62
- });
63
- }); }, [address, isUsingLedger, suiGrpcClient]);
64
- var close = useCallback(function () {
5
+ const useLedgerHashDialog = () => {
6
+ const { suiGrpcClient } = useSettingsContext();
7
+ const { address, isUsingLedger } = useWalletContext();
8
+ const [ledgerHash, setLedgerHash] = useState(undefined);
9
+ const [isOpen, setIsOpen] = useState(false);
10
+ const open = useCallback(async (transaction) => {
11
+ if (!address)
12
+ return;
13
+ if (!isUsingLedger)
14
+ return;
15
+ const transactionLedgerHash = await getLedgerHash(address, transaction, suiGrpcClient);
16
+ setLedgerHash(transactionLedgerHash);
17
+ setIsOpen(true);
18
+ }, [address, isUsingLedger, suiGrpcClient]);
19
+ const close = useCallback(() => {
65
20
  setIsOpen(false);
66
21
  }, []);
67
22
  return {
68
- ledgerHash: ledgerHash,
23
+ ledgerHash,
69
24
  isLedgerHashDialogOpen: isOpen,
70
25
  openLedgerHashDialog: open,
71
26
  closeLedgerHashDialog: close,
@@ -1,92 +1,39 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- var __generator = (this && this.__generator) || function (thisArg, body) {
11
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
12
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
- function verb(n) { return function (v) { return step([n, v]); }; }
14
- function step(op) {
15
- if (f) throw new TypeError("Generator is already executing.");
16
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
- if (y = 0, t) op = [op[0] & 2, t.value];
19
- switch (op[0]) {
20
- case 0: case 1: t = op; break;
21
- case 4: _.label++; return { value: op[1], done: false };
22
- case 5: _.label++; y = op[1]; op = [0]; continue;
23
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
- default:
25
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
- if (t[2]) _.ops.pop();
30
- _.trys.pop(); continue;
31
- }
32
- op = body.call(thisArg, _);
33
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
- }
36
- };
37
1
  import { useEffect, useRef } from "react";
38
2
  import { isEqual } from "lodash";
39
3
  import { useSettingsContext } from "../contexts/SettingsContext";
40
4
  import { useWalletContext } from "../contexts/WalletContext";
41
- var useRefreshOnBalancesChange = function (refresh) {
42
- var suiGrpcClient = useSettingsContext().suiGrpcClient;
43
- var address = useWalletContext().address;
44
- var previousBalancesRef = useRef(undefined);
45
- useEffect(function () {
5
+ const useRefreshOnBalancesChange = (refresh) => {
6
+ const { suiGrpcClient } = useSettingsContext();
7
+ const { address } = useWalletContext();
8
+ const previousBalancesRef = useRef(undefined);
9
+ useEffect(() => {
46
10
  if (!address)
47
11
  return;
48
12
  previousBalancesRef.current = undefined;
49
- var interval = setInterval(function () { return __awaiter(void 0, void 0, void 0, function () {
50
- var allBalances, cursor, hasNextPage, result, err_1;
51
- return __generator(this, function (_a) {
52
- switch (_a.label) {
53
- case 0:
54
- _a.trys.push([0, 6, , 7]);
55
- allBalances = [];
56
- cursor = null;
57
- hasNextPage = true;
58
- _a.label = 1;
59
- case 1:
60
- if (!hasNextPage) return [3 /*break*/, 3];
61
- return [4 /*yield*/, suiGrpcClient.listBalances({
62
- owner: address,
63
- cursor: cursor,
64
- })];
65
- case 2:
66
- result = _a.sent();
67
- allBalances = allBalances.concat(result.balances);
68
- cursor = result.cursor;
69
- hasNextPage = result.hasNextPage;
70
- return [3 /*break*/, 1];
71
- case 3:
72
- if (!(previousBalancesRef.current !== undefined &&
73
- !isEqual(allBalances, previousBalancesRef.current))) return [3 /*break*/, 5];
74
- return [4 /*yield*/, refresh()];
75
- case 4:
76
- _a.sent();
77
- _a.label = 5;
78
- case 5:
79
- previousBalancesRef.current = allBalances;
80
- return [3 /*break*/, 7];
81
- case 6:
82
- err_1 = _a.sent();
83
- console.error(err_1);
84
- return [3 /*break*/, 7];
85
- case 7: return [2 /*return*/];
13
+ const interval = setInterval(async () => {
14
+ try {
15
+ let allBalances = [];
16
+ let cursor = null;
17
+ let hasNextPage = true;
18
+ while (hasNextPage) {
19
+ const result = await suiGrpcClient.listBalances({
20
+ owner: address,
21
+ cursor,
22
+ });
23
+ allBalances = allBalances.concat(result.balances);
24
+ cursor = result.cursor;
25
+ hasNextPage = result.hasNextPage;
86
26
  }
87
- });
88
- }); }, 1000 * 5);
89
- return function () {
27
+ if (previousBalancesRef.current !== undefined &&
28
+ !isEqual(allBalances, previousBalancesRef.current))
29
+ await refresh();
30
+ previousBalancesRef.current = allBalances;
31
+ }
32
+ catch (err) {
33
+ console.error(err);
34
+ }
35
+ }, 1000 * 5);
36
+ return () => {
90
37
  if (interval !== undefined)
91
38
  clearInterval(interval);
92
39
  };
package/lib/connector.js CHANGED
@@ -1,81 +1,36 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- var __generator = (this && this.__generator) || function (thisArg, body) {
11
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
12
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
- function verb(n) { return function (v) { return step([n, v]); }; }
14
- function step(op) {
15
- if (f) throw new TypeError("Generator is already executing.");
16
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
- if (y = 0, t) op = [op[0] & 2, t.value];
19
- switch (op[0]) {
20
- case 0: case 1: t = op; break;
21
- case 4: _.label++; return { value: op[1], done: false };
22
- case 5: _.label++; y = op[1]; op = [0]; continue;
23
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
- default:
25
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
- if (t[2]) _.ops.pop();
30
- _.trys.pop(); continue;
31
- }
32
- op = body.call(thisArg, _);
33
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
- }
36
- };
37
1
  import { UniversalConnector } from "@reown/appkit-universal-connector";
38
2
  // Get projectId from https://dashboard.reown.com
39
- export var projectId = "eebad6a56ec8b3f08b70175934d35a9d";
40
- export function getUniversalConnector(rpcUrl) {
41
- return __awaiter(this, void 0, void 0, function () {
42
- var universalConnector;
43
- return __generator(this, function (_a) {
44
- switch (_a.label) {
45
- case 0: return [4 /*yield*/, UniversalConnector.init({
46
- projectId: projectId,
47
- metadata: {
48
- name: "Suilend",
49
- description: "Sui's DeFi Suite",
50
- url: "https://suilend.fi/",
51
- icons: ["https://suilend.fi/favicon.ico"],
52
- },
53
- networks: [
54
- {
55
- methods: [
56
- "sui_signPersonalMessage",
57
- "sui_signTransaction",
58
- "sui_signAndExecuteTransaction",
59
- ],
60
- chains: [
61
- {
62
- id: 784,
63
- chainNamespace: "sui",
64
- caipNetworkId: "sui:mainnet",
65
- name: "Sui",
66
- nativeCurrency: { name: "SUI", symbol: "SUI", decimals: 9 },
67
- rpcUrls: { default: { http: [rpcUrl] } },
68
- },
69
- ],
70
- events: [],
71
- namespace: "sui",
72
- },
73
- ],
74
- })];
75
- case 1:
76
- universalConnector = _a.sent();
77
- return [2 /*return*/, universalConnector];
78
- }
79
- });
3
+ export const projectId = "eebad6a56ec8b3f08b70175934d35a9d";
4
+ export async function getUniversalConnector(rpcUrl) {
5
+ const universalConnector = await UniversalConnector.init({
6
+ projectId,
7
+ metadata: {
8
+ name: "Suilend",
9
+ description: "Sui's DeFi Suite",
10
+ url: "https://suilend.fi/",
11
+ icons: ["https://suilend.fi/favicon.ico"],
12
+ },
13
+ networks: [
14
+ {
15
+ methods: [
16
+ "sui_signPersonalMessage",
17
+ "sui_signTransaction",
18
+ "sui_signAndExecuteTransaction",
19
+ ],
20
+ chains: [
21
+ {
22
+ id: 784,
23
+ chainNamespace: "sui",
24
+ caipNetworkId: "sui:mainnet",
25
+ name: "Sui",
26
+ nativeCurrency: { name: "SUI", symbol: "SUI", decimals: 9 },
27
+ rpcUrls: { default: { http: [rpcUrl] } },
28
+ },
29
+ ],
30
+ events: [],
31
+ namespace: "sui",
32
+ },
33
+ ],
80
34
  });
35
+ return universalConnector;
81
36
  }
package/lib/router.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { UrlObject } from "url";
1
+ import { UrlObject } from "node:url";
2
2
  import { NextRouter } from "next/router";
3
3
  export declare const shallowPushQuery: (router: NextRouter, query: UrlObject["query"]) => Promise<boolean>;
4
4
  export declare const shallowReplaceQuery: (router: NextRouter, query: UrlObject["query"]) => Promise<boolean>;
package/lib/router.js CHANGED
@@ -1,2 +1,2 @@
1
- export var shallowPushQuery = function (router, query) { return router.push({ query: query }, undefined, { shallow: true }); };
2
- export var shallowReplaceQuery = function (router, query) { return router.replace({ query: query }, undefined, { shallow: true }); };
1
+ export const shallowPushQuery = (router, query) => router.push({ query }, undefined, { shallow: true });
2
+ export const shallowReplaceQuery = (router, query) => router.replace({ query }, undefined, { shallow: true });