tek-wallet 0.0.405 → 0.0.407
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.
|
@@ -2,7 +2,7 @@ import { GeneralProps } from "../../../types/ui";
|
|
|
2
2
|
import { ActionConfirm } from "../ConfirmLayout/type";
|
|
3
3
|
import { DrawerComponentProps, DrawerComponentRef } from "../DrawerComponent";
|
|
4
4
|
interface ConfirmByPasscodeProps extends Omit<GeneralProps, "onclick" | "sx" | "onClick">, DrawerComponentProps {
|
|
5
|
-
onConfirmSuccess?: (
|
|
5
|
+
onConfirmSuccess?: (passcode: string) => any;
|
|
6
6
|
action: ActionConfirm;
|
|
7
7
|
}
|
|
8
8
|
export interface ConfirmByPasscodeRef extends Omit<DrawerComponentRef, "trigger"> {
|
|
@@ -21,6 +21,6 @@ var material_1 = require("@mui/material");
|
|
|
21
21
|
var LineValue = function (props) {
|
|
22
22
|
var theme = (0, material_1.useTheme)();
|
|
23
23
|
var field = props.field, value = props.value, valueDescription = props.valueDescription;
|
|
24
|
-
return ((0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign(__assign({}, theme.mixins.row), { alignItems: "start", gap: theme.mixins.gaps.
|
|
24
|
+
return ((0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign(__assign({}, theme.mixins.row), { alignItems: "start", gap: theme.mixins.gaps.g32 }), props.sx), children: [!!field && ((0, jsx_runtime_1.jsx)(Text_1.default, { sx: __assign(__assign({}, theme.mixins.valueDescription), { whiteSpace: "nowrap" }), children: field })), (!!value || !!valueDescription) && ((0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.column), { flex: 1, alignItems: "end", gap: theme.mixins.gaps.g2 }), children: [!!value && ((0, jsx_runtime_1.jsx)(Text_1.default, { sx: __assign({}, theme.mixins.value), children: value })), !!valueDescription && ((0, jsx_runtime_1.jsx)(Text_1.default, { sx: __assign({}, theme.mixins.valueDescription), children: valueDescription }))] }))] }));
|
|
25
25
|
};
|
|
26
26
|
exports.default = LineValue;
|
|
@@ -120,6 +120,7 @@ var ConfirmLayout_1 = __importDefault(require("../ConfirmLayout"));
|
|
|
120
120
|
var type_1 = require("../ConfirmLayout/type");
|
|
121
121
|
var ConfirmByPasscode_1 = __importDefault(require("../ConfirmByPasscode"));
|
|
122
122
|
var LineValue_1 = __importDefault(require("../LineValue"));
|
|
123
|
+
var send_external_service_1 = __importDefault(require("../../../services/axios/send-external-service"));
|
|
123
124
|
var SendMethods;
|
|
124
125
|
(function (SendMethods) {
|
|
125
126
|
SendMethods["SCAN_QR_CODE"] = "scan qr code";
|
|
@@ -148,34 +149,35 @@ var AmountError;
|
|
|
148
149
|
AmountError["MIN_LIMIT"] = "The minimum amount is";
|
|
149
150
|
})(AmountError || (exports.AmountError = AmountError = {}));
|
|
150
151
|
var WithdrawFunction = (0, react_1.forwardRef)(function (props, ref) {
|
|
151
|
-
var _a;
|
|
152
|
+
var _a, _b;
|
|
152
153
|
var drawerRef = (0, react_1.useRef)(null);
|
|
153
154
|
var swiperRef = (0, react_1.useRef)(null);
|
|
154
155
|
var theme = (0, material_1.useTheme)();
|
|
155
|
-
var
|
|
156
|
-
var
|
|
157
|
-
var
|
|
156
|
+
var _c = (0, react_1.useState)(WithdrawStep.SELECT_METHOD), currentStep = _c[0], setCurrentStep = _c[1];
|
|
157
|
+
var _d = (0, react_1.useState)(), selectedToken = _d[0], setSelectedToken = _d[1];
|
|
158
|
+
var _e = (0, react_1.useState)(), selectedNetwork = _e[0], setSelectedNetwork = _e[1];
|
|
158
159
|
var isAuthenticated = (0, useWalletData_1.default)().isAuthenticated;
|
|
159
|
-
var
|
|
160
|
-
var
|
|
161
|
-
var
|
|
162
|
-
var
|
|
163
|
-
var
|
|
164
|
-
var
|
|
165
|
-
var
|
|
166
|
-
var
|
|
160
|
+
var _f = (0, useWithdrawData_1.default)(), withdrawTokens = _f.withdrawTokens, updateWithdrawToken = _f.updateWithdrawToken, updateSendInternalToken = _f.updateSendInternalToken, sendInternalTokens = _f.sendInternalTokens;
|
|
161
|
+
var _g = (0, react_1.useState)(), infoDialogContent = _g[0], setInfoDialogContent = _g[1];
|
|
162
|
+
var _h = (0, react_1.useState)(""), amount = _h[0], setAmount = _h[1];
|
|
163
|
+
var _j = (0, react_1.useState)(undefined), memo = _j[0], setMemo = _j[1];
|
|
164
|
+
var _k = (0, react_1.useState)(undefined), recipientAddress = _k[0], setRecipientAddress = _k[1];
|
|
165
|
+
var _l = (0, react_1.useState)(), amountErrorMessage = _l[0], setAmountErrorMessage = _l[1];
|
|
166
|
+
var _m = (0, react_1.useState)(true), hiddenError = _m[0], setHiddenError = _m[1];
|
|
167
|
+
var _o = (0, react_1.useState)(), amountError = _o[0], setAmountError = _o[1];
|
|
167
168
|
var scannerAllQrCodeRef = (0, react_1.useRef)(null);
|
|
168
169
|
var scannerAddressQrCodeRef = (0, react_1.useRef)(null);
|
|
169
170
|
var backDropRef = (0, react_1.useRef)(null);
|
|
170
171
|
var suggestUseTransferInternalDialogRef = (0, react_1.useRef)(null);
|
|
171
172
|
var suggestUseTransferExternalDialogRef = (0, react_1.useRef)(null);
|
|
172
|
-
var
|
|
173
|
-
var
|
|
174
|
-
var
|
|
175
|
-
var
|
|
176
|
-
var
|
|
177
|
-
var
|
|
173
|
+
var _p = (0, react_1.useState)(), selectedMethod = _p[0], setSelectedMethod = _p[1];
|
|
174
|
+
var _q = (0, react_1.useState)(), sendInfoGet = _q[0], setSendInfoGet = _q[1];
|
|
175
|
+
var _r = (0, react_1.useState)(false), isLoadingEstimateFee = _r[0], setIsLoadingEstimateFee = _r[1];
|
|
176
|
+
var _s = (0, react_1.useState)(false), isValidatingAddress = _s[0], setIsValidatingAddress = _s[1];
|
|
177
|
+
var _t = (0, react_1.useState)(), estimateFee = _t[0], setEstimateFee = _t[1];
|
|
178
|
+
var _u = (0, react_1.useState)(), recipientAddressError = _u[0], setRecipientAddressError = _u[1];
|
|
178
179
|
var onlyChangeAddress = (0, react_1.useRef)(false);
|
|
180
|
+
var _v = (0, react_1.useState)(Button_1.BUTTON_STATUS.ENABLED), sendButtonStatus = _v[0], setSendButtonStatus = _v[1];
|
|
179
181
|
var withdrawToken = (0, react_1.useMemo)(function () {
|
|
180
182
|
return selectedMethod === SendMethods.TRANSFER_EXTERNAL
|
|
181
183
|
? withdrawTokens
|
|
@@ -527,7 +529,7 @@ var WithdrawFunction = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
527
529
|
return [2 /*return*/];
|
|
528
530
|
});
|
|
529
531
|
}); };
|
|
530
|
-
var handleSendInternal = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
532
|
+
var handleSendInternal = function (passcode) { return __awaiter(void 0, void 0, void 0, function () {
|
|
531
533
|
var response;
|
|
532
534
|
return __generator(this, function (_a) {
|
|
533
535
|
switch (_a.label) {
|
|
@@ -537,7 +539,7 @@ var WithdrawFunction = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
537
539
|
amount: "".concat(amount),
|
|
538
540
|
to_address: recipientAddress || "",
|
|
539
541
|
currency_slug: (selectedToken === null || selectedToken === void 0 ? void 0 : selectedToken.slug) || "",
|
|
540
|
-
passcode:
|
|
542
|
+
passcode: passcode,
|
|
541
543
|
})];
|
|
542
544
|
case 1:
|
|
543
545
|
response = _a.sent();
|
|
@@ -546,19 +548,36 @@ var WithdrawFunction = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
546
548
|
}
|
|
547
549
|
});
|
|
548
550
|
}); };
|
|
549
|
-
var handleSendExternal = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
551
|
+
var handleSendExternal = function (passcode) { return __awaiter(void 0, void 0, void 0, function () {
|
|
552
|
+
var response;
|
|
550
553
|
return __generator(this, function (_a) {
|
|
551
|
-
|
|
552
|
-
|
|
554
|
+
switch (_a.label) {
|
|
555
|
+
case 0:
|
|
556
|
+
console.warn("withdraw external");
|
|
557
|
+
setSendButtonStatus(Button_1.BUTTON_STATUS.LOADING);
|
|
558
|
+
return [4 /*yield*/, (0, send_external_service_1.default)({
|
|
559
|
+
amount: "".concat(amount),
|
|
560
|
+
to_address: recipientAddress || "",
|
|
561
|
+
currency_slug: (selectedToken === null || selectedToken === void 0 ? void 0 : selectedToken.slug) || "",
|
|
562
|
+
passcode: passcode,
|
|
563
|
+
network: (selectedNetwork === null || selectedNetwork === void 0 ? void 0 : selectedNetwork.slug) || "",
|
|
564
|
+
memo: memo || "",
|
|
565
|
+
})];
|
|
566
|
+
case 1:
|
|
567
|
+
response = _a.sent();
|
|
568
|
+
console.warn("🚀 ~ handleSendExternal ~ response:", response);
|
|
569
|
+
setSendButtonStatus(Button_1.BUTTON_STATUS.ENABLED);
|
|
570
|
+
return [2 /*return*/];
|
|
571
|
+
}
|
|
553
572
|
});
|
|
554
573
|
}); };
|
|
555
|
-
var handleSend = function () {
|
|
574
|
+
var handleSend = function (passcode) {
|
|
556
575
|
switch (selectedMethod) {
|
|
557
576
|
case SendMethods.TRANSFER_INTERNAL:
|
|
558
|
-
handleSendInternal();
|
|
577
|
+
handleSendInternal(passcode);
|
|
559
578
|
break;
|
|
560
579
|
case SendMethods.TRANSFER_EXTERNAL:
|
|
561
|
-
handleSendExternal();
|
|
580
|
+
handleSendExternal(passcode);
|
|
562
581
|
break;
|
|
563
582
|
default:
|
|
564
583
|
break;
|
|
@@ -629,7 +648,7 @@ var WithdrawFunction = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
629
648
|
// ref={confirmByPasscodeDrawerRef}
|
|
630
649
|
, {
|
|
631
650
|
// ref={confirmByPasscodeDrawerRef}
|
|
632
|
-
action: type_1.ActionConfirm.SEND, trigger: (0, jsx_runtime_1.jsx)(Button_1.default.Primary, { sx: { width: "100%" },
|
|
651
|
+
action: type_1.ActionConfirm.SEND, trigger: (0, jsx_runtime_1.jsx)(Button_1.default.Primary, { sx: { width: "100%" }, status: !!amountError ||
|
|
633
652
|
!!recipientAddressError ||
|
|
634
653
|
!recipientAddress ||
|
|
635
654
|
!amount ||
|
|
@@ -637,8 +656,11 @@ var WithdrawFunction = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
637
656
|
isLoadingEstimateFee ||
|
|
638
657
|
isValidatingAddress
|
|
639
658
|
? Button_1.BUTTON_STATUS.DISABLED
|
|
640
|
-
: Button_1.BUTTON_STATUS.ENABLED, children: "Continue" }), children: (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.column), { gap: theme.mixins.gaps.g12 }), children: [(0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign({}, theme.mixins.paper), children: [(0, jsx_runtime_1.jsx)(LineValue_1.default, { field: "Recipient address", value:
|
|
641
|
-
selectedMethod === SendMethods.TRANSFER_EXTERNAL && ((0, jsx_runtime_1.jsx)(LineValue_1.default, { field: "Memo", value: memo })), (
|
|
659
|
+
: Button_1.BUTTON_STATUS.ENABLED, children: "Continue" }), children: (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.column), { gap: theme.mixins.gaps.g12 }), children: [(0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign({}, theme.mixins.paper), children: [(0, jsx_runtime_1.jsx)(LineValue_1.default, { field: "Recipient address", value: (0, jsx_runtime_1.jsx)(Text_1.default, { sx: { wordBreak: "break-all" }, children: recipientAddress }) }), selectedMethod === SendMethods.TRANSFER_EXTERNAL && ((0, jsx_runtime_1.jsx)(LineValue_1.default, { field: "Network", value: (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.row), { gap: theme.mixins.gaps.g6, ml: "auto" }), children: [(0, jsx_runtime_1.jsx)(Icon_1.default, { width: 20, src: selectedNetwork === null || selectedNetwork === void 0 ? void 0 : selectedNetwork.icon }), (0, jsx_runtime_1.jsx)(Text_1.default, { sx: __assign({}, theme.mixins.value), children: selectedNetwork === null || selectedNetwork === void 0 ? void 0 : selectedNetwork.name })] }) })), (0, jsx_runtime_1.jsx)(LineValue_1.default, { field: "Amount", value: (0, jsx_runtime_1.jsx)(Formatter_1.default, { value: amount, unit: " ".concat(selectedToken === null || selectedToken === void 0 ? void 0 : selectedToken.name) }) }), !!memo &&
|
|
660
|
+
selectedMethod === SendMethods.TRANSFER_EXTERNAL && ((0, jsx_runtime_1.jsx)(LineValue_1.default, { field: "Memo", value: memo })), ((_b = estimateFee === null || estimateFee === void 0 ? void 0 : estimateFee.feeDetail) === null || _b === void 0 ? void 0 : _b.length) && !!amount && ((0, jsx_runtime_1.jsx)(Fees_1.default, { feesData: JSON.stringify(estimateFee), amount: +amount })), (0, jsx_runtime_1.jsx)(LineValue_1.default, { field: "Receive amount estimated", value: (0, jsx_runtime_1.jsx)(Text_1.default, { sx: {
|
|
661
|
+
fontWeight: theme.typography.fontWeight600,
|
|
662
|
+
fontSize: theme.typography.fontSize16,
|
|
663
|
+
}, children: (0, jsx_runtime_1.jsx)(Formatter_1.default, { value: estimateReceive, unit: " ".concat(selectedToken === null || selectedToken === void 0 ? void 0 : selectedToken.name) }) }) })] }), (0, jsx_runtime_1.jsx)(ConfirmByPasscode_1.default, { action: type_1.ActionConfirm.SEND, onConfirmSuccess: handleSend, children: (0, jsx_runtime_1.jsx)(Button_1.default.Primary, { status: sendButtonStatus, sx: { width: "100%" }, children: "Confirm" }) })] }) })] }) }, WithdrawStep.FORM)] }), (0, jsx_runtime_1.jsx)(QrCodeReader_1.default, { ref: scannerAllQrCodeRef, onResult: handleScanAllQrCode }), (0, jsx_runtime_1.jsx)(QrCodeReader_1.default, { ref: scannerAddressQrCodeRef, onResult: handleScanAddressQrCode }), (0, jsx_runtime_1.jsx)(AppBackDrop_1.default, { ref: backDropRef }), (0, jsx_runtime_1.jsx)(AppDialog_1.default, { overrideOpen: !!infoDialogContent, children: (0, jsx_runtime_1.jsx)(DialogContentLayout_1.default, { content: (0, jsx_runtime_1.jsx)(Text_1.default, { sx: {
|
|
642
664
|
textAlign: "center",
|
|
643
665
|
display: "inline-block",
|
|
644
666
|
width: "100%",
|