@kimafinance/kima-transaction-widget 1.4.6 → 1.4.8
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 +617 -568
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +450 -414
- 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 React49 = __toESM(require("react"), 1);
|
|
49
|
+
var import_react60 = require("react");
|
|
50
50
|
var import_react_redux19 = require("react-redux");
|
|
51
51
|
|
|
52
52
|
// src/store/index.tsx
|
|
@@ -1402,6 +1402,84 @@ var KimaNetwork = ({ width = 120, height = 15, ...rest }) => {
|
|
|
1402
1402
|
};
|
|
1403
1403
|
var KimaNetwork_default = KimaNetwork;
|
|
1404
1404
|
|
|
1405
|
+
// src/assets/icons/CFX.tsx
|
|
1406
|
+
var import_react40 = __toESM(require("react"), 1);
|
|
1407
|
+
var CFX = ({ width = 30, height = 30, ...rest }) => {
|
|
1408
|
+
return /* @__PURE__ */ import_react40.default.createElement(
|
|
1409
|
+
"svg",
|
|
1410
|
+
{
|
|
1411
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1412
|
+
width,
|
|
1413
|
+
height,
|
|
1414
|
+
viewBox: "0 0 1766.6 2212",
|
|
1415
|
+
fill: "none",
|
|
1416
|
+
...rest
|
|
1417
|
+
},
|
|
1418
|
+
/* @__PURE__ */ import_react40.default.createElement("g", null, /* @__PURE__ */ import_react40.default.createElement("g", null, /* @__PURE__ */ import_react40.default.createElement(
|
|
1419
|
+
"polygon",
|
|
1420
|
+
{
|
|
1421
|
+
fill: "#181818",
|
|
1422
|
+
fillRule: "evenodd",
|
|
1423
|
+
clipRule: "evenodd",
|
|
1424
|
+
points: "0,1309.5 879.5,426.3 1766.6,1317.2 1766.6,892.7 887.1,0 1,895.7"
|
|
1425
|
+
}
|
|
1426
|
+
), /* @__PURE__ */ import_react40.default.createElement(
|
|
1427
|
+
"polygon",
|
|
1428
|
+
{
|
|
1429
|
+
fill: "#181818",
|
|
1430
|
+
fillRule: "evenodd",
|
|
1431
|
+
clipRule: "evenodd",
|
|
1432
|
+
points: "203.6,1528.4 875.6,2212 1555.4,1528.4 1348,1317.2 879.5,1789.6 626,1528.4 1090.7,1052.2 882.4,845.8"
|
|
1433
|
+
}
|
|
1434
|
+
)))
|
|
1435
|
+
);
|
|
1436
|
+
};
|
|
1437
|
+
var CFX_default = CFX;
|
|
1438
|
+
|
|
1439
|
+
// src/assets/icons/EURC.tsx
|
|
1440
|
+
var import_react41 = __toESM(require("react"), 1);
|
|
1441
|
+
var EURC = ({ width = 100, height = 100, ...rest }) => {
|
|
1442
|
+
return /* @__PURE__ */ import_react41.default.createElement(
|
|
1443
|
+
"svg",
|
|
1444
|
+
{
|
|
1445
|
+
width,
|
|
1446
|
+
height,
|
|
1447
|
+
viewBox: "0 0 100 100",
|
|
1448
|
+
fill: "none",
|
|
1449
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1450
|
+
xlinkHref: "http://www.w3.org/1999/xlink"
|
|
1451
|
+
},
|
|
1452
|
+
/* @__PURE__ */ import_react41.default.createElement(
|
|
1453
|
+
"path",
|
|
1454
|
+
{
|
|
1455
|
+
d: "M50 100C77.7085 100 100 77.7085 100 50C100 22.2915 77.7085 0 50 0C22.2915 0 0 22.2915 0 50C0 77.7085 22.2915 100 50 100Z",
|
|
1456
|
+
fill: "#2775CA"
|
|
1457
|
+
}
|
|
1458
|
+
),
|
|
1459
|
+
/* @__PURE__ */ import_react41.default.createElement("rect", { width: "100", height: "100", fill: "url(#pattern0_1506_393)" }),
|
|
1460
|
+
/* @__PURE__ */ import_react41.default.createElement("defs", null, /* @__PURE__ */ import_react41.default.createElement(
|
|
1461
|
+
"pattern",
|
|
1462
|
+
{
|
|
1463
|
+
id: "pattern0_1506_393",
|
|
1464
|
+
patternContentUnits: "objectBoundingBox",
|
|
1465
|
+
width: "1",
|
|
1466
|
+
height: "1"
|
|
1467
|
+
},
|
|
1468
|
+
/* @__PURE__ */ import_react41.default.createElement("use", { xlinkHref: "#image0_1506_393", transform: "scale(0.005)" })
|
|
1469
|
+
), /* @__PURE__ */ import_react41.default.createElement(
|
|
1470
|
+
"image",
|
|
1471
|
+
{
|
|
1472
|
+
id: "image0_1506_393",
|
|
1473
|
+
width: "200",
|
|
1474
|
+
height: "200",
|
|
1475
|
+
preserveAspectRatio: "none",
|
|
1476
|
+
xlinkHref: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAPH0lEQVR4Xu2dP44sSRGH9wJcAgnN4wDcgBOszSnQe2OiZ2LhcoFBHAHhg9DMrjAWY611AAeDdXad1UoMEz2T83p+WdWdGRn/Mis+6ZNW+6ajqrszKjMjs6o/+yxR5eb2Lz95d/vw+c2Hh7ub9/ffvfrh4bHbl9e+u73/+LPbv/2cYuPxkiQkz4lw/5Hd+CU8Jc9TMmbiJJ5QA7y5/eLLqoFGlc41kybR4nRV9uwZpH16LzREw/eZJM2cxvjYsFY0kyVp5YYm0tiADibNo/BzSQ7MaWK90VBSSpaHz/HzSg7CUnMKbZ8m+fj5JQtymldkYoyZ1bD1yGGUvDn8WoDDVKIczQrYhGSPYW/2KBOQPYa/2aMEBb+o1NH399/h95M4UX05aSjx+0qMeNlCXn0haTxzfmIMfgHpHOL3mAiTvcb85iReCfyg07nF7zcZAD/cdA3xe046yX1TBzA3QvKoPsh0afH7Ty6AH156DLEdJEBuFUlzO/0OucEwLebCIjDVI3RSK++wnRySjQ8mTZ89+qbH6gNJ0w2x3RwC/BDS9JLYfpYG3/xs/u5P/3786p/fP/7yt19V/xZNOkc6Vzpn/LepPMpwq3rjk/iv//7wuAU1PvzbKH77/Y94uicin/M1sT0tBb7Z6P7iN39//OHH/2H7qvjpr++r13pL53QNSnp6j/ja6GK7WgJ8k5F9/8dvsC1dJGKC/Or3X+NpXoT+HmOEdbX9W7Osc7T0FluskCCFWYZfyzxDeIYV8j//41tsJ12slCAF6kUxZjSnX3GPvreqdyi1x4oJUgg/9Jp571b1ZoIo1XgKKydIIXJJG9vdFOCbiOJeuXaEIyQIQUNRPE4Usf2FBk8+ghoNpnCUBClE7U2wHYYkYsVKGzxeBFvWQUbBYwYw/g7gjZN2kxbBtIlcFuWWrXvAY3qL7TEUeLKe/uGv/8HvUgU8bjQtiFYSxnYZAjxJT7WhPU4zbdGgOcPevixJ8LieYvt0JdITDzWhRobHm03tYRcez81I6yPVyTlIV0ktpt8qvqHmEDRK74rt1AU8KQ+lVsSRKF+0plrl4Cgr8NheTYkwtKKruzS0mIjHWVkqCWvMUSJM3l0flo0nY+3oJkNkhTnGqNJzlAhJgu3WBDwJa6WTA+MfWen5nHuSeNyuW52EoZITTLpiRtwqEkFJvJME268qeHBLJSfk3l/aDEpejLwn7tiOVfC+x0OK7DX6lALjmmqxNlId1FApMG7aphQY11Jsz6J43j4rwYoLftZKFUcwrpWqZV88mJUSRL7ZZzZpB/MoniV1bNcieM09JBYCs+eQV6IncZu0a8xFqoMYKFGxysm4nhL323jdnYjtewivuccoWcbVV6IMjDEtFJ2LYHALR8lhlZ2jwy1arMWYFmI7Z+Ex9xjdYerVbR/Z0eGwy85piblIFVTZ0YcNzLwTl947JTddIEhqdOW/qQFFn0+NbnTEeBZie+8GA2o7CsaL7MjQhBpjxJ5yFIynLbb3Lqwf4TM6tMJ40dS674LAY3k6gvVQa+gh2BhM2xGiDz8kqj3XiLIYOjpMxnjaYrtvwrq0O9J7RC7nSix09hLh8xgZPloPHVklXwyiLZcoV01UYhFtFO9edeQ5yBhLVc4NVVUQRaf5IBuNkBwFPDdruVivY2H7v4j18IqL9YSuxZGhohaePcnI54GxNO0aZuGLNeX2Hl6rr5eU2OWqBZ6rpVyosIGxNMU82AVfqCkXz6viltIPOtAAz9lSLhhHU8yDTSy3lnC7X+vxaYuzgOdtJbeqZTqMbtl6Ur1IUS4Yx1sNaEGRhp/SC4ueJWAuGEdTzIcKfIGW3CGJ9bj0mlJc+52Rsk9LAq/hKXeOZtmLYD68wXJ4xQXjeCqxCMhNeG5xo4DxrOSCcdS8NMyiBZPqBUpy4DYmDUe3UxAYkyMXr9tdub0IxlHz0qJh9cdKcq+8GMdT7hddwHhcRxYlMZaVHCy3n2BevIJ/qCWHSL3HSKPUeJoHtzfDOFZyLy4YR0vMixM09sI/1JIDxvB0BIwlaQ+WV2Q0fEJvzUOs7v3grH1EWzXnol09ar2jL8I6Egerahb97g3mR+jhldUH02JrI0Ssdh3vEe0p9qHnoVsT9eqPlOSAMTzlgnG0xOFLpLkbygFjaIn5YZIgsw+vuAt1Hj0gJUqkHmNLDlZzp7fJYTRB5+BVr9+SC8ZJn+XehoxxNHyTIFY/xskBY3iJQ5dWrK54M8r9TDGOiueVLKsV9F401gy4hp5UTiwHjKHk3acEqf9RXM743XPnKcoh0vwpqpxt8CZzuvNKVvWPCnJWTzGGljQWviYH+vIxDlfqwUwahoO9WF04TROEA8aQljsG9mTFJOGAMTR8To7AFSyMIe2s4PuYXQ4YQ8NTgljdA9KL9kOoZwbfy+xy7prEGCpSJcviET+coYzmOJOzYBkFqy0rlnIm6hhDw9OjgCxKvJzt4RhD0pnB97KC0dpH8fRga4sE4ZR4MYaUM4PvZSV7MSlWUKm3+p8KUpmyF4whIXexLwImDcLRXkx2KFglSJRJGGesG4EV5x1oL3TRxRjiWiUIB4whIadYEAF8Hyvai3aV8+TREoSkJOHe9GTNEXqOIgeMoWHIBIm0h4lTYTHp/heTA8bQMGSCRNrFy6nARbjnezZ7sbqIZoJcMRPERs6wF2NoGDJBTCZgjWaC2JgJ0sHsCZJzkH4zQTrIBDmemSAdWM5BZlo8jHThkJYDxtAwZIJYVShm3NW7au/EAWNoGDJBCIwhLWd9Iwr4XlaQA8YQ94gr6cWZwfeygr1c+0UuEU8JYrDdPcpmxSLnfKKw6q7eXkyGmlYJEmW7OznjvKOw8t6sXiy2u59umLK45ZZTKsUYEs4871i5gkX2YtKT0j3pFg9t4DRMjCEh59lcUcD3spJR2kclJUjUx/5oPLSBYs6IydXSUc5aFMbQMPSD47SGFLNN0FeedxTDrqJHThACY0hJcyLqTXrkQMUJjNNj9N/3kJIDxtDwsAnCkQvGSWs5YAxx3zy82qDUG3Wc2Sq3F8E46Vs5zwmw+FGlU4m3YPEDOpxSr8UH0SrniyQosTBW+knOGplJ0QJ/Crr6AwV7sdzV2yIXjGPhDL9RSHLAGBq+SY6oCUJgDE859XrCsifc6uksj98rB4yhIeZH2ASJ9uVywThaXipjW2zP6JEzvCIwjoaYHyYJssJEl7sabzFcbN1nZrITtkEOVkmO+UEJcod/pCEHjOHp1hCmFe0vtxd8vbUcMIaGVLTC/Ai75YQwqVp0OALGkpJ2HvSCMSyNPJrA3HgF/1DD1mEAgnG8HQFjjRq5se3JwepCiXnxCv6hlhwwhrejP6UgVYLl9ByE9/oMB4yhJebFKxYr6iSHiA9jG2U0SbgFAwJjWco9b4yj4u0XX2JevGI1D+FefTGOt9zh4jm0k7U3UbhDqsKMvYdZuR9X0JHqBUpyiFKePPfSukMvtF9tK1no/1ED4Q6nztG6jaBV7ueFcbTEfKiIPMwiME4EZwLP3VouGEfF8x28e1gNs7jDk4hzEXIGtNdhrsmde1hVr64OrwrVC5XkgnGiGJkIdyZywThaYh7sgi/UkjvZ9J5k7sntFbWhcf/W3MZSzv1AhGWvh3mwi8X9IUUuGCeKI1tRNLB6zvE1uWAcNVuHV4UqgJLcHZ0ExopkBLwrVkUuZqXdDx29RwEDaMrFbPLGkHoSbklTgijFjJFhJ8bSFNv/VSyHWSP1fYwVTe5NViPgOXjKxeTZu8Xe4VWhCqQoF4v7LCTk3JPfi+WEtkXO864KGEtTbPfN3BjdI0JyK1pE1KrWltxtNpcwvdo2OjK3tEz0zXs/esCAmo6AsWZw5KJAieZdur3kCBhLU2zv3WBATUfH6xhvRqnR0+dAV1EyciFiy9EyN8ZTtWVryTWstp4UR8F4qa2jYDxNsa2zwcCajl6BIu74PYojk3IC46kq0XsULEu+5OhQK+KkdXW5GxELGE9dbml3j+oAyo4yU2VrdkcqVoTHdhhs38NYz0XIUSy3KhxVibI1xlRXuvcoVAdSdnSoRWRPoueUyfFBofcoWPyeITrafROZJPJO+71o9R6F6oAGSpATdzlHJ+SEx7yDxPYsjsdchJQgyvbvmR0t5RYwroXYltXAA1soMR8hvK5cKygFxjVRct2jheoEDJRKEiLyPqZoji7enoOxrcT2q47V44FQicpJIcvA113k877D9mvCxomYyH0AwBY55NpXar5BuFSsXsR2a4ZH2bc4civnFlnl+qTkBYhw3ZGsXda9RnVChkqUG8/J3kS21yBc742/9CBqS6oTM1T6akccsRys8YAJz2EVie3UDc+hFilZ3TonwtMItZXuhQt4HGuxjbqDJ2it9JzkHO8roYYSW0X2cJ1zvIjtMwR4kh5qMssTVPa0eFYXHtNDbJehwJP10IKZhl9aw6hzolw8sD2G48bwUUGX1Ji8b4HHjaYFrpWqM4cf4WMFnriXWpP3cyLfA28BHtNTbIehwZP3VHuIEXFfl+T+qS2iLaxi+5sCfBOejjyk7RoRE0Szque4p2pTbHfT4HXvyCVHHpS9x1ESJGJhAtvcdFg/MqhVSY6QIBg/grRAje1tSt7d3n/ENxdBqWHXygkSbThVnKZi1QptHMM3GcXRkvCKCRKldLslXXCxfS2B101WrXJ7lJUSJGqP8WqUHbpaVG84oL2JskKChE8McvXkKFRvPKitC40RE6RlHYS2h0TYWNjkUZKjUH0Awd37CbXIY/W9uZXlLziJeLTkKESfk+xJDY/uvJuhoZWhVrSV7w59HrgQhcjVrdTXZatVvURdJ0n9XG6dY5SoK+6pvcuskEsTce9Waiu2iWQD/NDSY4jtILkAfnjpwlo/WHoVcvK+vjkZFwA/1HQN8XtOBsAPN51b/H4TAbLKNb/4nSYKzLpF5dAedT+VF9mbTKT3TxAcmdzLFdpjbzSMxMaXk3qZ6xoxyWGXv/idJAHx/r2SQ5rzjPnIHkVf/MyTCckeRcHsMdYje5RBc/J9HPIGrXZzQ+GByeHXBXMYlZyTyfKQSZG0cZqvHGHPV+6RSkZZLlloe072FIkmp0n+DEnzdI75lJAkBC9l5DuXxHk65ukW5ewZktk4Jc6Tzw34aXhDCdSTROXvn16bSWDL/wHsQpzQgNCUNwAAAABJRU5ErkJggg=="
|
|
1477
|
+
}
|
|
1478
|
+
))
|
|
1479
|
+
);
|
|
1480
|
+
};
|
|
1481
|
+
var EURC_default = EURC;
|
|
1482
|
+
|
|
1405
1483
|
// src/utils/constants.tsx
|
|
1406
1484
|
var import_networks = require("@reown/appkit/networks");
|
|
1407
1485
|
var ChainName = /* @__PURE__ */ ((ChainName2) => {
|
|
@@ -1418,6 +1496,7 @@ var ChainName = /* @__PURE__ */ ((ChainName2) => {
|
|
|
1418
1496
|
ChainName2["FIAT"] = "FIAT";
|
|
1419
1497
|
ChainName2["BTC"] = "BTC";
|
|
1420
1498
|
ChainName2["BERA"] = "BERA";
|
|
1499
|
+
ChainName2["CFX"] = "CFX";
|
|
1421
1500
|
return ChainName2;
|
|
1422
1501
|
})(ChainName || {});
|
|
1423
1502
|
var CHAIN_NAMES_TO_APPKIT_NETWORK_MAINNET = {
|
|
@@ -1428,7 +1507,9 @@ var CHAIN_NAMES_TO_APPKIT_NETWORK_MAINNET = {
|
|
|
1428
1507
|
["BSC" /* BSC */]: import_networks.bsc,
|
|
1429
1508
|
["OPT" /* OPTIMISM */]: import_networks.optimism,
|
|
1430
1509
|
["ARB" /* ARBITRUM */]: import_networks.arbitrum,
|
|
1431
|
-
["ZKE" /* POLYGON_ZKEVM */]: import_networks.polygonZkEvm
|
|
1510
|
+
["ZKE" /* POLYGON_ZKEVM */]: import_networks.polygonZkEvm,
|
|
1511
|
+
["BERA" /* BERA */]: import_networks.berachain,
|
|
1512
|
+
["CFX" /* CFX */]: import_networks.confluxESpace
|
|
1432
1513
|
};
|
|
1433
1514
|
var CHAIN_NAMES_TO_APPKIT_NETWORK_TESTNET = {
|
|
1434
1515
|
["ETH" /* ETHEREUM */]: import_networks.sepolia,
|
|
@@ -1439,7 +1520,8 @@ var CHAIN_NAMES_TO_APPKIT_NETWORK_TESTNET = {
|
|
|
1439
1520
|
["OPT" /* OPTIMISM */]: import_networks.optimismSepolia,
|
|
1440
1521
|
["ARB" /* ARBITRUM */]: import_networks.arbitrumSepolia,
|
|
1441
1522
|
["ZKE" /* POLYGON_ZKEVM */]: import_networks.polygonZkEvmCardona,
|
|
1442
|
-
["BERA" /* BERA */]: import_networks.berachainBepolia
|
|
1523
|
+
["BERA" /* BERA */]: import_networks.berachainBepolia,
|
|
1524
|
+
["CFX" /* CFX */]: import_networks.confluxESpaceTestnet
|
|
1443
1525
|
};
|
|
1444
1526
|
var CHAIN_NAMES_TO_STRING = {
|
|
1445
1527
|
["ETH" /* ETHEREUM */]: "Ethereum",
|
|
@@ -1454,7 +1536,8 @@ var CHAIN_NAMES_TO_STRING = {
|
|
|
1454
1536
|
["FIAT" /* FIAT */]: "Pay with FIAT",
|
|
1455
1537
|
["BTC" /* BTC */]: "Bitcoin",
|
|
1456
1538
|
["BASE" /* BASE */]: "Base",
|
|
1457
|
-
["BERA" /* BERA */]: "Bera"
|
|
1539
|
+
["BERA" /* BERA */]: "Bera",
|
|
1540
|
+
["CFX" /* CFX */]: "Conflux"
|
|
1458
1541
|
};
|
|
1459
1542
|
var CHAIN_STRING_TO_NAME = {
|
|
1460
1543
|
["Ethereum"]: "ETH" /* ETHEREUM */,
|
|
@@ -1469,7 +1552,8 @@ var CHAIN_STRING_TO_NAME = {
|
|
|
1469
1552
|
["Pay with FIAT"]: "FIAT" /* FIAT */,
|
|
1470
1553
|
["Bitcoin"]: "BTC" /* BTC */,
|
|
1471
1554
|
["Base"]: "BASE" /* BASE */,
|
|
1472
|
-
["Bera"]: "BERA" /* BERA
|
|
1555
|
+
["Bera"]: "BERA" /* BERA */,
|
|
1556
|
+
["Conflux"]: "CFX" /* CFX */
|
|
1473
1557
|
};
|
|
1474
1558
|
var networkOptions = [
|
|
1475
1559
|
{
|
|
@@ -1493,6 +1577,11 @@ var networkOptions = [
|
|
|
1493
1577
|
label: "Bitcoin",
|
|
1494
1578
|
icon: BTC_default
|
|
1495
1579
|
},
|
|
1580
|
+
{
|
|
1581
|
+
id: "CFX" /* CFX */,
|
|
1582
|
+
label: "Conflux",
|
|
1583
|
+
icon: CFX_default
|
|
1584
|
+
},
|
|
1496
1585
|
{
|
|
1497
1586
|
id: "ETH" /* ETHEREUM */,
|
|
1498
1587
|
label: "Ethereum",
|
|
@@ -1536,7 +1625,7 @@ var networkOptions = [
|
|
|
1536
1625
|
];
|
|
1537
1626
|
var CLUSTER = "devnet";
|
|
1538
1627
|
var SOLANA_HOST = (0, import_web3.clusterApiUrl)(CLUSTER);
|
|
1539
|
-
var isEVMChain = (chainId) => chainId === "ETH" /* ETHEREUM */ || chainId === "POL" /* POLYGON */ || chainId === "AVX" /* AVALANCHE */ || chainId === "BSC" /* BSC */ || chainId === "OPT" /* OPTIMISM */ || chainId === "ARB" /* ARBITRUM */ || chainId === "ZKE" /* POLYGON_ZKEVM */ || chainId === "BASE" /* BASE */ || chainId === "BERA" /* BERA */;
|
|
1628
|
+
var isEVMChain = (chainId) => chainId === "ETH" /* ETHEREUM */ || chainId === "POL" /* POLYGON */ || chainId === "AVX" /* AVALANCHE */ || chainId === "BSC" /* BSC */ || chainId === "OPT" /* OPTIMISM */ || chainId === "ARB" /* ARBITRUM */ || chainId === "ZKE" /* POLYGON_ZKEVM */ || chainId === "BASE" /* BASE */ || chainId === "BERA" /* BERA */ || chainId === "CFX" /* CFX */;
|
|
1540
1629
|
var lightDemoAccounts = {
|
|
1541
1630
|
EVM: "0x1150bd27bA25fa13806C98324F201dfe815A4502",
|
|
1542
1631
|
// EVM: '0x10962c43ea1bfE1186Dbf59985Df4E1ce94Ca4a9', // personal for testing
|
|
@@ -1545,7 +1634,15 @@ var lightDemoAccounts = {
|
|
|
1545
1634
|
TRX: "TBVn4bsBN4DhtZ7D3vEVpAyqkvdFn7zmpU"
|
|
1546
1635
|
// TRX: 'TL6yGtzbHfQdBRFYh4TLFoU5iiPMmpQtur' // personal for testing
|
|
1547
1636
|
};
|
|
1548
|
-
var lightDemoNetworks = [
|
|
1637
|
+
var lightDemoNetworks = [
|
|
1638
|
+
"ARB",
|
|
1639
|
+
"AVX",
|
|
1640
|
+
"BASE",
|
|
1641
|
+
"OPT",
|
|
1642
|
+
"BSC",
|
|
1643
|
+
"SOL",
|
|
1644
|
+
"TRX"
|
|
1645
|
+
];
|
|
1549
1646
|
|
|
1550
1647
|
// src/interface.tsx
|
|
1551
1648
|
var NetworkOptions = /* @__PURE__ */ ((NetworkOptions4) => {
|
|
@@ -2098,7 +2195,7 @@ var useGetEnvOptions = ({
|
|
|
2098
2195
|
};
|
|
2099
2196
|
|
|
2100
2197
|
// plugins/evm/index.tsx
|
|
2101
|
-
var
|
|
2198
|
+
var import_react49 = __toESM(require("react"), 1);
|
|
2102
2199
|
|
|
2103
2200
|
// plugins/PluginBase.ts
|
|
2104
2201
|
var PluginBase = class {
|
|
@@ -2135,10 +2232,10 @@ var PluginBase = class {
|
|
|
2135
2232
|
};
|
|
2136
2233
|
|
|
2137
2234
|
// plugins/evm/features/walletConnect/WalletProvider.tsx
|
|
2138
|
-
var
|
|
2235
|
+
var import_react43 = __toESM(require("react"), 1);
|
|
2139
2236
|
|
|
2140
2237
|
// plugins/evm/config/modalConfig.ts
|
|
2141
|
-
var
|
|
2238
|
+
var import_react42 = require("@reown/appkit/react");
|
|
2142
2239
|
var import_networks2 = require("@reown/appkit/networks");
|
|
2143
2240
|
var import_appkit_adapter_ethers = require("@reown/appkit-adapter-ethers");
|
|
2144
2241
|
var appkitMainnetChains = [
|
|
@@ -2148,7 +2245,8 @@ var appkitMainnetChains = [
|
|
|
2148
2245
|
import_networks2.base,
|
|
2149
2246
|
import_networks2.arbitrum,
|
|
2150
2247
|
import_networks2.optimism,
|
|
2151
|
-
import_networks2.avalanche
|
|
2248
|
+
import_networks2.avalanche,
|
|
2249
|
+
import_networks2.confluxESpace
|
|
2152
2250
|
];
|
|
2153
2251
|
var appkitTestnetChains = [
|
|
2154
2252
|
import_networks2.sepolia,
|
|
@@ -2158,7 +2256,8 @@ var appkitTestnetChains = [
|
|
|
2158
2256
|
import_networks2.arbitrumSepolia,
|
|
2159
2257
|
import_networks2.optimismSepolia,
|
|
2160
2258
|
import_networks2.avalancheFuji,
|
|
2161
|
-
import_networks2.berachainBepolia
|
|
2259
|
+
import_networks2.berachainBepolia,
|
|
2260
|
+
import_networks2.confluxESpaceTestnet
|
|
2162
2261
|
];
|
|
2163
2262
|
var metadata = {
|
|
2164
2263
|
name: "Kima Transaction Widget",
|
|
@@ -2173,7 +2272,7 @@ var setupAppKit = (projectId, networkOption) => {
|
|
|
2173
2272
|
return appKitModel;
|
|
2174
2273
|
}
|
|
2175
2274
|
const networks = networkOption === "mainnet" /* mainnet */ ? appkitMainnetChains : appkitTestnetChains;
|
|
2176
|
-
appKitModel = (0,
|
|
2275
|
+
appKitModel = (0, import_react42.createAppKit)({
|
|
2177
2276
|
adapters: [new import_appkit_adapter_ethers.EthersAdapter()],
|
|
2178
2277
|
metadata,
|
|
2179
2278
|
networks,
|
|
@@ -2199,17 +2298,17 @@ var WalletProvider = ({
|
|
|
2199
2298
|
walletConnectProjectId,
|
|
2200
2299
|
isLoading
|
|
2201
2300
|
}) => {
|
|
2202
|
-
const [isReady, setIsReady] = (0,
|
|
2203
|
-
(0,
|
|
2301
|
+
const [isReady, setIsReady] = (0, import_react43.useState)(false);
|
|
2302
|
+
(0, import_react43.useEffect)(() => {
|
|
2204
2303
|
if (!isLoading && networkOption) {
|
|
2205
2304
|
setupAppKit(walletConnectProjectId, networkOption);
|
|
2206
2305
|
setIsReady(true);
|
|
2207
2306
|
}
|
|
2208
2307
|
}, [networkOption, isLoading, walletConnectProjectId]);
|
|
2209
2308
|
if (!isReady) {
|
|
2210
|
-
return /* @__PURE__ */
|
|
2309
|
+
return /* @__PURE__ */ import_react43.default.createElement(import_react43.default.Fragment, null);
|
|
2211
2310
|
}
|
|
2212
|
-
return /* @__PURE__ */
|
|
2311
|
+
return /* @__PURE__ */ import_react43.default.createElement(import_react43.default.Fragment, null, children);
|
|
2213
2312
|
};
|
|
2214
2313
|
var WalletProvider_default = WalletProvider;
|
|
2215
2314
|
|
|
@@ -2252,124 +2351,13 @@ var selectCCTransactionIdSeed = (state) => state.option.ccTransactionIdSeed;
|
|
|
2252
2351
|
var selectCCTransactionStatus = (state) => state.option.ccTransactionStatus;
|
|
2253
2352
|
var selectCCTransactionRetrying = (state) => state.option.ccTransactionRetrying;
|
|
2254
2353
|
|
|
2255
|
-
// plugins/evm/utils/constants.tsx
|
|
2256
|
-
var import_web32 = require("@solana/web3.js");
|
|
2257
|
-
|
|
2258
|
-
// plugins/evm/assets/icons/Cross.tsx
|
|
2259
|
-
var import_react42 = __toESM(require("react"), 1);
|
|
2260
|
-
|
|
2261
|
-
// plugins/evm/assets/icons/Minimize.tsx
|
|
2262
|
-
var import_react43 = __toESM(require("react"), 1);
|
|
2263
|
-
|
|
2264
|
-
// plugins/evm/assets/icons/FooterLogo.tsx
|
|
2265
|
-
var import_react44 = __toESM(require("react"), 1);
|
|
2266
|
-
|
|
2267
|
-
// plugins/evm/assets/icons/Check.tsx
|
|
2268
|
-
var import_react45 = __toESM(require("react"), 1);
|
|
2269
|
-
|
|
2270
|
-
// plugins/evm/assets/icons/Warning.tsx
|
|
2271
|
-
var import_react46 = __toESM(require("react"), 1);
|
|
2272
|
-
|
|
2273
|
-
// plugins/evm/assets/icons/ArrowRight.tsx
|
|
2274
|
-
var import_react47 = __toESM(require("react"), 1);
|
|
2275
|
-
|
|
2276
|
-
// plugins/evm/assets/icons/Arrow.tsx
|
|
2277
|
-
var import_react48 = __toESM(require("react"), 1);
|
|
2278
|
-
|
|
2279
|
-
// plugins/evm/assets/icons/Lock.tsx
|
|
2280
|
-
var import_react49 = __toESM(require("react"), 1);
|
|
2281
|
-
|
|
2282
|
-
// plugins/evm/assets/icons/Ethereum.tsx
|
|
2283
|
-
var import_react50 = __toESM(require("react"), 1);
|
|
2284
|
-
|
|
2285
|
-
// plugins/evm/assets/icons/Solana.tsx
|
|
2286
|
-
var import_react51 = __toESM(require("react"), 1);
|
|
2287
|
-
|
|
2288
|
-
// plugins/evm/assets/icons/Polygon.tsx
|
|
2289
|
-
var import_react52 = __toESM(require("react"), 1);
|
|
2290
|
-
|
|
2291
|
-
// plugins/evm/assets/icons/Polygon_zkEVM.tsx
|
|
2292
|
-
var import_react53 = __toESM(require("react"), 1);
|
|
2293
|
-
|
|
2294
|
-
// plugins/evm/assets/icons/Loader.tsx
|
|
2295
|
-
var import_react54 = __toESM(require("react"), 1);
|
|
2296
|
-
|
|
2297
|
-
// plugins/evm/assets/icons/Error.tsx
|
|
2298
|
-
var import_react55 = __toESM(require("react"), 1);
|
|
2299
|
-
|
|
2300
|
-
// plugins/evm/assets/icons/Avalanche.tsx
|
|
2301
|
-
var import_react56 = __toESM(require("react"), 1);
|
|
2302
|
-
|
|
2303
|
-
// plugins/evm/assets/icons/Arbitrum.tsx
|
|
2304
|
-
var import_react57 = __toESM(require("react"), 1);
|
|
2305
|
-
|
|
2306
|
-
// plugins/evm/assets/icons/Optimism.tsx
|
|
2307
|
-
var import_react58 = __toESM(require("react"), 1);
|
|
2308
|
-
|
|
2309
|
-
// plugins/evm/assets/icons/USDC.tsx
|
|
2310
|
-
var import_react59 = __toESM(require("react"), 1);
|
|
2311
|
-
|
|
2312
|
-
// plugins/evm/assets/icons/USDT.tsx
|
|
2313
|
-
var import_react60 = __toESM(require("react"), 1);
|
|
2314
|
-
|
|
2315
|
-
// plugins/evm/assets/icons/USDK.tsx
|
|
2316
|
-
var import_react61 = __toESM(require("react"), 1);
|
|
2317
|
-
|
|
2318
|
-
// plugins/evm/assets/icons/Fuse.tsx
|
|
2319
|
-
var import_react62 = __toESM(require("react"), 1);
|
|
2320
|
-
|
|
2321
|
-
// plugins/evm/assets/icons/Celo.tsx
|
|
2322
|
-
var import_react63 = __toESM(require("react"), 1);
|
|
2323
|
-
|
|
2324
|
-
// plugins/evm/assets/icons/GoodDollar.tsx
|
|
2325
|
-
var import_react64 = __toESM(require("react"), 1);
|
|
2326
|
-
|
|
2327
|
-
// plugins/evm/assets/icons/Copy.tsx
|
|
2328
|
-
var import_react65 = __toESM(require("react"), 1);
|
|
2329
|
-
|
|
2330
|
-
// plugins/evm/assets/icons/Bank.tsx
|
|
2331
|
-
var import_react66 = __toESM(require("react"), 1);
|
|
2332
|
-
|
|
2333
|
-
// plugins/evm/assets/icons/BSC.tsx
|
|
2334
|
-
var import_react67 = __toESM(require("react"), 1);
|
|
2335
|
-
|
|
2336
|
-
// plugins/evm/assets/icons/KEUR.tsx
|
|
2337
|
-
var import_react68 = __toESM(require("react"), 1);
|
|
2338
|
-
|
|
2339
|
-
// plugins/evm/assets/icons/Tron.tsx
|
|
2340
|
-
var import_react69 = __toESM(require("react"), 1);
|
|
2341
|
-
|
|
2342
|
-
// plugins/evm/assets/icons/BTC.tsx
|
|
2343
|
-
var import_react70 = __toESM(require("react"), 1);
|
|
2344
|
-
|
|
2345
|
-
// plugins/evm/assets/icons/Wallet.tsx
|
|
2346
|
-
var import_react71 = __toESM(require("react"), 1);
|
|
2347
|
-
|
|
2348
|
-
// plugins/evm/assets/icons/Explorer.tsx
|
|
2349
|
-
var import_react72 = __toESM(require("react"), 1);
|
|
2350
|
-
|
|
2351
|
-
// plugins/evm/assets/icons/ExternalUrl.tsx
|
|
2352
|
-
var import_react73 = __toESM(require("react"), 1);
|
|
2353
|
-
|
|
2354
|
-
// plugins/evm/assets/icons/Base.tsx
|
|
2355
|
-
var import_react74 = __toESM(require("react"), 1);
|
|
2356
|
-
|
|
2357
|
-
// plugins/evm/assets/icons/Bera.tsx
|
|
2358
|
-
var import_react75 = __toESM(require("react"), 1);
|
|
2359
|
-
|
|
2360
|
-
// plugins/evm/utils/constants.tsx
|
|
2361
|
-
var import_networks3 = require("@reown/appkit/networks");
|
|
2362
|
-
var CLUSTER2 = "devnet";
|
|
2363
|
-
var SOLANA_HOST2 = (0, import_web32.clusterApiUrl)(CLUSTER2);
|
|
2364
|
-
var isEVMChain2 = (chainId) => chainId === "ETH" /* ETHEREUM */ || chainId === "POL" /* POLYGON */ || chainId === "AVX" /* AVALANCHE */ || chainId === "BSC" /* BSC */ || chainId === "OPT" /* OPTIMISM */ || chainId === "ARB" /* ARBITRUM */ || chainId === "ZKE" /* POLYGON_ZKEVM */ || chainId === "BASE" /* BASE */ || chainId === "BERA" /* BERA */;
|
|
2365
|
-
|
|
2366
2354
|
// plugins/evm/core/hooks/useEvmProvider.ts
|
|
2367
|
-
var
|
|
2355
|
+
var import_react44 = require("@reown/appkit/react");
|
|
2368
2356
|
var import_ethers = require("ethers");
|
|
2369
2357
|
var useEvmProvider = () => {
|
|
2370
2358
|
const { externalProvider } = useKimaContext();
|
|
2371
|
-
const { walletProvider: appkitProvider } = (0,
|
|
2372
|
-
const appkitAccountInfo = (0,
|
|
2359
|
+
const { walletProvider: appkitProvider } = (0, import_react44.useAppKitProvider)("eip155");
|
|
2360
|
+
const appkitAccountInfo = (0, import_react44.useAppKitAccount)();
|
|
2373
2361
|
const walletAddress = externalProvider?.signer instanceof import_ethers.JsonRpcSigner && externalProvider.signer.address || appkitAccountInfo?.address;
|
|
2374
2362
|
const walletProvider = externalProvider?.provider instanceof import_ethers.BrowserProvider ? externalProvider.provider : appkitProvider;
|
|
2375
2363
|
return {
|
|
@@ -2383,7 +2371,7 @@ var import_viem = require("viem");
|
|
|
2383
2371
|
|
|
2384
2372
|
// src/utils/functions.tsx
|
|
2385
2373
|
var import_ethers2 = require("ethers");
|
|
2386
|
-
var
|
|
2374
|
+
var import_web32 = require("@solana/web3.js");
|
|
2387
2375
|
var import_tronweb = require("tronweb");
|
|
2388
2376
|
var getShortenedAddress = (address) => {
|
|
2389
2377
|
const is0x = (addr) => addr?.startsWith("0x");
|
|
@@ -2450,7 +2438,7 @@ var isValidExternalProvider = (externalProvider) => {
|
|
|
2450
2438
|
return false;
|
|
2451
2439
|
}
|
|
2452
2440
|
if (type === "solana") {
|
|
2453
|
-
if (!isSolProvider(provider) || !(signer instanceof
|
|
2441
|
+
if (!isSolProvider(provider) || !(signer instanceof import_web32.PublicKey))
|
|
2454
2442
|
return false;
|
|
2455
2443
|
}
|
|
2456
2444
|
if (type === "tron") {
|
|
@@ -2460,7 +2448,7 @@ var isValidExternalProvider = (externalProvider) => {
|
|
|
2460
2448
|
return true;
|
|
2461
2449
|
};
|
|
2462
2450
|
var isSolProvider = (provider) => {
|
|
2463
|
-
return provider && provider.connection instanceof
|
|
2451
|
+
return provider && provider.connection instanceof import_web32.Connection && typeof provider.signTransaction === "function";
|
|
2464
2452
|
};
|
|
2465
2453
|
var isTronProvider = (provider) => {
|
|
2466
2454
|
return provider && provider.tronWeb instanceof import_tronweb.TronWeb && typeof provider.signTransaction === "function";
|
|
@@ -2578,7 +2566,7 @@ function useBalance() {
|
|
|
2578
2566
|
const { pools } = useGetPools_default(backendUrl, networkOption);
|
|
2579
2567
|
const { walletAddress, walletProvider } = useEvmProvider();
|
|
2580
2568
|
const userAddress = mode === "light" /* light */ ? lightDemoAccounts.EVM : walletAddress;
|
|
2581
|
-
const enabled = !!userAddress && !!tokenOptions && !!selectedCoin && pools.length > 0 &&
|
|
2569
|
+
const enabled = !!userAddress && !!tokenOptions && !!selectedCoin && pools.length > 0 && isEVMChain(sourceChain.shortName) && (!!walletProvider || mode === "light" /* light */);
|
|
2582
2570
|
const { data: allowanceData } = (0, import_react_query3.useQuery)({
|
|
2583
2571
|
queryKey: [
|
|
2584
2572
|
"evmAllowance",
|
|
@@ -2603,7 +2591,7 @@ function useBalance() {
|
|
|
2603
2591
|
|
|
2604
2592
|
// plugins/evm/core/hooks/useNativeBalance.ts
|
|
2605
2593
|
var import_react_query4 = require("@tanstack/react-query");
|
|
2606
|
-
var
|
|
2594
|
+
var import_react45 = require("@reown/appkit/react");
|
|
2607
2595
|
|
|
2608
2596
|
// plugins/evm/utils/getBalance.ts
|
|
2609
2597
|
var import_ethers3 = require("ethers");
|
|
@@ -2637,9 +2625,9 @@ var getEvmBalance = async (input) => {
|
|
|
2637
2625
|
var import_react_redux2 = require("react-redux");
|
|
2638
2626
|
var useNativeEvmBalance = () => {
|
|
2639
2627
|
const { externalProvider } = useKimaContext();
|
|
2640
|
-
const appkitAccountInfo = (0,
|
|
2628
|
+
const appkitAccountInfo = (0, import_react45.useAppKitAccount)();
|
|
2641
2629
|
const { address: appkitAddress } = appkitAccountInfo || {};
|
|
2642
|
-
const { walletProvider } = (0,
|
|
2630
|
+
const { walletProvider } = (0, import_react45.useAppKitProvider)("eip155");
|
|
2643
2631
|
const sourceChain = (0, import_react_redux2.useSelector)(selectSourceChain);
|
|
2644
2632
|
const networkOption = (0, import_react_redux2.useSelector)(selectNetworkOption);
|
|
2645
2633
|
const walletAddress = externalProvider?.signer?.address || appkitAddress;
|
|
@@ -2670,9 +2658,9 @@ var useNativeEvmBalance = () => {
|
|
|
2670
2658
|
var useNativeBalance_default = useNativeEvmBalance;
|
|
2671
2659
|
|
|
2672
2660
|
// plugins/evm/core/hooks/useIsWalletReady.tsx
|
|
2673
|
-
var
|
|
2661
|
+
var import_react46 = require("react");
|
|
2674
2662
|
var import_react_redux4 = require("react-redux");
|
|
2675
|
-
var
|
|
2663
|
+
var import_react47 = require("@reown/appkit/react");
|
|
2676
2664
|
|
|
2677
2665
|
// plugins/evm/utils/switchNetworkEthers.tsx
|
|
2678
2666
|
var import_ethers4 = require("ethers");
|
|
@@ -2780,36 +2768,35 @@ function useIsWalletReady() {
|
|
|
2780
2768
|
const backendUrl = (0, import_react_redux4.useSelector)(selectBackendUrl);
|
|
2781
2769
|
const mode = (0, import_react_redux4.useSelector)(selectMode);
|
|
2782
2770
|
const { data: chains } = useChainData(backendUrl);
|
|
2783
|
-
const { walletProvider: appkitProvider } = (0,
|
|
2784
|
-
const appkitAccountInfo = (0,
|
|
2785
|
-
const { chainId: walletChainId } = (0,
|
|
2771
|
+
const { walletProvider: appkitProvider } = (0, import_react47.useAppKitProvider)("eip155");
|
|
2772
|
+
const appkitAccountInfo = (0, import_react47.useAppKitAccount)();
|
|
2773
|
+
const { chainId: walletChainId } = (0, import_react47.useAppKitNetwork)();
|
|
2786
2774
|
const { address: walletAddress, isConnected: appkitIsConnected } = appkitAccountInfo || {};
|
|
2787
2775
|
const isConnected = appkitIsConnected && walletAddress !== void 0;
|
|
2788
2776
|
const sourceChain = (0, import_react_redux4.useSelector)(selectSourceChain);
|
|
2789
|
-
const [isReady, setIsReady] = (0,
|
|
2790
|
-
const [statusMessage, setStatusMessage] = (0,
|
|
2791
|
-
const [connectedAddress, setConnectedAddress] = (0,
|
|
2792
|
-
const switchNetwork = (0,
|
|
2777
|
+
const [isReady, setIsReady] = (0, import_react46.useState)(false);
|
|
2778
|
+
const [statusMessage, setStatusMessage] = (0, import_react46.useState)("Wallet not connected");
|
|
2779
|
+
const [connectedAddress, setConnectedAddress] = (0, import_react46.useState)("");
|
|
2780
|
+
const switchNetwork = (0, import_react46.useCallback)(async () => {
|
|
2781
|
+
if (!sourceChain || !appKitModel) return;
|
|
2782
|
+
if (sourceChain.compatibility !== "EVM" /* EVM */) return;
|
|
2793
2783
|
logger_default.debug("useIsWalletReady:EVM:Attempting to switch network...", {
|
|
2794
2784
|
hasProvider: !!appkitProvider,
|
|
2795
2785
|
sourceChain,
|
|
2796
2786
|
modalExists: appKitModel !== null,
|
|
2797
2787
|
modal: appKitModel
|
|
2798
2788
|
});
|
|
2799
|
-
|
|
2800
|
-
|
|
2801
|
-
|
|
2802
|
-
|
|
2803
|
-
|
|
2804
|
-
|
|
2805
|
-
|
|
2806
|
-
|
|
2807
|
-
} catch (e) {
|
|
2808
|
-
logger_default.error("useIsWalletReady:EVM:Network switch failed:", e);
|
|
2809
|
-
}
|
|
2789
|
+
try {
|
|
2790
|
+
appKitModel.switchNetwork(sourceChain);
|
|
2791
|
+
logger_default.debug(
|
|
2792
|
+
"useIsWalletReady:EVM:Network switch successful to:",
|
|
2793
|
+
sourceChain.name
|
|
2794
|
+
);
|
|
2795
|
+
} catch (e) {
|
|
2796
|
+
logger_default.warn("useIsWalletReady:EVM:Network switch failed:", e);
|
|
2810
2797
|
}
|
|
2811
2798
|
}, [appkitProvider, sourceChain]);
|
|
2812
|
-
(0,
|
|
2799
|
+
(0, import_react46.useEffect)(() => {
|
|
2813
2800
|
const resolveConnection = async () => {
|
|
2814
2801
|
if (mode === "light" /* light */) {
|
|
2815
2802
|
const demoAddress = lightDemoAccounts.EVM;
|
|
@@ -3002,9 +2989,9 @@ function useEvmAllowance() {
|
|
|
3002
2989
|
}
|
|
3003
2990
|
|
|
3004
2991
|
// plugins/evm/core/hooks/useDisconnectWallet.tsx
|
|
3005
|
-
var
|
|
2992
|
+
var import_react48 = require("@reown/appkit/react");
|
|
3006
2993
|
function useDisconnectWallet() {
|
|
3007
|
-
const { disconnect } = (0,
|
|
2994
|
+
const { disconnect } = (0, import_react48.useDisconnect)();
|
|
3008
2995
|
return { disconnectWallet: disconnect };
|
|
3009
2996
|
}
|
|
3010
2997
|
var useDisconnectWallet_default = useDisconnectWallet;
|
|
@@ -3032,7 +3019,7 @@ var EvmPlugin = class extends PluginBase {
|
|
|
3032
3019
|
walletConnectProjectId,
|
|
3033
3020
|
isLoading
|
|
3034
3021
|
}) => {
|
|
3035
|
-
return /* @__PURE__ */
|
|
3022
|
+
return /* @__PURE__ */ import_react49.default.createElement(
|
|
3036
3023
|
WalletProvider_default,
|
|
3037
3024
|
{
|
|
3038
3025
|
children,
|
|
@@ -3048,17 +3035,17 @@ var evmPlugin = new EvmPlugin(store);
|
|
|
3048
3035
|
var evm_default = evmPlugin;
|
|
3049
3036
|
|
|
3050
3037
|
// plugins/solana/index.tsx
|
|
3051
|
-
var
|
|
3038
|
+
var import_react52 = __toESM(require("react"), 1);
|
|
3052
3039
|
|
|
3053
3040
|
// plugins/solana/features/walletConnect/WalletProvider.tsx
|
|
3054
|
-
var
|
|
3041
|
+
var import_react50 = __toESM(require("react"), 1);
|
|
3055
3042
|
var import_wallet_adapter_react = require("@solana/wallet-adapter-react");
|
|
3056
3043
|
var import_wallet_adapter_wallets = require("@solana/wallet-adapter-wallets");
|
|
3057
3044
|
|
|
3058
3045
|
// plugins/solana/utils/constants.tsx
|
|
3059
|
-
var
|
|
3046
|
+
var import_web33 = require("@solana/web3.js");
|
|
3060
3047
|
function getHostEndpoint(networkOption) {
|
|
3061
|
-
return networkOption === "mainnet" ? "https://solana-rpc.publicnode.com" : (0,
|
|
3048
|
+
return networkOption === "mainnet" ? "https://solana-rpc.publicnode.com" : (0, import_web33.clusterApiUrl)("devnet");
|
|
3062
3049
|
}
|
|
3063
3050
|
var networkOptions2 = [
|
|
3064
3051
|
{
|
|
@@ -3079,7 +3066,7 @@ var WalletProvider2 = ({
|
|
|
3079
3066
|
logger_default.debug(
|
|
3080
3067
|
`WalletProvider initialized with projectId: ${walletConnectProjectId}`
|
|
3081
3068
|
);
|
|
3082
|
-
return /* @__PURE__ */
|
|
3069
|
+
return /* @__PURE__ */ import_react50.default.createElement(import_wallet_adapter_react.ConnectionProvider, { endpoint }, /* @__PURE__ */ import_react50.default.createElement(
|
|
3083
3070
|
import_wallet_adapter_react.WalletProvider,
|
|
3084
3071
|
{
|
|
3085
3072
|
autoConnect: false,
|
|
@@ -3102,10 +3089,10 @@ var import_wallet_adapter_react2 = require("@solana/wallet-adapter-react");
|
|
|
3102
3089
|
var import_react_query7 = require("@tanstack/react-query");
|
|
3103
3090
|
|
|
3104
3091
|
// plugins/solana/utils/getSolBalance.tsx
|
|
3105
|
-
var
|
|
3092
|
+
var import_web34 = require("@solana/web3.js");
|
|
3106
3093
|
var getSolBalance = async (connection, publicKey) => {
|
|
3107
3094
|
try {
|
|
3108
|
-
const balance = await connection.getBalance(publicKey) /
|
|
3095
|
+
const balance = await connection.getBalance(publicKey) / import_web34.LAMPORTS_PER_SOL;
|
|
3109
3096
|
logger_default.debug("(NEW) SOL balance:", balance);
|
|
3110
3097
|
return balance ?? 0;
|
|
3111
3098
|
} catch (error) {
|
|
@@ -3115,7 +3102,7 @@ var getSolBalance = async (connection, publicKey) => {
|
|
|
3115
3102
|
};
|
|
3116
3103
|
|
|
3117
3104
|
// plugins/solana/core/hooks/useGetSolBalance.tsx
|
|
3118
|
-
var
|
|
3105
|
+
var import_web35 = require("@solana/web3.js");
|
|
3119
3106
|
var import_react_redux6 = require("react-redux");
|
|
3120
3107
|
function useGetSolBalance() {
|
|
3121
3108
|
const { externalProvider } = useKimaContext();
|
|
@@ -3123,7 +3110,7 @@ function useGetSolBalance() {
|
|
|
3123
3110
|
const { connection: internalConnection } = (0, import_wallet_adapter_react2.useConnection)();
|
|
3124
3111
|
const sourceNetwork = (0, import_react_redux6.useSelector)(selectSourceChain);
|
|
3125
3112
|
const isSolanaPublicKey = (key) => {
|
|
3126
|
-
return key instanceof
|
|
3113
|
+
return key instanceof import_web35.PublicKey;
|
|
3127
3114
|
};
|
|
3128
3115
|
const publicKey = isSolanaPublicKey(externalProvider?.signer) ? externalProvider.signer : internalPublicKey;
|
|
3129
3116
|
const connection = externalProvider?.provider.connection || internalConnection;
|
|
@@ -3149,7 +3136,7 @@ var import_react_redux8 = require("react-redux");
|
|
|
3149
3136
|
|
|
3150
3137
|
// plugins/solana/utils/getTokenAllowance.tsx
|
|
3151
3138
|
var import_spl_token = require("@solana/spl-token");
|
|
3152
|
-
var
|
|
3139
|
+
var import_web36 = require("@solana/web3.js");
|
|
3153
3140
|
var getTokenAllowance2 = async ({
|
|
3154
3141
|
tokenOptions,
|
|
3155
3142
|
selectedCoin,
|
|
@@ -3160,13 +3147,23 @@ var getTokenAllowance2 = async ({
|
|
|
3160
3147
|
try {
|
|
3161
3148
|
const tokenAddress = getTokenAddress(tokenOptions, selectedCoin, "SOL");
|
|
3162
3149
|
const poolAddress = getPoolAddress(pools, "SOL");
|
|
3163
|
-
const mintPublicKey = new
|
|
3150
|
+
const mintPublicKey = new import_web36.PublicKey(tokenAddress);
|
|
3164
3151
|
const tokenAccountAddress = await (0, import_spl_token.getAssociatedTokenAddress)(
|
|
3165
3152
|
mintPublicKey,
|
|
3166
3153
|
userPublicKey
|
|
3167
3154
|
);
|
|
3168
3155
|
const accountInfo = await connection.getParsedAccountInfo(tokenAccountAddress);
|
|
3169
3156
|
const parsedAccountInfo = accountInfo?.value?.data;
|
|
3157
|
+
if (!parsedAccountInfo) {
|
|
3158
|
+
logger_default.warn(
|
|
3159
|
+
`Sol:getTokenAllowance: No token ${selectedCoin} account info found for ${userPublicKey.toBase58()}`
|
|
3160
|
+
);
|
|
3161
|
+
return {
|
|
3162
|
+
allowance: BigInt(0),
|
|
3163
|
+
balance: BigInt(0),
|
|
3164
|
+
decimals: 0
|
|
3165
|
+
};
|
|
3166
|
+
}
|
|
3170
3167
|
return {
|
|
3171
3168
|
allowance: parsedAccountInfo.parsed?.info?.delegate === poolAddress ? BigInt(parsedAccountInfo.parsed?.info?.delegatedAmount?.amount ?? 0) : BigInt(0),
|
|
3172
3169
|
balance: BigInt(parsedAccountInfo.parsed?.info?.tokenAmount?.amount ?? 0),
|
|
@@ -3186,7 +3183,7 @@ var import_react_query8 = require("@tanstack/react-query");
|
|
|
3186
3183
|
// plugins/solana/core/hooks/useSolanaProvider.ts
|
|
3187
3184
|
var import_react_redux7 = require("react-redux");
|
|
3188
3185
|
var import_wallet_adapter_react3 = require("@solana/wallet-adapter-react");
|
|
3189
|
-
var
|
|
3186
|
+
var import_web37 = require("@solana/web3.js");
|
|
3190
3187
|
var useSolanaProvider = () => {
|
|
3191
3188
|
const sourceChain = (0, import_react_redux7.useSelector)(selectSourceChain);
|
|
3192
3189
|
const { externalProvider } = useKimaContext();
|
|
@@ -3196,8 +3193,8 @@ var useSolanaProvider = () => {
|
|
|
3196
3193
|
signTransaction: internalSignTransaction,
|
|
3197
3194
|
signMessage: internalSignMessage
|
|
3198
3195
|
} = (0, import_wallet_adapter_react3.useWallet)();
|
|
3199
|
-
const isSolanaProvider = sourceChain.shortName === "SOL" && externalProvider?.type === "solana" && externalProvider.provider && externalProvider.signer instanceof
|
|
3200
|
-
const userPublicKey = isSolanaProvider && externalProvider && externalProvider.signer instanceof
|
|
3196
|
+
const isSolanaProvider = sourceChain.shortName === "SOL" && externalProvider?.type === "solana" && externalProvider.provider && externalProvider.signer instanceof import_web37.PublicKey;
|
|
3197
|
+
const userPublicKey = isSolanaProvider && externalProvider && externalProvider.signer instanceof import_web37.PublicKey ? externalProvider?.signer : sourceChain.shortName === "SOL" ? internalPublicKey : null;
|
|
3201
3198
|
const signTransaction = isSolanaProvider && externalProvider && "signTransaction" in externalProvider.provider ? externalProvider.provider.signTransaction : sourceChain.shortName === "SOL" ? internalSignTransaction : void 0;
|
|
3202
3199
|
const signMessage = isSolanaProvider && externalProvider && "signMessage" in externalProvider.provider ? externalProvider.provider.signMessage : sourceChain.shortName === "SOL" ? internalSignMessage : void 0;
|
|
3203
3200
|
const connection = isSolanaProvider && externalProvider && "connection" in externalProvider.provider ? externalProvider.provider.connection : sourceChain.shortName === "SOL" ? internalConnection : void 0;
|
|
@@ -3210,7 +3207,7 @@ var useSolanaProvider = () => {
|
|
|
3210
3207
|
};
|
|
3211
3208
|
|
|
3212
3209
|
// plugins/solana/core/hooks/useBalance.tsx
|
|
3213
|
-
var
|
|
3210
|
+
var import_web38 = require("@solana/web3.js");
|
|
3214
3211
|
var emptyResult2 = {};
|
|
3215
3212
|
function useBalance2() {
|
|
3216
3213
|
const sourceChain = (0, import_react_redux8.useSelector)(selectSourceChain);
|
|
@@ -3222,7 +3219,7 @@ function useBalance2() {
|
|
|
3222
3219
|
const { pools } = useGetPools_default(backendUrl, networkOption);
|
|
3223
3220
|
const { connection, userPublicKey } = useSolanaProvider();
|
|
3224
3221
|
const resolvedAddress = mode === "light" /* light */ ? lightDemoAccounts.SOL : userPublicKey;
|
|
3225
|
-
const publicKey = resolvedAddress ? new
|
|
3222
|
+
const publicKey = resolvedAddress ? new import_web38.PublicKey(resolvedAddress) : void 0;
|
|
3226
3223
|
const { data: allowanceData } = (0, import_react_query8.useQuery)({
|
|
3227
3224
|
queryKey: [
|
|
3228
3225
|
"solanaAllowance",
|
|
@@ -3249,7 +3246,7 @@ function useBalance2() {
|
|
|
3249
3246
|
|
|
3250
3247
|
// plugins/solana/core/hooks/useSolanaAllowance.tsx
|
|
3251
3248
|
var import_spl_token2 = require("@solana/spl-token");
|
|
3252
|
-
var
|
|
3249
|
+
var import_web39 = require("@solana/web3.js");
|
|
3253
3250
|
var import_react_query9 = require("@tanstack/react-query");
|
|
3254
3251
|
function useSolanaAllowance() {
|
|
3255
3252
|
const queryClient2 = (0, import_react_query9.useQueryClient)();
|
|
@@ -3265,7 +3262,7 @@ function useSolanaAllowance() {
|
|
|
3265
3262
|
const { pools } = useGetPools_default(backendUrl, networkOption);
|
|
3266
3263
|
const { userPublicKey, signTransaction, signMessage, connection } = useSolanaProvider();
|
|
3267
3264
|
const allowanceData = useBalance2();
|
|
3268
|
-
const publicKey = mode === "light" /* light */ ? new
|
|
3265
|
+
const publicKey = mode === "light" /* light */ ? new import_web39.PublicKey(lightDemoAccounts.SOL) : userPublicKey;
|
|
3269
3266
|
const signSolanaMessage = async (data) => {
|
|
3270
3267
|
if (!signMessage) {
|
|
3271
3268
|
logger_default.warn("useSolanaAllowance: Missing Solana provider setup");
|
|
@@ -3297,20 +3294,20 @@ function useSolanaAllowance() {
|
|
|
3297
3294
|
const tokenAddress = getTokenAddress(tokenOptions, selectedCoin, "SOL");
|
|
3298
3295
|
try {
|
|
3299
3296
|
const tokenAccountAddress = await (0, import_spl_token2.getAssociatedTokenAddress)(
|
|
3300
|
-
new
|
|
3297
|
+
new import_web39.PublicKey(tokenAddress),
|
|
3301
3298
|
publicKey
|
|
3302
3299
|
);
|
|
3303
3300
|
const amount = isCancel ? 0n : allowanceNumber;
|
|
3304
3301
|
logger_default.debug("useSolanaAllowance: Approving amount:", amount);
|
|
3305
3302
|
const approveInstruction = (0, import_spl_token2.createApproveInstruction)(
|
|
3306
3303
|
tokenAccountAddress,
|
|
3307
|
-
new
|
|
3304
|
+
new import_web39.PublicKey(poolAddress),
|
|
3308
3305
|
publicKey,
|
|
3309
3306
|
amount,
|
|
3310
3307
|
[],
|
|
3311
3308
|
import_spl_token2.TOKEN_PROGRAM_ID
|
|
3312
3309
|
);
|
|
3313
|
-
const transaction = new
|
|
3310
|
+
const transaction = new import_web39.Transaction().add(approveInstruction);
|
|
3314
3311
|
transaction.feePayer = publicKey;
|
|
3315
3312
|
transaction.recentBlockhash = (await connection.getLatestBlockhash()).blockhash;
|
|
3316
3313
|
const signedTransaction = await signTransaction(transaction);
|
|
@@ -3345,7 +3342,7 @@ function useSolanaAllowance() {
|
|
|
3345
3342
|
}
|
|
3346
3343
|
|
|
3347
3344
|
// plugins/solana/core/hooks/useIsWalletReady.tsx
|
|
3348
|
-
var
|
|
3345
|
+
var import_react51 = require("react");
|
|
3349
3346
|
var import_wallet_adapter_react4 = require("@solana/wallet-adapter-react");
|
|
3350
3347
|
var import_react_redux10 = require("react-redux");
|
|
3351
3348
|
var import_react_redux11 = require("react-redux");
|
|
@@ -3360,7 +3357,7 @@ function useIsWalletReady2() {
|
|
|
3360
3357
|
const { externalProvider } = useKimaContext();
|
|
3361
3358
|
const { publicKey: solanaAddress } = (0, import_wallet_adapter_react4.useWallet)();
|
|
3362
3359
|
const sourceChain = (0, import_react_redux10.useSelector)(selectSourceChain);
|
|
3363
|
-
(0,
|
|
3360
|
+
(0, import_react51.useEffect)(() => {
|
|
3364
3361
|
if (sourceChain.shortName !== "SOL") return;
|
|
3365
3362
|
if (mode === "light" /* light */) {
|
|
3366
3363
|
dispatch(setSourceAddress(lightDemoAccounts.SOL));
|
|
@@ -3368,7 +3365,7 @@ function useIsWalletReady2() {
|
|
|
3368
3365
|
}
|
|
3369
3366
|
solanaAddress && dispatch(setSourceAddress(solanaAddress.toBase58()));
|
|
3370
3367
|
}, [mode, solanaAddress, sourceChain]);
|
|
3371
|
-
return (0,
|
|
3368
|
+
return (0, import_react51.useMemo)(() => {
|
|
3372
3369
|
if (mode === "light" /* light */)
|
|
3373
3370
|
return createWalletStatus(
|
|
3374
3371
|
true,
|
|
@@ -3422,7 +3419,7 @@ var SolanaPlugin = class extends PluginBase {
|
|
|
3422
3419
|
networkOption,
|
|
3423
3420
|
walletConnectProjectId
|
|
3424
3421
|
}) => {
|
|
3425
|
-
return /* @__PURE__ */
|
|
3422
|
+
return /* @__PURE__ */ import_react52.default.createElement(
|
|
3426
3423
|
WalletProvider_default2,
|
|
3427
3424
|
{
|
|
3428
3425
|
networkOption,
|
|
@@ -3436,10 +3433,10 @@ var solanaPlugin = new SolanaPlugin(store);
|
|
|
3436
3433
|
var solana_default = solanaPlugin;
|
|
3437
3434
|
|
|
3438
3435
|
// plugins/tron/index.tsx
|
|
3439
|
-
var
|
|
3436
|
+
var import_react57 = __toESM(require("react"), 1);
|
|
3440
3437
|
|
|
3441
3438
|
// plugins/tron/features/walletConnect/WalletProvider.tsx
|
|
3442
|
-
var
|
|
3439
|
+
var import_react53 = __toESM(require("react"), 1);
|
|
3443
3440
|
var import_tronwallet_adapter_react_hooks = require("@tronweb3/tronwallet-adapter-react-hooks");
|
|
3444
3441
|
var import_tronwallet_adapter_ledger = require("@tronweb3/tronwallet-adapter-ledger");
|
|
3445
3442
|
var import_tronwallet_adapter_tronlink = require("@tronweb3/tronwallet-adapter-tronlink");
|
|
@@ -3448,7 +3445,7 @@ var import_tronwallet_adapter_tokenpocket = require("@tronweb3/tronwallet-adapte
|
|
|
3448
3445
|
var import_tronwallet_abstract_adapter = require("@tronweb3/tronwallet-abstract-adapter");
|
|
3449
3446
|
var import_react_hot_toast = require("react-hot-toast");
|
|
3450
3447
|
var WalletProvider3 = ({ children, networkOption }) => {
|
|
3451
|
-
const adapters = (0,
|
|
3448
|
+
const adapters = (0, import_react53.useMemo)(
|
|
3452
3449
|
() => [
|
|
3453
3450
|
new import_tronwallet_adapter_tronlink.TronLinkAdapter(),
|
|
3454
3451
|
new import_tronwallet_adapter_ledger.LedgerAdapter({ accountNumber: 2 }),
|
|
@@ -3478,7 +3475,7 @@ var WalletProvider3 = ({ children, networkOption }) => {
|
|
|
3478
3475
|
adapters[0].switchChain("0x2b6653dc");
|
|
3479
3476
|
}
|
|
3480
3477
|
};
|
|
3481
|
-
return /* @__PURE__ */
|
|
3478
|
+
return /* @__PURE__ */ import_react53.default.createElement(
|
|
3482
3479
|
import_tronwallet_adapter_react_hooks.WalletProvider,
|
|
3483
3480
|
{
|
|
3484
3481
|
adapters,
|
|
@@ -3492,7 +3489,7 @@ var WalletProvider3 = ({ children, networkOption }) => {
|
|
|
3492
3489
|
var WalletProvider_default3 = WalletProvider3;
|
|
3493
3490
|
|
|
3494
3491
|
// plugins/tron/core/hooks/useGetTrxBalance.tsx
|
|
3495
|
-
var
|
|
3492
|
+
var import_react54 = require("react");
|
|
3496
3493
|
var import_react_redux12 = require("react-redux");
|
|
3497
3494
|
var import_react_query10 = require("@tanstack/react-query");
|
|
3498
3495
|
|
|
@@ -3531,7 +3528,7 @@ function useGetTronBalance() {
|
|
|
3531
3528
|
const networkOption = (0, import_react_redux12.useSelector)(selectNetworkOption);
|
|
3532
3529
|
const { wallet } = (0, import_tronwallet_adapter_react_hooks2.useWallet)();
|
|
3533
3530
|
const sourceNetwork = (0, import_react_redux12.useSelector)(selectSourceChain);
|
|
3534
|
-
const tronWeb = (0,
|
|
3531
|
+
const tronWeb = (0, import_react54.useMemo)(
|
|
3535
3532
|
() => networkOption === "testnet" /* testnet */ ? tronWebTestnet : tronWebMainnet,
|
|
3536
3533
|
[networkOption]
|
|
3537
3534
|
);
|
|
@@ -3560,7 +3557,7 @@ var import_react_query12 = require("@tanstack/react-query");
|
|
|
3560
3557
|
var import_react_redux13 = require("react-redux");
|
|
3561
3558
|
var import_tronweb4 = require("tronweb");
|
|
3562
3559
|
var import_tronwallet_adapter_react_hooks3 = require("@tronweb3/tronwallet-adapter-react-hooks");
|
|
3563
|
-
var
|
|
3560
|
+
var import_react55 = require("react");
|
|
3564
3561
|
var useTronProvider = () => {
|
|
3565
3562
|
const { externalProvider } = useKimaContext();
|
|
3566
3563
|
const networkOption = (0, import_react_redux13.useSelector)(selectNetworkOption);
|
|
@@ -3571,7 +3568,7 @@ var useTronProvider = () => {
|
|
|
3571
3568
|
signMessage: internalSignMessage
|
|
3572
3569
|
} = (0, import_tronwallet_adapter_react_hooks3.useWallet)();
|
|
3573
3570
|
const isTronProvider2 = sourceChain.shortName === "TRX" && externalProvider?.type === "tron" && externalProvider.provider.tronWeb instanceof import_tronweb4.TronWeb && typeof externalProvider.signer === "string";
|
|
3574
|
-
const tronWeb = (0,
|
|
3571
|
+
const tronWeb = (0, import_react55.useMemo)(() => {
|
|
3575
3572
|
if (isTronProvider2)
|
|
3576
3573
|
return externalProvider.provider.tronWeb;
|
|
3577
3574
|
return networkOption === "mainnet" ? tronWebMainnet : tronWebTestnet;
|
|
@@ -3959,7 +3956,7 @@ function useTronAllowance() {
|
|
|
3959
3956
|
}
|
|
3960
3957
|
|
|
3961
3958
|
// plugins/tron/core/hooks/useIsWalletReady.tsx
|
|
3962
|
-
var
|
|
3959
|
+
var import_react56 = require("react");
|
|
3963
3960
|
var import_tronwallet_adapter_react_hooks4 = require("@tronweb3/tronwallet-adapter-react-hooks");
|
|
3964
3961
|
var import_react_redux16 = require("react-redux");
|
|
3965
3962
|
var import_react_redux17 = require("react-redux");
|
|
@@ -3974,7 +3971,7 @@ function useIsWalletReady3() {
|
|
|
3974
3971
|
const sourceChain = (0, import_react_redux17.useSelector)(selectSourceChain);
|
|
3975
3972
|
const { externalProvider } = useKimaContext();
|
|
3976
3973
|
const { address: internalTronAddress } = (0, import_tronwallet_adapter_react_hooks4.useWallet)();
|
|
3977
|
-
(0,
|
|
3974
|
+
(0, import_react56.useEffect)(() => {
|
|
3978
3975
|
if (sourceChain.shortName !== "TRX") return;
|
|
3979
3976
|
if (mode === "light" /* light */) {
|
|
3980
3977
|
dispatch(setSourceAddress(lightDemoAccounts.TRX));
|
|
@@ -3982,7 +3979,7 @@ function useIsWalletReady3() {
|
|
|
3982
3979
|
}
|
|
3983
3980
|
internalTronAddress && dispatch(setSourceAddress(internalTronAddress));
|
|
3984
3981
|
}, [mode, internalTronAddress, sourceChain]);
|
|
3985
|
-
return (0,
|
|
3982
|
+
return (0, import_react56.useMemo)(() => {
|
|
3986
3983
|
if (mode === "light" /* light */)
|
|
3987
3984
|
return createWalletStatus2(
|
|
3988
3985
|
true,
|
|
@@ -4036,7 +4033,7 @@ var TronPlugin = class extends PluginBase {
|
|
|
4036
4033
|
networkOption,
|
|
4037
4034
|
walletConnectProjectId
|
|
4038
4035
|
}) => {
|
|
4039
|
-
return /* @__PURE__ */
|
|
4036
|
+
return /* @__PURE__ */ import_react57.default.createElement(
|
|
4040
4037
|
WalletProvider_default3,
|
|
4041
4038
|
{
|
|
4042
4039
|
networkOption,
|
|
@@ -4050,22 +4047,20 @@ var tronPlugin = new TronPlugin(store);
|
|
|
4050
4047
|
var tron_default = tronPlugin;
|
|
4051
4048
|
|
|
4052
4049
|
// plugins/credit-card/index.tsx
|
|
4053
|
-
var
|
|
4050
|
+
var import_react59 = __toESM(require("react"), 1);
|
|
4054
4051
|
|
|
4055
4052
|
// plugins/credit-card/core/hooks/useIsProviderReady.tsx
|
|
4056
4053
|
var import_react_redux18 = require("react-redux");
|
|
4057
|
-
var
|
|
4054
|
+
var import_react58 = require("react");
|
|
4058
4055
|
var useIsProviderReady = () => {
|
|
4059
|
-
const [isReady, setIsReady] = (0,
|
|
4056
|
+
const [isReady, setIsReady] = (0, import_react58.useState)(false);
|
|
4060
4057
|
const dispatch = (0, import_react_redux18.useDispatch)();
|
|
4061
4058
|
const sourceChain = (0, import_react_redux18.useSelector)(selectSourceChain);
|
|
4062
|
-
(0,
|
|
4063
|
-
if (sourceChain.
|
|
4064
|
-
|
|
4065
|
-
|
|
4066
|
-
|
|
4067
|
-
setIsReady(true);
|
|
4068
|
-
}
|
|
4059
|
+
(0, import_react58.useEffect)(() => {
|
|
4060
|
+
if (!sourceChain || sourceChain.shortName !== "CC") return;
|
|
4061
|
+
logger_default.debug("CC:useIsProviderReady: dispatching changes from fiat...");
|
|
4062
|
+
dispatch(setSourceAddress(""));
|
|
4063
|
+
setIsReady(true);
|
|
4069
4064
|
}, [sourceChain]);
|
|
4070
4065
|
return { isReady, statusMessage: "", walletAddres: "" };
|
|
4071
4066
|
};
|
|
@@ -4108,7 +4103,7 @@ var CreditCardPlugin = class extends PluginBase {
|
|
|
4108
4103
|
return chain.compatibility === "CC";
|
|
4109
4104
|
};
|
|
4110
4105
|
Provider = ({ children }) => {
|
|
4111
|
-
return /* @__PURE__ */
|
|
4106
|
+
return /* @__PURE__ */ import_react59.default.createElement(import_react59.default.Fragment, null, children);
|
|
4112
4107
|
};
|
|
4113
4108
|
};
|
|
4114
4109
|
var creditCardPlugin = new CreditCardPlugin(store);
|
|
@@ -4118,18 +4113,18 @@ var credit_card_default = creditCardPlugin;
|
|
|
4118
4113
|
initializePlugins([evm_default, solana_default, tron_default, credit_card_default]);
|
|
4119
4114
|
|
|
4120
4115
|
// src/KimaProvider.tsx
|
|
4121
|
-
var
|
|
4116
|
+
var import_web310 = require("@solana/web3.js");
|
|
4122
4117
|
var import_ethers5 = require("ethers");
|
|
4123
4118
|
var queryClient = new import_react_query13.QueryClient();
|
|
4124
|
-
var KimaContext = (0,
|
|
4119
|
+
var KimaContext = (0, import_react60.createContext)(void 0);
|
|
4125
4120
|
var useKimaContext = () => {
|
|
4126
|
-
const context = (0,
|
|
4121
|
+
const context = (0, import_react60.useContext)(KimaContext);
|
|
4127
4122
|
if (!context) {
|
|
4128
4123
|
throw new Error("useKimaContext must be used within a KimaProvider");
|
|
4129
4124
|
}
|
|
4130
4125
|
return context;
|
|
4131
4126
|
};
|
|
4132
|
-
var InternalKimaProvider =
|
|
4127
|
+
var InternalKimaProvider = React49.memo(
|
|
4133
4128
|
({ kimaBackendUrl, walletConnectProjectId, children, logLevel }) => {
|
|
4134
4129
|
const { data: envOptions, isLoading } = useGetEnvOptions({
|
|
4135
4130
|
kimaBackendUrl
|
|
@@ -4138,12 +4133,12 @@ var InternalKimaProvider = React81.memo(
|
|
|
4138
4133
|
logger_default.debug("internalkimaprovider: isLoading: ", isLoading);
|
|
4139
4134
|
const plugins = (0, import_react_redux19.useSelector)(selectAllPlugins, (prev, next) => prev === next);
|
|
4140
4135
|
logger_default.debug("Registered Plugins:", plugins);
|
|
4141
|
-
const WrappedProviders = (0,
|
|
4136
|
+
const WrappedProviders = (0, import_react60.useMemo)(() => {
|
|
4142
4137
|
return plugins.reduce((acc, pluginData) => {
|
|
4143
4138
|
const plugin = getPluginProvider(pluginData.id);
|
|
4144
4139
|
if (plugin) {
|
|
4145
4140
|
const { Provider: Provider3 } = plugin;
|
|
4146
|
-
return /* @__PURE__ */
|
|
4141
|
+
return /* @__PURE__ */ React49.createElement(
|
|
4147
4142
|
Provider3,
|
|
4148
4143
|
{
|
|
4149
4144
|
key: plugin.data.id,
|
|
@@ -4157,12 +4152,12 @@ var InternalKimaProvider = React81.memo(
|
|
|
4157
4152
|
return acc;
|
|
4158
4153
|
}, children);
|
|
4159
4154
|
}, [plugins, walletConnectProjectId, envOptions, isLoading]);
|
|
4160
|
-
return /* @__PURE__ */
|
|
4155
|
+
return /* @__PURE__ */ React49.createElement(React49.Fragment, null, WrappedProviders);
|
|
4161
4156
|
}
|
|
4162
4157
|
);
|
|
4163
4158
|
var KimaProvider = ({
|
|
4164
4159
|
walletConnectProjectId,
|
|
4165
|
-
children = /* @__PURE__ */
|
|
4160
|
+
children = /* @__PURE__ */ React49.createElement(React49.Fragment, null),
|
|
4166
4161
|
externalProvider,
|
|
4167
4162
|
kimaBackendUrl = "http://localhost:3001",
|
|
4168
4163
|
logLevel,
|
|
@@ -4182,7 +4177,7 @@ var KimaProvider = ({
|
|
|
4182
4177
|
validExternalProvider = externalProvider;
|
|
4183
4178
|
if (externalProvider.type === "evm" && externalProvider.signer instanceof import_ethers5.JsonRpcSigner)
|
|
4184
4179
|
sourceAddress = externalProvider.signer.address;
|
|
4185
|
-
if (externalProvider.type === "solana" && externalProvider.signer instanceof
|
|
4180
|
+
if (externalProvider.type === "solana" && externalProvider.signer instanceof import_web310.PublicKey)
|
|
4186
4181
|
sourceAddress = externalProvider.signer.toBase58();
|
|
4187
4182
|
if (externalProvider.type === "tron" && typeof externalProvider.signer === "string")
|
|
4188
4183
|
sourceAddress = externalProvider.signer;
|
|
@@ -4197,7 +4192,7 @@ var KimaProvider = ({
|
|
|
4197
4192
|
errorHandler,
|
|
4198
4193
|
switchChainHandler
|
|
4199
4194
|
};
|
|
4200
|
-
return /* @__PURE__ */
|
|
4195
|
+
return /* @__PURE__ */ React49.createElement(import_react_query13.QueryClientProvider, { client: queryClient }, /* @__PURE__ */ React49.createElement(import_react_redux19.Provider, { store }, /* @__PURE__ */ React49.createElement(KimaContext.Provider, { value: kimaContext }, /* @__PURE__ */ React49.createElement(
|
|
4201
4196
|
InternalKimaProvider,
|
|
4202
4197
|
{
|
|
4203
4198
|
kimaBackendUrl,
|
|
@@ -4209,17 +4204,17 @@ var KimaProvider = ({
|
|
|
4209
4204
|
var KimaProvider_default = KimaProvider;
|
|
4210
4205
|
|
|
4211
4206
|
// src/components/KimaTransactionWidget.tsx
|
|
4212
|
-
var
|
|
4207
|
+
var import_react109 = __toESM(require("react"), 1);
|
|
4213
4208
|
|
|
4214
4209
|
// src/components/KimaWidgetWrapper.tsx
|
|
4215
|
-
var
|
|
4210
|
+
var import_react106 = __toESM(require("react"), 1);
|
|
4216
4211
|
var import_react_redux58 = require("react-redux");
|
|
4217
4212
|
|
|
4218
4213
|
// src/components/TransactionWidget.tsx
|
|
4219
|
-
var
|
|
4214
|
+
var import_react90 = __toESM(require("react"), 1);
|
|
4220
4215
|
|
|
4221
4216
|
// src/components/reusable/Progressbar.tsx
|
|
4222
|
-
var
|
|
4217
|
+
var import_react61 = __toESM(require("react"), 1);
|
|
4223
4218
|
var import_react_redux20 = require("react-redux");
|
|
4224
4219
|
var stepInfo = [
|
|
4225
4220
|
{
|
|
@@ -4240,12 +4235,12 @@ var stepInfo = [
|
|
|
4240
4235
|
];
|
|
4241
4236
|
var Progressbar = ({ step, errorStep, setFocus, loadingStep }) => {
|
|
4242
4237
|
const theme = (0, import_react_redux20.useSelector)(selectTheme);
|
|
4243
|
-
return /* @__PURE__ */
|
|
4238
|
+
return /* @__PURE__ */ import_react61.default.createElement("div", { className: "kima-progressbar" }, /* @__PURE__ */ import_react61.default.createElement(
|
|
4244
4239
|
"div",
|
|
4245
4240
|
{
|
|
4246
4241
|
className: `value step-${step * 100 / 4}`
|
|
4247
4242
|
}
|
|
4248
|
-
), /* @__PURE__ */
|
|
4243
|
+
), /* @__PURE__ */ import_react61.default.createElement("div", { className: "step-indicators" }, stepInfo.map((item, index) => /* @__PURE__ */ import_react61.default.createElement(
|
|
4249
4244
|
"div",
|
|
4250
4245
|
{
|
|
4251
4246
|
key: item.title,
|
|
@@ -4256,14 +4251,14 @@ var Progressbar = ({ step, errorStep, setFocus, loadingStep }) => {
|
|
|
4256
4251
|
if (index < 4) setFocus(index);
|
|
4257
4252
|
}
|
|
4258
4253
|
},
|
|
4259
|
-
/* @__PURE__ */
|
|
4254
|
+
/* @__PURE__ */ import_react61.default.createElement("div", { className: "step-info" }, step < index && /* @__PURE__ */ import_react61.default.createElement(Lock_default, null), step >= index ? index === loadingStep ? /* @__PURE__ */ import_react61.default.createElement(Loader_default, { className: "loader" }) : index === errorStep ? /* @__PURE__ */ import_react61.default.createElement(Warning_default, null) : /* @__PURE__ */ import_react61.default.createElement(Check_default, null) : null, /* @__PURE__ */ import_react61.default.createElement("span", null, item.title))
|
|
4260
4255
|
))));
|
|
4261
4256
|
};
|
|
4262
4257
|
var Progressbar_default = Progressbar;
|
|
4263
4258
|
|
|
4264
4259
|
// src/components/reusable/ExternalLink.tsx
|
|
4265
|
-
var
|
|
4266
|
-
var ExternalLink = ({ to, children, className, rest }) => /* @__PURE__ */
|
|
4260
|
+
var import_react62 = __toESM(require("react"), 1);
|
|
4261
|
+
var ExternalLink = ({ to, children, className, rest }) => /* @__PURE__ */ import_react62.default.createElement(
|
|
4267
4262
|
"a",
|
|
4268
4263
|
{
|
|
4269
4264
|
className,
|
|
@@ -4277,20 +4272,20 @@ var ExternalLink = ({ to, children, className, rest }) => /* @__PURE__ */ import
|
|
|
4277
4272
|
var ExternalLink_default = ExternalLink;
|
|
4278
4273
|
|
|
4279
4274
|
// src/components/reusable/NetworkLabel.tsx
|
|
4280
|
-
var
|
|
4275
|
+
var import_react63 = __toESM(require("react"), 1);
|
|
4281
4276
|
var import_react_redux21 = require("react-redux");
|
|
4282
4277
|
|
|
4283
4278
|
// src/components/reusable/PrimaryButton.tsx
|
|
4284
|
-
var
|
|
4279
|
+
var import_react66 = __toESM(require("react"), 1);
|
|
4285
4280
|
|
|
4286
4281
|
// src/assets/loading/180-ring.tsx
|
|
4287
|
-
var
|
|
4282
|
+
var import_react64 = __toESM(require("react"), 1);
|
|
4288
4283
|
var Loading180Ring = ({
|
|
4289
4284
|
width = 24,
|
|
4290
4285
|
height = 24,
|
|
4291
4286
|
fill = "white"
|
|
4292
4287
|
}) => {
|
|
4293
|
-
return /* @__PURE__ */
|
|
4288
|
+
return /* @__PURE__ */ import_react64.default.createElement(
|
|
4294
4289
|
"svg",
|
|
4295
4290
|
{
|
|
4296
4291
|
width,
|
|
@@ -4299,7 +4294,7 @@ var Loading180Ring = ({
|
|
|
4299
4294
|
viewBox: "0 0 24 24",
|
|
4300
4295
|
xmlns: "http://www.w3.org/2000/svg"
|
|
4301
4296
|
},
|
|
4302
|
-
/* @__PURE__ */
|
|
4297
|
+
/* @__PURE__ */ import_react64.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_react64.default.createElement(
|
|
4303
4298
|
"animateTransform",
|
|
4304
4299
|
{
|
|
4305
4300
|
attributeName: "transform",
|
|
@@ -4314,7 +4309,7 @@ var Loading180Ring = ({
|
|
|
4314
4309
|
var ring_default = Loading180Ring;
|
|
4315
4310
|
|
|
4316
4311
|
// src/assets/loading/6-dots-scale.tsx
|
|
4317
|
-
var
|
|
4312
|
+
var import_react65 = __toESM(require("react"), 1);
|
|
4318
4313
|
|
|
4319
4314
|
// src/components/reusable/PrimaryButton.tsx
|
|
4320
4315
|
var PrimaryButton = ({
|
|
@@ -4325,7 +4320,7 @@ var PrimaryButton = ({
|
|
|
4325
4320
|
disabled = false,
|
|
4326
4321
|
ref
|
|
4327
4322
|
}) => {
|
|
4328
|
-
return /* @__PURE__ */
|
|
4323
|
+
return /* @__PURE__ */ import_react66.default.createElement("div", { className: "primary-button-wrapper" }, /* @__PURE__ */ import_react66.default.createElement(
|
|
4329
4324
|
"button",
|
|
4330
4325
|
{
|
|
4331
4326
|
className: `primary-button ${className}`,
|
|
@@ -4333,14 +4328,14 @@ var PrimaryButton = ({
|
|
|
4333
4328
|
ref,
|
|
4334
4329
|
disabled
|
|
4335
4330
|
},
|
|
4336
|
-
isLoading && /* @__PURE__ */
|
|
4331
|
+
isLoading && /* @__PURE__ */ import_react66.default.createElement("div", { className: "loading-indicator" }, /* @__PURE__ */ import_react66.default.createElement(ring_default, { width: 24, height: 24, fill: "white" })),
|
|
4337
4332
|
children
|
|
4338
4333
|
));
|
|
4339
4334
|
};
|
|
4340
4335
|
var PrimaryButton_default = PrimaryButton;
|
|
4341
4336
|
|
|
4342
4337
|
// src/components/reusable/SecondaryButton.tsx
|
|
4343
|
-
var
|
|
4338
|
+
var import_react67 = __toESM(require("react"), 1);
|
|
4344
4339
|
var SecondaryButton = ({
|
|
4345
4340
|
className,
|
|
4346
4341
|
clickHandler,
|
|
@@ -4349,7 +4344,7 @@ var SecondaryButton = ({
|
|
|
4349
4344
|
style,
|
|
4350
4345
|
disabled = false,
|
|
4351
4346
|
isLoading
|
|
4352
|
-
}) => /* @__PURE__ */
|
|
4347
|
+
}) => /* @__PURE__ */ import_react67.default.createElement(
|
|
4353
4348
|
"button",
|
|
4354
4349
|
{
|
|
4355
4350
|
className: `secondary-button ${className} ${theme}`,
|
|
@@ -4357,26 +4352,26 @@ var SecondaryButton = ({
|
|
|
4357
4352
|
...style,
|
|
4358
4353
|
disabled
|
|
4359
4354
|
},
|
|
4360
|
-
isLoading && /* @__PURE__ */
|
|
4355
|
+
isLoading && /* @__PURE__ */ import_react67.default.createElement("div", { className: "loading-indicator" }, /* @__PURE__ */ import_react67.default.createElement(ring_default, { width: 24, height: 24, fill: "black" })),
|
|
4361
4356
|
children
|
|
4362
4357
|
);
|
|
4363
4358
|
var SecondaryButton_default = SecondaryButton;
|
|
4364
4359
|
|
|
4365
4360
|
// src/components/reusable/Dropdown.tsx
|
|
4366
|
-
var
|
|
4361
|
+
var import_react68 = __toESM(require("react"), 1);
|
|
4367
4362
|
var import_react_redux22 = require("react-redux");
|
|
4368
4363
|
var import_react_redux23 = require("react-redux");
|
|
4369
4364
|
|
|
4370
4365
|
// src/components/reusable/WalletButton.tsx
|
|
4371
|
-
var
|
|
4366
|
+
var import_react74 = __toESM(require("react"), 1);
|
|
4372
4367
|
var import_react_redux25 = require("react-redux");
|
|
4373
4368
|
|
|
4374
4369
|
// src/hooks/useGetCurrentPlugin.tsx
|
|
4375
|
-
var
|
|
4370
|
+
var import_react70 = require("react");
|
|
4376
4371
|
var import_react_redux24 = require("react-redux");
|
|
4377
4372
|
|
|
4378
4373
|
// plugins/default/index.tsx
|
|
4379
|
-
var
|
|
4374
|
+
var import_react69 = __toESM(require("react"), 1);
|
|
4380
4375
|
var DefaultPlugin = class extends PluginBase {
|
|
4381
4376
|
constructor(store2) {
|
|
4382
4377
|
super({
|
|
@@ -4411,7 +4406,7 @@ var DefaultPlugin = class extends PluginBase {
|
|
|
4411
4406
|
networkOption,
|
|
4412
4407
|
walletConnectProjectId
|
|
4413
4408
|
}) => {
|
|
4414
|
-
return /* @__PURE__ */
|
|
4409
|
+
return /* @__PURE__ */ import_react69.default.createElement("div", null, children);
|
|
4415
4410
|
};
|
|
4416
4411
|
};
|
|
4417
4412
|
var defaultPlugin = new DefaultPlugin(store);
|
|
@@ -4419,10 +4414,10 @@ var default_default = defaultPlugin;
|
|
|
4419
4414
|
|
|
4420
4415
|
// src/hooks/useGetCurrentPlugin.tsx
|
|
4421
4416
|
var useGetCurrentPlugin = () => {
|
|
4422
|
-
const [currentPlugin, setCurrentPlugin] = (0,
|
|
4417
|
+
const [currentPlugin, setCurrentPlugin] = (0, import_react70.useState)(default_default);
|
|
4423
4418
|
const isIndexed = (0, import_react_redux24.useSelector)(selectPluginIsIndexed);
|
|
4424
4419
|
const sourceChain = (0, import_react_redux24.useSelector)(selectSourceChain);
|
|
4425
|
-
(0,
|
|
4420
|
+
(0, import_react70.useEffect)(() => {
|
|
4426
4421
|
if (!isIndexed) return;
|
|
4427
4422
|
const plugin = getPlugin(sourceChain.shortName);
|
|
4428
4423
|
if (plugin) setCurrentPlugin(plugin);
|
|
@@ -4481,13 +4476,13 @@ function useBalance4() {
|
|
|
4481
4476
|
}
|
|
4482
4477
|
|
|
4483
4478
|
// src/hooks/useWidth.tsx
|
|
4484
|
-
var
|
|
4479
|
+
var import_react71 = require("react");
|
|
4485
4480
|
var useWidth = () => {
|
|
4486
|
-
const [width, setWidth] = (0,
|
|
4481
|
+
const [width, setWidth] = (0, import_react71.useState)(0);
|
|
4487
4482
|
const updateWidth = (width2) => {
|
|
4488
4483
|
setWidth(width2);
|
|
4489
4484
|
};
|
|
4490
|
-
(0,
|
|
4485
|
+
(0, import_react71.useEffect)(() => {
|
|
4491
4486
|
const handleResize = () => {
|
|
4492
4487
|
setWidth(window.innerWidth);
|
|
4493
4488
|
};
|
|
@@ -4501,19 +4496,19 @@ var useWidth_default = useWidth;
|
|
|
4501
4496
|
// src/components/reusable/WalletButton.tsx
|
|
4502
4497
|
var import_wallet_adapter_react6 = require("@solana/wallet-adapter-react");
|
|
4503
4498
|
var import_tronwallet_adapter_react_hooks6 = require("@tronweb3/tronwallet-adapter-react-hooks");
|
|
4504
|
-
var
|
|
4499
|
+
var import_react75 = require("@reown/appkit/react");
|
|
4505
4500
|
|
|
4506
4501
|
// src/components/reusable/CopyButton.tsx
|
|
4507
|
-
var
|
|
4502
|
+
var import_react72 = __toESM(require("react"), 1);
|
|
4508
4503
|
var CopyButton = ({ text }) => {
|
|
4509
|
-
const [copyClicked, setCopyClicked] = (0,
|
|
4510
|
-
(0,
|
|
4504
|
+
const [copyClicked, setCopyClicked] = (0, import_react72.useState)(false);
|
|
4505
|
+
(0, import_react72.useEffect)(() => {
|
|
4511
4506
|
if (!copyClicked) return;
|
|
4512
4507
|
setTimeout(() => {
|
|
4513
4508
|
setCopyClicked(false);
|
|
4514
4509
|
}, 2e3);
|
|
4515
4510
|
}, [copyClicked]);
|
|
4516
|
-
return /* @__PURE__ */
|
|
4511
|
+
return /* @__PURE__ */ import_react72.default.createElement(
|
|
4517
4512
|
"span",
|
|
4518
4513
|
{
|
|
4519
4514
|
className: "copy-btn",
|
|
@@ -4522,7 +4517,7 @@ var CopyButton = ({ text }) => {
|
|
|
4522
4517
|
navigator.clipboard.writeText(text);
|
|
4523
4518
|
}
|
|
4524
4519
|
},
|
|
4525
|
-
copyClicked ? /* @__PURE__ */
|
|
4520
|
+
copyClicked ? /* @__PURE__ */ import_react72.default.createElement(Check_default, null) : /* @__PURE__ */ import_react72.default.createElement(Copy_default, null)
|
|
4526
4521
|
);
|
|
4527
4522
|
};
|
|
4528
4523
|
var CopyButton_default = CopyButton;
|
|
@@ -4608,9 +4603,9 @@ var isAddressCompatible = (address, shortName) => {
|
|
|
4608
4603
|
};
|
|
4609
4604
|
|
|
4610
4605
|
// src/hooks/useHideActivityTab.tsx
|
|
4611
|
-
var
|
|
4606
|
+
var import_react73 = require("react");
|
|
4612
4607
|
function useHideWuiListItem(isModalOpen) {
|
|
4613
|
-
(0,
|
|
4608
|
+
(0, import_react73.useEffect)(() => {
|
|
4614
4609
|
const modalSelector = "w3m-modal";
|
|
4615
4610
|
let observer;
|
|
4616
4611
|
const hideFirstWuiListItem = (parent) => {
|
|
@@ -4688,14 +4683,14 @@ var WalletButton = ({
|
|
|
4688
4683
|
/*, connectBitcoinWallet*/
|
|
4689
4684
|
} = useIsWalletReady4();
|
|
4690
4685
|
const { balance, decimals } = useBalance4();
|
|
4691
|
-
const { open } = (0,
|
|
4692
|
-
const { open: isModalOpen } = (0,
|
|
4686
|
+
const { open } = (0, import_react75.useAppKit)();
|
|
4687
|
+
const { open: isModalOpen } = (0, import_react75.useAppKitState)();
|
|
4693
4688
|
const { width, updateWidth } = useWidth_default();
|
|
4694
4689
|
useHideActivityTab_default(isModalOpen);
|
|
4695
4690
|
const { kimaBackendUrl } = useKimaContext();
|
|
4696
4691
|
const { data: envOptions } = useGetEnvOptions({ kimaBackendUrl });
|
|
4697
4692
|
const networkOption = envOptions?.env || "testnet" /* testnet */;
|
|
4698
|
-
(0,
|
|
4693
|
+
(0, import_react74.useEffect)(() => {
|
|
4699
4694
|
logger_default.debug("WalletBalance:", {
|
|
4700
4695
|
balance,
|
|
4701
4696
|
connectedAddress,
|
|
@@ -4704,7 +4699,7 @@ var WalletButton = ({
|
|
|
4704
4699
|
externalProvider
|
|
4705
4700
|
});
|
|
4706
4701
|
}, [balance, connectedAddress, isReady, externalProvider, networkOption]);
|
|
4707
|
-
(0,
|
|
4702
|
+
(0, import_react74.useEffect)(() => {
|
|
4708
4703
|
if (width === 0) {
|
|
4709
4704
|
updateWidth(window.innerWidth);
|
|
4710
4705
|
}
|
|
@@ -4732,29 +4727,29 @@ var WalletButton = ({
|
|
|
4732
4727
|
logger_default.error("Failed to open AppKitModal", error);
|
|
4733
4728
|
}
|
|
4734
4729
|
};
|
|
4735
|
-
const errorMessage = (0,
|
|
4730
|
+
const errorMessage = (0, import_react74.useMemo)(() => {
|
|
4736
4731
|
if (!isReady) return statusMessage;
|
|
4737
4732
|
if (compliantOption && sourceCompliant !== null && !sourceCompliant?.isCompliant)
|
|
4738
4733
|
return `Source address has ${sourceCompliant?.results?.[0].result?.risk_score} risk`;
|
|
4739
4734
|
return "";
|
|
4740
4735
|
}, [isReady, statusMessage, sourceCompliant, compliantOption]);
|
|
4741
|
-
const isConnected = (0,
|
|
4736
|
+
const isConnected = (0, import_react74.useMemo)(() => {
|
|
4742
4737
|
return isReady && !initialSelection;
|
|
4743
4738
|
}, [isReady, initialSelection]);
|
|
4744
|
-
(0,
|
|
4739
|
+
(0, import_react74.useEffect)(() => {
|
|
4745
4740
|
if (!isReady) {
|
|
4746
4741
|
dispatch(setSourceAddress(""));
|
|
4747
4742
|
return;
|
|
4748
4743
|
}
|
|
4749
4744
|
dispatch(setSourceAddress(connectedAddress));
|
|
4750
4745
|
}, [isReady]);
|
|
4751
|
-
return /* @__PURE__ */
|
|
4746
|
+
return /* @__PURE__ */ import_react74.default.createElement(
|
|
4752
4747
|
"div",
|
|
4753
4748
|
{
|
|
4754
4749
|
className: `wallet-button ${isConnected ? "connected" : "disconnected"} ${theme.colorMode} ${errorBelow ? "error-below" : ""}`,
|
|
4755
4750
|
"data-testid": "connect-wallet-btn"
|
|
4756
4751
|
},
|
|
4757
|
-
/* @__PURE__ */
|
|
4752
|
+
/* @__PURE__ */ import_react74.default.createElement("div", { className: "info-wrapper" }, /* @__PURE__ */ import_react74.default.createElement(
|
|
4758
4753
|
"button",
|
|
4759
4754
|
{
|
|
4760
4755
|
className: `${isConnected ? "connected" : "disconnected"} ${width < 640 && "shortened"} ${theme.colorMode}`,
|
|
@@ -4764,42 +4759,78 @@ var WalletButton = ({
|
|
|
4764
4759
|
isConnected && !placeholder ? width >= 640 ? `${connectedAddress || ""}` : getShortenedAddress(connectedAddress || "") : "",
|
|
4765
4760
|
!isConnected && mode === "light" /* light */ && "Select Network to Load Account",
|
|
4766
4761
|
!isConnected && mode !== "light" /* light */ && initialSelection && "Select Network to Connect",
|
|
4767
|
-
!isConnected && mode !== "light" /* light */ && !initialSelection && /* @__PURE__ */
|
|
4762
|
+
!isConnected && mode !== "light" /* light */ && !initialSelection && /* @__PURE__ */ import_react74.default.createElement(Wallet_default, null),
|
|
4768
4763
|
!isConnected && mode !== "light" /* light */ && !initialSelection && "Connect Wallet"
|
|
4769
|
-
), isConnected && !placeholder && /* @__PURE__ */
|
|
4770
|
-
isConnected && !placeholder && balance !== void 0 && decimals !== void 0 ? /* @__PURE__ */
|
|
4764
|
+
), isConnected && !placeholder && /* @__PURE__ */ import_react74.default.createElement(CopyButton_default, { text: connectedAddress })),
|
|
4765
|
+
isConnected && !placeholder && balance !== void 0 && decimals !== void 0 ? /* @__PURE__ */ import_react74.default.createElement("p", { className: "balance-info" }, formatUSD(bigIntToNumber({ value: balance, decimals })), " ", selectedCoin, " available") : null
|
|
4771
4766
|
);
|
|
4772
4767
|
};
|
|
4773
4768
|
var WalletButton_default = WalletButton;
|
|
4774
4769
|
|
|
4775
4770
|
// src/components/reusable/CoinDropdown.tsx
|
|
4776
|
-
var
|
|
4771
|
+
var import_react78 = __toESM(require("react"), 1);
|
|
4777
4772
|
var import_react_redux28 = require("react-redux");
|
|
4778
4773
|
var import_react_redux29 = require("react-redux");
|
|
4779
4774
|
|
|
4780
4775
|
// src/hooks/useCurrencyOptions.tsx
|
|
4781
|
-
var
|
|
4776
|
+
var import_react76 = require("react");
|
|
4782
4777
|
var import_react_redux26 = require("react-redux");
|
|
4783
4778
|
var import_react_redux27 = require("react-redux");
|
|
4779
|
+
var emptyTokenList = { tokenList: [] };
|
|
4784
4780
|
function useCurrencyOptions(isSourceChain) {
|
|
4785
4781
|
const dispatch = (0, import_react_redux27.useDispatch)();
|
|
4786
4782
|
const mode = (0, import_react_redux26.useSelector)(selectMode);
|
|
4787
4783
|
const sourceChain = (0, import_react_redux26.useSelector)(selectSourceChain);
|
|
4784
|
+
const sourceSymbol = (0, import_react_redux26.useSelector)(selectSourceCurrency);
|
|
4788
4785
|
const targetChain = (0, import_react_redux26.useSelector)(selectTargetChain);
|
|
4789
|
-
const chain = isSourceChain ? sourceChain : targetChain;
|
|
4790
4786
|
const transactionOption = (0, import_react_redux26.useSelector)(selectTransactionOption);
|
|
4791
|
-
const
|
|
4792
|
-
|
|
4793
|
-
|
|
4794
|
-
|
|
4795
|
-
|
|
4796
|
-
|
|
4797
|
-
|
|
4787
|
+
const output = (0, import_react76.useMemo)(() => {
|
|
4788
|
+
const chain = isSourceChain ? sourceChain : targetChain;
|
|
4789
|
+
const location = isSourceChain ? "origin" : "target";
|
|
4790
|
+
if (!chain) {
|
|
4791
|
+
logger_default.debug(`useCurrencyOptions(${location}): no chain selected`, {
|
|
4792
|
+
chain,
|
|
4793
|
+
sourceSymbol
|
|
4794
|
+
});
|
|
4795
|
+
return emptyTokenList;
|
|
4796
|
+
}
|
|
4797
|
+
if (isSourceChain) return { tokenList: chain.supportedTokens };
|
|
4798
|
+
if (!sourceSymbol) {
|
|
4799
|
+
logger_default.debug(`useCurrencyOptions(${location}): no sourceSymbol selected`, {
|
|
4800
|
+
chain,
|
|
4801
|
+
sourceSymbol
|
|
4802
|
+
});
|
|
4803
|
+
return { tokenList: chain.supportedTokens };
|
|
4804
|
+
}
|
|
4805
|
+
const sourceToken = sourceChain.supportedTokens.find(
|
|
4806
|
+
(t) => t.symbol === sourceSymbol
|
|
4807
|
+
);
|
|
4808
|
+
if (!sourceToken) {
|
|
4809
|
+
logger_default.debug(
|
|
4810
|
+
`useCurrencyOptions(${location}): source token ${sourceSymbol ?? "undefined"} not found`,
|
|
4811
|
+
{ sourceChain, sourceSymbol }
|
|
4812
|
+
);
|
|
4813
|
+
return { tokenList: chain.supportedTokens };
|
|
4814
|
+
}
|
|
4815
|
+
const tokenList2 = chain.supportedTokens.filter(
|
|
4816
|
+
(token) => token.peggedTo === sourceToken.peggedTo
|
|
4817
|
+
);
|
|
4818
|
+
logger_default.debug(`useCurrencyOptions(${location}): updated token list `, {
|
|
4819
|
+
tokenList: tokenList2,
|
|
4820
|
+
sourceSymbol,
|
|
4821
|
+
sourceToken,
|
|
4822
|
+
chain
|
|
4823
|
+
});
|
|
4824
|
+
return { tokenList: tokenList2 };
|
|
4825
|
+
}, [sourceChain, sourceSymbol, targetChain, isSourceChain]);
|
|
4798
4826
|
const { tokenList } = output;
|
|
4799
|
-
(0,
|
|
4827
|
+
(0, import_react76.useEffect)(() => {
|
|
4800
4828
|
if (!tokenList.length) return;
|
|
4801
4829
|
if (mode === "payment" /* payment */ && !isSourceChain) return;
|
|
4802
4830
|
const [firstToken] = tokenList;
|
|
4831
|
+
logger_default.debug(
|
|
4832
|
+
`useCurrencyOptions: seting default currency to ${firstToken.symbol}`
|
|
4833
|
+
);
|
|
4803
4834
|
if (isSourceChain) {
|
|
4804
4835
|
dispatch(setSourceCurrency(firstToken.symbol));
|
|
4805
4836
|
} else {
|
|
@@ -4810,16 +4841,19 @@ function useCurrencyOptions(isSourceChain) {
|
|
|
4810
4841
|
}
|
|
4811
4842
|
|
|
4812
4843
|
// src/components/reusable/TokenIcon.tsx
|
|
4813
|
-
var
|
|
4844
|
+
var import_react77 = __toESM(require("react"), 1);
|
|
4814
4845
|
var COIN_LIST = {
|
|
4846
|
+
EUR: KEUR_default,
|
|
4847
|
+
EURC: EURC_default,
|
|
4848
|
+
EURK: KEUR_default,
|
|
4849
|
+
HONEY: Honey_default,
|
|
4815
4850
|
KEUR: KEUR_default,
|
|
4816
4851
|
KIMAUSD: USDK_default,
|
|
4817
4852
|
USDC: USDC_default,
|
|
4818
4853
|
USDK: USDK_default,
|
|
4819
|
-
USDT: USDT_default,
|
|
4820
|
-
WBTC: BTC_default,
|
|
4821
4854
|
USD: USD_default,
|
|
4822
|
-
|
|
4855
|
+
USDT: USDT_default,
|
|
4856
|
+
WBTC: BTC_default
|
|
4823
4857
|
};
|
|
4824
4858
|
function TokenIcon({
|
|
4825
4859
|
symbol,
|
|
@@ -4832,22 +4866,22 @@ function TokenIcon({
|
|
|
4832
4866
|
logger_default.warn(`Token icon not found for symbol: ${symbol}`);
|
|
4833
4867
|
return null;
|
|
4834
4868
|
}
|
|
4835
|
-
return /* @__PURE__ */
|
|
4869
|
+
return /* @__PURE__ */ import_react77.default.createElement("div", { className: "icon-wrapper" }, /* @__PURE__ */ import_react77.default.createElement(Icon, { width, height }));
|
|
4836
4870
|
}
|
|
4837
4871
|
|
|
4838
4872
|
// src/components/reusable/CoinDropdown.tsx
|
|
4839
4873
|
var CoinDropdown = ({
|
|
4840
4874
|
isSourceChain = true
|
|
4841
4875
|
}) => {
|
|
4842
|
-
const ref = (0,
|
|
4876
|
+
const ref = (0, import_react78.useRef)();
|
|
4843
4877
|
const dispatch = (0, import_react_redux29.useDispatch)();
|
|
4844
|
-
const [collapsed, setCollapsed] = (0,
|
|
4878
|
+
const [collapsed, setCollapsed] = (0, import_react78.useState)(true);
|
|
4845
4879
|
const sourceCurrency = (0, import_react_redux28.useSelector)(selectSourceCurrency);
|
|
4846
4880
|
const targetCurrency = (0, import_react_redux28.useSelector)(selectTargetCurrency);
|
|
4847
4881
|
const { tokenList } = useCurrencyOptions(isSourceChain);
|
|
4848
4882
|
const theme = (0, import_react_redux28.useSelector)(selectTheme);
|
|
4849
4883
|
const tokenSymbol = isSourceChain ? sourceCurrency : targetCurrency;
|
|
4850
|
-
(0,
|
|
4884
|
+
(0, import_react78.useEffect)(() => {
|
|
4851
4885
|
const bodyMouseDowntHandler = (e) => {
|
|
4852
4886
|
if (ref?.current && !ref.current.contains(e.target)) {
|
|
4853
4887
|
setCollapsed(true);
|
|
@@ -4865,67 +4899,69 @@ var CoinDropdown = ({
|
|
|
4865
4899
|
dispatch(setTargetCurrency(symbol));
|
|
4866
4900
|
}
|
|
4867
4901
|
};
|
|
4868
|
-
return /* @__PURE__ */
|
|
4902
|
+
return /* @__PURE__ */ import_react78.default.createElement(
|
|
4869
4903
|
"div",
|
|
4870
4904
|
{
|
|
4871
4905
|
className: `coin-dropdown ${theme.colorMode} ${collapsed ? "collapsed" : "toggled"}`,
|
|
4872
4906
|
onClick: () => setCollapsed((prev) => !prev),
|
|
4873
4907
|
ref
|
|
4874
4908
|
},
|
|
4875
|
-
/* @__PURE__ */
|
|
4876
|
-
/* @__PURE__ */
|
|
4909
|
+
/* @__PURE__ */ import_react78.default.createElement("div", { className: "coin-wrapper" }, /* @__PURE__ */ import_react78.default.createElement(TokenIcon, { symbol: tokenSymbol, width: 24, height: 24 }), /* @__PURE__ */ import_react78.default.createElement("span", { className: "coin" }, tokenSymbol)),
|
|
4910
|
+
/* @__PURE__ */ import_react78.default.createElement(
|
|
4877
4911
|
"div",
|
|
4878
4912
|
{
|
|
4879
4913
|
className: `coin-menu ${theme.colorMode} ${collapsed ? "collapsed" : "toggled"}`
|
|
4880
4914
|
},
|
|
4881
|
-
tokenList.map((token) => /* @__PURE__ */
|
|
4915
|
+
tokenList.map((token) => /* @__PURE__ */ import_react78.default.createElement(
|
|
4882
4916
|
"div",
|
|
4883
4917
|
{
|
|
4884
4918
|
className: `coin-item ${theme.colorMode}`,
|
|
4885
4919
|
key: token.symbol,
|
|
4886
4920
|
onClick: () => handleDropdownItemClick(token.symbol)
|
|
4887
4921
|
},
|
|
4888
|
-
/* @__PURE__ */
|
|
4889
|
-
/* @__PURE__ */
|
|
4922
|
+
/* @__PURE__ */ import_react78.default.createElement(TokenIcon, { symbol: token.symbol, width: 24, height: 24 }),
|
|
4923
|
+
/* @__PURE__ */ import_react78.default.createElement("p", null, token.symbol)
|
|
4890
4924
|
))
|
|
4891
4925
|
),
|
|
4892
|
-
/* @__PURE__ */
|
|
4926
|
+
/* @__PURE__ */ import_react78.default.createElement("div", { className: `dropdown-icon ${collapsed ? "toggled" : "collapsed"}` }, /* @__PURE__ */ import_react78.default.createElement(Arrow_default, { fill: "none" }))
|
|
4893
4927
|
);
|
|
4894
4928
|
};
|
|
4895
4929
|
var CoinDropdown_default = CoinDropdown;
|
|
4896
4930
|
|
|
4897
4931
|
// src/components/reusable/ConfirmDetails.tsx
|
|
4898
|
-
var
|
|
4932
|
+
var import_react81 = __toESM(require("react"), 1);
|
|
4899
4933
|
var import_react_redux31 = require("react-redux");
|
|
4900
4934
|
|
|
4901
4935
|
// src/components/reusable/ChainIcon.tsx
|
|
4902
|
-
var
|
|
4936
|
+
var import_react79 = __toESM(require("react"), 1);
|
|
4903
4937
|
var chainIcons = {
|
|
4904
|
-
|
|
4905
|
-
POL: Polygon_default,
|
|
4938
|
+
ARB: Arbitrum_default,
|
|
4906
4939
|
AVX: Avalanche_default,
|
|
4940
|
+
BANK: Bank_default,
|
|
4907
4941
|
BASE: Base_default,
|
|
4942
|
+
BERA: Bera_default,
|
|
4908
4943
|
BSC: BSC_default,
|
|
4909
4944
|
BTC: BTC_default,
|
|
4910
|
-
|
|
4945
|
+
CC: CreditCard_default,
|
|
4946
|
+
CFX: CFX_default,
|
|
4947
|
+
ETH: Ethereum_default,
|
|
4948
|
+
FIAT: Bank_default,
|
|
4949
|
+
POL: Polygon_default,
|
|
4911
4950
|
OPT: Optimism_default,
|
|
4912
|
-
TRX: Tron_default,
|
|
4913
4951
|
SOL: Solana_default,
|
|
4914
|
-
|
|
4915
|
-
BERA: Bera_default,
|
|
4916
|
-
CC: CreditCard_default
|
|
4952
|
+
TRX: Tron_default
|
|
4917
4953
|
};
|
|
4918
4954
|
function ChainIcon({ symbol }) {
|
|
4919
4955
|
const Icon = symbol === "FIAT" ? chainIcons["CC"] : chainIcons[symbol];
|
|
4920
4956
|
if (!Icon) {
|
|
4921
|
-
logger_default.warn(`Chain icon not found for symbol: ${symbol}`);
|
|
4922
|
-
return /* @__PURE__ */
|
|
4957
|
+
if (symbol) logger_default.warn(`Chain icon not found for symbol: ${symbol}`);
|
|
4958
|
+
return /* @__PURE__ */ import_react79.default.createElement("div", null);
|
|
4923
4959
|
}
|
|
4924
|
-
return /* @__PURE__ */
|
|
4960
|
+
return /* @__PURE__ */ import_react79.default.createElement("div", { className: "icon" }, /* @__PURE__ */ import_react79.default.createElement(Icon, null));
|
|
4925
4961
|
}
|
|
4926
4962
|
|
|
4927
4963
|
// src/components/reusable/FeeDeductionRadioButtons.tsx
|
|
4928
|
-
var
|
|
4964
|
+
var import_react80 = __toESM(require("react"), 1);
|
|
4929
4965
|
var import_react_redux30 = require("react-redux");
|
|
4930
4966
|
var FeeDeductionRadioButtons = ({ disabled }) => {
|
|
4931
4967
|
const dispatch = (0, import_react_redux30.useDispatch)();
|
|
@@ -4942,7 +4978,7 @@ var FeeDeductionRadioButtons = ({ disabled }) => {
|
|
|
4942
4978
|
const handleChange = (value) => {
|
|
4943
4979
|
dispatch(setFeeDeduct(value));
|
|
4944
4980
|
};
|
|
4945
|
-
return /* @__PURE__ */
|
|
4981
|
+
return /* @__PURE__ */ import_react80.default.createElement("div", { className: `fee-deduction-radio-container ${theme.colorMode}` }, /* @__PURE__ */ import_react80.default.createElement("div", { className: "fee-options" }, Number(amount) - totalFee > 0 && /* @__PURE__ */ import_react80.default.createElement("label", { className: `fee-option ${disabled ? "disabled" : ""}` }, /* @__PURE__ */ import_react80.default.createElement(
|
|
4946
4982
|
"input",
|
|
4947
4983
|
{
|
|
4948
4984
|
type: "radio",
|
|
@@ -4951,11 +4987,11 @@ var FeeDeductionRadioButtons = ({ disabled }) => {
|
|
|
4951
4987
|
disabled,
|
|
4952
4988
|
onChange: () => handleChange(true)
|
|
4953
4989
|
}
|
|
4954
|
-
), /* @__PURE__ */
|
|
4990
|
+
), /* @__PURE__ */ import_react80.default.createElement("span", { className: `radio-label ${theme.colorMode}` }, `Pay $${formatterFloat.format(
|
|
4955
4991
|
Number(amount)
|
|
4956
4992
|
)} ${sourceCurrency} in ${sourceNetwork.name} to receive $${formatterFloat.format(
|
|
4957
4993
|
Number(amount) - totalFee
|
|
4958
|
-
)} ${targetCurrency} in ${targetNetwork.name}`)), /* @__PURE__ */
|
|
4994
|
+
)} ${targetCurrency} in ${targetNetwork.name}`)), /* @__PURE__ */ import_react80.default.createElement("label", { className: `fee-option ${disabled ? "disabled" : ""}` }, /* @__PURE__ */ import_react80.default.createElement(
|
|
4959
4995
|
"input",
|
|
4960
4996
|
{
|
|
4961
4997
|
type: "radio",
|
|
@@ -4964,7 +5000,7 @@ var FeeDeductionRadioButtons = ({ disabled }) => {
|
|
|
4964
5000
|
disabled,
|
|
4965
5001
|
onChange: () => handleChange(false)
|
|
4966
5002
|
}
|
|
4967
|
-
), /* @__PURE__ */
|
|
5003
|
+
), /* @__PURE__ */ import_react80.default.createElement("span", { className: `radio-label ${theme.colorMode}` }, `Pay $${formatterFloat.format(
|
|
4968
5004
|
Number(amount) + totalFee
|
|
4969
5005
|
)} ${sourceCurrency} in ${sourceNetwork.name} to receive $${formatterFloat.format(
|
|
4970
5006
|
Number(amount)
|
|
@@ -4990,14 +5026,10 @@ var ConfirmDetails = ({
|
|
|
4990
5026
|
const bankDetails = (0, import_react_redux31.useSelector)(selectBankDetails);
|
|
4991
5027
|
const signature = (0, import_react_redux31.useSelector)(selectSignature);
|
|
4992
5028
|
const networkOptions3 = (0, import_react_redux31.useSelector)(selectNetworks);
|
|
4993
|
-
const [feeCollapsed, setFeeCollapsed] = (0,
|
|
5029
|
+
const [feeCollapsed, setFeeCollapsed] = (0, import_react81.useState)(true);
|
|
4994
5030
|
const transactionOption = (0, import_react_redux31.useSelector)(selectTransactionOption);
|
|
4995
5031
|
const { connectedAddress } = useIsWalletReady4();
|
|
4996
|
-
const
|
|
4997
|
-
() => networkOptions3.filter((network) => network.id === originNetwork.id)[0],
|
|
4998
|
-
[networkOptions3, originNetwork]
|
|
4999
|
-
);
|
|
5000
|
-
const targetNetworkOption = (0, import_react113.useMemo)(
|
|
5032
|
+
const targetNetworkOption = (0, import_react81.useMemo)(
|
|
5001
5033
|
() => networkOptions3.filter(
|
|
5002
5034
|
(network) => network.shortName === (mode === "payment" /* payment */ ? transactionOption?.targetChain : targetNetwork.shortName)
|
|
5003
5035
|
)[0],
|
|
@@ -5006,16 +5038,16 @@ var ConfirmDetails = ({
|
|
|
5006
5038
|
const sourceCurrency = (0, import_react_redux31.useSelector)(selectSourceCurrency);
|
|
5007
5039
|
const targetCurrency = (0, import_react_redux31.useSelector)(selectTargetCurrency);
|
|
5008
5040
|
const { width, updateWidth } = useWidth_default();
|
|
5009
|
-
(0,
|
|
5041
|
+
(0, import_react81.useEffect)(() => {
|
|
5010
5042
|
width === 0 && updateWidth(window.innerWidth);
|
|
5011
5043
|
}, []);
|
|
5012
|
-
return /* @__PURE__ */
|
|
5044
|
+
return /* @__PURE__ */ import_react81.default.createElement("div", { className: `confirm-details ${theme.colorMode}` }, /* @__PURE__ */ import_react81.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_react81.default.createElement("div", null, /* @__PURE__ */ import_react81.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: "label" }, "IBAN:"), /* @__PURE__ */ import_react81.default.createElement("span", { className: `kima-card-network-label ${theme.colorMode}` }, /* @__PURE__ */ import_react81.default.createElement(ChainIcon, { symbol: originNetwork?.shortName }), "FIAT"), /* @__PURE__ */ import_react81.default.createElement("p", null, "ES6621000418401234567891")), /* @__PURE__ */ import_react81.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: "label" }, "Recipient:"), /* @__PURE__ */ import_react81.default.createElement("p", null, "Kima Sandbox")), /* @__PURE__ */ import_react81.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: "label" }, "BIC:"), /* @__PURE__ */ import_react81.default.createElement("p", null, "CAIXESBBXXX")), /* @__PURE__ */ import_react81.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: "label" }, "Description:"), /* @__PURE__ */ import_react81.default.createElement("p", { className: "signature" }, signature))) : /* @__PURE__ */ import_react81.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: "label" }, "Source ", originNetwork.shortName !== "CC" && "wallet", ":"), /* @__PURE__ */ import_react81.default.createElement("div", { className: "network-details" }, /* @__PURE__ */ import_react81.default.createElement("div", { className: "kima-card-network-container" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: `kima-card-network-label ${theme.colorMode}` }, /* @__PURE__ */ import_react81.default.createElement(ChainIcon, { symbol: originNetwork?.shortName }), originNetwork.name)), originNetwork.shortName !== "CC" && /* @__PURE__ */ import_react81.default.createElement("p", { className: theme.colorMode }, dAppOption === "LPDrain" /* LPDrain */ ? targetAddress : connectedAddress))), /* @__PURE__ */ import_react81.default.createElement("div", { className: "detail-item amount" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: "amount-container" }, /* @__PURE__ */ import_react81.default.createElement("div", { className: "amount-details" }, /* @__PURE__ */ import_react81.default.createElement("span", null, "Amount to Transfer "), /* @__PURE__ */ import_react81.default.createElement("div", { className: "coin-details" }, /* @__PURE__ */ import_react81.default.createElement("p", null, formatBigInt(txValues.allowanceAmount), " ", sourceCurrency))), /* @__PURE__ */ import_react81.default.createElement("div", { className: "amount-details" }, /* @__PURE__ */ import_react81.default.createElement("span", null, "Total Fees"), /* @__PURE__ */ import_react81.default.createElement(
|
|
5013
5045
|
"div",
|
|
5014
5046
|
{
|
|
5015
5047
|
className: "fee-collapse",
|
|
5016
5048
|
onClick: () => setFeeCollapsed(!feeCollapsed)
|
|
5017
5049
|
},
|
|
5018
|
-
/* @__PURE__ */
|
|
5050
|
+
/* @__PURE__ */ import_react81.default.createElement(
|
|
5019
5051
|
MiniArrow_default,
|
|
5020
5052
|
{
|
|
5021
5053
|
width: 15,
|
|
@@ -5026,16 +5058,16 @@ var ConfirmDetails = ({
|
|
|
5026
5058
|
}
|
|
5027
5059
|
}
|
|
5028
5060
|
),
|
|
5029
|
-
/* @__PURE__ */
|
|
5030
|
-
)), /* @__PURE__ */
|
|
5061
|
+
/* @__PURE__ */ import_react81.default.createElement("span", { className: "service-fee" }, formatBigInt(totalFee), " ", sourceCurrency)
|
|
5062
|
+
)), /* @__PURE__ */ import_react81.default.createElement("div", { className: `fee-breakdown ${feeCollapsed ? "collapsed" : ""}` }, /* @__PURE__ */ import_react81.default.createElement("div", { className: "amount-details" }, /* @__PURE__ */ import_react81.default.createElement("span", null, originNetwork.shortName === "CC" ? "Credit Card Processing Fee" : `Source Network Fee (${originNetwork.shortName})`), /* @__PURE__ */ import_react81.default.createElement("span", { className: "service-fee" }, formatBigInt(sourceFee), " ", sourceCurrency)), /* @__PURE__ */ import_react81.default.createElement("div", { className: "amount-details" }, /* @__PURE__ */ import_react81.default.createElement("span", null, "Target Network Fee (", targetNetwork.shortName, ")"), /* @__PURE__ */ import_react81.default.createElement("span", { className: "service-fee" }, formatBigInt(targetFee), " ", targetCurrency)), /* @__PURE__ */ import_react81.default.createElement("div", { className: "amount-details" }, /* @__PURE__ */ import_react81.default.createElement("span", null, "KIMA Service Fee"), /* @__PURE__ */ import_react81.default.createElement("span", { className: "service-fee" }, formatBigInt(kimaFee), " ", sourceCurrency))), /* @__PURE__ */ import_react81.default.createElement("div", { className: "amount-details" }, /* @__PURE__ */ import_react81.default.createElement("span", null, "Target Transfer Amount"), /* @__PURE__ */ import_react81.default.createElement("span", { className: "service-fee" }, formatBigInt(txValues.submitAmount), " ", targetCurrency)))), targetNetwork.shortName === "FIAT" /* FIAT */ ? /* @__PURE__ */ import_react81.default.createElement("div", null, /* @__PURE__ */ import_react81.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: "label" }, "IBAN:"), /* @__PURE__ */ import_react81.default.createElement("p", null, bankDetails.iban), /* @__PURE__ */ import_react81.default.createElement("span", { className: `kima-card-network-label ${theme.colorMode}` }, /* @__PURE__ */ import_react81.default.createElement(ChainIcon, { symbol: targetNetworkOption?.shortName }), "FIAT")), /* @__PURE__ */ import_react81.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: "label" }, "Recipient:"), /* @__PURE__ */ import_react81.default.createElement("p", null, bankDetails.recipient))) : /* @__PURE__ */ import_react81.default.createElement("div", { className: "detail-item" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: "label" }, "Target wallet:"), /* @__PURE__ */ import_react81.default.createElement("div", { className: "network-details" }, /* @__PURE__ */ import_react81.default.createElement("div", { className: "kima-card-network-container" }, /* @__PURE__ */ import_react81.default.createElement("span", { className: `kima-card-network-label ${theme.colorMode}` }, /* @__PURE__ */ import_react81.default.createElement(ChainIcon, { symbol: targetNetworkOption?.shortName }), targetNetworkOption?.name)), /* @__PURE__ */ import_react81.default.createElement("p", { className: theme.colorMode }, mode === "light" /* light */ ? targetNetwork.shortName === "SOL" ? lightDemoAccounts.SOL : targetNetwork.shortName === "TRX" ? lightDemoAccounts.TRX : lightDemoAccounts.EVM : dAppOption === "LPDrain" /* LPDrain */ ? connectedAddress : targetAddress))), mode === "bridge" /* bridge */ && BigInt(totalFee.value) > BigInt(0) ? (
|
|
5031
5063
|
// <FeeDeductionSlider />
|
|
5032
|
-
/* @__PURE__ */
|
|
5064
|
+
/* @__PURE__ */ import_react81.default.createElement(FeeDeductionRadioButtons_default, { disabled: feeOptionDisabled })
|
|
5033
5065
|
) : null);
|
|
5034
5066
|
};
|
|
5035
5067
|
var ConfirmDetails_default = ConfirmDetails;
|
|
5036
5068
|
|
|
5037
5069
|
// src/components/reusable/AddressInput.tsx
|
|
5038
|
-
var
|
|
5070
|
+
var import_react82 = __toESM(require("react"), 1);
|
|
5039
5071
|
var import_react_redux32 = require("react-redux");
|
|
5040
5072
|
var AddressInput = ({
|
|
5041
5073
|
theme,
|
|
@@ -5048,7 +5080,7 @@ var AddressInput = ({
|
|
|
5048
5080
|
const targetChain = (0, import_react_redux32.useSelector)(selectTargetChain);
|
|
5049
5081
|
const { connectedAddress: sourceAddress, isReady } = useIsWalletReady4();
|
|
5050
5082
|
const targetAddress = (0, import_react_redux32.useSelector)(selectTargetAddress);
|
|
5051
|
-
(0,
|
|
5083
|
+
(0, import_react82.useEffect)(() => {
|
|
5052
5084
|
if (mode === "payment" /* payment */) return;
|
|
5053
5085
|
if (mode === "light" /* light */ && !initialSelection) {
|
|
5054
5086
|
if (isEVMChain(targetChain.shortName))
|
|
@@ -5074,7 +5106,7 @@ var AddressInput = ({
|
|
|
5074
5106
|
mode,
|
|
5075
5107
|
dispatch
|
|
5076
5108
|
]);
|
|
5077
|
-
return /* @__PURE__ */
|
|
5109
|
+
return /* @__PURE__ */ import_react82.default.createElement(
|
|
5078
5110
|
"input",
|
|
5079
5111
|
{
|
|
5080
5112
|
className: `kima-address-input ${theme}`,
|
|
@@ -5089,11 +5121,11 @@ var AddressInput = ({
|
|
|
5089
5121
|
var AddressInput_default = AddressInput;
|
|
5090
5122
|
|
|
5091
5123
|
// src/components/reusable/CustomCheckbox.tsx
|
|
5092
|
-
var
|
|
5124
|
+
var import_react83 = __toESM(require("react"), 1);
|
|
5093
5125
|
var import_react_redux33 = require("react-redux");
|
|
5094
5126
|
|
|
5095
5127
|
// src/components/reusable/StepBox.tsx
|
|
5096
|
-
var
|
|
5128
|
+
var import_react84 = __toESM(require("react"), 1);
|
|
5097
5129
|
var import_react_redux34 = require("react-redux");
|
|
5098
5130
|
var stepInfo2 = [
|
|
5099
5131
|
{
|
|
@@ -5117,69 +5149,69 @@ var StepBox = ({ step, errorStep, loadingStep, data }) => {
|
|
|
5117
5149
|
const explorerUrl = (0, import_react_redux34.useSelector)(selectKimaExplorer);
|
|
5118
5150
|
const networkOption = (0, import_react_redux34.useSelector)(selectNetworkOption);
|
|
5119
5151
|
const networks = (0, import_react_redux34.useSelector)(selectNetworks);
|
|
5120
|
-
const sourceChain = (0,
|
|
5152
|
+
const sourceChain = (0, import_react84.useMemo)(() => {
|
|
5121
5153
|
const sourceKey = data?.sourceChain === "FIAT" ? "CC" : data?.sourceChain;
|
|
5122
5154
|
return networks.find((network) => network.shortName === sourceKey);
|
|
5123
5155
|
}, [data, networks]);
|
|
5124
|
-
const targetChain = (0,
|
|
5156
|
+
const targetChain = (0, import_react84.useMemo)(
|
|
5125
5157
|
() => networks.find((network) => network.shortName === data?.targetChain),
|
|
5126
5158
|
[data, networks]
|
|
5127
5159
|
);
|
|
5128
|
-
return /* @__PURE__ */
|
|
5160
|
+
return /* @__PURE__ */ import_react84.default.createElement("div", { className: "kima-stepbox" }, /* @__PURE__ */ import_react84.default.createElement("div", { className: `content-wrapper ${theme.colorMode}` }, stepInfo2.map((item, index) => /* @__PURE__ */ import_react84.default.createElement("div", { key: item.title, className: "step-item" }, /* @__PURE__ */ import_react84.default.createElement(
|
|
5129
5161
|
"div",
|
|
5130
5162
|
{
|
|
5131
5163
|
className: `info-item
|
|
5132
5164
|
${step >= index ? index === loadingStep ? "active" : index === errorStep ? "error" : "completed" : ""}
|
|
5133
5165
|
${step < index && "locked"} ${theme.colorMode}`
|
|
5134
5166
|
},
|
|
5135
|
-
step < index && /* @__PURE__ */
|
|
5136
|
-
step >= index ? index === loadingStep ? /* @__PURE__ */
|
|
5137
|
-
/* @__PURE__ */
|
|
5138
|
-
), index === 0 && data?.kimaTxHash ? /* @__PURE__ */
|
|
5167
|
+
step < index && /* @__PURE__ */ import_react84.default.createElement(Lock_default, null),
|
|
5168
|
+
step >= index ? index === loadingStep ? /* @__PURE__ */ import_react84.default.createElement(Loader_default, { className: "loader" }) : index === errorStep ? /* @__PURE__ */ import_react84.default.createElement(Warning_default, null) : /* @__PURE__ */ import_react84.default.createElement(Check_default, null) : null,
|
|
5169
|
+
/* @__PURE__ */ import_react84.default.createElement("p", null, item.title)
|
|
5170
|
+
), index === 0 && data?.kimaTxHash ? /* @__PURE__ */ import_react84.default.createElement("div", { className: `info-item ${theme.colorMode}` }, /* @__PURE__ */ import_react84.default.createElement("div", { className: "icon" }, /* @__PURE__ */ import_react84.default.createElement(USDK_default, { width: 30, height: 30 })), /* @__PURE__ */ import_react84.default.createElement("p", { className: "chain-name" }, "Kima TX Hash:"), /* @__PURE__ */ import_react84.default.createElement("p", null, /* @__PURE__ */ import_react84.default.createElement(
|
|
5139
5171
|
ExternalLink_default,
|
|
5140
5172
|
{
|
|
5141
5173
|
to: `${explorerUrl}/transactions/?tx=${data?.kimaTxHash}`
|
|
5142
5174
|
},
|
|
5143
5175
|
getShortenedAddress(data?.kimaTxHash || "")
|
|
5144
|
-
), /* @__PURE__ */
|
|
5176
|
+
), /* @__PURE__ */ import_react84.default.createElement(CopyButton_default, { text: data?.kimaTxHash }))) : null, index === 1 && data?.tssPullHash && sourceChain?.shortName !== "CC" ? /* @__PURE__ */ import_react84.default.createElement(
|
|
5145
5177
|
"div",
|
|
5146
5178
|
{
|
|
5147
5179
|
className: `info-item ${theme.colorMode} source-chain ${step >= 3 ? "paid" : ""}`
|
|
5148
5180
|
},
|
|
5149
|
-
/* @__PURE__ */
|
|
5150
|
-
/* @__PURE__ */
|
|
5151
|
-
/* @__PURE__ */
|
|
5181
|
+
/* @__PURE__ */ import_react84.default.createElement(ChainIcon, { symbol: data.sourceChain }),
|
|
5182
|
+
/* @__PURE__ */ import_react84.default.createElement("p", { className: "chain-name" }, sourceChain?.name, " TX Hash:"),
|
|
5183
|
+
/* @__PURE__ */ import_react84.default.createElement("p", null, /* @__PURE__ */ import_react84.default.createElement(
|
|
5152
5184
|
ExternalLink_default,
|
|
5153
5185
|
{
|
|
5154
5186
|
to: `${sourceChain?.blockExplorers?.default.url}/${data?.sourceChain === "TRX" /* TRON */ ? "#/transaction" : "tx"}/${data?.tssPullHash}${data?.sourceChain === "SOL" /* SOLANA */ && networkOption === "testnet" /* testnet */ ? "?cluster=devnet" : ""}`
|
|
5155
5187
|
},
|
|
5156
5188
|
getShortenedAddress(data?.tssPullHash || "")
|
|
5157
|
-
), /* @__PURE__ */
|
|
5158
|
-
) : null, index === 3 && data?.tssRefundHash ? /* @__PURE__ */
|
|
5189
|
+
), /* @__PURE__ */ import_react84.default.createElement(CopyButton_default, { text: data?.tssPullHash || "" }))
|
|
5190
|
+
) : null, index === 3 && data?.tssRefundHash ? /* @__PURE__ */ import_react84.default.createElement("div", { className: `info-item ${theme.colorMode} target-chain` }, /* @__PURE__ */ import_react84.default.createElement(ChainIcon, { symbol: data.sourceChain }), /* @__PURE__ */ import_react84.default.createElement("p", { className: "chain-name" }, sourceChain?.name, " TX Hash:"), /* @__PURE__ */ import_react84.default.createElement("p", null, /* @__PURE__ */ import_react84.default.createElement(
|
|
5159
5191
|
ExternalLink_default,
|
|
5160
5192
|
{
|
|
5161
5193
|
to: `${sourceChain?.blockExplorers?.default.url}/${data?.sourceChain === "TRX" /* TRON */ ? "#/transaction" : "tx"}/${data?.tssRefundHash}${data?.sourceChain === "SOL" /* SOLANA */ && networkOption === "testnet" /* testnet */ ? "?cluster=devnet" : ""}`
|
|
5162
5194
|
},
|
|
5163
5195
|
getShortenedAddress(data?.tssRefundHash || "")
|
|
5164
|
-
), /* @__PURE__ */
|
|
5196
|
+
), /* @__PURE__ */ import_react84.default.createElement(CopyButton_default, { text: data?.tssRefundHash || "" }))) : null, index === 3 && data?.tssReleaseHash ? /* @__PURE__ */ import_react84.default.createElement("div", { className: `info-item ${theme.colorMode} target-chain` }, /* @__PURE__ */ import_react84.default.createElement(ChainIcon, { symbol: data.targetChain }), /* @__PURE__ */ import_react84.default.createElement("p", { className: "chain-name" }, targetChain?.name, " TX Hash:"), /* @__PURE__ */ import_react84.default.createElement("p", null, /* @__PURE__ */ import_react84.default.createElement(
|
|
5165
5197
|
ExternalLink_default,
|
|
5166
5198
|
{
|
|
5167
5199
|
to: `${targetChain?.blockExplorers?.default.url}/${data?.targetChain === "TRX" /* TRON */ ? "#/transaction" : "tx"}/${data?.tssReleaseHash}${data?.targetChain === "SOL" /* SOLANA */ && networkOption === "testnet" /* testnet */ ? "?cluster=devnet" : ""}`
|
|
5168
5200
|
},
|
|
5169
5201
|
getShortenedAddress(data?.tssReleaseHash || "")
|
|
5170
|
-
), /* @__PURE__ */
|
|
5202
|
+
), /* @__PURE__ */ import_react84.default.createElement(CopyButton_default, { text: data?.tssReleaseHash || "" }))) : null))));
|
|
5171
5203
|
};
|
|
5172
5204
|
var StepBox_default = StepBox;
|
|
5173
5205
|
|
|
5174
5206
|
// src/components/reusable/BankInput.tsx
|
|
5175
|
-
var
|
|
5207
|
+
var import_react85 = __toESM(require("react"), 1);
|
|
5176
5208
|
var import_react_redux35 = require("react-redux");
|
|
5177
5209
|
var import_react_redux36 = require("react-redux");
|
|
5178
5210
|
var BankInput = () => {
|
|
5179
5211
|
const dispatch = (0, import_react_redux35.useDispatch)();
|
|
5180
5212
|
const theme = (0, import_react_redux36.useSelector)(selectTheme);
|
|
5181
5213
|
const bankDetails = (0, import_react_redux36.useSelector)(selectBankDetails);
|
|
5182
|
-
return /* @__PURE__ */
|
|
5214
|
+
return /* @__PURE__ */ import_react85.default.createElement("div", { className: "bank-input" }, /* @__PURE__ */ import_react85.default.createElement("div", { className: `form-item ${theme.colorMode}` }, /* @__PURE__ */ import_react85.default.createElement("span", { className: "label" }, "IBAN:"), /* @__PURE__ */ import_react85.default.createElement(
|
|
5183
5215
|
"input",
|
|
5184
5216
|
{
|
|
5185
5217
|
className: "kima-address-input",
|
|
@@ -5187,7 +5219,7 @@ var BankInput = () => {
|
|
|
5187
5219
|
value: bankDetails.iban,
|
|
5188
5220
|
onChange: (e) => dispatch(setBankDetails({ ...bankDetails, iban: e.target.value }))
|
|
5189
5221
|
}
|
|
5190
|
-
)), /* @__PURE__ */
|
|
5222
|
+
)), /* @__PURE__ */ import_react85.default.createElement("div", { className: `form-item ${theme.colorMode}` }, /* @__PURE__ */ import_react85.default.createElement("span", { className: "label" }, "Recipient:"), /* @__PURE__ */ import_react85.default.createElement(
|
|
5191
5223
|
"input",
|
|
5192
5224
|
{
|
|
5193
5225
|
className: "kima-address-input",
|
|
@@ -5202,7 +5234,7 @@ var BankInput = () => {
|
|
|
5202
5234
|
var BankInput_default = BankInput;
|
|
5203
5235
|
|
|
5204
5236
|
// src/components/reusable/TxButton.tsx
|
|
5205
|
-
var
|
|
5237
|
+
var import_react86 = __toESM(require("react"), 1);
|
|
5206
5238
|
var import_react_redux37 = require("react-redux");
|
|
5207
5239
|
var import_react_redux38 = require("react-redux");
|
|
5208
5240
|
var TxButton = ({ theme }) => {
|
|
@@ -5211,14 +5243,14 @@ var TxButton = ({ theme }) => {
|
|
|
5211
5243
|
dispatch(setPendingTxPopup(true));
|
|
5212
5244
|
};
|
|
5213
5245
|
const txCount = (0, import_react_redux38.useSelector)(selectPendingTxs);
|
|
5214
|
-
return /* @__PURE__ */
|
|
5246
|
+
return /* @__PURE__ */ import_react86.default.createElement(
|
|
5215
5247
|
"button",
|
|
5216
5248
|
{
|
|
5217
5249
|
className: `secondary-button tx-button ${theme.colorMode}`,
|
|
5218
5250
|
onClick: handleClick
|
|
5219
5251
|
},
|
|
5220
5252
|
txCount,
|
|
5221
|
-
/* @__PURE__ */
|
|
5253
|
+
/* @__PURE__ */ import_react86.default.createElement(
|
|
5222
5254
|
ring_default,
|
|
5223
5255
|
{
|
|
5224
5256
|
height: 16,
|
|
@@ -5237,7 +5269,7 @@ var import_react_redux43 = require("react-redux");
|
|
|
5237
5269
|
var import_react_hot_toast3 = require("react-hot-toast");
|
|
5238
5270
|
|
|
5239
5271
|
// src/hooks/useGetTxData.ts
|
|
5240
|
-
var
|
|
5272
|
+
var import_react87 = require("react");
|
|
5241
5273
|
var import_react_query14 = require("@tanstack/react-query");
|
|
5242
5274
|
|
|
5243
5275
|
// src/services/transactionApi.ts
|
|
@@ -5328,7 +5360,7 @@ var getTxData = async ({
|
|
|
5328
5360
|
// src/hooks/useGetTxData.ts
|
|
5329
5361
|
var POLLING_INTERVAL_MS = 1e3 * 10;
|
|
5330
5362
|
var useGetTxData = (txId, dAppOption, backendUrl) => {
|
|
5331
|
-
const refPollForUpdates = (0,
|
|
5363
|
+
const refPollForUpdates = (0, import_react87.useRef)(false);
|
|
5332
5364
|
const isLP = dAppOption === "LPAdd" /* LPAdd */ || dAppOption === "LPDrain" /* LPDrain */;
|
|
5333
5365
|
const validTxId = typeof txId === "number" ? txId > 0 : txId.toString().length > 0;
|
|
5334
5366
|
const result = (0, import_react_query14.useQuery)({
|
|
@@ -5345,17 +5377,17 @@ var useGetTxData = (txId, dAppOption, backendUrl) => {
|
|
|
5345
5377
|
var useGetTxData_default = useGetTxData;
|
|
5346
5378
|
|
|
5347
5379
|
// src/components/reusable/TransactionStatusMessage.tsx
|
|
5348
|
-
var
|
|
5380
|
+
var import_react88 = __toESM(require("react"), 1);
|
|
5349
5381
|
var TransactionStatusMessage = ({
|
|
5350
5382
|
isCompleted,
|
|
5351
5383
|
transactionId
|
|
5352
5384
|
}) => {
|
|
5353
|
-
return /* @__PURE__ */
|
|
5385
|
+
return /* @__PURE__ */ import_react88.default.createElement("div", { className: "transaction-status-message" }, /* @__PURE__ */ import_react88.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_react88.default.createElement("span", { className: "transaction-copy" }, /* @__PURE__ */ import_react88.default.createElement("h3", null, transactionId), /* @__PURE__ */ import_react88.default.createElement(CopyButton_default, { text: transactionId })));
|
|
5354
5386
|
};
|
|
5355
5387
|
var TransactionStatusMessage_default = TransactionStatusMessage;
|
|
5356
5388
|
|
|
5357
5389
|
// src/components/reusable/TransactionSearch.tsx
|
|
5358
|
-
var
|
|
5390
|
+
var import_react89 = __toESM(require("react"), 1);
|
|
5359
5391
|
var import_react_redux39 = require("react-redux");
|
|
5360
5392
|
var import_react_redux40 = require("react-redux");
|
|
5361
5393
|
var import_react_hot_toast2 = __toESM(require("react-hot-toast"), 1);
|
|
@@ -5363,12 +5395,12 @@ var TransactionSearch = () => {
|
|
|
5363
5395
|
const theme = (0, import_react_redux39.useSelector)(selectTheme);
|
|
5364
5396
|
const backendUrl = (0, import_react_redux39.useSelector)(selectBackendUrl);
|
|
5365
5397
|
const dispatch = (0, import_react_redux40.useDispatch)();
|
|
5366
|
-
const [transactionId, setTransactionId] = (0,
|
|
5367
|
-
const refPollForUpdates = (0,
|
|
5398
|
+
const [transactionId, setTransactionId] = (0, import_react89.useState)("");
|
|
5399
|
+
const refPollForUpdates = (0, import_react89.useRef)(false);
|
|
5368
5400
|
const handleSearch = async () => {
|
|
5369
5401
|
if (transactionId.length <= 0)
|
|
5370
5402
|
return import_react_hot_toast2.default.error("You must provide a valid transaction id", {
|
|
5371
|
-
icon: /* @__PURE__ */
|
|
5403
|
+
icon: /* @__PURE__ */ import_react89.default.createElement(Error_default, null)
|
|
5372
5404
|
});
|
|
5373
5405
|
try {
|
|
5374
5406
|
const data = await getTxData({
|
|
@@ -5385,11 +5417,11 @@ var TransactionSearch = () => {
|
|
|
5385
5417
|
logger_default.error("Error searching transaction: ", error);
|
|
5386
5418
|
return import_react_hot_toast2.default.error(
|
|
5387
5419
|
"Transaction not found. Please check for the proper transaction id.",
|
|
5388
|
-
{ icon: /* @__PURE__ */
|
|
5420
|
+
{ icon: /* @__PURE__ */ import_react89.default.createElement(Error_default, null) }
|
|
5389
5421
|
);
|
|
5390
5422
|
}
|
|
5391
5423
|
};
|
|
5392
|
-
return /* @__PURE__ */
|
|
5424
|
+
return /* @__PURE__ */ import_react89.default.createElement("div", { className: "form-item transaction-search" }, /* @__PURE__ */ import_react89.default.createElement("div", { className: "transaction-input" }, /* @__PURE__ */ import_react89.default.createElement("span", { className: "label" }, "Search Transaction:"), /* @__PURE__ */ import_react89.default.createElement(
|
|
5393
5425
|
"input",
|
|
5394
5426
|
{
|
|
5395
5427
|
className: `${theme.colorMode}`,
|
|
@@ -5399,18 +5431,18 @@ var TransactionSearch = () => {
|
|
|
5399
5431
|
onChange: (e) => setTransactionId(e.target.value),
|
|
5400
5432
|
spellCheck: false
|
|
5401
5433
|
}
|
|
5402
|
-
)), /* @__PURE__ */
|
|
5434
|
+
)), /* @__PURE__ */ import_react89.default.createElement(SecondaryButton_default, { clickHandler: handleSearch }, "Search"));
|
|
5403
5435
|
};
|
|
5404
5436
|
var TransactionSearch_default = TransactionSearch;
|
|
5405
5437
|
|
|
5406
5438
|
// src/components/TransactionWidget.tsx
|
|
5407
5439
|
var TransactionWidget = ({ theme }) => {
|
|
5408
|
-
const [step, setStep] = (0,
|
|
5409
|
-
const [focus, setFocus] = (0,
|
|
5410
|
-
const [errorStep, setErrorStep] = (0,
|
|
5411
|
-
const [errorMessage, setErrorMessage] = (0,
|
|
5412
|
-
const [loadingStep, setLoadingStep] = (0,
|
|
5413
|
-
const [minimized, setMinimized] = (0,
|
|
5440
|
+
const [step, setStep] = (0, import_react90.useState)(0);
|
|
5441
|
+
const [focus, setFocus] = (0, import_react90.useState)(-1);
|
|
5442
|
+
const [errorStep, setErrorStep] = (0, import_react90.useState)(-1);
|
|
5443
|
+
const [errorMessage, setErrorMessage] = (0, import_react90.useState)("");
|
|
5444
|
+
const [loadingStep, setLoadingStep] = (0, import_react90.useState)(-1);
|
|
5445
|
+
const [minimized, setMinimized] = (0, import_react90.useState)(false);
|
|
5414
5446
|
const dispatch = (0, import_react_redux43.useDispatch)();
|
|
5415
5447
|
const mode = (0, import_react_redux42.useSelector)(selectMode);
|
|
5416
5448
|
const feeDeduct = (0, import_react_redux42.useSelector)(selectFeeDeduct);
|
|
@@ -5428,42 +5460,42 @@ var TransactionWidget = ({ theme }) => {
|
|
|
5428
5460
|
const { successHandler, closeHandler } = useKimaContext();
|
|
5429
5461
|
const backendUrl = (0, import_react_redux42.useSelector)(selectBackendUrl);
|
|
5430
5462
|
const { data, error } = useGetTxData_default(txId, dAppOption, backendUrl);
|
|
5431
|
-
const transactionSourceChain = (0,
|
|
5463
|
+
const transactionSourceChain = (0, import_react90.useMemo)(
|
|
5432
5464
|
() => networks.find(
|
|
5433
5465
|
(network) => network.shortName === (mode === "status" /* status */ ? data?.sourceChain === "FIAT" ? "CC" : data?.sourceChain : sourceChain.shortName)
|
|
5434
5466
|
),
|
|
5435
5467
|
[data, mode, sourceChain]
|
|
5436
5468
|
);
|
|
5437
|
-
const transactionTargetChain = (0,
|
|
5469
|
+
const transactionTargetChain = (0, import_react90.useMemo)(
|
|
5438
5470
|
() => networks.find(
|
|
5439
5471
|
(network) => network.shortName === (mode === "status" /* status */ ? data?.targetChain : targetChain.shortName)
|
|
5440
5472
|
),
|
|
5441
5473
|
[data, mode, targetChain]
|
|
5442
5474
|
);
|
|
5443
|
-
const isValidTxId = (0,
|
|
5475
|
+
const isValidTxId = (0, import_react90.useMemo)(() => {
|
|
5444
5476
|
return !(!txId || typeof txId === "string" && txId.length === 0 || typeof txId === "number" && txId < 0);
|
|
5445
5477
|
}, [txId]);
|
|
5446
|
-
const isEmptyStatus = (0,
|
|
5478
|
+
const isEmptyStatus = (0, import_react90.useMemo)(() => {
|
|
5447
5479
|
if (!data) return true;
|
|
5448
5480
|
return data?.amount === "";
|
|
5449
5481
|
}, [data]);
|
|
5450
5482
|
const { data: chainData } = useChainData(backendUrl);
|
|
5451
|
-
(0,
|
|
5483
|
+
(0, import_react90.useEffect)(() => {
|
|
5452
5484
|
if (!data || data.status !== "Completed" /* COMPLETED */) return;
|
|
5453
5485
|
successHandler && successHandler({
|
|
5454
5486
|
txId
|
|
5455
5487
|
});
|
|
5456
5488
|
}, [data]);
|
|
5457
|
-
(0,
|
|
5489
|
+
(0, import_react90.useEffect)(() => {
|
|
5458
5490
|
if (error)
|
|
5459
5491
|
import_react_hot_toast3.toast.error(
|
|
5460
5492
|
"The provided transaction id is not valid, please use a different one or contact support for further assistance",
|
|
5461
5493
|
{
|
|
5462
|
-
icon: /* @__PURE__ */
|
|
5494
|
+
icon: /* @__PURE__ */ import_react90.default.createElement(Error_default, null)
|
|
5463
5495
|
}
|
|
5464
5496
|
);
|
|
5465
5497
|
}, [error]);
|
|
5466
|
-
(0,
|
|
5498
|
+
(0, import_react90.useEffect)(() => {
|
|
5467
5499
|
if (!data) {
|
|
5468
5500
|
setStep(0);
|
|
5469
5501
|
setLoadingStep(0);
|
|
@@ -5483,7 +5515,7 @@ var TransactionWidget = ({ theme }) => {
|
|
|
5483
5515
|
setErrorStep(1);
|
|
5484
5516
|
setLoadingStep(-1);
|
|
5485
5517
|
logger_default.error("transaction failed:", data.failReason);
|
|
5486
|
-
import_react_hot_toast3.toast.error("Unavailable", { icon: /* @__PURE__ */
|
|
5518
|
+
import_react_hot_toast3.toast.error("Unavailable", { icon: /* @__PURE__ */ import_react90.default.createElement(Error_default, null) });
|
|
5487
5519
|
setErrorMessage("Unavailable");
|
|
5488
5520
|
} else if (status === "Paid" /* PAID */) {
|
|
5489
5521
|
setStep(3);
|
|
@@ -5494,7 +5526,7 @@ var TransactionWidget = ({ theme }) => {
|
|
|
5494
5526
|
import_react_hot_toast3.toast.error(
|
|
5495
5527
|
"Failed to release tokens to target! Starting refund process.",
|
|
5496
5528
|
{
|
|
5497
|
-
icon: /* @__PURE__ */
|
|
5529
|
+
icon: /* @__PURE__ */ import_react90.default.createElement(Error_default, null)
|
|
5498
5530
|
}
|
|
5499
5531
|
);
|
|
5500
5532
|
setErrorMessage(
|
|
@@ -5505,7 +5537,7 @@ var TransactionWidget = ({ theme }) => {
|
|
|
5505
5537
|
setErrorStep(3);
|
|
5506
5538
|
setLoadingStep(-1);
|
|
5507
5539
|
import_react_hot_toast3.toast.error("Failed to refund tokens to source!", {
|
|
5508
|
-
icon: /* @__PURE__ */
|
|
5540
|
+
icon: /* @__PURE__ */ import_react90.default.createElement(Error_default, null)
|
|
5509
5541
|
});
|
|
5510
5542
|
setErrorMessage("Failed to refund tokens to source!");
|
|
5511
5543
|
} else if (status === "RefundCompleted" /* REFUNDCOMPLETED */) {
|
|
@@ -5513,7 +5545,7 @@ var TransactionWidget = ({ theme }) => {
|
|
|
5513
5545
|
setErrorStep(3);
|
|
5514
5546
|
setLoadingStep(-1);
|
|
5515
5547
|
import_react_hot_toast3.toast.success("Refund completed!", {
|
|
5516
|
-
icon: /* @__PURE__ */
|
|
5548
|
+
icon: /* @__PURE__ */ import_react90.default.createElement(Error_default, null)
|
|
5517
5549
|
});
|
|
5518
5550
|
setErrorMessage("Refund completed!");
|
|
5519
5551
|
} else if (status === "FailedToPay" /* FAILEDTOPAY */) {
|
|
@@ -5522,7 +5554,7 @@ var TransactionWidget = ({ theme }) => {
|
|
|
5522
5554
|
setLoadingStep(-1);
|
|
5523
5555
|
logger_default.error("transaction failed:", data.failReason);
|
|
5524
5556
|
import_react_hot_toast3.toast.error("Failed to release tokens to target!", {
|
|
5525
|
-
icon: /* @__PURE__ */
|
|
5557
|
+
icon: /* @__PURE__ */ import_react90.default.createElement(Error_default, null)
|
|
5526
5558
|
});
|
|
5527
5559
|
setErrorMessage("Failed to release tokens to target!");
|
|
5528
5560
|
} else if (status === "FailedToPull" /* FAILEDTOPULL */) {
|
|
@@ -5530,7 +5562,7 @@ var TransactionWidget = ({ theme }) => {
|
|
|
5530
5562
|
setErrorStep(1);
|
|
5531
5563
|
setLoadingStep(-1);
|
|
5532
5564
|
logger_default.error("transaction failed:", data.failReason);
|
|
5533
|
-
import_react_hot_toast3.toast.error("Failed to pull tokens from source!", { icon: /* @__PURE__ */
|
|
5565
|
+
import_react_hot_toast3.toast.error("Failed to pull tokens from source!", { icon: /* @__PURE__ */ import_react90.default.createElement(Error_default, null) });
|
|
5534
5566
|
setErrorMessage("Failed to pull tokens from source!");
|
|
5535
5567
|
} else if (status === "Completed" /* COMPLETED */) {
|
|
5536
5568
|
setStep(4);
|
|
@@ -5591,7 +5623,7 @@ var TransactionWidget = ({ theme }) => {
|
|
|
5591
5623
|
dispatch(setTxId(-1));
|
|
5592
5624
|
dispatch(setSubmitted(false));
|
|
5593
5625
|
};
|
|
5594
|
-
return /* @__PURE__ */
|
|
5626
|
+
return /* @__PURE__ */ import_react90.default.createElement(import_react_redux41.Provider, { store }, /* @__PURE__ */ import_react90.default.createElement(
|
|
5595
5627
|
"div",
|
|
5596
5628
|
{
|
|
5597
5629
|
className: `kima-card transaction-card ${theme.colorMode} ${minimized ? "minimized" : ""}`,
|
|
@@ -5599,17 +5631,17 @@ var TransactionWidget = ({ theme }) => {
|
|
|
5599
5631
|
background: theme.colorMode === "light" /* light */ ? theme.backgroundColorLight : theme.backgroundColorDark
|
|
5600
5632
|
}
|
|
5601
5633
|
},
|
|
5602
|
-
/* @__PURE__ */
|
|
5634
|
+
/* @__PURE__ */ import_react90.default.createElement("div", { className: "kima-card-header" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "topbar" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "title" }, isValidTxId && !error ? /* @__PURE__ */ import_react90.default.createElement("div", { className: "transaction-title" }, mode !== "status" /* status */ ? data?.status === "Completed" /* COMPLETED */ ? "Transferred " : "Transfering " : isEmptyStatus ? "Fetching transaction status " : data?.status === "Completed" /* COMPLETED */ ? "Transfered " : "Transfering ", mode !== "status" /* status */ ? Number(amount) !== 0 ? transactionSourceChain?.shortName === "CC" ? bigIntToNumber(txValues.allowanceAmount).toFixed(2) : formatBigInt(txValues.allowanceAmount) : "" : data?.amount || "", " ", mode !== "status" /* status */ ? `${sourceSymbol} ` : isEmptyStatus ? "" : `(${data?.sourceSymbol})`, /* @__PURE__ */ import_react90.default.createElement("div", { className: "title-icon" }, /* @__PURE__ */ import_react90.default.createElement(
|
|
5603
5635
|
ChainIcon,
|
|
5604
5636
|
{
|
|
5605
5637
|
symbol: transactionSourceChain?.shortName
|
|
5606
5638
|
}
|
|
5607
|
-
)), " ", mode !== "status" /* status */ ? `${transactionSourceChain?.name}` : isEmptyStatus ? "" : `${data?.sourceChain === "FIAT" ? "CC" : data?.sourceChain}`, " ", mode !== "status" /* status */ ? `\u2192 ` : isEmptyStatus ? "" : `\u2192 `, mode !== "status" /* status */ ? Number(amount) !== 0 ? transactionSourceChain?.shortName === "CC" ? bigIntToNumber(txValues.submitAmount).toFixed(2) : formatBigInt(txValues.submitAmount) : "" : data?.amount || "", " ", mode !== "status" /* status */ ? `${targetSymbol}${" "}` : isEmptyStatus ? "" : `${data?.targetSymbol}${" "}`, /* @__PURE__ */
|
|
5639
|
+
)), " ", mode !== "status" /* status */ ? `${transactionSourceChain?.name}` : isEmptyStatus ? "" : `${data?.sourceChain === "FIAT" ? "CC" : data?.sourceChain}`, " ", mode !== "status" /* status */ ? `\u2192 ` : isEmptyStatus ? "" : `\u2192 `, mode !== "status" /* status */ ? Number(amount) !== 0 ? transactionSourceChain?.shortName === "CC" ? bigIntToNumber(txValues.submitAmount).toFixed(2) : formatBigInt(txValues.submitAmount) : "" : data?.amount || "", " ", mode !== "status" /* status */ ? `${targetSymbol}${" "}` : isEmptyStatus ? "" : `${data?.targetSymbol}${" "}`, /* @__PURE__ */ import_react90.default.createElement("div", { className: "title-icon" }, /* @__PURE__ */ import_react90.default.createElement(
|
|
5608
5640
|
ChainIcon,
|
|
5609
5641
|
{
|
|
5610
5642
|
symbol: transactionTargetChain?.shortName
|
|
5611
5643
|
}
|
|
5612
|
-
)), " ", mode !== "status" /* status */ ? `${transactionTargetChain?.name}${" "}` : isEmptyStatus ? "" : `${data?.targetChain} ${" "}`) : /* @__PURE__ */
|
|
5644
|
+
)), " ", mode !== "status" /* status */ ? `${transactionTargetChain?.name}${" "}` : isEmptyStatus ? "" : `${data?.targetChain} ${" "}`) : /* @__PURE__ */ import_react90.default.createElement("div", null, /* @__PURE__ */ import_react90.default.createElement("h3", { className: "transaction" }, "Transaction Status"))), !minimized ? /* @__PURE__ */ import_react90.default.createElement("div", { className: "control-buttons" }, /* @__PURE__ */ import_react90.default.createElement(
|
|
5613
5645
|
"button",
|
|
5614
5646
|
{
|
|
5615
5647
|
className: "icon-button minimize",
|
|
@@ -5617,9 +5649,9 @@ var TransactionWidget = ({ theme }) => {
|
|
|
5617
5649
|
setMinimized(true);
|
|
5618
5650
|
}
|
|
5619
5651
|
},
|
|
5620
|
-
/* @__PURE__ */
|
|
5621
|
-
), !isValidTxId || loadingStep < 0 || error ? /* @__PURE__ */
|
|
5622
|
-
isValidTxId && !error ? /* @__PURE__ */
|
|
5652
|
+
/* @__PURE__ */ import_react90.default.createElement(Minimize_default, null)
|
|
5653
|
+
), !isValidTxId || loadingStep < 0 || error ? /* @__PURE__ */ import_react90.default.createElement("button", { className: "reset-button", onClick: resetForm }, "Reset") : null) : /* @__PURE__ */ import_react90.default.createElement("div", { className: "control-buttons" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "maximize", onClick: () => setMinimized(false) }, "View")))),
|
|
5654
|
+
isValidTxId && !error ? /* @__PURE__ */ import_react90.default.createElement("div", { className: "kima-card-content" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "transaction-content" }, /* @__PURE__ */ import_react90.default.createElement(
|
|
5623
5655
|
Progressbar_default,
|
|
5624
5656
|
{
|
|
5625
5657
|
step,
|
|
@@ -5628,7 +5660,7 @@ var TransactionWidget = ({ theme }) => {
|
|
|
5628
5660
|
setFocus,
|
|
5629
5661
|
loadingStep
|
|
5630
5662
|
}
|
|
5631
|
-
), /* @__PURE__ */
|
|
5663
|
+
), /* @__PURE__ */ import_react90.default.createElement(
|
|
5632
5664
|
StepBox_default,
|
|
5633
5665
|
{
|
|
5634
5666
|
step,
|
|
@@ -5636,14 +5668,14 @@ var TransactionWidget = ({ theme }) => {
|
|
|
5636
5668
|
loadingStep,
|
|
5637
5669
|
data
|
|
5638
5670
|
}
|
|
5639
|
-
)), !error && !isEmptyStatus && /* @__PURE__ */
|
|
5671
|
+
)), !error && !isEmptyStatus && /* @__PURE__ */ import_react90.default.createElement(
|
|
5640
5672
|
TransactionStatusMessage_default,
|
|
5641
5673
|
{
|
|
5642
5674
|
isCompleted: data?.status,
|
|
5643
5675
|
transactionId: txId.toString()
|
|
5644
5676
|
}
|
|
5645
|
-
)) : /* @__PURE__ */
|
|
5646
|
-
/* @__PURE__ */
|
|
5677
|
+
)) : /* @__PURE__ */ import_react90.default.createElement("div", { className: "kima-card-content" }, /* @__PURE__ */ import_react90.default.createElement("h4", { className: "subtitle" }, "You can follow the status of a previous submitted transaction by entering the provided transaction id"), /* @__PURE__ */ import_react90.default.createElement("div", { className: "single-form" }, /* @__PURE__ */ import_react90.default.createElement(TransactionSearch_default, null))),
|
|
5678
|
+
/* @__PURE__ */ import_react90.default.createElement(
|
|
5647
5679
|
import_react_hot_toast3.Toaster,
|
|
5648
5680
|
{
|
|
5649
5681
|
position: "top-right",
|
|
@@ -5670,45 +5702,55 @@ var TransactionWidget = ({ theme }) => {
|
|
|
5670
5702
|
}
|
|
5671
5703
|
}
|
|
5672
5704
|
),
|
|
5673
|
-
/* @__PURE__ */
|
|
5705
|
+
/* @__PURE__ */ import_react90.default.createElement("div", { className: "floating-footer status" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: `items ${theme.colorMode}` }, /* @__PURE__ */ import_react90.default.createElement("span", null, "Powered by"), /* @__PURE__ */ import_react90.default.createElement(KimaNetwork_default, null)))
|
|
5674
5706
|
));
|
|
5675
5707
|
};
|
|
5676
5708
|
|
|
5677
5709
|
// src/components/TransferWidget.tsx
|
|
5678
|
-
var
|
|
5710
|
+
var import_react103 = __toESM(require("react"), 1);
|
|
5679
5711
|
var import_react_redux56 = require("react-redux");
|
|
5680
5712
|
|
|
5681
5713
|
// src/components/reusable/SingleForm.tsx
|
|
5682
|
-
var
|
|
5714
|
+
var import_react92 = __toESM(require("react"), 1);
|
|
5683
5715
|
var import_react_hot_toast4 = require("react-hot-toast");
|
|
5684
5716
|
var import_react_redux46 = require("react-redux");
|
|
5685
5717
|
|
|
5686
5718
|
// src/components/primary/NetworkSelector.tsx
|
|
5687
|
-
var
|
|
5719
|
+
var import_react91 = __toESM(require("react"), 1);
|
|
5688
5720
|
var import_react_redux44 = require("react-redux");
|
|
5689
5721
|
var NetworkSelector = ({
|
|
5690
5722
|
type,
|
|
5691
5723
|
initialSelection,
|
|
5692
5724
|
setInitialSelection
|
|
5693
5725
|
}) => {
|
|
5694
|
-
const [collapsed, setCollapsed] = (0,
|
|
5695
|
-
const ref = (0,
|
|
5726
|
+
const [collapsed, setCollapsed] = (0, import_react91.useState)(true);
|
|
5727
|
+
const ref = (0, import_react91.useRef)(null);
|
|
5696
5728
|
const dispatch = (0, import_react_redux44.useDispatch)();
|
|
5697
5729
|
const theme = (0, import_react_redux44.useSelector)(selectTheme);
|
|
5698
5730
|
const networkOptions3 = (0, import_react_redux44.useSelector)(selectNetworks);
|
|
5699
5731
|
const mode = (0, import_react_redux44.useSelector)(selectMode);
|
|
5700
5732
|
const sourceNetwork = (0, import_react_redux44.useSelector)(selectSourceChain);
|
|
5733
|
+
const sourceSymbol = (0, import_react_redux44.useSelector)(selectSourceCurrency);
|
|
5701
5734
|
const targetNetwork = (0, import_react_redux44.useSelector)(selectTargetChain);
|
|
5702
5735
|
const { switchChainHandler } = useKimaContext();
|
|
5703
5736
|
const isOriginSelector = type === "origin";
|
|
5704
|
-
const networks = (0,
|
|
5737
|
+
const networks = (0, import_react91.useMemo)(() => {
|
|
5705
5738
|
return networkOptions3.filter((network) => {
|
|
5706
5739
|
const isSameAsSource = isOriginSelector ? false : network.shortName === sourceNetwork.shortName;
|
|
5707
5740
|
const isAllowedInLightMode = mode !== "light" /* light */ || lightDemoNetworks.includes(network.shortName);
|
|
5708
|
-
|
|
5741
|
+
const sourceToken = sourceNetwork.supportedTokens.find(
|
|
5742
|
+
(t) => t.symbol === sourceSymbol
|
|
5743
|
+
);
|
|
5744
|
+
let supportsSourceCurrency = true;
|
|
5745
|
+
if (!isOriginSelector && !!sourceToken) {
|
|
5746
|
+
supportsSourceCurrency = network.supportedTokens.some(
|
|
5747
|
+
(token) => token.peggedTo === sourceToken?.peggedTo
|
|
5748
|
+
);
|
|
5749
|
+
}
|
|
5750
|
+
return network.supportedLocations.includes(type) && !isSameAsSource && supportsSourceCurrency && isAllowedInLightMode;
|
|
5709
5751
|
});
|
|
5710
|
-
}, [networkOptions3, sourceNetwork, type, mode]);
|
|
5711
|
-
const selectedNetwork = (0,
|
|
5752
|
+
}, [networkOptions3, sourceNetwork, sourceSymbol, type, mode]);
|
|
5753
|
+
const selectedNetwork = (0, import_react91.useMemo)(() => {
|
|
5712
5754
|
if (initialSelection) {
|
|
5713
5755
|
return {
|
|
5714
5756
|
shortName: "",
|
|
@@ -5727,7 +5769,7 @@ var NetworkSelector = ({
|
|
|
5727
5769
|
isOriginSelector,
|
|
5728
5770
|
initialSelection
|
|
5729
5771
|
]);
|
|
5730
|
-
(0,
|
|
5772
|
+
(0, import_react91.useEffect)(() => {
|
|
5731
5773
|
if (!networks.length || selectedNetwork.shortName) return;
|
|
5732
5774
|
const fallbackNetwork = networks[0];
|
|
5733
5775
|
if (isOriginSelector) {
|
|
@@ -5759,7 +5801,7 @@ var NetworkSelector = ({
|
|
|
5759
5801
|
type === "origin" ? setInitialSelection((prev) => ({ ...prev, sourceSelection: false })) : setInitialSelection((prev) => ({ ...prev, targetSelection: false }));
|
|
5760
5802
|
setCollapsed(true);
|
|
5761
5803
|
};
|
|
5762
|
-
(0,
|
|
5804
|
+
(0, import_react91.useEffect)(() => {
|
|
5763
5805
|
const handleOutsideClick = (e) => {
|
|
5764
5806
|
if (ref.current && !ref.current.contains(e.target)) {
|
|
5765
5807
|
setCollapsed(true);
|
|
@@ -5770,7 +5812,7 @@ var NetworkSelector = ({
|
|
|
5770
5812
|
document.removeEventListener("mousedown", handleOutsideClick);
|
|
5771
5813
|
};
|
|
5772
5814
|
}, []);
|
|
5773
|
-
(0,
|
|
5815
|
+
(0, import_react91.useEffect)(() => {
|
|
5774
5816
|
if (mode !== "light" /* light */) return;
|
|
5775
5817
|
if (isEVMChain(targetNetwork.shortName)) {
|
|
5776
5818
|
dispatch(setTargetAddress(lightDemoAccounts.EVM));
|
|
@@ -5780,20 +5822,20 @@ var NetworkSelector = ({
|
|
|
5780
5822
|
dispatch(setTargetAddress(lightDemoAccounts.TRX));
|
|
5781
5823
|
}
|
|
5782
5824
|
}, [sourceNetwork, targetNetwork, mode]);
|
|
5783
|
-
return /* @__PURE__ */
|
|
5825
|
+
return /* @__PURE__ */ import_react91.default.createElement(
|
|
5784
5826
|
"div",
|
|
5785
5827
|
{
|
|
5786
5828
|
className: `network-dropdown ${theme?.colorMode ?? ""} ${collapsed ? "collapsed" : "toggled"}`,
|
|
5787
5829
|
onClick: () => setCollapsed((prev) => !prev),
|
|
5788
5830
|
ref
|
|
5789
5831
|
},
|
|
5790
|
-
/* @__PURE__ */
|
|
5791
|
-
/* @__PURE__ */
|
|
5832
|
+
/* @__PURE__ */ import_react91.default.createElement("div", { className: "network-wrapper" }, /* @__PURE__ */ import_react91.default.createElement(ChainIcon, { symbol: selectedNetwork.shortName }), /* @__PURE__ */ import_react91.default.createElement("span", null, selectedNetwork.name)),
|
|
5833
|
+
/* @__PURE__ */ import_react91.default.createElement(
|
|
5792
5834
|
"div",
|
|
5793
5835
|
{
|
|
5794
5836
|
className: `network-menu custom-scrollbar ${theme?.colorMode ?? ""} ${collapsed ? "collapsed" : "toggled"}`
|
|
5795
5837
|
},
|
|
5796
|
-
networks.filter((network) => network.shortName !== selectedNetwork.shortName).map((network) => /* @__PURE__ */
|
|
5838
|
+
networks.filter((network) => network.shortName !== selectedNetwork.shortName).map((network) => /* @__PURE__ */ import_react91.default.createElement(
|
|
5797
5839
|
"div",
|
|
5798
5840
|
{
|
|
5799
5841
|
key: network.id,
|
|
@@ -5805,15 +5847,15 @@ var NetworkSelector = ({
|
|
|
5805
5847
|
}
|
|
5806
5848
|
}
|
|
5807
5849
|
},
|
|
5808
|
-
network.disabled ? /* @__PURE__ */
|
|
5809
|
-
/* @__PURE__ */
|
|
5810
|
-
network.disabled && /* @__PURE__ */
|
|
5850
|
+
network.disabled ? /* @__PURE__ */ import_react91.default.createElement(Warning_default, { width: 25, height: 25 }) : /* @__PURE__ */ import_react91.default.createElement(ChainIcon, { symbol: network.shortName }),
|
|
5851
|
+
/* @__PURE__ */ import_react91.default.createElement("p", null, network.name),
|
|
5852
|
+
network.disabled && /* @__PURE__ */ import_react91.default.createElement("span", { className: "tooltip" }, "Temporarily unavailable")
|
|
5811
5853
|
))
|
|
5812
5854
|
),
|
|
5813
|
-
/* @__PURE__ */
|
|
5855
|
+
/* @__PURE__ */ import_react91.default.createElement("div", { className: `dropdown-icon ${collapsed ? "toggled" : "collapsed"}` }, /* @__PURE__ */ import_react91.default.createElement(Arrow_default, { fill: "none" }))
|
|
5814
5856
|
);
|
|
5815
5857
|
};
|
|
5816
|
-
var NetworkSelector_default =
|
|
5858
|
+
var NetworkSelector_default = import_react91.default.memo(NetworkSelector);
|
|
5817
5859
|
|
|
5818
5860
|
// src/components/reusable/SingleForm.tsx
|
|
5819
5861
|
var import_viem6 = require("viem");
|
|
@@ -5940,7 +5982,7 @@ var SingleForm = ({
|
|
|
5940
5982
|
const targetNetwork = (0, import_react_redux46.useSelector)(selectTargetChain);
|
|
5941
5983
|
const targetAddress = (0, import_react_redux46.useSelector)(selectTargetAddress);
|
|
5942
5984
|
const { isReady } = useIsWalletReady4();
|
|
5943
|
-
const [amountValue, setAmountValue] = (0,
|
|
5985
|
+
const [amountValue, setAmountValue] = (0, import_react92.useState)("");
|
|
5944
5986
|
const amount = (0, import_react_redux46.useSelector)(selectAmount);
|
|
5945
5987
|
const sourceCurrency = (0, import_react_redux46.useSelector)(selectSourceCurrency);
|
|
5946
5988
|
const targetCurrency = (0, import_react_redux46.useSelector)(selectTargetCurrency);
|
|
@@ -5960,18 +6002,18 @@ var SingleForm = ({
|
|
|
5960
6002
|
targetSymbol: targetCurrency,
|
|
5961
6003
|
backendUrl
|
|
5962
6004
|
});
|
|
5963
|
-
(0,
|
|
6005
|
+
(0, import_react92.useEffect)(() => {
|
|
5964
6006
|
if (fees) {
|
|
5965
6007
|
dispatch(setServiceFee(fees));
|
|
5966
6008
|
}
|
|
5967
6009
|
}, [fees, dispatch]);
|
|
5968
6010
|
const { kimaBackendUrl } = useKimaContext();
|
|
5969
6011
|
const { data: envOptions } = useGetEnvOptions({ kimaBackendUrl });
|
|
5970
|
-
const errorMessage = (0,
|
|
6012
|
+
const errorMessage = (0, import_react92.useMemo)(
|
|
5971
6013
|
() => compliantOption && targetCompliant !== null && !targetCompliant?.isCompliant ? `Target address has ${targetCompliant.results?.[0].result.risk_score} risk` : "",
|
|
5972
6014
|
[compliantOption, targetCompliant]
|
|
5973
6015
|
);
|
|
5974
|
-
const maxValue = (0,
|
|
6016
|
+
const maxValue = (0, import_react92.useMemo)(() => {
|
|
5975
6017
|
if (mode === "light" /* light */)
|
|
5976
6018
|
return BigInt(
|
|
5977
6019
|
envOptions?.transferLimitMaxUSDT ? parseFloat(envOptions?.transferLimitMaxUSDT) : 1e3
|
|
@@ -5981,11 +6023,17 @@ var SingleForm = ({
|
|
|
5981
6023
|
const intAmount = (0, import_viem6.parseUnits)(amount, totalFee.decimals);
|
|
5982
6024
|
return balance - intAmount;
|
|
5983
6025
|
}, [balance, totalFee, feeDeduct]);
|
|
5984
|
-
(0,
|
|
6026
|
+
const feeCurrency = (0, import_react92.useMemo)(() => {
|
|
6027
|
+
const sourceToken = sourceNetwork.supportedTokens.find(
|
|
6028
|
+
(t) => t.symbol === sourceCurrency
|
|
6029
|
+
);
|
|
6030
|
+
return sourceToken?.peggedTo ?? "USD";
|
|
6031
|
+
}, [sourceNetwork, sourceCurrency]);
|
|
6032
|
+
(0, import_react92.useEffect)(() => {
|
|
5985
6033
|
if (!errorMessage) return;
|
|
5986
6034
|
import_react_hot_toast4.toast.error(errorMessage);
|
|
5987
6035
|
}, [errorMessage]);
|
|
5988
|
-
(0,
|
|
6036
|
+
(0, import_react92.useEffect)(() => {
|
|
5989
6037
|
if (amountValue && amount !== "") return;
|
|
5990
6038
|
setAmountValue(amount);
|
|
5991
6039
|
}, [amount]);
|
|
@@ -6013,10 +6061,10 @@ var SingleForm = ({
|
|
|
6013
6061
|
setAmountValue(truncated);
|
|
6014
6062
|
dispatch(setAmount(truncated));
|
|
6015
6063
|
};
|
|
6016
|
-
const isConnected = (0,
|
|
6064
|
+
const isConnected = (0, import_react92.useMemo)(() => {
|
|
6017
6065
|
return isReady && !initialSelection.sourceSelection;
|
|
6018
6066
|
}, [isReady, initialSelection]);
|
|
6019
|
-
return /* @__PURE__ */
|
|
6067
|
+
return /* @__PURE__ */ import_react92.default.createElement("div", { className: "single-form" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "form-item" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "label" }, "Source Network:"), /* @__PURE__ */ import_react92.default.createElement("div", { className: "items" }, /* @__PURE__ */ import_react92.default.createElement(
|
|
6020
6068
|
NetworkSelector_default,
|
|
6021
6069
|
{
|
|
6022
6070
|
type: "origin",
|
|
@@ -6025,20 +6073,20 @@ var SingleForm = ({
|
|
|
6025
6073
|
setInitialSelection
|
|
6026
6074
|
}
|
|
6027
6075
|
}
|
|
6028
|
-
), /* @__PURE__ */
|
|
6076
|
+
), /* @__PURE__ */ import_react92.default.createElement(CoinDropdown_default, null))), /* @__PURE__ */ import_react92.default.createElement(
|
|
6029
6077
|
"div",
|
|
6030
6078
|
{
|
|
6031
6079
|
className: `dynamic-area ${sourceNetwork.shortName === "FIAT" /* FIAT */ ? "reverse" : "1"}`
|
|
6032
6080
|
},
|
|
6033
|
-
sourceNetwork.compatibility !== "CC" /* CC */ && /* @__PURE__ */
|
|
6081
|
+
sourceNetwork.compatibility !== "CC" /* CC */ && /* @__PURE__ */ import_react92.default.createElement(
|
|
6034
6082
|
"div",
|
|
6035
6083
|
{
|
|
6036
6084
|
className: `form-item wallet-button-item ${isConnected && "connected"}`
|
|
6037
6085
|
},
|
|
6038
|
-
/* @__PURE__ */
|
|
6039
|
-
/* @__PURE__ */
|
|
6086
|
+
/* @__PURE__ */ import_react92.default.createElement("span", { className: "label" }, "Wallet:"),
|
|
6087
|
+
/* @__PURE__ */ import_react92.default.createElement(WalletButton_default, { initialSelection: initialSelection.sourceSelection })
|
|
6040
6088
|
),
|
|
6041
|
-
mode !== "payment" /* payment */ && /* @__PURE__ */
|
|
6089
|
+
mode !== "payment" /* payment */ && /* @__PURE__ */ import_react92.default.createElement("div", { className: "form-item" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "label" }, "Target Network:"), /* @__PURE__ */ import_react92.default.createElement("div", { className: "items" }, /* @__PURE__ */ import_react92.default.createElement(
|
|
6042
6090
|
NetworkSelector_default,
|
|
6043
6091
|
{
|
|
6044
6092
|
type: "target",
|
|
@@ -6047,29 +6095,29 @@ var SingleForm = ({
|
|
|
6047
6095
|
setInitialSelection
|
|
6048
6096
|
}
|
|
6049
6097
|
}
|
|
6050
|
-
), /* @__PURE__ */
|
|
6051
|
-
), mode === "bridge" /* bridge */ && sourceNetwork.shortName !== "FIAT" /* FIAT */ ? targetNetwork.shortName === "FIAT" /* FIAT */ ? /* @__PURE__ */
|
|
6098
|
+
), /* @__PURE__ */ import_react92.default.createElement(CoinDropdown_default, { isSourceChain: false })))
|
|
6099
|
+
), mode === "bridge" /* bridge */ && sourceNetwork.shortName !== "FIAT" /* FIAT */ ? targetNetwork.shortName === "FIAT" /* FIAT */ ? /* @__PURE__ */ import_react92.default.createElement(BankInput_default, null) : /* @__PURE__ */ import_react92.default.createElement("div", { className: `form-item ${theme.colorMode}` }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "label" }, "Target Address:"), /* @__PURE__ */ import_react92.default.createElement(
|
|
6052
6100
|
AddressInput_default,
|
|
6053
6101
|
{
|
|
6054
6102
|
theme: theme.colorMode,
|
|
6055
6103
|
placeholder: "Target address",
|
|
6056
6104
|
initialSelection
|
|
6057
6105
|
}
|
|
6058
|
-
)) : null, mode === "light" /* light */ && /* @__PURE__ */
|
|
6106
|
+
)) : null, mode === "light" /* light */ && /* @__PURE__ */ import_react92.default.createElement(
|
|
6059
6107
|
"div",
|
|
6060
6108
|
{
|
|
6061
6109
|
className: `form-item wallet-button-item ${!initialSelection.targetSelection && "connected"}`,
|
|
6062
6110
|
style: { display: "flex", alignItems: "center" }
|
|
6063
6111
|
},
|
|
6064
|
-
/* @__PURE__ */
|
|
6065
|
-
/* @__PURE__ */
|
|
6112
|
+
/* @__PURE__ */ import_react92.default.createElement("span", { className: "label" }, "Target Wallet:"),
|
|
6113
|
+
/* @__PURE__ */ import_react92.default.createElement(
|
|
6066
6114
|
WalletButton_default,
|
|
6067
6115
|
{
|
|
6068
6116
|
initialSelection: initialSelection.targetSelection,
|
|
6069
6117
|
placeholder: true
|
|
6070
6118
|
}
|
|
6071
6119
|
)
|
|
6072
|
-
), mode === "bridge" /* bridge */ && /* @__PURE__ */
|
|
6120
|
+
), mode === "bridge" /* bridge */ && /* @__PURE__ */ import_react92.default.createElement("div", { className: `form-item ${theme.colorMode}` }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "label" }, "Amount:"), /* @__PURE__ */ import_react92.default.createElement("div", { className: `amount-label-container items ${theme.colorMode}` }, /* @__PURE__ */ import_react92.default.createElement(
|
|
6073
6121
|
"input",
|
|
6074
6122
|
{
|
|
6075
6123
|
className: `${theme.colorMode}`,
|
|
@@ -6078,7 +6126,7 @@ var SingleForm = ({
|
|
|
6078
6126
|
value: amountValue || "",
|
|
6079
6127
|
onChange: (e) => onAmountChange(e.target.value)
|
|
6080
6128
|
}
|
|
6081
|
-
), /* @__PURE__ */
|
|
6129
|
+
), /* @__PURE__ */ import_react92.default.createElement("div", { className: "max-disclaimer" }, sourceNetwork.shortName !== "CC" && /* @__PURE__ */ import_react92.default.createElement("span", { className: "max-button", onClick: onMaxClick }, "Max"), +totalFee !== -1 && /* @__PURE__ */ import_react92.default.createElement("p", { className: "fee-amount" }, "Est fees:", " ", /* @__PURE__ */ import_react92.default.createElement("span", { className: `${isLoadingFees ? "loading" : ""}` }, " ", isLoadingFees ? "" : `$ ${formatBigInt(totalFee)} ${feeCurrency}`))))));
|
|
6082
6130
|
};
|
|
6083
6131
|
var SingleForm_default = SingleForm;
|
|
6084
6132
|
|
|
@@ -6127,11 +6175,11 @@ function useAllowance2({
|
|
|
6127
6175
|
var import_react_hot_toast5 = require("react-hot-toast");
|
|
6128
6176
|
|
|
6129
6177
|
// plugins/solana/components/SolanaWalletConnectModal.tsx
|
|
6130
|
-
var
|
|
6178
|
+
var import_react95 = __toESM(require("react"), 1);
|
|
6131
6179
|
var import_react_redux49 = require("react-redux");
|
|
6132
6180
|
|
|
6133
6181
|
// plugins/solana/components/SolanaWalletSelect.tsx
|
|
6134
|
-
var
|
|
6182
|
+
var import_react93 = __toESM(require("react"), 1);
|
|
6135
6183
|
var import_react_redux47 = require("react-redux");
|
|
6136
6184
|
var import_wallet_adapter_react7 = require("@solana/wallet-adapter-react");
|
|
6137
6185
|
var import_wallet_adapter_base = require("@solana/wallet-adapter-base");
|
|
@@ -6139,9 +6187,9 @@ var SolanaWalletSelect = () => {
|
|
|
6139
6187
|
const theme = (0, import_react_redux47.useSelector)(selectTheme);
|
|
6140
6188
|
const sourceChain = (0, import_react_redux47.useSelector)(selectSourceChain);
|
|
6141
6189
|
const dispatch = (0, import_react_redux47.useDispatch)();
|
|
6142
|
-
const sliderRef = (0,
|
|
6190
|
+
const sliderRef = (0, import_react93.useRef)();
|
|
6143
6191
|
const { wallet, wallets, select, connect, connected } = (0, import_wallet_adapter_react7.useWallet)();
|
|
6144
|
-
const [detected, undetected] = (0,
|
|
6192
|
+
const [detected, undetected] = (0, import_react93.useMemo)(() => {
|
|
6145
6193
|
const detected2 = [];
|
|
6146
6194
|
const undetected2 = [];
|
|
6147
6195
|
for (const wallet2 of wallets) {
|
|
@@ -6153,7 +6201,7 @@ var SolanaWalletSelect = () => {
|
|
|
6153
6201
|
}
|
|
6154
6202
|
return [detected2, undetected2];
|
|
6155
6203
|
}, [wallets]);
|
|
6156
|
-
(0,
|
|
6204
|
+
(0, import_react93.useEffect)(() => {
|
|
6157
6205
|
let isDown = false;
|
|
6158
6206
|
let startX;
|
|
6159
6207
|
let scrollLeft;
|
|
@@ -6179,7 +6227,7 @@ var SolanaWalletSelect = () => {
|
|
|
6179
6227
|
sliderRef.current.scrollLeft = scrollLeft - walk;
|
|
6180
6228
|
});
|
|
6181
6229
|
}, []);
|
|
6182
|
-
const handleWalletClick = (0,
|
|
6230
|
+
const handleWalletClick = (0, import_react93.useCallback)(
|
|
6183
6231
|
(walletName) => {
|
|
6184
6232
|
logger_default.debug(
|
|
6185
6233
|
"SolanaWalletSelect: handleWalletClick: walletName: ",
|
|
@@ -6189,7 +6237,7 @@ var SolanaWalletSelect = () => {
|
|
|
6189
6237
|
},
|
|
6190
6238
|
[select]
|
|
6191
6239
|
);
|
|
6192
|
-
(0,
|
|
6240
|
+
(0, import_react93.useEffect)(() => {
|
|
6193
6241
|
logger_default.debug("SolanaWalletSelect: useEffect: wallet: ", wallet);
|
|
6194
6242
|
if (!wallet) return;
|
|
6195
6243
|
if (sourceChain.shortName !== "SOL") {
|
|
@@ -6205,28 +6253,28 @@ var SolanaWalletSelect = () => {
|
|
|
6205
6253
|
}
|
|
6206
6254
|
dispatch(setSolanaConnectModal(false));
|
|
6207
6255
|
}, [wallet, sourceChain]);
|
|
6208
|
-
return /* @__PURE__ */
|
|
6256
|
+
return /* @__PURE__ */ import_react93.default.createElement("div", { className: `wallet-select` }, /* @__PURE__ */ import_react93.default.createElement("div", { className: "slide-area hide-scrollbar", ref: sliderRef }, /* @__PURE__ */ import_react93.default.createElement("div", { className: "wallet-container" }, detected.map((wallet2, index) => /* @__PURE__ */ import_react93.default.createElement(
|
|
6209
6257
|
"div",
|
|
6210
6258
|
{
|
|
6211
6259
|
className: `card-item ${theme.colorMode}`,
|
|
6212
6260
|
onClick: () => handleWalletClick(wallet2.adapter.name),
|
|
6213
6261
|
key: `${wallet2.adapter.name}-${index}`
|
|
6214
6262
|
},
|
|
6215
|
-
/* @__PURE__ */
|
|
6216
|
-
)), undetected.map((wallet2, index) => /* @__PURE__ */
|
|
6263
|
+
/* @__PURE__ */ import_react93.default.createElement("div", { className: "wallet-item" }, /* @__PURE__ */ import_react93.default.createElement("img", { src: wallet2.adapter.icon, alt: wallet2.adapter.name }), /* @__PURE__ */ import_react93.default.createElement("span", null, wallet2.adapter.name))
|
|
6264
|
+
)), undetected.map((wallet2, index) => /* @__PURE__ */ import_react93.default.createElement(
|
|
6217
6265
|
ExternalLink_default,
|
|
6218
6266
|
{
|
|
6219
6267
|
to: wallet2.adapter.url,
|
|
6220
6268
|
className: `card-item ${theme.colorMode}`,
|
|
6221
6269
|
key: `${wallet2.adapter.name}-${index}`
|
|
6222
6270
|
},
|
|
6223
|
-
/* @__PURE__ */
|
|
6271
|
+
/* @__PURE__ */ import_react93.default.createElement("div", { className: "wallet-item" }, /* @__PURE__ */ import_react93.default.createElement("img", { src: wallet2.adapter.icon, alt: wallet2.adapter.name }), /* @__PURE__ */ import_react93.default.createElement("span", null, "Install ", wallet2.adapter.name))
|
|
6224
6272
|
)))));
|
|
6225
6273
|
};
|
|
6226
6274
|
var SolanaWalletSelect_default = SolanaWalletSelect;
|
|
6227
6275
|
|
|
6228
6276
|
// plugins/solana/components/AccountDetailsModal.tsx
|
|
6229
|
-
var
|
|
6277
|
+
var import_react94 = __toESM(require("react"), 1);
|
|
6230
6278
|
var import_react_redux48 = require("react-redux");
|
|
6231
6279
|
var import_wallet_adapter_react8 = require("@solana/wallet-adapter-react");
|
|
6232
6280
|
var AccountDetailsModal = () => {
|
|
@@ -6239,7 +6287,7 @@ var AccountDetailsModal = () => {
|
|
|
6239
6287
|
const { disconnect: solanaWalletDisconnect } = (0, import_wallet_adapter_react8.useWallet)();
|
|
6240
6288
|
const { balance: solBalance } = useGetSolBalance_default();
|
|
6241
6289
|
const networkDetails = networkOptions2[0];
|
|
6242
|
-
const explorerUrl = (0,
|
|
6290
|
+
const explorerUrl = (0, import_react94.useMemo)(() => {
|
|
6243
6291
|
return `https://solscan.io/account/${walletAddress}?cluster=${networkOption === "mainnet" ? "mainnet" : "devnet"}`;
|
|
6244
6292
|
}, [walletAddress, networkOption]);
|
|
6245
6293
|
const handleDisconnect = () => {
|
|
@@ -6247,25 +6295,25 @@ var AccountDetailsModal = () => {
|
|
|
6247
6295
|
dispatch(setAccountDetailsModal(false));
|
|
6248
6296
|
};
|
|
6249
6297
|
if (sourceChain.shortName !== "SOL") return;
|
|
6250
|
-
return /* @__PURE__ */
|
|
6298
|
+
return /* @__PURE__ */ import_react94.default.createElement(
|
|
6251
6299
|
"div",
|
|
6252
6300
|
{
|
|
6253
6301
|
className: `kima-modal ${theme.colorMode} ${accountDetailsModal && "open"}`
|
|
6254
6302
|
},
|
|
6255
|
-
/* @__PURE__ */
|
|
6256
|
-
/* @__PURE__ */
|
|
6303
|
+
/* @__PURE__ */ import_react94.default.createElement("div", { className: "modal-overlay" }),
|
|
6304
|
+
/* @__PURE__ */ import_react94.default.createElement("div", { className: `modal-content-container ${theme.colorMode}` }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "kima-card-header" }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "topbar" }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "title" }, /* @__PURE__ */ import_react94.default.createElement("h3", null, "Account Details")), /* @__PURE__ */ import_react94.default.createElement("div", { className: "control-buttons" }, /* @__PURE__ */ import_react94.default.createElement(
|
|
6257
6305
|
"button",
|
|
6258
6306
|
{
|
|
6259
6307
|
className: "cross-icon-button",
|
|
6260
6308
|
onClick: () => dispatch(setAccountDetailsModal(false))
|
|
6261
6309
|
},
|
|
6262
|
-
/* @__PURE__ */
|
|
6310
|
+
/* @__PURE__ */ import_react94.default.createElement(
|
|
6263
6311
|
Cross_default,
|
|
6264
6312
|
{
|
|
6265
6313
|
fill: theme.colorMode === "light" ? "black" : "white"
|
|
6266
6314
|
}
|
|
6267
6315
|
)
|
|
6268
|
-
)))), /* @__PURE__ */
|
|
6316
|
+
)))), /* @__PURE__ */ import_react94.default.createElement("div", { className: "modal-content" }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "summary" }, networkDetails && /* @__PURE__ */ import_react94.default.createElement(networkDetails.icon, { width: 60, height: 60 }), /* @__PURE__ */ import_react94.default.createElement("div", { className: "address" }, /* @__PURE__ */ import_react94.default.createElement("h2", null, getShortenedAddress(walletAddress || "")), /* @__PURE__ */ import_react94.default.createElement(CopyButton_default, { text: walletAddress })), /* @__PURE__ */ import_react94.default.createElement("h3", null, formatterFloat.format(Number(solBalance)), " $SOL")), /* @__PURE__ */ import_react94.default.createElement(SecondaryButton_default, { className: "block-explorer" }, /* @__PURE__ */ import_react94.default.createElement(ExternalLink_default, { className: "link", to: explorerUrl }, /* @__PURE__ */ import_react94.default.createElement(Explorer_default, { fill: "#778DA3" }), /* @__PURE__ */ import_react94.default.createElement("p", null, "Block explorer"), /* @__PURE__ */ import_react94.default.createElement(ExternalUrl_default, { fill: "#778DA3" }))), /* @__PURE__ */ import_react94.default.createElement(PrimaryButton_default, { clickHandler: handleDisconnect }, "Discconect")))
|
|
6269
6317
|
);
|
|
6270
6318
|
};
|
|
6271
6319
|
var AccountDetailsModal_default = AccountDetailsModal;
|
|
@@ -6275,18 +6323,18 @@ var SolanaWalletConnectModal = () => {
|
|
|
6275
6323
|
const dispatch = (0, import_react_redux49.useDispatch)();
|
|
6276
6324
|
const theme = (0, import_react_redux49.useSelector)(selectTheme);
|
|
6277
6325
|
const connectModal = (0, import_react_redux49.useSelector)(selectSolanaConnectModal);
|
|
6278
|
-
return /* @__PURE__ */
|
|
6326
|
+
return /* @__PURE__ */ import_react95.default.createElement("div", null, /* @__PURE__ */ import_react95.default.createElement(AccountDetailsModal_default, null), /* @__PURE__ */ import_react95.default.createElement(
|
|
6279
6327
|
"div",
|
|
6280
6328
|
{
|
|
6281
6329
|
className: `kima-modal wallet-connect ${connectModal ? "open" : ""}`
|
|
6282
6330
|
},
|
|
6283
|
-
/* @__PURE__ */
|
|
6331
|
+
/* @__PURE__ */ import_react95.default.createElement("div", { className: `modal-content-container ${theme.colorMode}` }, /* @__PURE__ */ import_react95.default.createElement("div", { className: "kima-card-header" }, /* @__PURE__ */ import_react95.default.createElement("div", { className: "topbar" }, /* @__PURE__ */ import_react95.default.createElement("div", { className: "title" }, /* @__PURE__ */ import_react95.default.createElement("h3", null, "Connect Wallet")), /* @__PURE__ */ import_react95.default.createElement("div", { className: "control-buttons" }, /* @__PURE__ */ import_react95.default.createElement(
|
|
6284
6332
|
"button",
|
|
6285
6333
|
{
|
|
6286
6334
|
className: "cross-icon-button",
|
|
6287
6335
|
onClick: () => dispatch(setSolanaConnectModal(false))
|
|
6288
6336
|
},
|
|
6289
|
-
/* @__PURE__ */
|
|
6337
|
+
/* @__PURE__ */ import_react95.default.createElement(
|
|
6290
6338
|
Cross_default,
|
|
6291
6339
|
{
|
|
6292
6340
|
width: 30,
|
|
@@ -6294,17 +6342,17 @@ var SolanaWalletConnectModal = () => {
|
|
|
6294
6342
|
fill: theme.colorMode === "light" ? "black" : "white"
|
|
6295
6343
|
}
|
|
6296
6344
|
)
|
|
6297
|
-
)))), /* @__PURE__ */
|
|
6345
|
+
)))), /* @__PURE__ */ import_react95.default.createElement("div", { className: "modal-content" }, /* @__PURE__ */ import_react95.default.createElement(SolanaWalletSelect_default, null)))
|
|
6298
6346
|
));
|
|
6299
6347
|
};
|
|
6300
6348
|
var SolanaWalletConnectModal_default = SolanaWalletConnectModal;
|
|
6301
6349
|
|
|
6302
6350
|
// plugins/tron/components/TronWalletConnectModal.tsx
|
|
6303
|
-
var
|
|
6351
|
+
var import_react98 = __toESM(require("react"), 1);
|
|
6304
6352
|
var import_react_redux52 = require("react-redux");
|
|
6305
6353
|
|
|
6306
6354
|
// plugins/tron/components/AccountDetailsModal.tsx
|
|
6307
|
-
var
|
|
6355
|
+
var import_react96 = __toESM(require("react"), 1);
|
|
6308
6356
|
var import_react_redux50 = require("react-redux");
|
|
6309
6357
|
var import_tronwallet_adapter_react_hooks7 = require("@tronweb3/tronwallet-adapter-react-hooks");
|
|
6310
6358
|
var AccountDetailsModal2 = () => {
|
|
@@ -6317,11 +6365,11 @@ var AccountDetailsModal2 = () => {
|
|
|
6317
6365
|
const { disconnect: tronWalletDisconnect } = (0, import_tronwallet_adapter_react_hooks7.useWallet)();
|
|
6318
6366
|
const { balance: tronBalance } = useGetTrxBalance_default();
|
|
6319
6367
|
const selectedNetwork = (0, import_react_redux50.useSelector)(selectSourceChain);
|
|
6320
|
-
const networkDetails = (0,
|
|
6368
|
+
const networkDetails = (0, import_react96.useMemo)(
|
|
6321
6369
|
() => networkOptions.find(({ id }) => id === selectedNetwork.shortName),
|
|
6322
6370
|
[selectedNetwork]
|
|
6323
6371
|
);
|
|
6324
|
-
const explorerUrl = (0,
|
|
6372
|
+
const explorerUrl = (0, import_react96.useMemo)(() => {
|
|
6325
6373
|
return `https://${networkOption === "testnet" && "nile."}tronscan.io/#/address/${connectedAddress}`;
|
|
6326
6374
|
}, [connectedAddress, networkOption]);
|
|
6327
6375
|
const handleDisconnect = () => {
|
|
@@ -6329,37 +6377,37 @@ var AccountDetailsModal2 = () => {
|
|
|
6329
6377
|
dispatch(setAccountDetailsModal(false));
|
|
6330
6378
|
};
|
|
6331
6379
|
if (sourcheChain.shortName !== "TRX") return;
|
|
6332
|
-
return /* @__PURE__ */
|
|
6380
|
+
return /* @__PURE__ */ import_react96.default.createElement(
|
|
6333
6381
|
"div",
|
|
6334
6382
|
{
|
|
6335
6383
|
className: `kima-modal ${theme.colorMode} ${accountDetailsModal && "open"}`
|
|
6336
6384
|
},
|
|
6337
|
-
/* @__PURE__ */
|
|
6338
|
-
/* @__PURE__ */
|
|
6385
|
+
/* @__PURE__ */ import_react96.default.createElement("div", { className: "modal-overlay" }),
|
|
6386
|
+
/* @__PURE__ */ import_react96.default.createElement("div", { className: `modal-content-container ${theme.colorMode}` }, /* @__PURE__ */ import_react96.default.createElement("div", { className: "kima-card-header" }, /* @__PURE__ */ import_react96.default.createElement("div", { className: "topbar" }, /* @__PURE__ */ import_react96.default.createElement("div", { className: "title" }, /* @__PURE__ */ import_react96.default.createElement("h3", null, "Account Details")), /* @__PURE__ */ import_react96.default.createElement("div", { className: "control-buttons" }, /* @__PURE__ */ import_react96.default.createElement(
|
|
6339
6387
|
"button",
|
|
6340
6388
|
{
|
|
6341
6389
|
className: "cross-icon-button",
|
|
6342
6390
|
onClick: () => dispatch(setAccountDetailsModal(false))
|
|
6343
6391
|
},
|
|
6344
|
-
/* @__PURE__ */
|
|
6392
|
+
/* @__PURE__ */ import_react96.default.createElement(
|
|
6345
6393
|
Cross_default,
|
|
6346
6394
|
{
|
|
6347
6395
|
fill: theme.colorMode === "light" ? "black" : "white"
|
|
6348
6396
|
}
|
|
6349
6397
|
)
|
|
6350
|
-
)))), /* @__PURE__ */
|
|
6398
|
+
)))), /* @__PURE__ */ import_react96.default.createElement("div", { className: "modal-content" }, /* @__PURE__ */ import_react96.default.createElement("div", { className: "summary" }, networkDetails && /* @__PURE__ */ import_react96.default.createElement(networkDetails.icon, { width: 60, height: 60 }), /* @__PURE__ */ import_react96.default.createElement("div", { className: "address" }, /* @__PURE__ */ import_react96.default.createElement("h2", null, getShortenedAddress(connectedAddress || "")), /* @__PURE__ */ import_react96.default.createElement(CopyButton_default, { text: connectedAddress })), /* @__PURE__ */ import_react96.default.createElement("h3", null, formatterFloat.format(Number(tronBalance)), " ", selectedNetwork.shortName)), /* @__PURE__ */ import_react96.default.createElement(SecondaryButton_default, { className: "block-explorer" }, /* @__PURE__ */ import_react96.default.createElement(ExternalLink_default, { className: "link", to: explorerUrl }, /* @__PURE__ */ import_react96.default.createElement(Explorer_default, { fill: "#778DA3" }), /* @__PURE__ */ import_react96.default.createElement("p", null, "Block explorer"), /* @__PURE__ */ import_react96.default.createElement(ExternalUrl_default, { fill: "#778DA3" }))), /* @__PURE__ */ import_react96.default.createElement(PrimaryButton_default, { clickHandler: handleDisconnect }, "Disconnect")))
|
|
6351
6399
|
);
|
|
6352
6400
|
};
|
|
6353
6401
|
var AccountDetailsModal_default2 = AccountDetailsModal2;
|
|
6354
6402
|
|
|
6355
6403
|
// plugins/tron/components/TronWalletSelect.tsx
|
|
6356
|
-
var
|
|
6404
|
+
var import_react97 = __toESM(require("react"), 1);
|
|
6357
6405
|
var import_react_redux51 = require("react-redux");
|
|
6358
6406
|
var import_tronwallet_adapter_react_hooks8 = require("@tronweb3/tronwallet-adapter-react-hooks");
|
|
6359
6407
|
var import_tronwallet_abstract_adapter2 = require("@tronweb3/tronwallet-abstract-adapter");
|
|
6360
6408
|
var TronWalletSelect = () => {
|
|
6361
6409
|
const theme = (0, import_react_redux51.useSelector)(selectTheme);
|
|
6362
|
-
const sliderRef = (0,
|
|
6410
|
+
const sliderRef = (0, import_react97.useRef)();
|
|
6363
6411
|
const dispatch = (0, import_react_redux51.useDispatch)();
|
|
6364
6412
|
const {
|
|
6365
6413
|
wallets,
|
|
@@ -6368,7 +6416,7 @@ var TronWalletSelect = () => {
|
|
|
6368
6416
|
connect,
|
|
6369
6417
|
connected
|
|
6370
6418
|
} = (0, import_tronwallet_adapter_react_hooks8.useWallet)();
|
|
6371
|
-
const [detected, undetected] = (0,
|
|
6419
|
+
const [detected, undetected] = (0, import_react97.useMemo)(() => {
|
|
6372
6420
|
const detected2 = [];
|
|
6373
6421
|
const undetected2 = [];
|
|
6374
6422
|
for (const wallet of wallets) {
|
|
@@ -6380,7 +6428,7 @@ var TronWalletSelect = () => {
|
|
|
6380
6428
|
}
|
|
6381
6429
|
return [detected2, undetected2];
|
|
6382
6430
|
}, [wallets]);
|
|
6383
|
-
(0,
|
|
6431
|
+
(0, import_react97.useEffect)(() => {
|
|
6384
6432
|
let isDown = false;
|
|
6385
6433
|
let startX;
|
|
6386
6434
|
let scrollLeft;
|
|
@@ -6406,28 +6454,28 @@ var TronWalletSelect = () => {
|
|
|
6406
6454
|
sliderRef.current.scrollLeft = scrollLeft - walk;
|
|
6407
6455
|
});
|
|
6408
6456
|
}, []);
|
|
6409
|
-
(0,
|
|
6457
|
+
(0, import_react97.useEffect)(() => {
|
|
6410
6458
|
connected && dispatch(setTronConnectModal(false));
|
|
6411
6459
|
}, [connected]);
|
|
6412
6460
|
const connectWallet = async (walletName) => {
|
|
6413
6461
|
currentWallet?.adapter.name === walletName ? await connect() : select(walletName);
|
|
6414
6462
|
};
|
|
6415
|
-
return /* @__PURE__ */
|
|
6463
|
+
return /* @__PURE__ */ import_react97.default.createElement("div", { className: `wallet-select` }, /* @__PURE__ */ import_react97.default.createElement("div", { className: "slide-area hide-scrollbar", ref: sliderRef }, /* @__PURE__ */ import_react97.default.createElement("div", { className: "wallet-container" }, detected.map((wallet, index) => /* @__PURE__ */ import_react97.default.createElement(
|
|
6416
6464
|
"div",
|
|
6417
6465
|
{
|
|
6418
6466
|
className: `card-item ${theme.colorMode}`,
|
|
6419
6467
|
onClick: () => connectWallet(wallet.adapter.name),
|
|
6420
6468
|
key: `${wallet.adapter.name}-${index}`
|
|
6421
6469
|
},
|
|
6422
|
-
/* @__PURE__ */
|
|
6423
|
-
)), undetected.map((wallet, index) => /* @__PURE__ */
|
|
6470
|
+
/* @__PURE__ */ import_react97.default.createElement("div", { className: "wallet-item" }, /* @__PURE__ */ import_react97.default.createElement("img", { src: wallet.adapter.icon, alt: wallet.adapter.name }), /* @__PURE__ */ import_react97.default.createElement("span", null, wallet.adapter.name))
|
|
6471
|
+
)), undetected.map((wallet, index) => /* @__PURE__ */ import_react97.default.createElement(
|
|
6424
6472
|
ExternalLink_default,
|
|
6425
6473
|
{
|
|
6426
6474
|
to: wallet.adapter.url,
|
|
6427
6475
|
className: `card-item ${theme.colorMode}`,
|
|
6428
6476
|
key: `${wallet.adapter.name}-${index}`
|
|
6429
6477
|
},
|
|
6430
|
-
/* @__PURE__ */
|
|
6478
|
+
/* @__PURE__ */ import_react97.default.createElement("div", { className: "wallet-item" }, /* @__PURE__ */ import_react97.default.createElement("img", { src: wallet.adapter.icon, alt: wallet.adapter.name }), /* @__PURE__ */ import_react97.default.createElement("span", null, "Install ", wallet.adapter.name))
|
|
6431
6479
|
)))));
|
|
6432
6480
|
};
|
|
6433
6481
|
var TronWalletSelect_default = TronWalletSelect;
|
|
@@ -6437,31 +6485,31 @@ var TronWalletConnectModal = () => {
|
|
|
6437
6485
|
const dispatch = (0, import_react_redux52.useDispatch)();
|
|
6438
6486
|
const theme = (0, import_react_redux52.useSelector)(selectTheme);
|
|
6439
6487
|
const connectModal = (0, import_react_redux52.useSelector)(selectTronConnectModal);
|
|
6440
|
-
return /* @__PURE__ */
|
|
6488
|
+
return /* @__PURE__ */ import_react98.default.createElement("div", null, /* @__PURE__ */ import_react98.default.createElement(AccountDetailsModal_default2, null), /* @__PURE__ */ import_react98.default.createElement(
|
|
6441
6489
|
"div",
|
|
6442
6490
|
{
|
|
6443
6491
|
className: `kima-modal wallet-connect ${theme.colorMode} ${connectModal ? "open" : ""}`
|
|
6444
6492
|
},
|
|
6445
|
-
/* @__PURE__ */
|
|
6446
|
-
/* @__PURE__ */
|
|
6493
|
+
/* @__PURE__ */ import_react98.default.createElement("div", { className: "modal-overlay" }),
|
|
6494
|
+
/* @__PURE__ */ import_react98.default.createElement("div", { className: `modal-content-container ${theme.colorMode}` }, /* @__PURE__ */ import_react98.default.createElement("div", { className: "kima-card-header" }, /* @__PURE__ */ import_react98.default.createElement("div", { className: "topbar" }, /* @__PURE__ */ import_react98.default.createElement("div", { className: "title" }, /* @__PURE__ */ import_react98.default.createElement("h3", null, "Connect Wallet")), /* @__PURE__ */ import_react98.default.createElement("div", { className: "control-buttons" }, /* @__PURE__ */ import_react98.default.createElement(
|
|
6447
6495
|
"button",
|
|
6448
6496
|
{
|
|
6449
6497
|
className: "icon-button",
|
|
6450
6498
|
onClick: () => dispatch(setTronConnectModal(false))
|
|
6451
6499
|
},
|
|
6452
|
-
/* @__PURE__ */
|
|
6500
|
+
/* @__PURE__ */ import_react98.default.createElement(
|
|
6453
6501
|
Cross_default,
|
|
6454
6502
|
{
|
|
6455
6503
|
fill: theme.colorMode === "light" ? "black" : "white"
|
|
6456
6504
|
}
|
|
6457
6505
|
)
|
|
6458
|
-
)))), /* @__PURE__ */
|
|
6506
|
+
)))), /* @__PURE__ */ import_react98.default.createElement("div", { className: "modal-content" }, /* @__PURE__ */ import_react98.default.createElement(TronWalletSelect_default, null)))
|
|
6459
6507
|
));
|
|
6460
6508
|
};
|
|
6461
6509
|
var TronWalletConnectModal_default = TronWalletConnectModal;
|
|
6462
6510
|
|
|
6463
6511
|
// src/hooks/useValidateTransaction.tsx
|
|
6464
|
-
var
|
|
6512
|
+
var import_react99 = require("react");
|
|
6465
6513
|
var import_viem7 = require("viem");
|
|
6466
6514
|
var import_react_redux53 = require("react-redux");
|
|
6467
6515
|
var import_loglevel2 = __toESM(require("loglevel"), 1);
|
|
@@ -6490,7 +6538,7 @@ var useValidateTransaction = (inputs) => {
|
|
|
6490
6538
|
const { data: envOptions } = useGetEnvOptions({ kimaBackendUrl });
|
|
6491
6539
|
const mode = (0, import_react_redux53.useSelector)(selectMode);
|
|
6492
6540
|
const networkOption = (0, import_react_redux53.useSelector)(selectNetworkOption);
|
|
6493
|
-
const maxValue = (0,
|
|
6541
|
+
const maxValue = (0, import_react99.useMemo)(() => {
|
|
6494
6542
|
import_loglevel2.default.debug("useValidateTransaction: maxValue: ", inputs);
|
|
6495
6543
|
if (!balance) return BigInt(0);
|
|
6496
6544
|
if (totalFee <= BigInt(0)) return balance;
|
|
@@ -6607,7 +6655,7 @@ var useValidateTransaction_default = useValidateTransaction;
|
|
|
6607
6655
|
// src/hooks/useSubmitTransaction.tsx
|
|
6608
6656
|
var import_react_redux54 = require("react-redux");
|
|
6609
6657
|
var import_react_query16 = require("@tanstack/react-query");
|
|
6610
|
-
var
|
|
6658
|
+
var import_react100 = require("react");
|
|
6611
6659
|
var useSubmitTransaction = () => {
|
|
6612
6660
|
const dispatch = (0, import_react_redux54.useDispatch)();
|
|
6613
6661
|
const backendUrl = (0, import_react_redux54.useSelector)(selectBackendUrl);
|
|
@@ -6617,7 +6665,7 @@ var useSubmitTransaction = () => {
|
|
|
6617
6665
|
const txValues = feeDeduct ? transactionValues.feeFromTarget : transactionValues.feeFromOrigin;
|
|
6618
6666
|
const ccTransactionIdSeed = (0, import_react_redux54.useSelector)(selectCCTransactionIdSeed);
|
|
6619
6667
|
const submitted = (0, import_react_redux54.useSelector)(selectSubmitted);
|
|
6620
|
-
const [isSubmitting, setIsSubmitting] = (0,
|
|
6668
|
+
const [isSubmitting, setIsSubmitting] = (0, import_react100.useState)(false);
|
|
6621
6669
|
const mutation = (0, import_react_query16.useMutation)({
|
|
6622
6670
|
mutationFn: async (signature) => {
|
|
6623
6671
|
setIsSubmitting(true);
|
|
@@ -6772,7 +6820,7 @@ function useDisconnectWallet5() {
|
|
|
6772
6820
|
}
|
|
6773
6821
|
|
|
6774
6822
|
// src/components/reusable/WarningModal.tsx
|
|
6775
|
-
var
|
|
6823
|
+
var import_react101 = __toESM(require("react"), 1);
|
|
6776
6824
|
var WarningModal = ({
|
|
6777
6825
|
message,
|
|
6778
6826
|
cancelButtonText = "Cancel",
|
|
@@ -6780,14 +6828,14 @@ var WarningModal = ({
|
|
|
6780
6828
|
onAcknowledge,
|
|
6781
6829
|
onCancel
|
|
6782
6830
|
}) => {
|
|
6783
|
-
return /* @__PURE__ */
|
|
6831
|
+
return /* @__PURE__ */ import_react101.default.createElement("div", { className: "warning-modal-overlay" }, /* @__PURE__ */ import_react101.default.createElement("div", { className: "warning-modal" }, /* @__PURE__ */ import_react101.default.createElement("h3", null, "Warning"), /* @__PURE__ */ import_react101.default.createElement("p", null, message), /* @__PURE__ */ import_react101.default.createElement("div", { className: "warning-modal-buttons" }, /* @__PURE__ */ import_react101.default.createElement(
|
|
6784
6832
|
SecondaryButton_default,
|
|
6785
6833
|
{
|
|
6786
6834
|
className: "warning-modal-cancel",
|
|
6787
6835
|
clickHandler: onCancel
|
|
6788
6836
|
},
|
|
6789
6837
|
cancelButtonText
|
|
6790
|
-
), /* @__PURE__ */
|
|
6838
|
+
), /* @__PURE__ */ import_react101.default.createElement(
|
|
6791
6839
|
PrimaryButton_default,
|
|
6792
6840
|
{
|
|
6793
6841
|
className: "warning-modal-acknowledge",
|
|
@@ -6799,7 +6847,7 @@ var WarningModal = ({
|
|
|
6799
6847
|
var WarningModal_default = WarningModal;
|
|
6800
6848
|
|
|
6801
6849
|
// src/components/reusable/CCWidget.tsx
|
|
6802
|
-
var
|
|
6850
|
+
var import_react102 = __toESM(require("react"), 1);
|
|
6803
6851
|
var import_react_redux55 = require("react-redux");
|
|
6804
6852
|
var import_uuid = require("uuid");
|
|
6805
6853
|
|
|
@@ -6833,10 +6881,11 @@ var CCWidget = ({ submitCallback }) => {
|
|
|
6833
6881
|
const backendUrl = (0, import_react_redux55.useSelector)(selectBackendUrl);
|
|
6834
6882
|
const ccTransactionStatus = (0, import_react_redux55.useSelector)(selectCCTransactionStatus);
|
|
6835
6883
|
const networkOption = (0, import_react_redux55.useSelector)(selectNetworkOption);
|
|
6884
|
+
const sourceCurrency = (0, import_react_redux55.useSelector)(selectSourceCurrency);
|
|
6836
6885
|
const { transactionValues } = (0, import_react_redux55.useSelector)(selectServiceFee);
|
|
6837
|
-
const randomUserIdRef = (0,
|
|
6838
|
-
const ccTransactionIdSeedRef = (0,
|
|
6839
|
-
const ccTransactionSubmittedRef = (0,
|
|
6886
|
+
const randomUserIdRef = (0, import_react102.useRef)((0, import_uuid.v4)());
|
|
6887
|
+
const ccTransactionIdSeedRef = (0, import_react102.useRef)((0, import_uuid.v4)());
|
|
6888
|
+
const ccTransactionSubmittedRef = (0, import_react102.useRef)(false);
|
|
6840
6889
|
const { data: envOptions, isLoading: isEnvLoading } = useGetEnvOptions({
|
|
6841
6890
|
kimaBackendUrl: backendUrl
|
|
6842
6891
|
});
|
|
@@ -6846,21 +6895,21 @@ var CCWidget = ({ submitCallback }) => {
|
|
|
6846
6895
|
isLoading: isTransactionIdLoading,
|
|
6847
6896
|
error
|
|
6848
6897
|
} = useCCTransactionId(backendUrl, ccTransactionIdSeedRef.current);
|
|
6849
|
-
(0,
|
|
6898
|
+
(0, import_react102.useEffect)(() => {
|
|
6850
6899
|
dispatch(setCCTransactionIdSeed(ccTransactionIdSeedRef.current));
|
|
6851
6900
|
dispatch(setCCTransactionId(data?.transactionId));
|
|
6852
6901
|
}, [dispatch, data, isTransactionIdLoading]);
|
|
6853
6902
|
const txValues = feeDeduct ? transactionValues.feeFromTarget : transactionValues.feeFromOrigin;
|
|
6854
|
-
const allowanceAmount = (0,
|
|
6903
|
+
const allowanceAmount = (0, import_react102.useMemo)(
|
|
6855
6904
|
() => formatBigInt(txValues.allowanceAmount),
|
|
6856
6905
|
[txValues]
|
|
6857
6906
|
);
|
|
6858
|
-
const [isLoading, setIsLoading] = (0,
|
|
6859
|
-
const baseUrl = (0,
|
|
6907
|
+
const [isLoading, setIsLoading] = (0, import_react102.useState)(true);
|
|
6908
|
+
const baseUrl = (0, import_react102.useMemo)(
|
|
6860
6909
|
() => `https://widget${networkOption === "testnet" /* testnet */ ? "-sandbox" : ""}.depasify.com`,
|
|
6861
6910
|
[networkOption]
|
|
6862
6911
|
);
|
|
6863
|
-
(0,
|
|
6912
|
+
(0, import_react102.useEffect)(() => {
|
|
6864
6913
|
const handleMessage = (event) => {
|
|
6865
6914
|
if (event.origin !== baseUrl) {
|
|
6866
6915
|
return;
|
|
@@ -6881,15 +6930,15 @@ var CCWidget = ({ submitCallback }) => {
|
|
|
6881
6930
|
window.addEventListener("message", handleMessage);
|
|
6882
6931
|
return () => window.removeEventListener("message", handleMessage);
|
|
6883
6932
|
}, []);
|
|
6884
|
-
(0,
|
|
6933
|
+
(0, import_react102.useEffect)(() => {
|
|
6885
6934
|
if (error) dispatch(setCCTransactionStatus("error-id"));
|
|
6886
6935
|
}, [dispatch, error]);
|
|
6887
|
-
return /* @__PURE__ */
|
|
6936
|
+
return /* @__PURE__ */ import_react102.default.createElement("div", { className: `cc-widget ${isLoading ? "loading" : ""}` }, (isLoading || isTransactionIdLoading || isEnvLoading || ccTransactionStatus === "success") && /* @__PURE__ */ import_react102.default.createElement("div", { className: "cc-widget-loader" }, /* @__PURE__ */ import_react102.default.createElement(ring_default, { width: 50, height: 50, fill: "#86b8ce" })), /* @__PURE__ */ import_react102.default.createElement(
|
|
6888
6937
|
"iframe",
|
|
6889
6938
|
{
|
|
6890
6939
|
width: isLoading || isTransactionIdLoading || ccTransactionStatus === "success" || error ? 0 : "100%",
|
|
6891
6940
|
height: isLoading || isTransactionIdLoading || ccTransactionStatus === "success" || error ? 0 : "100%",
|
|
6892
|
-
src: `${baseUrl}/widgets/kyc?partner=${partnerId}&user_uuid=${randomUserIdRef.current}&amount=${allowanceAmount}¤cy
|
|
6941
|
+
src: `${baseUrl}/widgets/kyc?partner=${partnerId}&user_uuid=${randomUserIdRef.current}&amount=${allowanceAmount}¤cy=${sourceCurrency}&trx_uuid=${data?.transactionId}&postmessage=true`,
|
|
6893
6942
|
loading: "lazy",
|
|
6894
6943
|
title: "Credit Card Widget",
|
|
6895
6944
|
allow: "camera; clipboard-write",
|
|
@@ -6913,11 +6962,11 @@ var TransferWidget = ({
|
|
|
6913
6962
|
paymentTitleOption
|
|
6914
6963
|
}) => {
|
|
6915
6964
|
const dispatch = (0, import_react_redux56.useDispatch)();
|
|
6916
|
-
const mainRef = (0,
|
|
6917
|
-
const [signature, setSignature2] = (0,
|
|
6918
|
-
const [formStep, setFormStep] = (0,
|
|
6919
|
-
const [warningModalOpen, setWarningModalOpen] = (0,
|
|
6920
|
-
const [resetModalOpen, setResetModalOpen] = (0,
|
|
6965
|
+
const mainRef = (0, import_react103.useRef)(null);
|
|
6966
|
+
const [signature, setSignature2] = (0, import_react103.useState)("");
|
|
6967
|
+
const [formStep, setFormStep] = (0, import_react103.useState)(0);
|
|
6968
|
+
const [warningModalOpen, setWarningModalOpen] = (0, import_react103.useState)(null);
|
|
6969
|
+
const [resetModalOpen, setResetModalOpen] = (0, import_react103.useState)(false);
|
|
6921
6970
|
const networkOption = (0, import_react_redux56.useSelector)(selectNetworkOption);
|
|
6922
6971
|
const dAppOption = (0, import_react_redux56.useSelector)(selectDappOption);
|
|
6923
6972
|
const mode = (0, import_react_redux56.useSelector)(selectMode);
|
|
@@ -6936,11 +6985,11 @@ var TransferWidget = ({
|
|
|
6936
6985
|
const feeDeduct = (0, import_react_redux56.useSelector)(selectFeeDeduct);
|
|
6937
6986
|
const txValues = feeDeduct ? transactionValues.feeFromTarget : transactionValues.feeFromOrigin;
|
|
6938
6987
|
const { keplrHandler, closeHandler } = useKimaContext();
|
|
6939
|
-
const [isCancellingApprove, setCancellingApprove] = (0,
|
|
6940
|
-
const [isApproving, setApproving] = (0,
|
|
6941
|
-
const [isSigning, setSigning] = (0,
|
|
6942
|
-
const [feeOptionDisabled, setFeeOptionDisabled] = (0,
|
|
6943
|
-
const [initialSelection, setInitialSelection] = (0,
|
|
6988
|
+
const [isCancellingApprove, setCancellingApprove] = (0, import_react103.useState)(false);
|
|
6989
|
+
const [isApproving, setApproving] = (0, import_react103.useState)(false);
|
|
6990
|
+
const [isSigning, setSigning] = (0, import_react103.useState)(false);
|
|
6991
|
+
const [feeOptionDisabled, setFeeOptionDisabled] = (0, import_react103.useState)(false);
|
|
6992
|
+
const [initialSelection, setInitialSelection] = (0, import_react103.useState)({
|
|
6944
6993
|
sourceSelection: true,
|
|
6945
6994
|
targetSelection: true
|
|
6946
6995
|
});
|
|
@@ -7002,7 +7051,7 @@ var TransferWidget = ({
|
|
|
7002
7051
|
targetSymbol: targetCurrency,
|
|
7003
7052
|
backendUrl
|
|
7004
7053
|
});
|
|
7005
|
-
(0,
|
|
7054
|
+
(0, import_react103.useEffect)(() => {
|
|
7006
7055
|
if (fees) {
|
|
7007
7056
|
dispatch(setServiceFee(fees));
|
|
7008
7057
|
}
|
|
@@ -7014,7 +7063,7 @@ var TransferWidget = ({
|
|
|
7014
7063
|
}
|
|
7015
7064
|
}, [fees, mode, transactionOption, dispatch]);
|
|
7016
7065
|
const { submitTransaction, isSubmitting } = useSubmitTransaction_default();
|
|
7017
|
-
const isBackButtonEnabled = (0,
|
|
7066
|
+
const isBackButtonEnabled = (0, import_react103.useMemo)(() => {
|
|
7018
7067
|
if (formStep !== 0) {
|
|
7019
7068
|
if (sourceChain.shortName === "CC") {
|
|
7020
7069
|
return ccTransactionStatus === "idle" || ccTransactionStatus === "failed";
|
|
@@ -7023,25 +7072,25 @@ var TransferWidget = ({
|
|
|
7023
7072
|
}
|
|
7024
7073
|
return false;
|
|
7025
7074
|
}, [ccTransactionStatus, sourceChain, formStep]);
|
|
7026
|
-
const isSubmitButtonEnabled = (0,
|
|
7075
|
+
const isSubmitButtonEnabled = (0, import_react103.useMemo)(() => {
|
|
7027
7076
|
if (submitted) return false;
|
|
7028
7077
|
if (sourceChain.shortName === "CC") {
|
|
7029
7078
|
return ccTransactionStatus === "idle";
|
|
7030
7079
|
}
|
|
7031
7080
|
return true;
|
|
7032
7081
|
}, [sourceChain, ccTransactionStatus]);
|
|
7033
|
-
const submit = (0,
|
|
7082
|
+
const submit = (0, import_react103.useCallback)(async () => {
|
|
7034
7083
|
try {
|
|
7035
7084
|
await submitTransaction(signature);
|
|
7036
7085
|
} catch (err) {
|
|
7037
|
-
import_react_hot_toast5.toast.error("Failed to submit transaction", { icon: /* @__PURE__ */
|
|
7086
|
+
import_react_hot_toast5.toast.error("Failed to submit transaction", { icon: /* @__PURE__ */ import_react103.default.createElement(Error_default, null) });
|
|
7038
7087
|
dispatch(setCCTransactionStatus("error-generic"));
|
|
7039
7088
|
}
|
|
7040
7089
|
}, [signature, submitTransaction]);
|
|
7041
7090
|
const handleSubmit = async () => {
|
|
7042
7091
|
const { error: error2, message: validationMessage } = validate(true);
|
|
7043
7092
|
if (error2 === "ValidationError" /* Error */) {
|
|
7044
|
-
return import_react_hot_toast5.toast.error(validationMessage, { icon: /* @__PURE__ */
|
|
7093
|
+
return import_react_hot_toast5.toast.error(validationMessage, { icon: /* @__PURE__ */ import_react103.default.createElement(Error_default, null) });
|
|
7045
7094
|
}
|
|
7046
7095
|
if (sourceChain.shortName === "CC") {
|
|
7047
7096
|
dispatch(setCCTransactionStatus("initialized"));
|
|
@@ -7090,7 +7139,7 @@ var TransferWidget = ({
|
|
|
7090
7139
|
if (error2 !== "ValidationError" /* Error */ && formStep > 0) {
|
|
7091
7140
|
return handleSubmit();
|
|
7092
7141
|
}
|
|
7093
|
-
import_react_hot_toast5.toast.error(validationMessage, { icon: /* @__PURE__ */
|
|
7142
|
+
import_react_hot_toast5.toast.error(validationMessage, { icon: /* @__PURE__ */ import_react103.default.createElement(Error_default, null) });
|
|
7094
7143
|
mainRef.current?.click();
|
|
7095
7144
|
};
|
|
7096
7145
|
const onBack = () => {
|
|
@@ -7165,7 +7214,7 @@ var TransferWidget = ({
|
|
|
7165
7214
|
}
|
|
7166
7215
|
await disconnectWallet();
|
|
7167
7216
|
};
|
|
7168
|
-
return /* @__PURE__ */
|
|
7217
|
+
return /* @__PURE__ */ import_react103.default.createElement(
|
|
7169
7218
|
"div",
|
|
7170
7219
|
{
|
|
7171
7220
|
className: `kima-card ${theme.colorMode}`,
|
|
@@ -7173,7 +7222,7 @@ var TransferWidget = ({
|
|
|
7173
7222
|
background: theme.colorMode === "light" /* light */ ? theme.backgroundColorLight : theme.backgroundColorDark
|
|
7174
7223
|
}
|
|
7175
7224
|
},
|
|
7176
|
-
resetModalOpen && /* @__PURE__ */
|
|
7225
|
+
resetModalOpen && /* @__PURE__ */ import_react103.default.createElement(
|
|
7177
7226
|
WarningModal_default,
|
|
7178
7227
|
{
|
|
7179
7228
|
message: "Are you sure you want to reset the widget?",
|
|
@@ -7185,7 +7234,7 @@ var TransferWidget = ({
|
|
|
7185
7234
|
onCancel: () => setResetModalOpen(false)
|
|
7186
7235
|
}
|
|
7187
7236
|
),
|
|
7188
|
-
warningModalOpen && /* @__PURE__ */
|
|
7237
|
+
warningModalOpen && /* @__PURE__ */ import_react103.default.createElement(
|
|
7189
7238
|
WarningModal_default,
|
|
7190
7239
|
{
|
|
7191
7240
|
message: warningModalOpen.message,
|
|
@@ -7199,14 +7248,14 @@ var TransferWidget = ({
|
|
|
7199
7248
|
}
|
|
7200
7249
|
}
|
|
7201
7250
|
),
|
|
7202
|
-
mode === "payment" /* payment */ && !transactionOption && /* @__PURE__ */
|
|
7203
|
-
/* @__PURE__ */
|
|
7251
|
+
mode === "payment" /* payment */ && !transactionOption && /* @__PURE__ */ import_react103.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."),
|
|
7252
|
+
/* @__PURE__ */ import_react103.default.createElement("div", { className: "transfer-card" }, /* @__PURE__ */ import_react103.default.createElement("div", { className: "kima-card-header" }, /* @__PURE__ */ import_react103.default.createElement("div", { className: "topbar" }, /* @__PURE__ */ import_react103.default.createElement("div", { className: "title" }, /* @__PURE__ */ import_react103.default.createElement("h3", { style: { marginRight: "5px" } }, 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_react103.default.createElement("div", { className: "control-buttons" }, pendingTxs > 0 ? /* @__PURE__ */ import_react103.default.createElement(TxButton_default, { theme }) : null, /* @__PURE__ */ import_react103.default.createElement(
|
|
7204
7253
|
ExternalLink_default,
|
|
7205
7254
|
{
|
|
7206
7255
|
to: helpURL ? helpURL : networkOption === "testnet" /* testnet */ ? "https://docs.kima.network/kima-network/try-kima-with-the-demo-app" : "https://support.kima.network"
|
|
7207
7256
|
},
|
|
7208
|
-
/* @__PURE__ */
|
|
7209
|
-
), sourceChain.shortName === "CC" && formStep > 0 && /* @__PURE__ */
|
|
7257
|
+
/* @__PURE__ */ import_react103.default.createElement("div", { className: "menu-button" }, "I need help")
|
|
7258
|
+
), sourceChain.shortName === "CC" && formStep > 0 && /* @__PURE__ */ import_react103.default.createElement(ExternalLink_default, { to: "https://docs.kima.network/kima-network/supported-fiat#unsupported-countries-credit-cards" }, /* @__PURE__ */ import_react103.default.createElement("div", { className: "menu-button" }, "Unsupported Countries")), formStep === 0 && mode !== "payment" /* payment */ && /* @__PURE__ */ import_react103.default.createElement(
|
|
7210
7259
|
"button",
|
|
7211
7260
|
{
|
|
7212
7261
|
className: "reset-button",
|
|
@@ -7214,7 +7263,7 @@ var TransferWidget = ({
|
|
|
7214
7263
|
disabled: isApproving || isSubmitting || isSigning
|
|
7215
7264
|
},
|
|
7216
7265
|
"Reset"
|
|
7217
|
-
))), mode === "payment" /* payment */ && paymentTitleOption?.title && /* @__PURE__ */
|
|
7266
|
+
))), mode === "payment" /* payment */ && paymentTitleOption?.title && /* @__PURE__ */ import_react103.default.createElement("h4", { className: "subtitle" }, paymentTitleOption.title)), /* @__PURE__ */ import_react103.default.createElement("div", { className: "kima-card-content", ref: mainRef }, formStep === 0 ? /* @__PURE__ */ import_react103.default.createElement(
|
|
7218
7267
|
SingleForm_default,
|
|
7219
7268
|
{
|
|
7220
7269
|
...{
|
|
@@ -7227,7 +7276,7 @@ var TransferWidget = ({
|
|
|
7227
7276
|
setInitialSelection
|
|
7228
7277
|
}
|
|
7229
7278
|
}
|
|
7230
|
-
) : ccTransactionStatus !== "idle" ? /* @__PURE__ */
|
|
7279
|
+
) : ccTransactionStatus !== "idle" ? /* @__PURE__ */ import_react103.default.createElement(CCWidget_default, { submitCallback: submit }) : /* @__PURE__ */ import_react103.default.createElement(
|
|
7231
7280
|
ConfirmDetails_default,
|
|
7232
7281
|
{
|
|
7233
7282
|
...{
|
|
@@ -7235,12 +7284,12 @@ var TransferWidget = ({
|
|
|
7235
7284
|
feeOptionDisabled
|
|
7236
7285
|
}
|
|
7237
7286
|
}
|
|
7238
|
-
)), /* @__PURE__ */
|
|
7287
|
+
)), /* @__PURE__ */ import_react103.default.createElement(
|
|
7239
7288
|
"div",
|
|
7240
7289
|
{
|
|
7241
7290
|
className: `kima-card-footer ${mode === "bridge" /* bridge */ && formStep !== 0 && "confirm"}`
|
|
7242
7291
|
},
|
|
7243
|
-
/* @__PURE__ */
|
|
7292
|
+
/* @__PURE__ */ import_react103.default.createElement("div", { className: `button-group` }, isBackButtonEnabled && /* @__PURE__ */ import_react103.default.createElement(
|
|
7244
7293
|
SecondaryButton_default,
|
|
7245
7294
|
{
|
|
7246
7295
|
clickHandler: onBack,
|
|
@@ -7248,7 +7297,7 @@ var TransferWidget = ({
|
|
|
7248
7297
|
disabled: isApproving || isSubmitting || isSigning
|
|
7249
7298
|
},
|
|
7250
7299
|
formStep > 0 && ccTransactionStatus !== "initialized" ? "Back" : "Cancel"
|
|
7251
|
-
), !!allowance && allowance > 0 && formStep !== 0 && sourceChain.shortName !== "CC" && mode !== "light" /* light */ ? /* @__PURE__ */
|
|
7300
|
+
), !!allowance && allowance > 0 && formStep !== 0 && sourceChain.shortName !== "CC" && mode !== "light" /* light */ ? /* @__PURE__ */ import_react103.default.createElement(
|
|
7252
7301
|
SecondaryButton_default,
|
|
7253
7302
|
{
|
|
7254
7303
|
clickHandler: onCancelApprove,
|
|
@@ -7257,7 +7306,7 @@ var TransferWidget = ({
|
|
|
7257
7306
|
disabled: isCancellingApprove || isApproving || isSubmitting || isSigning
|
|
7258
7307
|
},
|
|
7259
7308
|
isCancellingApprove ? "Cancelling Approval" : "Cancel Approve"
|
|
7260
|
-
) : null, isSubmitButtonEnabled && /* @__PURE__ */
|
|
7309
|
+
) : null, isSubmitButtonEnabled && /* @__PURE__ */ import_react103.default.createElement(
|
|
7261
7310
|
PrimaryButton_default,
|
|
7262
7311
|
{
|
|
7263
7312
|
clickHandler: onNext,
|
|
@@ -7266,7 +7315,7 @@ var TransferWidget = ({
|
|
|
7266
7315
|
},
|
|
7267
7316
|
getButtonLabel()
|
|
7268
7317
|
))
|
|
7269
|
-
), /* @__PURE__ */
|
|
7318
|
+
), /* @__PURE__ */ import_react103.default.createElement(SolanaWalletConnectModal_default, null), /* @__PURE__ */ import_react103.default.createElement(TronWalletConnectModal_default, null), /* @__PURE__ */ import_react103.default.createElement(
|
|
7270
7319
|
import_react_hot_toast5.Toaster,
|
|
7271
7320
|
{
|
|
7272
7321
|
position: "top-right",
|
|
@@ -7291,19 +7340,19 @@ var TransferWidget = ({
|
|
|
7291
7340
|
}
|
|
7292
7341
|
}
|
|
7293
7342
|
}
|
|
7294
|
-
), /* @__PURE__ */
|
|
7343
|
+
), /* @__PURE__ */ import_react103.default.createElement("div", { className: "floating-footer" }, /* @__PURE__ */ import_react103.default.createElement("div", { className: `items ${theme.colorMode}` }, /* @__PURE__ */ import_react103.default.createElement("span", null, "Powered by"), /* @__PURE__ */ import_react103.default.createElement(KimaNetwork_default, null))))
|
|
7295
7344
|
);
|
|
7296
7345
|
};
|
|
7297
7346
|
|
|
7298
7347
|
// src/components/KimaWidgetWrapper.tsx
|
|
7299
|
-
var
|
|
7348
|
+
var import_react107 = require("@reown/appkit/react");
|
|
7300
7349
|
|
|
7301
7350
|
// src/hooks/useDebugMode.ts
|
|
7302
|
-
var
|
|
7351
|
+
var import_react104 = require("react");
|
|
7303
7352
|
var useDebugCode = (sequence = ["D", "E", "B", "U", "G"]) => {
|
|
7304
|
-
const [debugMode, setDebugMode] = (0,
|
|
7305
|
-
const [, setInputSequence] = (0,
|
|
7306
|
-
(0,
|
|
7353
|
+
const [debugMode, setDebugMode] = (0, import_react104.useState)(false);
|
|
7354
|
+
const [, setInputSequence] = (0, import_react104.useState)([]);
|
|
7355
|
+
(0, import_react104.useEffect)(() => {
|
|
7307
7356
|
const onKeyDown = (e) => {
|
|
7308
7357
|
setInputSequence((prev) => {
|
|
7309
7358
|
const next = [...prev, e.key].slice(-sequence.length);
|
|
@@ -7330,7 +7379,7 @@ var useDebugCode = (sequence = ["D", "E", "B", "U", "G"]) => {
|
|
|
7330
7379
|
};
|
|
7331
7380
|
|
|
7332
7381
|
// src/components/ErrorWidget.tsx
|
|
7333
|
-
var
|
|
7382
|
+
var import_react105 = __toESM(require("react"), 1);
|
|
7334
7383
|
var import_react_redux57 = require("react-redux");
|
|
7335
7384
|
var ErrorWidget = ({
|
|
7336
7385
|
theme,
|
|
@@ -7343,7 +7392,7 @@ var ErrorWidget = ({
|
|
|
7343
7392
|
const ccTransactionId = (0, import_react_redux57.useSelector)(selectCCTransactionId);
|
|
7344
7393
|
const isCreditCardSource = sourceChain.shortName === "CC";
|
|
7345
7394
|
const isRetrying = (0, import_react_redux57.useSelector)(selectCCTransactionRetrying);
|
|
7346
|
-
return /* @__PURE__ */
|
|
7395
|
+
return /* @__PURE__ */ import_react105.default.createElement(
|
|
7347
7396
|
"div",
|
|
7348
7397
|
{
|
|
7349
7398
|
className: `kima-card ${theme.colorMode}`,
|
|
@@ -7351,7 +7400,7 @@ var ErrorWidget = ({
|
|
|
7351
7400
|
background: theme.colorMode === "light" /* light */ ? theme.backgroundColorLight : theme.backgroundColorDark
|
|
7352
7401
|
}
|
|
7353
7402
|
},
|
|
7354
|
-
/* @__PURE__ */
|
|
7403
|
+
/* @__PURE__ */ import_react105.default.createElement("div", { className: "transfer-card" }, /* @__PURE__ */ import_react105.default.createElement("div", { className: "kima-card-header" }, /* @__PURE__ */ import_react105.default.createElement("div", { className: "topbar" }, /* @__PURE__ */ import_react105.default.createElement("div", { className: "title" }, /* @__PURE__ */ import_react105.default.createElement("h3", null, title))), /* @__PURE__ */ import_react105.default.createElement("h4", { className: "subtitle" })), /* @__PURE__ */ import_react105.default.createElement("div", { className: "kima-card-content error" }, isCreditCardSource && !isRetrying && /* @__PURE__ */ import_react105.default.createElement(Error_default, { width: 40, height: 40 }), message && message !== "" && /* @__PURE__ */ import_react105.default.createElement("h2", null, message), isCreditCardSource && /* @__PURE__ */ import_react105.default.createElement(
|
|
7355
7404
|
"div",
|
|
7356
7405
|
{
|
|
7357
7406
|
style: {
|
|
@@ -7360,8 +7409,8 @@ var ErrorWidget = ({
|
|
|
7360
7409
|
flexDirection: "column"
|
|
7361
7410
|
}
|
|
7362
7411
|
},
|
|
7363
|
-
isRetrying ? /* @__PURE__ */
|
|
7364
|
-
ccTransactionId && /* @__PURE__ */
|
|
7412
|
+
isRetrying ? /* @__PURE__ */ import_react105.default.createElement("p", null, "The transaction is being retried in the background. This may take a few moments. If the issue persists, please contact support and provide the transaction ID below for reference.") : /* @__PURE__ */ import_react105.default.createElement("p", null, "This credit card transaction has failed. Please check the details and try again. If the issue persists, please contact support and provide the transaction ID below for reference."),
|
|
7413
|
+
ccTransactionId && /* @__PURE__ */ import_react105.default.createElement(
|
|
7365
7414
|
"div",
|
|
7366
7415
|
{
|
|
7367
7416
|
style: {
|
|
@@ -7371,7 +7420,7 @@ var ErrorWidget = ({
|
|
|
7371
7420
|
justifyContent: "center"
|
|
7372
7421
|
}
|
|
7373
7422
|
},
|
|
7374
|
-
/* @__PURE__ */
|
|
7423
|
+
/* @__PURE__ */ import_react105.default.createElement(
|
|
7375
7424
|
"code",
|
|
7376
7425
|
{
|
|
7377
7426
|
style: {
|
|
@@ -7382,10 +7431,10 @@ var ErrorWidget = ({
|
|
|
7382
7431
|
},
|
|
7383
7432
|
ccTransactionId
|
|
7384
7433
|
),
|
|
7385
|
-
/* @__PURE__ */
|
|
7434
|
+
/* @__PURE__ */ import_react105.default.createElement(CopyButton_default, { text: ccTransactionId })
|
|
7386
7435
|
),
|
|
7387
|
-
isRetrying && /* @__PURE__ */
|
|
7388
|
-
)), backButtonEnabled && /* @__PURE__ */
|
|
7436
|
+
isRetrying && /* @__PURE__ */ import_react105.default.createElement(ring_default, { width: 30, height: 30, fill: "#86b8ce" })
|
|
7437
|
+
)), backButtonEnabled && /* @__PURE__ */ import_react105.default.createElement(
|
|
7389
7438
|
"div",
|
|
7390
7439
|
{
|
|
7391
7440
|
style: {
|
|
@@ -7394,8 +7443,8 @@ var ErrorWidget = ({
|
|
|
7394
7443
|
marginTop: 16
|
|
7395
7444
|
}
|
|
7396
7445
|
},
|
|
7397
|
-
/* @__PURE__ */
|
|
7398
|
-
), /* @__PURE__ */
|
|
7446
|
+
/* @__PURE__ */ import_react105.default.createElement(PrimaryButton_default, { clickHandler: backButtonFunction }, "Back")
|
|
7447
|
+
), /* @__PURE__ */ import_react105.default.createElement("div", { className: "kima-card-footer" }), /* @__PURE__ */ import_react105.default.createElement("div", { className: "floating-footer" }, /* @__PURE__ */ import_react105.default.createElement("div", { className: `items ${theme.colorMode}` }, /* @__PURE__ */ import_react105.default.createElement("span", null, "Powered by"), /* @__PURE__ */ import_react105.default.createElement(FooterLogo_default, { width: 50, fill: "black" }), /* @__PURE__ */ import_react105.default.createElement("strong", null, "Network"))))
|
|
7399
7448
|
);
|
|
7400
7449
|
};
|
|
7401
7450
|
var ErrorWidget_default = ErrorWidget;
|
|
@@ -7418,13 +7467,13 @@ var KimaWidgetWrapper = ({
|
|
|
7418
7467
|
const { kimaBackendUrl } = useKimaContext();
|
|
7419
7468
|
const submitted = (0, import_react_redux58.useSelector)(selectSubmitted);
|
|
7420
7469
|
const dispatch = (0, import_react_redux58.useDispatch)();
|
|
7421
|
-
const { setThemeMode, setThemeVariables } = (0,
|
|
7470
|
+
const { setThemeMode, setThemeVariables } = (0, import_react107.useAppKitTheme)();
|
|
7422
7471
|
const sourceChain = (0, import_react_redux58.useSelector)(selectSourceChain);
|
|
7423
7472
|
const ccTransactionStatus = (0, import_react_redux58.useSelector)(selectCCTransactionStatus);
|
|
7424
7473
|
const ccTransactionRetrying = (0, import_react_redux58.useSelector)(selectCCTransactionRetrying);
|
|
7425
7474
|
const networkOption = envOptions?.env;
|
|
7426
7475
|
const kimaExplorer = envOptions?.kimaExplorer || "https://explorer.sardis.kima.network";
|
|
7427
|
-
(0,
|
|
7476
|
+
(0, import_react106.useEffect)(() => {
|
|
7428
7477
|
dispatch(setTheme(theme));
|
|
7429
7478
|
setThemeMode(theme.colorMode === "light" /* light */ ? "light" : "dark");
|
|
7430
7479
|
setThemeVariables({
|
|
@@ -7465,7 +7514,7 @@ var KimaWidgetWrapper = ({
|
|
|
7465
7514
|
dispatch(setSubmitted(false));
|
|
7466
7515
|
}
|
|
7467
7516
|
}, [theme, transactionOption, mode, networkOption, chainData]);
|
|
7468
|
-
(0,
|
|
7517
|
+
(0, import_react106.useEffect)(() => {
|
|
7469
7518
|
if (!chainData?.length) return;
|
|
7470
7519
|
indexPluginsByChain(chainData);
|
|
7471
7520
|
}, [chainData]);
|
|
@@ -7473,9 +7522,9 @@ var KimaWidgetWrapper = ({
|
|
|
7473
7522
|
console.log("widget wrapper", submitted, ccTransactionStatus);
|
|
7474
7523
|
if (submitted) {
|
|
7475
7524
|
logger_default.debug("will return transaction widget on cc success");
|
|
7476
|
-
return /* @__PURE__ */
|
|
7525
|
+
return /* @__PURE__ */ import_react106.default.createElement(TransactionWidget, { theme });
|
|
7477
7526
|
} else if (ccTransactionStatus === "error-id") {
|
|
7478
|
-
return /* @__PURE__ */
|
|
7527
|
+
return /* @__PURE__ */ import_react106.default.createElement(
|
|
7479
7528
|
ErrorWidget_default,
|
|
7480
7529
|
{
|
|
7481
7530
|
theme,
|
|
@@ -7489,7 +7538,7 @@ var KimaWidgetWrapper = ({
|
|
|
7489
7538
|
}
|
|
7490
7539
|
);
|
|
7491
7540
|
} else if (ccTransactionStatus === "error-generic") {
|
|
7492
|
-
return /* @__PURE__ */
|
|
7541
|
+
return /* @__PURE__ */ import_react106.default.createElement(
|
|
7493
7542
|
ErrorWidget_default,
|
|
7494
7543
|
{
|
|
7495
7544
|
theme,
|
|
@@ -7503,7 +7552,7 @@ var KimaWidgetWrapper = ({
|
|
|
7503
7552
|
}
|
|
7504
7553
|
);
|
|
7505
7554
|
}
|
|
7506
|
-
return /* @__PURE__ */
|
|
7555
|
+
return /* @__PURE__ */ import_react106.default.createElement(
|
|
7507
7556
|
TransferWidget,
|
|
7508
7557
|
{
|
|
7509
7558
|
theme,
|
|
@@ -7513,7 +7562,7 @@ var KimaWidgetWrapper = ({
|
|
|
7513
7562
|
}
|
|
7514
7563
|
);
|
|
7515
7564
|
}
|
|
7516
|
-
return submitted ? /* @__PURE__ */
|
|
7565
|
+
return submitted ? /* @__PURE__ */ import_react106.default.createElement(TransactionWidget, { theme }) : /* @__PURE__ */ import_react106.default.createElement(
|
|
7517
7566
|
TransferWidget,
|
|
7518
7567
|
{
|
|
7519
7568
|
theme,
|
|
@@ -7529,9 +7578,9 @@ var KimaWidgetWrapper_default = KimaWidgetWrapper;
|
|
|
7529
7578
|
var import_react_redux59 = require("react-redux");
|
|
7530
7579
|
|
|
7531
7580
|
// src/SkeletonLoader.tsx
|
|
7532
|
-
var
|
|
7581
|
+
var import_react108 = __toESM(require("react"), 1);
|
|
7533
7582
|
var SkeletonLoader = ({ theme }) => {
|
|
7534
|
-
return /* @__PURE__ */
|
|
7583
|
+
return /* @__PURE__ */ import_react108.default.createElement(
|
|
7535
7584
|
"div",
|
|
7536
7585
|
{
|
|
7537
7586
|
className: `kima-card ${theme.colorMode}`,
|
|
@@ -7539,7 +7588,7 @@ var SkeletonLoader = ({ theme }) => {
|
|
|
7539
7588
|
background: theme.colorMode === "light" /* light */ ? theme.backgroundColorLight : theme.backgroundColorDark
|
|
7540
7589
|
}
|
|
7541
7590
|
},
|
|
7542
|
-
/* @__PURE__ */
|
|
7591
|
+
/* @__PURE__ */ import_react108.default.createElement("div", { className: "transfer-card" }, /* @__PURE__ */ import_react108.default.createElement("div", { className: "kima-card-header" }, /* @__PURE__ */ import_react108.default.createElement("div", { className: "topbar" }, /* @__PURE__ */ import_react108.default.createElement("div", { className: "title skeleton" }, /* @__PURE__ */ import_react108.default.createElement("h3", null))), /* @__PURE__ */ import_react108.default.createElement("h4", { className: "subtitle" })), /* @__PURE__ */ import_react108.default.createElement("div", { className: "kima-card-content skeleton" }, /* @__PURE__ */ import_react108.default.createElement("div", { className: "skeleton" }), /* @__PURE__ */ import_react108.default.createElement("div", { className: "skeleton" }), /* @__PURE__ */ import_react108.default.createElement("div", { className: "skeleton" }), /* @__PURE__ */ import_react108.default.createElement("div", { className: "skeleton" }), /* @__PURE__ */ import_react108.default.createElement("div", { className: "skeleton" })), /* @__PURE__ */ import_react108.default.createElement("div", { className: `kima-card-footer` }, /* @__PURE__ */ import_react108.default.createElement("div", { className: `button-group skeleton` }, /* @__PURE__ */ import_react108.default.createElement("div", { className: "skeleton" }))), /* @__PURE__ */ import_react108.default.createElement("div", { className: "floating-footer" }, /* @__PURE__ */ import_react108.default.createElement("div", { className: `items ${theme.colorMode}` }, /* @__PURE__ */ import_react108.default.createElement("span", null, "Powered by"), /* @__PURE__ */ import_react108.default.createElement(FooterLogo_default, { width: 50, fill: "black" }), /* @__PURE__ */ import_react108.default.createElement("strong", null, "Network"))))
|
|
7543
7592
|
);
|
|
7544
7593
|
};
|
|
7545
7594
|
var SkeletonLoader_default = SkeletonLoader;
|
|
@@ -7558,7 +7607,7 @@ var KimaTransactionWidget = ({
|
|
|
7558
7607
|
}) => {
|
|
7559
7608
|
const dispatch = (0, import_react_redux59.useDispatch)();
|
|
7560
7609
|
const { kimaBackendUrl } = useKimaContext();
|
|
7561
|
-
const [hydrated, setHydrated] = (0,
|
|
7610
|
+
const [hydrated, setHydrated] = (0, import_react109.useState)(false);
|
|
7562
7611
|
const {
|
|
7563
7612
|
data: envOptions,
|
|
7564
7613
|
error: envOptionsError,
|
|
@@ -7569,26 +7618,26 @@ var KimaTransactionWidget = ({
|
|
|
7569
7618
|
error: chainDataError,
|
|
7570
7619
|
isLoading: isLoadingChainData
|
|
7571
7620
|
} = useChainData(kimaBackendUrl);
|
|
7572
|
-
(0,
|
|
7621
|
+
(0, import_react109.useEffect)(() => {
|
|
7573
7622
|
if (typeof window !== "undefined") setHydrated(true);
|
|
7574
7623
|
}, []);
|
|
7575
|
-
(0,
|
|
7624
|
+
(0, import_react109.useEffect)(() => {
|
|
7576
7625
|
if (!isLoadingChainData && chainData) {
|
|
7577
7626
|
dispatch(setSourceChain(chainData[0]));
|
|
7578
7627
|
dispatch(setTargetChain(chainData[1]));
|
|
7579
7628
|
}
|
|
7580
7629
|
}, [chainData]);
|
|
7581
|
-
(0,
|
|
7630
|
+
(0, import_react109.useEffect)(() => {
|
|
7582
7631
|
if (theme?.colorMode) {
|
|
7583
7632
|
dispatch(setTheme(theme));
|
|
7584
7633
|
}
|
|
7585
7634
|
}, [theme?.colorMode]);
|
|
7586
7635
|
if (!hydrated || !theme?.colorMode)
|
|
7587
|
-
return /* @__PURE__ */
|
|
7636
|
+
return /* @__PURE__ */ import_react109.default.createElement(ring_default, { width: 20, height: 20, fill: "#86b8ce" });
|
|
7588
7637
|
if (isLoadingEnvs || isLoadingChainData)
|
|
7589
|
-
return /* @__PURE__ */
|
|
7638
|
+
return /* @__PURE__ */ import_react109.default.createElement(SkeletonLoader_default, { theme });
|
|
7590
7639
|
if (envOptionsError || !envOptions)
|
|
7591
|
-
return /* @__PURE__ */
|
|
7640
|
+
return /* @__PURE__ */ import_react109.default.createElement(
|
|
7592
7641
|
ErrorWidget_default,
|
|
7593
7642
|
{
|
|
7594
7643
|
theme,
|
|
@@ -7597,7 +7646,7 @@ var KimaTransactionWidget = ({
|
|
|
7597
7646
|
}
|
|
7598
7647
|
);
|
|
7599
7648
|
if (chainDataError || !chainData)
|
|
7600
|
-
return /* @__PURE__ */
|
|
7649
|
+
return /* @__PURE__ */ import_react109.default.createElement(
|
|
7601
7650
|
ErrorWidget_default,
|
|
7602
7651
|
{
|
|
7603
7652
|
theme,
|
|
@@ -7605,7 +7654,7 @@ var KimaTransactionWidget = ({
|
|
|
7605
7654
|
message: "There was an error loading the chain data from the backend. Please check that the backend is running properly and the widget points to the corresponding url." /* ChainLoadingError */
|
|
7606
7655
|
}
|
|
7607
7656
|
);
|
|
7608
|
-
return /* @__PURE__ */
|
|
7657
|
+
return /* @__PURE__ */ import_react109.default.createElement(
|
|
7609
7658
|
KimaWidgetWrapper_default,
|
|
7610
7659
|
{
|
|
7611
7660
|
...{
|