@dappworks/kit 0.4.182 → 0.4.184
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/dist/dev.d.mts +3 -3
- package/dist/experimental.d.mts +3 -3
- package/dist/form.d.mts +15 -15
- package/dist/index.d.mts +3 -3
- package/dist/inspector.d.mts +2 -2
- package/dist/jsontable.d.mts +8 -8
- package/dist/metrics.d.mts +15 -15
- package/dist/plugins.d.mts +11 -11
- package/dist/ui.d.mts +7 -7
- package/dist/wallet.d.mts +8 -5
- package/dist/wallet.mjs +66 -21
- package/dist/wallet.mjs.map +1 -1
- package/package.json +1 -1
package/dist/wallet.mjs
CHANGED
|
@@ -12,7 +12,7 @@ import './chunk-K7LFG5BA.mjs';
|
|
|
12
12
|
import { __commonJS, __spreadValues, __spreadProps, __toESM } from './chunk-2EXDWOHY.mjs';
|
|
13
13
|
import { RainbowKitProvider, darkTheme, lightTheme, getDefaultConfig, useConnectModal } from '@rainbow-me/rainbowkit';
|
|
14
14
|
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
|
|
15
|
-
import
|
|
15
|
+
import React6, { useEffect } from 'react';
|
|
16
16
|
import { observer } from 'mobx-react-lite';
|
|
17
17
|
import { WagmiProvider, useWalletClient, useAccount, useSwitchChain, useConnect, useDisconnect } from 'wagmi';
|
|
18
18
|
import BigNumber from 'bignumber.js';
|
|
@@ -20,6 +20,7 @@ import EventEmitter from 'events';
|
|
|
20
20
|
import { encodeFunctionData, hashMessage, hashTypedData } from 'viem';
|
|
21
21
|
import { iopayWallet, metaMaskWallet, walletConnectWallet, okxWallet, binanceWallet } from '@rainbow-me/rainbowkit/wallets';
|
|
22
22
|
import { iotex, iotexTestnet as iotexTestnet$1 } from 'viem/chains';
|
|
23
|
+
import { Checkbox, Tooltip, Button, Popover, PopoverTrigger, PopoverContent, Input, Table, TableHeader, TableColumn, TableBody, TableRow, TableCell } from '@nextui-org/react';
|
|
23
24
|
|
|
24
25
|
// ../../node_modules/@safe-global/safe-gateway-typescript-sdk/dist/utils.js
|
|
25
26
|
var require_utils = __commonJS({
|
|
@@ -2292,7 +2293,7 @@ var render = (icon, props, inline, ref) => {
|
|
|
2292
2293
|
componentProps.dangerouslySetInnerHTML = {
|
|
2293
2294
|
__html: cleanUpInnerHTML(replaceIDs(item.body, id ? () => id + "ID" + localCounter++ : "iconifyReact"))
|
|
2294
2295
|
};
|
|
2295
|
-
return
|
|
2296
|
+
return React6.createElement("svg", componentProps);
|
|
2296
2297
|
}
|
|
2297
2298
|
const { body, width, height } = icon;
|
|
2298
2299
|
const useMask = mode === "mask" || (mode === "bg" ? false : body.indexOf("currentColor") !== -1);
|
|
@@ -2305,7 +2306,7 @@ var render = (icon, props, inline, ref) => {
|
|
|
2305
2306
|
"width": fixSize(renderAttribs.width),
|
|
2306
2307
|
"height": fixSize(renderAttribs.height)
|
|
2307
2308
|
}), commonProps), useMask ? monotoneProps : coloredProps), customStyle);
|
|
2308
|
-
return
|
|
2309
|
+
return React6.createElement("span", componentProps);
|
|
2309
2310
|
};
|
|
2310
2311
|
allowSimpleNames(true);
|
|
2311
2312
|
setAPIModule("", fetchAPIModule);
|
|
@@ -2352,7 +2353,7 @@ if (typeof document !== "undefined" && typeof window !== "undefined") {
|
|
|
2352
2353
|
}
|
|
2353
2354
|
}
|
|
2354
2355
|
}
|
|
2355
|
-
var IconComponent = class extends
|
|
2356
|
+
var IconComponent = class extends React6.Component {
|
|
2356
2357
|
constructor(props) {
|
|
2357
2358
|
super(props);
|
|
2358
2359
|
this.state = {
|
|
@@ -2462,7 +2463,7 @@ var IconComponent = class extends React2.Component {
|
|
|
2462
2463
|
const props = this.props;
|
|
2463
2464
|
const icon = this.state.icon;
|
|
2464
2465
|
if (icon === null) {
|
|
2465
|
-
return props.children ? props.children :
|
|
2466
|
+
return props.children ? props.children : React6.createElement("span", {});
|
|
2466
2467
|
}
|
|
2467
2468
|
let newProps = props;
|
|
2468
2469
|
if (icon.classes) {
|
|
@@ -2473,19 +2474,19 @@ var IconComponent = class extends React2.Component {
|
|
|
2473
2474
|
return render(__spreadValues(__spreadValues({}, defaultIconProps), icon.data), newProps, props._inline, props._ref);
|
|
2474
2475
|
}
|
|
2475
2476
|
};
|
|
2476
|
-
var Icon =
|
|
2477
|
+
var Icon = React6.forwardRef(function Icon2(props, ref) {
|
|
2477
2478
|
const newProps = __spreadProps(__spreadValues({}, props), {
|
|
2478
2479
|
_ref: ref,
|
|
2479
2480
|
_inline: false
|
|
2480
2481
|
});
|
|
2481
|
-
return
|
|
2482
|
+
return React6.createElement(IconComponent, newProps);
|
|
2482
2483
|
});
|
|
2483
|
-
|
|
2484
|
+
React6.forwardRef(function InlineIcon2(props, ref) {
|
|
2484
2485
|
const newProps = __spreadProps(__spreadValues({}, props), {
|
|
2485
2486
|
_ref: ref,
|
|
2486
2487
|
_inline: true
|
|
2487
2488
|
});
|
|
2488
|
-
return
|
|
2489
|
+
return React6.createElement(IconComponent, newProps);
|
|
2489
2490
|
});
|
|
2490
2491
|
|
|
2491
2492
|
// module/Wallet/walletPluginStore.tsx
|
|
@@ -2612,15 +2613,15 @@ var WalletRpcStore = class {
|
|
|
2612
2613
|
}
|
|
2613
2614
|
scoreIcon(score) {
|
|
2614
2615
|
if (score < 0) {
|
|
2615
|
-
return /* @__PURE__ */
|
|
2616
|
+
return /* @__PURE__ */ React6.createElement(Icon, { icon: "codicon:error", width: "18", height: "18", style: { color: "#FF0000" } });
|
|
2616
2617
|
}
|
|
2617
2618
|
if (score < 1) {
|
|
2618
|
-
return /* @__PURE__ */
|
|
2619
|
+
return /* @__PURE__ */ React6.createElement(Icon, { icon: "icon-park-solid:check-one", width: "18", height: "18", style: { color: "#289726" } });
|
|
2619
2620
|
}
|
|
2620
2621
|
if (score < 2) {
|
|
2621
|
-
return /* @__PURE__ */
|
|
2622
|
+
return /* @__PURE__ */ React6.createElement(Icon, { icon: "bxs:error", width: "18", height: "18", style: { color: "#FFA500" } });
|
|
2622
2623
|
}
|
|
2623
|
-
return /* @__PURE__ */
|
|
2624
|
+
return /* @__PURE__ */ React6.createElement(Icon, { icon: "codicon:error", width: "18", height: "18", style: { color: "#FF0000" } });
|
|
2624
2625
|
}
|
|
2625
2626
|
get wallet() {
|
|
2626
2627
|
return RootStore.Get(WalletStore);
|
|
@@ -3236,20 +3237,20 @@ var sdk_default = SafeAppsSDK;
|
|
|
3236
3237
|
// ../../node_modules/@safe-global/safe-apps-sdk/dist/esm/index.js
|
|
3237
3238
|
var esm_default = sdk_default;
|
|
3238
3239
|
var SuccessTxDialog = observer((props) => {
|
|
3239
|
-
return /* @__PURE__ */
|
|
3240
|
+
return /* @__PURE__ */ React6.createElement("div", { className: "flex-col gap-4 py-10" }, /* @__PURE__ */ React6.createElement("div", { className: "w-full flex items-center justify-center" }, /* @__PURE__ */ React6.createElement(Icon, { icon: "icon-park-solid:check-one", width: "48", height: "48", className: "text-green-500" })), /* @__PURE__ */ React6.createElement("div", { className: "text-2xl font-[900] text-center mt-4" }, props.msg), /* @__PURE__ */ React6.createElement(
|
|
3240
3241
|
"div",
|
|
3241
3242
|
{
|
|
3242
3243
|
className: "flex items-center justify-center text-green-500 text-sm mt-6 gap-2 cursor-pointer hover:text-green-600 transition",
|
|
3243
3244
|
onClick: (e) => window.open(`https://iotexscan.io/tx/${props.hash}`, "_blank")
|
|
3244
3245
|
},
|
|
3245
3246
|
"View on IoTeXScan ",
|
|
3246
|
-
/* @__PURE__ */
|
|
3247
|
+
/* @__PURE__ */ React6.createElement(Icon, { icon: "material-symbols:chip-extraction-rounded", width: "18", height: "18" })
|
|
3247
3248
|
));
|
|
3248
3249
|
});
|
|
3249
3250
|
var ShowSuccessTxDialog = ({ msg, hash }) => {
|
|
3250
3251
|
RootStore.Get(DialogStore).setData({
|
|
3251
3252
|
title: "",
|
|
3252
|
-
content: /* @__PURE__ */
|
|
3253
|
+
content: /* @__PURE__ */ React6.createElement(SuccessTxDialog, { msg, hash }),
|
|
3253
3254
|
isOpen: true
|
|
3254
3255
|
});
|
|
3255
3256
|
};
|
|
@@ -3379,6 +3380,9 @@ var WalletStore = class _WalletStore {
|
|
|
3379
3380
|
this.event.emit("walletAccount:ready");
|
|
3380
3381
|
}
|
|
3381
3382
|
}, [address, isConnected, chain]);
|
|
3383
|
+
useEffect(() => {
|
|
3384
|
+
this.balance.call();
|
|
3385
|
+
}, [this.updateTicker]);
|
|
3382
3386
|
}
|
|
3383
3387
|
//always return or return default chain
|
|
3384
3388
|
get publicClient() {
|
|
@@ -3402,8 +3406,6 @@ var WalletStore = class _WalletStore {
|
|
|
3402
3406
|
const promise = new Promise(async (res, rej) => {
|
|
3403
3407
|
var _a, _b;
|
|
3404
3408
|
try {
|
|
3405
|
-
if (typeof window == "undefined")
|
|
3406
|
-
return;
|
|
3407
3409
|
if (this.account) {
|
|
3408
3410
|
if (Number((_a = this.chain) == null ? void 0 : _a.id) == Number(chainId)) {
|
|
3409
3411
|
res();
|
|
@@ -3643,14 +3645,57 @@ var WalletProvider = observer(({
|
|
|
3643
3645
|
}, [appName]);
|
|
3644
3646
|
return (
|
|
3645
3647
|
//@ts-ignore
|
|
3646
|
-
/* @__PURE__ */
|
|
3648
|
+
/* @__PURE__ */ React6.createElement(WagmiProvider, { config: walletConfig.rainbowKitConfig, reconnectOnMount: true }, /* @__PURE__ */ React6.createElement(QueryClientProvider, { client: queryClient }, /* @__PURE__ */ React6.createElement(RainbowKitProvider, { locale: "en", theme: theme == "dark" ? darkTheme() : lightTheme() }, children, /* @__PURE__ */ React6.createElement(WalletConnect, null))))
|
|
3647
3649
|
);
|
|
3648
3650
|
});
|
|
3649
3651
|
var WalletConnect = () => {
|
|
3650
3652
|
const wallet = RootStore.Get(WalletStore);
|
|
3651
3653
|
wallet.use();
|
|
3652
|
-
return /* @__PURE__ */
|
|
3654
|
+
return /* @__PURE__ */ React6.createElement(React6.Fragment, null);
|
|
3653
3655
|
};
|
|
3656
|
+
var RpcList = observer(() => {
|
|
3657
|
+
var _a, _b;
|
|
3658
|
+
RootStore.Get(WalletStore);
|
|
3659
|
+
const rpcStore = RootStore.Get(WalletRpcStore);
|
|
3660
|
+
useEffect(() => {
|
|
3661
|
+
rpcStore.testRpc();
|
|
3662
|
+
}, []);
|
|
3663
|
+
return /* @__PURE__ */ React6.createElement("div", { className: "mb-3 mt-2" }, /* @__PURE__ */ React6.createElement("div", { className: "w-full flex mb-2" }, /* @__PURE__ */ React6.createElement("div", { className: "flex items-center justify-center gap-2" }, /* @__PURE__ */ React6.createElement(Checkbox, { size: "sm", isSelected: rpcStore.isAutoSelectRpc.value, onValueChange: (e) => rpcStore.isAutoSelectRpc.save(e) }, "Auto select rpc"), /* @__PURE__ */ React6.createElement(Tooltip, { content: /* @__PURE__ */ React6.createElement("div", { className: "w-[300px]" }, "Once selected, if the current RPC cannot send a request, an available RPC will be automatically chosen.") }, /* @__PURE__ */ React6.createElement(Icon, { icon: "ph:question", width: "18", height: "18", className: "text-gray-500" }))), /* @__PURE__ */ React6.createElement(Button, { startContent: /* @__PURE__ */ React6.createElement(Icon, { icon: "tabler:test-pipe", width: "18", height: "18" }), className: "ml-auto", onClick: (e) => {
|
|
3664
|
+
rpcStore.testRpc();
|
|
3665
|
+
} }, "Test"), /* @__PURE__ */ React6.createElement(Popover, { placement: "bottom", offset: 20, showArrow: true, isOpen: rpcStore.showCustomRpc, onOpenChange: (open) => rpcStore.showCustomRpc = open }, /* @__PURE__ */ React6.createElement(PopoverTrigger, null, /* @__PURE__ */ React6.createElement(Button, { color: "primary", startContent: /* @__PURE__ */ React6.createElement(Icon, { icon: "basil:add-solid", width: "18", height: "18" }), className: "ml-4" }, "Add custom rpc")), /* @__PURE__ */ React6.createElement(PopoverContent, null, /* @__PURE__ */ React6.createElement("div", { className: "px-1 py-2" }, /* @__PURE__ */ React6.createElement(
|
|
3666
|
+
Input,
|
|
3667
|
+
{
|
|
3668
|
+
type: "url",
|
|
3669
|
+
className: "mb-4",
|
|
3670
|
+
placeholder: "https://rpc.com",
|
|
3671
|
+
value: rpcStore.customRpc,
|
|
3672
|
+
onValueChange: (value) => {
|
|
3673
|
+
rpcStore.customRpc = value;
|
|
3674
|
+
}
|
|
3675
|
+
}
|
|
3676
|
+
), /* @__PURE__ */ React6.createElement(Button, { color: "primary", isDisabled: !rpcStore.customRpc, onClick: (e) => rpcStore.addCustomRpc() }, "Save"))))), /* @__PURE__ */ React6.createElement(
|
|
3677
|
+
Table,
|
|
3678
|
+
{
|
|
3679
|
+
color: "success",
|
|
3680
|
+
selectionMode: "single",
|
|
3681
|
+
defaultSelectedKeys: [rpcStore.curRpc.value],
|
|
3682
|
+
"aria-label": "Example static collection table"
|
|
3683
|
+
},
|
|
3684
|
+
/* @__PURE__ */ React6.createElement(TableHeader, null, /* @__PURE__ */ React6.createElement(TableColumn, null, "RPC Server Address"), /* @__PURE__ */ React6.createElement(TableColumn, { align: "center" }, "Score"), /* @__PURE__ */ React6.createElement(TableColumn, { align: "center" }, "Height"), /* @__PURE__ */ React6.createElement(TableColumn, { align: "center" }, "Latency"), /* @__PURE__ */ React6.createElement(TableColumn, { align: "center" }, "Action")),
|
|
3685
|
+
/* @__PURE__ */ React6.createElement(TableBody, null, (_b = (_a = rpcStore.rpcList) == null ? void 0 : _a.value) == null ? void 0 : _b.map((item, index) => {
|
|
3686
|
+
return /* @__PURE__ */ React6.createElement(TableRow, { className: "cursor-pointer", key: item.name, onClick: (e) => {
|
|
3687
|
+
rpcStore.curRpc.save(item.name);
|
|
3688
|
+
RootStore.Get(ToastPlugin).success("Set rpc success");
|
|
3689
|
+
} }, /* @__PURE__ */ React6.createElement(TableCell, null, item.name), /* @__PURE__ */ React6.createElement(TableCell, null, rpcStore.scoreIcon(item.latency)), /* @__PURE__ */ React6.createElement(TableCell, null, item.height), /* @__PURE__ */ React6.createElement(TableCell, { className: rpcStore.latencyColor(item.latency) }, item.latency, "s"), /* @__PURE__ */ React6.createElement(TableCell, null, /* @__PURE__ */ React6.createElement("div", { className: "relative flex items-center gap-2" }, /* @__PURE__ */ React6.createElement(Tooltip, { content: "Add to metamask" }, /* @__PURE__ */ React6.createElement("span", { className: "text-lg text-danger cursor-pointer active:opacity-50", onClick: (e) => {
|
|
3690
|
+
e.stopPropagation();
|
|
3691
|
+
rpcStore.addToMetamask(item.name);
|
|
3692
|
+
} }, /* @__PURE__ */ React6.createElement(Icon, { icon: "logos:metamask-icon", width: "18", height: "18" }))), item.custom && /* @__PURE__ */ React6.createElement(Tooltip, { content: "Remove" }, /* @__PURE__ */ React6.createElement("span", { className: "text-lg text-danger cursor-pointer active:opacity-50", onClick: (e) => {
|
|
3693
|
+
e.stopPropagation();
|
|
3694
|
+
rpcStore.removeRpc(item.name);
|
|
3695
|
+
} }, /* @__PURE__ */ React6.createElement(Icon, { icon: "solar:trash-bin-minimalistic-broken", width: "20", height: "20" }))))));
|
|
3696
|
+
}))
|
|
3697
|
+
));
|
|
3698
|
+
});
|
|
3654
3699
|
var iotex2 = __spreadValues({
|
|
3655
3700
|
iconUrl: "https://icons.llamao.fi/icons/chains/rsz_iotex.jpg"
|
|
3656
3701
|
}, iotex);
|
|
@@ -3658,6 +3703,6 @@ var iotexTestnet = __spreadValues({
|
|
|
3658
3703
|
iconUrl: "https://icons.llamao.fi/icons/chains/rsz_iotex.jpg"
|
|
3659
3704
|
}, iotexTestnet$1);
|
|
3660
3705
|
|
|
3661
|
-
export { WalletConfigStore, WalletHistoryStore, WalletProvider, WalletRpcStore, WalletStore, iotex2 as iotex, iotexTestnet };
|
|
3706
|
+
export { RpcList, WalletConfigStore, WalletHistoryStore, WalletProvider, WalletRpcStore, WalletStore, iotex2 as iotex, iotexTestnet };
|
|
3662
3707
|
//# sourceMappingURL=out.js.map
|
|
3663
3708
|
//# sourceMappingURL=wallet.mjs.map
|