tek-wallet 0.0.209 → 0.0.211
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/SafeSvgRenderer.d.ts +9 -0
- package/dist/components/SafeSvgRenderer.js +18 -0
- package/dist/components/ui/DepositFunction/index.js +5 -3
- package/dist/components/ui/LockToken/index.d.ts +2 -0
- package/dist/components/ui/LockToken/index.js +5 -4
- package/dist/components/ui/SafeSvgRenderer/index.d.ts +9 -0
- package/dist/components/ui/SafeSvgRenderer/index.js +29 -0
- package/package.json +2 -1
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
7
|
+
var dompurify_1 = __importDefault(require("dompurify"));
|
|
8
|
+
var SafeSvgRenderer = function (_a) {
|
|
9
|
+
var svgString = _a.svgString, className = _a.className, _b = _a.width, width = _b === void 0 ? "100%" : _b, _c = _a.height, height = _c === void 0 ? "100%" : _c;
|
|
10
|
+
// Sanitize the SVG string using DOMPurify
|
|
11
|
+
var sanitizedSvg = dompurify_1.default.sanitize(svgString, {
|
|
12
|
+
USE_PROFILES: { svg: true, svgFilters: true },
|
|
13
|
+
ADD_TAGS: ["use"],
|
|
14
|
+
ADD_ATTR: ["xlink:href"],
|
|
15
|
+
});
|
|
16
|
+
return ((0, jsx_runtime_1.jsx)("div", { className: className, style: { width: width, height: height }, dangerouslySetInnerHTML: { __html: sanitizedSvg } }));
|
|
17
|
+
};
|
|
18
|
+
exports.default = SafeSvgRenderer;
|
|
@@ -39,6 +39,7 @@ var useDepositData_1 = __importDefault(require("../../../hooks/useDepositData"))
|
|
|
39
39
|
var RequireConnect_1 = __importDefault(require("../RequireConnect"));
|
|
40
40
|
var WaitingData_1 = __importDefault(require("../WaitingData"));
|
|
41
41
|
var EmptyData_1 = __importDefault(require("../EmptyData"));
|
|
42
|
+
var SafeSvgRenderer_1 = __importDefault(require("../SafeSvgRenderer"));
|
|
42
43
|
var DepositStep;
|
|
43
44
|
(function (DepositStep) {
|
|
44
45
|
DepositStep[DepositStep["SELECT_TOKEN"] = 1] = "SELECT_TOKEN";
|
|
@@ -149,7 +150,8 @@ var DepositFunction = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
149
150
|
display: "flex",
|
|
150
151
|
flexDirection: "column",
|
|
151
152
|
gap: theme.mixins.gaps.g16,
|
|
152
|
-
}, children: [(0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({ width: "100%" }, theme.mixins.column), { gap: theme.mixins.gaps.g12, backgroundColor: theme.palette.background.black24, borderRadius: theme.mixins.theBorderRadius.r16, padding: theme.mixins.customPadding.p16, alignItems: "flex-start", backdropFilter: "blur(10px)" }), id: "share-deposit-info", children: [(0, jsx_runtime_1.jsx)(material_1.Box, { sx: {
|
|
153
|
+
}, children: [(0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({ width: "100%" }, theme.mixins.column), { gap: theme.mixins.gaps.g12, backgroundColor: theme.palette.background.black24, borderRadius: theme.mixins.theBorderRadius.r16, padding: theme.mixins.customPadding.p16, alignItems: "flex-start", backdropFilter: "blur(10px)" }), id: "share-deposit-info", children: [(0, jsx_runtime_1.jsx)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.column), { gap: theme.mixins.gaps.g4, color: "text.white", alignSelf: "center" }), children: (0, jsx_runtime_1.jsxs)(Text_1.default, { sx: __assign({}, theme.mixins.value), children: ["Deposit ", selectedToken === null || selectedToken === void 0 ? void 0 : selectedToken.name] }) }), (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: {
|
|
154
|
+
position: "relative",
|
|
153
155
|
width: "fit-content",
|
|
154
156
|
height: "fit-content",
|
|
155
157
|
alignSelf: "center",
|
|
@@ -157,9 +159,9 @@ var DepositFunction = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
157
159
|
overflow: "hidden",
|
|
158
160
|
backgroundColor: theme.palette.background.white,
|
|
159
161
|
backdropFilter: "blur(10px)",
|
|
160
|
-
}, children: (0, jsx_runtime_1.jsx)(QRCode_1.default, { value: qrCodeValue, title: "Deposit ".concat(selectedToken === null || selectedToken === void 0 ? void 0 : selectedToken.name), logo: (0, getIcon_1.default)("ton"), bgColor: "transparent" }) }), (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.column), { gap: theme.mixins.gaps.g4, color: "text.white" }), children: [(0, jsx_runtime_1.jsx)(Text_1.default, { sx: __assign({}, theme.mixins.valueDescription), children: "Network" }), (0, jsx_runtime_1.jsxs)(material_1.Box, { component: "button", sx: __assign(__assign({}, theme.mixins.row), { gap: theme.mixins.gaps.g2, cursor: "pointer", transition: "transform 0.3s ease-in-out", "&:active": {
|
|
162
|
+
}, children: [(0, jsx_runtime_1.jsx)(QRCode_1.default, { value: qrCodeValue, title: "Deposit ".concat(selectedToken === null || selectedToken === void 0 ? void 0 : selectedToken.name), logo: (0, getIcon_1.default)("ton"), bgColor: "transparent" }), (0, jsx_runtime_1.jsx)(SafeSvgRenderer_1.default, { svgString: (0, getIcon_1.default)("ton"), width: 100, height: 100, sx: __assign({}, theme.mixins.center) })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.column), { gap: theme.mixins.gaps.g4, color: "text.white" }), children: [(0, jsx_runtime_1.jsx)(Text_1.default, { sx: __assign({}, theme.mixins.valueDescription), children: "Network" }), (0, jsx_runtime_1.jsxs)(material_1.Box, { component: "button", sx: __assign(__assign({}, theme.mixins.row), { gap: theme.mixins.gaps.g2, cursor: "pointer", transition: "transform 0.3s ease-in-out", "&:active": {
|
|
161
163
|
transform: "translateX(0.5rem)",
|
|
162
|
-
} }), onClick: handleBack, children: [(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)(Icon_1.default, { src: (0, getIcon_1.default)("right_arrow"), width: 10 })] })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.column), { gap: theme.mixins.gaps.g4, color: "text.white" }), children: [(0, jsx_runtime_1.jsx)(Text_1.default, { sx: __assign({}, theme.mixins.valueDescription), children: "Address" }), (0, jsx_runtime_1.jsx)(Text_1.default, { sx: __assign(__assign({}, theme.mixins.value), { wordBreak: "break-all" }), children: (0, jsx_runtime_1.jsx)(CopyTextComponent_1.default, { value: addressByNetwork || "", children: addressByNetwork }) })] }), (0, jsx_runtime_1.jsx)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.column), { gap: theme.mixins.gaps.g4, backgroundColor: theme.palette.background.white16, borderRadius: theme.mixins.theBorderRadius.r12, padding: theme.mixins.customPadding.p8 }), children: (0, jsx_runtime_1.jsxs)(Text_1.default, { sx: __assign({}, theme.mixins.valueDescription), children: ["Deposit", " ", (0, jsx_runtime_1.jsxs)("strong", { style: { color: theme.palette.text.white }, children: ["min ", selectedToken === null || selectedToken === void 0 ? void 0 : selectedToken.min_value, " ", selectedToken === null || selectedToken === void 0 ? void 0 : selectedToken.name] }), " ", "and", " ", (0, jsx_runtime_1.jsx)("strong", { style: { color: theme.palette.text.white }, children: "select the correct network" }), ", or you will lose your assets."] }) })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.row), { gap: theme.mixins.gaps.g12, justifyContent: "center" }), children: [(0, jsx_runtime_1.jsx)(CopyTextComponent_1.default, { value: qrCodeValue, children: (0, jsx_runtime_1.jsxs)(Button_1.default.Secondary, { className: "gap-1.5 flex items-center", children: [(0, jsx_runtime_1.jsx)(Text_1.default, { sx: {
|
|
164
|
+
} }), onClick: handleBack, children: [(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)(Icon_1.default, { src: (0, getIcon_1.default)("right_arrow"), width: 10 })] })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.column), { gap: theme.mixins.gaps.g4, color: "text.white" }), children: [(0, jsx_runtime_1.jsx)(Text_1.default, { sx: __assign({}, theme.mixins.valueDescription), children: "Address" }), (0, jsx_runtime_1.jsx)(Text_1.default, { sx: __assign(__assign({}, theme.mixins.value), { wordBreak: "break-all" }), children: (0, jsx_runtime_1.jsx)(CopyTextComponent_1.default, { value: addressByNetwork || "", children: addressByNetwork }) })] }), (0, jsx_runtime_1.jsx)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.column), { gap: theme.mixins.gaps.g4, backgroundColor: theme.palette.background.white16, borderRadius: theme.mixins.theBorderRadius.r12, padding: theme.mixins.customPadding.p8 }), children: (0, jsx_runtime_1.jsxs)(Text_1.default, { sx: __assign({}, theme.mixins.valueDescription), children: ["Deposit", " ", (0, jsx_runtime_1.jsxs)("strong", { style: { color: theme.palette.text.white }, children: ["min ", selectedToken === null || selectedToken === void 0 ? void 0 : selectedToken.min_value, " ", selectedToken === null || selectedToken === void 0 ? void 0 : selectedToken.name] }), " ", "and", " ", (0, jsx_runtime_1.jsx)("strong", { style: { color: theme.palette.text.white }, children: "select the correct network" }), ", or you will lose your assets."] }) })] }), (0, jsx_runtime_1.jsx)(Button_1.default, { children: "Set amount" }), (0, jsx_runtime_1.jsxs)(material_1.Box, { sx: __assign(__assign({}, theme.mixins.row), { gap: theme.mixins.gaps.g12, justifyContent: "center" }), children: [(0, jsx_runtime_1.jsx)(CopyTextComponent_1.default, { value: qrCodeValue, children: (0, jsx_runtime_1.jsxs)(Button_1.default.Secondary, { className: "gap-1.5 flex items-center", children: [(0, jsx_runtime_1.jsx)(Text_1.default, { sx: {
|
|
163
165
|
fontSize: theme.typography.fontSize12,
|
|
164
166
|
fontWeight: theme.typography.fontWeight400,
|
|
165
167
|
leading: "typography.leading150",
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { ConfirmLayoutProps } from "../ConfirmLayout";
|
|
2
2
|
import { LockData } from "./type";
|
|
3
|
+
import { LockTokenResponse } from "../../../services/axios/lock-token-service/type";
|
|
3
4
|
interface LockTokenProps extends Omit<ConfirmLayoutProps, "action"> {
|
|
4
5
|
lockData: LockData;
|
|
6
|
+
onLockSuccess?: (data: LockTokenResponse) => any;
|
|
5
7
|
}
|
|
6
8
|
export interface LockTokenRef {
|
|
7
9
|
open: () => void;
|
|
@@ -145,9 +145,9 @@ var LockToken = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
145
145
|
}, [lockTokens, (_a = props.lockData) === null || _a === void 0 ? void 0 : _a.amount, (_b = props.lockData) === null || _b === void 0 ? void 0 : _b.tokenSlug]);
|
|
146
146
|
var handleLockToken = function (passcode) { return __awaiter(void 0, void 0, void 0, function () {
|
|
147
147
|
var response;
|
|
148
|
-
var _a;
|
|
149
|
-
return __generator(this, function (
|
|
150
|
-
switch (
|
|
148
|
+
var _a, _b;
|
|
149
|
+
return __generator(this, function (_c) {
|
|
150
|
+
switch (_c.label) {
|
|
151
151
|
case 0:
|
|
152
152
|
console.warn("🚀 ~ handleLockToken ~ lockData:", props.lockData, passcode);
|
|
153
153
|
setButtonStatus(Button_1.BUTTON_STATUS.LOADING);
|
|
@@ -161,10 +161,11 @@ var LockToken = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
161
161
|
],
|
|
162
162
|
})];
|
|
163
163
|
case 1:
|
|
164
|
-
response =
|
|
164
|
+
response = _c.sent();
|
|
165
165
|
console.warn("🚀 ~ handleLockToken ~ response:", response);
|
|
166
166
|
if (response.success) {
|
|
167
167
|
(_a = confirmByPasscodeDrawerRef.current) === null || _a === void 0 ? void 0 : _a.close();
|
|
168
|
+
(_b = props.onLockSuccess) === null || _b === void 0 ? void 0 : _b.call(props, response);
|
|
168
169
|
}
|
|
169
170
|
else {
|
|
170
171
|
setError(LockTokenError.FAILED);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { GeneralProps } from "../../../types/ui";
|
|
3
|
+
interface SafeSvgRendererProps extends GeneralProps {
|
|
4
|
+
svgString: string;
|
|
5
|
+
width?: number | string;
|
|
6
|
+
height?: number | string;
|
|
7
|
+
}
|
|
8
|
+
declare const SafeSvgRenderer: React.FC<SafeSvgRendererProps>;
|
|
9
|
+
export default SafeSvgRenderer;
|
|
@@ -0,0 +1,29 @@
|
|
|
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 __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
18
|
+
var dompurify_1 = __importDefault(require("dompurify"));
|
|
19
|
+
var material_1 = require("@mui/material");
|
|
20
|
+
var SafeSvgRenderer = function (_a) {
|
|
21
|
+
var svgString = _a.svgString, _b = _a.width, width = _b === void 0 ? "100%" : _b, _c = _a.height, height = _c === void 0 ? "100%" : _c, sx = _a.sx;
|
|
22
|
+
var sanitizedSvg = dompurify_1.default.sanitize(svgString, {
|
|
23
|
+
USE_PROFILES: { svg: true, svgFilters: true },
|
|
24
|
+
ADD_TAGS: ["use"],
|
|
25
|
+
ADD_ATTR: ["xlink:href"],
|
|
26
|
+
});
|
|
27
|
+
return ((0, jsx_runtime_1.jsx)(material_1.Box, { component: "div", sx: __assign({ width: width, height: height }, sx), dangerouslySetInnerHTML: { __html: sanitizedSvg } }));
|
|
28
|
+
};
|
|
29
|
+
exports.default = SafeSvgRenderer;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tek-wallet",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.211",
|
|
4
4
|
"description": "A custom React provider with TypeScript support",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -34,6 +34,7 @@
|
|
|
34
34
|
"axios": "^1.8.4",
|
|
35
35
|
"clsx": "^2.1.1",
|
|
36
36
|
"date-fns": "^4.1.0",
|
|
37
|
+
"dompurify": "^3.2.5",
|
|
37
38
|
"framer-motion": "^12.7.4",
|
|
38
39
|
"highcharts": "^12.2.0",
|
|
39
40
|
"highcharts-react-official": "^3.2.1",
|