tek-wallet 0.0.172 → 0.0.175
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/ui/LockToken/index.d.ts +6 -0
- package/dist/components/ui/LockToken/index.js +83 -4
- package/dist/hooks/useLockTokenData.d.ts +3 -0
- package/dist/hooks/useLockTokenData.js +16 -0
- package/dist/providers/LockTokenProvider/index.js +4 -1
- package/dist/services/axios/get-lock-tokens-list/index.js +1 -0
- package/dist/services/axios/get-lock-tokens-list/type.d.ts +4 -1
- package/dist/theme/mui/theme.js +10 -0
- package/package.json +1 -1
|
@@ -3,5 +3,11 @@ import { LockData } from "./type";
|
|
|
3
3
|
interface LockTokenProps extends Omit<ConfirmLayoutProps, "action"> {
|
|
4
4
|
lockData: LockData;
|
|
5
5
|
}
|
|
6
|
+
export declare enum LockTokenError {
|
|
7
|
+
TOKEN_NOT_FOUND = "Token not found",
|
|
8
|
+
NOT_ENOUGH_BALANCE = "Not enough balance",
|
|
9
|
+
MAX_AMOUNT = "Max amount",
|
|
10
|
+
MIN_AMOUNT = "Min amount"
|
|
11
|
+
}
|
|
6
12
|
declare const LockToken: (props: LockTokenProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
13
|
export default LockToken;
|
|
@@ -11,27 +11,106 @@ var __assign = (this && this.__assign) || function () {
|
|
|
11
11
|
};
|
|
12
12
|
return __assign.apply(this, arguments);
|
|
13
13
|
};
|
|
14
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
15
|
+
if (k2 === undefined) k2 = k;
|
|
16
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
17
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
18
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
19
|
+
}
|
|
20
|
+
Object.defineProperty(o, k2, desc);
|
|
21
|
+
}) : (function(o, m, k, k2) {
|
|
22
|
+
if (k2 === undefined) k2 = k;
|
|
23
|
+
o[k2] = m[k];
|
|
24
|
+
}));
|
|
25
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
26
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
27
|
+
}) : function(o, v) {
|
|
28
|
+
o["default"] = v;
|
|
29
|
+
});
|
|
30
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
31
|
+
var ownKeys = function(o) {
|
|
32
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
33
|
+
var ar = [];
|
|
34
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
35
|
+
return ar;
|
|
36
|
+
};
|
|
37
|
+
return ownKeys(o);
|
|
38
|
+
};
|
|
39
|
+
return function (mod) {
|
|
40
|
+
if (mod && mod.__esModule) return mod;
|
|
41
|
+
var result = {};
|
|
42
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
43
|
+
__setModuleDefault(result, mod);
|
|
44
|
+
return result;
|
|
45
|
+
};
|
|
46
|
+
})();
|
|
14
47
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
15
48
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
16
49
|
};
|
|
17
50
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
51
|
+
exports.LockTokenError = void 0;
|
|
18
52
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
19
53
|
var material_1 = require("@mui/material");
|
|
20
|
-
var Button_1 =
|
|
54
|
+
var Button_1 = __importStar(require("../../ui/Button"));
|
|
21
55
|
var ConfirmLayout_1 = __importDefault(require("../ConfirmLayout"));
|
|
22
56
|
var type_1 = require("../ConfirmLayout/type");
|
|
23
57
|
var LineValue_1 = __importDefault(require("../LineValue"));
|
|
24
58
|
var Formatter_1 = __importDefault(require("../Formatter"));
|
|
25
59
|
var ConfirmByPasscode_1 = __importDefault(require("../ConfirmByPasscode"));
|
|
26
60
|
var react_1 = require("react");
|
|
61
|
+
var useLockTokenData_1 = __importDefault(require("../../../hooks/useLockTokenData"));
|
|
62
|
+
var Text_1 = __importDefault(require("../Text"));
|
|
63
|
+
var LockTokenError;
|
|
64
|
+
(function (LockTokenError) {
|
|
65
|
+
LockTokenError["TOKEN_NOT_FOUND"] = "Token not found";
|
|
66
|
+
LockTokenError["NOT_ENOUGH_BALANCE"] = "Not enough balance";
|
|
67
|
+
LockTokenError["MAX_AMOUNT"] = "Max amount";
|
|
68
|
+
LockTokenError["MIN_AMOUNT"] = "Min amount";
|
|
69
|
+
})(LockTokenError || (exports.LockTokenError = LockTokenError = {}));
|
|
27
70
|
var LockToken = function (props) {
|
|
71
|
+
var _a, _b;
|
|
28
72
|
var theme = (0, material_1.useTheme)();
|
|
73
|
+
var lockTokens = (0, useLockTokenData_1.default)().lockTokens;
|
|
29
74
|
var confirmByPasscodeDrawerRef = (0, react_1.useRef)(null);
|
|
75
|
+
var _c = (0, react_1.useState)(undefined), error = _c[0], setError = _c[1];
|
|
76
|
+
var _d = (0, react_1.useState)(undefined), errorAmount = _d[0], setErrorAmount = _d[1];
|
|
77
|
+
var _e = (0, react_1.useState)(Button_1.BUTTON_STATUS.ENABLED), buttonStatus = _e[0], setButtonStatus = _e[1];
|
|
78
|
+
var validateAmount = function (lockData) {
|
|
79
|
+
var token = lockTokens === null || lockTokens === void 0 ? void 0 : lockTokens.find(function (token) { return token.slug === lockData.tokenSlug; });
|
|
80
|
+
if (!token) {
|
|
81
|
+
setError(LockTokenError.TOKEN_NOT_FOUND);
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
if (lockData.amount > token.max_value) {
|
|
85
|
+
setError(LockTokenError.MAX_AMOUNT);
|
|
86
|
+
setErrorAmount(token.max_value);
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
if (lockData.amount < token.min_value) {
|
|
90
|
+
setError(LockTokenError.MIN_AMOUNT);
|
|
91
|
+
setErrorAmount(token.min_value);
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
if (lockData.amount > +token.balance) {
|
|
95
|
+
setError(LockTokenError.NOT_ENOUGH_BALANCE);
|
|
96
|
+
setErrorAmount(token.balance);
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
setError(undefined);
|
|
100
|
+
setErrorAmount(undefined);
|
|
101
|
+
};
|
|
30
102
|
var handleLockToken = function (passcode) {
|
|
31
|
-
var _a;
|
|
32
|
-
(_a = confirmByPasscodeDrawerRef.current) === null || _a === void 0 ? void 0 : _a.close();
|
|
33
103
|
console.warn("🚀 ~ handleLockToken ~ lockData:", props.lockData, passcode);
|
|
104
|
+
setButtonStatus(Button_1.BUTTON_STATUS.LOADING);
|
|
105
|
+
setTimeout(function () {
|
|
106
|
+
var _a;
|
|
107
|
+
setButtonStatus(Button_1.BUTTON_STATUS.ENABLED);
|
|
108
|
+
(_a = confirmByPasscodeDrawerRef.current) === null || _a === void 0 ? void 0 : _a.close();
|
|
109
|
+
}, 3000);
|
|
34
110
|
};
|
|
35
|
-
|
|
111
|
+
(0, react_1.useEffect)(function () {
|
|
112
|
+
validateAmount(props.lockData);
|
|
113
|
+
}, [(_a = props.lockData) === null || _a === void 0 ? void 0 : _a.amount, (_b = props.lockData) === null || _b === void 0 ? void 0 : _b.tokenSlug]);
|
|
114
|
+
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)(ConfirmLayout_1.default, { ref: confirmByPasscodeDrawerRef, action: type_1.ActionConfirm.LOCK, trigger: props.trigger, children: (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.column), { gap: theme.mixins.gaps.g16 }), children: [(0, jsx_runtime_1.jsx)(material_1.Box, { sx: __assign({}, theme.mixins.paper), children: (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.column), { gap: theme.mixins.gaps.g6 }), children: [(0, jsx_runtime_1.jsx)(LineValue_1.default, { field: "Amount", value: (0, jsx_runtime_1.jsx)(Formatter_1.default, { value: props.lockData.amount, unit: props.lockData.tokenSlug }) }), (0, jsx_runtime_1.jsxs)(Text_1.default, { sx: __assign({}, theme.mixins.validationError), children: [error, " ", !!errorAmount && ((0, jsx_runtime_1.jsx)(Formatter_1.default, { value: errorAmount, unit: props.lockData.tokenSlug }))] })] }) }), (0, jsx_runtime_1.jsx)(ConfirmByPasscode_1.default, { action: type_1.ActionConfirm.LOCK, onConfirmSuccess: handleLockToken, children: (0, jsx_runtime_1.jsx)(Button_1.default.Primary, { status: !!error ? Button_1.BUTTON_STATUS.DISABLED : buttonStatus, sx: { width: "100%" }, children: "Confirm" }) })] }) }) }));
|
|
36
115
|
};
|
|
37
116
|
exports.default = LockToken;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var react_1 = require("react");
|
|
4
|
+
var LockTokenProvider_1 = require("../providers/LockTokenProvider");
|
|
5
|
+
var LockTokenProvider_2 = require("../providers/LockTokenProvider");
|
|
6
|
+
function useLockTokenData() {
|
|
7
|
+
try {
|
|
8
|
+
var data = (0, react_1.useContext)(LockTokenProvider_2.LockTokensContext);
|
|
9
|
+
return data;
|
|
10
|
+
}
|
|
11
|
+
catch (error) {
|
|
12
|
+
console.error("🚀 ~ useLockTokenData ~ error:", error);
|
|
13
|
+
return LockTokenProvider_1.initialLockTokens;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.default = useLockTokenData;
|
|
@@ -104,7 +104,7 @@ function LockTokensProvider(_a) {
|
|
|
104
104
|
case 1:
|
|
105
105
|
response = _a.sent();
|
|
106
106
|
console.warn("🚀 ~ getBalance ~ response:", response);
|
|
107
|
-
setLockTokens(response === null || response === void 0 ? void 0 : response.
|
|
107
|
+
setLockTokens(response === null || response === void 0 ? void 0 : response.supported_tokens);
|
|
108
108
|
setIsLoadingLockToken(false);
|
|
109
109
|
return [3 /*break*/, 3];
|
|
110
110
|
case 2:
|
|
@@ -116,6 +116,9 @@ function LockTokensProvider(_a) {
|
|
|
116
116
|
}
|
|
117
117
|
});
|
|
118
118
|
}); }, [isAuthenticated]);
|
|
119
|
+
(0, react_1.useEffect)(function () {
|
|
120
|
+
updateLockToken();
|
|
121
|
+
}, [updateLockToken]);
|
|
119
122
|
return ((0, jsx_runtime_1.jsx)(exports.LockTokensContext.Provider, { value: {
|
|
120
123
|
isLoadingLockToken: isLoadingLockToken,
|
|
121
124
|
lockTokens: lockTokens,
|
|
@@ -60,6 +60,7 @@ var getLockTokenList = function (query) { return __awaiter(void 0, void 0, void
|
|
|
60
60
|
return [4 /*yield*/, (0, get_config_tokens_list_1.default)(params)];
|
|
61
61
|
case 1:
|
|
62
62
|
response = _a.sent();
|
|
63
|
+
console.warn("🚀 ~ response getConfigTokenList:", response);
|
|
63
64
|
return [2 /*return*/, response === null || response === void 0 ? void 0 : response.data];
|
|
64
65
|
}
|
|
65
66
|
});
|
|
@@ -15,9 +15,12 @@ export interface LockCurrency {
|
|
|
15
15
|
usd_rate: string;
|
|
16
16
|
icon_svg: string;
|
|
17
17
|
network_data: Networkdata;
|
|
18
|
+
balance: string;
|
|
19
|
+
min_value: number;
|
|
20
|
+
max_value: number;
|
|
18
21
|
}
|
|
19
22
|
export interface LockTokenList {
|
|
20
|
-
|
|
23
|
+
supported_tokens: LockCurrency[];
|
|
21
24
|
paginated: Paginated;
|
|
22
25
|
}
|
|
23
26
|
export interface LockTokenListResponse {
|
package/dist/theme/mui/theme.js
CHANGED
|
@@ -96,6 +96,7 @@ var customPadding = {
|
|
|
96
96
|
var theBorderRadius = {
|
|
97
97
|
full: "999px",
|
|
98
98
|
r12: "0.75rem",
|
|
99
|
+
r16: "1rem",
|
|
99
100
|
};
|
|
100
101
|
var theme = (0, styles_1.createTheme)({
|
|
101
102
|
palette: {
|
|
@@ -183,6 +184,15 @@ var theme = (0, styles_1.createTheme)({
|
|
|
183
184
|
backgroundColor: "background.white16",
|
|
184
185
|
backdropFilter: "blur(2px)",
|
|
185
186
|
},
|
|
187
|
+
paper: {
|
|
188
|
+
display: "flex",
|
|
189
|
+
flexDirection: "column",
|
|
190
|
+
width: "100%",
|
|
191
|
+
gap: gaps.g12,
|
|
192
|
+
padding: customPadding.p12,
|
|
193
|
+
backgroundColor: "background.white16",
|
|
194
|
+
borderRadius: theBorderRadius.r16,
|
|
195
|
+
},
|
|
186
196
|
},
|
|
187
197
|
});
|
|
188
198
|
exports.default = theme;
|