tek-wallet 0.0.822 → 0.0.823
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/components/TekWallet/components/ui/AssetsBoard/index.js +1 -0
- package/dist/components/TekWallet/components/ui/Input/ClearInput.d.ts +5 -0
- package/dist/components/TekWallet/components/ui/{WithdrawFunction/components/tutorial.js → Input/ClearInput.js} +5 -9
- package/dist/components/TekWallet/components/ui/Input/PasteInput.d.ts +5 -0
- package/dist/components/TekWallet/components/ui/{WithdrawFunction/components/transferHistory.js → Input/PasteInput.js} +5 -9
- package/dist/components/TekWallet/components/ui/Input/QrScan.d.ts +5 -0
- package/dist/components/TekWallet/components/ui/Input/QrScan.js +31 -0
- package/dist/components/TekWallet/components/ui/Input/index.d.ts +12 -10
- package/dist/components/TekWallet/components/ui/Input/index.js +120 -19
- package/dist/components/TekWallet/components/ui/Input/index_bk.d.ts +10 -0
- package/dist/components/TekWallet/components/ui/Input/index_bk.js +46 -0
- package/dist/components/TekWallet/components/ui/QrCodeReader/index.d.ts +2 -1
- package/dist/components/TekWallet/components/ui/QrCodeReader/index.js +10 -3
- package/dist/components/TekWallet/components/views/SendExternalView/components/Form.js +54 -77
- package/dist/components/TekWallet/components/views/SendInternalView/components/Form.js +24 -68
- package/dist/components/TekWallet/components/views/SendNftView/components/Form.js +19 -65
- package/dist/components/TekWallet/index.d.ts +1 -0
- package/dist/components/TekWallet/index.js +1 -0
- package/dist/components/TekWallet/providers/TanstackReactQuery/index.js +4 -1
- package/package.json +1 -1
- package/dist/components/TekWallet/components/ui/WithdrawFunction/components/selectToken.d.ts +0 -13
- package/dist/components/TekWallet/components/ui/WithdrawFunction/components/selectToken.js +0 -48
- package/dist/components/TekWallet/components/ui/WithdrawFunction/components/sendForm.d.ts +0 -29
- package/dist/components/TekWallet/components/ui/WithdrawFunction/components/sendForm.js +0 -235
- package/dist/components/TekWallet/components/ui/WithdrawFunction/components/sortByBalance.d.ts +0 -7
- package/dist/components/TekWallet/components/ui/WithdrawFunction/components/sortByBalance.js +0 -45
- package/dist/components/TekWallet/components/ui/WithdrawFunction/components/sortByToken.d.ts +0 -7
- package/dist/components/TekWallet/components/ui/WithdrawFunction/components/sortByToken.js +0 -45
- package/dist/components/TekWallet/components/ui/WithdrawFunction/components/summary/infoSummary.d.ts +0 -14
- package/dist/components/TekWallet/components/ui/WithdrawFunction/components/summary/infoSummary.js +0 -111
- package/dist/components/TekWallet/components/ui/WithdrawFunction/components/transferHistory.d.ts +0 -5
- package/dist/components/TekWallet/components/ui/WithdrawFunction/components/tutorial.d.ts +0 -5
- package/dist/components/TekWallet/components/ui/WithdrawFunction/index.d.ts +0 -38
- package/dist/components/TekWallet/components/ui/WithdrawFunction/index.js +0 -570
- package/dist/components/TekWallet/components/views/SendInternalView/components/AmountForm.d.ts +0 -11
- package/dist/components/TekWallet/components/views/SendInternalView/components/AmountForm.js +0 -382
- package/dist/components/TekWallet/utils/sort.utils.d.ts +0 -3
- package/dist/components/TekWallet/utils/sort.utils.js +0 -24
|
@@ -26,6 +26,7 @@ var AssetsBoard = function () {
|
|
|
26
26
|
return ((0, jsx_runtime_1.jsx)(material_1.Box, { children: (0, jsx_runtime_1.jsx)(SwiperControlled_1.default, { swiperProps: {
|
|
27
27
|
slidesPerView: 1,
|
|
28
28
|
spaceBetween: 40,
|
|
29
|
+
autoHeight: true,
|
|
29
30
|
}, tabParamName: "assets-tab", tabs: ASSETS_TABS === null || ASSETS_TABS === void 0 ? void 0 : ASSETS_TABS.map(function (type, index) {
|
|
30
31
|
return ((0, jsx_runtime_1.jsx)(material_1.Tab, { label: type.name, value: index, "data-index": index, sx: {
|
|
31
32
|
padding: "".concat(theme.styleMixins.customPadding.p8, " ").concat(theme.styleMixins.customPadding.p16),
|
|
@@ -24,12 +24,8 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
24
24
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
25
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
26
26
|
var material_1 = require("@mui/material");
|
|
27
|
-
|
|
28
|
-
var
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
height: 20,
|
|
33
|
-
} }, rest, { children: SvgPath_1.IC_TUTORIAL })));
|
|
34
|
-
};
|
|
35
|
-
exports.default = Tutorial;
|
|
27
|
+
function ClearInput(props) {
|
|
28
|
+
var sx = props.sx, rest = __rest(props, ["sx"]);
|
|
29
|
+
return ((0, jsx_runtime_1.jsx)(material_1.SvgIcon, __assign({ sx: __assign({ width: 24, height: 24 }, sx) }, rest, { children: (0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", height: "48px", viewBox: "0 -960 960 960", width: "48px", fill: "currentColor", children: (0, jsx_runtime_1.jsx)("path", { d: "M333.08-311.08 480-458l146.92 146.92 22-22L502-480l146.92-146.92-22-22L480-502 333.08-648.92l-22 22L458-480 311.08-333.08l22 22ZM480.13-120q-74.44 0-139.79-28.34t-114.48-77.42q-49.13-49.08-77.49-114.37Q120-405.42 120-479.87q0-74.67 28.34-140.41 28.34-65.73 77.42-114.36 49.08-48.63 114.37-76.99Q405.42-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.44-28.34 139.79t-76.92 114.48q-48.58 49.13-114.26 77.49Q554.81-120 480.13-120Z" }) }) })));
|
|
30
|
+
}
|
|
31
|
+
exports.default = ClearInput;
|
|
@@ -24,12 +24,8 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
24
24
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
25
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
26
26
|
var material_1 = require("@mui/material");
|
|
27
|
-
|
|
28
|
-
var
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
height: 20,
|
|
33
|
-
} }, rest, { children: SvgPath_1.IC_HISTORY })));
|
|
34
|
-
};
|
|
35
|
-
exports.default = TransferHistory;
|
|
27
|
+
function PasteInput(props) {
|
|
28
|
+
var sx = props.sx, rest = __rest(props, ["sx"]);
|
|
29
|
+
return ((0, jsx_runtime_1.jsx)(material_1.SvgIcon, __assign({ sx: __assign({ width: 24, height: 24 }, sx) }, rest, { children: (0, jsx_runtime_1.jsx)("svg", { width: "18", height: "18", viewBox: "0 0 18 18", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: (0, jsx_runtime_1.jsx)("path", { d: "M14.625 10.6875V8.71875C14.625 8.04742 14.3583 7.40359 13.8836 6.92889C13.4089 6.45418 12.7651 6.1875 12.0938 6.1875H10.9688C10.745 6.1875 10.5304 6.09861 10.3721 5.94037C10.2139 5.78214 10.125 5.56753 10.125 5.34375V4.21875C10.125 3.54742 9.85832 2.90359 9.38361 2.42889C8.90891 1.95418 8.26508 1.6875 7.59375 1.6875H6.1875M6.1875 11.25H11.8125M6.1875 13.5H9M7.875 1.6875H4.21875C3.753 1.6875 3.375 2.0655 3.375 2.53125V15.4688C3.375 15.9345 3.753 16.3125 4.21875 16.3125H13.7812C14.247 16.3125 14.625 15.9345 14.625 15.4688V8.4375C14.625 6.64729 13.9138 4.9304 12.648 3.66453C11.3821 2.39866 9.66521 1.6875 7.875 1.6875Z", stroke: "currentColor", strokeWidth: "1.25", strokeLinecap: "round", strokeLinejoin: "round" }) }) })));
|
|
30
|
+
}
|
|
31
|
+
exports.default = PasteInput;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
14
|
+
var t = {};
|
|
15
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
16
|
+
t[p] = s[p];
|
|
17
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
18
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
19
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
20
|
+
t[p[i]] = s[p[i]];
|
|
21
|
+
}
|
|
22
|
+
return t;
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
26
|
+
var material_1 = require("@mui/material");
|
|
27
|
+
function QrScan(props) {
|
|
28
|
+
var sx = props.sx, rest = __rest(props, ["sx"]);
|
|
29
|
+
return ((0, jsx_runtime_1.jsx)(material_1.SvgIcon, __assign({ sx: __assign({ width: 24, height: 24 }, sx) }, rest, { children: (0, jsx_runtime_1.jsx)("svg", { width: "18", height: "18", viewBox: "0 0 18 18", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: (0, jsx_runtime_1.jsx)("path", { d: "M5.625 2.8125H4.5C4.05245 2.8125 3.62323 2.99029 3.30676 3.30676C2.99029 3.62323 2.8125 4.05245 2.8125 4.5V5.625M12.375 2.8125H13.5C13.9476 2.8125 14.3768 2.99029 14.6932 3.30676C15.0097 3.62323 15.1875 4.05245 15.1875 4.5V5.625M15.1875 12.375V13.5C15.1875 13.9476 15.0097 14.3768 14.6932 14.6932C14.3768 15.0097 13.9476 15.1875 13.5 15.1875H12.375M5.625 15.1875H4.5C4.05245 15.1875 3.62323 15.0097 3.30676 14.6932C2.99029 14.3768 2.8125 13.9476 2.8125 13.5V12.375M11.25 9C11.25 9.59674 11.0129 10.169 10.591 10.591C10.169 11.0129 9.59674 11.25 9 11.25C8.40326 11.25 7.83097 11.0129 7.40901 10.591C6.98705 10.169 6.75 9.59674 6.75 9C6.75 8.40326 6.98705 7.83097 7.40901 7.40901C7.83097 6.98705 8.40326 6.75 9 6.75C9.59674 6.75 10.169 6.98705 10.591 7.40901C11.0129 7.83097 11.25 8.40326 11.25 9Z", stroke: "currentColor", strokeWidth: "1.25", strokeLinecap: "round", strokeLinejoin: "round" }) }) })));
|
|
30
|
+
}
|
|
31
|
+
exports.default = QrScan;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import { TextFieldProps
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
import { TextFieldProps as MuiTextFieldProps } from "@mui/material";
|
|
2
|
+
export type TextFieldProps = MuiTextFieldProps & {
|
|
3
|
+
className?: string;
|
|
4
|
+
canClear?: boolean;
|
|
5
|
+
canPaste?: boolean;
|
|
6
|
+
canCopy?: boolean;
|
|
7
|
+
canScan?: boolean;
|
|
8
|
+
onPaste?: () => void;
|
|
9
|
+
sanitizeScanText?: (text: string) => string;
|
|
10
|
+
};
|
|
11
|
+
declare function TextField(props: TextFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export default TextField;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
"use client";
|
|
2
3
|
var __assign = (this && this.__assign) || function () {
|
|
3
4
|
__assign = Object.assign || function(t) {
|
|
4
5
|
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
@@ -10,6 +11,42 @@ var __assign = (this && this.__assign) || function () {
|
|
|
10
11
|
};
|
|
11
12
|
return __assign.apply(this, arguments);
|
|
12
13
|
};
|
|
14
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
15
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
16
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
17
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
18
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
19
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
20
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
24
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
25
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
26
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
27
|
+
function step(op) {
|
|
28
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
29
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
30
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
31
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
32
|
+
switch (op[0]) {
|
|
33
|
+
case 0: case 1: t = op; break;
|
|
34
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
35
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
36
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
37
|
+
default:
|
|
38
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
39
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
40
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
41
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
42
|
+
if (t[2]) _.ops.pop();
|
|
43
|
+
_.trys.pop(); continue;
|
|
44
|
+
}
|
|
45
|
+
op = body.call(thisArg, _);
|
|
46
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
47
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
48
|
+
}
|
|
49
|
+
};
|
|
13
50
|
var __rest = (this && this.__rest) || function (s, e) {
|
|
14
51
|
var t = {};
|
|
15
52
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
@@ -21,26 +58,90 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
21
58
|
}
|
|
22
59
|
return t;
|
|
23
60
|
};
|
|
61
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
62
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
63
|
+
};
|
|
24
64
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
65
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
26
66
|
var material_1 = require("@mui/material");
|
|
67
|
+
var ClearInput_1 = __importDefault(require("./ClearInput"));
|
|
27
68
|
var react_1 = require("react");
|
|
28
|
-
var
|
|
29
|
-
var
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
69
|
+
var PasteInput_1 = __importDefault(require("./PasteInput"));
|
|
70
|
+
var QrScan_1 = __importDefault(require("./QrScan"));
|
|
71
|
+
// import ScanQR from "@/components/Molecules/ScanQR";
|
|
72
|
+
var lodash_1 = __importDefault(require("lodash"));
|
|
73
|
+
var cn_1 = require("../../../utils/cn");
|
|
74
|
+
var QrCodeReader_1 = __importDefault(require("../QrCodeReader"));
|
|
75
|
+
function TextField(props) {
|
|
76
|
+
var _this = this;
|
|
77
|
+
var className = props.className, value = props.value, canClear = props.canClear, canPaste = props.canPaste, canScan = props.canScan, onChange = props.onChange, slotProps = props.slotProps, sx = props.sx, sanitizeScanText = props.sanitizeScanText, rest = __rest(props, ["className", "value", "canClear", "canPaste", "canScan", "onChange", "slotProps", "sx", "sanitizeScanText"]);
|
|
78
|
+
var textFieldRef = (0, react_1.useRef)(null);
|
|
79
|
+
var input = (slotProps || {}).input;
|
|
80
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
81
|
+
var readOnly = (input || {}).readOnly;
|
|
82
|
+
var theme = (0, material_1.useTheme)();
|
|
83
|
+
var emitChange = (0, react_1.useCallback)(function (result) {
|
|
84
|
+
var _a, _b;
|
|
85
|
+
var input = (_a = textFieldRef.current) === null || _a === void 0 ? void 0 : _a.querySelector("input");
|
|
86
|
+
if (input) {
|
|
87
|
+
var nativeInputValueSetter = (_b = Object.getOwnPropertyDescriptor(HTMLInputElement.prototype, "value")) === null || _b === void 0 ? void 0 : _b.set;
|
|
88
|
+
nativeInputValueSetter === null || nativeInputValueSetter === void 0 ? void 0 : nativeInputValueSetter.call(input, result);
|
|
89
|
+
var event_1 = new Event("input", { bubbles: true });
|
|
90
|
+
input.dispatchEvent(event_1);
|
|
91
|
+
}
|
|
92
|
+
}, []);
|
|
93
|
+
var handlePaste = (0, react_1.useCallback)(function () { return __awaiter(_this, void 0, void 0, function () {
|
|
94
|
+
var input, clipboardData, nativeInputValueSetter, event_2;
|
|
95
|
+
var _a, _b;
|
|
96
|
+
return __generator(this, function (_c) {
|
|
97
|
+
switch (_c.label) {
|
|
98
|
+
case 0:
|
|
99
|
+
input = (_a = textFieldRef.current) === null || _a === void 0 ? void 0 : _a.querySelector("input");
|
|
100
|
+
if (!input) return [3 /*break*/, 2];
|
|
101
|
+
return [4 /*yield*/, navigator.clipboard.readText()];
|
|
102
|
+
case 1:
|
|
103
|
+
clipboardData = _c.sent();
|
|
104
|
+
nativeInputValueSetter = (_b = Object.getOwnPropertyDescriptor(HTMLInputElement.prototype, "value")) === null || _b === void 0 ? void 0 : _b.set;
|
|
105
|
+
nativeInputValueSetter === null || nativeInputValueSetter === void 0 ? void 0 : nativeInputValueSetter.call(input, clipboardData);
|
|
106
|
+
event_2 = new Event("input", { bubbles: true });
|
|
107
|
+
input.dispatchEvent(event_2);
|
|
108
|
+
_c.label = 2;
|
|
109
|
+
case 2: return [2 /*return*/];
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
}); }, []);
|
|
113
|
+
var handleScanResult = (0, react_1.useCallback)(function (result) {
|
|
114
|
+
if (sanitizeScanText) {
|
|
115
|
+
result = sanitizeScanText(result);
|
|
116
|
+
}
|
|
117
|
+
emitChange(result);
|
|
118
|
+
}, [sanitizeScanText, emitChange]);
|
|
119
|
+
var slotPropsMerge = (0, react_1.useMemo)(function () {
|
|
120
|
+
return lodash_1.default.merge({
|
|
121
|
+
input: {
|
|
122
|
+
endAdornment: ((0, jsx_runtime_1.jsxs)(material_1.Box, { sx: { display: "flex", alignItems: "center", gap: 0, color: "primary.main" }, children: [canClear && !!value && !readOnly && ((0, jsx_runtime_1.jsx)(ClearInput_1.default, { onClick: function () { return emitChange(""); }, sx: { width: 24, height: 24 } })), canScan && !value && !readOnly && ((0, jsx_runtime_1.jsx)(QrCodeReader_1.default, { onScan: handleScanResult, children: (0, jsx_runtime_1.jsx)(QrScan_1.default, { sx: { width: 24, height: 24 } }) })), canPaste && !value && !readOnly && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [canScan && ((0, jsx_runtime_1.jsx)(material_1.Divider, { orientation: "vertical", flexItem: true, sx: { mx: 1.5, my: 0.5 } })), (0, jsx_runtime_1.jsx)(PasteInput_1.default, { onClick: handlePaste, sx: { width: 24, height: 24 } })] }))] })),
|
|
123
|
+
sx: {
|
|
124
|
+
caretColor: theme.palette.primary.main,
|
|
125
|
+
"&::selection": {
|
|
126
|
+
backgroundColor: (0, material_1.alpha)(theme.palette.primary.main, 0.3),
|
|
127
|
+
},
|
|
128
|
+
},
|
|
129
|
+
},
|
|
130
|
+
}, slotProps);
|
|
131
|
+
}, [
|
|
132
|
+
canClear,
|
|
133
|
+
value,
|
|
134
|
+
readOnly,
|
|
135
|
+
canScan,
|
|
136
|
+
emitChange,
|
|
137
|
+
canPaste,
|
|
138
|
+
handlePaste,
|
|
139
|
+
theme.palette.primary.main,
|
|
140
|
+
slotProps,
|
|
141
|
+
handleScanResult,
|
|
142
|
+
]);
|
|
143
|
+
return ((0, jsx_runtime_1.jsx)(material_1.TextField, __assign({ ref: textFieldRef, className: (0, cn_1.cn)(className), value: value || "", onChange: onChange }, rest, { slotProps: slotPropsMerge, sx: __assign({ "& .MuiInputBase-input": {
|
|
144
|
+
pr: 2,
|
|
145
|
+
}, height: "fit-content" }, sx) })));
|
|
146
|
+
}
|
|
147
|
+
exports.default = TextField;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { TextFieldProps, BoxProps, SxProps } from "@mui/material";
|
|
2
|
+
interface InputProps extends BoxProps {
|
|
3
|
+
inputRest?: TextFieldProps;
|
|
4
|
+
leftPart?: React.ReactNode;
|
|
5
|
+
rightPart?: React.ReactNode;
|
|
6
|
+
inputSx?: SxProps;
|
|
7
|
+
}
|
|
8
|
+
export type InputRef = HTMLInputElement;
|
|
9
|
+
declare const Input: import("react").ForwardRefExoticComponent<Omit<InputProps, "ref"> & import("react").RefAttributes<HTMLInputElement>>;
|
|
10
|
+
export default Input;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
14
|
+
var t = {};
|
|
15
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
16
|
+
t[p] = s[p];
|
|
17
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
18
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
19
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
20
|
+
t[p[i]] = s[p[i]];
|
|
21
|
+
}
|
|
22
|
+
return t;
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
26
|
+
var material_1 = require("@mui/material");
|
|
27
|
+
var react_1 = require("react");
|
|
28
|
+
var mui_1 = require("../../../theme/mui");
|
|
29
|
+
var Input = (0, react_1.forwardRef)(function (props, inputRef) {
|
|
30
|
+
var inputRest = props.inputRest, leftPart = props.leftPart, rightPart = props.rightPart, sx = props.sx, inputSx = props.inputSx, rest = __rest(props, ["inputRest", "leftPart", "rightPart", "sx", "inputSx"]);
|
|
31
|
+
var theme = (0, mui_1.useTheme)();
|
|
32
|
+
return ((0, jsx_runtime_1.jsxs)(material_1.Box, __assign({ ref: inputRef, sx: __assign(__assign(__assign({}, theme.styleMixins.row), { gap: theme.styleMixins.gaps.g12, borderRadius: 1, paddingX: theme.styleMixins.customPadding.p16, border: "1px solid ".concat(theme.palette.divider), backgroundColor: theme.palette.background.default, color: theme.palette.text.primary, backdropFilter: "blur(10px)" }), sx) }, rest, { children: [leftPart, (0, jsx_runtime_1.jsx)(material_1.TextField, __assign({ autoComplete: "off", hiddenLabel: true, sx: __assign({ backgroundColor: "transparent", border: "none", outline: "none", flex: 1, height: "fit-content", "& .MuiInputBase-input": {
|
|
33
|
+
border: "none",
|
|
34
|
+
outline: "none",
|
|
35
|
+
color: theme.palette.text.primary,
|
|
36
|
+
fontSize: theme.typography.fontSize13,
|
|
37
|
+
lineHeight: theme.typography.leading140,
|
|
38
|
+
fontWeight: theme.typography.fontWeight400,
|
|
39
|
+
padding: "".concat(theme.styleMixins.customPadding.p12, " ").concat(0, "px"),
|
|
40
|
+
// height: "fit-content",
|
|
41
|
+
}, "& fieldset": { border: "none" }, "& .MuiInputBase-input::placeholder": {
|
|
42
|
+
fontSize: theme.typography.fontSize13,
|
|
43
|
+
} }, inputSx) }, inputRest)), rightPart] })));
|
|
44
|
+
});
|
|
45
|
+
Input.displayName = "Input";
|
|
46
|
+
exports.default = Input;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { BoxProps } from "@mui/material";
|
|
2
2
|
import { IDetectedBarcode } from "@yudiel/react-qr-scanner";
|
|
3
3
|
interface QrCodeReaderProps extends BoxProps {
|
|
4
|
-
onResult
|
|
4
|
+
onResult?: (result: IDetectedBarcode[]) => void;
|
|
5
|
+
onScan?: (result: string) => void;
|
|
5
6
|
}
|
|
6
7
|
export interface QrCodeReaderRef {
|
|
7
8
|
open: () => void;
|
|
@@ -55,7 +55,7 @@ var STYLES = {
|
|
|
55
55
|
nodeSize: "10%",
|
|
56
56
|
};
|
|
57
57
|
var QrCodeReader = (0, react_1.forwardRef)(function (props, ref) {
|
|
58
|
-
var sx = props.sx, className = props.className, children = props.children, onResult = props.onResult;
|
|
58
|
+
var sx = props.sx, className = props.className, children = props.children, onResult = props.onResult, onScan = props.onScan;
|
|
59
59
|
var qrReaderContainer = (0, react_1.useRef)(null);
|
|
60
60
|
var drawerRef = (0, react_1.useRef)(null);
|
|
61
61
|
var _a = (0, react_1.useState)(false), isOpen = _a[0], setIsOpen = _a[1];
|
|
@@ -124,6 +124,13 @@ var QrCodeReader = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
124
124
|
styleTag.remove();
|
|
125
125
|
};
|
|
126
126
|
}, []);
|
|
127
|
+
var handleScan = (0, react_1.useCallback)(function (result) {
|
|
128
|
+
var _a;
|
|
129
|
+
onResult === null || onResult === void 0 ? void 0 : onResult(result);
|
|
130
|
+
var text = (_a = result === null || result === void 0 ? void 0 : result[0]) === null || _a === void 0 ? void 0 : _a.rawValue;
|
|
131
|
+
onScan === null || onScan === void 0 ? void 0 : onScan(text);
|
|
132
|
+
close();
|
|
133
|
+
}, [onResult, onScan]);
|
|
127
134
|
var _d = (0, providers_1.useWalletSetup)(), topOffset = _d.topOffset, overrideQRScanMethod = _d.overrideQRScanMethod;
|
|
128
135
|
if (!!overrideQRScanMethod) {
|
|
129
136
|
var handleOverrideQRScanMethod = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
@@ -149,7 +156,7 @@ var QrCodeReader = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
149
156
|
},
|
|
150
157
|
cornerPoints: [],
|
|
151
158
|
};
|
|
152
|
-
|
|
159
|
+
handleScan([fakeIDetectedBarcode]);
|
|
153
160
|
return [3 /*break*/, 3];
|
|
154
161
|
case 2:
|
|
155
162
|
error_1 = _a.sent();
|
|
@@ -254,7 +261,7 @@ var QrCodeReader = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
254
261
|
height: "100%",
|
|
255
262
|
objectFit: "cover",
|
|
256
263
|
},
|
|
257
|
-
}, onScan:
|
|
264
|
+
}, onScan: handleScan })] })] })) }) }) }));
|
|
258
265
|
});
|
|
259
266
|
QrCodeReader.displayName = "QrCodeReader";
|
|
260
267
|
exports.default = QrCodeReader;
|
|
@@ -98,7 +98,6 @@ var lodash_1 = require("lodash");
|
|
|
98
98
|
var Button_1 = __importStar(require("../../../ui/Button"));
|
|
99
99
|
var expose_1 = require("../../../../services/axios/expose");
|
|
100
100
|
var __1 = require("..");
|
|
101
|
-
var QrCodeReader_1 = __importDefault(require("../../../ui/QrCodeReader"));
|
|
102
101
|
var Icon_1 = __importDefault(require("../../../ui/Icon"));
|
|
103
102
|
var get_est_fee_service_1 = __importDefault(require("../../../../services/axios/get-est-fee-service"));
|
|
104
103
|
var type_1 = require("../../../../services/axios/get-activities-service/type");
|
|
@@ -131,7 +130,6 @@ function Form(props) {
|
|
|
131
130
|
var _f = (0, react_1.useState)(undefined), comment = _f[0], setComment = _f[1];
|
|
132
131
|
var _g = (0, react_1.useState)(), memoError = _g[0], setMemoError = _g[1];
|
|
133
132
|
var _h = (0, react_1.useState)(false), isValidatingAddress = _h[0], setIsValidatingAddress = _h[1];
|
|
134
|
-
var scannerAddressQrCodeRef = (0, react_1.useRef)(null);
|
|
135
133
|
var _j = (0, react_1.useState)(false), isEstimatingFee = _j[0], setIsLoadingEstimateFee = _j[1];
|
|
136
134
|
var _k = (0, react_1.useState)(), estimateFee = _k[0], setEstimateFee = _k[1];
|
|
137
135
|
var _l = (0, react_1.useState)(false), isEnoughBalanceToPayFee = _l[0], setIsEnoughBalanceToPayFee = _l[1];
|
|
@@ -273,52 +271,33 @@ function Form(props) {
|
|
|
273
271
|
setSelectedNetwork(undefined);
|
|
274
272
|
setNetworks([]);
|
|
275
273
|
};
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
}
|
|
274
|
+
// const handlePaste = async () => {
|
|
275
|
+
// const text = await navigator.clipboard.readText();
|
|
276
|
+
// const address = text.trim();
|
|
277
|
+
// if (!address) {
|
|
278
|
+
// return;
|
|
279
|
+
// }
|
|
280
|
+
// handleChangeRecipientAddress({
|
|
281
|
+
// target: { value: address },
|
|
282
|
+
// } as React.ChangeEvent<HTMLInputElement>);
|
|
283
|
+
// };
|
|
284
|
+
// const handleClearRecipientAddress = () => {
|
|
285
|
+
// handleChangeRecipientAddress({
|
|
286
|
+
// target: { value: "" },
|
|
287
|
+
// } as React.ChangeEvent<HTMLInputElement>);
|
|
288
|
+
// };
|
|
289
|
+
var sanitizeScanText = function (text) {
|
|
290
|
+
var address = "";
|
|
291
|
+
var isReceiveInternal = text === null || text === void 0 ? void 0 : text.includes("isTekWalletReceiveInternal");
|
|
292
|
+
if (isReceiveInternal) {
|
|
293
|
+
var data = JSON.parse(text);
|
|
294
|
+
address = data === null || data === void 0 ? void 0 : data.address;
|
|
295
|
+
}
|
|
296
|
+
else {
|
|
297
|
+
address = text;
|
|
298
|
+
}
|
|
299
|
+
return address;
|
|
298
300
|
};
|
|
299
|
-
var handleScanAddressQrCode = function (result) { return __awaiter(_this, void 0, void 0, function () {
|
|
300
|
-
var text, address, isReceiveInternal, data;
|
|
301
|
-
var _a;
|
|
302
|
-
return __generator(this, function (_b) {
|
|
303
|
-
closeScannerAddressQrCode();
|
|
304
|
-
text = (_a = result === null || result === void 0 ? void 0 : result[0]) === null || _a === void 0 ? void 0 : _a.rawValue;
|
|
305
|
-
address = "";
|
|
306
|
-
isReceiveInternal = text === null || text === void 0 ? void 0 : text.includes("isTekWalletReceiveInternal");
|
|
307
|
-
if (isReceiveInternal) {
|
|
308
|
-
data = JSON.parse(text);
|
|
309
|
-
address = data === null || data === void 0 ? void 0 : data.address;
|
|
310
|
-
}
|
|
311
|
-
else {
|
|
312
|
-
address = text;
|
|
313
|
-
}
|
|
314
|
-
if (!address)
|
|
315
|
-
return [2 /*return*/];
|
|
316
|
-
handleChangeRecipientAddress({
|
|
317
|
-
target: { value: address },
|
|
318
|
-
});
|
|
319
|
-
return [2 /*return*/];
|
|
320
|
-
});
|
|
321
|
-
}); };
|
|
322
301
|
var handleChangeAmount = function (e) {
|
|
323
302
|
var amount = e.target.value;
|
|
324
303
|
setAmount(amount);
|
|
@@ -363,14 +342,9 @@ function Form(props) {
|
|
|
363
342
|
extraTransactions: null,
|
|
364
343
|
}, estimateFee);
|
|
365
344
|
};
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
};
|
|
370
|
-
var closeScannerAddressQrCode = function () {
|
|
371
|
-
var _a;
|
|
372
|
-
(_a = scannerAddressQrCodeRef.current) === null || _a === void 0 ? void 0 : _a.close();
|
|
373
|
-
};
|
|
345
|
+
// const openScannerAddressQrCode = () => {
|
|
346
|
+
// scannerAddressQrCodeRef.current?.open();
|
|
347
|
+
// };
|
|
374
348
|
var handleKeyboardOpen = function () {
|
|
375
349
|
setIsKeyboardOpen(true);
|
|
376
350
|
};
|
|
@@ -417,28 +391,29 @@ function Form(props) {
|
|
|
417
391
|
fontSize: theme.typography.fontSize14,
|
|
418
392
|
color: theme.palette.text.primary,
|
|
419
393
|
fontWeight: theme.typography.fontWeight700,
|
|
420
|
-
}, children: "Wallet address" }), (0, jsx_runtime_1.jsx)(Input_1.default, {
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
}, rightPart: (0, jsx_runtime_1.jsx)(material_1.Box, { sx: __assign(__assign({}, theme.styleMixins.row), { gap: theme.styleMixins.gaps.g8 }), children: !!recipientAddress ? ((0, jsx_runtime_1.jsx)("label", { htmlFor: "recipient-address-input-id", children: (0, jsx_runtime_1.jsx)(material_1.Box, { onClick: handleClearRecipientAddress, sx: __assign(__assign({}, theme.styleMixins.row), { gap: theme.styleMixins.gaps.g8, cursor: "pointer" }), children: (0, jsx_runtime_1.jsx)(material_1.SvgIcon, { sx: { width: 12, height: 12 }, children: SvgPath_1.IC_CLOSE }) }) })) : ((0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.styleMixins.row), { gap: theme.styleMixins.gaps.g8, color: "primary.main" }), children: [(0, jsx_runtime_1.jsx)(material_1.Box, { onClick: openScannerAddressQrCode, children: (0, jsx_runtime_1.jsx)(Icon_1.default, { iconKey: "IC_SCAN", sx: { width: 20, height: 20 } }) }), (0, jsx_runtime_1.jsx)(material_1.Divider, { orientation: "vertical", variant: "fullWidth", flexItem: true }), (0, jsx_runtime_1.jsx)(material_1.Box, { onClick: handlePaste, children: (0, jsx_runtime_1.jsx)(Icon_1.default, { iconKey: "IC_DOCUMENTS", sx: { width: 20, height: 20 } }) })] })) }) }), !!recipientAddressError && ((0, jsx_runtime_1.jsx)(Text_1.default, { sx: __assign({}, theme.styleMixins.validationError), children: recipientAddressError }))] }), allowSelectNetwork && ((0, jsx_runtime_1.jsxs)(react_2.motion.div, { initial: { opacity: 0, height: 0 }, animate: { opacity: 1, height: "auto" }, transition: { duration: 0.3 }, style: __assign(__assign({}, theme.styleMixins.column), { gap: theme.styleMixins.gaps.g8, willChange: "height, opacity" }), children: [(0, jsx_runtime_1.jsx)(Text_1.default, { sx: {
|
|
394
|
+
}, children: "Wallet address" }), (0, jsx_runtime_1.jsx)(Input_1.default, { canClear: true, canPaste: true, canScan: true, value: recipientAddress, sanitizeScanText: sanitizeScanText, slotProps: {
|
|
395
|
+
input: {
|
|
396
|
+
placeholder: "Enter recipient address",
|
|
397
|
+
onChange: handleChangeRecipientAddress,
|
|
398
|
+
id: "recipient-address-input-id",
|
|
399
|
+
},
|
|
400
|
+
} }), !!recipientAddressError && ((0, jsx_runtime_1.jsx)(Text_1.default, { sx: __assign({}, theme.styleMixins.validationError), children: recipientAddressError }))] }), allowSelectNetwork && ((0, jsx_runtime_1.jsxs)(react_2.motion.div, { initial: { opacity: 0, height: 0 }, animate: { opacity: 1, height: "auto" }, transition: { duration: 0.3 }, style: __assign(__assign({}, theme.styleMixins.column), { gap: theme.styleMixins.gaps.g8, willChange: "height, opacity" }), children: [(0, jsx_runtime_1.jsx)(Text_1.default, { sx: {
|
|
428
401
|
fontSize: theme.typography.fontSize14,
|
|
429
402
|
color: theme.palette.text.primary,
|
|
430
403
|
fontWeight: theme.typography.fontWeight700,
|
|
431
404
|
}, children: "Network" }), (0, jsx_runtime_1.jsx)(DrawerComponent_1.default, { ref: selectNetworkDrawerRef, trigger: (0, jsx_runtime_1.jsx)(Input_1.default, { sx: {
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
405
|
+
width: "100%",
|
|
406
|
+
}, value: (selectedNetwork === null || selectedNetwork === void 0 ? void 0 : selectedNetwork.name) || "", slotProps: {
|
|
407
|
+
input: {
|
|
408
|
+
placeholder: "Select a network",
|
|
409
|
+
onChange: handleChangeRecipientAddress,
|
|
410
|
+
inputProps: {
|
|
411
|
+
readOnly: true,
|
|
412
|
+
},
|
|
413
|
+
startAdornment: ((0, jsx_runtime_1.jsx)(material_1.Box, { sx: __assign(__assign({}, theme.styleMixins.row), { gap: theme.styleMixins.gaps.g8 }), children: (0, jsx_runtime_1.jsx)(Icon_1.default, { iconKey: "IC_NETWORK", src: (selectedNetwork === null || selectedNetwork === void 0 ? void 0 : selectedNetwork.link) || undefined, sx: { width: 24, height: 24, mr: 2 } }) })),
|
|
414
|
+
endAdornment: ((0, jsx_runtime_1.jsx)(material_1.Box, { sx: { display: "block" }, children: (0, jsx_runtime_1.jsx)(material_1.SvgIcon, { sx: { width: 10, height: 18, display: "block" }, children: SvgPath_1.ARROW_DOWN }) })),
|
|
440
415
|
},
|
|
441
|
-
}
|
|
416
|
+
} }), children: (0, jsx_runtime_1.jsx)(ModalLayout_1.default, { title: "Select network", onClose: closeSelectNetwork, children: (0, jsx_runtime_1.jsx)(SelectNetwork_1.default, { networks: networks, selectedNetwork: selectedNetwork, selectedToken: selectedToken, onChangeNetwork: handleChangeNetwork }) }) })] })), (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.styleMixins.column), { gap: theme.styleMixins.gaps.g8 }), children: [(0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.styleMixins.row), { gap: theme.styleMixins.gaps.g8, alignItems: "center", justifyContent: "space-between" }), children: [(0, jsx_runtime_1.jsx)(Text_1.default, { sx: {
|
|
442
417
|
fontSize: theme.typography.fontSize14,
|
|
443
418
|
color: theme.palette.text.primary,
|
|
444
419
|
fontWeight: theme.typography.fontWeight700,
|
|
@@ -462,11 +437,13 @@ function Form(props) {
|
|
|
462
437
|
fontSize: theme.typography.fontSize14,
|
|
463
438
|
color: theme.palette.text.primary,
|
|
464
439
|
fontWeight: theme.typography.fontWeight700,
|
|
465
|
-
}, children: "Memo" }), (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.styleMixins.column), { gap: theme.styleMixins.gaps.g8 }), children: [(0, jsx_runtime_1.jsx)(Input_1.default, {
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
440
|
+
}, children: "Memo" }), (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.styleMixins.column), { gap: theme.styleMixins.gaps.g8 }), children: [(0, jsx_runtime_1.jsx)(Input_1.default, { slotProps: {
|
|
441
|
+
input: {
|
|
442
|
+
placeholder: "Enter memo if needed",
|
|
443
|
+
value: comment,
|
|
444
|
+
onChange: handleChangeComment,
|
|
445
|
+
},
|
|
446
|
+
}, canClear: true, canPaste: true }), !!memoError && ((0, jsx_runtime_1.jsx)(Text_1.default, { sx: __assign({}, theme.styleMixins.validationError), children: memoError }))] }), (0, jsx_runtime_1.jsx)(Text_1.default, { sx: __assign({}, theme.styleMixins.validationDescription), children: "Enter memo if your receiving platform requires one to avoid losing your funds." })] }), (0, jsx_runtime_1.jsx)(Fees_1.default, { isFeePaidByAmount: true, feesData: estimateFee, amount: +amount, tokenSlug: (selectedToken === null || selectedToken === void 0 ? void 0 : selectedToken.slug) || "", feesStyle: Fees_1.FeesStyle.WITH_BACKGROUND, setIsEnoughBalanceToPayFee: setIsEnoughBalanceToPayFee }), (0, jsx_runtime_1.jsx)(Button_1.default.Primary, { loading: isValidatingAddress || isEstimatingFee, onClick: handleContinue, status: !recipientAddress ||
|
|
470
447
|
!selectedNetwork ||
|
|
471
448
|
!amount ||
|
|
472
449
|
!!recipientAddressError ||
|