@kimafinance/kima-transaction-widget 1.3.1-beta.1 → 1.3.2
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/index.cjs +797 -505
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +145 -11
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +168 -0
- package/dist/index.d.ts +168 -0
- package/dist/index.js +699 -407
- package/dist/index.js.map +1 -1
- package/dist/metafile-cjs.json +1 -1
- package/dist/metafile-esm.json +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -45,8 +45,8 @@ __export(index_exports, {
|
|
|
45
45
|
module.exports = __toCommonJS(index_exports);
|
|
46
46
|
|
|
47
47
|
// src/KimaProvider.tsx
|
|
48
|
-
var
|
|
49
|
-
var
|
|
48
|
+
var React77 = __toESM(require("react"), 1);
|
|
49
|
+
var import_react91 = require("react");
|
|
50
50
|
var import_react_redux14 = require("react-redux");
|
|
51
51
|
|
|
52
52
|
// src/store/index.tsx
|
|
@@ -155,7 +155,7 @@ var FooterLogo_default = FooterLogo;
|
|
|
155
155
|
|
|
156
156
|
// src/assets/icons/Check.tsx
|
|
157
157
|
var import_react4 = __toESM(require("react"), 1);
|
|
158
|
-
var Check = ({ width =
|
|
158
|
+
var Check = ({ width = 30, height = 30, fill = "#86B8CE", ...rest }) => {
|
|
159
159
|
return /* @__PURE__ */ import_react4.default.createElement(
|
|
160
160
|
"svg",
|
|
161
161
|
{
|
|
@@ -1143,6 +1143,148 @@ var Bera = ({ width = 31, height = 30, ...rest }) => {
|
|
|
1143
1143
|
};
|
|
1144
1144
|
var Bera_default = Bera;
|
|
1145
1145
|
|
|
1146
|
+
// src/assets/icons/Honey.tsx
|
|
1147
|
+
var import_react36 = __toESM(require("react"), 1);
|
|
1148
|
+
var HONEY = ({ width = 30, height = 30, ...rest }) => {
|
|
1149
|
+
return /* @__PURE__ */ import_react36.default.createElement(
|
|
1150
|
+
"svg",
|
|
1151
|
+
{
|
|
1152
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1153
|
+
width,
|
|
1154
|
+
height,
|
|
1155
|
+
viewBox: "0 0 40 40",
|
|
1156
|
+
fill: "none",
|
|
1157
|
+
...rest
|
|
1158
|
+
},
|
|
1159
|
+
/* @__PURE__ */ import_react36.default.createElement(
|
|
1160
|
+
"rect",
|
|
1161
|
+
{
|
|
1162
|
+
width: "40",
|
|
1163
|
+
height: "40",
|
|
1164
|
+
rx: "10",
|
|
1165
|
+
fill: "url(#paint0_radial_6594_45)"
|
|
1166
|
+
}
|
|
1167
|
+
),
|
|
1168
|
+
/* @__PURE__ */ import_react36.default.createElement(
|
|
1169
|
+
"rect",
|
|
1170
|
+
{
|
|
1171
|
+
width: "40",
|
|
1172
|
+
height: "40",
|
|
1173
|
+
rx: "10",
|
|
1174
|
+
fill: "url(#paint1_radial_6594_45)"
|
|
1175
|
+
}
|
|
1176
|
+
),
|
|
1177
|
+
/* @__PURE__ */ import_react36.default.createElement("g", { filter: "url(#filter0_dd_6594_45)" }, /* @__PURE__ */ import_react36.default.createElement(
|
|
1178
|
+
"path",
|
|
1179
|
+
{
|
|
1180
|
+
d: "M14.2918 29.3374H11.2243C10.6889 29.3374 10.2114 29.2175 9.7629 28.9777C9.31436 28.738 8.9671 28.405 8.69219 27.9787L7.05717 25.3147C6.79673 24.9151 6.6665 24.4889 6.6665 24.0094C6.6665 23.5299 6.79673 23.1169 7.05717 22.7173L8.72112 20.0134L7.05717 17.3227C6.79673 16.9231 6.6665 16.4836 6.6665 16.0174C6.6665 15.5512 6.79673 15.1116 7.05717 14.712L8.69219 12.048C8.95263 11.6218 9.31436 11.2888 9.7629 11.049C10.2114 10.8092 10.7034 10.676 11.2243 10.676H14.2918L15.9123 8.03868C16.1727 7.61244 16.5345 7.27944 16.983 7.03968C17.4316 6.79992 17.9235 6.66672 18.4444 6.66672H21.5553C22.0906 6.66672 22.5681 6.7866 23.0167 7.03968C23.4652 7.27944 23.8125 7.61244 24.0874 8.03868L25.7224 10.676H28.7899C29.3252 10.676 29.8027 10.7959 30.2512 11.049C30.6998 11.2888 31.047 11.6218 31.322 12.048L32.9425 14.712C33.2029 15.1116 33.3332 15.5378 33.3332 16.0174C33.3332 16.4969 33.2029 16.9231 32.9425 17.3227L31.2786 20.0134L32.9425 22.7173C33.2029 23.1169 33.3332 23.5432 33.3332 24.0094C33.3332 24.4756 33.2029 24.9151 32.9425 25.3147L31.322 27.9787C31.0615 28.405 30.6998 28.738 30.2512 28.9777C29.8027 29.2175 29.3107 29.3374 28.7899 29.3374H25.7224L24.0874 31.9747C23.8269 32.401 23.4652 32.734 23.0167 32.9737C22.5681 33.2135 22.0762 33.3334 21.5553 33.3334H18.4444C17.909 33.3334 17.4316 33.2135 16.983 32.9737C16.5345 32.734 16.1872 32.401 15.9123 31.9747L14.2918 29.3374ZM25.7224 18.6814H28.8333L30.4249 16.0174L28.8333 13.3534H25.7224L24.0874 16.0174L25.7224 18.6814ZM18.4878 22.6774H21.5263L23.1469 20.0134L21.5263 17.3494H18.4878L16.8673 20.0134L18.4878 22.6774ZM18.4878 14.6854H21.5263L23.1903 11.9814L21.5697 9.35736H18.4589L16.8383 11.9814L18.5023 14.6854H18.4878ZM15.9268 16.0174L14.3062 13.3534H11.2388L9.61821 16.0174L11.2388 18.6814H14.3062L15.9268 16.0174ZM15.9268 24.0094L14.3062 21.3454H11.1954L9.60374 24.0094L11.2243 26.6734H14.2918L15.9123 24.0094H15.9268ZM18.4878 25.3414L16.8239 28.032L18.4444 30.6694H21.5553L23.1758 28.032L21.5119 25.3414H18.4733H18.4878ZM25.7224 26.6734H28.7899L30.4104 24.0094L28.7899 21.3454H25.7224L24.0874 24.0094L25.7224 26.6734Z",
|
|
1181
|
+
fill: "#EEE1D2"
|
|
1182
|
+
}
|
|
1183
|
+
)),
|
|
1184
|
+
/* @__PURE__ */ import_react36.default.createElement("defs", null, /* @__PURE__ */ import_react36.default.createElement(
|
|
1185
|
+
"filter",
|
|
1186
|
+
{
|
|
1187
|
+
id: "filter0_dd_6594_45",
|
|
1188
|
+
x: "5.6665",
|
|
1189
|
+
y: "6.16672",
|
|
1190
|
+
width: "28.6666",
|
|
1191
|
+
height: "28.6667",
|
|
1192
|
+
filterUnits: "userSpaceOnUse",
|
|
1193
|
+
"color-interpolation-filters": "sRGB"
|
|
1194
|
+
},
|
|
1195
|
+
/* @__PURE__ */ import_react36.default.createElement("feFlood", { "flood-opacity": "0", result: "BackgroundImageFix" }),
|
|
1196
|
+
/* @__PURE__ */ import_react36.default.createElement(
|
|
1197
|
+
"feColorMatrix",
|
|
1198
|
+
{
|
|
1199
|
+
in: "SourceAlpha",
|
|
1200
|
+
type: "matrix",
|
|
1201
|
+
values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0",
|
|
1202
|
+
result: "hardAlpha"
|
|
1203
|
+
}
|
|
1204
|
+
),
|
|
1205
|
+
/* @__PURE__ */ import_react36.default.createElement("feOffset", { dy: "0.5" }),
|
|
1206
|
+
/* @__PURE__ */ import_react36.default.createElement("feGaussianBlur", { stdDeviation: "0.5" }),
|
|
1207
|
+
/* @__PURE__ */ import_react36.default.createElement("feComposite", { in2: "hardAlpha", operator: "out" }),
|
|
1208
|
+
/* @__PURE__ */ import_react36.default.createElement(
|
|
1209
|
+
"feColorMatrix",
|
|
1210
|
+
{
|
|
1211
|
+
type: "matrix",
|
|
1212
|
+
values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.45 0"
|
|
1213
|
+
}
|
|
1214
|
+
),
|
|
1215
|
+
/* @__PURE__ */ import_react36.default.createElement(
|
|
1216
|
+
"feBlend",
|
|
1217
|
+
{
|
|
1218
|
+
mode: "normal",
|
|
1219
|
+
in2: "BackgroundImageFix",
|
|
1220
|
+
result: "effect1_dropShadow_6594_45"
|
|
1221
|
+
}
|
|
1222
|
+
),
|
|
1223
|
+
/* @__PURE__ */ import_react36.default.createElement(
|
|
1224
|
+
"feColorMatrix",
|
|
1225
|
+
{
|
|
1226
|
+
in: "SourceAlpha",
|
|
1227
|
+
type: "matrix",
|
|
1228
|
+
values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0",
|
|
1229
|
+
result: "hardAlpha"
|
|
1230
|
+
}
|
|
1231
|
+
),
|
|
1232
|
+
/* @__PURE__ */ import_react36.default.createElement("feOffset", { dy: "0.5" }),
|
|
1233
|
+
/* @__PURE__ */ import_react36.default.createElement("feGaussianBlur", { stdDeviation: "0.5" }),
|
|
1234
|
+
/* @__PURE__ */ import_react36.default.createElement("feComposite", { in2: "hardAlpha", operator: "out" }),
|
|
1235
|
+
/* @__PURE__ */ import_react36.default.createElement(
|
|
1236
|
+
"feColorMatrix",
|
|
1237
|
+
{
|
|
1238
|
+
type: "matrix",
|
|
1239
|
+
values: "0 0 0 0 0.909804 0 0 0 0 0.490196 0 0 0 0 0.247059 0 0 0 0.75 0"
|
|
1240
|
+
}
|
|
1241
|
+
),
|
|
1242
|
+
/* @__PURE__ */ import_react36.default.createElement(
|
|
1243
|
+
"feBlend",
|
|
1244
|
+
{
|
|
1245
|
+
mode: "normal",
|
|
1246
|
+
in2: "effect1_dropShadow_6594_45",
|
|
1247
|
+
result: "effect2_dropShadow_6594_45"
|
|
1248
|
+
}
|
|
1249
|
+
),
|
|
1250
|
+
/* @__PURE__ */ import_react36.default.createElement(
|
|
1251
|
+
"feBlend",
|
|
1252
|
+
{
|
|
1253
|
+
mode: "normal",
|
|
1254
|
+
in: "SourceGraphic",
|
|
1255
|
+
in2: "effect2_dropShadow_6594_45",
|
|
1256
|
+
result: "shape"
|
|
1257
|
+
}
|
|
1258
|
+
)
|
|
1259
|
+
), /* @__PURE__ */ import_react36.default.createElement(
|
|
1260
|
+
"radialGradient",
|
|
1261
|
+
{
|
|
1262
|
+
id: "paint0_radial_6594_45",
|
|
1263
|
+
cx: "0",
|
|
1264
|
+
cy: "0",
|
|
1265
|
+
r: "1",
|
|
1266
|
+
gradientUnits: "userSpaceOnUse",
|
|
1267
|
+
gradientTransform: "translate(20 20) rotate(90) scale(20)"
|
|
1268
|
+
},
|
|
1269
|
+
/* @__PURE__ */ import_react36.default.createElement("stop", { "stop-color": "#E9D0B4" }),
|
|
1270
|
+
/* @__PURE__ */ import_react36.default.createElement("stop", { offset: "1", "stop-color": "#DA9713" })
|
|
1271
|
+
), /* @__PURE__ */ import_react36.default.createElement(
|
|
1272
|
+
"radialGradient",
|
|
1273
|
+
{
|
|
1274
|
+
id: "paint1_radial_6594_45",
|
|
1275
|
+
cx: "0",
|
|
1276
|
+
cy: "0",
|
|
1277
|
+
r: "1",
|
|
1278
|
+
gradientUnits: "userSpaceOnUse",
|
|
1279
|
+
gradientTransform: "translate(20 20) rotate(90) scale(20)"
|
|
1280
|
+
},
|
|
1281
|
+
/* @__PURE__ */ import_react36.default.createElement("stop", { "stop-color": "#E9D0B4" }),
|
|
1282
|
+
/* @__PURE__ */ import_react36.default.createElement("stop", { offset: "1", "stop-color": "#EC8A19" })
|
|
1283
|
+
))
|
|
1284
|
+
);
|
|
1285
|
+
};
|
|
1286
|
+
var Honey_default = HONEY;
|
|
1287
|
+
|
|
1146
1288
|
// src/utils/constants.tsx
|
|
1147
1289
|
var import_networks = require("@reown/appkit/networks");
|
|
1148
1290
|
var ChainName = /* @__PURE__ */ ((ChainName3) => {
|
|
@@ -1212,33 +1354,6 @@ var CHAIN_STRING_TO_NAME = {
|
|
|
1212
1354
|
["Base"]: "BASE" /* BASE */,
|
|
1213
1355
|
["Bera"]: "BERA" /* BERA */
|
|
1214
1356
|
};
|
|
1215
|
-
var CHAIN_NAMES_TO_EXPLORER_TESTNET = {
|
|
1216
|
-
["ETH" /* ETHEREUM */]: "sepolia.etherscan.io",
|
|
1217
|
-
["POL" /* POLYGON */]: "www.oklink.com/amoy",
|
|
1218
|
-
["AVX" /* AVALANCHE */]: "testnet.snowtrace.io",
|
|
1219
|
-
["SOL" /* SOLANA */]: "solscan.io",
|
|
1220
|
-
["BSC" /* BSC */]: "testnet.bscscan.com",
|
|
1221
|
-
["OPT" /* OPTIMISM */]: "sepolia-optimism.etherscan.io",
|
|
1222
|
-
["ARB" /* ARBITRUM */]: "sepolia.arbiscan.io",
|
|
1223
|
-
["ZKE" /* POLYGON_ZKEVM */]: "cardona-zkevm.polygonscan.com",
|
|
1224
|
-
["TRX" /* TRON */]: "nile.tronscan.org/#",
|
|
1225
|
-
["BTC" /* BTC */]: "mempool.space/testnet",
|
|
1226
|
-
["BASE" /* BASE */]: "sepolia.basescan.org",
|
|
1227
|
-
["BERA" /* BERA */]: "bartio.beratrail.io"
|
|
1228
|
-
};
|
|
1229
|
-
var CHAIN_NAMES_TO_EXPLORER_MAINNET = {
|
|
1230
|
-
["ETH" /* ETHEREUM */]: "etherscan.io",
|
|
1231
|
-
["POL" /* POLYGON */]: "polygonscan.com",
|
|
1232
|
-
["AVX" /* AVALANCHE */]: "snowtrace.io",
|
|
1233
|
-
["SOL" /* SOLANA */]: "solscan.io",
|
|
1234
|
-
["BSC" /* BSC */]: "bscscan.com",
|
|
1235
|
-
["OPT" /* OPTIMISM */]: "optimistic.etherscan.io",
|
|
1236
|
-
["ARB" /* ARBITRUM */]: "arbiscan.io",
|
|
1237
|
-
["ZKE" /* POLYGON_ZKEVM */]: "zkevm.polygonscan.com",
|
|
1238
|
-
["TRX" /* TRON */]: "tronscan.org/#",
|
|
1239
|
-
["BTC" /* BTC */]: "mempool.space",
|
|
1240
|
-
["BASE" /* BASE */]: "basescan.org"
|
|
1241
|
-
};
|
|
1242
1357
|
var networkOptions = [
|
|
1243
1358
|
{
|
|
1244
1359
|
id: "ARB" /* ARBITRUM */,
|
|
@@ -1324,6 +1439,10 @@ var COIN_LIST = {
|
|
|
1324
1439
|
WBTC: {
|
|
1325
1440
|
symbol: "WBTC",
|
|
1326
1441
|
icon: BTC_default
|
|
1442
|
+
},
|
|
1443
|
+
HONEY: {
|
|
1444
|
+
symbol: "HONEY",
|
|
1445
|
+
icon: Honey_default
|
|
1327
1446
|
}
|
|
1328
1447
|
};
|
|
1329
1448
|
|
|
@@ -1803,7 +1922,7 @@ var useGetEnvOptions = ({
|
|
|
1803
1922
|
};
|
|
1804
1923
|
|
|
1805
1924
|
// plugins/evm/index.tsx
|
|
1806
|
-
var
|
|
1925
|
+
var import_react81 = __toESM(require("react"), 1);
|
|
1807
1926
|
|
|
1808
1927
|
// plugins/PluginBase.ts
|
|
1809
1928
|
var PluginBase = class {
|
|
@@ -1840,10 +1959,10 @@ var PluginBase = class {
|
|
|
1840
1959
|
};
|
|
1841
1960
|
|
|
1842
1961
|
// plugins/evm/features/walletConnect/WalletProvider.tsx
|
|
1843
|
-
var
|
|
1962
|
+
var import_react38 = __toESM(require("react"), 1);
|
|
1844
1963
|
|
|
1845
1964
|
// plugins/evm/config/modalConfig.ts
|
|
1846
|
-
var
|
|
1965
|
+
var import_react37 = require("@reown/appkit/react");
|
|
1847
1966
|
var import_networks2 = require("@reown/appkit/networks");
|
|
1848
1967
|
var import_appkit_adapter_ethers = require("@reown/appkit-adapter-ethers");
|
|
1849
1968
|
var appkitMainnetChains = [
|
|
@@ -1887,7 +2006,7 @@ var setupAppKit = (projectId, networkOption) => {
|
|
|
1887
2006
|
}
|
|
1888
2007
|
appkitNetworkOption = networkOption;
|
|
1889
2008
|
const networks = networkOption === "mainnet" /* mainnet */ ? appkitMainnetChains : appkitTestnetChains;
|
|
1890
|
-
appKitModel = (0,
|
|
2009
|
+
appKitModel = (0, import_react37.createAppKit)({
|
|
1891
2010
|
adapters: [new import_appkit_adapter_ethers.EthersAdapter()],
|
|
1892
2011
|
metadata,
|
|
1893
2012
|
networks,
|
|
@@ -1915,14 +2034,14 @@ var WalletProvider = ({
|
|
|
1915
2034
|
}) => {
|
|
1916
2035
|
if (networkOption && !isLoadingEnvs)
|
|
1917
2036
|
setupAppKit(walletConnectProjectId, networkOption);
|
|
1918
|
-
return /* @__PURE__ */
|
|
2037
|
+
return /* @__PURE__ */ import_react38.default.createElement(import_react38.default.Fragment, null, children);
|
|
1919
2038
|
};
|
|
1920
2039
|
var WalletProvider_default = WalletProvider;
|
|
1921
2040
|
|
|
1922
2041
|
// plugins/evm/core/hooks/useBalance.tsx
|
|
1923
|
-
var
|
|
2042
|
+
var import_react73 = require("react");
|
|
1924
2043
|
var import_react_redux = require("react-redux");
|
|
1925
|
-
var
|
|
2044
|
+
var import_react74 = require("@reown/appkit/react");
|
|
1926
2045
|
var import_react_query2 = require("@tanstack/react-query");
|
|
1927
2046
|
|
|
1928
2047
|
// src/store/selectors.tsx
|
|
@@ -1962,106 +2081,106 @@ var selectSignature = (state) => state.option.signature;
|
|
|
1962
2081
|
var import_web32 = require("@solana/web3.js");
|
|
1963
2082
|
|
|
1964
2083
|
// plugins/evm/assets/icons/Cross.tsx
|
|
1965
|
-
var
|
|
2084
|
+
var import_react39 = __toESM(require("react"), 1);
|
|
1966
2085
|
|
|
1967
2086
|
// plugins/evm/assets/icons/Minimize.tsx
|
|
1968
|
-
var
|
|
2087
|
+
var import_react40 = __toESM(require("react"), 1);
|
|
1969
2088
|
|
|
1970
2089
|
// plugins/evm/assets/icons/FooterLogo.tsx
|
|
1971
|
-
var
|
|
2090
|
+
var import_react41 = __toESM(require("react"), 1);
|
|
1972
2091
|
|
|
1973
2092
|
// plugins/evm/assets/icons/Check.tsx
|
|
1974
|
-
var
|
|
2093
|
+
var import_react42 = __toESM(require("react"), 1);
|
|
1975
2094
|
|
|
1976
2095
|
// plugins/evm/assets/icons/Warning.tsx
|
|
1977
|
-
var
|
|
2096
|
+
var import_react43 = __toESM(require("react"), 1);
|
|
1978
2097
|
|
|
1979
2098
|
// plugins/evm/assets/icons/ArrowRight.tsx
|
|
1980
|
-
var
|
|
2099
|
+
var import_react44 = __toESM(require("react"), 1);
|
|
1981
2100
|
|
|
1982
2101
|
// plugins/evm/assets/icons/Arrow.tsx
|
|
1983
|
-
var
|
|
2102
|
+
var import_react45 = __toESM(require("react"), 1);
|
|
1984
2103
|
|
|
1985
2104
|
// plugins/evm/assets/icons/Lock.tsx
|
|
1986
|
-
var
|
|
2105
|
+
var import_react46 = __toESM(require("react"), 1);
|
|
1987
2106
|
|
|
1988
2107
|
// plugins/evm/assets/icons/Ethereum.tsx
|
|
1989
|
-
var
|
|
2108
|
+
var import_react47 = __toESM(require("react"), 1);
|
|
1990
2109
|
|
|
1991
2110
|
// plugins/evm/assets/icons/Solana.tsx
|
|
1992
|
-
var
|
|
2111
|
+
var import_react48 = __toESM(require("react"), 1);
|
|
1993
2112
|
|
|
1994
2113
|
// plugins/evm/assets/icons/Polygon.tsx
|
|
1995
|
-
var
|
|
2114
|
+
var import_react49 = __toESM(require("react"), 1);
|
|
1996
2115
|
|
|
1997
2116
|
// plugins/evm/assets/icons/Polygon_zkEVM.tsx
|
|
1998
|
-
var
|
|
2117
|
+
var import_react50 = __toESM(require("react"), 1);
|
|
1999
2118
|
|
|
2000
2119
|
// plugins/evm/assets/icons/Loader.tsx
|
|
2001
|
-
var
|
|
2120
|
+
var import_react51 = __toESM(require("react"), 1);
|
|
2002
2121
|
|
|
2003
2122
|
// plugins/evm/assets/icons/Error.tsx
|
|
2004
|
-
var
|
|
2123
|
+
var import_react52 = __toESM(require("react"), 1);
|
|
2005
2124
|
|
|
2006
2125
|
// plugins/evm/assets/icons/Avalanche.tsx
|
|
2007
|
-
var
|
|
2126
|
+
var import_react53 = __toESM(require("react"), 1);
|
|
2008
2127
|
|
|
2009
2128
|
// plugins/evm/assets/icons/Arbitrum.tsx
|
|
2010
|
-
var
|
|
2129
|
+
var import_react54 = __toESM(require("react"), 1);
|
|
2011
2130
|
|
|
2012
2131
|
// plugins/evm/assets/icons/Optimism.tsx
|
|
2013
|
-
var
|
|
2132
|
+
var import_react55 = __toESM(require("react"), 1);
|
|
2014
2133
|
|
|
2015
2134
|
// plugins/evm/assets/icons/USDC.tsx
|
|
2016
|
-
var
|
|
2135
|
+
var import_react56 = __toESM(require("react"), 1);
|
|
2017
2136
|
|
|
2018
2137
|
// plugins/evm/assets/icons/USDT.tsx
|
|
2019
|
-
var
|
|
2138
|
+
var import_react57 = __toESM(require("react"), 1);
|
|
2020
2139
|
|
|
2021
2140
|
// plugins/evm/assets/icons/USDK.tsx
|
|
2022
|
-
var
|
|
2141
|
+
var import_react58 = __toESM(require("react"), 1);
|
|
2023
2142
|
|
|
2024
2143
|
// plugins/evm/assets/icons/Fuse.tsx
|
|
2025
|
-
var
|
|
2144
|
+
var import_react59 = __toESM(require("react"), 1);
|
|
2026
2145
|
|
|
2027
2146
|
// plugins/evm/assets/icons/Celo.tsx
|
|
2028
|
-
var
|
|
2147
|
+
var import_react60 = __toESM(require("react"), 1);
|
|
2029
2148
|
|
|
2030
2149
|
// plugins/evm/assets/icons/GoodDollar.tsx
|
|
2031
|
-
var
|
|
2150
|
+
var import_react61 = __toESM(require("react"), 1);
|
|
2032
2151
|
|
|
2033
2152
|
// plugins/evm/assets/icons/Copy.tsx
|
|
2034
|
-
var
|
|
2153
|
+
var import_react62 = __toESM(require("react"), 1);
|
|
2035
2154
|
|
|
2036
2155
|
// plugins/evm/assets/icons/Bank.tsx
|
|
2037
|
-
var
|
|
2156
|
+
var import_react63 = __toESM(require("react"), 1);
|
|
2038
2157
|
|
|
2039
2158
|
// plugins/evm/assets/icons/BSC.tsx
|
|
2040
|
-
var
|
|
2159
|
+
var import_react64 = __toESM(require("react"), 1);
|
|
2041
2160
|
|
|
2042
2161
|
// plugins/evm/assets/icons/KEUR.tsx
|
|
2043
|
-
var
|
|
2162
|
+
var import_react65 = __toESM(require("react"), 1);
|
|
2044
2163
|
|
|
2045
2164
|
// plugins/evm/assets/icons/Tron.tsx
|
|
2046
|
-
var
|
|
2165
|
+
var import_react66 = __toESM(require("react"), 1);
|
|
2047
2166
|
|
|
2048
2167
|
// plugins/evm/assets/icons/BTC.tsx
|
|
2049
|
-
var
|
|
2168
|
+
var import_react67 = __toESM(require("react"), 1);
|
|
2050
2169
|
|
|
2051
2170
|
// plugins/evm/assets/icons/Wallet.tsx
|
|
2052
|
-
var
|
|
2171
|
+
var import_react68 = __toESM(require("react"), 1);
|
|
2053
2172
|
|
|
2054
2173
|
// plugins/evm/assets/icons/Explorer.tsx
|
|
2055
|
-
var
|
|
2174
|
+
var import_react69 = __toESM(require("react"), 1);
|
|
2056
2175
|
|
|
2057
2176
|
// plugins/evm/assets/icons/ExternalUrl.tsx
|
|
2058
|
-
var
|
|
2177
|
+
var import_react70 = __toESM(require("react"), 1);
|
|
2059
2178
|
|
|
2060
2179
|
// plugins/evm/assets/icons/Base.tsx
|
|
2061
|
-
var
|
|
2180
|
+
var import_react71 = __toESM(require("react"), 1);
|
|
2062
2181
|
|
|
2063
2182
|
// plugins/evm/assets/icons/Bera.tsx
|
|
2064
|
-
var
|
|
2183
|
+
var import_react72 = __toESM(require("react"), 1);
|
|
2065
2184
|
|
|
2066
2185
|
// plugins/evm/utils/constants.tsx
|
|
2067
2186
|
var import_networks3 = require("@reown/appkit/networks");
|
|
@@ -2116,15 +2235,15 @@ var getEvmTokenBalance = async (input) => {
|
|
|
2116
2235
|
// plugins/evm/core/hooks/useBalance.tsx
|
|
2117
2236
|
var zeroBalance = { balance: 0, decimals: 6 };
|
|
2118
2237
|
function useBalance() {
|
|
2119
|
-
const appkitAccountInfo = (0,
|
|
2238
|
+
const appkitAccountInfo = (0, import_react74.useAppKitAccount)();
|
|
2120
2239
|
const { address: signerAddress } = appkitAccountInfo || {};
|
|
2121
|
-
const { walletProvider } = (0,
|
|
2240
|
+
const { walletProvider } = (0, import_react74.useAppKitProvider)("eip155");
|
|
2122
2241
|
const { externalProvider } = useKimaContext();
|
|
2123
2242
|
const sourceChain = (0, import_react_redux.useSelector)(selectSourceChain);
|
|
2124
2243
|
const sourceCurrency = (0, import_react_redux.useSelector)(selectSourceCurrency);
|
|
2125
2244
|
const tokenOptions = (0, import_react_redux.useSelector)(selectTokenOptions);
|
|
2126
2245
|
const networkOption = (0, import_react_redux.useSelector)(selectNetworkOption);
|
|
2127
|
-
const tokenAddress = (0,
|
|
2246
|
+
const tokenAddress = (0, import_react73.useMemo)(() => {
|
|
2128
2247
|
if (isEmptyObject(tokenOptions) || sourceChain.shortName === "FIAT" /* FIAT */) return "";
|
|
2129
2248
|
return tokenOptions?.[sourceCurrency]?.[sourceChain.shortName] || "";
|
|
2130
2249
|
}, [sourceCurrency, sourceChain, tokenOptions]);
|
|
@@ -2160,7 +2279,7 @@ function useBalance() {
|
|
|
2160
2279
|
|
|
2161
2280
|
// plugins/evm/core/hooks/useNativeBalance.ts
|
|
2162
2281
|
var import_react_query3 = require("@tanstack/react-query");
|
|
2163
|
-
var
|
|
2282
|
+
var import_react75 = require("@reown/appkit/react");
|
|
2164
2283
|
|
|
2165
2284
|
// plugins/evm/utils/getBalance.ts
|
|
2166
2285
|
var import_ethers2 = require("ethers");
|
|
@@ -2194,9 +2313,9 @@ var getEvmBalance = async (input) => {
|
|
|
2194
2313
|
var import_react_redux2 = require("react-redux");
|
|
2195
2314
|
var useNativeEvmBalance = () => {
|
|
2196
2315
|
const { externalProvider } = useKimaContext();
|
|
2197
|
-
const appkitAccountInfo = (0,
|
|
2316
|
+
const appkitAccountInfo = (0, import_react75.useAppKitAccount)();
|
|
2198
2317
|
const { address: appkitAddress } = appkitAccountInfo || {};
|
|
2199
|
-
const { walletProvider } = (0,
|
|
2318
|
+
const { walletProvider } = (0, import_react75.useAppKitProvider)("eip155");
|
|
2200
2319
|
const sourceChain = (0, import_react_redux2.useSelector)(selectSourceChain);
|
|
2201
2320
|
const networkOption = (0, import_react_redux2.useSelector)(selectNetworkOption);
|
|
2202
2321
|
const walletAddress = externalProvider?.signer?.address || appkitAddress;
|
|
@@ -2227,9 +2346,9 @@ var useNativeEvmBalance = () => {
|
|
|
2227
2346
|
var useNativeBalance_default = useNativeEvmBalance;
|
|
2228
2347
|
|
|
2229
2348
|
// plugins/evm/core/hooks/useIsWalletReady.tsx
|
|
2230
|
-
var
|
|
2349
|
+
var import_react76 = require("react");
|
|
2231
2350
|
var import_react_redux4 = require("react-redux");
|
|
2232
|
-
var
|
|
2351
|
+
var import_react77 = require("@reown/appkit/react");
|
|
2233
2352
|
|
|
2234
2353
|
// plugins/evm/utils/switchNetworkEthers.tsx
|
|
2235
2354
|
var import_ethers3 = require("ethers");
|
|
@@ -2330,15 +2449,15 @@ function useIsWalletReady() {
|
|
|
2330
2449
|
const { externalProvider } = useKimaContext();
|
|
2331
2450
|
const backendUrl = (0, import_react_redux4.useSelector)(selectBackendUrl);
|
|
2332
2451
|
const { data: chains } = useChainData(backendUrl);
|
|
2333
|
-
const { walletProvider: appkitProvider } = (0,
|
|
2334
|
-
const appkitAccountInfo = (0,
|
|
2335
|
-
const { chainId: walletChainId } = (0,
|
|
2452
|
+
const { walletProvider: appkitProvider } = (0, import_react77.useAppKitProvider)("eip155");
|
|
2453
|
+
const appkitAccountInfo = (0, import_react77.useAppKitAccount)();
|
|
2454
|
+
const { chainId: walletChainId } = (0, import_react77.useAppKitNetwork)();
|
|
2336
2455
|
const { address: walletAddress, isConnected: appkitIsConnected } = appkitAccountInfo || {};
|
|
2337
2456
|
const isConnected = appkitIsConnected && walletAddress !== void 0;
|
|
2338
2457
|
const sourceChain = (0, import_react_redux4.useSelector)(selectSourceChain);
|
|
2339
|
-
const [isReady, setIsReady] = (0,
|
|
2340
|
-
const [statusMessage, setStatusMessage] = (0,
|
|
2341
|
-
const switchNetwork = (0,
|
|
2458
|
+
const [isReady, setIsReady] = (0, import_react76.useState)(false);
|
|
2459
|
+
const [statusMessage, setStatusMessage] = (0, import_react76.useState)("Wallet not connected");
|
|
2460
|
+
const switchNetwork = (0, import_react76.useCallback)(async () => {
|
|
2342
2461
|
console.debug("useIsWalletReady:EVM:Attempting to switch network...", {
|
|
2343
2462
|
hasProvider: !!appkitProvider,
|
|
2344
2463
|
sourceChain,
|
|
@@ -2358,7 +2477,7 @@ function useIsWalletReady() {
|
|
|
2358
2477
|
}
|
|
2359
2478
|
}
|
|
2360
2479
|
}, [appkitProvider, sourceChain]);
|
|
2361
|
-
(0,
|
|
2480
|
+
(0, import_react76.useEffect)(() => {
|
|
2362
2481
|
async function checkChainId() {
|
|
2363
2482
|
if (externalProvider?.type === "evm" && externalProvider?.provider) {
|
|
2364
2483
|
try {
|
|
@@ -2424,7 +2543,7 @@ function useIsWalletReady() {
|
|
|
2424
2543
|
}
|
|
2425
2544
|
checkChainId();
|
|
2426
2545
|
}, [externalProvider, sourceChain, switchNetwork, walletChainId, isConnected]);
|
|
2427
|
-
(0,
|
|
2546
|
+
(0, import_react76.useEffect)(() => {
|
|
2428
2547
|
if (isConnected) {
|
|
2429
2548
|
console.debug(
|
|
2430
2549
|
"useIsWalletReady:EVM: Dispatching source address:",
|
|
@@ -2438,10 +2557,10 @@ function useIsWalletReady() {
|
|
|
2438
2557
|
var useIsWalletReady_default = useIsWalletReady;
|
|
2439
2558
|
|
|
2440
2559
|
// plugins/evm/core/hooks/useEvmAllowance.tsx
|
|
2441
|
-
var
|
|
2560
|
+
var import_react78 = require("react");
|
|
2442
2561
|
var import_react_redux5 = require("react-redux");
|
|
2443
2562
|
var import_react_query6 = require("@tanstack/react-query");
|
|
2444
|
-
var
|
|
2563
|
+
var import_react79 = require("@reown/appkit/react");
|
|
2445
2564
|
|
|
2446
2565
|
// src/hooks/useGetPools.tsx
|
|
2447
2566
|
var import_react_query5 = require("@tanstack/react-query");
|
|
@@ -2620,8 +2739,8 @@ var import_ethers6 = require("ethers");
|
|
|
2620
2739
|
var import_viem5 = require("viem");
|
|
2621
2740
|
function useEvmAllowance() {
|
|
2622
2741
|
const { externalProvider } = useKimaContext();
|
|
2623
|
-
const { walletProvider: appkitProvider } = (0,
|
|
2624
|
-
const appkitAccountInfo = (0,
|
|
2742
|
+
const { walletProvider: appkitProvider } = (0, import_react79.useAppKitProvider)("eip155");
|
|
2743
|
+
const appkitAccountInfo = (0, import_react79.useAppKitAccount)();
|
|
2625
2744
|
const sourceChain = (0, import_react_redux5.useSelector)(selectSourceChain);
|
|
2626
2745
|
const networkOption = (0, import_react_redux5.useSelector)(selectNetworkOption);
|
|
2627
2746
|
const { totalFeeUsd, allowanceAmount, decimals } = (0, import_react_redux5.useSelector)(selectServiceFee);
|
|
@@ -2634,7 +2753,7 @@ function useEvmAllowance() {
|
|
|
2634
2753
|
const { pools } = useGetPools_default(backendUrl, networkOption);
|
|
2635
2754
|
const walletAddress = externalProvider?.signer?.address || appkitAccountInfo?.address;
|
|
2636
2755
|
const walletProvider = externalProvider?.provider instanceof import_ethers6.BrowserProvider ? externalProvider.provider : appkitProvider;
|
|
2637
|
-
const [approvalsCount, setApprovalsCount] = (0,
|
|
2756
|
+
const [approvalsCount, setApprovalsCount] = (0, import_react78.useState)(0);
|
|
2638
2757
|
const queryKey = ["evmAllowance", walletAddress, sourceChain, approvalsCount];
|
|
2639
2758
|
const enabled = !!walletAddress && !!tokenOptions && !!selectedCoin && pools.length > 0 && isEVMChain(sourceChain.shortName) && (!!externalProvider?.provider || !!appkitProvider);
|
|
2640
2759
|
const {
|
|
@@ -2725,9 +2844,9 @@ function useEvmAllowance() {
|
|
|
2725
2844
|
}
|
|
2726
2845
|
|
|
2727
2846
|
// plugins/evm/core/hooks/useDisconnectWallet.tsx
|
|
2728
|
-
var
|
|
2847
|
+
var import_react80 = require("@reown/appkit/react");
|
|
2729
2848
|
function useDisconnectWallet() {
|
|
2730
|
-
const { disconnect } = (0,
|
|
2849
|
+
const { disconnect } = (0, import_react80.useDisconnect)();
|
|
2731
2850
|
return { disconnectWallet: disconnect };
|
|
2732
2851
|
}
|
|
2733
2852
|
var useDisconnectWallet_default = useDisconnectWallet;
|
|
@@ -2754,7 +2873,7 @@ var EvmPlugin = class extends PluginBase {
|
|
|
2754
2873
|
networkOption,
|
|
2755
2874
|
walletConnectProjectId
|
|
2756
2875
|
}) => {
|
|
2757
|
-
return /* @__PURE__ */
|
|
2876
|
+
return /* @__PURE__ */ import_react81.default.createElement(
|
|
2758
2877
|
WalletProvider_default,
|
|
2759
2878
|
{
|
|
2760
2879
|
children,
|
|
@@ -2769,10 +2888,10 @@ var evmPlugin = new EvmPlugin(store);
|
|
|
2769
2888
|
var evm_default = evmPlugin;
|
|
2770
2889
|
|
|
2771
2890
|
// plugins/solana/index.tsx
|
|
2772
|
-
var
|
|
2891
|
+
var import_react85 = __toESM(require("react"), 1);
|
|
2773
2892
|
|
|
2774
2893
|
// plugins/solana/features/walletConnect/WalletProvider.tsx
|
|
2775
|
-
var
|
|
2894
|
+
var import_react82 = __toESM(require("react"), 1);
|
|
2776
2895
|
var import_wallet_adapter_react = require("@solana/wallet-adapter-react");
|
|
2777
2896
|
var import_wallet_adapter_wallets = require("@solana/wallet-adapter-wallets");
|
|
2778
2897
|
|
|
@@ -2800,7 +2919,7 @@ var WalletProvider2 = ({
|
|
|
2800
2919
|
console.info(
|
|
2801
2920
|
`WalletProvider initialized with projectId: ${walletConnectProjectId}`
|
|
2802
2921
|
);
|
|
2803
|
-
return /* @__PURE__ */
|
|
2922
|
+
return /* @__PURE__ */ import_react82.default.createElement(import_wallet_adapter_react.ConnectionProvider, { endpoint }, /* @__PURE__ */ import_react82.default.createElement(
|
|
2804
2923
|
import_wallet_adapter_react.WalletProvider,
|
|
2805
2924
|
{
|
|
2806
2925
|
wallets: [
|
|
@@ -2862,7 +2981,7 @@ function useGetSolBalance() {
|
|
|
2862
2981
|
var useGetSolBalance_default = useGetSolBalance;
|
|
2863
2982
|
|
|
2864
2983
|
// plugins/solana/core/hooks/useSolanaAllowance.tsx
|
|
2865
|
-
var
|
|
2984
|
+
var import_react83 = require("react");
|
|
2866
2985
|
var import_react_redux7 = require("react-redux");
|
|
2867
2986
|
var import_wallet_adapter_react3 = require("@solana/wallet-adapter-react");
|
|
2868
2987
|
var import_react_query8 = require("@tanstack/react-query");
|
|
@@ -2917,7 +3036,7 @@ function useSolanaAllowance() {
|
|
|
2917
3036
|
const selectedCoin = (0, import_react_redux7.useSelector)(selectSourceCurrency);
|
|
2918
3037
|
const tokenOptions = (0, import_react_redux7.useSelector)(selectTokenOptions);
|
|
2919
3038
|
const { pools } = useGetPools_default(backendUrl, networkOption);
|
|
2920
|
-
const [approvalsCount, setApprovalsCount] = (0,
|
|
3039
|
+
const [approvalsCount, setApprovalsCount] = (0, import_react83.useState)(0);
|
|
2921
3040
|
const isSolanaProvider = sourceChain === "SOL" && externalProvider?.type === "solana" && externalProvider.provider && externalProvider.signer instanceof import_web38.PublicKey;
|
|
2922
3041
|
const userPublicKey = isSolanaProvider ? externalProvider.signer : sourceChain === "SOL" ? internalPublicKey : void 0;
|
|
2923
3042
|
const signTransaction = isSolanaProvider && externalProvider.provider.signTransaction ? externalProvider.provider.signTransaction : sourceChain === "SOL" ? internalSignTransaction : void 0;
|
|
@@ -3011,7 +3130,7 @@ function useSolanaAllowance() {
|
|
|
3011
3130
|
}
|
|
3012
3131
|
|
|
3013
3132
|
// plugins/solana/core/hooks/useIsWalletReady.tsx
|
|
3014
|
-
var
|
|
3133
|
+
var import_react84 = require("react");
|
|
3015
3134
|
var import_wallet_adapter_react4 = require("@solana/wallet-adapter-react");
|
|
3016
3135
|
var import_react_redux8 = require("react-redux");
|
|
3017
3136
|
var import_react_redux9 = require("react-redux");
|
|
@@ -3025,10 +3144,10 @@ function useIsWalletReady2() {
|
|
|
3025
3144
|
const { externalProvider } = useKimaContext();
|
|
3026
3145
|
const { publicKey: solanaAddress } = (0, import_wallet_adapter_react4.useWallet)();
|
|
3027
3146
|
const sourceChain = (0, import_react_redux8.useSelector)(selectSourceChain);
|
|
3028
|
-
(0,
|
|
3147
|
+
(0, import_react84.useEffect)(() => {
|
|
3029
3148
|
solanaAddress && sourceChain === "SOL" && dispatch(setSourceAddress(solanaAddress.toBase58()));
|
|
3030
3149
|
}, [solanaAddress, sourceChain]);
|
|
3031
|
-
return (0,
|
|
3150
|
+
return (0, import_react84.useMemo)(() => {
|
|
3032
3151
|
if (externalProvider && externalProvider.type === "solana")
|
|
3033
3152
|
return createWalletStatus(
|
|
3034
3153
|
true,
|
|
@@ -3072,7 +3191,7 @@ var SolanaPlugin = class extends PluginBase {
|
|
|
3072
3191
|
networkOption,
|
|
3073
3192
|
walletConnectProjectId
|
|
3074
3193
|
}) => {
|
|
3075
|
-
return /* @__PURE__ */
|
|
3194
|
+
return /* @__PURE__ */ import_react85.default.createElement(
|
|
3076
3195
|
WalletProvider_default2,
|
|
3077
3196
|
{
|
|
3078
3197
|
networkOption,
|
|
@@ -3086,10 +3205,10 @@ var solanaPlugin = new SolanaPlugin(store);
|
|
|
3086
3205
|
var solana_default = solanaPlugin;
|
|
3087
3206
|
|
|
3088
3207
|
// plugins/tron/index.tsx
|
|
3089
|
-
var
|
|
3208
|
+
var import_react90 = __toESM(require("react"), 1);
|
|
3090
3209
|
|
|
3091
3210
|
// plugins/tron/features/walletConnect/WalletProvider.tsx
|
|
3092
|
-
var
|
|
3211
|
+
var import_react86 = __toESM(require("react"), 1);
|
|
3093
3212
|
var import_tronwallet_adapter_react_hooks = require("@tronweb3/tronwallet-adapter-react-hooks");
|
|
3094
3213
|
var import_tronwallet_adapter_ledger = require("@tronweb3/tronwallet-adapter-ledger");
|
|
3095
3214
|
var import_tronwallet_adapter_tronlink = require("@tronweb3/tronwallet-adapter-tronlink");
|
|
@@ -3098,7 +3217,7 @@ var import_tronwallet_adapter_tokenpocket = require("@tronweb3/tronwallet-adapte
|
|
|
3098
3217
|
var import_tronwallet_abstract_adapter = require("@tronweb3/tronwallet-abstract-adapter");
|
|
3099
3218
|
var import_react_hot_toast = require("react-hot-toast");
|
|
3100
3219
|
var WalletProvider3 = ({ children, networkOption }) => {
|
|
3101
|
-
const adapters = (0,
|
|
3220
|
+
const adapters = (0, import_react86.useMemo)(
|
|
3102
3221
|
() => [
|
|
3103
3222
|
new import_tronwallet_adapter_tronlink.TronLinkAdapter(),
|
|
3104
3223
|
new import_tronwallet_adapter_ledger.LedgerAdapter({ accountNumber: 2 }),
|
|
@@ -3128,7 +3247,7 @@ var WalletProvider3 = ({ children, networkOption }) => {
|
|
|
3128
3247
|
adapters[0].switchChain("0x2b6653dc");
|
|
3129
3248
|
}
|
|
3130
3249
|
};
|
|
3131
|
-
return /* @__PURE__ */
|
|
3250
|
+
return /* @__PURE__ */ import_react86.default.createElement(
|
|
3132
3251
|
import_tronwallet_adapter_react_hooks.WalletProvider,
|
|
3133
3252
|
{
|
|
3134
3253
|
adapters,
|
|
@@ -3141,7 +3260,7 @@ var WalletProvider3 = ({ children, networkOption }) => {
|
|
|
3141
3260
|
var WalletProvider_default3 = WalletProvider3;
|
|
3142
3261
|
|
|
3143
3262
|
// plugins/tron/core/hooks/useGetTrxBalance.tsx
|
|
3144
|
-
var
|
|
3263
|
+
var import_react87 = require("react");
|
|
3145
3264
|
var import_react_redux10 = require("react-redux");
|
|
3146
3265
|
var import_react_query9 = require("@tanstack/react-query");
|
|
3147
3266
|
|
|
@@ -3180,7 +3299,7 @@ function useGetTronBalance() {
|
|
|
3180
3299
|
const networkOption = (0, import_react_redux10.useSelector)(selectNetworkOption);
|
|
3181
3300
|
const { wallet } = (0, import_tronwallet_adapter_react_hooks2.useWallet)();
|
|
3182
3301
|
const sourceNetwork = (0, import_react_redux10.useSelector)(selectSourceChain);
|
|
3183
|
-
const tronWeb = (0,
|
|
3302
|
+
const tronWeb = (0, import_react87.useMemo)(
|
|
3184
3303
|
() => networkOption === "testnet" /* testnet */ ? tronWebTestnet : tronWebMainnet,
|
|
3185
3304
|
[networkOption]
|
|
3186
3305
|
);
|
|
@@ -3202,7 +3321,7 @@ function useGetTronBalance() {
|
|
|
3202
3321
|
var useGetTrxBalance_default = useGetTronBalance;
|
|
3203
3322
|
|
|
3204
3323
|
// plugins/tron/core/hooks/useTronAllowance.tsx
|
|
3205
|
-
var
|
|
3324
|
+
var import_react88 = require("react");
|
|
3206
3325
|
var import_react_redux11 = require("react-redux");
|
|
3207
3326
|
|
|
3208
3327
|
// src/utils/ethereum/erc20ABI.json
|
|
@@ -3482,9 +3601,9 @@ function useTronAllowance() {
|
|
|
3482
3601
|
address: internalUserAddress,
|
|
3483
3602
|
signTransaction: internalSignTronTransaction
|
|
3484
3603
|
} = (0, import_tronwallet_adapter_react_hooks3.useWallet)();
|
|
3485
|
-
const [approvalsCount, setApprovalsCount] = (0,
|
|
3604
|
+
const [approvalsCount, setApprovalsCount] = (0, import_react88.useState)(0);
|
|
3486
3605
|
const isTronProvider2 = sourceChain === "TRX" && externalProvider?.type === "tron" && externalProvider.provider.tronWeb instanceof import_tronweb5.TronWeb && typeof externalProvider.signer === "string";
|
|
3487
|
-
const tronWeb = (0,
|
|
3606
|
+
const tronWeb = (0, import_react88.useMemo)(() => {
|
|
3488
3607
|
if (isTronProvider2)
|
|
3489
3608
|
return externalProvider.provider.tronWeb;
|
|
3490
3609
|
return networkOption === "mainnet" ? tronWebMainnet : tronWebTestnet;
|
|
@@ -3555,7 +3674,7 @@ function useTronAllowance() {
|
|
|
3555
3674
|
}
|
|
3556
3675
|
|
|
3557
3676
|
// plugins/tron/core/hooks/useIsWalletReady.tsx
|
|
3558
|
-
var
|
|
3677
|
+
var import_react89 = require("react");
|
|
3559
3678
|
var import_tronwallet_adapter_react_hooks4 = require("@tronweb3/tronwallet-adapter-react-hooks");
|
|
3560
3679
|
var import_react_redux12 = require("react-redux");
|
|
3561
3680
|
var import_react_redux13 = require("react-redux");
|
|
@@ -3569,10 +3688,10 @@ function useIsWalletReady3() {
|
|
|
3569
3688
|
const sourceChain = (0, import_react_redux13.useSelector)(selectSourceChain);
|
|
3570
3689
|
const { externalProvider } = useKimaContext();
|
|
3571
3690
|
const { address: internalTronAddress } = (0, import_tronwallet_adapter_react_hooks4.useWallet)();
|
|
3572
|
-
(0,
|
|
3691
|
+
(0, import_react89.useEffect)(() => {
|
|
3573
3692
|
internalTronAddress && sourceChain === "TRX" && dispatch(setSourceAddress(internalTronAddress));
|
|
3574
3693
|
}, [internalTronAddress, sourceChain]);
|
|
3575
|
-
return (0,
|
|
3694
|
+
return (0, import_react89.useMemo)(() => {
|
|
3576
3695
|
if (externalProvider && externalProvider.type === "tron")
|
|
3577
3696
|
return createWalletStatus2(
|
|
3578
3697
|
true,
|
|
@@ -3616,7 +3735,7 @@ var TronPlugin = class extends PluginBase {
|
|
|
3616
3735
|
networkOption,
|
|
3617
3736
|
walletConnectProjectId
|
|
3618
3737
|
}) => {
|
|
3619
|
-
return /* @__PURE__ */
|
|
3738
|
+
return /* @__PURE__ */ import_react90.default.createElement(
|
|
3620
3739
|
WalletProvider_default3,
|
|
3621
3740
|
{
|
|
3622
3741
|
networkOption,
|
|
@@ -3636,15 +3755,15 @@ initializePlugins([evm_default, solana_default, tron_default]);
|
|
|
3636
3755
|
var import_web39 = require("@solana/web3.js");
|
|
3637
3756
|
var import_ethers10 = require("ethers");
|
|
3638
3757
|
var queryClient = new import_react_query11.QueryClient();
|
|
3639
|
-
var KimaContext = (0,
|
|
3758
|
+
var KimaContext = (0, import_react91.createContext)(void 0);
|
|
3640
3759
|
var useKimaContext = () => {
|
|
3641
|
-
const context = (0,
|
|
3760
|
+
const context = (0, import_react91.useContext)(KimaContext);
|
|
3642
3761
|
if (!context) {
|
|
3643
3762
|
throw new Error("useKimaContext must be used within a KimaProvider");
|
|
3644
3763
|
}
|
|
3645
3764
|
return context;
|
|
3646
3765
|
};
|
|
3647
|
-
var InternalKimaProvider =
|
|
3766
|
+
var InternalKimaProvider = React77.memo(
|
|
3648
3767
|
({ kimaBackendUrl, walletConnectProjectId, children }) => {
|
|
3649
3768
|
const { data: envOptions, isLoading } = useGetEnvOptions({
|
|
3650
3769
|
kimaBackendUrl
|
|
@@ -3652,12 +3771,12 @@ var InternalKimaProvider = React76.memo(
|
|
|
3652
3771
|
console.log("internalkimaprovider: networkoption: ", envOptions?.env);
|
|
3653
3772
|
const plugins = (0, import_react_redux14.useSelector)(selectAllPlugins, (prev, next) => prev === next);
|
|
3654
3773
|
console.info("Registered Plugins:", plugins);
|
|
3655
|
-
const WrappedProviders = (0,
|
|
3774
|
+
const WrappedProviders = (0, import_react91.useMemo)(() => {
|
|
3656
3775
|
return plugins.reduce((acc, pluginData) => {
|
|
3657
3776
|
const plugin = getPluginProvider(pluginData.id);
|
|
3658
3777
|
if (plugin) {
|
|
3659
3778
|
const { Provider: Provider3 } = plugin;
|
|
3660
|
-
return /* @__PURE__ */
|
|
3779
|
+
return /* @__PURE__ */ React77.createElement(
|
|
3661
3780
|
Provider3,
|
|
3662
3781
|
{
|
|
3663
3782
|
key: plugin.data.id,
|
|
@@ -3670,12 +3789,12 @@ var InternalKimaProvider = React76.memo(
|
|
|
3670
3789
|
return acc;
|
|
3671
3790
|
}, children);
|
|
3672
3791
|
}, [plugins, walletConnectProjectId, isLoading]);
|
|
3673
|
-
return /* @__PURE__ */
|
|
3792
|
+
return /* @__PURE__ */ React77.createElement(React77.Fragment, null, WrappedProviders);
|
|
3674
3793
|
}
|
|
3675
3794
|
);
|
|
3676
3795
|
var KimaProvider = ({
|
|
3677
3796
|
walletConnectProjectId,
|
|
3678
|
-
children = /* @__PURE__ */
|
|
3797
|
+
children = /* @__PURE__ */ React77.createElement(React77.Fragment, null),
|
|
3679
3798
|
externalProvider,
|
|
3680
3799
|
kimaBackendUrl = "http://localhost:3001"
|
|
3681
3800
|
}) => {
|
|
@@ -3695,7 +3814,7 @@ var KimaProvider = ({
|
|
|
3695
3814
|
sourceAddress,
|
|
3696
3815
|
kimaBackendUrl
|
|
3697
3816
|
};
|
|
3698
|
-
return /* @__PURE__ */
|
|
3817
|
+
return /* @__PURE__ */ React77.createElement(import_react_query11.QueryClientProvider, { client: queryClient }, /* @__PURE__ */ React77.createElement(import_react_redux14.Provider, { store }, /* @__PURE__ */ React77.createElement(KimaContext.Provider, { value: kimaContext }, /* @__PURE__ */ React77.createElement(
|
|
3699
3818
|
InternalKimaProvider,
|
|
3700
3819
|
{
|
|
3701
3820
|
kimaBackendUrl,
|
|
@@ -3707,17 +3826,17 @@ var KimaProvider = ({
|
|
|
3707
3826
|
var KimaProvider_default = KimaProvider;
|
|
3708
3827
|
|
|
3709
3828
|
// src/components/KimaTransactionWidget.tsx
|
|
3710
|
-
var
|
|
3829
|
+
var import_react135 = __toESM(require("react"), 1);
|
|
3711
3830
|
|
|
3712
3831
|
// src/components/KimaWidgetWrapper.tsx
|
|
3713
|
-
var
|
|
3714
|
-
var
|
|
3832
|
+
var import_react133 = __toESM(require("react"), 1);
|
|
3833
|
+
var import_react_redux52 = require("react-redux");
|
|
3715
3834
|
|
|
3716
3835
|
// src/components/TransactionWidget.tsx
|
|
3717
|
-
var
|
|
3836
|
+
var import_react121 = __toESM(require("react"), 1);
|
|
3718
3837
|
|
|
3719
3838
|
// src/components/reusable/Progressbar.tsx
|
|
3720
|
-
var
|
|
3839
|
+
var import_react92 = __toESM(require("react"), 1);
|
|
3721
3840
|
var import_react_redux15 = require("react-redux");
|
|
3722
3841
|
var stepInfo = [
|
|
3723
3842
|
{
|
|
@@ -3738,12 +3857,12 @@ var stepInfo = [
|
|
|
3738
3857
|
];
|
|
3739
3858
|
var Progressbar = ({ step, errorStep, setFocus, loadingStep }) => {
|
|
3740
3859
|
const theme = (0, import_react_redux15.useSelector)(selectTheme);
|
|
3741
|
-
return /* @__PURE__ */
|
|
3860
|
+
return /* @__PURE__ */ import_react92.default.createElement("div", { className: "kima-progressbar" }, /* @__PURE__ */ import_react92.default.createElement(
|
|
3742
3861
|
"div",
|
|
3743
3862
|
{
|
|
3744
3863
|
className: `value step-${step * 100 / 4}`
|
|
3745
3864
|
}
|
|
3746
|
-
), /* @__PURE__ */
|
|
3865
|
+
), /* @__PURE__ */ import_react92.default.createElement("div", { className: "step-indicators" }, stepInfo.map((item, index) => /* @__PURE__ */ import_react92.default.createElement(
|
|
3747
3866
|
"div",
|
|
3748
3867
|
{
|
|
3749
3868
|
key: item.title,
|
|
@@ -3754,14 +3873,14 @@ var Progressbar = ({ step, errorStep, setFocus, loadingStep }) => {
|
|
|
3754
3873
|
if (index < 4) setFocus(index);
|
|
3755
3874
|
}
|
|
3756
3875
|
},
|
|
3757
|
-
/* @__PURE__ */
|
|
3876
|
+
/* @__PURE__ */ import_react92.default.createElement("div", { className: "step-info" }, step < index && /* @__PURE__ */ import_react92.default.createElement(Lock_default, null), step >= index ? index === loadingStep ? /* @__PURE__ */ import_react92.default.createElement(Loader_default, { className: "loader" }) : index === errorStep ? /* @__PURE__ */ import_react92.default.createElement(Warning_default, null) : /* @__PURE__ */ import_react92.default.createElement(Check_default, null) : null, /* @__PURE__ */ import_react92.default.createElement("span", null, item.title))
|
|
3758
3877
|
))));
|
|
3759
3878
|
};
|
|
3760
3879
|
var Progressbar_default = Progressbar;
|
|
3761
3880
|
|
|
3762
3881
|
// src/components/reusable/ExternalLink.tsx
|
|
3763
|
-
var
|
|
3764
|
-
var ExternalLink = ({ to, children, className, rest }) => /* @__PURE__ */
|
|
3882
|
+
var import_react93 = __toESM(require("react"), 1);
|
|
3883
|
+
var ExternalLink = ({ to, children, className, rest }) => /* @__PURE__ */ import_react93.default.createElement(
|
|
3765
3884
|
"a",
|
|
3766
3885
|
{
|
|
3767
3886
|
className,
|
|
@@ -3775,20 +3894,20 @@ var ExternalLink = ({ to, children, className, rest }) => /* @__PURE__ */ import
|
|
|
3775
3894
|
var ExternalLink_default = ExternalLink;
|
|
3776
3895
|
|
|
3777
3896
|
// src/components/reusable/NetworkLabel.tsx
|
|
3778
|
-
var
|
|
3897
|
+
var import_react94 = __toESM(require("react"), 1);
|
|
3779
3898
|
var import_react_redux16 = require("react-redux");
|
|
3780
3899
|
|
|
3781
3900
|
// src/components/reusable/PrimaryButton.tsx
|
|
3782
|
-
var
|
|
3901
|
+
var import_react97 = __toESM(require("react"), 1);
|
|
3783
3902
|
|
|
3784
3903
|
// src/assets/loading/180-ring.tsx
|
|
3785
|
-
var
|
|
3904
|
+
var import_react95 = __toESM(require("react"), 1);
|
|
3786
3905
|
var Loading180Ring = ({
|
|
3787
3906
|
width = 24,
|
|
3788
3907
|
height = 24,
|
|
3789
3908
|
fill = "white"
|
|
3790
3909
|
}) => {
|
|
3791
|
-
return /* @__PURE__ */
|
|
3910
|
+
return /* @__PURE__ */ import_react95.default.createElement(
|
|
3792
3911
|
"svg",
|
|
3793
3912
|
{
|
|
3794
3913
|
width,
|
|
@@ -3797,7 +3916,7 @@ var Loading180Ring = ({
|
|
|
3797
3916
|
viewBox: "0 0 24 24",
|
|
3798
3917
|
xmlns: "http://www.w3.org/2000/svg"
|
|
3799
3918
|
},
|
|
3800
|
-
/* @__PURE__ */
|
|
3919
|
+
/* @__PURE__ */ import_react95.default.createElement("path", { d: "M12,4a8,8,0,0,1,7.89,6.7A1.53,1.53,0,0,0,21.38,12h0a1.5,1.5,0,0,0,1.48-1.75,11,11,0,0,0-21.72,0A1.5,1.5,0,0,0,2.62,12h0a1.53,1.53,0,0,0,1.49-1.3A8,8,0,0,1,12,4Z" }, /* @__PURE__ */ import_react95.default.createElement(
|
|
3801
3920
|
"animateTransform",
|
|
3802
3921
|
{
|
|
3803
3922
|
attributeName: "transform",
|
|
@@ -3812,7 +3931,7 @@ var Loading180Ring = ({
|
|
|
3812
3931
|
var ring_default = Loading180Ring;
|
|
3813
3932
|
|
|
3814
3933
|
// src/assets/loading/6-dots-scale.tsx
|
|
3815
|
-
var
|
|
3934
|
+
var import_react96 = __toESM(require("react"), 1);
|
|
3816
3935
|
|
|
3817
3936
|
// src/components/reusable/PrimaryButton.tsx
|
|
3818
3937
|
var PrimaryButton = ({
|
|
@@ -3823,7 +3942,7 @@ var PrimaryButton = ({
|
|
|
3823
3942
|
disabled = false,
|
|
3824
3943
|
ref
|
|
3825
3944
|
}) => {
|
|
3826
|
-
return /* @__PURE__ */
|
|
3945
|
+
return /* @__PURE__ */ import_react97.default.createElement("div", { className: "primary-button-wrapper" }, /* @__PURE__ */ import_react97.default.createElement(
|
|
3827
3946
|
"button",
|
|
3828
3947
|
{
|
|
3829
3948
|
className: `primary-button ${className}`,
|
|
@@ -3831,14 +3950,14 @@ var PrimaryButton = ({
|
|
|
3831
3950
|
ref,
|
|
3832
3951
|
disabled
|
|
3833
3952
|
},
|
|
3834
|
-
isLoading && /* @__PURE__ */
|
|
3953
|
+
isLoading && /* @__PURE__ */ import_react97.default.createElement("div", { className: "loading-indicator" }, /* @__PURE__ */ import_react97.default.createElement(ring_default, { width: 24, height: 24, fill: "white" })),
|
|
3835
3954
|
children
|
|
3836
3955
|
));
|
|
3837
3956
|
};
|
|
3838
3957
|
var PrimaryButton_default = PrimaryButton;
|
|
3839
3958
|
|
|
3840
3959
|
// src/components/reusable/SecondaryButton.tsx
|
|
3841
|
-
var
|
|
3960
|
+
var import_react98 = __toESM(require("react"), 1);
|
|
3842
3961
|
var SecondaryButton = ({
|
|
3843
3962
|
className,
|
|
3844
3963
|
clickHandler,
|
|
@@ -3847,7 +3966,7 @@ var SecondaryButton = ({
|
|
|
3847
3966
|
style,
|
|
3848
3967
|
disabled = false,
|
|
3849
3968
|
isLoading
|
|
3850
|
-
}) => /* @__PURE__ */
|
|
3969
|
+
}) => /* @__PURE__ */ import_react98.default.createElement(
|
|
3851
3970
|
"button",
|
|
3852
3971
|
{
|
|
3853
3972
|
className: `secondary-button ${className} ${theme}`,
|
|
@@ -3855,26 +3974,26 @@ var SecondaryButton = ({
|
|
|
3855
3974
|
...style,
|
|
3856
3975
|
disabled
|
|
3857
3976
|
},
|
|
3858
|
-
isLoading && /* @__PURE__ */
|
|
3977
|
+
isLoading && /* @__PURE__ */ import_react98.default.createElement("div", { className: "loading-indicator" }, /* @__PURE__ */ import_react98.default.createElement(ring_default, { width: 24, height: 24, fill: "black" })),
|
|
3859
3978
|
children
|
|
3860
3979
|
);
|
|
3861
3980
|
var SecondaryButton_default = SecondaryButton;
|
|
3862
3981
|
|
|
3863
3982
|
// src/components/reusable/Dropdown.tsx
|
|
3864
|
-
var
|
|
3983
|
+
var import_react99 = __toESM(require("react"), 1);
|
|
3865
3984
|
var import_react_redux17 = require("react-redux");
|
|
3866
3985
|
var import_react_redux18 = require("react-redux");
|
|
3867
3986
|
|
|
3868
3987
|
// src/components/reusable/WalletButton.tsx
|
|
3869
|
-
var
|
|
3988
|
+
var import_react105 = __toESM(require("react"), 1);
|
|
3870
3989
|
var import_react_redux20 = require("react-redux");
|
|
3871
3990
|
|
|
3872
3991
|
// src/hooks/useGetCurrentPlugin.tsx
|
|
3873
|
-
var
|
|
3992
|
+
var import_react101 = require("react");
|
|
3874
3993
|
var import_react_redux19 = require("react-redux");
|
|
3875
3994
|
|
|
3876
3995
|
// plugins/default/index.tsx
|
|
3877
|
-
var
|
|
3996
|
+
var import_react100 = __toESM(require("react"), 1);
|
|
3878
3997
|
var DefaultPlugin = class extends PluginBase {
|
|
3879
3998
|
constructor(store2) {
|
|
3880
3999
|
super({
|
|
@@ -3909,7 +4028,7 @@ var DefaultPlugin = class extends PluginBase {
|
|
|
3909
4028
|
networkOption,
|
|
3910
4029
|
walletConnectProjectId
|
|
3911
4030
|
}) => {
|
|
3912
|
-
return /* @__PURE__ */
|
|
4031
|
+
return /* @__PURE__ */ import_react100.default.createElement("div", null, children);
|
|
3913
4032
|
};
|
|
3914
4033
|
};
|
|
3915
4034
|
var defaultPlugin = new DefaultPlugin(store);
|
|
@@ -3917,10 +4036,10 @@ var default_default = defaultPlugin;
|
|
|
3917
4036
|
|
|
3918
4037
|
// src/hooks/useGetCurrentPlugin.tsx
|
|
3919
4038
|
var useGetCurrentPlugin = () => {
|
|
3920
|
-
const [currentPlugin, setCurrentPlugin] = (0,
|
|
4039
|
+
const [currentPlugin, setCurrentPlugin] = (0, import_react101.useState)(default_default);
|
|
3921
4040
|
const isIndexed = (0, import_react_redux19.useSelector)(selectPluginIsIndexed);
|
|
3922
4041
|
const sourceChain = (0, import_react_redux19.useSelector)(selectSourceChain);
|
|
3923
|
-
(0,
|
|
4042
|
+
(0, import_react101.useEffect)(() => {
|
|
3924
4043
|
if (!isIndexed) return;
|
|
3925
4044
|
const plugin = getPlugin(sourceChain.shortName);
|
|
3926
4045
|
if (plugin) setCurrentPlugin(plugin);
|
|
@@ -3976,13 +4095,13 @@ function useBalance2() {
|
|
|
3976
4095
|
}
|
|
3977
4096
|
|
|
3978
4097
|
// src/hooks/useWidth.tsx
|
|
3979
|
-
var
|
|
4098
|
+
var import_react102 = require("react");
|
|
3980
4099
|
var useWidth = () => {
|
|
3981
|
-
const [width, setWidth] = (0,
|
|
4100
|
+
const [width, setWidth] = (0, import_react102.useState)(0);
|
|
3982
4101
|
const updateWidth = (width2) => {
|
|
3983
4102
|
setWidth(width2);
|
|
3984
4103
|
};
|
|
3985
|
-
(0,
|
|
4104
|
+
(0, import_react102.useEffect)(() => {
|
|
3986
4105
|
const handleResize = () => {
|
|
3987
4106
|
setWidth(window.innerWidth);
|
|
3988
4107
|
};
|
|
@@ -3996,19 +4115,19 @@ var useWidth_default = useWidth;
|
|
|
3996
4115
|
// src/components/reusable/WalletButton.tsx
|
|
3997
4116
|
var import_wallet_adapter_react6 = require("@solana/wallet-adapter-react");
|
|
3998
4117
|
var import_tronwallet_adapter_react_hooks6 = require("@tronweb3/tronwallet-adapter-react-hooks");
|
|
3999
|
-
var
|
|
4118
|
+
var import_react106 = require("@reown/appkit/react");
|
|
4000
4119
|
|
|
4001
4120
|
// src/components/reusable/CopyButton.tsx
|
|
4002
|
-
var
|
|
4121
|
+
var import_react103 = __toESM(require("react"), 1);
|
|
4003
4122
|
var CopyButton = ({ text }) => {
|
|
4004
|
-
const [copyClicked, setCopyClicked] = (0,
|
|
4005
|
-
(0,
|
|
4123
|
+
const [copyClicked, setCopyClicked] = (0, import_react103.useState)(false);
|
|
4124
|
+
(0, import_react103.useEffect)(() => {
|
|
4006
4125
|
if (!copyClicked) return;
|
|
4007
4126
|
setTimeout(() => {
|
|
4008
4127
|
setCopyClicked(false);
|
|
4009
4128
|
}, 2e3);
|
|
4010
4129
|
}, [copyClicked]);
|
|
4011
|
-
return /* @__PURE__ */
|
|
4130
|
+
return /* @__PURE__ */ import_react103.default.createElement(
|
|
4012
4131
|
"span",
|
|
4013
4132
|
{
|
|
4014
4133
|
className: "copy-btn",
|
|
@@ -4017,7 +4136,7 @@ var CopyButton = ({ text }) => {
|
|
|
4017
4136
|
navigator.clipboard.writeText(text);
|
|
4018
4137
|
}
|
|
4019
4138
|
},
|
|
4020
|
-
copyClicked ? /* @__PURE__ */
|
|
4139
|
+
copyClicked ? /* @__PURE__ */ import_react103.default.createElement(Check_default, null) : /* @__PURE__ */ import_react103.default.createElement(Copy_default, null)
|
|
4021
4140
|
);
|
|
4022
4141
|
};
|
|
4023
4142
|
var CopyButton_default = CopyButton;
|
|
@@ -4043,9 +4162,9 @@ var formatUSD = (amount) => {
|
|
|
4043
4162
|
};
|
|
4044
4163
|
|
|
4045
4164
|
// src/hooks/useHideActivityTab.tsx
|
|
4046
|
-
var
|
|
4165
|
+
var import_react104 = require("react");
|
|
4047
4166
|
function useHideWuiListItem(isModalOpen) {
|
|
4048
|
-
(0,
|
|
4167
|
+
(0, import_react104.useEffect)(() => {
|
|
4049
4168
|
const modalSelector = "w3m-modal";
|
|
4050
4169
|
let observer;
|
|
4051
4170
|
const hideFirstWuiListItem = (parent) => {
|
|
@@ -4117,14 +4236,14 @@ var WalletButton = ({ errorBelow = false }) => {
|
|
|
4117
4236
|
/*, connectBitcoinWallet*/
|
|
4118
4237
|
} = useIsWalletReady4();
|
|
4119
4238
|
const { balance } = useBalance2();
|
|
4120
|
-
const { open } = (0,
|
|
4239
|
+
const { open } = (0, import_react106.useAppKit)();
|
|
4121
4240
|
const { width, updateWidth } = useWidth_default();
|
|
4122
|
-
const { open: isModalOpen } = (0,
|
|
4241
|
+
const { open: isModalOpen } = (0, import_react106.useAppKitState)();
|
|
4123
4242
|
useHideActivityTab_default(isModalOpen);
|
|
4124
4243
|
const { kimaBackendUrl } = useKimaContext();
|
|
4125
4244
|
const { data: envOptions } = useGetEnvOptions({ kimaBackendUrl });
|
|
4126
4245
|
const networkOption = envOptions?.env || "testnet" /* testnet */;
|
|
4127
|
-
(0,
|
|
4246
|
+
(0, import_react105.useEffect)(() => {
|
|
4128
4247
|
console.info("WalletBalance:", {
|
|
4129
4248
|
balance,
|
|
4130
4249
|
walletAddress,
|
|
@@ -4133,10 +4252,10 @@ var WalletButton = ({ errorBelow = false }) => {
|
|
|
4133
4252
|
externalProvider
|
|
4134
4253
|
});
|
|
4135
4254
|
}, [balance, walletAddress, isReady, externalProvider, networkOption]);
|
|
4136
|
-
(0,
|
|
4255
|
+
(0, import_react105.useEffect)(() => {
|
|
4137
4256
|
if (walletAddress) dispatch(setSourceAddress(walletAddress));
|
|
4138
4257
|
}, [walletAddress]);
|
|
4139
|
-
(0,
|
|
4258
|
+
(0, import_react105.useEffect)(() => {
|
|
4140
4259
|
if (width === 0) {
|
|
4141
4260
|
updateWidth(window.innerWidth);
|
|
4142
4261
|
}
|
|
@@ -4163,40 +4282,40 @@ var WalletButton = ({ errorBelow = false }) => {
|
|
|
4163
4282
|
console.error("Failed to open AppKitModal", error);
|
|
4164
4283
|
}
|
|
4165
4284
|
};
|
|
4166
|
-
const errorMessage = (0,
|
|
4285
|
+
const errorMessage = (0, import_react105.useMemo)(() => {
|
|
4167
4286
|
if (!isReady) return statusMessage;
|
|
4168
4287
|
if (compliantOption && sourceCompliant !== null && !sourceCompliant?.isCompliant)
|
|
4169
4288
|
return `Source address has ${sourceCompliant?.results?.[0].result?.risk_score} risk`;
|
|
4170
4289
|
return "";
|
|
4171
4290
|
}, [isReady, statusMessage, sourceCompliant, compliantOption]);
|
|
4172
|
-
return /* @__PURE__ */
|
|
4291
|
+
return /* @__PURE__ */ import_react105.default.createElement(
|
|
4173
4292
|
"div",
|
|
4174
4293
|
{
|
|
4175
4294
|
className: `wallet-button ${isReady ? "connected" : "disconnected"} ${theme.colorMode} ${errorBelow ? "error-below" : ""}`,
|
|
4176
4295
|
"data-testid": "connect-wallet-btn"
|
|
4177
4296
|
},
|
|
4178
|
-
/* @__PURE__ */
|
|
4297
|
+
/* @__PURE__ */ import_react105.default.createElement("div", { className: "info-wrapper" }, /* @__PURE__ */ import_react105.default.createElement(
|
|
4179
4298
|
"button",
|
|
4180
4299
|
{
|
|
4181
4300
|
className: `${isReady ? "connected" : "disconnected"} ${width < 640 && "shortened"} ${theme.colorMode}`,
|
|
4182
4301
|
onClick: handleClick
|
|
4183
4302
|
},
|
|
4184
4303
|
isReady ? width >= 640 ? `${walletAddress || ""}` : getShortenedAddress(walletAddress || "") : "",
|
|
4185
|
-
!isReady && /* @__PURE__ */
|
|
4304
|
+
!isReady && /* @__PURE__ */ import_react105.default.createElement(Wallet_default, null),
|
|
4186
4305
|
!isReady && "Connect Wallet"
|
|
4187
|
-
), isReady && /* @__PURE__ */
|
|
4188
|
-
isReady && balance !== void 0 ? /* @__PURE__ */
|
|
4306
|
+
), isReady && /* @__PURE__ */ import_react105.default.createElement(CopyButton_default, { text: walletAddress })),
|
|
4307
|
+
isReady && balance !== void 0 ? /* @__PURE__ */ import_react105.default.createElement("p", { className: "balance-info" }, formatUSD(balance), " ", selectedCoin, " available") : null
|
|
4189
4308
|
);
|
|
4190
4309
|
};
|
|
4191
4310
|
var WalletButton_default = WalletButton;
|
|
4192
4311
|
|
|
4193
4312
|
// src/components/reusable/CoinDropdown.tsx
|
|
4194
|
-
var
|
|
4313
|
+
var import_react109 = __toESM(require("react"), 1);
|
|
4195
4314
|
var import_react_redux23 = require("react-redux");
|
|
4196
4315
|
var import_react_redux24 = require("react-redux");
|
|
4197
4316
|
|
|
4198
4317
|
// src/hooks/useCurrencyOptions.tsx
|
|
4199
|
-
var
|
|
4318
|
+
var import_react107 = require("react");
|
|
4200
4319
|
var import_react_redux21 = require("react-redux");
|
|
4201
4320
|
var import_react_redux22 = require("react-redux");
|
|
4202
4321
|
function useCurrencyOptions(isSourceChain) {
|
|
@@ -4207,8 +4326,8 @@ function useCurrencyOptions(isSourceChain) {
|
|
|
4207
4326
|
const chain = isSourceChain ? sourceChain : targetChain;
|
|
4208
4327
|
const transactionOption = (0, import_react_redux21.useSelector)(selectTransactionOption);
|
|
4209
4328
|
const networks = (0, import_react_redux21.useSelector)(selectNetworks);
|
|
4210
|
-
const output = (0,
|
|
4211
|
-
console.log("useCurrencyOptions: networks:
|
|
4329
|
+
const output = (0, import_react107.useMemo)(() => {
|
|
4330
|
+
console.log("useCurrencyOptions: networks:", networks, isSourceChain);
|
|
4212
4331
|
const networkTokenList = networks.find((network) => network.id === chain.id) || networks[0];
|
|
4213
4332
|
console.log(
|
|
4214
4333
|
"useCurrencyOptions: networkTokenList: ",
|
|
@@ -4216,9 +4335,9 @@ function useCurrencyOptions(isSourceChain) {
|
|
|
4216
4335
|
chain
|
|
4217
4336
|
);
|
|
4218
4337
|
return !!networks ? { tokenList: networkTokenList?.supportedTokens } : { tokenList: [] };
|
|
4219
|
-
}, [networks]);
|
|
4338
|
+
}, [networks, chain]);
|
|
4220
4339
|
const { tokenList } = output;
|
|
4221
|
-
(0,
|
|
4340
|
+
(0, import_react107.useEffect)(() => {
|
|
4222
4341
|
if (!tokenList.length) return;
|
|
4223
4342
|
if (mode === "payment" /* payment */ && !isSourceChain) return;
|
|
4224
4343
|
const [firstToken] = tokenList;
|
|
@@ -4232,7 +4351,7 @@ function useCurrencyOptions(isSourceChain) {
|
|
|
4232
4351
|
}
|
|
4233
4352
|
|
|
4234
4353
|
// src/components/reusable/TokenIcon.tsx
|
|
4235
|
-
var
|
|
4354
|
+
var import_react108 = __toESM(require("react"), 1);
|
|
4236
4355
|
var COIN_LIST2 = {
|
|
4237
4356
|
KEUR: KEUR_default,
|
|
4238
4357
|
KIMAUSD: USDK_default,
|
|
@@ -4240,7 +4359,8 @@ var COIN_LIST2 = {
|
|
|
4240
4359
|
USDK: USDK_default,
|
|
4241
4360
|
USDT: USDT_default,
|
|
4242
4361
|
WBTC: BTC_default,
|
|
4243
|
-
USD: USD_default
|
|
4362
|
+
USD: USD_default,
|
|
4363
|
+
HONEY: Honey_default
|
|
4244
4364
|
};
|
|
4245
4365
|
function TokenIcon({
|
|
4246
4366
|
symbol,
|
|
@@ -4253,22 +4373,22 @@ function TokenIcon({
|
|
|
4253
4373
|
console.warn(`Token icon not found for symbol: ${symbol}`);
|
|
4254
4374
|
return null;
|
|
4255
4375
|
}
|
|
4256
|
-
return /* @__PURE__ */
|
|
4376
|
+
return /* @__PURE__ */ import_react108.default.createElement("div", { className: "icon-wrapper" }, /* @__PURE__ */ import_react108.default.createElement(Icon, { width, height }));
|
|
4257
4377
|
}
|
|
4258
4378
|
|
|
4259
4379
|
// src/components/reusable/CoinDropdown.tsx
|
|
4260
4380
|
var CoinDropdown = ({
|
|
4261
4381
|
isSourceChain = true
|
|
4262
4382
|
}) => {
|
|
4263
|
-
const ref = (0,
|
|
4383
|
+
const ref = (0, import_react109.useRef)();
|
|
4264
4384
|
const dispatch = (0, import_react_redux24.useDispatch)();
|
|
4265
|
-
const [collapsed, setCollapsed] = (0,
|
|
4385
|
+
const [collapsed, setCollapsed] = (0, import_react109.useState)(true);
|
|
4266
4386
|
const sourceCurrency = (0, import_react_redux23.useSelector)(selectSourceCurrency);
|
|
4267
4387
|
const targetCurrency = (0, import_react_redux23.useSelector)(selectTargetCurrency);
|
|
4268
4388
|
const { tokenList } = useCurrencyOptions(isSourceChain);
|
|
4269
4389
|
const theme = (0, import_react_redux23.useSelector)(selectTheme);
|
|
4270
4390
|
const tokenSymbol = isSourceChain ? sourceCurrency : targetCurrency;
|
|
4271
|
-
(0,
|
|
4391
|
+
(0, import_react109.useEffect)(() => {
|
|
4272
4392
|
const bodyMouseDowntHandler = (e) => {
|
|
4273
4393
|
if (ref?.current && !ref.current.contains(e.target)) {
|
|
4274
4394
|
setCollapsed(true);
|
|
@@ -4286,41 +4406,41 @@ var CoinDropdown = ({
|
|
|
4286
4406
|
dispatch(setTargetCurrency(symbol));
|
|
4287
4407
|
}
|
|
4288
4408
|
};
|
|
4289
|
-
return /* @__PURE__ */
|
|
4409
|
+
return /* @__PURE__ */ import_react109.default.createElement(
|
|
4290
4410
|
"div",
|
|
4291
4411
|
{
|
|
4292
4412
|
className: `coin-dropdown ${theme.colorMode} ${collapsed ? "collapsed" : "toggled"}`,
|
|
4293
4413
|
onClick: () => setCollapsed((prev) => !prev),
|
|
4294
4414
|
ref
|
|
4295
4415
|
},
|
|
4296
|
-
/* @__PURE__ */
|
|
4297
|
-
/* @__PURE__ */
|
|
4416
|
+
/* @__PURE__ */ import_react109.default.createElement("div", { className: "coin-wrapper" }, /* @__PURE__ */ import_react109.default.createElement(TokenIcon, { symbol: tokenSymbol, width: 24, height: 24 }), /* @__PURE__ */ import_react109.default.createElement("span", { className: "coin" }, tokenSymbol)),
|
|
4417
|
+
/* @__PURE__ */ import_react109.default.createElement(
|
|
4298
4418
|
"div",
|
|
4299
4419
|
{
|
|
4300
4420
|
className: `coin-menu ${theme.colorMode} ${collapsed ? "collapsed" : "toggled"}`
|
|
4301
4421
|
},
|
|
4302
|
-
tokenList.map((token) => /* @__PURE__ */
|
|
4422
|
+
tokenList.map((token) => /* @__PURE__ */ import_react109.default.createElement(
|
|
4303
4423
|
"div",
|
|
4304
4424
|
{
|
|
4305
4425
|
className: `coin-item ${theme.colorMode}`,
|
|
4306
4426
|
key: token.symbol,
|
|
4307
4427
|
onClick: () => handleDropdownItemClick(token.symbol)
|
|
4308
4428
|
},
|
|
4309
|
-
/* @__PURE__ */
|
|
4310
|
-
/* @__PURE__ */
|
|
4429
|
+
/* @__PURE__ */ import_react109.default.createElement(TokenIcon, { symbol: token.symbol, width: 24, height: 24 }),
|
|
4430
|
+
/* @__PURE__ */ import_react109.default.createElement("p", null, token.symbol)
|
|
4311
4431
|
))
|
|
4312
4432
|
),
|
|
4313
|
-
/* @__PURE__ */
|
|
4433
|
+
/* @__PURE__ */ import_react109.default.createElement("div", { className: `dropdown-icon ${collapsed ? "toggled" : "collapsed"}` }, /* @__PURE__ */ import_react109.default.createElement(Arrow_default, { fill: "none" }))
|
|
4314
4434
|
);
|
|
4315
4435
|
};
|
|
4316
4436
|
var CoinDropdown_default = CoinDropdown;
|
|
4317
4437
|
|
|
4318
4438
|
// src/components/reusable/ConfirmDetails.tsx
|
|
4319
|
-
var
|
|
4439
|
+
var import_react112 = __toESM(require("react"), 1);
|
|
4320
4440
|
var import_react_redux26 = require("react-redux");
|
|
4321
4441
|
|
|
4322
4442
|
// src/components/reusable/ChainIcon.tsx
|
|
4323
|
-
var
|
|
4443
|
+
var import_react110 = __toESM(require("react"), 1);
|
|
4324
4444
|
var chainIcons = {
|
|
4325
4445
|
ETH: Ethereum_default,
|
|
4326
4446
|
POL: Polygon_default,
|
|
@@ -4341,21 +4461,21 @@ function ChainIcon({
|
|
|
4341
4461
|
const Icon = chainIcons[symbol];
|
|
4342
4462
|
if (!Icon) {
|
|
4343
4463
|
console.warn(`Chain icon not found for symbol: ${symbol}`);
|
|
4344
|
-
return /* @__PURE__ */
|
|
4464
|
+
return /* @__PURE__ */ import_react110.default.createElement(
|
|
4345
4465
|
"div",
|
|
4346
4466
|
{
|
|
4347
4467
|
className: "icon"
|
|
4348
4468
|
}
|
|
4349
4469
|
);
|
|
4350
4470
|
}
|
|
4351
|
-
return /* @__PURE__ */
|
|
4471
|
+
return /* @__PURE__ */ import_react110.default.createElement("div", { className: "icon" }, /* @__PURE__ */ import_react110.default.createElement(Icon, null));
|
|
4352
4472
|
}
|
|
4353
4473
|
|
|
4354
4474
|
// src/components/reusable/ConfirmDetails.tsx
|
|
4355
4475
|
var import_react_redux27 = require("react-redux");
|
|
4356
4476
|
|
|
4357
4477
|
// src/components/reusable/FeeDeductionRadioButtons.tsx
|
|
4358
|
-
var
|
|
4478
|
+
var import_react111 = __toESM(require("react"), 1);
|
|
4359
4479
|
var import_react_redux25 = require("react-redux");
|
|
4360
4480
|
var FeeDeductionRadioButtons = () => {
|
|
4361
4481
|
const dispatch = (0, import_react_redux25.useDispatch)();
|
|
@@ -4370,7 +4490,7 @@ var FeeDeductionRadioButtons = () => {
|
|
|
4370
4490
|
const handleChange = (value) => {
|
|
4371
4491
|
dispatch(setFeeDeduct(value));
|
|
4372
4492
|
};
|
|
4373
|
-
return /* @__PURE__ */
|
|
4493
|
+
return /* @__PURE__ */ import_react111.default.createElement("div", { className: `fee-deduction-radio-container ${theme.colorMode}` }, /* @__PURE__ */ import_react111.default.createElement("div", { className: "fee-options" }, /* @__PURE__ */ import_react111.default.createElement("label", { className: "fee-option" }, /* @__PURE__ */ import_react111.default.createElement(
|
|
4374
4494
|
"input",
|
|
4375
4495
|
{
|
|
4376
4496
|
type: "radio",
|
|
@@ -4378,11 +4498,11 @@ var FeeDeductionRadioButtons = () => {
|
|
|
4378
4498
|
checked: feeDeduct,
|
|
4379
4499
|
onChange: () => handleChange(true)
|
|
4380
4500
|
}
|
|
4381
|
-
), /* @__PURE__ */
|
|
4501
|
+
), /* @__PURE__ */ import_react111.default.createElement("span", { className: `radio-label ${theme.colorMode}` }, `Pay $${formatterFloat2.format(
|
|
4382
4502
|
Number(amount)
|
|
4383
4503
|
)} ${sourceCurrency} in ${sourceNetwork.name} to receive $${formatterFloat2.format(
|
|
4384
4504
|
Number(amount) - totalFeeUsd
|
|
4385
|
-
)} ${targetCurrency} in ${targetNetwork.name}`)), /* @__PURE__ */
|
|
4505
|
+
)} ${targetCurrency} in ${targetNetwork.name}`)), /* @__PURE__ */ import_react111.default.createElement("label", { className: "fee-option" }, /* @__PURE__ */ import_react111.default.createElement(
|
|
4386
4506
|
"input",
|
|
4387
4507
|
{
|
|
4388
4508
|
type: "radio",
|
|
@@ -4390,7 +4510,7 @@ var FeeDeductionRadioButtons = () => {
|
|
|
4390
4510
|
checked: !feeDeduct,
|
|
4391
4511
|
onChange: () => handleChange(false)
|
|
4392
4512
|
}
|
|
4393
|
-
), /* @__PURE__ */
|
|
4513
|
+
), /* @__PURE__ */ import_react111.default.createElement("span", { className: `radio-label ${theme.colorMode}` }, `Pay $${formatterFloat2.format(
|
|
4394
4514
|
Number(amount) + totalFeeUsd
|
|
4395
4515
|
)} ${sourceCurrency} in ${sourceNetwork.name} to receive $${formatterFloat2.format(
|
|
4396
4516
|
Number(amount)
|
|
@@ -4415,11 +4535,11 @@ var ConfirmDetails = ({ isApproved }) => {
|
|
|
4415
4535
|
const networkOptions3 = (0, import_react_redux26.useSelector)(selectNetworks);
|
|
4416
4536
|
const transactionOption = (0, import_react_redux26.useSelector)(selectTransactionOption);
|
|
4417
4537
|
const { walletAddress } = useIsWalletReady4();
|
|
4418
|
-
const originNetworkOption = (0,
|
|
4538
|
+
const originNetworkOption = (0, import_react112.useMemo)(
|
|
4419
4539
|
() => networkOptions3.filter((network) => network.id === originNetwork.id)[0],
|
|
4420
4540
|
[networkOptions3, originNetwork]
|
|
4421
4541
|
);
|
|
4422
|
-
const targetNetworkOption = (0,
|
|
4542
|
+
const targetNetworkOption = (0, import_react112.useMemo)(
|
|
4423
4543
|
() => networkOptions3.filter(
|
|
4424
4544
|
(network) => network.shortName === (mode === "payment" /* payment */ ? transactionOption?.targetChain : targetNetwork.shortName)
|
|
4425
4545
|
)[0],
|
|
@@ -4428,32 +4548,32 @@ var ConfirmDetails = ({ isApproved }) => {
|
|
|
4428
4548
|
const sourceCurrency = (0, import_react_redux26.useSelector)(selectSourceCurrency);
|
|
4429
4549
|
const targetCurrency = (0, import_react_redux26.useSelector)(selectTargetCurrency);
|
|
4430
4550
|
const { width, updateWidth } = useWidth_default();
|
|
4431
|
-
(0,
|
|
4551
|
+
(0, import_react112.useEffect)(() => {
|
|
4432
4552
|
width === 0 && updateWidth(window.innerWidth);
|
|
4433
4553
|
}, []);
|
|
4434
|
-
const sourceWalletAddress = (0,
|
|
4554
|
+
const sourceWalletAddress = (0, import_react112.useMemo)(() => {
|
|
4435
4555
|
return width >= 916 ? walletAddress : getShortenedAddress(walletAddress || "");
|
|
4436
4556
|
}, [width, walletAddress]);
|
|
4437
|
-
const targetWalletAddress = (0,
|
|
4557
|
+
const targetWalletAddress = (0, import_react112.useMemo)(() => {
|
|
4438
4558
|
return getShortenedAddress(
|
|
4439
4559
|
(mode === "payment" /* payment */ ? transactionOption?.targetAddress : targetAddress) || ""
|
|
4440
4560
|
);
|
|
4441
4561
|
}, [mode, transactionOption, targetAddress]);
|
|
4442
|
-
const amountToShow = (0,
|
|
4562
|
+
const amountToShow = (0, import_react112.useMemo)(() => {
|
|
4443
4563
|
if (originNetwork.shortName === "BTC" /* BTC */ || targetNetwork.shortName === "BTC" /* BTC */) {
|
|
4444
4564
|
return (feeDeduct ? +amount : +amount + totalFeeUsd).toFixed(8);
|
|
4445
4565
|
}
|
|
4446
4566
|
return formatterFloat2.format(feeDeduct ? +amount : +amount + totalFeeUsd);
|
|
4447
4567
|
}, [amount, totalFeeUsd, originNetwork, targetNetwork, feeDeduct]);
|
|
4448
|
-
return /* @__PURE__ */
|
|
4568
|
+
return /* @__PURE__ */ import_react112.default.createElement("div", { className: `confirm-details ${theme.colorMode}` }, /* @__PURE__ */ import_react112.default.createElement("p", null, "Step ", isApproved ? "2" : "1", "\xA0of 2\xA0\xA0\xA0", isApproved ? "Submit transaction" : originNetwork.shortName === "FIAT" /* FIAT */ ? "Bank Details" : "Approval"), originNetwork.shortName === "FIAT" /* FIAT */ ? /* @__PURE__ */ import_react112.default.createElement("div", null, /* @__PURE__ */ import_react112.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react112.default.createElement("span", { className: "label" }, "IBAN:"), /* @__PURE__ */ import_react112.default.createElement("span", { className: `kima-card-network-label ${theme.colorMode}` }, /* @__PURE__ */ import_react112.default.createElement(ChainIcon, { symbol: originNetworkOption?.shortName }), "FIAT"), /* @__PURE__ */ import_react112.default.createElement("p", null, "ES6621000418401234567891")), /* @__PURE__ */ import_react112.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react112.default.createElement("span", { className: "label" }, "Recipient:"), /* @__PURE__ */ import_react112.default.createElement("p", null, "Kima Sandbox")), /* @__PURE__ */ import_react112.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react112.default.createElement("span", { className: "label" }, "BIC:"), /* @__PURE__ */ import_react112.default.createElement("p", null, "CAIXESBBXXX")), /* @__PURE__ */ import_react112.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react112.default.createElement("span", { className: "label" }, "Description:"), /* @__PURE__ */ import_react112.default.createElement("p", { className: "signature" }, signature))) : /* @__PURE__ */ import_react112.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react112.default.createElement("span", { className: "label" }, "Source wallet:"), /* @__PURE__ */ import_react112.default.createElement("div", { className: "network-details" }, /* @__PURE__ */ import_react112.default.createElement("div", { className: "kima-card-network-container" }, /* @__PURE__ */ import_react112.default.createElement("span", { className: `kima-card-network-label ${theme.colorMode}` }, /* @__PURE__ */ import_react112.default.createElement(ChainIcon, { symbol: originNetworkOption?.shortName }), originNetworkOption.name)), /* @__PURE__ */ import_react112.default.createElement("p", { className: theme.colorMode }, width >= 916 ? dAppOption === "LPDrain" /* LPDrain */ ? targetAddress : walletAddress : dAppOption === "LPDrain" /* LPDrain */ ? targetWalletAddress : sourceWalletAddress))), /* @__PURE__ */ import_react112.default.createElement("div", { className: "detail-item amount" }, /* @__PURE__ */ import_react112.default.createElement("span", { className: "label" }, "Transaction", width > 500 && /* @__PURE__ */ import_react112.default.createElement("br", null), "Details:"), /* @__PURE__ */ import_react112.default.createElement("span", { className: "amount-container" }, /* @__PURE__ */ import_react112.default.createElement("div", { className: "amount-details" }, /* @__PURE__ */ import_react112.default.createElement("span", null, "Source Transfer amount"), /* @__PURE__ */ import_react112.default.createElement("div", { className: "coin-details" }, /* @__PURE__ */ import_react112.default.createElement("p", null, feeDeduct ? formatterFloat2.format(Number(amount)) : formatterFloat2.format(Number(amount) + totalFeeUsd), " ", sourceCurrency)), sourceCurrency !== targetCurrency && /* @__PURE__ */ import_react112.default.createElement("div", { className: "coin-details" }, "\u2192 ", targetCurrency)), /* @__PURE__ */ import_react112.default.createElement("div", { className: "amount-details" }, /* @__PURE__ */ import_react112.default.createElement("span", null, "Source Network Fee (", originNetwork.shortName, ")"), /* @__PURE__ */ import_react112.default.createElement("span", { className: "service-fee" }, formatterFloat2.format(sourceNetworkFee?.amount || 0), " ", sourceCurrency)), /* @__PURE__ */ import_react112.default.createElement("div", { className: "amount-details" }, /* @__PURE__ */ import_react112.default.createElement("span", null, "Target Network Fee (", targetNetwork.shortName, ")"), /* @__PURE__ */ import_react112.default.createElement("span", { className: "service-fee" }, formatterFloat2.format(targetNetworkFee?.amount || 0), " ", sourceCurrency)), /* @__PURE__ */ import_react112.default.createElement("div", { className: "amount-details" }, /* @__PURE__ */ import_react112.default.createElement("span", null, "Target Transfer Amount"), /* @__PURE__ */ import_react112.default.createElement("span", { className: "service-fee" }, !feeDeduct ? formatterFloat2.format(Number(amount)) : formatterFloat2.format(Number(amount) - totalFeeUsd), " ", targetCurrency)))), targetNetwork.shortName === "FIAT" /* FIAT */ ? /* @__PURE__ */ import_react112.default.createElement("div", null, /* @__PURE__ */ import_react112.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react112.default.createElement("span", { className: "label" }, "IBAN:"), /* @__PURE__ */ import_react112.default.createElement("p", null, bankDetails.iban), /* @__PURE__ */ import_react112.default.createElement("span", { className: `kima-card-network-label ${theme.colorMode}` }, /* @__PURE__ */ import_react112.default.createElement(ChainIcon, { symbol: targetNetworkOption?.shortName }), "FIAT")), /* @__PURE__ */ import_react112.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react112.default.createElement("span", { className: "label" }, "Recipient:"), /* @__PURE__ */ import_react112.default.createElement("p", null, bankDetails.recipient))) : /* @__PURE__ */ import_react112.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react112.default.createElement("span", { className: "label" }, "Target wallet:"), /* @__PURE__ */ import_react112.default.createElement("div", { className: "network-details" }, /* @__PURE__ */ import_react112.default.createElement("div", { className: "kima-card-network-container" }, /* @__PURE__ */ import_react112.default.createElement("span", { className: `kima-card-network-label ${theme.colorMode}` }, /* @__PURE__ */ import_react112.default.createElement(ChainIcon, { symbol: targetNetworkOption?.shortName }), targetNetworkOption?.name)), /* @__PURE__ */ import_react112.default.createElement("p", { className: theme.colorMode }, width >= 916 ? dAppOption === "LPDrain" /* LPDrain */ ? walletAddress : targetAddress : dAppOption === "LPDrain" /* LPDrain */ ? sourceWalletAddress : targetWalletAddress))), mode === "bridge" /* bridge */ && totalFeeUsd > 0 ? (
|
|
4449
4569
|
// <FeeDeductionSlider />
|
|
4450
|
-
/* @__PURE__ */
|
|
4570
|
+
/* @__PURE__ */ import_react112.default.createElement(FeeDeductionRadioButtons_default, null)
|
|
4451
4571
|
) : null);
|
|
4452
4572
|
};
|
|
4453
4573
|
var ConfirmDetails_default = ConfirmDetails;
|
|
4454
4574
|
|
|
4455
4575
|
// src/components/reusable/AddressInput.tsx
|
|
4456
|
-
var
|
|
4576
|
+
var import_react113 = __toESM(require("react"), 1);
|
|
4457
4577
|
var import_react_redux28 = require("react-redux");
|
|
4458
4578
|
var import_react_redux29 = require("react-redux");
|
|
4459
4579
|
var AddressInput = ({
|
|
@@ -4469,7 +4589,7 @@ var AddressInput = ({
|
|
|
4469
4589
|
const isEvm = (chain) => {
|
|
4470
4590
|
return chain !== "SOL" && chain !== "TRX" && chain !== "BTC";
|
|
4471
4591
|
};
|
|
4472
|
-
(0,
|
|
4592
|
+
(0, import_react113.useEffect)(() => {
|
|
4473
4593
|
if (mode === "payment" /* payment */) return;
|
|
4474
4594
|
if (isEvm(sourceChain) && isEvm(targetChain)) {
|
|
4475
4595
|
dispatch(setTargetAddress(isReady && sourceAddress ? sourceAddress : ""));
|
|
@@ -4480,7 +4600,7 @@ var AddressInput = ({
|
|
|
4480
4600
|
);
|
|
4481
4601
|
dispatch(setTargetAddress(""));
|
|
4482
4602
|
}, [sourceChain, targetChain, sourceAddress, isReady, mode, dispatch]);
|
|
4483
|
-
return /* @__PURE__ */
|
|
4603
|
+
return /* @__PURE__ */ import_react113.default.createElement(
|
|
4484
4604
|
"input",
|
|
4485
4605
|
{
|
|
4486
4606
|
className: `kima-address-input ${theme}`,
|
|
@@ -4495,11 +4615,11 @@ var AddressInput = ({
|
|
|
4495
4615
|
var AddressInput_default = AddressInput;
|
|
4496
4616
|
|
|
4497
4617
|
// src/components/reusable/CustomCheckbox.tsx
|
|
4498
|
-
var
|
|
4618
|
+
var import_react114 = __toESM(require("react"), 1);
|
|
4499
4619
|
var import_react_redux30 = require("react-redux");
|
|
4500
4620
|
|
|
4501
4621
|
// src/components/reusable/StepBox.tsx
|
|
4502
|
-
var
|
|
4622
|
+
var import_react115 = __toESM(require("react"), 1);
|
|
4503
4623
|
var import_react_redux31 = require("react-redux");
|
|
4504
4624
|
var stepInfo2 = [
|
|
4505
4625
|
{
|
|
@@ -4522,63 +4642,64 @@ var StepBox = ({ step, errorStep, loadingStep, data }) => {
|
|
|
4522
4642
|
const theme = (0, import_react_redux31.useSelector)(selectTheme);
|
|
4523
4643
|
const explorerUrl = (0, import_react_redux31.useSelector)(selectKimaExplorer);
|
|
4524
4644
|
const networkOption = (0, import_react_redux31.useSelector)(selectNetworkOption);
|
|
4525
|
-
const
|
|
4526
|
-
const
|
|
4527
|
-
(network) => network.
|
|
4645
|
+
const networks = (0, import_react_redux31.useSelector)(selectNetworks);
|
|
4646
|
+
const sourceChain = (0, import_react115.useMemo)(
|
|
4647
|
+
() => networks.find((network) => network.shortName === data?.sourceChain),
|
|
4648
|
+
[data, networks]
|
|
4528
4649
|
);
|
|
4529
|
-
const
|
|
4530
|
-
(network) => network.
|
|
4650
|
+
const targetChain = (0, import_react115.useMemo)(
|
|
4651
|
+
() => networks.find((network) => network.shortName === data?.targetChain),
|
|
4652
|
+
[data, networks]
|
|
4531
4653
|
);
|
|
4532
|
-
|
|
4533
|
-
return /* @__PURE__ */ import_react114.default.createElement("div", { className: "kima-stepbox" }, /* @__PURE__ */ import_react114.default.createElement("div", { className: `content-wrapper ${theme.colorMode}` }, stepInfo2.map((item, index) => /* @__PURE__ */ import_react114.default.createElement("div", { key: item.title, className: "step-item" }, /* @__PURE__ */ import_react114.default.createElement(
|
|
4654
|
+
return /* @__PURE__ */ import_react115.default.createElement("div", { className: "kima-stepbox" }, /* @__PURE__ */ import_react115.default.createElement("div", { className: `content-wrapper ${theme.colorMode}` }, stepInfo2.map((item, index) => /* @__PURE__ */ import_react115.default.createElement("div", { key: item.title, className: "step-item" }, /* @__PURE__ */ import_react115.default.createElement(
|
|
4534
4655
|
"div",
|
|
4535
4656
|
{
|
|
4536
4657
|
className: `info-item
|
|
4537
4658
|
${step >= index ? index === loadingStep ? "active" : index === errorStep ? "error" : "completed" : ""}
|
|
4538
4659
|
${step < index && "locked"} ${theme.colorMode}`
|
|
4539
4660
|
},
|
|
4540
|
-
step < index && /* @__PURE__ */
|
|
4541
|
-
step >= index ? index === loadingStep ? /* @__PURE__ */
|
|
4542
|
-
/* @__PURE__ */
|
|
4543
|
-
), index === 0 && data?.kimaTxHash ? /* @__PURE__ */
|
|
4661
|
+
step < index && /* @__PURE__ */ import_react115.default.createElement(Lock_default, null),
|
|
4662
|
+
step >= index ? index === loadingStep ? /* @__PURE__ */ import_react115.default.createElement(Loader_default, { className: "loader" }) : index === errorStep ? /* @__PURE__ */ import_react115.default.createElement(Warning_default, null) : /* @__PURE__ */ import_react115.default.createElement(Check_default, null) : null,
|
|
4663
|
+
/* @__PURE__ */ import_react115.default.createElement("p", null, item.title)
|
|
4664
|
+
), index === 0 && data?.kimaTxHash ? /* @__PURE__ */ import_react115.default.createElement("div", { className: `info-item ${theme.colorMode}` }, /* @__PURE__ */ import_react115.default.createElement("div", { className: "icon" }, /* @__PURE__ */ import_react115.default.createElement(USDK_default, { width: 30, height: 30 })), /* @__PURE__ */ import_react115.default.createElement("p", { className: "chain-name" }, "Kima TX ID:"), /* @__PURE__ */ import_react115.default.createElement("p", null, /* @__PURE__ */ import_react115.default.createElement(
|
|
4544
4665
|
ExternalLink_default,
|
|
4545
4666
|
{
|
|
4546
4667
|
to: `${explorerUrl}/transactions/?tx=${data?.kimaTxHash}`
|
|
4547
4668
|
},
|
|
4548
4669
|
getShortenedAddress(data?.kimaTxHash || "")
|
|
4549
|
-
), /* @__PURE__ */
|
|
4670
|
+
), /* @__PURE__ */ import_react115.default.createElement(CopyButton_default, { text: data?.kimaTxHash }))) : null, index === 1 && data?.tssPullHash ? /* @__PURE__ */ import_react115.default.createElement(
|
|
4550
4671
|
"div",
|
|
4551
4672
|
{
|
|
4552
4673
|
className: `info-item ${theme.colorMode} source-chain ${step >= 3 ? "paid" : ""}`
|
|
4553
4674
|
},
|
|
4554
|
-
/* @__PURE__ */
|
|
4555
|
-
/* @__PURE__ */
|
|
4556
|
-
/* @__PURE__ */
|
|
4675
|
+
/* @__PURE__ */ import_react115.default.createElement(ChainIcon, { symbol: data.sourceChain }),
|
|
4676
|
+
/* @__PURE__ */ import_react115.default.createElement("p", { className: "chain-name" }, sourceChain?.name, " TX ID:"),
|
|
4677
|
+
/* @__PURE__ */ import_react115.default.createElement("p", null, /* @__PURE__ */ import_react115.default.createElement(
|
|
4557
4678
|
ExternalLink_default,
|
|
4558
4679
|
{
|
|
4559
|
-
to:
|
|
4680
|
+
to: `${sourceChain?.blockExplorers?.default.url}/${data?.sourceChain === "TRX" /* TRON */ ? "transaction" : "tx"}/${data?.tssPullHash}${data?.sourceChain === "SOL" /* SOLANA */ && networkOption === "testnet" /* testnet */ ? "?cluster=devnet" : ""}`
|
|
4560
4681
|
},
|
|
4561
4682
|
getShortenedAddress(data?.tssPullHash || "")
|
|
4562
|
-
), /* @__PURE__ */
|
|
4563
|
-
) : null, index === 3 && data?.tssReleaseHash ? /* @__PURE__ */
|
|
4683
|
+
), /* @__PURE__ */ import_react115.default.createElement(CopyButton_default, { text: data?.tssPullHash || "" }))
|
|
4684
|
+
) : null, index === 3 && data?.tssReleaseHash ? /* @__PURE__ */ import_react115.default.createElement("div", { className: `info-item ${theme.colorMode} target-chain` }, /* @__PURE__ */ import_react115.default.createElement(ChainIcon, { symbol: data.targetChain }), /* @__PURE__ */ import_react115.default.createElement("p", { className: "chain-name" }, targetChain?.name, " TX ID:"), /* @__PURE__ */ import_react115.default.createElement("p", null, /* @__PURE__ */ import_react115.default.createElement(
|
|
4564
4685
|
ExternalLink_default,
|
|
4565
4686
|
{
|
|
4566
|
-
to:
|
|
4687
|
+
to: `${targetChain?.blockExplorers?.default.url}/${data?.targetChain === "TRX" /* TRON */ ? "transaction" : "tx"}/${data?.tssReleaseHash}${data?.targetChain === "SOL" /* SOLANA */ && networkOption === "testnet" /* testnet */ ? "?cluster=devnet" : ""}`
|
|
4567
4688
|
},
|
|
4568
4689
|
getShortenedAddress(data?.tssReleaseHash || "")
|
|
4569
|
-
), /* @__PURE__ */
|
|
4690
|
+
), /* @__PURE__ */ import_react115.default.createElement(CopyButton_default, { text: data?.tssReleaseHash || "" }))) : null))));
|
|
4570
4691
|
};
|
|
4571
4692
|
var StepBox_default = StepBox;
|
|
4572
4693
|
|
|
4573
4694
|
// src/components/reusable/BankInput.tsx
|
|
4574
|
-
var
|
|
4695
|
+
var import_react116 = __toESM(require("react"), 1);
|
|
4575
4696
|
var import_react_redux32 = require("react-redux");
|
|
4576
4697
|
var import_react_redux33 = require("react-redux");
|
|
4577
4698
|
var BankInput = () => {
|
|
4578
4699
|
const dispatch = (0, import_react_redux32.useDispatch)();
|
|
4579
4700
|
const theme = (0, import_react_redux33.useSelector)(selectTheme);
|
|
4580
4701
|
const bankDetails = (0, import_react_redux33.useSelector)(selectBankDetails);
|
|
4581
|
-
return /* @__PURE__ */
|
|
4702
|
+
return /* @__PURE__ */ import_react116.default.createElement("div", { className: "bank-input" }, /* @__PURE__ */ import_react116.default.createElement("div", { className: `form-item ${theme.colorMode}` }, /* @__PURE__ */ import_react116.default.createElement("span", { className: "label" }, "IBAN:"), /* @__PURE__ */ import_react116.default.createElement(
|
|
4582
4703
|
"input",
|
|
4583
4704
|
{
|
|
4584
4705
|
className: "kima-address-input",
|
|
@@ -4586,7 +4707,7 @@ var BankInput = () => {
|
|
|
4586
4707
|
value: bankDetails.iban,
|
|
4587
4708
|
onChange: (e) => dispatch(setBankDetails({ ...bankDetails, iban: e.target.value }))
|
|
4588
4709
|
}
|
|
4589
|
-
)), /* @__PURE__ */
|
|
4710
|
+
)), /* @__PURE__ */ import_react116.default.createElement("div", { className: `form-item ${theme.colorMode}` }, /* @__PURE__ */ import_react116.default.createElement("span", { className: "label" }, "Recipient:"), /* @__PURE__ */ import_react116.default.createElement(
|
|
4590
4711
|
"input",
|
|
4591
4712
|
{
|
|
4592
4713
|
className: "kima-address-input",
|
|
@@ -4601,7 +4722,7 @@ var BankInput = () => {
|
|
|
4601
4722
|
var BankInput_default = BankInput;
|
|
4602
4723
|
|
|
4603
4724
|
// src/components/reusable/TxButton.tsx
|
|
4604
|
-
var
|
|
4725
|
+
var import_react117 = __toESM(require("react"), 1);
|
|
4605
4726
|
var import_react_redux34 = require("react-redux");
|
|
4606
4727
|
var import_react_redux35 = require("react-redux");
|
|
4607
4728
|
var TxButton = ({ theme }) => {
|
|
@@ -4610,14 +4731,14 @@ var TxButton = ({ theme }) => {
|
|
|
4610
4731
|
dispatch(setPendingTxPopup(true));
|
|
4611
4732
|
};
|
|
4612
4733
|
const txCount = (0, import_react_redux35.useSelector)(selectPendingTxs);
|
|
4613
|
-
return /* @__PURE__ */
|
|
4734
|
+
return /* @__PURE__ */ import_react117.default.createElement(
|
|
4614
4735
|
"button",
|
|
4615
4736
|
{
|
|
4616
4737
|
className: `secondary-button tx-button ${theme.colorMode}`,
|
|
4617
4738
|
onClick: handleClick
|
|
4618
4739
|
},
|
|
4619
4740
|
txCount,
|
|
4620
|
-
/* @__PURE__ */
|
|
4741
|
+
/* @__PURE__ */ import_react117.default.createElement(
|
|
4621
4742
|
ring_default,
|
|
4622
4743
|
{
|
|
4623
4744
|
height: 16,
|
|
@@ -4630,15 +4751,16 @@ var TxButton = ({ theme }) => {
|
|
|
4630
4751
|
var TxButton_default = TxButton;
|
|
4631
4752
|
|
|
4632
4753
|
// src/components/TransactionWidget.tsx
|
|
4633
|
-
var import_react_redux36 = require("react-redux");
|
|
4634
|
-
var import_react_redux37 = require("react-redux");
|
|
4635
4754
|
var import_react_redux38 = require("react-redux");
|
|
4636
|
-
var
|
|
4755
|
+
var import_react_redux39 = require("react-redux");
|
|
4756
|
+
var import_react_redux40 = require("react-redux");
|
|
4757
|
+
var import_react_hot_toast3 = require("react-hot-toast");
|
|
4637
4758
|
|
|
4638
4759
|
// src/hooks/useGetTxData.ts
|
|
4639
|
-
var
|
|
4760
|
+
var import_react118 = require("react");
|
|
4640
4761
|
var import_react_query12 = require("@tanstack/react-query");
|
|
4641
|
-
|
|
4762
|
+
|
|
4763
|
+
// src/services/transactionApi.ts
|
|
4642
4764
|
var emptyStatus = {
|
|
4643
4765
|
status: "Available" /* AVAILABLE */,
|
|
4644
4766
|
sourceChain: "",
|
|
@@ -4647,7 +4769,7 @@ var emptyStatus = {
|
|
|
4647
4769
|
tssReleaseHash: "",
|
|
4648
4770
|
sourceSymbol: "",
|
|
4649
4771
|
targetSymbol: "",
|
|
4650
|
-
amount:
|
|
4772
|
+
amount: "",
|
|
4651
4773
|
kimaTxHash: "",
|
|
4652
4774
|
failReason: ""
|
|
4653
4775
|
};
|
|
@@ -4692,28 +4814,39 @@ var isFinished = (data) => {
|
|
|
4692
4814
|
"UnAvailable" /* UNAVAILABLE */
|
|
4693
4815
|
].includes(data.status);
|
|
4694
4816
|
};
|
|
4817
|
+
var getTxData = async ({
|
|
4818
|
+
txId,
|
|
4819
|
+
isLP,
|
|
4820
|
+
backendUrl,
|
|
4821
|
+
refPollForUpdates
|
|
4822
|
+
}) => {
|
|
4823
|
+
try {
|
|
4824
|
+
const path = isLP ? "tx/lp" : "tx";
|
|
4825
|
+
const response = await fetchWrapper.get(
|
|
4826
|
+
`${backendUrl}/${path}/${txId}/status`
|
|
4827
|
+
);
|
|
4828
|
+
if (typeof response === "string") throw new Error(response);
|
|
4829
|
+
const data = selectStatus(
|
|
4830
|
+
response
|
|
4831
|
+
);
|
|
4832
|
+
refPollForUpdates.current = !isFinished(data);
|
|
4833
|
+
return data;
|
|
4834
|
+
} catch (error) {
|
|
4835
|
+
console.error(`Error fetching transaction ${txId} data:`, error);
|
|
4836
|
+
throw new Error(
|
|
4837
|
+
`Error fetching transaction ${txId} data: ${JSON.stringify(error)}`
|
|
4838
|
+
);
|
|
4839
|
+
}
|
|
4840
|
+
};
|
|
4841
|
+
|
|
4842
|
+
// src/hooks/useGetTxData.ts
|
|
4843
|
+
var POLLING_INTERVAL_MS = 1e3 * 10;
|
|
4695
4844
|
var useGetTxData = (txId, dAppOption, backendUrl) => {
|
|
4696
|
-
const refPollForUpdates = (0,
|
|
4845
|
+
const refPollForUpdates = (0, import_react118.useRef)(false);
|
|
4697
4846
|
const isLP = dAppOption === "LPAdd" /* LPAdd */ || dAppOption === "LPDrain" /* LPDrain */;
|
|
4698
4847
|
const result = (0, import_react_query12.useQuery)({
|
|
4699
4848
|
queryKey: ["txData", txId, dAppOption],
|
|
4700
|
-
queryFn: async () => {
|
|
4701
|
-
try {
|
|
4702
|
-
const path = isLP ? "tx/lp" : "tx";
|
|
4703
|
-
const response = await fetchWrapper.get(
|
|
4704
|
-
`${backendUrl}/${path}/${txId}/status`
|
|
4705
|
-
);
|
|
4706
|
-
if (typeof response === "string") throw new Error(response);
|
|
4707
|
-
const data = selectStatus(
|
|
4708
|
-
response
|
|
4709
|
-
);
|
|
4710
|
-
refPollForUpdates.current = !isFinished(data);
|
|
4711
|
-
return data;
|
|
4712
|
-
} catch (error) {
|
|
4713
|
-
console.error(`Error fetching transaction ${txId} data:`, error);
|
|
4714
|
-
return null;
|
|
4715
|
-
}
|
|
4716
|
-
},
|
|
4849
|
+
queryFn: async () => await getTxData({ txId, isLP, backendUrl, refPollForUpdates }),
|
|
4717
4850
|
// only poll for updates while the transaction is in progress
|
|
4718
4851
|
refetchInterval: refPollForUpdates.current ? POLLING_INTERVAL_MS : false,
|
|
4719
4852
|
// 10 sec
|
|
@@ -4724,34 +4857,125 @@ var useGetTxData = (txId, dAppOption, backendUrl) => {
|
|
|
4724
4857
|
};
|
|
4725
4858
|
var useGetTxData_default = useGetTxData;
|
|
4726
4859
|
|
|
4860
|
+
// src/components/reusable/TransactionStatusMessage.tsx
|
|
4861
|
+
var import_react119 = __toESM(require("react"), 1);
|
|
4862
|
+
var TransactionStatusMessage = ({
|
|
4863
|
+
isCompleted,
|
|
4864
|
+
transactionId
|
|
4865
|
+
}) => {
|
|
4866
|
+
return /* @__PURE__ */ import_react119.default.createElement("div", { className: "transaction-status-message" }, /* @__PURE__ */ import_react119.default.createElement("h2", null, isCompleted !== "Completed" /* COMPLETED */ && "Your transaction is currently being processed.", " ", "Please copy the Transaction ID below for future reference. You can use this ID to track the transaction status or resolve any issues if needed."), /* @__PURE__ */ import_react119.default.createElement("span", { className: "transaction-copy" }, /* @__PURE__ */ import_react119.default.createElement("h3", null, transactionId), /* @__PURE__ */ import_react119.default.createElement(CopyButton_default, { text: transactionId })));
|
|
4867
|
+
};
|
|
4868
|
+
var TransactionStatusMessage_default = TransactionStatusMessage;
|
|
4869
|
+
|
|
4870
|
+
// src/components/reusable/TransactionSearch.tsx
|
|
4871
|
+
var import_react120 = __toESM(require("react"), 1);
|
|
4872
|
+
var import_react_redux36 = require("react-redux");
|
|
4873
|
+
var import_react_redux37 = require("react-redux");
|
|
4874
|
+
var import_react_hot_toast2 = __toESM(require("react-hot-toast"), 1);
|
|
4875
|
+
var TransactionSearch = () => {
|
|
4876
|
+
const theme = (0, import_react_redux36.useSelector)(selectTheme);
|
|
4877
|
+
const backendUrl = (0, import_react_redux36.useSelector)(selectBackendUrl);
|
|
4878
|
+
const dispatch = (0, import_react_redux37.useDispatch)();
|
|
4879
|
+
const [transactionId, setTransactionId] = (0, import_react120.useState)("");
|
|
4880
|
+
const refPollForUpdates = (0, import_react120.useRef)(false);
|
|
4881
|
+
const handleSearch = async () => {
|
|
4882
|
+
if (transactionId.length <= 0)
|
|
4883
|
+
return import_react_hot_toast2.default.error("You must provide a valid transaction id", {
|
|
4884
|
+
icon: /* @__PURE__ */ import_react120.default.createElement(Error_default, null)
|
|
4885
|
+
});
|
|
4886
|
+
try {
|
|
4887
|
+
const data = await getTxData({
|
|
4888
|
+
txId: transactionId,
|
|
4889
|
+
backendUrl,
|
|
4890
|
+
refPollForUpdates,
|
|
4891
|
+
isLP: false
|
|
4892
|
+
});
|
|
4893
|
+
console.log("transaction data: ", data);
|
|
4894
|
+
dispatch(setTxId(transactionId));
|
|
4895
|
+
dispatch(setMode("status" /* status */));
|
|
4896
|
+
dispatch(setSubmitted(true));
|
|
4897
|
+
} catch (error) {
|
|
4898
|
+
console.error("Error searching transaction: ", error);
|
|
4899
|
+
return import_react_hot_toast2.default.error(
|
|
4900
|
+
"Transaction not found. Please check for the proper transaction id.",
|
|
4901
|
+
{ icon: /* @__PURE__ */ import_react120.default.createElement(Error_default, null) }
|
|
4902
|
+
);
|
|
4903
|
+
}
|
|
4904
|
+
};
|
|
4905
|
+
return /* @__PURE__ */ import_react120.default.createElement("div", { className: "form-item transaction-search" }, /* @__PURE__ */ import_react120.default.createElement("div", { className: "transaction-input" }, /* @__PURE__ */ import_react120.default.createElement("span", { className: "label" }, "Search Transaction:"), /* @__PURE__ */ import_react120.default.createElement(
|
|
4906
|
+
"input",
|
|
4907
|
+
{
|
|
4908
|
+
className: `${theme.colorMode}`,
|
|
4909
|
+
type: "text",
|
|
4910
|
+
placeholder: "Transaction ID",
|
|
4911
|
+
value: transactionId,
|
|
4912
|
+
onChange: (e) => setTransactionId(e.target.value),
|
|
4913
|
+
spellCheck: false
|
|
4914
|
+
}
|
|
4915
|
+
)), /* @__PURE__ */ import_react120.default.createElement(SecondaryButton_default, { clickHandler: handleSearch }, "Search"));
|
|
4916
|
+
};
|
|
4917
|
+
var TransactionSearch_default = TransactionSearch;
|
|
4918
|
+
|
|
4727
4919
|
// src/components/TransactionWidget.tsx
|
|
4728
|
-
var import_chains2 = require("viem/chains");
|
|
4729
4920
|
var TransactionWidget = ({ theme }) => {
|
|
4730
|
-
const [step, setStep] = (0,
|
|
4731
|
-
const [focus, setFocus] = (0,
|
|
4732
|
-
const [errorStep, setErrorStep] = (0,
|
|
4733
|
-
const [errorMessage, setErrorMessage] = (0,
|
|
4734
|
-
const [loadingStep, setLoadingStep] = (0,
|
|
4735
|
-
const [minimized, setMinimized] = (0,
|
|
4736
|
-
const dispatch = (0,
|
|
4737
|
-
const mode = (0,
|
|
4738
|
-
const feeDeduct = (0,
|
|
4739
|
-
const amount = (0,
|
|
4740
|
-
const txId = (0,
|
|
4741
|
-
const dAppOption = (0,
|
|
4742
|
-
const { totalFeeUsd } = (0,
|
|
4743
|
-
const transactionOption = (0,
|
|
4921
|
+
const [step, setStep] = (0, import_react121.useState)(0);
|
|
4922
|
+
const [focus, setFocus] = (0, import_react121.useState)(-1);
|
|
4923
|
+
const [errorStep, setErrorStep] = (0, import_react121.useState)(-1);
|
|
4924
|
+
const [errorMessage, setErrorMessage] = (0, import_react121.useState)("");
|
|
4925
|
+
const [loadingStep, setLoadingStep] = (0, import_react121.useState)(-1);
|
|
4926
|
+
const [minimized, setMinimized] = (0, import_react121.useState)(false);
|
|
4927
|
+
const dispatch = (0, import_react_redux40.useDispatch)();
|
|
4928
|
+
const mode = (0, import_react_redux39.useSelector)(selectMode);
|
|
4929
|
+
const feeDeduct = (0, import_react_redux39.useSelector)(selectFeeDeduct);
|
|
4930
|
+
const amount = (0, import_react_redux39.useSelector)(selectAmount);
|
|
4931
|
+
const txId = (0, import_react_redux39.useSelector)(selectTxId);
|
|
4932
|
+
const dAppOption = (0, import_react_redux39.useSelector)(selectDappOption);
|
|
4933
|
+
const { totalFeeUsd } = (0, import_react_redux39.useSelector)(selectServiceFee);
|
|
4934
|
+
const transactionOption = (0, import_react_redux39.useSelector)(selectTransactionOption);
|
|
4935
|
+
const sourceChain = (0, import_react_redux39.useSelector)(selectSourceChain);
|
|
4936
|
+
const targetChain = (0, import_react_redux39.useSelector)(selectTargetChain);
|
|
4937
|
+
const sourceSymbol = (0, import_react_redux39.useSelector)(selectSourceCurrency);
|
|
4938
|
+
const targetSymbol = (0, import_react_redux39.useSelector)(selectTargetCurrency);
|
|
4939
|
+
const networks = (0, import_react_redux39.useSelector)(selectNetworks);
|
|
4744
4940
|
const { successHandler, closeHandler } = useKimaContext();
|
|
4745
|
-
const backendUrl = (0,
|
|
4746
|
-
const { data } = useGetTxData_default(txId, dAppOption, backendUrl);
|
|
4941
|
+
const backendUrl = (0, import_react_redux39.useSelector)(selectBackendUrl);
|
|
4942
|
+
const { data, error } = useGetTxData_default(txId, dAppOption, backendUrl);
|
|
4943
|
+
const transactionSourceChain = (0, import_react121.useMemo)(
|
|
4944
|
+
() => networks.find(
|
|
4945
|
+
(network) => mode === "status" /* status */ ? network.shortName === data?.sourceChain : sourceChain
|
|
4946
|
+
),
|
|
4947
|
+
[data, mode]
|
|
4948
|
+
);
|
|
4949
|
+
const transactionTargetChain = (0, import_react121.useMemo)(
|
|
4950
|
+
() => networks.find(
|
|
4951
|
+
(network) => mode === "status" /* status */ ? network.shortName === data?.targetChain : targetChain
|
|
4952
|
+
),
|
|
4953
|
+
[data, mode]
|
|
4954
|
+
);
|
|
4955
|
+
const isValidTxId = (0, import_react121.useMemo)(() => {
|
|
4956
|
+
return !(!txId || typeof txId === "string" && txId.length === 0 || typeof txId === "number" && txId < 0);
|
|
4957
|
+
}, [txId]);
|
|
4958
|
+
const isEmptyStatus = (0, import_react121.useMemo)(() => {
|
|
4959
|
+
if (!data) return true;
|
|
4960
|
+
return data?.amount === "";
|
|
4961
|
+
}, [data]);
|
|
4747
4962
|
const { data: chainData } = useChainData(backendUrl);
|
|
4748
|
-
(0,
|
|
4963
|
+
(0, import_react121.useEffect)(() => {
|
|
4749
4964
|
if (!data || data.status !== "Completed" /* COMPLETED */) return;
|
|
4750
4965
|
successHandler && successHandler({
|
|
4751
4966
|
txId
|
|
4752
4967
|
});
|
|
4753
4968
|
}, [data]);
|
|
4754
|
-
(0,
|
|
4969
|
+
(0, import_react121.useEffect)(() => {
|
|
4970
|
+
if (error)
|
|
4971
|
+
import_react_hot_toast3.toast.error(
|
|
4972
|
+
"The provided transaction id is not valid, please use a different one or contact support for further assistance",
|
|
4973
|
+
{
|
|
4974
|
+
icon: /* @__PURE__ */ import_react121.default.createElement(Error_default, null)
|
|
4975
|
+
}
|
|
4976
|
+
);
|
|
4977
|
+
}, [error]);
|
|
4978
|
+
(0, import_react121.useEffect)(() => {
|
|
4755
4979
|
if (!data) {
|
|
4756
4980
|
setStep(0);
|
|
4757
4981
|
setLoadingStep(0);
|
|
@@ -4771,7 +4995,7 @@ var TransactionWidget = ({ theme }) => {
|
|
|
4771
4995
|
setErrorStep(1);
|
|
4772
4996
|
setLoadingStep(-1);
|
|
4773
4997
|
console.log(data.failReason);
|
|
4774
|
-
|
|
4998
|
+
import_react_hot_toast3.toast.error("Unavailable", { icon: /* @__PURE__ */ import_react121.default.createElement(Error_default, null) });
|
|
4775
4999
|
setErrorMessage("Unavailable");
|
|
4776
5000
|
} else if (status === "KeySigned" /* KEYSIGNED */) {
|
|
4777
5001
|
setStep(3);
|
|
@@ -4784,8 +5008,8 @@ var TransactionWidget = ({ theme }) => {
|
|
|
4784
5008
|
setErrorStep(3);
|
|
4785
5009
|
setLoadingStep(-1);
|
|
4786
5010
|
console.log(data.failReason);
|
|
4787
|
-
|
|
4788
|
-
icon: /* @__PURE__ */
|
|
5011
|
+
import_react_hot_toast3.toast.error("Failed to release tokens to target!", {
|
|
5012
|
+
icon: /* @__PURE__ */ import_react121.default.createElement(Error_default, null)
|
|
4789
5013
|
});
|
|
4790
5014
|
setErrorMessage("Failed to release tokens to target!");
|
|
4791
5015
|
} else if (status === "FailedToPull" /* FAILEDTOPULL */) {
|
|
@@ -4793,7 +5017,7 @@ var TransactionWidget = ({ theme }) => {
|
|
|
4793
5017
|
setErrorStep(1);
|
|
4794
5018
|
setLoadingStep(-1);
|
|
4795
5019
|
console.log(data.failReason);
|
|
4796
|
-
|
|
5020
|
+
import_react_hot_toast3.toast.error("Failed to pull tokens from source!", { icon: /* @__PURE__ */ import_react121.default.createElement(Error_default, null) });
|
|
4797
5021
|
setErrorMessage("Failed to pull tokens from source!");
|
|
4798
5022
|
} else if (status === "Completed" /* COMPLETED */) {
|
|
4799
5023
|
setStep(4);
|
|
@@ -4803,29 +5027,32 @@ var TransactionWidget = ({ theme }) => {
|
|
|
4803
5027
|
const resetForm = () => {
|
|
4804
5028
|
if (mode !== "payment" /* payment */) {
|
|
4805
5029
|
if (transactionOption?.sourceChain) {
|
|
4806
|
-
const
|
|
5030
|
+
const sourceChain2 = chainData?.find(
|
|
4807
5031
|
(currentChain) => currentChain.shortName === transactionOption.sourceChain
|
|
4808
5032
|
);
|
|
4809
|
-
dispatch(setSourceChain(
|
|
5033
|
+
dispatch(setSourceChain(sourceChain2));
|
|
4810
5034
|
} else {
|
|
4811
|
-
dispatch(setSourceChain(
|
|
5035
|
+
dispatch(setSourceChain(networks[0]));
|
|
4812
5036
|
}
|
|
4813
5037
|
if (transactionOption?.sourceChain) {
|
|
4814
|
-
const
|
|
5038
|
+
const targetChain2 = chainData?.find(
|
|
4815
5039
|
(currentChain) => currentChain.shortName === transactionOption.targetChain
|
|
4816
5040
|
);
|
|
4817
|
-
dispatch(setTargetChain(
|
|
5041
|
+
dispatch(setTargetChain(targetChain2));
|
|
4818
5042
|
} else {
|
|
4819
|
-
dispatch(setTargetChain(
|
|
5043
|
+
dispatch(setTargetChain(networks[0]));
|
|
4820
5044
|
}
|
|
4821
5045
|
dispatch(setTargetAddress(transactionOption?.targetAddress || ""));
|
|
4822
5046
|
dispatch(setTargetCurrency(transactionOption?.currency || ""));
|
|
4823
5047
|
dispatch(setAmount(transactionOption?.amount.toString() || ""));
|
|
4824
5048
|
}
|
|
4825
5049
|
dispatch(setSubmitted(false));
|
|
5050
|
+
dispatch(
|
|
5051
|
+
setMode(transactionOption ? "payment" /* payment */ : "bridge" /* bridge */)
|
|
5052
|
+
);
|
|
4826
5053
|
closeHandler && closeHandler(0);
|
|
4827
5054
|
};
|
|
4828
|
-
return /* @__PURE__ */
|
|
5055
|
+
return /* @__PURE__ */ import_react121.default.createElement(import_react_redux38.Provider, { store }, /* @__PURE__ */ import_react121.default.createElement(
|
|
4829
5056
|
"div",
|
|
4830
5057
|
{
|
|
4831
5058
|
className: `kima-card transaction-card ${theme.colorMode} ${minimized ? "minimized" : ""}`,
|
|
@@ -4833,11 +5060,21 @@ var TransactionWidget = ({ theme }) => {
|
|
|
4833
5060
|
background: theme.colorMode === "light" /* light */ ? theme.backgroundColorLight : theme.backgroundColorDark
|
|
4834
5061
|
}
|
|
4835
5062
|
},
|
|
4836
|
-
/* @__PURE__ */
|
|
4837
|
-
|
|
4838
|
-
)
|
|
4839
|
-
|
|
4840
|
-
|
|
5063
|
+
/* @__PURE__ */ import_react121.default.createElement("div", { className: "kima-card-header" }, /* @__PURE__ */ import_react121.default.createElement("div", { className: "topbar" }, /* @__PURE__ */ import_react121.default.createElement("div", { className: "title" }, isValidTxId && !error ? /* @__PURE__ */ import_react121.default.createElement("h3", { className: "transaction" }, mode !== "status" /* status */ ? data?.status === "Completed" /* COMPLETED */ ? "TRANSFERRED" : "TRANSFERING" : isEmptyStatus ? "GETTING TRANSACTION STATUS" : data?.status === "Completed" /* COMPLETED */ ? "TRANSFERRED" : "TRANSFERING", /* @__PURE__ */ import_react121.default.createElement("div", null, mode !== "status" /* status */ ? Number(amount) !== 0 ? formatterFloat2.format(
|
|
5064
|
+
feeDeduct ? Number(amount) : Number(amount) + totalFeeUsd
|
|
5065
|
+
) : "" : data?.amount || "", " ", mode !== "status" /* status */ ? `(${sourceSymbol})` : isEmptyStatus ? "" : `(${data?.sourceSymbol})`, /* @__PURE__ */ import_react121.default.createElement("div", { className: "title-icon" }, /* @__PURE__ */ import_react121.default.createElement(
|
|
5066
|
+
ChainIcon,
|
|
5067
|
+
{
|
|
5068
|
+
symbol: transactionSourceChain?.shortName
|
|
5069
|
+
}
|
|
5070
|
+
)), " ", mode !== "status" /* status */ ? `(${transactionSourceChain?.shortName})` : isEmptyStatus ? "" : `(${data?.sourceChain})`, " ", mode !== "status" /* status */ ? `\u2192 ` : isEmptyStatus ? "" : `\u2192 `, mode !== "status" /* status */ ? Number(amount) !== 0 ? formatterFloat2.format(
|
|
5071
|
+
feeDeduct ? Number(amount) - totalFeeUsd : Number(amount)
|
|
5072
|
+
) : "" : data?.amount || "", " ", mode !== "status" /* status */ ? `(${targetSymbol})${" "}` : isEmptyStatus ? "" : `(${data?.targetSymbol})${" "}`, /* @__PURE__ */ import_react121.default.createElement("div", { className: "title-icon" }, /* @__PURE__ */ import_react121.default.createElement(
|
|
5073
|
+
ChainIcon,
|
|
5074
|
+
{
|
|
5075
|
+
symbol: transactionTargetChain?.shortName
|
|
5076
|
+
}
|
|
5077
|
+
)), " ", mode !== "status" /* status */ ? `(${transactionTargetChain?.shortName})${" "}` : isEmptyStatus ? "" : `(${data?.targetChain}) ${" "}`)) : /* @__PURE__ */ import_react121.default.createElement("div", null, /* @__PURE__ */ import_react121.default.createElement("h3", { className: "transaction" }, "Transaction Status"))), !minimized ? /* @__PURE__ */ import_react121.default.createElement("div", { className: "control-buttons" }, /* @__PURE__ */ import_react121.default.createElement(
|
|
4841
5078
|
"button",
|
|
4842
5079
|
{
|
|
4843
5080
|
className: "icon-button minimize",
|
|
@@ -4845,9 +5082,9 @@ var TransactionWidget = ({ theme }) => {
|
|
|
4845
5082
|
setMinimized(true);
|
|
4846
5083
|
}
|
|
4847
5084
|
},
|
|
4848
|
-
/* @__PURE__ */
|
|
4849
|
-
), loadingStep < 0 ? /* @__PURE__ */
|
|
4850
|
-
/* @__PURE__ */
|
|
5085
|
+
/* @__PURE__ */ import_react121.default.createElement(Minimize_default, null)
|
|
5086
|
+
), !isValidTxId || loadingStep < 0 || error ? /* @__PURE__ */ import_react121.default.createElement("button", { className: "reset-button", onClick: resetForm }, "Reset") : null) : /* @__PURE__ */ import_react121.default.createElement("div", { className: "control-buttons" }, /* @__PURE__ */ import_react121.default.createElement("div", { className: "maximize", onClick: () => setMinimized(false) }, "View")))),
|
|
5087
|
+
isValidTxId && !error ? /* @__PURE__ */ import_react121.default.createElement("div", { className: "kima-card-content" }, /* @__PURE__ */ import_react121.default.createElement("div", { className: "transaction-content" }, /* @__PURE__ */ import_react121.default.createElement(
|
|
4851
5088
|
Progressbar_default,
|
|
4852
5089
|
{
|
|
4853
5090
|
step,
|
|
@@ -4856,7 +5093,7 @@ var TransactionWidget = ({ theme }) => {
|
|
|
4856
5093
|
setFocus,
|
|
4857
5094
|
loadingStep
|
|
4858
5095
|
}
|
|
4859
|
-
), /* @__PURE__ */
|
|
5096
|
+
), /* @__PURE__ */ import_react121.default.createElement(
|
|
4860
5097
|
StepBox_default,
|
|
4861
5098
|
{
|
|
4862
5099
|
step,
|
|
@@ -4864,9 +5101,15 @@ var TransactionWidget = ({ theme }) => {
|
|
|
4864
5101
|
loadingStep,
|
|
4865
5102
|
data
|
|
4866
5103
|
}
|
|
4867
|
-
)),
|
|
4868
|
-
|
|
4869
|
-
|
|
5104
|
+
)), !error && !isEmptyStatus && /* @__PURE__ */ import_react121.default.createElement(
|
|
5105
|
+
TransactionStatusMessage_default,
|
|
5106
|
+
{
|
|
5107
|
+
isCompleted: data?.status,
|
|
5108
|
+
transactionId: txId.toString()
|
|
5109
|
+
}
|
|
5110
|
+
)) : /* @__PURE__ */ import_react121.default.createElement("div", { className: "kima-card-content" }, /* @__PURE__ */ import_react121.default.createElement("h4", { className: "subtitle" }, "You can follow the status of a previous submitted transaction by entering the provided transaction id"), /* @__PURE__ */ import_react121.default.createElement("div", { className: "single-form" }, /* @__PURE__ */ import_react121.default.createElement(TransactionSearch_default, null))),
|
|
5111
|
+
/* @__PURE__ */ import_react121.default.createElement(
|
|
5112
|
+
import_react_hot_toast3.Toaster,
|
|
4870
5113
|
{
|
|
4871
5114
|
position: "top-right",
|
|
4872
5115
|
reverseOrder: false,
|
|
@@ -4874,7 +5117,7 @@ var TransactionWidget = ({ theme }) => {
|
|
|
4874
5117
|
position: "absolute"
|
|
4875
5118
|
},
|
|
4876
5119
|
toastOptions: {
|
|
4877
|
-
duration:
|
|
5120
|
+
duration: 5 * 1e3,
|
|
4878
5121
|
style: {
|
|
4879
5122
|
fontFamily: "Manrope",
|
|
4880
5123
|
position: "relative",
|
|
@@ -4886,27 +5129,28 @@ var TransactionWidget = ({ theme }) => {
|
|
|
4886
5129
|
fontSize: "1em",
|
|
4887
5130
|
borderRadius: "50px",
|
|
4888
5131
|
border: "1px solid #B900004D",
|
|
4889
|
-
background: theme.colorMode === "light" /* light */ ? "#F7F8F9" : "#242732"
|
|
5132
|
+
background: theme.colorMode === "light" /* light */ ? "#F7F8F9" : "#242732",
|
|
5133
|
+
fontWeight: "bolder"
|
|
4890
5134
|
}
|
|
4891
5135
|
}
|
|
4892
5136
|
}
|
|
4893
5137
|
),
|
|
4894
|
-
/* @__PURE__ */
|
|
5138
|
+
/* @__PURE__ */ import_react121.default.createElement("div", { className: "floating-footer status" }, /* @__PURE__ */ import_react121.default.createElement("div", { className: `items ${theme.colorMode}` }, /* @__PURE__ */ import_react121.default.createElement("span", null, "Powered by"), /* @__PURE__ */ import_react121.default.createElement(FooterLogo_default, { fill: "black" }), /* @__PURE__ */ import_react121.default.createElement("strong", null, "Network")))
|
|
4895
5139
|
));
|
|
4896
5140
|
};
|
|
4897
5141
|
|
|
4898
5142
|
// src/components/TransferWidget.tsx
|
|
4899
|
-
var
|
|
4900
|
-
var
|
|
5143
|
+
var import_react132 = __toESM(require("react"), 1);
|
|
5144
|
+
var import_react_redux51 = require("react-redux");
|
|
4901
5145
|
|
|
4902
5146
|
// src/components/reusable/SingleForm.tsx
|
|
4903
|
-
var
|
|
4904
|
-
var
|
|
4905
|
-
var
|
|
5147
|
+
var import_react123 = __toESM(require("react"), 1);
|
|
5148
|
+
var import_react_hot_toast4 = require("react-hot-toast");
|
|
5149
|
+
var import_react_redux43 = require("react-redux");
|
|
4906
5150
|
|
|
4907
5151
|
// src/hooks/useGetFees.tsx
|
|
4908
5152
|
var import_react_query13 = require("@tanstack/react-query");
|
|
4909
|
-
var
|
|
5153
|
+
var import_react_redux41 = require("react-redux");
|
|
4910
5154
|
|
|
4911
5155
|
// src/services/feesApi.ts
|
|
4912
5156
|
var getFees = async (amount, deductFee, originChain, originSymbol, targetChain, backendUrl) => {
|
|
@@ -4931,7 +5175,7 @@ var getFees = async (amount, deductFee, originChain, originSymbol, targetChain,
|
|
|
4931
5175
|
|
|
4932
5176
|
// src/hooks/useGetFees.tsx
|
|
4933
5177
|
var useGetFees = (amount, deductFees, sourceNetwork, sourceSymbol, targetNetwork, backendUrl) => {
|
|
4934
|
-
const mode = (0,
|
|
5178
|
+
const mode = (0, import_react_redux41.useSelector)(selectMode);
|
|
4935
5179
|
const feeDeductWithMode = mode === "payment" /* payment */ ? false : deductFees;
|
|
4936
5180
|
return (0, import_react_query13.useQuery)({
|
|
4937
5181
|
queryKey: ["fees", amount, feeDeductWithMode, sourceNetwork, targetNetwork],
|
|
@@ -4962,24 +5206,25 @@ var useGetFees = (amount, deductFees, sourceNetwork, sourceSymbol, targetNetwork
|
|
|
4962
5206
|
var useGetFees_default = useGetFees;
|
|
4963
5207
|
|
|
4964
5208
|
// src/components/primary/NetworkSelector.tsx
|
|
4965
|
-
var
|
|
4966
|
-
var
|
|
5209
|
+
var import_react122 = __toESM(require("react"), 1);
|
|
5210
|
+
var import_react_redux42 = require("react-redux");
|
|
4967
5211
|
var NetworkSelector = ({ type }) => {
|
|
4968
|
-
const [collapsed, setCollapsed] = (0,
|
|
4969
|
-
const ref = (0,
|
|
4970
|
-
const dispatch = (0,
|
|
4971
|
-
const theme = (0,
|
|
4972
|
-
const networkOptions3 = (0,
|
|
4973
|
-
const sourceNetwork = (0,
|
|
4974
|
-
const targetNetwork = (0,
|
|
4975
|
-
const excludedSourceNetworks = (0,
|
|
4976
|
-
const excludedTargetNetworks = (0,
|
|
5212
|
+
const [collapsed, setCollapsed] = (0, import_react122.useState)(true);
|
|
5213
|
+
const ref = (0, import_react122.useRef)(null);
|
|
5214
|
+
const dispatch = (0, import_react_redux42.useDispatch)();
|
|
5215
|
+
const theme = (0, import_react_redux42.useSelector)(selectTheme);
|
|
5216
|
+
const networkOptions3 = (0, import_react_redux42.useSelector)(selectNetworks);
|
|
5217
|
+
const sourceNetwork = (0, import_react_redux42.useSelector)(selectSourceChain);
|
|
5218
|
+
const targetNetwork = (0, import_react_redux42.useSelector)(selectTargetChain);
|
|
5219
|
+
const excludedSourceNetworks = (0, import_react_redux42.useSelector)(selectExcludedSourceNetworks);
|
|
5220
|
+
const excludedTargetNetworks = (0, import_react_redux42.useSelector)(selectExcludedTargetNetworks);
|
|
4977
5221
|
const { switchChainHandler } = useKimaContext();
|
|
4978
5222
|
const isSourceSelector = type === "source";
|
|
4979
|
-
const networks = (0,
|
|
5223
|
+
const networks = (0, import_react122.useMemo)(() => {
|
|
4980
5224
|
if (isSourceSelector) {
|
|
4981
5225
|
return networkOptions3.filter(
|
|
4982
|
-
(network) => !excludedSourceNetworks.includes(network.shortName)
|
|
5226
|
+
(network) => !excludedSourceNetworks.includes(network.shortName) && network.shortName !== "BERA"
|
|
5227
|
+
// temporary disabled as source chain
|
|
4983
5228
|
);
|
|
4984
5229
|
}
|
|
4985
5230
|
return networkOptions3.filter(
|
|
@@ -4992,14 +5237,14 @@ var NetworkSelector = ({ type }) => {
|
|
|
4992
5237
|
excludedSourceNetworks,
|
|
4993
5238
|
excludedTargetNetworks
|
|
4994
5239
|
]);
|
|
4995
|
-
const selectedNetwork = (0,
|
|
5240
|
+
const selectedNetwork = (0, import_react122.useMemo)(() => {
|
|
4996
5241
|
const selected = isSourceSelector ? sourceNetwork : targetNetwork;
|
|
4997
5242
|
return networks.find((network) => network.id === selected.id) || {
|
|
4998
5243
|
shortName: "",
|
|
4999
5244
|
name: isSourceSelector ? "Select Source Network" : "Select Target Network"
|
|
5000
5245
|
};
|
|
5001
5246
|
}, [networks, sourceNetwork, targetNetwork, isSourceSelector]);
|
|
5002
|
-
(0,
|
|
5247
|
+
(0, import_react122.useEffect)(() => {
|
|
5003
5248
|
if (!networks.length || selectedNetwork.shortName) return;
|
|
5004
5249
|
const fallbackNetwork = networks[0];
|
|
5005
5250
|
if (isSourceSelector) {
|
|
@@ -5021,7 +5266,7 @@ var NetworkSelector = ({ type }) => {
|
|
|
5021
5266
|
}
|
|
5022
5267
|
setCollapsed(true);
|
|
5023
5268
|
};
|
|
5024
|
-
(0,
|
|
5269
|
+
(0, import_react122.useEffect)(() => {
|
|
5025
5270
|
const handleOutsideClick = (e) => {
|
|
5026
5271
|
if (ref.current && !ref.current.contains(e.target)) {
|
|
5027
5272
|
setCollapsed(true);
|
|
@@ -5032,20 +5277,20 @@ var NetworkSelector = ({ type }) => {
|
|
|
5032
5277
|
document.removeEventListener("mousedown", handleOutsideClick);
|
|
5033
5278
|
};
|
|
5034
5279
|
}, []);
|
|
5035
|
-
return /* @__PURE__ */
|
|
5280
|
+
return /* @__PURE__ */ import_react122.default.createElement(
|
|
5036
5281
|
"div",
|
|
5037
5282
|
{
|
|
5038
5283
|
className: `network-dropdown ${theme?.colorMode ?? ""} ${collapsed ? "collapsed" : "toggled"}`,
|
|
5039
5284
|
onClick: () => setCollapsed((prev) => !prev),
|
|
5040
5285
|
ref
|
|
5041
5286
|
},
|
|
5042
|
-
/* @__PURE__ */
|
|
5043
|
-
/* @__PURE__ */
|
|
5287
|
+
/* @__PURE__ */ import_react122.default.createElement("div", { className: "network-wrapper" }, /* @__PURE__ */ import_react122.default.createElement(ChainIcon, { symbol: selectedNetwork.shortName }), /* @__PURE__ */ import_react122.default.createElement("span", null, selectedNetwork.name)),
|
|
5288
|
+
/* @__PURE__ */ import_react122.default.createElement(
|
|
5044
5289
|
"div",
|
|
5045
5290
|
{
|
|
5046
5291
|
className: `network-menu custom-scrollbar ${theme?.colorMode ?? ""} ${collapsed ? "collapsed" : "toggled"}`
|
|
5047
5292
|
},
|
|
5048
|
-
networks.filter((network) => network.shortName !== selectedNetwork.shortName).map((network) => /* @__PURE__ */
|
|
5293
|
+
networks.filter((network) => network.shortName !== selectedNetwork.shortName).map((network) => /* @__PURE__ */ import_react122.default.createElement(
|
|
5049
5294
|
"div",
|
|
5050
5295
|
{
|
|
5051
5296
|
key: network.id,
|
|
@@ -5055,36 +5300,46 @@ var NetworkSelector = ({ type }) => {
|
|
|
5055
5300
|
handleNetworkChange(network);
|
|
5056
5301
|
}
|
|
5057
5302
|
},
|
|
5058
|
-
/* @__PURE__ */
|
|
5059
|
-
/* @__PURE__ */
|
|
5303
|
+
/* @__PURE__ */ import_react122.default.createElement(ChainIcon, { symbol: network.shortName }),
|
|
5304
|
+
/* @__PURE__ */ import_react122.default.createElement("p", null, network.name)
|
|
5060
5305
|
))
|
|
5061
5306
|
),
|
|
5062
|
-
/* @__PURE__ */
|
|
5307
|
+
/* @__PURE__ */ import_react122.default.createElement("div", { className: `dropdown-icon ${collapsed ? "toggled" : "collapsed"}` }, /* @__PURE__ */ import_react122.default.createElement(Arrow_default, { fill: "none" }))
|
|
5063
5308
|
);
|
|
5064
5309
|
};
|
|
5065
|
-
var NetworkSelector_default =
|
|
5310
|
+
var NetworkSelector_default = import_react122.default.memo(NetworkSelector);
|
|
5066
5311
|
|
|
5067
5312
|
// src/components/reusable/SingleForm.tsx
|
|
5068
5313
|
var SingleForm = ({
|
|
5314
|
+
allowance,
|
|
5069
5315
|
balance,
|
|
5070
|
-
decimals
|
|
5316
|
+
decimals,
|
|
5317
|
+
formStep,
|
|
5318
|
+
onBack,
|
|
5319
|
+
onCancelApprove,
|
|
5320
|
+
onNext,
|
|
5321
|
+
getButtonLabel,
|
|
5322
|
+
isApproving,
|
|
5323
|
+
isSigning,
|
|
5324
|
+
isSubmitting,
|
|
5325
|
+
isCancellingApprove
|
|
5071
5326
|
}) => {
|
|
5072
|
-
const dispatch = (0,
|
|
5073
|
-
const mode = (0,
|
|
5074
|
-
const theme = (0,
|
|
5075
|
-
const feeDeduct = (0,
|
|
5076
|
-
const { totalFeeUsd } = (0,
|
|
5077
|
-
const compliantOption = (0,
|
|
5078
|
-
const targetCompliant = (0,
|
|
5079
|
-
const transactionOption = (0,
|
|
5080
|
-
const sourceNetwork = (0,
|
|
5081
|
-
const targetNetwork = (0,
|
|
5327
|
+
const dispatch = (0, import_react_redux43.useDispatch)();
|
|
5328
|
+
const mode = (0, import_react_redux43.useSelector)(selectMode);
|
|
5329
|
+
const theme = (0, import_react_redux43.useSelector)(selectTheme);
|
|
5330
|
+
const feeDeduct = (0, import_react_redux43.useSelector)(selectFeeDeduct);
|
|
5331
|
+
const { totalFeeUsd } = (0, import_react_redux43.useSelector)(selectServiceFee);
|
|
5332
|
+
const compliantOption = (0, import_react_redux43.useSelector)(selectCompliantOption);
|
|
5333
|
+
const targetCompliant = (0, import_react_redux43.useSelector)(selectTargetCompliant);
|
|
5334
|
+
const transactionOption = (0, import_react_redux43.useSelector)(selectTransactionOption);
|
|
5335
|
+
const sourceNetwork = (0, import_react_redux43.useSelector)(selectSourceChain);
|
|
5336
|
+
const targetNetwork = (0, import_react_redux43.useSelector)(selectTargetChain);
|
|
5082
5337
|
const { isReady } = useIsWalletReady4();
|
|
5083
|
-
const [amountValue, setAmountValue] = (0,
|
|
5084
|
-
const amount = (0,
|
|
5085
|
-
const sourceCurrency = (0,
|
|
5086
|
-
const targetCurrency = (0,
|
|
5087
|
-
const backendUrl = (0,
|
|
5338
|
+
const [amountValue, setAmountValue] = (0, import_react123.useState)("");
|
|
5339
|
+
const amount = (0, import_react_redux43.useSelector)(selectAmount);
|
|
5340
|
+
const sourceCurrency = (0, import_react_redux43.useSelector)(selectSourceCurrency);
|
|
5341
|
+
const targetCurrency = (0, import_react_redux43.useSelector)(selectTargetCurrency);
|
|
5342
|
+
const backendUrl = (0, import_react_redux43.useSelector)(selectBackendUrl);
|
|
5088
5343
|
const {
|
|
5089
5344
|
data: fees,
|
|
5090
5345
|
isLoading,
|
|
@@ -5097,57 +5352,57 @@ var SingleForm = ({
|
|
|
5097
5352
|
targetNetwork.shortName,
|
|
5098
5353
|
backendUrl
|
|
5099
5354
|
);
|
|
5100
|
-
(0,
|
|
5355
|
+
(0, import_react123.useEffect)(() => {
|
|
5101
5356
|
if (fees) {
|
|
5102
5357
|
dispatch(setServiceFee(fees));
|
|
5103
5358
|
}
|
|
5104
5359
|
}, [fees, dispatch]);
|
|
5105
5360
|
const TargetIcon = COIN_LIST[targetCurrency || "USDK"]?.icon || COIN_LIST["USDK"].icon;
|
|
5106
|
-
const errorMessage = (0,
|
|
5361
|
+
const errorMessage = (0, import_react123.useMemo)(
|
|
5107
5362
|
() => compliantOption && targetCompliant !== null && !targetCompliant?.isCompliant ? `Target address has ${targetCompliant.results?.[0].result.risk_score} risk` : "",
|
|
5108
5363
|
[compliantOption, targetCompliant]
|
|
5109
5364
|
);
|
|
5110
|
-
const maxValue = (0,
|
|
5365
|
+
const maxValue = (0, import_react123.useMemo)(() => {
|
|
5111
5366
|
if (!balance) return 0;
|
|
5112
5367
|
if (totalFeeUsd < 0) return balance;
|
|
5113
5368
|
const amountMinusFees = preciseSubtraction(balance, totalFeeUsd);
|
|
5114
5369
|
return amountMinusFees > 0 ? amountMinusFees : 0;
|
|
5115
5370
|
}, [balance, totalFeeUsd, feeDeduct]);
|
|
5116
|
-
(0,
|
|
5371
|
+
(0, import_react123.useEffect)(() => {
|
|
5117
5372
|
if (!errorMessage) return;
|
|
5118
|
-
|
|
5373
|
+
import_react_hot_toast4.toast.error(errorMessage);
|
|
5119
5374
|
}, [errorMessage]);
|
|
5120
|
-
(0,
|
|
5375
|
+
(0, import_react123.useEffect)(() => {
|
|
5121
5376
|
if (amountValue && amount != "") return;
|
|
5122
5377
|
setAmountValue(amount);
|
|
5123
5378
|
}, [amount]);
|
|
5124
|
-
(0,
|
|
5379
|
+
(0, import_react123.useEffect)(() => {
|
|
5125
5380
|
if (!feeDeduct && maxValue < +amountValue) {
|
|
5126
5381
|
setAmountValue(maxValue.toString());
|
|
5127
5382
|
dispatch(setAmount(maxValue.toString()));
|
|
5128
5383
|
}
|
|
5129
5384
|
}, [feeDeduct]);
|
|
5130
|
-
return /* @__PURE__ */
|
|
5385
|
+
return /* @__PURE__ */ import_react123.default.createElement("div", { className: "single-form" }, /* @__PURE__ */ import_react123.default.createElement("div", { className: "form-item" }, /* @__PURE__ */ import_react123.default.createElement("span", { className: "label" }, "Source Network:"), /* @__PURE__ */ import_react123.default.createElement("div", { className: "items" }, /* @__PURE__ */ import_react123.default.createElement(NetworkSelector_default, { type: "source" }), /* @__PURE__ */ import_react123.default.createElement(CoinDropdown_default, null))), /* @__PURE__ */ import_react123.default.createElement(
|
|
5131
5386
|
"div",
|
|
5132
5387
|
{
|
|
5133
5388
|
className: `dynamic-area ${sourceNetwork.shortName === "FIAT" /* FIAT */ ? "reverse" : "1"}`
|
|
5134
5389
|
},
|
|
5135
|
-
/* @__PURE__ */
|
|
5390
|
+
/* @__PURE__ */ import_react123.default.createElement(
|
|
5136
5391
|
"div",
|
|
5137
5392
|
{
|
|
5138
5393
|
className: `form-item wallet-button-item ${isReady && "connected"}`
|
|
5139
5394
|
},
|
|
5140
|
-
/* @__PURE__ */
|
|
5141
|
-
/* @__PURE__ */
|
|
5395
|
+
/* @__PURE__ */ import_react123.default.createElement("span", { className: "label" }, "Wallet:"),
|
|
5396
|
+
/* @__PURE__ */ import_react123.default.createElement(WalletButton_default, null)
|
|
5142
5397
|
),
|
|
5143
|
-
mode === "bridge" /* bridge */ && /* @__PURE__ */
|
|
5144
|
-
), mode === "bridge" /* bridge */ && sourceNetwork.shortName !== "FIAT" /* FIAT */ ? targetNetwork.shortName === "FIAT" /* FIAT */ ? /* @__PURE__ */
|
|
5398
|
+
mode === "bridge" /* bridge */ && /* @__PURE__ */ import_react123.default.createElement("div", { className: "form-item" }, /* @__PURE__ */ import_react123.default.createElement("span", { className: "label" }, "Target Network:"), /* @__PURE__ */ import_react123.default.createElement("div", { className: "items" }, /* @__PURE__ */ import_react123.default.createElement(NetworkSelector_default, { type: "target" }), /* @__PURE__ */ import_react123.default.createElement(CoinDropdown_default, { isSourceChain: false })))
|
|
5399
|
+
), mode === "bridge" /* bridge */ && sourceNetwork.shortName !== "FIAT" /* FIAT */ ? targetNetwork.shortName === "FIAT" /* FIAT */ ? /* @__PURE__ */ import_react123.default.createElement(BankInput_default, null) : /* @__PURE__ */ import_react123.default.createElement("div", { className: `form-item ${theme.colorMode}` }, /* @__PURE__ */ import_react123.default.createElement("span", { className: "label" }, "Target Address:"), /* @__PURE__ */ import_react123.default.createElement(
|
|
5145
5400
|
AddressInput_default,
|
|
5146
5401
|
{
|
|
5147
5402
|
theme: theme.colorMode,
|
|
5148
5403
|
placeholder: "Target address"
|
|
5149
5404
|
}
|
|
5150
|
-
)) : null, mode === "bridge" /* bridge */ ? /* @__PURE__ */
|
|
5405
|
+
)) : null, mode === "bridge" /* bridge */ ? /* @__PURE__ */ import_react123.default.createElement("div", { className: `form-item ${theme.colorMode}` }, /* @__PURE__ */ import_react123.default.createElement("span", { className: "label" }, "Amount:"), /* @__PURE__ */ import_react123.default.createElement("div", { className: `amount-label-container items ${theme.colorMode}` }, /* @__PURE__ */ import_react123.default.createElement(
|
|
5151
5406
|
"input",
|
|
5152
5407
|
{
|
|
5153
5408
|
className: `${theme.colorMode}`,
|
|
@@ -5167,7 +5422,7 @@ var SingleForm = ({
|
|
|
5167
5422
|
}
|
|
5168
5423
|
}
|
|
5169
5424
|
}
|
|
5170
|
-
), /* @__PURE__ */
|
|
5425
|
+
), /* @__PURE__ */ import_react123.default.createElement(
|
|
5171
5426
|
"span",
|
|
5172
5427
|
{
|
|
5173
5428
|
className: "max-button",
|
|
@@ -5177,7 +5432,7 @@ var SingleForm = ({
|
|
|
5177
5432
|
}
|
|
5178
5433
|
},
|
|
5179
5434
|
"Max"
|
|
5180
|
-
))) : /* @__PURE__ */
|
|
5435
|
+
))) : /* @__PURE__ */ import_react123.default.createElement("div", { className: `form-item ${theme.colorMode}` }, /* @__PURE__ */ import_react123.default.createElement("span", { className: "label" }, "Amount:"), /* @__PURE__ */ import_react123.default.createElement("div", { className: `amount-label-container items ${theme.colorMode}` }, /* @__PURE__ */ import_react123.default.createElement(
|
|
5181
5436
|
"input",
|
|
5182
5437
|
{
|
|
5183
5438
|
className: `${theme.colorMode}`,
|
|
@@ -5192,7 +5447,7 @@ var SingleForm = ({
|
|
|
5192
5447
|
},
|
|
5193
5448
|
disabled: transactionOption?.amount !== void 0
|
|
5194
5449
|
}
|
|
5195
|
-
), /* @__PURE__ */
|
|
5450
|
+
), /* @__PURE__ */ import_react123.default.createElement("div", { className: `coin-wrapper ${theme.colorMode}` }, /* @__PURE__ */ import_react123.default.createElement("div", { className: "icon-wrapper" }, /* @__PURE__ */ import_react123.default.createElement(TargetIcon, null)), targetCurrency))));
|
|
5196
5451
|
};
|
|
5197
5452
|
var SingleForm_default = SingleForm;
|
|
5198
5453
|
|
|
@@ -5238,23 +5493,23 @@ function useAllowance({
|
|
|
5238
5493
|
}
|
|
5239
5494
|
|
|
5240
5495
|
// src/components/TransferWidget.tsx
|
|
5241
|
-
var
|
|
5496
|
+
var import_react_hot_toast5 = require("react-hot-toast");
|
|
5242
5497
|
|
|
5243
5498
|
// plugins/solana/components/SolanaWalletConnectModal.tsx
|
|
5244
|
-
var
|
|
5245
|
-
var
|
|
5499
|
+
var import_react126 = __toESM(require("react"), 1);
|
|
5500
|
+
var import_react_redux46 = require("react-redux");
|
|
5246
5501
|
|
|
5247
5502
|
// plugins/solana/components/SolanaWalletSelect.tsx
|
|
5248
|
-
var
|
|
5249
|
-
var
|
|
5503
|
+
var import_react124 = __toESM(require("react"), 1);
|
|
5504
|
+
var import_react_redux44 = require("react-redux");
|
|
5250
5505
|
var import_wallet_adapter_react7 = require("@solana/wallet-adapter-react");
|
|
5251
5506
|
var import_wallet_adapter_base = require("@solana/wallet-adapter-base");
|
|
5252
5507
|
var SolanaWalletSelect = () => {
|
|
5253
|
-
const theme = (0,
|
|
5254
|
-
const dispatch = (0,
|
|
5255
|
-
const sliderRef = (0,
|
|
5508
|
+
const theme = (0, import_react_redux44.useSelector)(selectTheme);
|
|
5509
|
+
const dispatch = (0, import_react_redux44.useDispatch)();
|
|
5510
|
+
const sliderRef = (0, import_react124.useRef)();
|
|
5256
5511
|
const { wallet, wallets, select, connect, connected } = (0, import_wallet_adapter_react7.useWallet)();
|
|
5257
|
-
const [detected, undetected] = (0,
|
|
5512
|
+
const [detected, undetected] = (0, import_react124.useMemo)(() => {
|
|
5258
5513
|
const detected2 = [];
|
|
5259
5514
|
const undetected2 = [];
|
|
5260
5515
|
for (const wallet2 of wallets) {
|
|
@@ -5266,7 +5521,7 @@ var SolanaWalletSelect = () => {
|
|
|
5266
5521
|
}
|
|
5267
5522
|
return [detected2, undetected2];
|
|
5268
5523
|
}, [wallets]);
|
|
5269
|
-
(0,
|
|
5524
|
+
(0, import_react124.useEffect)(() => {
|
|
5270
5525
|
let isDown = false;
|
|
5271
5526
|
let startX;
|
|
5272
5527
|
let scrollLeft;
|
|
@@ -5292,54 +5547,54 @@ var SolanaWalletSelect = () => {
|
|
|
5292
5547
|
sliderRef.current.scrollLeft = scrollLeft - walk;
|
|
5293
5548
|
});
|
|
5294
5549
|
}, []);
|
|
5295
|
-
const handleWalletClick = (0,
|
|
5550
|
+
const handleWalletClick = (0, import_react124.useCallback)(
|
|
5296
5551
|
(walletName) => {
|
|
5297
5552
|
select(walletName);
|
|
5298
5553
|
},
|
|
5299
5554
|
[select]
|
|
5300
5555
|
);
|
|
5301
|
-
(0,
|
|
5556
|
+
(0, import_react124.useEffect)(() => {
|
|
5302
5557
|
if (connected) return;
|
|
5303
5558
|
if (wallet) {
|
|
5304
5559
|
connect();
|
|
5305
5560
|
dispatch(setSolanaConnectModal(false));
|
|
5306
5561
|
}
|
|
5307
5562
|
}, [wallet]);
|
|
5308
|
-
return /* @__PURE__ */
|
|
5563
|
+
return /* @__PURE__ */ import_react124.default.createElement("div", { className: `wallet-select` }, /* @__PURE__ */ import_react124.default.createElement("div", { className: "slide-area hide-scrollbar", ref: sliderRef }, /* @__PURE__ */ import_react124.default.createElement("div", { className: "wallet-container" }, detected.map((wallet2, index) => /* @__PURE__ */ import_react124.default.createElement(
|
|
5309
5564
|
"div",
|
|
5310
5565
|
{
|
|
5311
5566
|
className: `card-item ${theme.colorMode}`,
|
|
5312
5567
|
onClick: () => handleWalletClick(wallet2.adapter.name),
|
|
5313
5568
|
key: `${wallet2.adapter.name}-${index}`
|
|
5314
5569
|
},
|
|
5315
|
-
/* @__PURE__ */
|
|
5316
|
-
)), undetected.map((wallet2, index) => /* @__PURE__ */
|
|
5570
|
+
/* @__PURE__ */ import_react124.default.createElement("div", { className: "wallet-item" }, /* @__PURE__ */ import_react124.default.createElement("img", { src: wallet2.adapter.icon, alt: wallet2.adapter.name }), /* @__PURE__ */ import_react124.default.createElement("span", null, wallet2.adapter.name))
|
|
5571
|
+
)), undetected.map((wallet2, index) => /* @__PURE__ */ import_react124.default.createElement(
|
|
5317
5572
|
ExternalLink_default,
|
|
5318
5573
|
{
|
|
5319
5574
|
to: wallet2.adapter.url,
|
|
5320
5575
|
className: `card-item ${theme.colorMode}`,
|
|
5321
5576
|
key: `${wallet2.adapter.name}-${index}`
|
|
5322
5577
|
},
|
|
5323
|
-
/* @__PURE__ */
|
|
5578
|
+
/* @__PURE__ */ import_react124.default.createElement("div", { className: "wallet-item" }, /* @__PURE__ */ import_react124.default.createElement("img", { src: wallet2.adapter.icon, alt: wallet2.adapter.name }), /* @__PURE__ */ import_react124.default.createElement("span", null, "Install ", wallet2.adapter.name))
|
|
5324
5579
|
)))));
|
|
5325
5580
|
};
|
|
5326
5581
|
var SolanaWalletSelect_default = SolanaWalletSelect;
|
|
5327
5582
|
|
|
5328
5583
|
// plugins/solana/components/AccountDetailsModal.tsx
|
|
5329
|
-
var
|
|
5330
|
-
var
|
|
5584
|
+
var import_react125 = __toESM(require("react"), 1);
|
|
5585
|
+
var import_react_redux45 = require("react-redux");
|
|
5331
5586
|
var import_wallet_adapter_react8 = require("@solana/wallet-adapter-react");
|
|
5332
5587
|
var AccountDetailsModal = () => {
|
|
5333
|
-
const dispatch = (0,
|
|
5334
|
-
const theme = (0,
|
|
5335
|
-
const networkOption = (0,
|
|
5336
|
-
const sourceChain = (0,
|
|
5337
|
-
const accountDetailsModal = (0,
|
|
5588
|
+
const dispatch = (0, import_react_redux45.useDispatch)();
|
|
5589
|
+
const theme = (0, import_react_redux45.useSelector)(selectTheme);
|
|
5590
|
+
const networkOption = (0, import_react_redux45.useSelector)(selectNetworkOption);
|
|
5591
|
+
const sourceChain = (0, import_react_redux45.useSelector)(selectSourceChain);
|
|
5592
|
+
const accountDetailsModal = (0, import_react_redux45.useSelector)(selectAccountDetailsModal);
|
|
5338
5593
|
const { walletAddress } = useIsWalletReady_default2();
|
|
5339
5594
|
const { disconnect: solanaWalletDisconnect } = (0, import_wallet_adapter_react8.useWallet)();
|
|
5340
5595
|
const { balance: solBalance } = useGetSolBalance_default();
|
|
5341
5596
|
const networkDetails = networkOptions2[0];
|
|
5342
|
-
const explorerUrl = (0,
|
|
5597
|
+
const explorerUrl = (0, import_react125.useMemo)(() => {
|
|
5343
5598
|
return `https://solscan.io/account/address/${walletAddress}?cluster=${networkOption === "mainnet" ? "mainnet" : "devnet"}`;
|
|
5344
5599
|
}, [walletAddress, networkOption]);
|
|
5345
5600
|
const handleDisconnect = () => {
|
|
@@ -5347,46 +5602,46 @@ var AccountDetailsModal = () => {
|
|
|
5347
5602
|
dispatch(setAccountDetailsModal(false));
|
|
5348
5603
|
};
|
|
5349
5604
|
if (sourceChain !== "SOL") return;
|
|
5350
|
-
return /* @__PURE__ */
|
|
5605
|
+
return /* @__PURE__ */ import_react125.default.createElement(
|
|
5351
5606
|
"div",
|
|
5352
5607
|
{
|
|
5353
5608
|
className: `kima-modal ${theme.colorMode} ${accountDetailsModal && "open"}`
|
|
5354
5609
|
},
|
|
5355
|
-
/* @__PURE__ */
|
|
5356
|
-
/* @__PURE__ */
|
|
5610
|
+
/* @__PURE__ */ import_react125.default.createElement("div", { className: "modal-overlay" }),
|
|
5611
|
+
/* @__PURE__ */ import_react125.default.createElement("div", { className: `modal-content-container ${theme.colorMode}` }, /* @__PURE__ */ import_react125.default.createElement("div", { className: "kima-card-header" }, /* @__PURE__ */ import_react125.default.createElement("div", { className: "topbar" }, /* @__PURE__ */ import_react125.default.createElement("div", { className: "title" }, /* @__PURE__ */ import_react125.default.createElement("h3", null, "Account Details")), /* @__PURE__ */ import_react125.default.createElement("div", { className: "control-buttons" }, /* @__PURE__ */ import_react125.default.createElement(
|
|
5357
5612
|
"button",
|
|
5358
5613
|
{
|
|
5359
5614
|
className: "cross-icon-button",
|
|
5360
5615
|
onClick: () => dispatch(setAccountDetailsModal(false))
|
|
5361
5616
|
},
|
|
5362
|
-
/* @__PURE__ */
|
|
5617
|
+
/* @__PURE__ */ import_react125.default.createElement(
|
|
5363
5618
|
Cross_default,
|
|
5364
5619
|
{
|
|
5365
5620
|
fill: theme.colorMode === "light" ? "black" : "white"
|
|
5366
5621
|
}
|
|
5367
5622
|
)
|
|
5368
|
-
)))), /* @__PURE__ */
|
|
5623
|
+
)))), /* @__PURE__ */ import_react125.default.createElement("div", { className: "modal-content" }, /* @__PURE__ */ import_react125.default.createElement("div", { className: "summary" }, networkDetails && /* @__PURE__ */ import_react125.default.createElement(networkDetails.icon, { width: 60, height: 60 }), /* @__PURE__ */ import_react125.default.createElement("div", { className: "address" }, /* @__PURE__ */ import_react125.default.createElement("h2", null, getShortenedAddress(walletAddress || "")), /* @__PURE__ */ import_react125.default.createElement(CopyButton_default, { text: walletAddress })), /* @__PURE__ */ import_react125.default.createElement("h3", null, solBalance, " $SOL")), /* @__PURE__ */ import_react125.default.createElement(SecondaryButton_default, { className: "block-explorer" }, /* @__PURE__ */ import_react125.default.createElement(ExternalLink_default, { className: "link", to: explorerUrl }, /* @__PURE__ */ import_react125.default.createElement(Explorer_default, { fill: "#778DA3" }), /* @__PURE__ */ import_react125.default.createElement("p", null, "Block explorer"), /* @__PURE__ */ import_react125.default.createElement(ExternalUrl_default, { fill: "#778DA3" }))), /* @__PURE__ */ import_react125.default.createElement(PrimaryButton_default, { clickHandler: handleDisconnect }, "Discconect")))
|
|
5369
5624
|
);
|
|
5370
5625
|
};
|
|
5371
5626
|
var AccountDetailsModal_default = AccountDetailsModal;
|
|
5372
5627
|
|
|
5373
5628
|
// plugins/solana/components/SolanaWalletConnectModal.tsx
|
|
5374
5629
|
var SolanaWalletConnectModal = () => {
|
|
5375
|
-
const dispatch = (0,
|
|
5376
|
-
const theme = (0,
|
|
5377
|
-
const connectModal = (0,
|
|
5378
|
-
return /* @__PURE__ */
|
|
5630
|
+
const dispatch = (0, import_react_redux46.useDispatch)();
|
|
5631
|
+
const theme = (0, import_react_redux46.useSelector)(selectTheme);
|
|
5632
|
+
const connectModal = (0, import_react_redux46.useSelector)(selectSolanaConnectModal);
|
|
5633
|
+
return /* @__PURE__ */ import_react126.default.createElement("div", null, /* @__PURE__ */ import_react126.default.createElement(AccountDetailsModal_default, null), /* @__PURE__ */ import_react126.default.createElement(
|
|
5379
5634
|
"div",
|
|
5380
5635
|
{
|
|
5381
5636
|
className: `kima-modal wallet-connect ${connectModal ? "open" : ""}`
|
|
5382
5637
|
},
|
|
5383
|
-
/* @__PURE__ */
|
|
5638
|
+
/* @__PURE__ */ import_react126.default.createElement("div", { className: `modal-content-container ${theme.colorMode}` }, /* @__PURE__ */ import_react126.default.createElement("div", { className: "kima-card-header" }, /* @__PURE__ */ import_react126.default.createElement("div", { className: "topbar" }, /* @__PURE__ */ import_react126.default.createElement("div", { className: "title" }, /* @__PURE__ */ import_react126.default.createElement("h3", null, "Connect Wallet")), /* @__PURE__ */ import_react126.default.createElement("div", { className: "control-buttons" }, /* @__PURE__ */ import_react126.default.createElement(
|
|
5384
5639
|
"button",
|
|
5385
5640
|
{
|
|
5386
5641
|
className: "cross-icon-button",
|
|
5387
5642
|
onClick: () => dispatch(setSolanaConnectModal(false))
|
|
5388
5643
|
},
|
|
5389
|
-
/* @__PURE__ */
|
|
5644
|
+
/* @__PURE__ */ import_react126.default.createElement(
|
|
5390
5645
|
Cross_default,
|
|
5391
5646
|
{
|
|
5392
5647
|
width: 30,
|
|
@@ -5394,34 +5649,34 @@ var SolanaWalletConnectModal = () => {
|
|
|
5394
5649
|
fill: theme.colorMode === "light" ? "black" : "white"
|
|
5395
5650
|
}
|
|
5396
5651
|
)
|
|
5397
|
-
)))), /* @__PURE__ */
|
|
5652
|
+
)))), /* @__PURE__ */ import_react126.default.createElement("div", { className: "modal-content" }, /* @__PURE__ */ import_react126.default.createElement(SolanaWalletSelect_default, null)))
|
|
5398
5653
|
));
|
|
5399
5654
|
};
|
|
5400
5655
|
var SolanaWalletConnectModal_default = SolanaWalletConnectModal;
|
|
5401
5656
|
|
|
5402
5657
|
// plugins/tron/components/TronWalletConnectModal.tsx
|
|
5403
|
-
var
|
|
5404
|
-
var
|
|
5658
|
+
var import_react129 = __toESM(require("react"), 1);
|
|
5659
|
+
var import_react_redux49 = require("react-redux");
|
|
5405
5660
|
|
|
5406
5661
|
// plugins/tron/components/AccountDetailsModal.tsx
|
|
5407
|
-
var
|
|
5408
|
-
var
|
|
5662
|
+
var import_react127 = __toESM(require("react"), 1);
|
|
5663
|
+
var import_react_redux47 = require("react-redux");
|
|
5409
5664
|
var import_tronwallet_adapter_react_hooks7 = require("@tronweb3/tronwallet-adapter-react-hooks");
|
|
5410
5665
|
var AccountDetailsModal2 = () => {
|
|
5411
|
-
const dispatch = (0,
|
|
5412
|
-
const theme = (0,
|
|
5413
|
-
const networkOption = (0,
|
|
5414
|
-
const accountDetailsModal = (0,
|
|
5415
|
-
const sourcheChain = (0,
|
|
5666
|
+
const dispatch = (0, import_react_redux47.useDispatch)();
|
|
5667
|
+
const theme = (0, import_react_redux47.useSelector)(selectTheme);
|
|
5668
|
+
const networkOption = (0, import_react_redux47.useSelector)(selectNetworkOption);
|
|
5669
|
+
const accountDetailsModal = (0, import_react_redux47.useSelector)(selectAccountDetailsModal);
|
|
5670
|
+
const sourcheChain = (0, import_react_redux47.useSelector)(selectSourceChain);
|
|
5416
5671
|
const { walletAddress } = useIsWalletReady_default3();
|
|
5417
5672
|
const { disconnect: tronWalletDisconnect } = (0, import_tronwallet_adapter_react_hooks7.useWallet)();
|
|
5418
5673
|
const { balance: tronBalance } = useGetTrxBalance_default();
|
|
5419
|
-
const selectedNetwork = (0,
|
|
5420
|
-
const networkDetails = (0,
|
|
5674
|
+
const selectedNetwork = (0, import_react_redux47.useSelector)(selectSourceChain);
|
|
5675
|
+
const networkDetails = (0, import_react127.useMemo)(
|
|
5421
5676
|
() => networkOptions.find(({ id }) => id === selectedNetwork),
|
|
5422
5677
|
[selectedNetwork]
|
|
5423
5678
|
);
|
|
5424
|
-
const explorerUrl = (0,
|
|
5679
|
+
const explorerUrl = (0, import_react127.useMemo)(() => {
|
|
5425
5680
|
return `https://${networkOption === "testnet" && "nile."}tronscan.io/#/address/${walletAddress}`;
|
|
5426
5681
|
}, [walletAddress, networkOption]);
|
|
5427
5682
|
const handleDisconnect = () => {
|
|
@@ -5429,38 +5684,38 @@ var AccountDetailsModal2 = () => {
|
|
|
5429
5684
|
dispatch(setAccountDetailsModal(false));
|
|
5430
5685
|
};
|
|
5431
5686
|
if (sourcheChain !== "TRX") return;
|
|
5432
|
-
return /* @__PURE__ */
|
|
5687
|
+
return /* @__PURE__ */ import_react127.default.createElement(
|
|
5433
5688
|
"div",
|
|
5434
5689
|
{
|
|
5435
5690
|
className: `kima-modal ${theme.colorMode} ${accountDetailsModal && "open"}`
|
|
5436
5691
|
},
|
|
5437
|
-
/* @__PURE__ */
|
|
5438
|
-
/* @__PURE__ */
|
|
5692
|
+
/* @__PURE__ */ import_react127.default.createElement("div", { className: "modal-overlay" }),
|
|
5693
|
+
/* @__PURE__ */ import_react127.default.createElement("div", { className: `modal-content-container ${theme.colorMode}` }, /* @__PURE__ */ import_react127.default.createElement("div", { className: "kima-card-header" }, /* @__PURE__ */ import_react127.default.createElement("div", { className: "topbar" }, /* @__PURE__ */ import_react127.default.createElement("div", { className: "title" }, /* @__PURE__ */ import_react127.default.createElement("h3", null, "Account Details")), /* @__PURE__ */ import_react127.default.createElement("div", { className: "control-buttons" }, /* @__PURE__ */ import_react127.default.createElement(
|
|
5439
5694
|
"button",
|
|
5440
5695
|
{
|
|
5441
5696
|
className: "cross-icon-button",
|
|
5442
5697
|
onClick: () => dispatch(setAccountDetailsModal(false))
|
|
5443
5698
|
},
|
|
5444
|
-
/* @__PURE__ */
|
|
5699
|
+
/* @__PURE__ */ import_react127.default.createElement(
|
|
5445
5700
|
Cross_default,
|
|
5446
5701
|
{
|
|
5447
5702
|
fill: theme.colorMode === "light" ? "black" : "white"
|
|
5448
5703
|
}
|
|
5449
5704
|
)
|
|
5450
|
-
)))), /* @__PURE__ */
|
|
5705
|
+
)))), /* @__PURE__ */ import_react127.default.createElement("div", { className: "modal-content" }, /* @__PURE__ */ import_react127.default.createElement("div", { className: "summary" }, networkDetails && /* @__PURE__ */ import_react127.default.createElement(networkDetails.icon, { width: 60, height: 60 }), /* @__PURE__ */ import_react127.default.createElement("div", { className: "address" }, /* @__PURE__ */ import_react127.default.createElement("h2", null, getShortenedAddress(walletAddress || "")), /* @__PURE__ */ import_react127.default.createElement(CopyButton_default, { text: walletAddress })), /* @__PURE__ */ import_react127.default.createElement("h3", null, tronBalance, " ", selectedNetwork)), /* @__PURE__ */ import_react127.default.createElement(SecondaryButton_default, { className: "block-explorer" }, /* @__PURE__ */ import_react127.default.createElement(ExternalLink_default, { className: "link", to: explorerUrl }, /* @__PURE__ */ import_react127.default.createElement(Explorer_default, { fill: "#778DA3" }), /* @__PURE__ */ import_react127.default.createElement("p", null, "Block explorer"), /* @__PURE__ */ import_react127.default.createElement(ExternalUrl_default, { fill: "#778DA3" }))), /* @__PURE__ */ import_react127.default.createElement(PrimaryButton_default, { clickHandler: handleDisconnect }, "Disconnect")))
|
|
5451
5706
|
);
|
|
5452
5707
|
};
|
|
5453
5708
|
var AccountDetailsModal_default2 = AccountDetailsModal2;
|
|
5454
5709
|
|
|
5455
5710
|
// plugins/tron/components/TronWalletSelect.tsx
|
|
5456
|
-
var
|
|
5457
|
-
var
|
|
5711
|
+
var import_react128 = __toESM(require("react"), 1);
|
|
5712
|
+
var import_react_redux48 = require("react-redux");
|
|
5458
5713
|
var import_tronwallet_adapter_react_hooks8 = require("@tronweb3/tronwallet-adapter-react-hooks");
|
|
5459
5714
|
var import_tronwallet_abstract_adapter2 = require("@tronweb3/tronwallet-abstract-adapter");
|
|
5460
5715
|
var TronWalletSelect = () => {
|
|
5461
|
-
const theme = (0,
|
|
5462
|
-
const sliderRef = (0,
|
|
5463
|
-
const dispatch = (0,
|
|
5716
|
+
const theme = (0, import_react_redux48.useSelector)(selectTheme);
|
|
5717
|
+
const sliderRef = (0, import_react128.useRef)();
|
|
5718
|
+
const dispatch = (0, import_react_redux48.useDispatch)();
|
|
5464
5719
|
const {
|
|
5465
5720
|
wallets,
|
|
5466
5721
|
select,
|
|
@@ -5468,7 +5723,7 @@ var TronWalletSelect = () => {
|
|
|
5468
5723
|
connect,
|
|
5469
5724
|
connected
|
|
5470
5725
|
} = (0, import_tronwallet_adapter_react_hooks8.useWallet)();
|
|
5471
|
-
const [detected, undetected] = (0,
|
|
5726
|
+
const [detected, undetected] = (0, import_react128.useMemo)(() => {
|
|
5472
5727
|
const detected2 = [];
|
|
5473
5728
|
const undetected2 = [];
|
|
5474
5729
|
for (const wallet of wallets) {
|
|
@@ -5480,7 +5735,7 @@ var TronWalletSelect = () => {
|
|
|
5480
5735
|
}
|
|
5481
5736
|
return [detected2, undetected2];
|
|
5482
5737
|
}, [wallets]);
|
|
5483
|
-
(0,
|
|
5738
|
+
(0, import_react128.useEffect)(() => {
|
|
5484
5739
|
let isDown = false;
|
|
5485
5740
|
let startX;
|
|
5486
5741
|
let scrollLeft;
|
|
@@ -5506,62 +5761,62 @@ var TronWalletSelect = () => {
|
|
|
5506
5761
|
sliderRef.current.scrollLeft = scrollLeft - walk;
|
|
5507
5762
|
});
|
|
5508
5763
|
}, []);
|
|
5509
|
-
(0,
|
|
5764
|
+
(0, import_react128.useEffect)(() => {
|
|
5510
5765
|
connected && dispatch(setTronConnectModal(false));
|
|
5511
5766
|
}, [connected]);
|
|
5512
5767
|
const connectWallet = async (walletName) => {
|
|
5513
5768
|
currentWallet?.adapter.name === walletName ? await connect() : select(walletName);
|
|
5514
5769
|
};
|
|
5515
|
-
return /* @__PURE__ */
|
|
5770
|
+
return /* @__PURE__ */ import_react128.default.createElement("div", { className: `wallet-select` }, /* @__PURE__ */ import_react128.default.createElement("div", { className: "slide-area hide-scrollbar", ref: sliderRef }, /* @__PURE__ */ import_react128.default.createElement("div", { className: "wallet-container" }, detected.map((wallet, index) => /* @__PURE__ */ import_react128.default.createElement(
|
|
5516
5771
|
"div",
|
|
5517
5772
|
{
|
|
5518
5773
|
className: `card-item ${theme.colorMode}`,
|
|
5519
5774
|
onClick: () => connectWallet(wallet.adapter.name),
|
|
5520
5775
|
key: `${wallet.adapter.name}-${index}`
|
|
5521
5776
|
},
|
|
5522
|
-
/* @__PURE__ */
|
|
5523
|
-
)), undetected.map((wallet, index) => /* @__PURE__ */
|
|
5777
|
+
/* @__PURE__ */ import_react128.default.createElement("div", { className: "wallet-item" }, /* @__PURE__ */ import_react128.default.createElement("img", { src: wallet.adapter.icon, alt: wallet.adapter.name }), /* @__PURE__ */ import_react128.default.createElement("span", null, wallet.adapter.name))
|
|
5778
|
+
)), undetected.map((wallet, index) => /* @__PURE__ */ import_react128.default.createElement(
|
|
5524
5779
|
ExternalLink_default,
|
|
5525
5780
|
{
|
|
5526
5781
|
to: wallet.adapter.url,
|
|
5527
5782
|
className: `card-item ${theme.colorMode}`,
|
|
5528
5783
|
key: `${wallet.adapter.name}-${index}`
|
|
5529
5784
|
},
|
|
5530
|
-
/* @__PURE__ */
|
|
5785
|
+
/* @__PURE__ */ import_react128.default.createElement("div", { className: "wallet-item" }, /* @__PURE__ */ import_react128.default.createElement("img", { src: wallet.adapter.icon, alt: wallet.adapter.name }), /* @__PURE__ */ import_react128.default.createElement("span", null, "Install ", wallet.adapter.name))
|
|
5531
5786
|
)))));
|
|
5532
5787
|
};
|
|
5533
5788
|
var TronWalletSelect_default = TronWalletSelect;
|
|
5534
5789
|
|
|
5535
5790
|
// plugins/tron/components/TronWalletConnectModal.tsx
|
|
5536
5791
|
var TronWalletConnectModal = () => {
|
|
5537
|
-
const dispatch = (0,
|
|
5538
|
-
const theme = (0,
|
|
5539
|
-
const connectModal = (0,
|
|
5540
|
-
return /* @__PURE__ */
|
|
5792
|
+
const dispatch = (0, import_react_redux49.useDispatch)();
|
|
5793
|
+
const theme = (0, import_react_redux49.useSelector)(selectTheme);
|
|
5794
|
+
const connectModal = (0, import_react_redux49.useSelector)(selectTronConnectModal);
|
|
5795
|
+
return /* @__PURE__ */ import_react129.default.createElement("div", null, /* @__PURE__ */ import_react129.default.createElement(AccountDetailsModal_default2, null), /* @__PURE__ */ import_react129.default.createElement(
|
|
5541
5796
|
"div",
|
|
5542
5797
|
{
|
|
5543
5798
|
className: `kima-modal wallet-connect ${theme.colorMode} ${connectModal ? "open" : ""}`
|
|
5544
5799
|
},
|
|
5545
|
-
/* @__PURE__ */
|
|
5546
|
-
/* @__PURE__ */
|
|
5800
|
+
/* @__PURE__ */ import_react129.default.createElement("div", { className: "modal-overlay" }),
|
|
5801
|
+
/* @__PURE__ */ import_react129.default.createElement("div", { className: `modal-content-container ${theme.colorMode}` }, /* @__PURE__ */ import_react129.default.createElement("div", { className: "kima-card-header" }, /* @__PURE__ */ import_react129.default.createElement("div", { className: "topbar" }, /* @__PURE__ */ import_react129.default.createElement("div", { className: "title" }, /* @__PURE__ */ import_react129.default.createElement("h3", null, "Connect Wallet")), /* @__PURE__ */ import_react129.default.createElement("div", { className: "control-buttons" }, /* @__PURE__ */ import_react129.default.createElement(
|
|
5547
5802
|
"button",
|
|
5548
5803
|
{
|
|
5549
5804
|
className: "icon-button",
|
|
5550
5805
|
onClick: () => dispatch(setTronConnectModal(false))
|
|
5551
5806
|
},
|
|
5552
|
-
/* @__PURE__ */
|
|
5807
|
+
/* @__PURE__ */ import_react129.default.createElement(
|
|
5553
5808
|
Cross_default,
|
|
5554
5809
|
{
|
|
5555
5810
|
fill: theme.colorMode === "light" ? "black" : "white"
|
|
5556
5811
|
}
|
|
5557
5812
|
)
|
|
5558
|
-
)))), /* @__PURE__ */
|
|
5813
|
+
)))), /* @__PURE__ */ import_react129.default.createElement("div", { className: "modal-content" }, /* @__PURE__ */ import_react129.default.createElement(TronWalletSelect_default, null)))
|
|
5559
5814
|
));
|
|
5560
5815
|
};
|
|
5561
5816
|
var TronWalletConnectModal_default = TronWalletConnectModal;
|
|
5562
5817
|
|
|
5563
5818
|
// src/hooks/useValidateTransaction.tsx
|
|
5564
|
-
var
|
|
5819
|
+
var import_react130 = require("react");
|
|
5565
5820
|
var useValidateTransaction = ({
|
|
5566
5821
|
allowance,
|
|
5567
5822
|
isApproved,
|
|
@@ -5580,7 +5835,7 @@ var useValidateTransaction = ({
|
|
|
5580
5835
|
mode,
|
|
5581
5836
|
pools
|
|
5582
5837
|
}) => {
|
|
5583
|
-
const maxValue = (0,
|
|
5838
|
+
const maxValue = (0, import_react130.useMemo)(() => {
|
|
5584
5839
|
if (!balance) return 0;
|
|
5585
5840
|
if (totalFeeUsd < 0) return balance;
|
|
5586
5841
|
const amountMinusFees = preciseSubtraction(balance, totalFeeUsd);
|
|
@@ -5672,8 +5927,8 @@ var useValidateTransaction = ({
|
|
|
5672
5927
|
var useValidateTransaction_default = useValidateTransaction;
|
|
5673
5928
|
|
|
5674
5929
|
// src/hooks/useSubmitTransaction.tsx
|
|
5675
|
-
var
|
|
5676
|
-
var
|
|
5930
|
+
var import_react131 = require("react");
|
|
5931
|
+
var import_react_redux50 = require("react-redux");
|
|
5677
5932
|
var useSubmitTransaction = ({
|
|
5678
5933
|
amount,
|
|
5679
5934
|
totalFee,
|
|
@@ -5686,8 +5941,8 @@ var useSubmitTransaction = ({
|
|
|
5686
5941
|
backendUrl,
|
|
5687
5942
|
decimals
|
|
5688
5943
|
}) => {
|
|
5689
|
-
const dispatch = (0,
|
|
5690
|
-
const [isSubmitting, setSubmitting] = (0,
|
|
5944
|
+
const dispatch = (0, import_react_redux50.useDispatch)();
|
|
5945
|
+
const [isSubmitting, setSubmitting] = (0, import_react131.useState)(false);
|
|
5691
5946
|
const submitTransaction = async () => {
|
|
5692
5947
|
try {
|
|
5693
5948
|
setSubmitting(true);
|
|
@@ -5804,36 +6059,36 @@ var TransferWidget = ({
|
|
|
5804
6059
|
titleOption,
|
|
5805
6060
|
paymentTitleOption
|
|
5806
6061
|
}) => {
|
|
5807
|
-
const dispatch = (0,
|
|
5808
|
-
const mainRef = (0,
|
|
5809
|
-
const [formStep, setFormStep] = (0,
|
|
5810
|
-
const dAppOption = (0,
|
|
5811
|
-
const mode = (0,
|
|
5812
|
-
const transactionOption = (0,
|
|
5813
|
-
const backendUrl = (0,
|
|
5814
|
-
const sourceAddress = (0,
|
|
5815
|
-
const targetAddress = (0,
|
|
5816
|
-
const sourceChain = (0,
|
|
5817
|
-
const targetChain = (0,
|
|
5818
|
-
const sourceCurrency = (0,
|
|
5819
|
-
const targetCurrency = (0,
|
|
5820
|
-
const amount = (0,
|
|
6062
|
+
const dispatch = (0, import_react_redux51.useDispatch)();
|
|
6063
|
+
const mainRef = (0, import_react132.useRef)(null);
|
|
6064
|
+
const [formStep, setFormStep] = (0, import_react132.useState)(0);
|
|
6065
|
+
const dAppOption = (0, import_react_redux51.useSelector)(selectDappOption);
|
|
6066
|
+
const mode = (0, import_react_redux51.useSelector)(selectMode);
|
|
6067
|
+
const transactionOption = (0, import_react_redux51.useSelector)(selectTransactionOption);
|
|
6068
|
+
const backendUrl = (0, import_react_redux51.useSelector)(selectBackendUrl);
|
|
6069
|
+
const sourceAddress = (0, import_react_redux51.useSelector)(selectSourceAddress);
|
|
6070
|
+
const targetAddress = (0, import_react_redux51.useSelector)(selectTargetAddress);
|
|
6071
|
+
const sourceChain = (0, import_react_redux51.useSelector)(selectSourceChain);
|
|
6072
|
+
const targetChain = (0, import_react_redux51.useSelector)(selectTargetChain);
|
|
6073
|
+
const sourceCurrency = (0, import_react_redux51.useSelector)(selectSourceCurrency);
|
|
6074
|
+
const targetCurrency = (0, import_react_redux51.useSelector)(selectTargetCurrency);
|
|
6075
|
+
const amount = (0, import_react_redux51.useSelector)(selectAmount);
|
|
5821
6076
|
const {
|
|
5822
6077
|
totalFeeUsd,
|
|
5823
6078
|
totalFee,
|
|
5824
6079
|
targetNetworkFee,
|
|
5825
6080
|
submitAmount,
|
|
5826
6081
|
decimals: feeDecimals
|
|
5827
|
-
} = (0,
|
|
5828
|
-
const compliantOption = (0,
|
|
5829
|
-
const networkOptions3 = (0,
|
|
5830
|
-
const feeDeduct = (0,
|
|
6082
|
+
} = (0, import_react_redux51.useSelector)(selectServiceFee);
|
|
6083
|
+
const compliantOption = (0, import_react_redux51.useSelector)(selectCompliantOption);
|
|
6084
|
+
const networkOptions3 = (0, import_react_redux51.useSelector)(selectNetworkOption);
|
|
6085
|
+
const feeDeduct = (0, import_react_redux51.useSelector)(selectFeeDeduct);
|
|
5831
6086
|
const { keplrHandler, closeHandler } = useKimaContext();
|
|
5832
|
-
const [isCancellingApprove, setCancellingApprove] = (0,
|
|
5833
|
-
const [isApproving, setApproving] = (0,
|
|
5834
|
-
const [isSigning, setSigning] = (0,
|
|
5835
|
-
const pendingTxs = (0,
|
|
5836
|
-
const networks = (0,
|
|
6087
|
+
const [isCancellingApprove, setCancellingApprove] = (0, import_react132.useState)(false);
|
|
6088
|
+
const [isApproving, setApproving] = (0, import_react132.useState)(false);
|
|
6089
|
+
const [isSigning, setSigning] = (0, import_react132.useState)(false);
|
|
6090
|
+
const pendingTxs = (0, import_react_redux51.useSelector)(selectPendingTxs);
|
|
6091
|
+
const networks = (0, import_react_redux51.useSelector)(selectNetworks);
|
|
5837
6092
|
const { width: windowWidth } = useWidth_default();
|
|
5838
6093
|
const { disconnectWallet } = useDisconnectWallet4();
|
|
5839
6094
|
const { balance } = useBalance2();
|
|
@@ -5885,7 +6140,7 @@ var TransferWidget = ({
|
|
|
5885
6140
|
const handleSubmit = async () => {
|
|
5886
6141
|
const { error, message: validationMessage } = validate(true);
|
|
5887
6142
|
if (error === "ValidationError" /* Error */) {
|
|
5888
|
-
return
|
|
6143
|
+
return import_react_hot_toast5.toast.error(validationMessage, { icon: /* @__PURE__ */ import_react132.default.createElement(Error_default, null) });
|
|
5889
6144
|
}
|
|
5890
6145
|
if (error === "ApprovalNeeded" /* ApprovalNeeded */) {
|
|
5891
6146
|
return approve();
|
|
@@ -5895,7 +6150,7 @@ var TransferWidget = ({
|
|
|
5895
6150
|
return;
|
|
5896
6151
|
}
|
|
5897
6152
|
const { success, message: submitMessage } = await submitTransaction();
|
|
5898
|
-
if (!success) return
|
|
6153
|
+
if (!success) return import_react_hot_toast5.toast.error(submitMessage, { icon: /* @__PURE__ */ import_react132.default.createElement(Error_default, null) });
|
|
5899
6154
|
};
|
|
5900
6155
|
const onNext = () => {
|
|
5901
6156
|
const { error, message } = validate();
|
|
@@ -5905,7 +6160,7 @@ var TransferWidget = ({
|
|
|
5905
6160
|
if (error !== "ValidationError" /* Error */ && formStep > 0) {
|
|
5906
6161
|
return handleSubmit();
|
|
5907
6162
|
}
|
|
5908
|
-
|
|
6163
|
+
import_react_hot_toast5.toast.error(message, { icon: /* @__PURE__ */ import_react132.default.createElement(Error_default, null) });
|
|
5909
6164
|
mainRef.current?.click();
|
|
5910
6165
|
};
|
|
5911
6166
|
const onBack = () => {
|
|
@@ -5958,10 +6213,10 @@ var TransferWidget = ({
|
|
|
5958
6213
|
await disconnectWallet();
|
|
5959
6214
|
closeHandler && closeHandler(0);
|
|
5960
6215
|
};
|
|
5961
|
-
(0,
|
|
6216
|
+
(0, import_react132.useEffect)(() => {
|
|
5962
6217
|
dispatch(setTheme(theme));
|
|
5963
6218
|
}, [theme]);
|
|
5964
|
-
return /* @__PURE__ */
|
|
6219
|
+
return /* @__PURE__ */ import_react132.default.createElement(
|
|
5965
6220
|
"div",
|
|
5966
6221
|
{
|
|
5967
6222
|
className: `kima-card ${theme.colorMode}`,
|
|
@@ -5969,14 +6224,14 @@ var TransferWidget = ({
|
|
|
5969
6224
|
background: theme.colorMode === "light" /* light */ ? theme.backgroundColorLight : theme.backgroundColorDark
|
|
5970
6225
|
}
|
|
5971
6226
|
},
|
|
5972
|
-
mode === "payment" /* payment */ && !transactionOption && /* @__PURE__ */
|
|
5973
|
-
/* @__PURE__ */
|
|
6227
|
+
mode === "payment" /* payment */ && !transactionOption && /* @__PURE__ */ import_react132.default.createElement("h2", { className: "invalid-option-banner" }, "We're unable to process your payment. Please ensure the necessary transaction details are provided. Contact support if the issue persists."),
|
|
6228
|
+
/* @__PURE__ */ import_react132.default.createElement("div", { className: "transfer-card" }, /* @__PURE__ */ import_react132.default.createElement("div", { className: "kima-card-header" }, /* @__PURE__ */ import_react132.default.createElement("div", { className: "topbar" }, /* @__PURE__ */ import_react132.default.createElement("div", { className: "title" }, /* @__PURE__ */ import_react132.default.createElement("h3", null, formStep === 0 ? titleOption?.initialTitle ? titleOption.initialTitle : mode === "payment" /* payment */ ? "New Purchase" : "New Transfer" : titleOption?.confirmTitle ? titleOption.confirmTitle : mode === "payment" /* payment */ ? "Confirm Purchase" : "Transfer Details")), /* @__PURE__ */ import_react132.default.createElement("div", { className: "control-buttons" }, pendingTxs > 0 ? /* @__PURE__ */ import_react132.default.createElement(TxButton_default, { theme }) : null, /* @__PURE__ */ import_react132.default.createElement(
|
|
5974
6229
|
ExternalLink_default,
|
|
5975
6230
|
{
|
|
5976
6231
|
to: helpURL ? helpURL : "https://docs.kima.network/kima-network/try-kima-with-the-demo-app"
|
|
5977
6232
|
},
|
|
5978
|
-
/* @__PURE__ */
|
|
5979
|
-
), formStep === 0 && mode !== "payment" /* payment */ && /* @__PURE__ */
|
|
6233
|
+
/* @__PURE__ */ import_react132.default.createElement("div", { className: "menu-button" }, "I need help")
|
|
6234
|
+
), formStep === 0 && mode !== "payment" /* payment */ && /* @__PURE__ */ import_react132.default.createElement(
|
|
5980
6235
|
"button",
|
|
5981
6236
|
{
|
|
5982
6237
|
className: "reset-button",
|
|
@@ -5984,12 +6239,49 @@ var TransferWidget = ({
|
|
|
5984
6239
|
disabled: isApproving || isSubmitting || isSigning
|
|
5985
6240
|
},
|
|
5986
6241
|
"Reset"
|
|
5987
|
-
))), mode === "payment" /* payment */ && paymentTitleOption?.title && /* @__PURE__ */
|
|
6242
|
+
))), mode === "payment" /* payment */ && paymentTitleOption?.title && /* @__PURE__ */ import_react132.default.createElement("h4", { className: "subtitle" }, paymentTitleOption.title)), /* @__PURE__ */ import_react132.default.createElement("div", { className: "kima-card-content", ref: mainRef }, formStep === 0 ? /* @__PURE__ */ import_react132.default.createElement(
|
|
6243
|
+
SingleForm_default,
|
|
6244
|
+
{
|
|
6245
|
+
...{
|
|
6246
|
+
allowance,
|
|
6247
|
+
balance,
|
|
6248
|
+
decimals,
|
|
6249
|
+
formStep,
|
|
6250
|
+
onBack,
|
|
6251
|
+
onCancelApprove,
|
|
6252
|
+
onNext,
|
|
6253
|
+
getButtonLabel,
|
|
6254
|
+
isApproving,
|
|
6255
|
+
isSigning,
|
|
6256
|
+
isSubmitting,
|
|
6257
|
+
isCancellingApprove
|
|
6258
|
+
}
|
|
6259
|
+
}
|
|
6260
|
+
) : /* @__PURE__ */ import_react132.default.createElement(
|
|
6261
|
+
ConfirmDetails_default,
|
|
6262
|
+
{
|
|
6263
|
+
...{
|
|
6264
|
+
allowance,
|
|
6265
|
+
balance,
|
|
6266
|
+
decimals,
|
|
6267
|
+
formStep,
|
|
6268
|
+
onBack,
|
|
6269
|
+
onCancelApprove,
|
|
6270
|
+
onNext,
|
|
6271
|
+
getButtonLabel,
|
|
6272
|
+
isApproving,
|
|
6273
|
+
isSigning,
|
|
6274
|
+
isSubmitting,
|
|
6275
|
+
isCancellingApprove,
|
|
6276
|
+
isApproved
|
|
6277
|
+
}
|
|
6278
|
+
}
|
|
6279
|
+
)), /* @__PURE__ */ import_react132.default.createElement(
|
|
5988
6280
|
"div",
|
|
5989
6281
|
{
|
|
5990
6282
|
className: `kima-card-footer ${mode === "bridge" /* bridge */ && formStep !== 0 && "confirm"}`
|
|
5991
6283
|
},
|
|
5992
|
-
/* @__PURE__ */
|
|
6284
|
+
/* @__PURE__ */ import_react132.default.createElement("div", { className: `button-group` }, formStep !== 0 && /* @__PURE__ */ import_react132.default.createElement(
|
|
5993
6285
|
SecondaryButton_default,
|
|
5994
6286
|
{
|
|
5995
6287
|
clickHandler: onBack,
|
|
@@ -5997,7 +6289,7 @@ var TransferWidget = ({
|
|
|
5997
6289
|
disabled: isApproving || isSubmitting || isSigning
|
|
5998
6290
|
},
|
|
5999
6291
|
formStep > 0 ? "Back" : "Cancel"
|
|
6000
|
-
), allowance > 0 && formStep !== 0 ? /* @__PURE__ */
|
|
6292
|
+
), allowance > 0 && formStep !== 0 ? /* @__PURE__ */ import_react132.default.createElement(
|
|
6001
6293
|
SecondaryButton_default,
|
|
6002
6294
|
{
|
|
6003
6295
|
clickHandler: onCancelApprove,
|
|
@@ -6006,7 +6298,7 @@ var TransferWidget = ({
|
|
|
6006
6298
|
disabled: isCancellingApprove || isApproving || isSubmitting || isSigning
|
|
6007
6299
|
},
|
|
6008
6300
|
isCancellingApprove ? "Cancelling Approval" : "Cancel Approve"
|
|
6009
|
-
) : null, /* @__PURE__ */
|
|
6301
|
+
) : null, /* @__PURE__ */ import_react132.default.createElement(
|
|
6010
6302
|
PrimaryButton_default,
|
|
6011
6303
|
{
|
|
6012
6304
|
clickHandler: onNext,
|
|
@@ -6015,8 +6307,8 @@ var TransferWidget = ({
|
|
|
6015
6307
|
},
|
|
6016
6308
|
getButtonLabel()
|
|
6017
6309
|
))
|
|
6018
|
-
), /* @__PURE__ */
|
|
6019
|
-
|
|
6310
|
+
), /* @__PURE__ */ import_react132.default.createElement(SolanaWalletConnectModal_default, null), /* @__PURE__ */ import_react132.default.createElement(TronWalletConnectModal_default, null), /* @__PURE__ */ import_react132.default.createElement(
|
|
6311
|
+
import_react_hot_toast5.Toaster,
|
|
6020
6312
|
{
|
|
6021
6313
|
position: "top-right",
|
|
6022
6314
|
reverseOrder: false,
|
|
@@ -6040,12 +6332,12 @@ var TransferWidget = ({
|
|
|
6040
6332
|
}
|
|
6041
6333
|
}
|
|
6042
6334
|
}
|
|
6043
|
-
), /* @__PURE__ */
|
|
6335
|
+
), /* @__PURE__ */ import_react132.default.createElement("div", { className: "floating-footer" }, /* @__PURE__ */ import_react132.default.createElement("div", { className: `items ${theme.colorMode}` }, /* @__PURE__ */ import_react132.default.createElement("span", null, "Powered by"), /* @__PURE__ */ import_react132.default.createElement(FooterLogo_default, { width: 50, fill: "black" }), /* @__PURE__ */ import_react132.default.createElement("strong", null, "Network"))))
|
|
6044
6336
|
);
|
|
6045
6337
|
};
|
|
6046
6338
|
|
|
6047
6339
|
// src/components/KimaWidgetWrapper.tsx
|
|
6048
|
-
var
|
|
6340
|
+
var import_react134 = require("@reown/appkit/react");
|
|
6049
6341
|
var KimaWidgetWrapper = ({
|
|
6050
6342
|
mode,
|
|
6051
6343
|
txId,
|
|
@@ -6060,14 +6352,14 @@ var KimaWidgetWrapper = ({
|
|
|
6060
6352
|
excludedTargetNetworks = []
|
|
6061
6353
|
}) => {
|
|
6062
6354
|
const { kimaBackendUrl } = useKimaContext();
|
|
6063
|
-
const submitted = (0,
|
|
6064
|
-
const dispatch = (0,
|
|
6065
|
-
const { setThemeMode, setThemeVariables } = (0,
|
|
6355
|
+
const submitted = (0, import_react_redux52.useSelector)(selectSubmitted);
|
|
6356
|
+
const dispatch = (0, import_react_redux52.useDispatch)();
|
|
6357
|
+
const { setThemeMode, setThemeVariables } = (0, import_react134.useAppKitTheme)();
|
|
6066
6358
|
const { data: chainData } = useChainData(kimaBackendUrl);
|
|
6067
6359
|
const { data: envOptions } = useGetEnvOptions({ kimaBackendUrl });
|
|
6068
6360
|
const networkOption = envOptions?.env;
|
|
6069
6361
|
const kimaExplorer = envOptions?.kimaExplorer || "https://explorer.sardis.kima.network";
|
|
6070
|
-
(0,
|
|
6362
|
+
(0, import_react133.useEffect)(() => {
|
|
6071
6363
|
dispatch(setTheme(theme));
|
|
6072
6364
|
setThemeMode(theme.colorMode === "light" /* light */ ? "light" : "dark");
|
|
6073
6365
|
setThemeVariables({
|
|
@@ -6103,15 +6395,15 @@ var KimaWidgetWrapper = ({
|
|
|
6103
6395
|
"Config error: KimaTransactionWidget.transactionOption is required in payment mode"
|
|
6104
6396
|
);
|
|
6105
6397
|
} else if (mode === "status" /* status */) {
|
|
6106
|
-
dispatch(setTxId(txId || 1));
|
|
6398
|
+
dispatch(setTxId(txId || -1));
|
|
6107
6399
|
dispatch(setSubmitted(true));
|
|
6108
6400
|
}
|
|
6109
6401
|
}, [theme, transactionOption, mode, networkOption, chainData]);
|
|
6110
|
-
(0,
|
|
6402
|
+
(0, import_react133.useEffect)(() => {
|
|
6111
6403
|
if (!chainData?.length) return;
|
|
6112
6404
|
indexPluginsByChain(chainData);
|
|
6113
6405
|
}, [chainData]);
|
|
6114
|
-
return submitted ? /* @__PURE__ */
|
|
6406
|
+
return submitted ? /* @__PURE__ */ import_react133.default.createElement(TransactionWidget, { theme }) : /* @__PURE__ */ import_react133.default.createElement(
|
|
6115
6407
|
TransferWidget,
|
|
6116
6408
|
{
|
|
6117
6409
|
theme,
|
|
@@ -6124,7 +6416,7 @@ var KimaWidgetWrapper = ({
|
|
|
6124
6416
|
var KimaWidgetWrapper_default = KimaWidgetWrapper;
|
|
6125
6417
|
|
|
6126
6418
|
// src/components/KimaTransactionWidget.tsx
|
|
6127
|
-
var
|
|
6419
|
+
var import_react_redux53 = require("react-redux");
|
|
6128
6420
|
var KimaTransactionWidget = ({
|
|
6129
6421
|
mode,
|
|
6130
6422
|
txId,
|
|
@@ -6138,19 +6430,19 @@ var KimaTransactionWidget = ({
|
|
|
6138
6430
|
excludedSourceNetworks = [],
|
|
6139
6431
|
excludedTargetNetworks = []
|
|
6140
6432
|
}) => {
|
|
6141
|
-
const dispatch = (0,
|
|
6433
|
+
const dispatch = (0, import_react_redux53.useDispatch)();
|
|
6142
6434
|
const { kimaBackendUrl } = useKimaContext();
|
|
6143
6435
|
const { isLoading: isLoadingEnvs } = useGetEnvOptions({
|
|
6144
6436
|
kimaBackendUrl
|
|
6145
6437
|
});
|
|
6146
6438
|
const { data: chainData, isLoading: isLoadingChainData } = useChainData(kimaBackendUrl);
|
|
6147
|
-
(0,
|
|
6439
|
+
(0, import_react135.useEffect)(() => {
|
|
6148
6440
|
if (!isLoadingChainData && chainData) {
|
|
6149
6441
|
dispatch(setSourceChain(chainData[0]));
|
|
6150
6442
|
dispatch(setTargetChain(chainData[1]));
|
|
6151
6443
|
}
|
|
6152
6444
|
}, [chainData]);
|
|
6153
|
-
return isLoadingEnvs || isLoadingChainData ? /* @__PURE__ */
|
|
6445
|
+
return isLoadingEnvs || isLoadingChainData ? /* @__PURE__ */ import_react135.default.createElement(ring_default, null) : /* @__PURE__ */ import_react135.default.createElement(
|
|
6154
6446
|
KimaWidgetWrapper_default,
|
|
6155
6447
|
{
|
|
6156
6448
|
...{
|