From 63b4d266a6c356428cf718ec473d69404b7d342b Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 27 Jun 2024 16:33:31 +1000 Subject: [PATCH 001/105] wip: dashboard screen & API init --- package.json | 1 + src/assets/icons/Menu/ic_menu_dashboard.svg | 5 + src/components/common/Router.tsx | 2 + src/components/main/Menu/TopBar.tsx | 8 +- .../api/dashboard/useBotPerformanceSummary.ts | 15 ++ src/pages/Dashboard/Dashboard.tsx | 156 +++++++++++++ yarn.lock | 206 +++++++++++++++++- 7 files changed, 387 insertions(+), 6 deletions(-) create mode 100644 src/assets/icons/Menu/ic_menu_dashboard.svg create mode 100644 src/hooks/api/dashboard/useBotPerformanceSummary.ts create mode 100644 src/pages/Dashboard/Dashboard.tsx diff --git a/package.json b/package.json index c17cf3b5..74b9f5b5 100644 --- a/package.json +++ b/package.json @@ -37,6 +37,7 @@ "react-number-format": "^5.3.4", "react-router-dom": "^6.14.2", "react-toastify": "^10.0.5", + "recharts": "^2.12.7", "recoil": "^0.7.7", "recoil-persist": "^5.1.0", "rollup-plugin-node-polyfills": "^0.2.1", diff --git a/src/assets/icons/Menu/ic_menu_dashboard.svg b/src/assets/icons/Menu/ic_menu_dashboard.svg new file mode 100644 index 00000000..10ece941 --- /dev/null +++ b/src/assets/icons/Menu/ic_menu_dashboard.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index e71c2739..23617ed0 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -1,5 +1,6 @@ import { BrowserRouter, Route, Routes } from "react-router-dom"; +import Dashboard from "@/pages/Dashboard/Dashboard"; import BorrowDetail from "@/pages/Loan/BorrowDetail"; import Loan from "@/pages/Loan/Loan"; import Main from "@/pages/Main/Main"; @@ -26,6 +27,7 @@ const Router = () => { } /> } /> } /> + } /> } /> } /> } /> diff --git a/src/components/main/Menu/TopBar.tsx b/src/components/main/Menu/TopBar.tsx index 003f379b..80dad2f0 100644 --- a/src/components/main/Menu/TopBar.tsx +++ b/src/components/main/Menu/TopBar.tsx @@ -2,7 +2,7 @@ import { useNavigate } from "react-router-dom"; import { styled } from "styled-components"; import IcMenuMyAsset from "@/assets/icons/Menu/ic_menu_asset.svg"; -import IcMenuMarket from "@/assets/icons/Menu/ic_menu_market.svg"; +import IcMenuDashboard from "@/assets/icons/Menu/ic_menu_dashboard.svg"; import IcMenuStake from "@/assets/icons/Menu/ic_menu_stake.svg"; const TopBar = () => { @@ -18,9 +18,9 @@ const TopBar = () => { asset My Asset - - market - Marketplace + + dashboard navigate("/dashboard")} /> + Dashboard ); diff --git a/src/hooks/api/dashboard/useBotPerformanceSummary.ts b/src/hooks/api/dashboard/useBotPerformanceSummary.ts new file mode 100644 index 00000000..959e103e --- /dev/null +++ b/src/hooks/api/dashboard/useBotPerformanceSummary.ts @@ -0,0 +1,15 @@ +import useSWR from "swr"; + +import { nextonFetcher } from "@/api/axios"; + +interface IBotPerformanceSummary { + pnlRate: number; + pnlWinRate: number; + subscribedCount: number; +} + +export function useBotPerformanceSummary(userId: number) { + const swrKey = userId ? `/data/user/${userId}/botPerformanceSummary` : null; + + return useSWR(swrKey, nextonFetcher); +} diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx new file mode 100644 index 00000000..f2bb3369 --- /dev/null +++ b/src/pages/Dashboard/Dashboard.tsx @@ -0,0 +1,156 @@ +import { useEffect, useState } from "react"; +import { useNavigate } from "react-router-dom"; +import { Legend, Line, LineChart, ResponsiveContainer, Tooltip, XAxis, YAxis } from "recharts"; +import { useSetRecoilState } from "recoil"; +import styled from "styled-components"; + +import { useBotPerformanceSummary } from "@/hooks/api/dashboard/useBotPerformanceSummary"; +import { globalError } from "@/lib/atom/globalError"; + +const tele = (window as any).Telegram.WebApp; + +export interface IUserInfo { + userId: number; +} + +const data = [ + { + name: "Page A", + uv: 4000, + amt: 2400, + }, + { + name: "Page B", + uv: 3000, + amt: 2210, + }, + { + name: "Page C", + uv: 2000, + amt: 2290, + }, + { + name: "Page D", + uv: 2780, + amt: 2000, + }, + { + name: "Page E", + uv: 1890, + amt: 2181, + }, + { + name: "Page F", + uv: 2390, + amt: 2500, + }, + { + name: "Page G", + uv: 3490, + amt: 2100, + }, +]; + +const Dashboard = () => { + const navigate = useNavigate(); + const setError = useSetRecoilState(globalError); + + const [userId, setUserId] = useState(); + + const { + data: performanceData, + isLoading: performanceLoading, + error: performanceError, + } = useBotPerformanceSummary(/* userId */ 1); //to-do: remove mock userId + + useEffect(() => { + if (tele) { + tele.ready(); + tele.BackButton.show(); + tele.onEvent("backButtonClicked", () => { + navigate("/menu"); + }); + + const tgUser = tele.initDataUnsafe?.user; + if (tgUser) { + setUserId(tgUser?.id); + } else { + console.warn("You should launch the app inside the Telegram Mini App."); + } + } + + return () => { + tele.offEvent("backButtonClicked"); + }; + }, [navigate]); + + return ( + <> + + +

Dashboard

+ + + + + + + + + + +
+ + +
+ + ); +}; + +export default Dashboard; + +const DashboardWrapper = styled.div` + width: 100%; + height: auto; + min-height: 100%; + + padding: 2rem; + gap: 1.6rem; + + display: flex; + align-items: center; + flex-direction: column; + + h1 { + color: #46494a; + ${({ theme }) => theme.fonts.Nexton_Title_Medium}; + } +`; + +const ChartWrapper = styled.div` + width: 100%; + height: 400px; + + display: flex; + align-items: center; + flex-direction: column; + + gap: 1rem; +`; + +const PerformanceWrapper = styled.div` + width: 100%; + display: flex; + gap: 1rem; + flex-direction: column; +`; diff --git a/yarn.lock b/yarn.lock index e56cd9d7..f9d3994f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1696,6 +1696,57 @@ "@types/node" "*" "@types/responselike" "^1.0.0" +"@types/d3-array@^3.0.3": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@types/d3-array/-/d3-array-3.2.1.tgz#1f6658e3d2006c4fceac53fde464166859f8b8c5" + integrity sha512-Y2Jn2idRrLzUfAKV2LyRImR+y4oa2AntrgID95SHJxuMUrkNXmanDSed71sRNZysveJVt1hLLemQZIady0FpEg== + +"@types/d3-color@*": + version "3.1.3" + resolved "https://registry.yarnpkg.com/@types/d3-color/-/d3-color-3.1.3.tgz#368c961a18de721da8200e80bf3943fb53136af2" + integrity sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A== + +"@types/d3-ease@^3.0.0": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/d3-ease/-/d3-ease-3.0.2.tgz#e28db1bfbfa617076f7770dd1d9a48eaa3b6c51b" + integrity sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA== + +"@types/d3-interpolate@^3.0.1": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz#412b90e84870285f2ff8a846c6eb60344f12a41c" + integrity sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA== + dependencies: + "@types/d3-color" "*" + +"@types/d3-path@*": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@types/d3-path/-/d3-path-3.1.0.tgz#2b907adce762a78e98828f0b438eaca339ae410a" + integrity sha512-P2dlU/q51fkOc/Gfl3Ul9kicV7l+ra934qBFXCFhrZMOL6du1TM0pm1ThYvENukyOn5h9v+yMJ9Fn5JK4QozrQ== + +"@types/d3-scale@^4.0.2": + version "4.0.8" + resolved "https://registry.yarnpkg.com/@types/d3-scale/-/d3-scale-4.0.8.tgz#d409b5f9dcf63074464bf8ddfb8ee5a1f95945bb" + integrity sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ== + dependencies: + "@types/d3-time" "*" + +"@types/d3-shape@^3.1.0": + version "3.1.6" + resolved "https://registry.yarnpkg.com/@types/d3-shape/-/d3-shape-3.1.6.tgz#65d40d5a548f0a023821773e39012805e6e31a72" + integrity sha512-5KKk5aKGu2I+O6SONMYSNflgiP0WfZIQvVUMan50wHsLG1G94JlxEVnCpQARfTtzytuY0p/9PXXZb3I7giofIA== + dependencies: + "@types/d3-path" "*" + +"@types/d3-time@*", "@types/d3-time@^3.0.0": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/d3-time/-/d3-time-3.0.3.tgz#3c186bbd9d12b9d84253b6be6487ca56b54f88be" + integrity sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw== + +"@types/d3-timer@^3.0.0": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/d3-timer/-/d3-timer-3.0.2.tgz#70bbda77dc23aa727413e22e214afa3f0e852f70" + integrity sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw== + "@types/hoist-non-react-statics@*": version "3.3.1" resolved "https://registry.yarnpkg.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz#1124aafe5118cb591977aeb1ceaaed1070eb039f" @@ -2154,7 +2205,7 @@ clsx@^1.2.1: resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.2.1.tgz#0ddc4a20a549b59c93a4116bb26f5294ca17dc12" integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== -clsx@^2.1.0: +clsx@^2.0.0, clsx@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.1.tgz#eed397c9fd8bd882bfb18deab7102049a2f32999" integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== @@ -2251,6 +2302,77 @@ csstype@3.1.2, csstype@^3.0.2, csstype@^3.1.2: resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== +"d3-array@2 - 3", "d3-array@2.10.0 - 3", d3-array@^3.1.6: + version "3.2.4" + resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-3.2.4.tgz#15fec33b237f97ac5d7c986dc77da273a8ed0bb5" + integrity sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg== + dependencies: + internmap "1 - 2" + +"d3-color@1 - 3": + version "3.1.0" + resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-3.1.0.tgz#395b2833dfac71507f12ac2f7af23bf819de24e2" + integrity sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA== + +d3-ease@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-ease/-/d3-ease-3.0.1.tgz#9658ac38a2140d59d346160f1f6c30fda0bd12f4" + integrity sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w== + +"d3-format@1 - 3": + version "3.1.0" + resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-3.1.0.tgz#9260e23a28ea5cb109e93b21a06e24e2ebd55641" + integrity sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA== + +"d3-interpolate@1.2.0 - 3", d3-interpolate@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-3.0.1.tgz#3c47aa5b32c5b3dfb56ef3fd4342078a632b400d" + integrity sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g== + dependencies: + d3-color "1 - 3" + +d3-path@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-3.1.0.tgz#22df939032fb5a71ae8b1800d61ddb7851c42526" + integrity sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ== + +d3-scale@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-4.0.2.tgz#82b38e8e8ff7080764f8dcec77bd4be393689396" + integrity sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ== + dependencies: + d3-array "2.10.0 - 3" + d3-format "1 - 3" + d3-interpolate "1.2.0 - 3" + d3-time "2.1.1 - 3" + d3-time-format "2 - 4" + +d3-shape@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-3.2.0.tgz#a1a839cbd9ba45f28674c69d7f855bcf91dfc6a5" + integrity sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA== + dependencies: + d3-path "^3.1.0" + +"d3-time-format@2 - 4": + version "4.1.0" + resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-4.1.0.tgz#7ab5257a5041d11ecb4fe70a5c7d16a195bb408a" + integrity sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg== + dependencies: + d3-time "1 - 3" + +"d3-time@1 - 3", "d3-time@2.1.1 - 3", d3-time@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-3.1.0.tgz#9310db56e992e3c0175e1ef385e545e48a9bb5c7" + integrity sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q== + dependencies: + d3-array "2 - 3" + +d3-timer@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-3.0.1.tgz#6284d2a2708285b1abb7e201eda4380af35e63b0" + integrity sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA== + dataloader@^2.0.0: version "2.2.2" resolved "https://registry.yarnpkg.com/dataloader/-/dataloader-2.2.2.tgz#216dc509b5abe39d43a9b9d97e6e5e473dfbe3e0" @@ -2263,6 +2385,11 @@ debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4: dependencies: ms "2.1.2" +decimal.js-light@^2.4.1: + version "2.5.1" + resolved "https://registry.yarnpkg.com/decimal.js-light/-/decimal.js-light-2.5.1.tgz#134fd32508f19e208f4fb2f8dac0d2626a867934" + integrity sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg== + decompress-response@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" @@ -2483,6 +2610,11 @@ esutils@^2.0.2: resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== +eventemitter3@^4.0.1: + version "4.0.7" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== + eventsource@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-2.0.2.tgz#76dfcc02930fb2ff339520b6d290da573a9e8508" @@ -2504,6 +2636,11 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== +fast-equals@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/fast-equals/-/fast-equals-5.0.1.tgz#a4eefe3c5d1c0d021aeed0bc10ba5e0c12ee405d" + integrity sha512-WF1Wi8PwwSY7/6Kx0vKXtw8RwuSGoM1bvDaJbu7MxDlR1vovZjIAKrnzyrThgAjm6JDTu0fVgWXDlMGspodfoQ== + fast-glob@^3.2.9: version "3.3.1" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.1.tgz#784b4e897340f3dbbef17413b3f11acf03c874c4" @@ -2794,6 +2931,11 @@ inherits@2: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== +"internmap@1 - 2": + version "2.0.3" + resolved "https://registry.yarnpkg.com/internmap/-/internmap-2.0.3.tgz#6685f23755e43c524e251d29cbc97248e3061009" + integrity sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg== + is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" @@ -2942,6 +3084,11 @@ lodash.merge@^4.6.2: resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== +lodash@^4.17.21: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + loose-envify@^1.1.0, loose-envify@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" @@ -3287,7 +3434,7 @@ react-hot-toast@^2.4.1: dependencies: goober "^2.1.10" -react-is@^16.13.1, react-is@^16.7.0: +react-is@^16.10.2, react-is@^16.13.1, react-is@^16.7.0: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== @@ -3332,6 +3479,15 @@ react-router@6.14.2: dependencies: "@remix-run/router" "1.7.2" +react-smooth@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/react-smooth/-/react-smooth-4.0.1.tgz#6200d8699bfe051ae40ba187988323b1449eab1a" + integrity sha512-OE4hm7XqR0jNOq3Qmk9mFLyd6p2+j6bvbPJ7qlB7+oo0eNcL2l7WQzG6MBnT3EXY6xzkLMUBec3AfewJdA0J8w== + dependencies: + fast-equals "^5.0.1" + prop-types "^15.8.1" + react-transition-group "^4.4.5" + react-toastify@^10.0.5: version "10.0.5" resolved "https://registry.yarnpkg.com/react-toastify/-/react-toastify-10.0.5.tgz#6b8f8386060c5c856239f3036d1e76874ce3bd1e" @@ -3363,6 +3519,27 @@ readdirp@~3.6.0: dependencies: picomatch "^2.2.1" +recharts-scale@^0.4.4: + version "0.4.5" + resolved "https://registry.yarnpkg.com/recharts-scale/-/recharts-scale-0.4.5.tgz#0969271f14e732e642fcc5bd4ab270d6e87dd1d9" + integrity sha512-kivNFO+0OcUNu7jQquLXAxz1FIwZj8nrj+YkOKc5694NbjCvcT6aSZiIzNzd2Kul4o4rTto8QVR9lMNtxD4G1w== + dependencies: + decimal.js-light "^2.4.1" + +recharts@^2.12.7: + version "2.12.7" + resolved "https://registry.yarnpkg.com/recharts/-/recharts-2.12.7.tgz#c7f42f473a257ff88b43d88a92530930b5f9e773" + integrity sha512-hlLJMhPQfv4/3NBSAyq3gzGg4h2v69RJh6KU7b3pXYNNAELs9kEoXOjbkxdXpALqKBoVmVptGfLpxdaVYqjmXQ== + dependencies: + clsx "^2.0.0" + eventemitter3 "^4.0.1" + lodash "^4.17.21" + react-is "^16.10.2" + react-smooth "^4.0.0" + recharts-scale "^0.4.4" + tiny-invariant "^1.3.1" + victory-vendor "^36.6.8" + recoil-persist@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/recoil-persist/-/recoil-persist-5.1.0.tgz#c4232fe04f2e4b6afcc815baff56f2521f6dcde1" @@ -3673,6 +3850,11 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== +tiny-invariant@^1.3.1: + version "1.3.3" + resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.3.tgz#46680b7a873a0d5d10005995eb90a70d74d60127" + integrity sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg== + to-fast-properties@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" @@ -3800,6 +3982,26 @@ use-sync-external-store@^1.2.0: resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== +victory-vendor@^36.6.8: + version "36.9.2" + resolved "https://registry.yarnpkg.com/victory-vendor/-/victory-vendor-36.9.2.tgz#668b02a448fa4ea0f788dbf4228b7e64669ff801" + integrity sha512-PnpQQMuxlwYdocC8fIJqVXvkeViHYzotI+NJrCuav0ZYFoq912ZHBk3mCeuj+5/VpodOjPe1z0Fk2ihgzlXqjQ== + dependencies: + "@types/d3-array" "^3.0.3" + "@types/d3-ease" "^3.0.0" + "@types/d3-interpolate" "^3.0.1" + "@types/d3-scale" "^4.0.2" + "@types/d3-shape" "^3.1.0" + "@types/d3-time" "^3.0.0" + "@types/d3-timer" "^3.0.0" + d3-array "^3.1.6" + d3-ease "^3.0.1" + d3-interpolate "^3.0.1" + d3-scale "^4.0.2" + d3-shape "^3.1.0" + d3-time "^3.0.0" + d3-timer "^3.0.1" + vite@^4.4.5: version "4.4.7" resolved "https://registry.yarnpkg.com/vite/-/vite-4.4.7.tgz#71b8a37abaf8d50561aca084dbb77fa342824154" From 639e110b6523f57a36c7731631631caacd83a163 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 28 Jun 2024 12:13:20 +1000 Subject: [PATCH 002/105] wip: dashboard layout --- src/assets/icons/Dashboard/ic_nexton_logo.svg | 16 ++ .../icons/Dashboard/ic_nexton_logo_sm.svg | 16 ++ .../icons/Dashboard/ic_stake_link_arrow.svg | 3 + src/components/common/Loader.tsx | 6 +- src/components/main/Menu/TopBar.tsx | 4 +- src/pages/Dashboard/Dashboard.styled.tsx | 190 ++++++++++++++++++ src/pages/Dashboard/Dashboard.tsx | 174 ++++++++++------ src/utils/limitDecimals.ts | 17 ++ 8 files changed, 355 insertions(+), 71 deletions(-) create mode 100644 src/assets/icons/Dashboard/ic_nexton_logo.svg create mode 100644 src/assets/icons/Dashboard/ic_nexton_logo_sm.svg create mode 100644 src/assets/icons/Dashboard/ic_stake_link_arrow.svg create mode 100644 src/pages/Dashboard/Dashboard.styled.tsx create mode 100644 src/utils/limitDecimals.ts diff --git a/src/assets/icons/Dashboard/ic_nexton_logo.svg b/src/assets/icons/Dashboard/ic_nexton_logo.svg new file mode 100644 index 00000000..c6e3ab13 --- /dev/null +++ b/src/assets/icons/Dashboard/ic_nexton_logo.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/assets/icons/Dashboard/ic_nexton_logo_sm.svg b/src/assets/icons/Dashboard/ic_nexton_logo_sm.svg new file mode 100644 index 00000000..30f1b869 --- /dev/null +++ b/src/assets/icons/Dashboard/ic_nexton_logo_sm.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/assets/icons/Dashboard/ic_stake_link_arrow.svg b/src/assets/icons/Dashboard/ic_stake_link_arrow.svg new file mode 100644 index 00000000..de413619 --- /dev/null +++ b/src/assets/icons/Dashboard/ic_stake_link_arrow.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/components/common/Loader.tsx b/src/components/common/Loader.tsx index c279b233..7741005b 100644 --- a/src/components/common/Loader.tsx +++ b/src/components/common/Loader.tsx @@ -1,11 +1,11 @@ import { TailSpin } from "react-loader-spinner"; -const Loader = () => { +const Loader = ({ height = 30, width = 30 }: { height?: number; width?: number }) => { return ( { asset My Asset
- - dashboard navigate("/dashboard")} /> + navigate("/dashboard")}> + dashboard Dashboard diff --git a/src/pages/Dashboard/Dashboard.styled.tsx b/src/pages/Dashboard/Dashboard.styled.tsx new file mode 100644 index 00000000..02d2b0b6 --- /dev/null +++ b/src/pages/Dashboard/Dashboard.styled.tsx @@ -0,0 +1,190 @@ +import { styled } from "styled-components"; + +export const LoaderWrapper = styled.div` + width: 100%; + height: 100%; + + display: flex; + justify-content: center; + align-items: center; +`; + +export const DashboardWrapper = styled.div` + width: 100%; + height: auto; + min-height: 100%; + + padding: 2rem; + gap: 1.6rem; + + display: flex; + align-items: center; + flex-direction: column; + + h1 { + color: #46494a; + ${({ theme }) => theme.fonts.Nexton_Title_Medium}; + } +`; + +export const ChartWrapper = styled.div` + width: 100%; + height: 400px; + + display: flex; + align-items: center; + flex-direction: column; + + gap: 1rem; +`; + +export const ChartHeader = styled.div` + width: 100%; + display: flex; + flex-direction: column; + gap: 0.55rem; + + justify-content: center; + align-items: start; + + margin-top: 1.8rem; +`; + +export const ChartHeaderTitle = styled.div` + display: flex; + align-items: center; + gap: 0.5rem; + + h4 { + color: #2c3542; + ${({ theme }) => theme.fonts.Nexton_Title_Small}; + } +`; + +export const ChartHeaderSubtitle = styled.div` + display: flex; + align-items: center; + gap: 0.25rem; + + h5 { + color: #76797a; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; + } + + span { + color: #007aff; + ${({ theme }) => theme.fonts.Nexton_Title_Small}; + } +`; + +export const PerformanceWrapper = styled.div` + width: 100%; + display: flex; + gap: 1rem; + flex-direction: column; + + h2 { + color: #2c3542; + ${({ theme }) => theme.fonts.Nexton_Title_Small}; + } + + h3 { + color: #76797a; + ${({ theme }) => theme.fonts.Nexton_Title_Small}; + } +`; + +export const PerformanceItem = styled.div` + width: 100%; + + display: flex; + flex-direction: column; + gap: 1rem; + + border-radius: 20px; + background: #fff; + box-shadow: 4px 4px 16px 0px rgba(0, 0, 0, 0.15); + + padding: 2.4rem; + margin-top: 1rem; +`; + +export const PerformanceItemHeader = styled.div` + display: flex; + justify-content: space-between; + align-items: center; + + h4 { + color: #303234; + ${({ theme }) => theme.fonts.Nexton_Title_Small}; + } +`; + +export const PerformanceItemHeaderLeft = styled.div` + display: flex; + align-items: center; + gap: 0.5rem; +`; + +export const PerformanceItemHeaderRight = styled.div` + display: flex; + align-items: center; + + color: #303234; + ${({ theme }) => theme.fonts.Nexton_Title_Medium}; +`; + +export const Divider = styled.hr` + border: 0; + border-top: 1px solid #f1f4f4; + margin: 0; + height: 1px; + width: 100%; +`; + +export const PerformanceItemBody = styled.div` + display: flex; + justify-content: space-between; + align-items: center; +`; + +export const PerformanceItemBodyBox = styled.div` + display: flex; + flex-direction: column; + gap: 0.25rem; + + h4 { + color: #909394; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; + } + + p { + color: #303234; + ${({ theme }) => theme.fonts.Nexton_Label_Medium}; +`; + +export const PerformanceItemFooter = styled.div` + display: flex; + align-items: center; + + margin-top: 1.6rem; +`; + +export const StakeButton = styled.button` + width: 100%; + + display: flex; + justify-content: center; + align-items: center; + + border-radius: 20px; + background: #1f53ff; + color: #fff; + border: none; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; + + cursor: pointer; + + padding: 1rem; + gap: 4px; +`; diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index f2bb3369..ffac8154 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -2,10 +2,33 @@ import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; import { Legend, Line, LineChart, ResponsiveContainer, Tooltip, XAxis, YAxis } from "recharts"; import { useSetRecoilState } from "recoil"; -import styled from "styled-components"; +import IcNextonLogo from "@/assets/icons/Dashboard/ic_nexton_logo.svg"; +import IcNextonLogoSm from "@/assets/icons/Dashboard/ic_nexton_logo_sm.svg"; +import IcStakeLinkArrow from "@/assets/icons/Dashboard/ic_stake_link_arrow.svg"; +import Loader from "@/components/common/Loader"; import { useBotPerformanceSummary } from "@/hooks/api/dashboard/useBotPerformanceSummary"; import { globalError } from "@/lib/atom/globalError"; +import { limitDecimals } from "@/utils/limitDecimals"; + +import { + ChartHeader, + ChartHeaderSubtitle, + ChartHeaderTitle, + ChartWrapper, + DashboardWrapper, + Divider, + LoaderWrapper, + PerformanceItem, + PerformanceItemBody, + PerformanceItemBodyBox, + PerformanceItemFooter, + PerformanceItemHeader, + PerformanceItemHeaderLeft, + PerformanceItemHeaderRight, + PerformanceWrapper, + StakeButton, +} from "./Dashboard.styled"; const tele = (window as any).Telegram.WebApp; @@ -62,6 +85,7 @@ const Dashboard = () => { isLoading: performanceLoading, error: performanceError, } = useBotPerformanceSummary(/* userId */ 1); //to-do: remove mock userId + console.log(performanceData); useEffect(() => { if (tele) { @@ -84,73 +108,91 @@ const Dashboard = () => { }; }, [navigate]); + if (performanceError) { + setError(performanceError); + } + + if (performanceLoading) { + return ( + + + + ); + } + return ( - <> - - -

Dashboard

- - - - - - - - - - -
- - -
- + + +

Dashboard

+ + + + nexton_logo +

Arbitrage Bot

+
+ + +
Daily PNL
+ +33% +
+
+ + + + + + + + + +
+ + +

Bot Performance

+ + + + + nexton_logo_sm +

Arbitrage Bot

+
+ + {limitDecimals(performanceData.pnlRate, 3)}% +
+ + + + + +

Subscriber win rate

+

{performanceData.pnlWinRate.toFixed(2)}%

+
+ + +

Subscribed

+

{performanceData.subscribedCount}

+
+
+ + + navigate("/stake/amount")}> + Stake Now stake-link-arrow + + +
+
+
); }; export default Dashboard; - -const DashboardWrapper = styled.div` - width: 100%; - height: auto; - min-height: 100%; - - padding: 2rem; - gap: 1.6rem; - - display: flex; - align-items: center; - flex-direction: column; - - h1 { - color: #46494a; - ${({ theme }) => theme.fonts.Nexton_Title_Medium}; - } -`; - -const ChartWrapper = styled.div` - width: 100%; - height: 400px; - - display: flex; - align-items: center; - flex-direction: column; - - gap: 1rem; -`; - -const PerformanceWrapper = styled.div` - width: 100%; - display: flex; - gap: 1rem; - flex-direction: column; -`; diff --git a/src/utils/limitDecimals.ts b/src/utils/limitDecimals.ts new file mode 100644 index 00000000..a5414e38 --- /dev/null +++ b/src/utils/limitDecimals.ts @@ -0,0 +1,17 @@ +/** + * Limits the number of decimal places if necessary, otherwise keeps the decimals as they are. + * @param {number} value - The number to format. + * @param {number} maxDecimals - The maximum number of decimal places. + * @returns {string} - The formatted number as a string. + */ +export function limitDecimals(value, maxDecimals) { + const [integerPart, decimalPart] = value.toString().split("."); + + // If there's no decimal part or its length is within the limit, return the value as is + if (!decimalPart || decimalPart.length <= maxDecimals) { + return value.toString(); + } + + // Otherwise, limit the decimal part to the specified number of digits + return `${integerPart}.${decimalPart.slice(0, maxDecimals)}`; +} From 5765898e1dc646b07eb4e8732b8733d05de17063 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 1 Jul 2024 18:15:20 +1000 Subject: [PATCH 003/105] wip: charts added --- .../api/dashboard/useBotPerformanceChart.ts | 19 +++ src/pages/Dashboard/Dashboard.styled.tsx | 28 +++++ src/pages/Dashboard/Dashboard.tsx | 116 +++++++++--------- 3 files changed, 102 insertions(+), 61 deletions(-) create mode 100644 src/hooks/api/dashboard/useBotPerformanceChart.ts diff --git a/src/hooks/api/dashboard/useBotPerformanceChart.ts b/src/hooks/api/dashboard/useBotPerformanceChart.ts new file mode 100644 index 00000000..59d4f2b6 --- /dev/null +++ b/src/hooks/api/dashboard/useBotPerformanceChart.ts @@ -0,0 +1,19 @@ +import useSWR from "swr"; + +import { nextonFetcher } from "@/api/axios"; + +interface IBotPerformanceChartData { + createdAt: string; + pnlRate: number; +} + +interface IBotPerformanceChart { + timeframe: number; + data: IBotPerformanceChartData[]; +} + +export function useBotPerformanceChart(userId: number, timeframe: number = 1) { + const swrKey = userId ? `/data/user/${userId}/botPerformanceChart${timeframe && `?timeframe=${timeframe}`}` : null; + + return useSWR(swrKey, nextonFetcher); +} diff --git a/src/pages/Dashboard/Dashboard.styled.tsx b/src/pages/Dashboard/Dashboard.styled.tsx index 02d2b0b6..8173853e 100644 --- a/src/pages/Dashboard/Dashboard.styled.tsx +++ b/src/pages/Dashboard/Dashboard.styled.tsx @@ -77,12 +77,40 @@ export const ChartHeaderSubtitle = styled.div` } `; +export const ChartTimeFrame = styled.div` + display: flex; + gap: 1rem; + justify-content: center; + align-items: center; + + margin-top: 1.6rem; +`; + +export const ChartTimeFrameItem = styled.div<{ $active?: boolean }>` + width: 58px; + display: flex; + align-items: center; + justify-content: center; + padding: 4px 10px; + + cursor: pointer; + + border-radius: 30px; + background: ${({ $active }) => ($active ? "#E1E4E6" : "transparent")}; + + color: #000000; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; + font-weight: ${({ $active }) => ($active ? "bold" : "normal")}; +`; + export const PerformanceWrapper = styled.div` width: 100%; display: flex; gap: 1rem; flex-direction: column; + margin-top: 4.6rem; + h2 { color: #2c3542; ${({ theme }) => theme.fonts.Nexton_Title_Small}; diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index ffac8154..535d8716 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -1,12 +1,13 @@ import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; -import { Legend, Line, LineChart, ResponsiveContainer, Tooltip, XAxis, YAxis } from "recharts"; +import { CartesianGrid, Line, LineChart, ResponsiveContainer, XAxis, YAxis } from "recharts"; import { useSetRecoilState } from "recoil"; import IcNextonLogo from "@/assets/icons/Dashboard/ic_nexton_logo.svg"; import IcNextonLogoSm from "@/assets/icons/Dashboard/ic_nexton_logo_sm.svg"; import IcStakeLinkArrow from "@/assets/icons/Dashboard/ic_stake_link_arrow.svg"; import Loader from "@/components/common/Loader"; +import { useBotPerformanceChart } from "@/hooks/api/dashboard/useBotPerformanceChart"; import { useBotPerformanceSummary } from "@/hooks/api/dashboard/useBotPerformanceSummary"; import { globalError } from "@/lib/atom/globalError"; import { limitDecimals } from "@/utils/limitDecimals"; @@ -15,6 +16,8 @@ import { ChartHeader, ChartHeaderSubtitle, ChartHeaderTitle, + ChartTimeFrame, + ChartTimeFrameItem, ChartWrapper, DashboardWrapper, Divider, @@ -36,56 +39,34 @@ export interface IUserInfo { userId: number; } -const data = [ - { - name: "Page A", - uv: 4000, - amt: 2400, - }, - { - name: "Page B", - uv: 3000, - amt: 2210, - }, - { - name: "Page C", - uv: 2000, - amt: 2290, - }, - { - name: "Page D", - uv: 2780, - amt: 2000, - }, - { - name: "Page E", - uv: 1890, - amt: 2181, - }, - { - name: "Page F", - uv: 2390, - amt: 2500, - }, - { - name: "Page G", - uv: 3490, - amt: 2100, - }, -]; +type TimeFrame = "1D" | "1M" | "3M" | "6M" | "All"; + +const chartTimeFrameOptions: Record = { + "1D": 1, + "1M": 30, + "3M": 90, + "6M": 180, + All: 0, +}; const Dashboard = () => { const navigate = useNavigate(); const setError = useSetRecoilState(globalError); const [userId, setUserId] = useState(); + const [timeFrame, setTimeFrame] = useState("1D"); const { data: performanceData, isLoading: performanceLoading, error: performanceError, - } = useBotPerformanceSummary(/* userId */ 1); //to-do: remove mock userId - console.log(performanceData); + } = useBotPerformanceSummary(userId); + + const { + data: chartData, + isLoading: chartLoading, + error: chartError, + } = useBotPerformanceChart(userId, chartTimeFrameOptions[timeFrame]); useEffect(() => { if (tele) { @@ -108,11 +89,15 @@ const Dashboard = () => { }; }, [navigate]); - if (performanceError) { - setError(performanceError); + const handleTimeFrameChange = (timeFrame: TimeFrame) => { + setTimeFrame(timeFrame); + }; + + if (performanceError || chartError) { + setError(performanceError || chartError); } - if (performanceLoading) { + if (performanceLoading || chartLoading) { return ( @@ -131,30 +116,39 @@ const Dashboard = () => {

Arbitrage Bot

- + {/* to-do: get daily pnl from the API */} + {/*
Daily PNL
+33% -
+
*/} + - - - - - - + + + + + + + + handleTimeFrameChange("1D")}> + 1D + + handleTimeFrameChange("1M")}> + 1M + + handleTimeFrameChange("3M")}> + 3M + + handleTimeFrameChange("6M")}> + 6M + + handleTimeFrameChange("All")}> + All + + From 1caca425864542657739369c23451090ff3ef755 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 1 Jul 2024 18:57:29 +1000 Subject: [PATCH 004/105] wip: charts added (fix) --- src/pages/Dashboard/Dashboard.tsx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index 535d8716..51de8857 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -124,7 +124,7 @@ const Dashboard = () => { - + @@ -161,7 +161,7 @@ const Dashboard = () => {

Arbitrage Bot

- {limitDecimals(performanceData.pnlRate, 3)}% + {limitDecimals(performanceData?.pnlRate, 3)}% @@ -169,12 +169,12 @@ const Dashboard = () => {

Subscriber win rate

-

{performanceData.pnlWinRate.toFixed(2)}%

+

{performanceData?.pnlWinRate.toFixed(2)}%

Subscribed

-

{performanceData.subscribedCount}

+

{performanceData?.subscribedCount}

From ce014cd6a5347dd4187216d4de57a146486ceeb9 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 1 Jul 2024 19:00:29 +1000 Subject: [PATCH 005/105] wip: charts added (fix 2) --- src/pages/Dashboard/Dashboard.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index 51de8857..c32b9d6c 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -169,7 +169,7 @@ const Dashboard = () => {

Subscriber win rate

-

{performanceData?.pnlWinRate.toFixed(2)}%

+

{performanceData?.pnlWinRate?.toFixed(2)}%

From 3862c452e837aaec22544f83cab128280403766f Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 1 Jul 2024 19:05:18 +1000 Subject: [PATCH 006/105] wip: charts added (fix 3) --- src/utils/limitDecimals.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/utils/limitDecimals.ts b/src/utils/limitDecimals.ts index a5414e38..502773f3 100644 --- a/src/utils/limitDecimals.ts +++ b/src/utils/limitDecimals.ts @@ -5,6 +5,8 @@ * @returns {string} - The formatted number as a string. */ export function limitDecimals(value, maxDecimals) { + if (!value) return value; + const [integerPart, decimalPart] = value.toString().split("."); // If there's no decimal part or its length is within the limit, return the value as is From 2e5b6e18fd4ce4f5a946b1b1163496fe8e36d790 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 2 Jul 2024 16:03:59 +1000 Subject: [PATCH 007/105] feat/component decomposition & unit tests --- package.json | 3 +- .../api/dashboard/useBotPerformanceChart.ts | 6 +- src/pages/Dashboard/Dashboard.tsx | 43 +- src/utils/copyText.test.ts | 22 + src/utils/limitDecimals.test.ts | 16 + src/utils/limitDecimals.ts | 5 + yarn.lock | 673 +++++++++++++++++- 7 files changed, 738 insertions(+), 30 deletions(-) create mode 100644 src/utils/copyText.test.ts create mode 100644 src/utils/limitDecimals.test.ts diff --git a/package.json b/package.json index 74b9f5b5..9c91fcbd 100644 --- a/package.json +++ b/package.json @@ -58,6 +58,7 @@ "eslint-plugin-react-refresh": "^0.4.3", "prettier": "^3.3.2", "typescript": "^5.0.2", - "vite": "^4.4.5" + "vite": "^4.4.5", + "vitest": "^1.6.0" } } diff --git a/src/hooks/api/dashboard/useBotPerformanceChart.ts b/src/hooks/api/dashboard/useBotPerformanceChart.ts index 59d4f2b6..ea7c136e 100644 --- a/src/hooks/api/dashboard/useBotPerformanceChart.ts +++ b/src/hooks/api/dashboard/useBotPerformanceChart.ts @@ -12,8 +12,10 @@ interface IBotPerformanceChart { data: IBotPerformanceChartData[]; } -export function useBotPerformanceChart(userId: number, timeframe: number = 1) { - const swrKey = userId ? `/data/user/${userId}/botPerformanceChart${timeframe && `?timeframe=${timeframe}`}` : null; +export function useBotPerformanceChart(userId: number, timeframe: number) { + const swrKey = userId + ? `/data/user/${userId}/botPerformanceChart${timeframe ? `?timeframe=${timeframe}` : ""}` + : null; return useSWR(swrKey, nextonFetcher); } diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index c32b9d6c..ca26effa 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -35,13 +35,9 @@ import { const tele = (window as any).Telegram.WebApp; -export interface IUserInfo { - userId: number; -} - type TimeFrame = "1D" | "1M" | "3M" | "6M" | "All"; -const chartTimeFrameOptions: Record = { +const chartTimeFrameOptions: Record = { "1D": 1, "1M": 30, "3M": 90, @@ -54,7 +50,7 @@ const Dashboard = () => { const setError = useSetRecoilState(globalError); const [userId, setUserId] = useState(); - const [timeFrame, setTimeFrame] = useState("1D"); + const [timeFrame, setTimeFrame] = useState("1D"); const { data: performanceData, @@ -89,14 +85,17 @@ const Dashboard = () => { }; }, [navigate]); + // Set global error state if there is an error + useEffect(() => { + if (performanceError || chartError) { + setError(performanceError || chartError); + } + }, [performanceError, chartError, setError]); + const handleTimeFrameChange = (timeFrame: TimeFrame) => { setTimeFrame(timeFrame); }; - if (performanceError || chartError) { - setError(performanceError || chartError); - } - if (performanceLoading || chartLoading) { return ( @@ -133,21 +132,15 @@ const Dashboard = () => {
- handleTimeFrameChange("1D")}> - 1D - - handleTimeFrameChange("1M")}> - 1M - - handleTimeFrameChange("3M")}> - 3M - - handleTimeFrameChange("6M")}> - 6M - - handleTimeFrameChange("All")}> - All - + {Object.keys(chartTimeFrameOptions).map(key => ( + handleTimeFrameChange(key as TimeFrame)} + > + {key} + + ))} diff --git a/src/utils/copyText.test.ts b/src/utils/copyText.test.ts new file mode 100644 index 00000000..49781fc1 --- /dev/null +++ b/src/utils/copyText.test.ts @@ -0,0 +1,22 @@ +import { expect, test, vi } from "vitest"; + +import { copyText } from "./copyText"; + +const setupNavigatorMock = () => { + Object.assign(global, { + navigator: { + clipboard: { + writeText: vi.fn().mockResolvedValue(undefined), + }, + }, + }); +}; + +// Mocking the clipboard API +setupNavigatorMock(); + +test("copyText calls navigator.clipboard.writeText with the correct text", async () => { + const text = "Hello, World!"; + await copyText(text); + expect(navigator.clipboard.writeText).toHaveBeenCalledWith(text); +}); diff --git a/src/utils/limitDecimals.test.ts b/src/utils/limitDecimals.test.ts new file mode 100644 index 00000000..2f946639 --- /dev/null +++ b/src/utils/limitDecimals.test.ts @@ -0,0 +1,16 @@ +// utils.test.ts +import { expect, test } from "vitest"; + +import { limitDecimals } from "./limitDecimals"; + +test("limits decimals correctly", () => { + expect(limitDecimals(12.536, 2)).toBe("12.53"); + expect(limitDecimals(12.5, 2)).toBe("12.5"); + expect(limitDecimals(12, 2)).toBe("12"); + expect(limitDecimals(12.536789, 4)).toBe("12.5367"); + expect(limitDecimals(12.536, 5)).toBe("12.536"); + expect(limitDecimals(0.123456, 3)).toBe("0.123"); + expect(limitDecimals(-0.123456, 3)).toBe("-0.123"); + expect(limitDecimals(-0.123456, 0)).toBe("-0"); + expect(limitDecimals(123456, 3)).toBe("123456"); +}); diff --git a/src/utils/limitDecimals.ts b/src/utils/limitDecimals.ts index 502773f3..13ca4d2d 100644 --- a/src/utils/limitDecimals.ts +++ b/src/utils/limitDecimals.ts @@ -14,6 +14,11 @@ export function limitDecimals(value, maxDecimals) { return value.toString(); } + // If maxDecimals is 0, return only the integer part + if (maxDecimals === 0) { + return integerPart; + } + // Otherwise, limit the decimal part to the specified number of digits return `${integerPart}.${decimalPart.slice(0, maxDecimals)}`; } diff --git a/yarn.lock b/yarn.lock index f9d3994f..fa632522 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1246,116 +1246,231 @@ resolved "https://registry.yarnpkg.com/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.2.3.tgz#0e4497a2b53c9e9485e149bc92ddb228438d6bcf" integrity sha512-r3MIryXDeXDOZh7ih1l/yE9ZLORCd5e8vWg02azWRGj5SPTuoh69A2AIyn0Z31V/kHBfZ4HgWJ+OK3GTTwLmnw== +"@esbuild/aix-ppc64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz#c7184a326533fcdf1b8ee0733e21c713b975575f" + integrity sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ== + "@esbuild/android-arm64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.18.16.tgz#34f562abc0015933aabd41b3d50d8d3359e30155" integrity sha512-wsCqSPqLz+6Ov+OM4EthU43DyYVVyfn15S4j1bJzylDpc1r1jZFFfJQNfDuT8SlgwuqpmpJXK4uPlHGw6ve7eA== +"@esbuild/android-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz#09d9b4357780da9ea3a7dfb833a1f1ff439b4052" + integrity sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A== + "@esbuild/android-arm@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.18.16.tgz#ef6f9aa59a79a9b9330a2e73f7eb402c6630c267" integrity sha512-gCHjjQmA8L0soklKbLKA6pgsLk1byULuHe94lkZDzcO3/Ta+bbeewJioEn1Fr7kgy9NWNFy/C+MrBwC6I/WCug== +"@esbuild/android-arm@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.21.5.tgz#9b04384fb771926dfa6d7ad04324ecb2ab9b2e28" + integrity sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg== + "@esbuild/android-x64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.18.16.tgz#ed7444cb17542932c67b15e20528686853239cfd" integrity sha512-ldsTXolyA3eTQ1//4DS+E15xl0H/3DTRJaRL0/0PgkqDsI0fV/FlOtD+h0u/AUJr+eOTlZv4aC9gvfppo3C4sw== +"@esbuild/android-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.21.5.tgz#29918ec2db754cedcb6c1b04de8cd6547af6461e" + integrity sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA== + "@esbuild/darwin-arm64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.18.16.tgz#3c5a083e6e08a50f478fa243939989d86be1c6bf" integrity sha512-aBxruWCII+OtluORR/KvisEw0ALuw/qDQWvkoosA+c/ngC/Kwk0lLaZ+B++LLS481/VdydB2u6tYpWxUfnLAIw== +"@esbuild/darwin-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz#e495b539660e51690f3928af50a76fb0a6ccff2a" + integrity sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ== + "@esbuild/darwin-x64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.18.16.tgz#a8f3b61bee2807131cbe28eb164ad2b0333b59f5" integrity sha512-6w4Dbue280+rp3LnkgmriS1icOUZDyPuZo/9VsuMUTns7SYEiOaJ7Ca1cbhu9KVObAWfmdjUl4gwy9TIgiO5eA== +"@esbuild/darwin-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz#c13838fa57372839abdddc91d71542ceea2e1e22" + integrity sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw== + "@esbuild/freebsd-arm64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.16.tgz#9bdbb3f0e5f0842b21c9b8602e70c106174ac24c" integrity sha512-x35fCebhe9s979DGKbVAwXUOcTmCIE32AIqB9CB1GralMIvxdnMLAw5CnID17ipEw9/3MvDsusj/cspYt2ZLNQ== +"@esbuild/freebsd-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz#646b989aa20bf89fd071dd5dbfad69a3542e550e" + integrity sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g== + "@esbuild/freebsd-x64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.18.16.tgz#24f73956436495cc7a5a4bf06be6b661aea6a2c1" integrity sha512-YM98f+PeNXF3GbxIJlUsj+McUWG1irguBHkszCIwfr3BXtXZsXo0vqybjUDFfu9a8Wr7uUD/YSmHib+EeGAFlg== +"@esbuild/freebsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz#aa615cfc80af954d3458906e38ca22c18cf5c261" + integrity sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ== + "@esbuild/linux-arm64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.18.16.tgz#244569757f9cbd912f5a595a8ad8144f8c915f13" integrity sha512-XIqhNUxJiuy+zsR77+H5Z2f7s4YRlriSJKtvx99nJuG5ATuJPjmZ9n0ANgnGlPCpXGSReFpgcJ7O3SMtzIFeiQ== +"@esbuild/linux-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz#70ac6fa14f5cb7e1f7f887bcffb680ad09922b5b" + integrity sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q== + "@esbuild/linux-arm@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.18.16.tgz#d63923c63af534032cc5ea0b2a0b3de10f8357f5" integrity sha512-b5ABb+5Ha2C9JkeZXV+b+OruR1tJ33ePmv9ZwMeETSEKlmu/WJ45XTTG+l6a2KDsQtJJ66qo/hbSGBtk0XVLHw== +"@esbuild/linux-arm@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz#fc6fd11a8aca56c1f6f3894f2bea0479f8f626b9" + integrity sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA== + "@esbuild/linux-ia32@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.18.16.tgz#a8825ccea6309f0bccfc5d87b43163ba804c2f20" integrity sha512-no+pfEpwnRvIyH+txbBAWtjxPU9grslmTBfsmDndj7bnBmr55rOo/PfQmRfz7Qg9isswt1FP5hBbWb23fRWnow== +"@esbuild/linux-ia32@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz#3271f53b3f93e3d093d518d1649d6d68d346ede2" + integrity sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg== + "@esbuild/linux-loong64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.18.16.tgz#f530e820fc3c61cf2206155b994aeab53b6d25be" integrity sha512-Zbnczs9ZXjmo0oZSS0zbNlJbcwKXa/fcNhYQjahDs4Xg18UumpXG/lwM2lcSvHS3mTrRyCYZvJbmzYc4laRI1g== +"@esbuild/linux-loong64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz#ed62e04238c57026aea831c5a130b73c0f9f26df" + integrity sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg== + "@esbuild/linux-mips64el@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.18.16.tgz#2d47ace539257896865d243641bd6716684a1e82" integrity sha512-YMF7hih1HVR/hQVa/ot4UVffc5ZlrzEb3k2ip0nZr1w6fnYypll9td2qcoMLvd3o8j3y6EbJM3MyIcXIVzXvQQ== +"@esbuild/linux-mips64el@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz#e79b8eb48bf3b106fadec1ac8240fb97b4e64cbe" + integrity sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg== + "@esbuild/linux-ppc64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.18.16.tgz#d6913e7e9be9e242a6a20402800141bdbe7009f7" integrity sha512-Wkz++LZ29lDwUyTSEnzDaaP5OveOgTU69q9IyIw9WqLRxM4BjTBjz9un4G6TOvehWpf/J3gYVFN96TjGHrbcNQ== +"@esbuild/linux-ppc64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz#5f2203860a143b9919d383ef7573521fb154c3e4" + integrity sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w== + "@esbuild/linux-riscv64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.18.16.tgz#8f33b627389c8234fe61f4636c134f17fb1d9b09" integrity sha512-LFMKZ30tk78/mUv1ygvIP+568bwf4oN6reG/uczXnz6SvFn4e2QUFpUpZY9iSJT6Qpgstrhef/nMykIXZtZWGQ== +"@esbuild/linux-riscv64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz#07bcafd99322d5af62f618cb9e6a9b7f4bb825dc" + integrity sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA== + "@esbuild/linux-s390x@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.18.16.tgz#4d44c030f78962cf410f604f92fcc1505e4afdde" integrity sha512-3ZC0BgyYHYKfZo3AV2/66TD/I9tlSBaW7eWTEIkrQQKfJIifKMMttXl9FrAg+UT0SGYsCRLI35Gwdmm96vlOjg== +"@esbuild/linux-s390x@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz#b7ccf686751d6a3e44b8627ababc8be3ef62d8de" + integrity sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A== + "@esbuild/linux-x64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.18.16.tgz#8846d00e16b1e93eb488c8b4dd51c946adfc236f" integrity sha512-xu86B3647DihHJHv/wx3NCz2Dg1gjQ8bbf9cVYZzWKY+gsvxYmn/lnVlqDRazObc3UMwoHpUhNYaZset4X8IPA== +"@esbuild/linux-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz#6d8f0c768e070e64309af8004bb94e68ab2bb3b0" + integrity sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ== + "@esbuild/netbsd-x64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.18.16.tgz#6514a86bd07744f3100d2813ea2fb6520d53e72e" integrity sha512-uVAgpimx9Ffw3xowtg/7qQPwHFx94yCje+DoBx+LNm2ePDpQXHrzE+Sb0Si2VBObYz+LcRps15cq+95YM7gkUw== +"@esbuild/netbsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz#bbe430f60d378ecb88decb219c602667387a6047" + integrity sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg== + "@esbuild/openbsd-x64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.18.16.tgz#ae67ce766d58aab6c0e6037f1a76f15df4a2a5fe" integrity sha512-6OjCQM9wf7z8/MBi6BOWaTL2AS/SZudsZtBziXMtNI8r/U41AxS9x7jn0ATOwVy08OotwkPqGRMkpPR2wcTJXA== +"@esbuild/openbsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz#99d1cf2937279560d2104821f5ccce220cb2af70" + integrity sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow== + "@esbuild/sunos-x64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.18.16.tgz#998efe8a58374b7351ac710455051639a6ce6a05" integrity sha512-ZoNkruFYJp9d1LbUYCh8awgQDvB9uOMZqlQ+gGEZR7v6C+N6u7vPr86c+Chih8niBR81Q/bHOSKGBK3brJyvkQ== +"@esbuild/sunos-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz#08741512c10d529566baba837b4fe052c8f3487b" + integrity sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg== + "@esbuild/win32-arm64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.18.16.tgz#8de33682243508eef8d4de1816df2c05adad2b21" integrity sha512-+j4anzQ9hrs+iqO+/wa8UE6TVkKua1pXUb0XWFOx0FiAj6R9INJ+WE//1/Xo6FG1vB5EpH3ko+XcgwiDXTxcdw== +"@esbuild/win32-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz#675b7385398411240735016144ab2e99a60fc75d" + integrity sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A== + "@esbuild/win32-ia32@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.18.16.tgz#95c9f4274fb3ef9e449d464ffe3e3b7fa091503b" integrity sha512-5PFPmq3sSKTp9cT9dzvI67WNfRZGvEVctcZa1KGjDDu4n3H8k59Inbk0du1fz0KrAbKKNpJbdFXQMDUz7BG4rQ== +"@esbuild/win32-ia32@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz#1bfc3ce98aa6ca9a0969e4d2af72144c59c1193b" + integrity sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA== + "@esbuild/win32-x64@0.18.16": version "0.18.16" resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.18.16.tgz#5be58d31d0120c68af8e38b702e6937ce764cd68" integrity sha512-sCIVrrtcWN5Ua7jYXNG1xD199IalrbfV2+0k/2Zf2OyV2FtnQnMgdzgpRAbi4AWlKJj1jkX+M+fEGPQj6BQB4w== +"@esbuild/win32-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz#acad351d582d157bb145535db2a6ff53dd514b5c" + integrity sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw== + "@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0": version "4.4.0" resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" @@ -1412,6 +1527,13 @@ resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== +"@jest/schemas@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" + integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA== + dependencies: + "@sinclair/typebox" "^0.27.8" + "@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": version "0.3.3" resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" @@ -1436,7 +1558,7 @@ resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== -"@jridgewell/sourcemap-codec@^1.4.10": +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.15": version "1.4.15" resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== @@ -1578,6 +1700,91 @@ resolved "https://registry.yarnpkg.com/@remix-run/router/-/router-1.7.2.tgz#cba1cf0a04bc04cb66027c51fa600e9cbc388bc8" integrity sha512-7Lcn7IqGMV+vizMPoEl5F0XDshcdDYtMI6uJLQdQz5CfZAwy3vvGKYSUk789qndt5dEC4HfSjviSYlSoHGL2+A== +"@rollup/rollup-android-arm-eabi@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.0.tgz#bbd0e616b2078cd2d68afc9824d1fadb2f2ffd27" + integrity sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ== + +"@rollup/rollup-android-arm64@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.0.tgz#97255ef6384c5f73f4800c0de91f5f6518e21203" + integrity sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA== + +"@rollup/rollup-darwin-arm64@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz#b6dd74e117510dfe94541646067b0545b42ff096" + integrity sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w== + +"@rollup/rollup-darwin-x64@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.0.tgz#e07d76de1cec987673e7f3d48ccb8e106d42c05c" + integrity sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA== + +"@rollup/rollup-linux-arm-gnueabihf@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.0.tgz#9f1a6d218b560c9d75185af4b8bb42f9f24736b8" + integrity sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA== + +"@rollup/rollup-linux-arm-musleabihf@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.0.tgz#53618b92e6ffb642c7b620e6e528446511330549" + integrity sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A== + +"@rollup/rollup-linux-arm64-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.0.tgz#99a7ba5e719d4f053761a698f7b52291cefba577" + integrity sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw== + +"@rollup/rollup-linux-arm64-musl@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.0.tgz#f53db99a45d9bc00ce94db8a35efa7c3c144a58c" + integrity sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ== + +"@rollup/rollup-linux-powerpc64le-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.0.tgz#cbb0837408fe081ce3435cf3730e090febafc9bf" + integrity sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA== + +"@rollup/rollup-linux-riscv64-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.0.tgz#8ed09c1d1262ada4c38d791a28ae0fea28b80cc9" + integrity sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg== + +"@rollup/rollup-linux-s390x-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.0.tgz#938138d3c8e0c96f022252a28441dcfb17afd7ec" + integrity sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg== + +"@rollup/rollup-linux-x64-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.0.tgz#1a7481137a54740bee1ded4ae5752450f155d942" + integrity sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w== + +"@rollup/rollup-linux-x64-musl@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.0.tgz#f1186afc601ac4f4fc25fac4ca15ecbee3a1874d" + integrity sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg== + +"@rollup/rollup-win32-arm64-msvc@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.0.tgz#ed6603e93636a96203c6915be4117245c1bd2daf" + integrity sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA== + +"@rollup/rollup-win32-ia32-msvc@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.0.tgz#14e0b404b1c25ebe6157a15edb9c46959ba74c54" + integrity sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg== + +"@rollup/rollup-win32-x64-msvc@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.0.tgz#5d694d345ce36b6ecf657349e03eb87297e68da4" + integrity sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g== + +"@sinclair/typebox@^0.27.8": + version "0.27.8" + resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" + integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== + "@sindresorhus/is@^4.0.0": version "4.6.0" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f" @@ -1747,6 +1954,11 @@ resolved "https://registry.yarnpkg.com/@types/d3-timer/-/d3-timer-3.0.2.tgz#70bbda77dc23aa727413e22e214afa3f0e852f70" integrity sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw== +"@types/estree@1.0.5", "@types/estree@^1.0.0": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" + integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== + "@types/hoist-non-react-statics@*": version "3.3.1" resolved "https://registry.yarnpkg.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz#1124aafe5118cb591977aeb1ceaaed1070eb039f" @@ -1960,6 +2172,50 @@ "@babel/plugin-transform-react-jsx-source" "^7.22.5" react-refresh "^0.14.0" +"@vitest/expect@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-1.6.0.tgz#0b3ba0914f738508464983f4d811bc122b51fb30" + integrity sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ== + dependencies: + "@vitest/spy" "1.6.0" + "@vitest/utils" "1.6.0" + chai "^4.3.10" + +"@vitest/runner@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-1.6.0.tgz#a6de49a96cb33b0e3ba0d9064a3e8d6ce2f08825" + integrity sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg== + dependencies: + "@vitest/utils" "1.6.0" + p-limit "^5.0.0" + pathe "^1.1.1" + +"@vitest/snapshot@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-1.6.0.tgz#deb7e4498a5299c1198136f56e6e0f692e6af470" + integrity sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ== + dependencies: + magic-string "^0.30.5" + pathe "^1.1.1" + pretty-format "^29.7.0" + +"@vitest/spy@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-1.6.0.tgz#362cbd42ccdb03f1613798fde99799649516906d" + integrity sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw== + dependencies: + tinyspy "^2.2.0" + +"@vitest/utils@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-1.6.0.tgz#5c5675ca7d6f546a7b4337de9ae882e6c57896a1" + integrity sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw== + dependencies: + diff-sequences "^29.6.3" + estree-walker "^3.0.3" + loupe "^2.3.7" + pretty-format "^29.7.0" + "@vkruglikov/react-telegram-web-app@^2.1.1": version "2.1.1" resolved "https://registry.yarnpkg.com/@vkruglikov/react-telegram-web-app/-/react-telegram-web-app-2.1.1.tgz#56bd3a782135c7f3a2145eb98521bd355a4224e0" @@ -1970,6 +2226,18 @@ acorn-jsx@^5.3.2: resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== +acorn-walk@^8.3.2: + version "8.3.3" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.3.tgz#9caeac29eefaa0c41e3d4c65137de4d6f34df43e" + integrity sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw== + dependencies: + acorn "^8.11.0" + +acorn@^8.11.0, acorn@^8.11.3: + version "8.12.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.12.0.tgz#1627bfa2e058148036133b8d9b51a700663c294c" + integrity sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw== + acorn@^8.9.0: version "8.10.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" @@ -2004,6 +2272,11 @@ ansi-styles@^4.1.0: dependencies: color-convert "^2.0.1" +ansi-styles@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" + integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== + anymatch@~3.1.2: version "3.1.3" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" @@ -2022,6 +2295,11 @@ array-union@^2.1.0: resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== +assertion-error@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" + integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== + asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" @@ -2118,6 +2396,11 @@ buffer-crc32@~0.2.3: resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== +cac@^6.7.14: + version "6.7.14" + resolved "https://registry.yarnpkg.com/cac/-/cac-6.7.14.tgz#804e1e6f506ee363cb0e3ccbb09cad5dd9870959" + integrity sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ== + cacheable-lookup@^5.0.3: version "5.0.4" resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz#5a6b865b2c44357be3d5ebc2a467b032719a7005" @@ -2151,6 +2434,19 @@ caniuse-lite@^1.0.30001503: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001517.tgz#90fabae294215c3495807eb24fc809e11dc2f0a8" integrity sha512-Vdhm5S11DaFVLlyiKu4hiUTkpZu+y1KA/rZZqVQfOD5YdDT/eQKlkt7NaE0WGOFgX32diqt9MiP9CAiFeRklaA== +chai@^4.3.10: + version "4.4.1" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.4.1.tgz#3603fa6eba35425b0f2ac91a009fe924106e50d1" + integrity sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g== + dependencies: + assertion-error "^1.1.0" + check-error "^1.0.3" + deep-eql "^4.1.3" + get-func-name "^2.0.2" + loupe "^2.3.6" + pathval "^1.1.1" + type-detect "^4.0.8" + chalk@^2.0.0: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" @@ -2168,6 +2464,13 @@ chalk@^4.0.0: ansi-styles "^4.1.0" supports-color "^7.1.0" +check-error@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.3.tgz#a6502e4312a7ee969f646e83bb3ddd56281bd694" + integrity sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg== + dependencies: + get-func-name "^2.0.2" + chokidar@^3.4.0: version "3.5.3" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" @@ -2251,6 +2554,11 @@ concat-map@0.0.1: resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== +confbox@^0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/confbox/-/confbox-0.1.7.tgz#ccfc0a2bcae36a84838e83a3b7f770fb17d6c579" + integrity sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA== + convert-source-map@^1.1.0, convert-source-map@^1.5.0, convert-source-map@^1.7.0: version "1.9.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" @@ -2274,7 +2582,7 @@ cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" -cross-spawn@^7.0.2: +cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -2397,6 +2705,13 @@ decompress-response@^6.0.0: dependencies: mimic-response "^3.1.0" +deep-eql@^4.1.3: + version "4.1.4" + resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-4.1.4.tgz#d0d3912865911bb8fac5afb4e3acfa6a28dc72b7" + integrity sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg== + dependencies: + type-detect "^4.0.0" + deep-is@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" @@ -2417,6 +2732,11 @@ delayed-stream@~1.0.0: resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== +diff-sequences@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.6.3.tgz#4deaf894d11407c51efc8418012f9e70b84ea921" + integrity sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q== + dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -2486,6 +2806,35 @@ esbuild@^0.18.10: "@esbuild/win32-ia32" "0.18.16" "@esbuild/win32-x64" "0.18.16" +esbuild@^0.21.3: + version "0.21.5" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.21.5.tgz#9ca301b120922959b766360d8ac830da0d02997d" + integrity sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw== + optionalDependencies: + "@esbuild/aix-ppc64" "0.21.5" + "@esbuild/android-arm" "0.21.5" + "@esbuild/android-arm64" "0.21.5" + "@esbuild/android-x64" "0.21.5" + "@esbuild/darwin-arm64" "0.21.5" + "@esbuild/darwin-x64" "0.21.5" + "@esbuild/freebsd-arm64" "0.21.5" + "@esbuild/freebsd-x64" "0.21.5" + "@esbuild/linux-arm" "0.21.5" + "@esbuild/linux-arm64" "0.21.5" + "@esbuild/linux-ia32" "0.21.5" + "@esbuild/linux-loong64" "0.21.5" + "@esbuild/linux-mips64el" "0.21.5" + "@esbuild/linux-ppc64" "0.21.5" + "@esbuild/linux-riscv64" "0.21.5" + "@esbuild/linux-s390x" "0.21.5" + "@esbuild/linux-x64" "0.21.5" + "@esbuild/netbsd-x64" "0.21.5" + "@esbuild/openbsd-x64" "0.21.5" + "@esbuild/sunos-x64" "0.21.5" + "@esbuild/win32-arm64" "0.21.5" + "@esbuild/win32-ia32" "0.21.5" + "@esbuild/win32-x64" "0.21.5" + escalade@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" @@ -2605,6 +2954,13 @@ estree-walker@^0.6.1: resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.6.1.tgz#53049143f40c6eb918b23671d1fe3219f3a1b362" integrity sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w== +estree-walker@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-3.0.3.tgz#67c3e549ec402a487b4fc193d1953a524752340d" + integrity sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g== + dependencies: + "@types/estree" "^1.0.0" + esutils@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" @@ -2620,6 +2976,21 @@ eventsource@^2.0.2: resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-2.0.2.tgz#76dfcc02930fb2ff339520b6d290da573a9e8508" integrity sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA== +execa@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/execa/-/execa-8.0.1.tgz#51f6a5943b580f963c3ca9c6321796db8cc39b8c" + integrity sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg== + dependencies: + cross-spawn "^7.0.3" + get-stream "^8.0.1" + human-signals "^5.0.0" + is-stream "^3.0.0" + merge-stream "^2.0.0" + npm-run-path "^5.1.0" + onetime "^6.0.0" + signal-exit "^4.1.0" + strip-final-newline "^3.0.0" + extract-zip@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" @@ -2759,6 +3130,11 @@ fsevents@~2.3.2: resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== +fsevents@~2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" @@ -2769,6 +3145,11 @@ gensync@^1.0.0-beta.2: resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== +get-func-name@^2.0.1, get-func-name@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.2.tgz#0d7cf20cd13fda808669ffa88f4ffc7a3943fc41" + integrity sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ== + get-stream@^5.1.0: version "5.2.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" @@ -2776,6 +3157,11 @@ get-stream@^5.1.0: dependencies: pump "^3.0.0" +get-stream@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-8.0.1.tgz#def9dfd71742cd7754a7761ed43749a27d02eca2" + integrity sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA== + glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" @@ -2900,6 +3286,11 @@ http2-wrapper@^1.0.0-beta.5.2: quick-lru "^5.1.1" resolve-alpn "^1.0.0" +human-signals@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-5.0.0.tgz#42665a284f9ae0dade3ba41ebc37eb4b852f3a28" + integrity sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ== + ignore@^5.2.0, ignore@^5.2.4: version "5.2.4" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" @@ -2977,6 +3368,11 @@ is-path-inside@^3.0.3: resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== +is-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-3.0.0.tgz#e6bfd7aa6bef69f4f472ce9bb681e3e57b4319ac" + integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA== + isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" @@ -2995,6 +3391,11 @@ isomorphic-fetch@^3.0.0: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== +js-tokens@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-9.0.0.tgz#0f893996d6f3ed46df7f0a3b12a03f5fd84223c1" + integrity sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ== + js-yaml@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" @@ -3062,6 +3463,14 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== +local-pkg@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/local-pkg/-/local-pkg-0.5.0.tgz#093d25a346bae59a99f80e75f6e9d36d7e8c925c" + integrity sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg== + dependencies: + mlly "^1.4.2" + pkg-types "^1.0.3" + locate-path@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" @@ -3096,6 +3505,13 @@ loose-envify@^1.1.0, loose-envify@^1.4.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" +loupe@^2.3.6, loupe@^2.3.7: + version "2.3.7" + resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.7.tgz#6e69b7d4db7d3ab436328013d37d1c8c3540c697" + integrity sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA== + dependencies: + get-func-name "^2.0.1" + lowercase-keys@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" @@ -3122,6 +3538,13 @@ magic-string@^0.25.3: dependencies: sourcemap-codec "^1.4.8" +magic-string@^0.30.5: + version "0.30.10" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.10.tgz#123d9c41a0cb5640c892b041d4cfb3bd0aa4b39e" + integrity sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ== + dependencies: + "@jridgewell/sourcemap-codec" "^1.4.15" + make-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" @@ -3130,6 +3553,11 @@ make-dir@^2.1.0: pify "^4.0.1" semver "^5.6.0" +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" @@ -3155,6 +3583,11 @@ mime-types@^2.1.12: dependencies: mime-db "1.52.0" +mimic-fn@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc" + integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw== + mimic-response@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" @@ -3172,6 +3605,16 @@ minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: dependencies: brace-expansion "^1.1.7" +mlly@^1.4.2, mlly@^1.7.1: + version "1.7.1" + resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.7.1.tgz#e0336429bb0731b6a8e887b438cbdae522c8f32f" + integrity sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA== + dependencies: + acorn "^8.11.3" + pathe "^1.1.2" + pkg-types "^1.1.1" + ufo "^1.5.3" + ms@2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" @@ -3182,6 +3625,11 @@ nanoid@^3.3.6: resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA== +nanoid@^3.3.7: + version "3.3.7" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" + integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== + natural-compare-lite@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" @@ -3239,6 +3687,13 @@ normalize-url@^6.0.1: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== +npm-run-path@^5.1.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.3.0.tgz#e23353d0ebb9317f174e93417e4a4d82d0249e9f" + integrity sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ== + dependencies: + path-key "^4.0.0" + object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" @@ -3251,6 +3706,13 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0: dependencies: wrappy "1" +onetime@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-6.0.0.tgz#7c24c18ed1fd2e9bca4bd26806a33613c77d34b4" + integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ== + dependencies: + mimic-fn "^4.0.0" + optionator@^0.9.3: version "0.9.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.3.tgz#007397d44ed1872fdc6ed31360190f81814e2c64" @@ -3275,6 +3737,13 @@ p-limit@^3.0.2: dependencies: yocto-queue "^0.1.0" +p-limit@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-5.0.0.tgz#6946d5b7140b649b7a33a027d89b4c625b3a5985" + integrity sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ== + dependencies: + yocto-queue "^1.0.0" + p-locate@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" @@ -3314,6 +3783,11 @@ path-key@^3.1.0: resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== +path-key@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18" + integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== + path-parse@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" @@ -3324,6 +3798,16 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== +pathe@^1.1.1, pathe@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.1.2.tgz#6c4cb47a945692e48a1ddd6e4094d170516437ec" + integrity sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ== + +pathval@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" + integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ== + pend@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" @@ -3334,6 +3818,11 @@ picocolors@^1.0.0: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== +picocolors@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" + integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== + picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" @@ -3344,6 +3833,15 @@ pify@^4.0.1: resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== +pkg-types@^1.0.3, pkg-types@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/pkg-types/-/pkg-types-1.1.2.tgz#3e211ecec23516f59323ba058ec21cbc533ff81a" + integrity sha512-VEGf1he2DR5yowYRl0XJhWJq5ktm9gYIsH+y8sNJpHlxch7JPDaufgrsl4vYjd9hMUY8QVjoNncKbow9I7exyA== + dependencies: + confbox "^0.1.7" + mlly "^1.7.1" + pathe "^1.1.2" + postcss-value-parser@^4.0.2: version "4.2.0" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" @@ -3367,6 +3865,15 @@ postcss@^8.4.23, postcss@^8.4.26: picocolors "^1.0.0" source-map-js "^1.0.2" +postcss@^8.4.38: + version "8.4.39" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.39.tgz#aa3c94998b61d3a9c259efa51db4b392e1bde0e3" + integrity sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw== + dependencies: + nanoid "^3.3.7" + picocolors "^1.0.1" + source-map-js "^1.2.0" + prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" @@ -3377,6 +3884,15 @@ prettier@^3.3.2: resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.3.2.tgz#03ff86dc7c835f2d2559ee76876a3914cec4a90a" integrity sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA== +pretty-format@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812" + integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ== + dependencies: + "@jest/schemas" "^29.6.3" + ansi-styles "^5.0.0" + react-is "^18.0.0" + prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: version "15.8.1" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" @@ -3439,6 +3955,11 @@ react-is@^16.10.2, react-is@^16.13.1, react-is@^16.7.0: resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== +react-is@^18.0.0: + version "18.3.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.3.1.tgz#e83557dc12eae63a99e003a46388b1dcbb44db7e" + integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg== + react-is@^18.2.0: version "18.2.0" resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" @@ -3663,6 +4184,31 @@ rollup@^3.25.2: optionalDependencies: fsevents "~2.3.2" +rollup@^4.13.0: + version "4.18.0" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.18.0.tgz#497f60f0c5308e4602cf41136339fbf87d5f5dda" + integrity sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg== + dependencies: + "@types/estree" "1.0.5" + optionalDependencies: + "@rollup/rollup-android-arm-eabi" "4.18.0" + "@rollup/rollup-android-arm64" "4.18.0" + "@rollup/rollup-darwin-arm64" "4.18.0" + "@rollup/rollup-darwin-x64" "4.18.0" + "@rollup/rollup-linux-arm-gnueabihf" "4.18.0" + "@rollup/rollup-linux-arm-musleabihf" "4.18.0" + "@rollup/rollup-linux-arm64-gnu" "4.18.0" + "@rollup/rollup-linux-arm64-musl" "4.18.0" + "@rollup/rollup-linux-powerpc64le-gnu" "4.18.0" + "@rollup/rollup-linux-riscv64-gnu" "4.18.0" + "@rollup/rollup-linux-s390x-gnu" "4.18.0" + "@rollup/rollup-linux-x64-gnu" "4.18.0" + "@rollup/rollup-linux-x64-musl" "4.18.0" + "@rollup/rollup-win32-arm64-msvc" "4.18.0" + "@rollup/rollup-win32-ia32-msvc" "4.18.0" + "@rollup/rollup-win32-x64-msvc" "4.18.0" + fsevents "~2.3.2" + run-parallel@^1.1.9: version "1.2.0" resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" @@ -3716,6 +4262,16 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== +siginfo@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/siginfo/-/siginfo-2.0.0.tgz#32e76c70b79724e3bb567cb9d543eb858ccfaf30" + integrity sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g== + +signal-exit@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" + integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== + slash@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" @@ -3731,6 +4287,11 @@ source-map-js@^1.0.2: resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== +source-map-js@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.0.tgz#16b809c162517b5b8c3e7dcd315a2a5c2612b2af" + integrity sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg== + source-map@^0.5.7: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" @@ -3741,6 +4302,16 @@ sourcemap-codec@^1.4.8: resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== +stackback@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/stackback/-/stackback-0.0.2.tgz#1ac8a0d9483848d1695e418b6d031a3c3ce68e3b" + integrity sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw== + +std-env@^3.5.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.7.0.tgz#c9f7386ced6ecf13360b6c6c55b8aaa4ef7481d2" + integrity sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg== + strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" @@ -3748,11 +4319,23 @@ strip-ansi@^6.0.1: dependencies: ansi-regex "^5.0.1" +strip-final-newline@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd" + integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== + strip-json-comments@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== +strip-literal@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/strip-literal/-/strip-literal-2.1.0.tgz#6d82ade5e2e74f5c7e8739b6c84692bd65f0bd2a" + integrity sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw== + dependencies: + js-tokens "^9.0.0" + styled-components@^6.0.5: version "6.0.5" resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-6.0.5.tgz#a2588432507a57d946bfb6feb2ebd13fce447bd9" @@ -3855,6 +4438,21 @@ tiny-invariant@^1.3.1: resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.3.tgz#46680b7a873a0d5d10005995eb90a70d74d60127" integrity sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg== +tinybench@^2.5.1: + version "2.8.0" + resolved "https://registry.yarnpkg.com/tinybench/-/tinybench-2.8.0.tgz#30e19ae3a27508ee18273ffed9ac7018949acd7b" + integrity sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw== + +tinypool@^0.8.3: + version "0.8.4" + resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-0.8.4.tgz#e217fe1270d941b39e98c625dcecebb1408c9aa8" + integrity sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ== + +tinyspy@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/tinyspy/-/tinyspy-2.2.1.tgz#117b2342f1f38a0dbdcc73a50a454883adf861d1" + integrity sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A== + to-fast-properties@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" @@ -3914,6 +4512,11 @@ type-check@^0.4.0, type-check@~0.4.0: dependencies: prelude-ls "^1.2.1" +type-detect@^4.0.0, type-detect@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== + type-fest@^0.20.2: version "0.20.2" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" @@ -3929,6 +4532,11 @@ ua-parser-js@^1.0.35: resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-1.0.36.tgz#a9ab6b9bd3a8efb90bb0816674b412717b7c428c" integrity sha512-znuyCIXzl8ciS3+y3fHJI/2OhQIXbXw9MWC/o3qwyR+RGppjZHrM27CGFSKCJXi2Kctiz537iOu2KnXs1lMQhw== +ufo@^1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/ufo/-/ufo-1.5.3.tgz#3325bd3c977b6c6cd3160bf4ff52989adc9d3344" + integrity sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw== + undici-types@~5.26.4: version "5.26.5" resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" @@ -4002,6 +4610,17 @@ victory-vendor@^36.6.8: d3-time "^3.0.0" d3-timer "^3.0.1" +vite-node@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-1.6.0.tgz#2c7e61129bfecc759478fa592754fd9704aaba7f" + integrity sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw== + dependencies: + cac "^6.7.14" + debug "^4.3.4" + pathe "^1.1.1" + picocolors "^1.0.0" + vite "^5.0.0" + vite@^4.4.5: version "4.4.7" resolved "https://registry.yarnpkg.com/vite/-/vite-4.4.7.tgz#71b8a37abaf8d50561aca084dbb77fa342824154" @@ -4013,6 +4632,43 @@ vite@^4.4.5: optionalDependencies: fsevents "~2.3.2" +vite@^5.0.0: + version "5.3.2" + resolved "https://registry.yarnpkg.com/vite/-/vite-5.3.2.tgz#2f0a8531c71060467ed3e0a205a203f269b6d9c8" + integrity sha512-6lA7OBHBlXUxiJxbO5aAY2fsHHzDr1q7DvXYnyZycRs2Dz+dXBWuhpWHvmljTRTpQC2uvGmUFFkSHF2vGo90MA== + dependencies: + esbuild "^0.21.3" + postcss "^8.4.38" + rollup "^4.13.0" + optionalDependencies: + fsevents "~2.3.3" + +vitest@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/vitest/-/vitest-1.6.0.tgz#9d5ad4752a3c451be919e412c597126cffb9892f" + integrity sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA== + dependencies: + "@vitest/expect" "1.6.0" + "@vitest/runner" "1.6.0" + "@vitest/snapshot" "1.6.0" + "@vitest/spy" "1.6.0" + "@vitest/utils" "1.6.0" + acorn-walk "^8.3.2" + chai "^4.3.10" + debug "^4.3.4" + execa "^8.0.1" + local-pkg "^0.5.0" + magic-string "^0.30.5" + pathe "^1.1.1" + picocolors "^1.0.0" + std-env "^3.5.0" + strip-literal "^2.0.0" + tinybench "^2.5.1" + tinypool "^0.8.3" + vite "^5.0.0" + vite-node "1.6.0" + why-is-node-running "^2.2.2" + webidl-conversions@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" @@ -4038,6 +4694,14 @@ which@^2.0.1: dependencies: isexe "^2.0.0" +why-is-node-running@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/why-is-node-running/-/why-is-node-running-2.2.2.tgz#4185b2b4699117819e7154594271e7e344c9973e" + integrity sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA== + dependencies: + siginfo "^2.0.0" + stackback "0.0.2" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -4076,6 +4740,11 @@ yocto-queue@^0.1.0: resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== +yocto-queue@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.1.1.tgz#fef65ce3ac9f8a32ceac5a634f74e17e5b232110" + integrity sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g== + zod@^3.21.4: version "3.21.4" resolved "https://registry.yarnpkg.com/zod/-/zod-3.21.4.tgz#10882231d992519f0a10b5dd58a38c9dabbb64db" From 03f4e646a09b7e8663e62def974a11e31103b768 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 2 Jul 2024 16:37:23 +1000 Subject: [PATCH 008/105] refactor/api dto changed --- src/hooks/api/dashboard/useBotPerformanceChart.ts | 7 +++---- src/pages/Dashboard/Dashboard.tsx | 9 ++++----- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/src/hooks/api/dashboard/useBotPerformanceChart.ts b/src/hooks/api/dashboard/useBotPerformanceChart.ts index ea7c136e..6cb81696 100644 --- a/src/hooks/api/dashboard/useBotPerformanceChart.ts +++ b/src/hooks/api/dashboard/useBotPerformanceChart.ts @@ -9,13 +9,12 @@ interface IBotPerformanceChartData { interface IBotPerformanceChart { timeframe: number; + dailyPnlRate: number; data: IBotPerformanceChartData[]; } -export function useBotPerformanceChart(userId: number, timeframe: number) { - const swrKey = userId - ? `/data/user/${userId}/botPerformanceChart${timeframe ? `?timeframe=${timeframe}` : ""}` - : null; +export function useBotPerformanceChart(timeframe: number) { + const swrKey = `/data/botPerformanceChart${timeframe ? `?timeframe=${timeframe}` : ""}`; return useSWR(swrKey, nextonFetcher); } diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index ca26effa..fef187c3 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -62,7 +62,7 @@ const Dashboard = () => { data: chartData, isLoading: chartLoading, error: chartError, - } = useBotPerformanceChart(userId, chartTimeFrameOptions[timeFrame]); + } = useBotPerformanceChart(chartTimeFrameOptions[timeFrame]); useEffect(() => { if (tele) { @@ -115,11 +115,10 @@ const Dashboard = () => {

Arbitrage Bot

- {/* to-do: get daily pnl from the API */} - {/* +
Daily PNL
- +33% -
*/} + +{chartData?.dailyPnlRate}% +
From 97c02223660d73fcb5f4dcf8e5cc4edcc0620b0b Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Wed, 3 Jul 2024 16:56:49 +1000 Subject: [PATCH 009/105] feat/tests dateChanger, floorHex, getLockupDate --- package.json | 3 +- src/utils/dateChanger.test.ts | 59 +++++++++++++++++++++++++++++++++ src/utils/floorHex.test.ts | 50 ++++++++++++++++++++++++++++ src/utils/floorHex.ts | 8 +++++ src/utils/getLockupDate.test.ts | 21 ++++++++++++ 5 files changed, 140 insertions(+), 1 deletion(-) create mode 100644 src/utils/dateChanger.test.ts create mode 100644 src/utils/floorHex.test.ts create mode 100644 src/utils/getLockupDate.test.ts diff --git a/package.json b/package.json index 9c91fcbd..42c594a8 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,8 @@ "build": "tsc && vite build", "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0 --fix", "preview": "vite preview", - "format": "eslint --fix . --ext ts,tsx && prettier '**/*.{ts,tsx}' --write --ignore-path .gitignore" + "format": "eslint --fix . --ext ts,tsx && prettier '**/*.{ts,tsx}' --write --ignore-path .gitignore", + "test": "vitest" }, "dependencies": { "@aws-crypto/sha256-js": "^5.0.0", diff --git a/src/utils/dateChanger.test.ts b/src/utils/dateChanger.test.ts new file mode 100644 index 00000000..4c036658 --- /dev/null +++ b/src/utils/dateChanger.test.ts @@ -0,0 +1,59 @@ +import { expect, test } from "vitest"; + +import { + AvailableDate, + dateChangerShorter, + DDayChange, + expiredDateChanger, + formatDate, + lockUpDateChanger, + ReferralDateFormatter, + UnstakingDateChanger, +} from "./dateChanger"; + +// Test for dateChangerShorter +test("dateChangerShorter should format date correctly", () => { + expect(dateChangerShorter("2024-06-14")).toBe("06.14.24"); +}); + +// Test for expiredDateChanger +test("expiredDateChanger should add lock period and format date correctly", () => { + expect(expiredDateChanger("2024-06-14", 30)).toBe("07.14.24"); + expect(expiredDateChanger("2024-06-14", 30, "detail")).toBe("07.14.24"); +}); + +// Test for DDayChange +test("DDayChange should calculate the difference in days correctly", () => { + const today = new Date(); + today.setHours(0, 0, 0, 0); + const futureDate = new Date(today.getTime()); + futureDate.setDate(futureDate.getDate() + 30); + expect(DDayChange(today.toISOString(), 30)).toBe(30); +}); + +// Test for formatDate +test("formatDate should format date correctly", () => { + expect(formatDate(new Date("2024-06-14"))).toBe("06.14.24"); + expect(formatDate(new Date("2024-06-14"), "expired")).toBe("06.14.24"); +}); + +// Test for lockUpDateChanger +test("lockUpDateChanger should add days and format date correctly", () => { + const currentDate = new Date(); + const futureDate = new Date(currentDate.getTime()); + futureDate.setDate(futureDate.getDate() + 83); + const formattedFutureDate = `${String(futureDate.getMonth() + 1).padStart(2, "0")}.${String(futureDate.getDate()).padStart(2, "0")}.${String(futureDate.getFullYear()).slice(-2)}`; + expect(lockUpDateChanger(83)).toBe(formattedFutureDate); + expect(lockUpDateChanger(83, "expired")).toBe(formattedFutureDate); +}); + +// Test for UnstakingDateChanger +test("UnstakingDateChanger should add 9 hours and format date correctly", () => { + expect(UnstakingDateChanger("2024-06-14T00:00:00", "detail")).toBe("06.14.24"); + expect(UnstakingDateChanger("2024-06-14T00:00:00")).toBe("06.14.24"); +}); + +// Test for ReferralDateFormatter +test("ReferralDateFormatter should format date correctly", () => { + expect(ReferralDateFormatter("2024-06-14")).toBe("June 14, 24"); +}); diff --git a/src/utils/floorHex.test.ts b/src/utils/floorHex.test.ts new file mode 100644 index 00000000..f76b4861 --- /dev/null +++ b/src/utils/floorHex.test.ts @@ -0,0 +1,50 @@ +import { expect, test } from "vitest"; + +import { floorHex } from "./floorHex"; + +test("floorHex should floor the number correctly for given decimal places", () => { + // Test case 1 + let props = { number: "1234567890000000000", decimalPlaces: 2 }; + let result = floorHex(props); + expect(result).toBe(1.23); + + // Test case 2 + props = { number: "9876543210000000000", decimalPlaces: 4 }; + result = floorHex(props); + expect(result).toBe(9.8765); + + // Test case 3 + props = { number: "1000000000000000000", decimalPlaces: 0 }; + result = floorHex(props); + expect(result).toBe(1); + + // Test case 4 + props = { number: "1000000000000000001", decimalPlaces: 0 }; + result = floorHex(props); + expect(result).toBe(1); + + // Test case 5 + props = { number: "1234500000000000000", decimalPlaces: 5 }; + result = floorHex(props); + expect(result).toBe(1.2345); + + // Test case 6: Test edge case with 0 decimal places + props = { number: "999999999999999999", decimalPlaces: 0 }; + result = floorHex(props); + expect(result).toBe(1); +}); + +test("floorHex should handle invalid inputs gracefully", () => { + // Test case 7: Test invalid number string + const props = { number: "invalid", decimalPlaces: 2 }; + expect(() => floorHex(props)).toThrow(Error); + + // Test case 8: Test negative decimal places + const propsNegativeDecimal = { number: "1234567890000000000", decimalPlaces: -1 }; + expect(() => floorHex(propsNegativeDecimal)).toThrow(Error); + + // Test case 9: Test very small number string + const propsSmallNumber = { number: "0", decimalPlaces: 2 }; + const resultSmallNumber = floorHex(propsSmallNumber); + expect(resultSmallNumber).toBe(0); +}); diff --git a/src/utils/floorHex.ts b/src/utils/floorHex.ts index db0ed624..bfe762b2 100644 --- a/src/utils/floorHex.ts +++ b/src/utils/floorHex.ts @@ -9,6 +9,14 @@ interface FloorHexProps { export const floorHex = (props: FloorHexProps) => { const { number, decimalPlaces } = props; + // Validate inputs + if (isNaN(Number(number))) { + throw new Error("Invalid number string"); + } + if (decimalPlaces < 0) { + throw new Error("Decimal places cannot be negative"); + } + const divisor = 10 ** 18; const dividedNumber = Number(number) / divisor; const multipliedNumber = dividedNumber * 10 ** decimalPlaces; diff --git a/src/utils/getLockupDate.test.ts b/src/utils/getLockupDate.test.ts new file mode 100644 index 00000000..cdabdac2 --- /dev/null +++ b/src/utils/getLockupDate.test.ts @@ -0,0 +1,21 @@ +import { expect, test } from "vitest"; + +import { getLockUpDate } from "./getLockupDate"; + +// Test for empty input string +test("getLockUpDate should return 0 for empty input string", () => { + const result = getLockUpDate("", 5); + expect(result).toBe(0); +}); + +// Test for non-empty input string with leverage 0 +test("getLockUpDate should return 50 for non-empty input string and leverage 0", () => { + const result = getLockUpDate("some input", 0); + expect(result).toBe(50); +}); + +// Test for non-empty input string with leverage 1 +test("getLockUpDate should return 60 for non-empty input string and leverage 1", () => { + const result = getLockUpDate("some input", 1); + expect(result).toBe(60); +}); From d2608aa151b060f1a9ef04ed62a19483afbad976 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 4 Jul 2024 16:11:39 +1000 Subject: [PATCH 010/105] feat/unit tests & main screen optimisation --- src/pages/Main/Main.tsx | 12 +++++--- src/utils/numberCutter.test.ts | 51 +++++++++++++++++++++++++++++++ src/utils/truncateAddress.test.ts | 27 ++++++++++++++++ 3 files changed, 85 insertions(+), 5 deletions(-) create mode 100644 src/utils/numberCutter.test.ts create mode 100644 src/utils/truncateAddress.test.ts diff --git a/src/pages/Main/Main.tsx b/src/pages/Main/Main.tsx index 39a27c18..bb5d4e7a 100644 --- a/src/pages/Main/Main.tsx +++ b/src/pages/Main/Main.tsx @@ -1,4 +1,4 @@ -import { useEffect, useState } from "react"; +import { useCallback, useEffect, useMemo, useState } from "react"; import { useLocation } from "react-router-dom"; import { Slide, toast, ToastContainer } from "react-toastify"; import styled from "styled-components"; @@ -117,7 +117,7 @@ const Main = () => { }; trackReferral(); - }, [tele, trigger, triggerManageReferral]); + }, [trigger, triggerManageReferral]); // Show toast message when the user has successfully staked useEffect(() => { @@ -141,13 +141,15 @@ const Main = () => { }, [location]); // Calculate the total amount staked - const totalStaked = nftList?.reduce((acc, nft) => acc + nft.amount, 0) || 0; + const totalStaked = useMemo(() => { + return nftList?.reduce((acc, nft) => acc + nft.amount, 0) || 0; + }, [nftList]); // Toggle welcome modal - const toggleModal = () => { + const toggleModal = useCallback(() => { setModal(prev => !prev); localStorage.setItem("hasVisited", "true"); - }; + }, []); return ( <> diff --git a/src/utils/numberCutter.test.ts b/src/utils/numberCutter.test.ts new file mode 100644 index 00000000..0d21fbf5 --- /dev/null +++ b/src/utils/numberCutter.test.ts @@ -0,0 +1,51 @@ +import { expect, test } from "vitest"; + +import { numberCutter } from "./numberCutter"; + +// Test for number with more than three decimal places +test("numberCutter should floor the number to the third decimal place and format correctly", () => { + const result = numberCutter(12345.67891); + expect(result).toBe("12,345.678"); +}); + +// Test for number with exactly three decimal places +test("numberCutter should handle number with exactly three decimal places correctly", () => { + const result = numberCutter(12345.678); + expect(result).toBe("12,345.678"); +}); + +// Test for number with fewer than three decimal places +test("numberCutter should handle number with fewer than three decimal places correctly", () => { + const result = numberCutter(12345.67); + expect(result).toBe("12,345.67"); +}); + +// Test for integer number +test("numberCutter should handle integer number correctly", () => { + const result = numberCutter(12345); + expect(result).toBe("12,345"); +}); + +// Test for large number with more than three decimal places +test("numberCutter should floor large number to the third decimal place and format correctly", () => { + const result = numberCutter(9876543210.12345); + expect(result).toBe("9,876,543,210.123"); +}); + +// Test for negative number with exactly three decimal places +test("numberCutter should handle negative number with exactly three decimal places correctly", () => { + const result = numberCutter(-12345.678); + expect(result).toBe("-12,345.678"); +}); + +// Test for negative number with fewer than three decimal places +test("numberCutter should handle negative number with fewer than three decimal places correctly", () => { + const result = numberCutter(-12345.67); + expect(result).toBe("-12,345.67"); +}); + +// Test for negative integer number +test("numberCutter should handle negative integer number correctly", () => { + const result = numberCutter(-12345); + expect(result).toBe("-12,345"); +}); diff --git a/src/utils/truncateAddress.test.ts b/src/utils/truncateAddress.test.ts new file mode 100644 index 00000000..88ba1d48 --- /dev/null +++ b/src/utils/truncateAddress.test.ts @@ -0,0 +1,27 @@ +import { expect, test } from "vitest"; + +import { truncateAddress } from "./truncateAddress"; + +test("truncateAddress should handle non-wallet type correctly", () => { + const props = { address: "0x1234567890abcdef1234567890abcdef12345678", type: "non-wallet" }; + const result = truncateAddress(props); + expect(result).toBe("0x123...678"); +}); + +test("truncateAddress should return empty string for empty address", () => { + const props = { address: "", type: "wallet" }; + const result = truncateAddress(props); + expect(result).toBe(""); +}); + +test("truncateAddress should handle undefined address", () => { + const props = { address: undefined, type: "wallet" } as any; + const result = truncateAddress(props); + expect(result).toBe(""); +}); + +test("truncateAddress should handle long address for non-wallet type", () => { + const props = { address: "0x1234567890abcdef1234567890abcdef12345678", type: "non-wallet" }; + const result = truncateAddress(props); + expect(result).toBe("0x123...678"); +}); From df0ac00254e0f04687f749a86f8f99db1388de3c Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 5 Jul 2024 18:03:53 +1000 Subject: [PATCH 011/105] feat/dashboard post-review updates --- src/assets/icons/Dashboard/ic_ton_logo.svg | 11 +++ src/hooks/api/useCoinPrice.ts | 33 +++++++++ src/pages/Dashboard/Dashboard.styled.tsx | 78 ++++++++++++++++++++-- src/pages/Dashboard/Dashboard.tsx | 45 +++++++++++-- src/pages/Dashboard/styles/Dashboard.css | 11 +++ 5 files changed, 165 insertions(+), 13 deletions(-) create mode 100644 src/assets/icons/Dashboard/ic_ton_logo.svg create mode 100644 src/hooks/api/useCoinPrice.ts create mode 100644 src/pages/Dashboard/styles/Dashboard.css diff --git a/src/assets/icons/Dashboard/ic_ton_logo.svg b/src/assets/icons/Dashboard/ic_ton_logo.svg new file mode 100644 index 00000000..b98bfb88 --- /dev/null +++ b/src/assets/icons/Dashboard/ic_ton_logo.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/hooks/api/useCoinPrice.ts b/src/hooks/api/useCoinPrice.ts new file mode 100644 index 00000000..0c88db49 --- /dev/null +++ b/src/hooks/api/useCoinPrice.ts @@ -0,0 +1,33 @@ +import axios from "axios"; +import useSWR from "swr"; + +const tonClient = axios.create({ + baseURL: "https://tonapi.io", +}); + +const tonFetcher = (url: string) => tonClient.get(url).then(res => res.data); + +interface ICoinPrice { + rates: { + [token: string]: { + prices: { + [currency: string]: number; + }; + diff_24h: { + [currency: string]: string; + }; + diff_7d: { + [currency: string]: string; + }; + diff_30d: { + [currency: string]: string; + }; + }; + }; +} + +export function useCoinPrice(token: string, currency: string) { + const swrKey = token && currency ? `/v2/rates?tokens=${token}¤cies=${currency}` : null; + + return useSWR(swrKey, tonFetcher); +} diff --git a/src/pages/Dashboard/Dashboard.styled.tsx b/src/pages/Dashboard/Dashboard.styled.tsx index 8173853e..1fb51c20 100644 --- a/src/pages/Dashboard/Dashboard.styled.tsx +++ b/src/pages/Dashboard/Dashboard.styled.tsx @@ -141,17 +141,17 @@ export const PerformanceItemHeader = styled.div` display: flex; justify-content: space-between; align-items: center; - - h4 { - color: #303234; - ${({ theme }) => theme.fonts.Nexton_Title_Small}; - } `; export const PerformanceItemHeaderLeft = styled.div` display: flex; align-items: center; gap: 0.5rem; + + h4 { + color: #303234; + ${({ theme }) => theme.fonts.Nexton_Title_Small}; + } `; export const PerformanceItemHeaderRight = styled.div` @@ -160,6 +160,14 @@ export const PerformanceItemHeaderRight = styled.div` color: #303234; ${({ theme }) => theme.fonts.Nexton_Title_Medium}; + + span { + ${({ theme }) => theme.fonts.Telegram_Caption_3}; + color: #909394; + align-self: flex-start; + margin-right: 0.5rem; + margin-top: 0.3rem; + } `; export const Divider = styled.hr` @@ -183,12 +191,12 @@ export const PerformanceItemBodyBox = styled.div` h4 { color: #909394; - ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; + ${({ theme }) => theme.fonts.Telegram_Caption_3}; } p { color: #303234; - ${({ theme }) => theme.fonts.Nexton_Label_Medium}; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; `; export const PerformanceItemFooter = styled.div` @@ -216,3 +224,59 @@ export const StakeButton = styled.button` padding: 1rem; gap: 4px; `; + +export const TonPriceWrapper = styled.div` + width: 100%; + display: flex; + gap: 1rem; + flex-direction: column; + + margin-top: 4.6rem; + + h2 { + color: #2c3542; + ${({ theme }) => theme.fonts.Nexton_Title_Small}; + } +`; + +export const TonPriceItem = styled.div` + width: 100%; + display: flex; + justify-content: space-between; + align-items: center; + + padding: 2rem 2.4rem; + margin-top: 1rem; + + border-radius: 20px; + background: #fff; + box-shadow: 4px 4px 16px 0px rgba(0, 0, 0, 0.15); +`; + +export const TonPriceItemLeft = styled.div` + display: flex; + align-items: center; + gap: 1rem; + + p { + color: #303234; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Large_2}; + } +`; + +export const TonPriceItemRight = styled.div` + display: flex; + align-items: center; + flex-direction: column; + gap: 0.25rem; + + p { + color: #303234; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + } +`; + +export const TonPriceItemRightPercentage = styled.div<{ $positive?: boolean }>` + color: ${({ $positive }) => ($positive ? "#34C759" : "#FF7979")}; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; +`; diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index fef187c3..d4e77973 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -1,14 +1,16 @@ import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; -import { CartesianGrid, Line, LineChart, ResponsiveContainer, XAxis, YAxis } from "recharts"; +import { CartesianGrid, Line, LineChart, ResponsiveContainer, Tooltip, XAxis, YAxis } from "recharts"; import { useSetRecoilState } from "recoil"; import IcNextonLogo from "@/assets/icons/Dashboard/ic_nexton_logo.svg"; import IcNextonLogoSm from "@/assets/icons/Dashboard/ic_nexton_logo_sm.svg"; import IcStakeLinkArrow from "@/assets/icons/Dashboard/ic_stake_link_arrow.svg"; +import IcTonLogo from "@/assets/icons/Dashboard/ic_ton_logo.svg"; import Loader from "@/components/common/Loader"; import { useBotPerformanceChart } from "@/hooks/api/dashboard/useBotPerformanceChart"; import { useBotPerformanceSummary } from "@/hooks/api/dashboard/useBotPerformanceSummary"; +import { useCoinPrice } from "@/hooks/api/useCoinPrice"; import { globalError } from "@/lib/atom/globalError"; import { limitDecimals } from "@/utils/limitDecimals"; @@ -31,8 +33,15 @@ import { PerformanceItemHeaderRight, PerformanceWrapper, StakeButton, + TonPriceItem, + TonPriceItemLeft, + TonPriceItemRight, + TonPriceItemRightPercentage, + TonPriceWrapper, } from "./Dashboard.styled"; +import "./styles/Dashboard.css"; + const tele = (window as any).Telegram.WebApp; type TimeFrame = "1D" | "1M" | "3M" | "6M" | "All"; @@ -64,6 +73,8 @@ const Dashboard = () => { error: chartError, } = useBotPerformanceChart(chartTimeFrameOptions[timeFrame]); + const { data: tonPriceData, isLoading: tonPriceLoading, error: tonPriceError } = useCoinPrice("ton", "usd"); + useEffect(() => { if (tele) { tele.ready(); @@ -96,7 +107,7 @@ const Dashboard = () => { setTimeFrame(timeFrame); }; - if (performanceLoading || chartLoading) { + if (performanceLoading || chartLoading || tonPriceLoading) { return ( @@ -125,8 +136,9 @@ const Dashboard = () => { - - + + [`${value}%`, "PNL"]} /> + @@ -143,6 +155,24 @@ const Dashboard = () => { + {!tonPriceError && ( + +

Current value of TON

+ + + + ton_logo +

TON

+
+ + +

${tonPriceData?.rates?.TON?.prices?.USD.toFixed(2)}

+ {tonPriceData?.rates?.TON?.diff_24h?.USD} +
+
+
+ )} +

Bot Performance

@@ -153,7 +183,10 @@ const Dashboard = () => {

Arbitrage Bot

- {limitDecimals(performanceData?.pnlRate, 3)}% + + APY + {limitDecimals(performanceData?.pnlRate, 3)}% + @@ -165,7 +198,7 @@ const Dashboard = () => { -

Subscribed

+

Stakers

{performanceData?.subscribedCount}

diff --git a/src/pages/Dashboard/styles/Dashboard.css b/src/pages/Dashboard/styles/Dashboard.css new file mode 100644 index 00000000..c6f14046 --- /dev/null +++ b/src/pages/Dashboard/styles/Dashboard.css @@ -0,0 +1,11 @@ +.recharts-cartesian-axis-tick-value { + font-size: 14px; +} + +.recharts-tooltip-label { + display: none; +} + +.recharts-tooltip-item-list { + font-size: 32px; +} From 1a6802e2c61c4ff2c9e524c9314151ccd89604de Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 5 Jul 2024 18:12:17 +1000 Subject: [PATCH 012/105] fix/label removed chart --- src/pages/Dashboard/Dashboard.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index d4e77973..c0d2e3b2 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -138,7 +138,7 @@ const Dashboard = () => { [`${value}%`, "PNL"]} /> - + From dcb3c4ee26002dc24601cda4d28eb37e29f6a39e Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 8 Jul 2024 13:09:53 +1000 Subject: [PATCH 013/105] fix: added fixed graph pointers --- src/pages/Dashboard/Dashboard.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index c0d2e3b2..f0e4d298 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -137,7 +137,7 @@ const Dashboard = () => { - [`${value}%`, "PNL"]} /> + [`${Number(value).toFixed(2)}%`, "PNL"]} /> From a4ba436b59800837fdfc966608fb95dc7364f9f1 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 8 Jul 2024 16:23:30 +1000 Subject: [PATCH 014/105] fix: naming updated --- src/pages/Dashboard/Dashboard.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index f0e4d298..698e3508 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -184,7 +184,7 @@ const Dashboard = () => { - APY + PNL {limitDecimals(performanceData?.pnlRate, 3)}% From e54c0c12d8613bf2b39b352ade62d19bebb06ea8 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 8 Jul 2024 17:59:58 +1000 Subject: [PATCH 015/105] fix: naming changed --- src/pages/Dashboard/Dashboard.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index 698e3508..c3fa3d0c 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -193,7 +193,7 @@ const Dashboard = () => { -

Subscriber win rate

+

Stakers win rate

{performanceData?.pnlWinRate?.toFixed(2)}%

From 49076a46ef68acb5b002c9de9eb07b3bbf7c30c2 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 9 Jul 2024 11:43:01 +1000 Subject: [PATCH 016/105] fix: neative decimal added --- src/pages/Dashboard/Dashboard.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index c3fa3d0c..02f81dd5 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -128,7 +128,9 @@ const Dashboard = () => {
Daily PNL
- +{chartData?.dailyPnlRate}% + + {chartData?.dailyPnlRate > 0 && "+"} {chartData?.dailyPnlRate}% +
From 1c0e5cb3d0e1b8a59b4b1d668f693facffede1f6 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 9 Jul 2024 18:03:35 +1000 Subject: [PATCH 017/105] wip: redesigned assets tab & connected the API --- src/assets/icons/MyAsset/ic_refresh.svg | 4 +- src/components/main/MainMyAssetInfo.tsx | 219 ++++++++++++++---------- src/pages/Menu/Menu.styled.tsx | 146 ++++++++++++++++ 3 files changed, 278 insertions(+), 91 deletions(-) create mode 100644 src/pages/Menu/Menu.styled.tsx diff --git a/src/assets/icons/MyAsset/ic_refresh.svg b/src/assets/icons/MyAsset/ic_refresh.svg index 4dbf5ebb..e613214f 100644 --- a/src/assets/icons/MyAsset/ic_refresh.svg +++ b/src/assets/icons/MyAsset/ic_refresh.svg @@ -1,3 +1,3 @@ - - + + diff --git a/src/components/main/MainMyAssetInfo.tsx b/src/components/main/MainMyAssetInfo.tsx index 370dfa80..19141358 100644 --- a/src/components/main/MainMyAssetInfo.tsx +++ b/src/components/main/MainMyAssetInfo.tsx @@ -1,13 +1,34 @@ -import { useState } from "react"; -import { styled } from "styled-components"; +import { useEffect, useState } from "react"; import { mutate } from "swr"; import IcRefresh from "@/assets/icons/MyAsset/ic_refresh.svg"; +import { useBotPerformanceSummary } from "@/hooks/api/dashboard/useBotPerformanceSummary"; +import { + AssetBottomBox, + AssetBottomLeft, + AssetBottomLeftItem, + AssetBottomLeftItemTitle, + AssetBottomLeftItemValue, + AssetBottomRight, + AssetBottomRightItem, + AssetBottomTitle, + AssetBottomValue, + AssetInnerBox, + AssetLeftItem, + AssetTopBox, + AssetTopLeft, + AssetTopRight, + MyAssetWrapper, +} from "@/pages/Menu/Menu.styled"; +import { limitDecimals } from "@/utils/limitDecimals"; import Loader from "../common/Loader"; import MainButton from "./MainButton"; +type AssetsView = "dashboard" | "asset"; + +const tele = (window as any).Telegram.WebApp; const MainMyAssetInfo = ({ address, @@ -24,8 +45,29 @@ const MainMyAssetInfo = ({ isLoading: boolean; isError: boolean; }) => { + const [userId, setUserId] = useState(); + const [view, setView] = useState("dashboard"); const [isRefreshing, setIsRefreshing] = useState(false); + const { data: performanceData, isLoading: performanceLoading } = useBotPerformanceSummary(userId); + + useEffect(() => { + if (tele) { + tele.ready(); + + const tgUser = tele.initDataUnsafe?.user; + if (tgUser) { + setUserId(tgUser?.id); + } else { + console.warn("You should launch the app inside the Telegram Mini App."); + } + } + }, []); + + const handleViewChange = (view: AssetsView) => { + setView(view); + }; + const handleRefresh = async () => { setIsRefreshing(true); @@ -39,96 +81,95 @@ const MainMyAssetInfo = ({ }; return ( - - - - My Asset - - {address && icon_refresh} - - - - Balance - - {isRefreshing ? : `${balance === 0 || balance ? balance.toFixed(3) : "-.--"} TON`} - - - - Staked - - {isError ? "-.-- TON" : isLoading || isRefreshing ? : `${totalStaked.toFixed(3)} TON`} - - - + + + + + handleViewChange("dashboard")}> + Dashboard + + handleViewChange("asset")}> + My Asset + + + + {address && icon_refresh} + + + {view === "dashboard" ? ( + <> + + Balance + + {isRefreshing ? ( + + ) : ( + <> +

{balance === 0 || balance ? balance.toFixed(3) : "-.--"}

TON + + )} +
+
+ + + Staked + + {isError ? "-.-- TON" : isLoading || isRefreshing ? : `${totalStaked.toFixed(3)} TON`} + + + + ) : ( + + + + Balance + + {isRefreshing ? ( + + ) : ( + <> +

{balance === 0 || balance ? balance.toFixed(3) : "-.--"}

TON + + )} +
+
+ + + Staked + + {isRefreshing ? ( + + ) : ( + <> +

{isError ? "-.-- TON" : isLoading || isRefreshing ? : totalStaked.toFixed(3)}

+ TON + + )} +
+
+
+ + + + PNL +

+ {performanceLoading ? ( + + ) : performanceData?.pnlRate ? ( + `${limitDecimals(performanceData?.pnlRate, 3)}%` + ) : ( + "-" + )} +

+
+
+
+ )} +
- +
); }; export default MainMyAssetInfo; - -const MainMyAssetInfoWrapper = styled.div` - width: 100%; - padding: 0 0.6rem 1rem 0.6rem; - - background-color: #fff; -`; - -const MainMyAssetInfoInnerBox = styled.div` - width: 100%; - padding: 2.3rem 2.1rem 2.7rem 2.3rem; - - border-radius: 3.2rem; - background: linear-gradient(270deg, #002639 0%, #001b29 28.13%, #000 100%); -`; - -const MainMyAssetInfoInnerTopBox = styled.div` - position: relative; - display: flex; - justify-content: center; - align-items: center; - - width: 100%; - margin-bottom: 2.4rem; - - color: #c6c5d0; - ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; -`; - -const MainMyAssetInfoInnerTopBoxIcon = styled.div<{ $isRefreshing?: boolean }>` - position: absolute; - right: 0; - top: 50%; - transform: translateY(-50%); -`; - -const MainMyAssetInfoInnerBottomBox = styled.div` - display: flex; - justify-content: space-between; - align-items: center; - - & + & { - margin-top: 2rem; - } -`; - -const MainMyAssetInfoInnerBottomTitleBox = styled.div` - width: 77px; - display: flex; - align-items: center; - justify-content: center; - - padding: 0.8rem 1.6rem; - - border-radius: 4rem; - border: 0.1rem solid #5d5e67; - - color: #c6c5d0; - ${({ theme }) => theme.fonts.Nexton_Label_Small_2}; -`; - -const MainMyAssetInfoInnerBottomValue = styled.span` - color: #fff; - ${({ theme }) => theme.fonts.Nexton_Title_Large_2}; -`; diff --git a/src/pages/Menu/Menu.styled.tsx b/src/pages/Menu/Menu.styled.tsx new file mode 100644 index 00000000..1453a39b --- /dev/null +++ b/src/pages/Menu/Menu.styled.tsx @@ -0,0 +1,146 @@ +import { styled } from "styled-components"; + +export const MyAssetWrapper = styled.div` + width: 100%; + padding: 0 0.6rem 1rem 0.6rem; + + background-color: #fff; +`; + +export const AssetInnerBox = styled.div` + height: 215px; + width: 100%; + display: flex; + flex-direction: column; + + padding: 2.3rem 2.1rem 2.7rem 2.3rem; + + border-radius: 3.2rem; + background: linear-gradient(270deg, #002639 0%, #001b29 28.13%, #000 100%); +`; + +export const AssetTopBox = styled.div` + position: relative; + display: flex; + justify-content: space-between; + align-items: center; + + width: 100%; + margin-bottom: 2.9rem; + + color: #c6c5d0; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; +`; + +export const AssetTopLeft = styled.div<{ $isActive?: boolean }>` + display: flex; + align-items: center; +`; + +export const AssetLeftItem = styled.div<{ $isActive?: boolean }>` + padding: 0.7rem 1.3rem; + + cursor: pointer; + + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: ${({ $isActive }) => ($isActive ? "#fff" : "#FFFFFF4D")}; + border-bottom: ${({ $isActive }) => ($isActive ? "0.2rem solid #fff" : "0.2rem solid #FFFFFF4D")}; +`; + +export const AssetTopRight = styled.div` + position: absolute; + right: 0; + top: 50%; + transform: translateY(-50%); +`; + +export const AssetBottomBox = styled.div` + display: flex; + justify-content: space-between; + align-items: center; + + & + & { + margin-top: 2rem; + } +`; + +export const AssetBottomLeft = styled.div` + width: 60%; + display: flex; + flex-direction: column; + + gap: 2.5rem; +`; + +export const AssetBottomLeftItem = styled.div` + display: flex; + align-items: center; + justify-content: space-between; +`; + +export const AssetBottomRight = styled.div` + height: 100%; + display: flex; + flex-direction: column; + align-items: center; + justify-content: flex-end; +`; + +export const AssetBottomRightItem = styled.div` + display: flex; + flex-direction: column; + align-items: center; + gap: 0.3rem; + + span { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: #c6c5d0; + } + + h4 { + ${({ theme }) => theme.fonts.Nexton_Title_Large_2}; + background-image: linear-gradient(134deg, #6bd3ff 7.39%, #3461ff 97.6%); + color: transparent; + background-clip: text; + } +`; + +export const AssetBottomLeftItemTitle = styled.h3` + ${({ theme }) => theme.fonts.Nexton_Label_Small_2}; + color: #c6c5d0; +`; + +export const AssetBottomLeftItemValue = styled.div` + display: flex; + color: #fff; + gap: 1rem; + + h4 { + ${({ theme }) => theme.fonts.Nexton_Title_Large_2}; + } + + span { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + align-self: flex-end; + } +`; + +export const AssetBottomTitle = styled.div` + width: 77px; + display: flex; + align-items: center; + justify-content: center; + + padding: 0.8rem 1.6rem; + + border-radius: 4rem; + border: 0.1rem solid #5d5e67; + + color: #c6c5d0; + ${({ theme }) => theme.fonts.Nexton_Label_Small_2}; +`; + +export const AssetBottomValue = styled.span` + color: #fff; + ${({ theme }) => theme.fonts.Nexton_Title_Large_2}; +`; From 22ab3f229cbfa6d393033cff228fd1bc7f259a4d Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 9 Jul 2024 18:07:34 +1000 Subject: [PATCH 018/105] fix: adjusted shadow for the dashboard components --- src/pages/Dashboard/Dashboard.styled.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/Dashboard/Dashboard.styled.tsx b/src/pages/Dashboard/Dashboard.styled.tsx index 1fb51c20..efb769b0 100644 --- a/src/pages/Dashboard/Dashboard.styled.tsx +++ b/src/pages/Dashboard/Dashboard.styled.tsx @@ -131,7 +131,7 @@ export const PerformanceItem = styled.div` border-radius: 20px; background: #fff; - box-shadow: 4px 4px 16px 0px rgba(0, 0, 0, 0.15); + box-shadow: 4px 4px 16px 0px rgba(206, 216, 225, 0.5); padding: 2.4rem; margin-top: 1rem; @@ -250,7 +250,7 @@ export const TonPriceItem = styled.div` border-radius: 20px; background: #fff; - box-shadow: 4px 4px 16px 0px rgba(0, 0, 0, 0.15); + box-shadow: 4px 4px 16px 0px rgba(206, 216, 225, 0.5); `; export const TonPriceItemLeft = styled.div` From 83dec21929e8776121bd49f83b1746c3ad08f058 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 11 Jul 2024 13:31:56 +1000 Subject: [PATCH 019/105] wip: dashboard section --- src/assets/icons/MyAsset/ic_arrow_right.svg | 3 + .../icons/MyAsset/ic_small_arrow_right.svg | 3 + src/assets/icons/MyAsset/ic_wallet.svg | 7 + src/components/common/Header.tsx | 6 +- src/components/common/Loader.tsx | 2 +- src/components/main/MainMyAssetInfo.tsx | 225 +++++++++++------- src/pages/Main/Main.tsx | 6 +- src/pages/Menu/Menu.styled.tsx | 70 +++++- 8 files changed, 219 insertions(+), 103 deletions(-) create mode 100644 src/assets/icons/MyAsset/ic_arrow_right.svg create mode 100644 src/assets/icons/MyAsset/ic_small_arrow_right.svg create mode 100644 src/assets/icons/MyAsset/ic_wallet.svg diff --git a/src/assets/icons/MyAsset/ic_arrow_right.svg b/src/assets/icons/MyAsset/ic_arrow_right.svg new file mode 100644 index 00000000..9fd54dc5 --- /dev/null +++ b/src/assets/icons/MyAsset/ic_arrow_right.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/assets/icons/MyAsset/ic_small_arrow_right.svg b/src/assets/icons/MyAsset/ic_small_arrow_right.svg new file mode 100644 index 00000000..7bc445f6 --- /dev/null +++ b/src/assets/icons/MyAsset/ic_small_arrow_right.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/assets/icons/MyAsset/ic_wallet.svg b/src/assets/icons/MyAsset/ic_wallet.svg new file mode 100644 index 00000000..c1ac1b78 --- /dev/null +++ b/src/assets/icons/MyAsset/ic_wallet.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/components/common/Header.tsx b/src/components/common/Header.tsx index cdc5e837..5dae88bf 100644 --- a/src/components/common/Header.tsx +++ b/src/components/common/Header.tsx @@ -5,7 +5,6 @@ import { styled } from "styled-components"; import IcReferral from "@/assets/icons/Landing/ic_landing_referral.svg"; import IcWalletConnect from "@/assets/icons/Landing/ic_landing_wallet.svg"; import IcWalletDisconnect from "@/assets/icons/Landing/ic_landing_wallet_disconnect.svg"; -import useTonConnect from "@/hooks/contract/useTonConnect"; import DisconnectModal from "../main/Modal/DisconnectModal"; @@ -13,11 +12,12 @@ interface HeaderProps { isOpen: boolean; text: string; backgroundType: boolean; + connected: boolean; + tonConnectUI: any; } const Header = (props: HeaderProps) => { - const { connected, tonConnectUI } = useTonConnect(); - const { isOpen, text, backgroundType } = props; + const { isOpen, text, backgroundType, connected, tonConnectUI } = props; const [isOpenModal, setIsOpenModal] = useState(false); const navigate = useNavigate(); const { pathname } = useLocation(); diff --git a/src/components/common/Loader.tsx b/src/components/common/Loader.tsx index 7741005b..f5e6b887 100644 --- a/src/components/common/Loader.tsx +++ b/src/components/common/Loader.tsx @@ -1,6 +1,6 @@ import { TailSpin } from "react-loader-spinner"; -const Loader = ({ height = 30, width = 30 }: { height?: number; width?: number }) => { +const Loader = ({ height = 25, width = 25 }: { height?: number; width?: number }) => { return ( Promise; @@ -45,11 +58,13 @@ const MainMyAssetInfo = ({ isLoading: boolean; isError: boolean; }) => { + const navigate = useNavigate(); + const [userId, setUserId] = useState(); const [view, setView] = useState("dashboard"); const [isRefreshing, setIsRefreshing] = useState(false); - const { data: performanceData, isLoading: performanceLoading } = useBotPerformanceSummary(userId); + const { data: performanceData, isLoading: performanceLoading } = useBotPerformanceSummary(/* userId */ 1); useEffect(() => { if (tele) { @@ -81,94 +96,132 @@ const MainMyAssetInfo = ({ }; return ( - - - - - handleViewChange("dashboard")}> + + + + + handleViewChange("dashboard")}> Dashboard - - handleViewChange("asset")}> + + handleViewChange("asset")}> My Asset - - + + - {address && icon_refresh} - + {address && icon_refresh} + {view === "dashboard" ? ( - <> - - Balance - - {isRefreshing ? ( - - ) : ( - <> -

{balance === 0 || balance ? balance.toFixed(3) : "-.--"}

TON - - )} -
-
- - - Staked - - {isError ? "-.-- TON" : isLoading || isRefreshing ? : `${totalStaked.toFixed(3)} TON`} - - - + + + Arbitrage Bot + + + bot PNL +

+ {performanceLoading ? ( + + ) : performanceData?.pnlRate ? ( + `${performanceData?.pnlRate.toFixed(3)}%` + ) : ( + "-" + )} +

+
+ + Daily PNL +

+ {performanceLoading ? ( + + ) : performanceData?.pnlWinRate ? ( + `${performanceData?.pnlRate.toFixed(0)}%` + ) : ( + "-" + )} +

+
+ + Stakers +

+ {performanceLoading ? ( + + ) : performanceData?.subscribedCount ? ( + `${performanceData?.subscribedCount.toFixed(0)}` + ) : ( + "-" + )} +

+
+
+
+ + navigate("/dashboard")}> + small_arrow_right + +
) : ( - - - Balance - - {isRefreshing ? ( - - ) : ( - <> -

{balance === 0 || balance ? balance.toFixed(3) : "-.--"}

TON - - )} -
-
- - - Staked - - {isRefreshing ? ( - - ) : ( - <> -

{isError ? "-.-- TON" : isLoading || isRefreshing ? : totalStaked.toFixed(3)}

- TON - - )} -
-
-
- - - - PNL -

- {performanceLoading ? ( - - ) : performanceData?.pnlRate ? ( - `${limitDecimals(performanceData?.pnlRate, 3)}%` - ) : ( - "-" - )} -

-
-
+ {!connected ? ( + tonConnectUI.connectWallet()}> + icon_wallet +

Please connect your wallet.

+ icon_arrow_right +
+ ) : ( + <> + + + Balance + + {isRefreshing ? ( + + ) : ( + <> +

{balance === 0 || balance ? balance.toFixed(3) : "-.--"}

TON + + )} +
+
+ + + Staked + + {isRefreshing ? ( + + ) : ( + <> +

+ {isError ? "-.-- TON" : isLoading || isRefreshing ? : totalStaked.toFixed(3)} +

+ TON + + )} +
+
+
+ + + + bot PNL +

+ {performanceLoading ? ( + + ) : performanceData?.pnlRate ? ( + `${limitDecimals(performanceData?.pnlRate, 3)}%` + ) : ( + "-" + )} +

+
+
+ + )}
)} -
+ -
+ ); }; diff --git a/src/pages/Main/Main.tsx b/src/pages/Main/Main.tsx index bb5d4e7a..105b8993 100644 --- a/src/pages/Main/Main.tsx +++ b/src/pages/Main/Main.tsx @@ -19,7 +19,7 @@ const tele = (window as any).Telegram.WebApp; const Main = () => { const location = useLocation(); - const { address, balance, refreshTonData } = useTonConnect(); + const { address, balance, refreshTonData, connected, tonConnectUI } = useTonConnect(); const { nftList, isLoading, isError } = useStakeInfo(address); const { trigger: triggerManageReferral } = useManageReferral(); @@ -156,8 +156,10 @@ const Main = () => { {modal && } -
+
` position: relative; display: flex; justify-content: space-between; align-items: center; width: 100%; - margin-bottom: 2.9rem; + margin-bottom: ${({ $isConnected }) => ($isConnected ? "2.9rem" : "0")}; color: #c6c5d0; ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; `; -export const AssetTopLeft = styled.div<{ $isActive?: boolean }>` +export const MainTopLeft = styled.div<{ $isActive?: boolean }>` display: flex; align-items: center; `; -export const AssetLeftItem = styled.div<{ $isActive?: boolean }>` +export const MainLeftItem = styled.div<{ $isActive?: boolean }>` padding: 0.7rem 1.3rem; cursor: pointer; @@ -47,7 +47,7 @@ export const AssetLeftItem = styled.div<{ $isActive?: boolean }>` border-bottom: ${({ $isActive }) => ($isActive ? "0.2rem solid #fff" : "0.2rem solid #FFFFFF4D")}; `; -export const AssetTopRight = styled.div` +export const MainTopRight = styled.div` position: absolute; right: 0; top: 50%; @@ -58,16 +58,32 @@ export const AssetBottomBox = styled.div` display: flex; justify-content: space-between; align-items: center; + flex: 1; - & + & { - margin-top: 2rem; + margin-bottom: 2rem; +`; + +export const AssetBottomNotConnected = styled.div` + display: flex; + align-items: center; + justify-content: start; + + cursor: pointer; + + p { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Large}; + color: #fff; + margin-left: 0.7rem; + margin-right: 1.1rem; } `; export const AssetBottomLeft = styled.div` - width: 60%; + height: 100%; + width: 50%; display: flex; flex-direction: column; + justify-content: end; gap: 2.5rem; `; @@ -89,7 +105,7 @@ export const AssetBottomRight = styled.div` export const AssetBottomRightItem = styled.div` display: flex; flex-direction: column; - align-items: center; + align-items: flex-end; gap: 0.3rem; span { @@ -144,3 +160,35 @@ export const AssetBottomValue = styled.span` color: #fff; ${({ theme }) => theme.fonts.Nexton_Title_Large_2}; `; + +export const DashboardBottomBox = styled(AssetBottomBox)``; + +export const DashboardBottomLeft = styled(AssetBottomLeft)` + justify-content: start; + width: 80%; +`; + +export const DashboardBottomLeftTitle = styled.h3` + ${({ theme }) => theme.fonts.Nexton_Title_Large_2}; + color: #fff; +`; + +export const DashboardBottomLeftData = styled.div` + display: flex; + align-items: center; + justify-content: space-between; + + gap: 2rem; +`; + +export const DashboardBottomLeftDataItem = styled(AssetBottomRightItem)` + align-items: start; +`; + +export const DashboardBottomRight = styled(AssetBottomRight)` + width: 20%; + align-items: end; + justify-content: center; + + cursor: pointer; +`; From 6419d2d2df3d335c9deef4524470891583cca9dd Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 15 Jul 2024 12:47:39 +1000 Subject: [PATCH 020/105] feat: My Assets Dashboard redesign --- src/assets/image/MyAssetsDashboardBg.png | Bin 0 -> 40833 bytes src/components/main/MainMyAssetInfo.tsx | 77 +++++++++++------------ src/pages/Menu/Menu.styled.tsx | 24 ++++++- 3 files changed, 57 insertions(+), 44 deletions(-) create mode 100644 src/assets/image/MyAssetsDashboardBg.png diff --git a/src/assets/image/MyAssetsDashboardBg.png b/src/assets/image/MyAssetsDashboardBg.png new file mode 100644 index 0000000000000000000000000000000000000000..14954adbcdd7be6e941b9b2c2ba74a07e7d3fead GIT binary patch literal 40833 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"dashboard"); const [isRefreshing, setIsRefreshing] = useState(false); - const { data: performanceData, isLoading: performanceLoading } = useBotPerformanceSummary(/* userId */ 1); + const { data: performanceData, isLoading: performanceLoading } = useBotPerformanceSummary(userId); + const { data: chartData, isLoading: chartLoading } = useBotPerformanceChart(0); useEffect(() => { if (tele) { @@ -73,9 +76,9 @@ const MainMyAssetInfo = ({ const tgUser = tele.initDataUnsafe?.user; if (tgUser) { setUserId(tgUser?.id); - } else { - console.warn("You should launch the app inside the Telegram Mini App."); } + } else { + console.warn("You should launch the app inside the Telegram Mini App."); } }, []); @@ -98,7 +101,9 @@ const MainMyAssetInfo = ({ return ( - + + + handleViewChange("dashboard")}> Dashboard @@ -108,7 +113,9 @@ const MainMyAssetInfo = ({ - {address && icon_refresh} + {view === "asset" && ( + {address && icon_refresh} + )} {view === "dashboard" ? ( @@ -116,42 +123,30 @@ const MainMyAssetInfo = ({ Arbitrage Bot - - bot PNL -

- {performanceLoading ? ( - - ) : performanceData?.pnlRate ? ( - `${performanceData?.pnlRate.toFixed(3)}%` - ) : ( - "-" - )} -

-
- - Daily PNL -

- {performanceLoading ? ( - - ) : performanceData?.pnlWinRate ? ( - `${performanceData?.pnlRate.toFixed(0)}%` - ) : ( - "-" - )} -

-
- - Stakers -

- {performanceLoading ? ( - - ) : performanceData?.subscribedCount ? ( - `${performanceData?.subscribedCount.toFixed(0)}` - ) : ( - "-" - )} -

-
+ {performanceLoading || chartLoading ? ( + + ) : ( + <> + + bot PNL +

{performanceData?.pnlRate ? `${performanceData?.pnlRate.toFixed(3)}%` : "-"}

+
+ + Daily PNL +

+ {chartData?.dailyPnlRate + ? `${chartData?.dailyPnlRate > 0 ? "+" : ""}${chartData?.dailyPnlRate}%` + : "-"} +

+
+ + Stakers +

+ {performanceData?.subscribedCount ? `${performanceData?.subscribedCount.toFixed(0)}` : "-"} +

+
+ + )}
diff --git a/src/pages/Menu/Menu.styled.tsx b/src/pages/Menu/Menu.styled.tsx index e35af952..01e9b9fe 100644 --- a/src/pages/Menu/Menu.styled.tsx +++ b/src/pages/Menu/Menu.styled.tsx @@ -8,6 +8,7 @@ export const MainWrapper = styled.div` `; export const MainInnerBox = styled.div` + position: relative; height: 215px; width: 100%; display: flex; @@ -19,14 +20,29 @@ export const MainInnerBox = styled.div` background: linear-gradient(270deg, #002639 0%, #001b29 28.13%, #000 100%); `; -export const MainTopBox = styled.div<{ $isConnected: boolean }>` +export const BackgroundChart = styled.div<{ $isVisible: boolean }>` + position: absolute; + width: 241px; + top: 0; + right: 0; + bottom: 0; + z-index: 0; + pointer-events: none; // Ensures the image doesn't interfere with interactions + background-image: ${({ $isVisible }) => ($isVisible ? "url('/src/assets/image/MyAssetsDashboardBg.png')" : "none")}; + background-size: cover; + background-position: center; + + border-radius: 0 3.2rem 3.2rem 0; +`; + +export const MainTopBox = styled.div<{ $marginBottom: boolean }>` position: relative; display: flex; justify-content: space-between; align-items: center; width: 100%; - margin-bottom: ${({ $isConnected }) => ($isConnected ? "2.9rem" : "0")}; + margin-bottom: ${({ $marginBottom }) => ($marginBottom ? "2.9rem" : "0")}; color: #c6c5d0; ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; @@ -161,7 +177,9 @@ export const AssetBottomValue = styled.span` ${({ theme }) => theme.fonts.Nexton_Title_Large_2}; `; -export const DashboardBottomBox = styled(AssetBottomBox)``; +export const DashboardBottomBox = styled(AssetBottomBox)` + margin-bottom: 0; +`; export const DashboardBottomLeft = styled(AssetBottomLeft)` justify-content: start; From a8348d2f8240f3ffff9c5d91db4e211a33eae582 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 15 Jul 2024 12:58:58 +1000 Subject: [PATCH 021/105] fix: menu component props --- src/pages/Menu/Menu.tsx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/pages/Menu/Menu.tsx b/src/pages/Menu/Menu.tsx index 34c0586e..a0700174 100644 --- a/src/pages/Menu/Menu.tsx +++ b/src/pages/Menu/Menu.tsx @@ -6,10 +6,12 @@ import Header from "@/components/common/Header"; import JoinCommunity from "@/components/main/Menu/JoinCommunity"; import TopBar from "@/components/main/Menu/TopBar"; import UpcomingMenu from "@/components/main/Menu/UpcomingMenu"; +import useTonConnect from "@/hooks/contract/useTonConnect"; const tele = (window as any).Telegram.WebApp; const Menu = () => { + const { connected, tonConnectUI } = useTonConnect(); const navigate = useNavigate(); useEffect(() => { @@ -25,9 +27,10 @@ const Menu = () => { tele.offEvent("backButtonClicked"); }; }, []); + return ( -
+
From f1bd455cc17328b427deac860e17a707b5048039 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 15 Jul 2024 13:00:50 +1000 Subject: [PATCH 022/105] fix: MyAsset component props --- src/pages/MyAsset/MyAsset.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/pages/MyAsset/MyAsset.tsx b/src/pages/MyAsset/MyAsset.tsx index 1e1d6ebd..dc24cd9c 100644 --- a/src/pages/MyAsset/MyAsset.tsx +++ b/src/pages/MyAsset/MyAsset.tsx @@ -2,10 +2,13 @@ import { useState } from "react"; import { Outlet, useLocation } from "react-router-dom"; import styled from "styled-components"; +import useTonConnect from "@/hooks/contract/useTonConnect"; + import Header from "../../components/common/Header"; import NftHeader from "../../components/myAsset/NftHeader"; const MyAsset = () => { + const { connected, tonConnectUI } = useTonConnect(); const { pathname } = useLocation(); const [myAssetMenu, setMyAssetMenu] = useState("NFT"); @@ -15,6 +18,8 @@ const MyAsset = () => { isOpen={false} backgroundType={pathname.includes("nftlist") ? false : true} text="My Asset" + connected={connected} + tonConnectUI={tonConnectUI} /> From 82bc7ff5d598a66e40425a8cffdc20957a96ebf8 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 15 Jul 2024 13:18:25 +1000 Subject: [PATCH 023/105] fix: BG image src updated --- src/components/main/MainMyAssetInfo.tsx | 3 ++- src/pages/Menu/Menu.styled.tsx | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/components/main/MainMyAssetInfo.tsx b/src/components/main/MainMyAssetInfo.tsx index b811da25..f0bf6457 100644 --- a/src/components/main/MainMyAssetInfo.tsx +++ b/src/components/main/MainMyAssetInfo.tsx @@ -6,6 +6,7 @@ import IcArrowRight from "@/assets/icons/MyAsset/ic_arrow_right.svg"; import IcRefresh from "@/assets/icons/MyAsset/ic_refresh.svg"; import IcSmallArrowRight from "@/assets/icons/MyAsset/ic_small_arrow_right.svg"; import IcWallet from "@/assets/icons/MyAsset/ic_wallet.svg"; +import MyAssetsDashboardBg from "@/assets/image/MyAssetsDashboardBg.png"; import { useBotPerformanceChart } from "@/hooks/api/dashboard/useBotPerformanceChart"; import { useBotPerformanceSummary } from "@/hooks/api/dashboard/useBotPerformanceSummary"; import { @@ -101,7 +102,7 @@ const MainMyAssetInfo = ({ return ( - + diff --git a/src/pages/Menu/Menu.styled.tsx b/src/pages/Menu/Menu.styled.tsx index 01e9b9fe..c27a6307 100644 --- a/src/pages/Menu/Menu.styled.tsx +++ b/src/pages/Menu/Menu.styled.tsx @@ -20,7 +20,7 @@ export const MainInnerBox = styled.div` background: linear-gradient(270deg, #002639 0%, #001b29 28.13%, #000 100%); `; -export const BackgroundChart = styled.div<{ $isVisible: boolean }>` +export const BackgroundChart = styled.div<{ $isVisible: boolean; $src: string }>` position: absolute; width: 241px; top: 0; @@ -28,7 +28,7 @@ export const BackgroundChart = styled.div<{ $isVisible: boolean }>` bottom: 0; z-index: 0; pointer-events: none; // Ensures the image doesn't interfere with interactions - background-image: ${({ $isVisible }) => ($isVisible ? "url('/src/assets/image/MyAssetsDashboardBg.png')" : "none")}; + background-image: ${({ $isVisible, $src }) => ($isVisible ? `url(${$src})` : "none")}; background-size: cover; background-position: center; From c0407571de1a3cd4a0fad9a293f7ec14a43721af Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 15 Jul 2024 15:46:11 +1000 Subject: [PATCH 024/105] fix: post-review fixes --- src/components/main/MainButton.tsx | 2 +- src/pages/Menu/Menu.styled.tsx | 19 +++++++++++++++---- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/src/components/main/MainButton.tsx b/src/components/main/MainButton.tsx index 3d53bd86..109588d5 100644 --- a/src/components/main/MainButton.tsx +++ b/src/components/main/MainButton.tsx @@ -41,7 +41,7 @@ const TonWalletWrapper = styled.div` width: 100%; height: 6rem; - margin-top: 0.5rem; + margin-bottom: 3.7rem; padding: 0.5rem 0; border-radius: 42px; diff --git a/src/pages/Menu/Menu.styled.tsx b/src/pages/Menu/Menu.styled.tsx index c27a6307..b0005c22 100644 --- a/src/pages/Menu/Menu.styled.tsx +++ b/src/pages/Menu/Menu.styled.tsx @@ -15,6 +15,7 @@ export const MainInnerBox = styled.div` flex-direction: column; padding: 2.3rem 2.1rem 2.7rem 2.3rem; + margin-bottom: 1.2rem; border-radius: 3.2rem; background: linear-gradient(270deg, #002639 0%, #001b29 28.13%, #000 100%); @@ -125,8 +126,9 @@ export const AssetBottomRightItem = styled.div` gap: 0.3rem; span { - ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; color: #c6c5d0; + text-transform: capitalize; } h4 { @@ -152,8 +154,9 @@ export const AssetBottomLeftItemValue = styled.div` } span { - ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; align-self: flex-end; + text-transform: capitalize; } `; @@ -201,11 +204,19 @@ export const DashboardBottomLeftData = styled.div` export const DashboardBottomLeftDataItem = styled(AssetBottomRightItem)` align-items: start; + text-transform: capitalize; `; export const DashboardBottomRight = styled(AssetBottomRight)` - width: 20%; - align-items: end; + width: 10%; + position: absolute; + right: 0; + bottom: 0; + + z-index: 10; + border-radius: 0 3.2rem 3.2rem 0; + + align-items: center; justify-content: center; cursor: pointer; From 0025850c1515b0083469bd7ed6aa50c67dd54940 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 15 Jul 2024 15:49:02 +1000 Subject: [PATCH 025/105] fix: arrow container width adjusted --- src/pages/Menu/Menu.styled.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/Menu/Menu.styled.tsx b/src/pages/Menu/Menu.styled.tsx index b0005c22..e2ab2ebb 100644 --- a/src/pages/Menu/Menu.styled.tsx +++ b/src/pages/Menu/Menu.styled.tsx @@ -208,7 +208,7 @@ export const DashboardBottomLeftDataItem = styled(AssetBottomRightItem)` `; export const DashboardBottomRight = styled(AssetBottomRight)` - width: 10%; + width: 15%; position: absolute; right: 0; bottom: 0; From 64db2364ffd0e17cc6907318b30bb5827462044c Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 15 Jul 2024 16:54:08 +1000 Subject: [PATCH 026/105] fix: navigation updated --- src/components/main/MainMyAssetInfo.tsx | 2 +- src/pages/Dashboard/Dashboard.tsx | 6 ++++-- src/pages/Menu/Menu.styled.tsx | 1 + 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/components/main/MainMyAssetInfo.tsx b/src/components/main/MainMyAssetInfo.tsx index f0bf6457..41f5839a 100644 --- a/src/components/main/MainMyAssetInfo.tsx +++ b/src/components/main/MainMyAssetInfo.tsx @@ -120,7 +120,7 @@ const MainMyAssetInfo = ({ {view === "dashboard" ? ( - + navigate("/dashboard")}> Arbitrage Bot diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index 02f81dd5..3dc822da 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -1,5 +1,5 @@ import { useEffect, useState } from "react"; -import { useNavigate } from "react-router-dom"; +import { useLocation, useNavigate } from "react-router-dom"; import { CartesianGrid, Line, LineChart, ResponsiveContainer, Tooltip, XAxis, YAxis } from "recharts"; import { useSetRecoilState } from "recoil"; @@ -55,6 +55,7 @@ const chartTimeFrameOptions: Record = { }; const Dashboard = () => { + const location = useLocation(); const navigate = useNavigate(); const setError = useSetRecoilState(globalError); @@ -80,7 +81,8 @@ const Dashboard = () => { tele.ready(); tele.BackButton.show(); tele.onEvent("backButtonClicked", () => { - navigate("/menu"); + const { prev } = location.state; + navigate(prev ? prev : "/"); }); const tgUser = tele.initDataUnsafe?.user; diff --git a/src/pages/Menu/Menu.styled.tsx b/src/pages/Menu/Menu.styled.tsx index e2ab2ebb..bc2c0371 100644 --- a/src/pages/Menu/Menu.styled.tsx +++ b/src/pages/Menu/Menu.styled.tsx @@ -182,6 +182,7 @@ export const AssetBottomValue = styled.span` export const DashboardBottomBox = styled(AssetBottomBox)` margin-bottom: 0; + cursor: pointer; `; export const DashboardBottomLeft = styled(AssetBottomLeft)` From b8abeb3692da68e2cc1f9cc69215a42466f39367 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 16 Jul 2024 17:05:12 +1000 Subject: [PATCH 027/105] feat: added action cards to the Main screen --- src/components/main/ActionCards.tsx | 76 +++++++++++++++++++++ src/components/main/StakeView/StakeView.tsx | 2 +- src/pages/Main/Main.tsx | 2 + 3 files changed, 79 insertions(+), 1 deletion(-) create mode 100644 src/components/main/ActionCards.tsx diff --git a/src/components/main/ActionCards.tsx b/src/components/main/ActionCards.tsx new file mode 100644 index 00000000..17fe1694 --- /dev/null +++ b/src/components/main/ActionCards.tsx @@ -0,0 +1,76 @@ +import { useNavigate } from "react-router-dom"; +import styled from "styled-components"; + +const ArrowIcon = ({ dark }: { dark?: boolean }) => { + return ( + + + + ); +}; + +const ActionCards = () => { + const navigate = useNavigate(); + + return ( + + navigate("/myasset")}> + Borrow nxTON using your NFT as collateral + + Borrow + + + + navigate("/myasset")}> + Check the NFT you received from staking + + My NFTs + + + + + ); +}; + +export default ActionCards; + +const ActionCardsWrapper = styled.div` + display: flex; + gap: 1rem; + padding: 3.9rem 1.1rem; +`; + +const Card = styled.div<{ $dark?: boolean; $large?: boolean }>` + flex: ${({ $large }) => ($large ? 2 : 1)}; + height: 145px; + padding: 1.6rem; + border-radius: 2rem; + box-shadow: 4px 4px 16px 0px rgba(206, 216, 225, 0.5); + display: flex; + flex-direction: column; + justify-content: space-between; + cursor: pointer; + background-color: ${({ $dark }) => ($dark ? "#1A1B23" : "#fff")}; +`; + +const CardHeader = styled.div` + ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; + color: #76797a; + + margin-bottom: 10px; +`; + +const CardBody = styled.div<{ $dark?: boolean }>` + ${({ theme }) => theme.fonts.Nexton_Title_Large_Small}; + color: ${({ $dark }) => ($dark ? "#fff" : "#1A1B23")}; + + display: flex; + align-items: center; + gap: 0.5rem; +`; diff --git a/src/components/main/StakeView/StakeView.tsx b/src/components/main/StakeView/StakeView.tsx index fe4e3a05..1b29bf74 100644 --- a/src/components/main/StakeView/StakeView.tsx +++ b/src/components/main/StakeView/StakeView.tsx @@ -56,7 +56,7 @@ const MainNftViewWrapper = styled.div` const MainNFtViewInnerBox = styled.div` width: 100%; margin-top: 0.6rem; - padding: 1.5rem; + padding: 1.1rem; `; const MainNftViewInnerTitleBox = styled.div` diff --git a/src/pages/Main/Main.tsx b/src/pages/Main/Main.tsx index 105b8993..b79e7b66 100644 --- a/src/pages/Main/Main.tsx +++ b/src/pages/Main/Main.tsx @@ -5,6 +5,7 @@ import styled from "styled-components"; import { mutate } from "swr"; import Header from "@/components/common/Header"; +import ActionCards from "@/components/main/ActionCards"; import MainMyAssetInfo from "@/components/main/MainMyAssetInfo"; import { WelcomeModal } from "@/components/main/Modal/WelcomeModal"; import StakeView from "@/components/main/StakeView/StakeView"; @@ -168,6 +169,7 @@ const Main = () => { isError={isError} /> + From d0b5cfb91538fc886873eccde8b95b91cb7973fb Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Wed, 17 Jul 2024 12:26:58 +1000 Subject: [PATCH 028/105] fix: flex parametr fixed --- src/components/main/ActionCards.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/main/ActionCards.tsx b/src/components/main/ActionCards.tsx index 17fe1694..f3e62151 100644 --- a/src/components/main/ActionCards.tsx +++ b/src/components/main/ActionCards.tsx @@ -47,7 +47,7 @@ const ActionCardsWrapper = styled.div` `; const Card = styled.div<{ $dark?: boolean; $large?: boolean }>` - flex: ${({ $large }) => ($large ? 2 : 1)}; + flex: ${({ $large }) => ($large ? 1.65 : 1)}; height: 145px; padding: 1.6rem; border-radius: 2rem; From d86a4d63b56ac43d3b215e04c30565604dd74d41 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Wed, 17 Jul 2024 13:34:14 +1000 Subject: [PATCH 029/105] fix: MainAssets Dashboard stats font-size reduced --- src/pages/Menu/Menu.styled.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/pages/Menu/Menu.styled.tsx b/src/pages/Menu/Menu.styled.tsx index bc2c0371..8471abb5 100644 --- a/src/pages/Menu/Menu.styled.tsx +++ b/src/pages/Menu/Menu.styled.tsx @@ -132,7 +132,8 @@ export const AssetBottomRightItem = styled.div` } h4 { - ${({ theme }) => theme.fonts.Nexton_Title_Large_2}; + ${({ theme }) => theme.fonts.Nexton_Title_Large_Small}; + font-size: 2rem; background-image: linear-gradient(134deg, #6bd3ff 7.39%, #3461ff 97.6%); color: transparent; background-clip: text; From cc1c11216ce1571d7057967f82fd322aee2e431d Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 19 Jul 2024 10:43:31 +1000 Subject: [PATCH 030/105] feat: main re-design & dashboard updates --- src/assets/icons/Main/ic_jetton_coin.svg | 15 ++ src/assets/icons/Main/ic_lst_coin.svg | 20 +++ src/components/main/ActionCards.tsx | 32 ++-- src/components/main/MainMyAssetInfo.tsx | 43 +++--- src/components/main/MyTokens.tsx | 141 ++++++++++++++++++ .../api/dashboard/useBotPerformanceSummary.ts | 5 +- src/pages/Dashboard/Dashboard.styled.tsx | 8 +- src/pages/Dashboard/Dashboard.tsx | 36 ++--- src/pages/Main/Main.tsx | 6 +- src/pages/Menu/Menu.styled.tsx | 47 +++++- 10 files changed, 291 insertions(+), 62 deletions(-) create mode 100644 src/assets/icons/Main/ic_jetton_coin.svg create mode 100644 src/assets/icons/Main/ic_lst_coin.svg create mode 100644 src/components/main/MyTokens.tsx diff --git a/src/assets/icons/Main/ic_jetton_coin.svg b/src/assets/icons/Main/ic_jetton_coin.svg new file mode 100644 index 00000000..2152def9 --- /dev/null +++ b/src/assets/icons/Main/ic_jetton_coin.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/assets/icons/Main/ic_lst_coin.svg b/src/assets/icons/Main/ic_lst_coin.svg new file mode 100644 index 00000000..4e2a52b2 --- /dev/null +++ b/src/assets/icons/Main/ic_lst_coin.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/components/main/ActionCards.tsx b/src/components/main/ActionCards.tsx index f3e62151..25339436 100644 --- a/src/components/main/ActionCards.tsx +++ b/src/components/main/ActionCards.tsx @@ -1,12 +1,12 @@ import { useNavigate } from "react-router-dom"; import styled from "styled-components"; -const ArrowIcon = ({ dark }: { dark?: boolean }) => { +const ArrowIcon = ({ dark, disabled }: { dark?: boolean; disabled?: boolean }) => { return ( { return ( - navigate("/myasset")}> + {/* Active version is disabled until "Borrow" section is implemented */} + {/* navigate("/myasset")}> Borrow nxTON using your NFT as collateral Borrow + */} + + + Coming Soon + + Loan + + navigate("/myasset")}> Check the NFT you received from staking @@ -46,29 +55,28 @@ const ActionCardsWrapper = styled.div` padding: 3.9rem 1.1rem; `; -const Card = styled.div<{ $dark?: boolean; $large?: boolean }>` +const Card = styled.div<{ $dark?: boolean; $large?: boolean; $disabled?: boolean }>` flex: ${({ $large }) => ($large ? 1.65 : 1)}; height: 145px; padding: 1.6rem; border-radius: 2rem; - box-shadow: 4px 4px 16px 0px rgba(206, 216, 225, 0.5); + box-shadow: ${({ $disabled }) => ($disabled ? "none" : "4px 4px 16px 0px rgba(206, 216, 225, 0.5)")}; display: flex; flex-direction: column; justify-content: space-between; - cursor: pointer; - background-color: ${({ $dark }) => ($dark ? "#1A1B23" : "#fff")}; + cursor: ${({ $disabled }) => ($disabled ? "not-allowed" : "pointer")}; + background-color: ${({ $dark, $disabled }) => ($disabled ? "#E1E4E6" : $dark ? "#1A1B23" : "#fff")}; `; -const CardHeader = styled.div` +const CardHeader = styled.div<{ $disabled?: boolean }>` ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; - color: #76797a; - + color: ${({ $disabled }) => ($disabled ? "#B9B9BA" : "#76797A")}; margin-bottom: 10px; `; -const CardBody = styled.div<{ $dark?: boolean }>` +const CardBody = styled.div<{ $dark?: boolean; $disabled?: boolean }>` ${({ theme }) => theme.fonts.Nexton_Title_Large_Small}; - color: ${({ $dark }) => ($dark ? "#fff" : "#1A1B23")}; + color: ${({ $dark, $disabled }) => ($disabled ? "#B9B9BA" : $dark ? "#fff" : "#1A1B23")}; display: flex; align-items: center; diff --git a/src/components/main/MainMyAssetInfo.tsx b/src/components/main/MainMyAssetInfo.tsx index 41f5839a..0274126b 100644 --- a/src/components/main/MainMyAssetInfo.tsx +++ b/src/components/main/MainMyAssetInfo.tsx @@ -6,10 +6,10 @@ import IcArrowRight from "@/assets/icons/MyAsset/ic_arrow_right.svg"; import IcRefresh from "@/assets/icons/MyAsset/ic_refresh.svg"; import IcSmallArrowRight from "@/assets/icons/MyAsset/ic_small_arrow_right.svg"; import IcWallet from "@/assets/icons/MyAsset/ic_wallet.svg"; -import MyAssetsDashboardBg from "@/assets/image/MyAssetsDashboardBg.png"; import { useBotPerformanceChart } from "@/hooks/api/dashboard/useBotPerformanceChart"; import { useBotPerformanceSummary } from "@/hooks/api/dashboard/useBotPerformanceSummary"; import { + APYBox, AssetBottomBox, AssetBottomLeft, AssetBottomLeftItem, @@ -18,12 +18,12 @@ import { AssetBottomNotConnected, AssetBottomRight, AssetBottomRightItem, - BackgroundChart, DashboardBottomBox, DashboardBottomLeft, DashboardBottomLeftData, DashboardBottomLeftDataItem, DashboardBottomLeftTitle, + DashboardBottomLeftTitleBox, DashboardBottomRight, MainInnerBox, MainLeftItem, @@ -40,8 +40,6 @@ import MainButton from "./MainButton"; type AssetsView = "dashboard" | "asset"; -const tele = (window as any).Telegram.WebApp; - const MainMyAssetInfo = ({ tonConnectUI, connected, @@ -63,26 +61,12 @@ const MainMyAssetInfo = ({ }) => { const navigate = useNavigate(); - const [userId, setUserId] = useState(); const [view, setView] = useState("dashboard"); const [isRefreshing, setIsRefreshing] = useState(false); - const { data: performanceData, isLoading: performanceLoading } = useBotPerformanceSummary(userId); + const { data: performanceData, isLoading: performanceLoading } = useBotPerformanceSummary(); const { data: chartData, isLoading: chartLoading } = useBotPerformanceChart(0); - useEffect(() => { - if (tele) { - tele.ready(); - - const tgUser = tele.initDataUnsafe?.user; - if (tgUser) { - setUserId(tgUser?.id); - } - } else { - console.warn("You should launch the app inside the Telegram Mini App."); - } - }, []); - const handleViewChange = (view: AssetsView) => { setView(view); }; @@ -102,7 +86,8 @@ const MainMyAssetInfo = ({ return ( - + {/* Will be removed in next release */} + {/* */} @@ -122,7 +107,15 @@ const MainMyAssetInfo = ({ {view === "dashboard" ? ( navigate("/dashboard")}> - Arbitrage Bot + + Arbitrage Bot + + + APY +

{performanceData?.apy ? `${performanceData?.apy.toFixed(2)}%` : "-"}

+ + + {performanceLoading || chartLoading ? ( @@ -146,14 +139,18 @@ const MainMyAssetInfo = ({ {performanceData?.subscribedCount ? `${performanceData?.subscribedCount.toFixed(0)}` : "-"} + + navigate("/dashboard")}> + small_arrow_right + )} - navigate("/dashboard")}> + {/* navigate("/dashboard")}> small_arrow_right - + */} ) : ( diff --git a/src/components/main/MyTokens.tsx b/src/components/main/MyTokens.tsx new file mode 100644 index 00000000..aae3c157 --- /dev/null +++ b/src/components/main/MyTokens.tsx @@ -0,0 +1,141 @@ +import { useNavigate } from "react-router-dom"; +import { styled } from "styled-components"; + +import IcWarning from "@/assets/icons/Landing/ic_warning.svg"; +import IcJettonCoin from "@/assets/icons/Main/ic_jetton_coin.svg"; +import IcLSTCoin from "@/assets/icons/Main/ic_lst_coin.svg"; + +const MyTokens = () => { + const navigate = useNavigate(); + + return ( + + + + My Tokens + + + + navigate("/stake/amount")}> + + lst_coin +

My LST

+
+ 0.0 +
+ + navigate("/stake/amount")}> + + jetton_coin +

My Jetton

+
+ 0.0 +
+
+ + + warning +

+ This service is in alpha version. +
+ The functionality of the service may be updated in the future. +

+
+
+
+ ); +}; + +export default MyTokens; + +const MyTokensWrapper = styled.div` + width: 100%; + height: auto; + min-height: 100%; +`; + +const MyTokensInnerBox = styled.div` + width: 100%; + margin-top: 0.6rem; + padding: 1.1rem; +`; + +const MyTokensInnerTitleBox = styled.div` + display: flex; + justify-content: space-between; + align-items: center; + + width: 100%; + + margin-bottom: 10px; +`; + +const MyTokensInnerTitle = styled.span` + color: #2f3038; + font-family: Montserrat; + font-size: 2rem; + font-style: normal; + font-weight: 600; + line-height: 3.4rem; +`; + +const MyTokensItemBox = styled.div` + width: 100%; + display: flex; + margin-top: 1.7rem; + gap: 1.1rem; +`; + +const MyTokensItem = styled.div` + width: 100%; + height: 98px; + + display: flex; + flex-direction: column; + justify-content: space-between; + + padding: 1.6rem; + box-shadow: 4px 4px 16px 0px rgba(206, 216, 225, 0.5); + border-radius: 2rem; + + cursor: pointer; +`; + +const MyTokensItemTitle = styled.div` + display: flex; + align-items: center; + gap: 0.9rem; + + h4 { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Large_2}; + } +`; + +const MyTokensItemContent = styled.div` + display: flex; + justify-content: flex-end; + align-items: center; + + font-family: Montserrat; + font-size: 17px; + font-style: normal; + font-weight: 800; + line-height: 26px; + color: #46494a; +`; + +const MyTokensDisclaimer = styled.div` + margin-top: 1.6rem; + display: flex; + align-items: start; + + img { + margin-right: 0.6rem; + padding-top: 0.2rem; + } + + p { + color: #909394; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; + } +`; diff --git a/src/hooks/api/dashboard/useBotPerformanceSummary.ts b/src/hooks/api/dashboard/useBotPerformanceSummary.ts index 959e103e..f8c4586c 100644 --- a/src/hooks/api/dashboard/useBotPerformanceSummary.ts +++ b/src/hooks/api/dashboard/useBotPerformanceSummary.ts @@ -6,10 +6,11 @@ interface IBotPerformanceSummary { pnlRate: number; pnlWinRate: number; subscribedCount: number; + apy: number; } -export function useBotPerformanceSummary(userId: number) { - const swrKey = userId ? `/data/user/${userId}/botPerformanceSummary` : null; +export function useBotPerformanceSummary() { + const swrKey = `/data/botPerformanceSummary`; return useSWR(swrKey, nextonFetcher); } diff --git a/src/pages/Dashboard/Dashboard.styled.tsx b/src/pages/Dashboard/Dashboard.styled.tsx index efb769b0..80a70947 100644 --- a/src/pages/Dashboard/Dashboard.styled.tsx +++ b/src/pages/Dashboard/Dashboard.styled.tsx @@ -61,10 +61,16 @@ export const ChartHeaderTitle = styled.div` } `; +export const ChartHeaderSubtitleBox = styled.div` + display: flex; + align-items: center; + gap: 3rem; +`; + export const ChartHeaderSubtitle = styled.div` display: flex; align-items: center; - gap: 0.25rem; + gap: 0.5rem; h5 { color: #76797a; diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index 3dc822da..bc3f6802 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -17,6 +17,7 @@ import { limitDecimals } from "@/utils/limitDecimals"; import { ChartHeader, ChartHeaderSubtitle, + ChartHeaderSubtitleBox, ChartHeaderTitle, ChartTimeFrame, ChartTimeFrameItem, @@ -59,14 +60,9 @@ const Dashboard = () => { const navigate = useNavigate(); const setError = useSetRecoilState(globalError); - const [userId, setUserId] = useState(); const [timeFrame, setTimeFrame] = useState("1D"); - const { - data: performanceData, - isLoading: performanceLoading, - error: performanceError, - } = useBotPerformanceSummary(userId); + const { data: performanceData, isLoading: performanceLoading, error: performanceError } = useBotPerformanceSummary(); const { data: chartData, @@ -84,19 +80,12 @@ const Dashboard = () => { const { prev } = location.state; navigate(prev ? prev : "/"); }); - - const tgUser = tele.initDataUnsafe?.user; - if (tgUser) { - setUserId(tgUser?.id); - } else { - console.warn("You should launch the app inside the Telegram Mini App."); - } } return () => { tele.offEvent("backButtonClicked"); }; - }, [navigate]); + }, [navigate, location.state]); // Set global error state if there is an error useEffect(() => { @@ -128,12 +117,19 @@ const Dashboard = () => {

Arbitrage Bot

- -
Daily PNL
- - {chartData?.dailyPnlRate > 0 && "+"} {chartData?.dailyPnlRate}% - -
+ + +
APY
+ {performanceData?.apy ? `${performanceData?.apy.toFixed(2)}%` : "-"} +
+ + +
Daily PNL
+ + {chartData?.dailyPnlRate > 0 && "+"} {chartData?.dailyPnlRate}% + +
+
diff --git a/src/pages/Main/Main.tsx b/src/pages/Main/Main.tsx index b79e7b66..b1e3d035 100644 --- a/src/pages/Main/Main.tsx +++ b/src/pages/Main/Main.tsx @@ -8,6 +8,7 @@ import Header from "@/components/common/Header"; import ActionCards from "@/components/main/ActionCards"; import MainMyAssetInfo from "@/components/main/MainMyAssetInfo"; import { WelcomeModal } from "@/components/main/Modal/WelcomeModal"; +import MyTokens from "@/components/main/MyTokens"; import StakeView from "@/components/main/StakeView/StakeView"; import { useManageReferral } from "@/hooks/api/referral/useManageReferral"; import { useTrackReferral } from "@/hooks/api/referral/useTrackReferral"; @@ -170,7 +171,10 @@ const Main = () => { /> - + {/* @deprecated */} + {/* */} + + ` align-items: center; width: 100%; - margin-bottom: ${({ $marginBottom }) => ($marginBottom ? "2.9rem" : "0")}; + margin-bottom: ${({ $marginBottom }) => ($marginBottom ? "2.1rem" : "0")}; color: #c6c5d0; ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; @@ -188,7 +188,13 @@ export const DashboardBottomBox = styled(AssetBottomBox)` export const DashboardBottomLeft = styled(AssetBottomLeft)` justify-content: start; - width: 80%; + width: 100%; +`; + +export const DashboardBottomLeftTitleBox = styled.div` + display: flex; + align-items: end; + gap: 1.8rem; `; export const DashboardBottomLeftTitle = styled.h3` @@ -196,6 +202,35 @@ export const DashboardBottomLeftTitle = styled.h3` color: #fff; `; +export const APYBox = styled.div` + width: 130px; + max-width: 130px; + + display: flex; + flex-direction: column; + align-items: start; + + border-radius: 30px 30px 30px 0px; + border: 1px solid #7796ff; + background: linear-gradient(262deg, #102e34 10.02%, #142b34 21.92%, #2b1338 101.69%); + + padding: 0.75rem 2.8rem 0.75rem 3.3rem; + + span { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; + color: #c6c5d0; + text-transform: capitalize; + } + + h4 { + ${({ theme }) => theme.fonts.Nexton_Title_Large_Small}; + font-size: 2rem; + background: linear-gradient(95deg, #3491ff 6.73%, #e0e7ff 41.98%, #3491ff 85.62%); + color: transparent; + background-clip: text; + } +`; + export const DashboardBottomLeftData = styled.div` display: flex; align-items: center; @@ -207,6 +242,12 @@ export const DashboardBottomLeftData = styled.div` export const DashboardBottomLeftDataItem = styled(AssetBottomRightItem)` align-items: start; text-transform: capitalize; + + h4 { + ${({ theme }) => theme.fonts.Nexton_Title_Large_Small}; + font-size: 2rem; + color: #fff; + } `; export const DashboardBottomRight = styled(AssetBottomRight)` From 9566f5b52ffbb033c813b91c7f2d779c21e0868b Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 19 Jul 2024 12:29:01 +1000 Subject: [PATCH 031/105] fix: design changes reflected --- src/components/main/MainMyAssetInfo.tsx | 13 +++++++------ src/components/main/MyTokens.tsx | 2 +- src/pages/Menu/Menu.styled.tsx | 11 +++++++---- 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/src/components/main/MainMyAssetInfo.tsx b/src/components/main/MainMyAssetInfo.tsx index 0274126b..f63da92c 100644 --- a/src/components/main/MainMyAssetInfo.tsx +++ b/src/components/main/MainMyAssetInfo.tsx @@ -112,7 +112,7 @@ const MainMyAssetInfo = ({ APY -

{performanceData?.apy ? `${performanceData?.apy.toFixed(2)}%` : "-"}

+

{performanceData?.apy ? `${limitDecimals(performanceData?.apy, 2)}%` : "-"}

@@ -123,13 +123,13 @@ const MainMyAssetInfo = ({ <> bot PNL -

{performanceData?.pnlRate ? `${performanceData?.pnlRate.toFixed(3)}%` : "-"}

+

{performanceData?.pnlRate ? `${limitDecimals(performanceData?.pnlRate, 2)}%` : "-"}

Daily PNL

{chartData?.dailyPnlRate - ? `${chartData?.dailyPnlRate > 0 ? "+" : ""}${chartData?.dailyPnlRate}%` + ? `${chartData?.dailyPnlRate > 0 ? "+" : ""}${limitDecimals(chartData?.dailyPnlRate, 2)}%` : "-"}

@@ -193,20 +193,21 @@ const MainMyAssetInfo = ({ - + {/* @deprecated */} + {/* bot PNL

{performanceLoading ? ( ) : performanceData?.pnlRate ? ( - `${limitDecimals(performanceData?.pnlRate, 3)}%` + `${limitDecimals(performanceData?.pnlRate, 2)}%` ) : ( "-" )}

-
+
*/} )}
diff --git a/src/components/main/MyTokens.tsx b/src/components/main/MyTokens.tsx index aae3c157..c88cdc25 100644 --- a/src/components/main/MyTokens.tsx +++ b/src/components/main/MyTokens.tsx @@ -125,7 +125,7 @@ const MyTokensItemContent = styled.div` `; const MyTokensDisclaimer = styled.div` - margin-top: 1.6rem; + margin-top: 5rem; display: flex; align-items: start; diff --git a/src/pages/Menu/Menu.styled.tsx b/src/pages/Menu/Menu.styled.tsx index e5a027dc..b0d46bff 100644 --- a/src/pages/Menu/Menu.styled.tsx +++ b/src/pages/Menu/Menu.styled.tsx @@ -97,17 +97,17 @@ export const AssetBottomNotConnected = styled.div` export const AssetBottomLeft = styled.div` height: 100%; - width: 50%; + width: 70%; display: flex; flex-direction: column; - justify-content: end; + justify-content: center; gap: 2.5rem; `; export const AssetBottomLeftItem = styled.div` display: flex; - align-items: center; + align-items: end; justify-content: space-between; `; @@ -152,12 +152,15 @@ export const AssetBottomLeftItemValue = styled.div` h4 { ${({ theme }) => theme.fonts.Nexton_Title_Large_2}; + font-size: 2.8rem; } span { ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; align-self: flex-end; text-transform: capitalize; + font-size: 2.4rem; + font-weight: 500; } `; @@ -245,7 +248,7 @@ export const DashboardBottomLeftDataItem = styled(AssetBottomRightItem)` h4 { ${({ theme }) => theme.fonts.Nexton_Title_Large_Small}; - font-size: 2rem; + font-size: 1.6rem; color: #fff; } `; From 41e36fc8bcfe10683fa265f7b0e1eaf8f68505a9 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 22 Jul 2024 17:24:15 +1000 Subject: [PATCH 032/105] wip: loan nft items screen --- src/assets/icons/Loan/ic_arrow_right.svg | 3 + src/assets/icons/Loan/ic_bars.svg | 5 + src/assets/icons/Loan/ic_loan_arrow.svg | 1 + src/assets/image/Loan/NFTsEmpty.png | Bin 0 -> 17315 bytes src/pages/Loan/Loan.styled.tsx | 129 +++++++++++++++++++++++ src/pages/Loan/Loan.tsx | 85 +++++++++++---- 6 files changed, 200 insertions(+), 23 deletions(-) create mode 100644 src/assets/icons/Loan/ic_arrow_right.svg create mode 100644 src/assets/icons/Loan/ic_bars.svg create mode 100644 src/assets/image/Loan/NFTsEmpty.png create mode 100644 src/pages/Loan/Loan.styled.tsx diff --git a/src/assets/icons/Loan/ic_arrow_right.svg b/src/assets/icons/Loan/ic_arrow_right.svg new file mode 100644 index 00000000..48ad454e --- /dev/null +++ b/src/assets/icons/Loan/ic_arrow_right.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/assets/icons/Loan/ic_bars.svg b/src/assets/icons/Loan/ic_bars.svg new file mode 100644 index 00000000..f72b6d6f --- /dev/null +++ b/src/assets/icons/Loan/ic_bars.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/icons/Loan/ic_loan_arrow.svg b/src/assets/icons/Loan/ic_loan_arrow.svg index 4175857b..e82ef819 100644 --- a/src/assets/icons/Loan/ic_loan_arrow.svg +++ b/src/assets/icons/Loan/ic_loan_arrow.svg @@ -1,3 +1,4 @@ + diff --git a/src/assets/image/Loan/NFTsEmpty.png b/src/assets/image/Loan/NFTsEmpty.png new file mode 100644 index 0000000000000000000000000000000000000000..2ffdd8b071d4333e9eea4fb26089a023c771bf1a GIT binary patch literal 17315 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 A*#H0l literal 0 HcmV?d00001 diff --git a/src/pages/Loan/Loan.styled.tsx b/src/pages/Loan/Loan.styled.tsx new file mode 100644 index 00000000..3d4c376a --- /dev/null +++ b/src/pages/Loan/Loan.styled.tsx @@ -0,0 +1,129 @@ +import { styled } from "styled-components"; + +export const LoanWrapper = styled.div` + position: relative; + display: flex; + flex-direction: column; + + width: 100%; + height: 100%; + + padding: 2.5rem 1.5rem; +`; + +export const LoanHeaderBox = styled.div` + display: flex; + justify-content: space-between; + align-items: center; + + width: 100%; +`; + +export const LoanHeaderBoxTitle = styled.div` + display: flex; + text-transform: capitalize; + + h1 { + color: #0f0f0f; + font-family: Montserrat; + font-size: 20px; + font-style: normal; + font-weight: 600; + line-height: 34px; + } +`; + +export const LoanHeaderBoxButton = styled.div` + display: flex; + justify-content: center; + align-items: center; + + gap: 1rem; + padding: 1.2rem; + + border-radius: 1.8rem; + background: linear-gradient(160deg, #f3f6fc 11.73%, #e6e7f7 98.61%); + + cursor: pointer; +`; + +export const LoanSwitcherBox = styled.div` + display: flex; + align-items: center; + justify-content: center; + + margin-top: 1.7rem; +`; + +export const LoanSwitcherBoxItem = styled.div<{ $isActive?: boolean }>` + text-transform: capitalize; + padding: 0.7rem 1.3rem; + + cursor: pointer; + + ${({ theme }) => theme.fonts.Nexton_Body_Text_Large_2}; + color: ${({ $isActive }) => ($isActive ? "#303234" : "#C6CACA")}; + border-bottom: ${({ $isActive }) => ($isActive ? "0.2rem solid #303234" : "0.2rem solid #C6CACA")}; +`; + +export const LoanNFTBox = styled.div` + height: 100%; + display: flex; + flex-direction: column; + align-items: center; + + margin-top: 2.4rem; +`; + +export const LoanNFTBoxHeader = styled.div` + width: 100%; + display: flex; + align-items: center; + justify-content: start; + + gap: 0.4rem; + + span { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; + color: #76797a; + } + + h4 { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; + font-weight: 600; + color: #303234; + } +`; + +export const LoanNFTBoxList = styled.div` + height: 100%; + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; +`; + +export const LoanNFTBoxListEmpty = styled.div` + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + + gap: 1rem; + + h2 { + ${({ theme }) => theme.fonts.Nexton_Title_Medium_2}; + color: #000; + } +`; + +export const LoanNFTBoxListEmptyLink = styled.div` + display: flex; + justify-content: center; + gap: 0.5rem; + + ${({ theme }) => theme.fonts.Nexton_Label_Medium}; + color: #5d5e67; + + cursor: pointer; +`; diff --git a/src/pages/Loan/Loan.tsx b/src/pages/Loan/Loan.tsx index 8982d5cc..22765d28 100644 --- a/src/pages/Loan/Loan.tsx +++ b/src/pages/Loan/Loan.tsx @@ -1,14 +1,35 @@ -import { useEffect } from "react"; +import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; import { styled } from "styled-components"; +import IcArrowRight from "@/assets/icons/Loan/ic_arrow_right.svg"; +import IcBars from "@/assets/icons/Loan/ic_bars.svg"; +import NFTsEmpty from "@/assets/image/Loan/NFTsEmpty.png"; + import LoanHeader from "../../components/loan/common/LoanHeader"; import LoanList from "../../components/loan/LoanList"; +import { + LoanHeaderBox, + LoanHeaderBoxButton, + LoanHeaderBoxTitle, + LoanNFTBox, + LoanNFTBoxHeader, + LoanNFTBoxList, + LoanNFTBoxListEmpty, + LoanNFTBoxListEmptyLink, + LoanSwitcherBox, + LoanSwitcherBoxItem, + LoanWrapper, +} from "./Loan.styled"; + +type LoanView = "borrow" | "repay"; + const tele = (window as any).Telegram.WebApp; const Loan = () => { const navigate = useNavigate(); + const [view, setView] = useState("borrow"); useEffect(() => { if (tele) { @@ -24,36 +45,54 @@ const Loan = () => { }; }, []); + const handleViewChange = (view: LoanView) => { + setView(view); + }; + return ( - - + + +

Loan

+
+ + + loan_icon + +
+ + + handleViewChange("borrow")}> + Borrow + + handleViewChange("repay")}> + Repay + + + + + + You have +

0 NFTs

+
+ + + nfts_empty + + +

No results

+ + Let’s move to staking to get new NFT arrow_right + +
+
+
); }; export default Loan; -const LoanWrapper = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - position: relative; - - width: 100%; - - padding: 2.9rem 2rem 2.9rem 2rem; -`; - -const LoanHeaderBox = styled.div` - display: flex; - justify-content: center; - align-items: center; - - width: 100%; -`; - const LoanHeaderTop = styled.div` padding-top: 3rem; From c2ef88ac89f980c2ce992a70f40afbeb07b698ec Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 23 Jul 2024 14:30:28 +1000 Subject: [PATCH 033/105] wip: empty nfts screen & risk disclosure screen added --- src/assets/icons/Loan/ic_alert.svg | 3 + src/components/common/Router.tsx | 2 + src/pages/Loan/Loan.styled.tsx | 15 +- src/pages/Loan/Loan.tsx | 10 +- src/pages/Loan/RiskDisclosure.tsx | 222 +++++++++++++++++++++++++++++ 5 files changed, 249 insertions(+), 3 deletions(-) create mode 100644 src/assets/icons/Loan/ic_alert.svg create mode 100644 src/pages/Loan/RiskDisclosure.tsx diff --git a/src/assets/icons/Loan/ic_alert.svg b/src/assets/icons/Loan/ic_alert.svg new file mode 100644 index 00000000..b2f50987 --- /dev/null +++ b/src/assets/icons/Loan/ic_alert.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index 23617ed0..719cec74 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -3,6 +3,7 @@ import { BrowserRouter, Route, Routes } from "react-router-dom"; import Dashboard from "@/pages/Dashboard/Dashboard"; import BorrowDetail from "@/pages/Loan/BorrowDetail"; import Loan from "@/pages/Loan/Loan"; +import RiskDisclosure from "@/pages/Loan/RiskDisclosure"; import Main from "@/pages/Main/Main"; import Menu from "@/pages/Menu/Menu"; import MyAsset from "@/pages/MyAsset/MyAsset"; @@ -33,6 +34,7 @@ const Router = () => { } /> } /> } /> + } /> } /> } /> } /> diff --git a/src/pages/Loan/Loan.styled.tsx b/src/pages/Loan/Loan.styled.tsx index 3d4c376a..14202f4e 100644 --- a/src/pages/Loan/Loan.styled.tsx +++ b/src/pages/Loan/Loan.styled.tsx @@ -48,6 +48,7 @@ export const LoanHeaderBoxButton = styled.div` `; export const LoanSwitcherBox = styled.div` + position: relative; display: flex; align-items: center; justify-content: center; @@ -66,6 +67,17 @@ export const LoanSwitcherBoxItem = styled.div<{ $isActive?: boolean }>` border-bottom: ${({ $isActive }) => ($isActive ? "0.2rem solid #303234" : "0.2rem solid #C6CACA")}; `; +export const LoanSwitcherBoxTooltip = styled.div` + cursor: pointer; + position: absolute; + right: 0; + top: 70%; + transform: translateY(-50%); + display: flex; + align-items: center; + justify-content: center; +`; + export const LoanNFTBox = styled.div` height: 100%; display: flex; @@ -98,7 +110,6 @@ export const LoanNFTBoxHeader = styled.div` export const LoanNFTBoxList = styled.div` height: 100%; display: flex; - justify-content: center; align-items: center; flex-direction: column; `; @@ -110,10 +121,12 @@ export const LoanNFTBoxListEmpty = styled.div` align-items: center; gap: 1rem; + margin-top: 5.7rem; h2 { ${({ theme }) => theme.fonts.Nexton_Title_Medium_2}; color: #000; + margin-top: 1.7rem; } `; diff --git a/src/pages/Loan/Loan.tsx b/src/pages/Loan/Loan.tsx index 22765d28..845b3e97 100644 --- a/src/pages/Loan/Loan.tsx +++ b/src/pages/Loan/Loan.tsx @@ -2,6 +2,7 @@ import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; import { styled } from "styled-components"; +import IcAlert from "@/assets/icons/Loan/ic_alert.svg"; import IcArrowRight from "@/assets/icons/Loan/ic_arrow_right.svg"; import IcBars from "@/assets/icons/Loan/ic_bars.svg"; import NFTsEmpty from "@/assets/image/Loan/NFTsEmpty.png"; @@ -20,6 +21,7 @@ import { LoanNFTBoxListEmptyLink, LoanSwitcherBox, LoanSwitcherBoxItem, + LoanSwitcherBoxTooltip, LoanWrapper, } from "./Loan.styled"; @@ -68,6 +70,10 @@ const Loan = () => { handleViewChange("repay")}> Repay + + navigate("/loan/risk-disclosure")}> + alert_icon + @@ -77,9 +83,9 @@ const Loan = () => { - nfts_empty - + nfts_empty +

No results

Let’s move to staking to get new NFT arrow_right diff --git a/src/pages/Loan/RiskDisclosure.tsx b/src/pages/Loan/RiskDisclosure.tsx new file mode 100644 index 00000000..ebda04be --- /dev/null +++ b/src/pages/Loan/RiskDisclosure.tsx @@ -0,0 +1,222 @@ +import { useEffect } from "react"; +import { useNavigate } from "react-router-dom"; +import { styled } from "styled-components"; + +import IcAlert from "@/assets/icons/Loan/ic_alert.svg"; + +const tele = (window as any).Telegram.WebApp; + +const RiskDisclosure = () => { + const navigate = useNavigate(); + + useEffect(() => { + if (tele) { + tele.ready(); + tele.BackButton.show(); + tele.onEvent("backButtonClicked", () => { + navigate("/loan"); + }); + } + + return () => { + tele.offEvent("backButtonClicked"); + }; + }, [navigate]); + + return ( + + + + alert_icon + +

Loan Protocol Risk Disclosure

+
+ + + + + 1 + + + + + No Liquidation Risk Due to Collateral Ratio Changes + NFT Collateral + + Since $nxTON is issued using NFTs obtained by staking $TON as collateral, there is no risk of liquidation + due to changes in the value of the collateral. + + + + + + + 2 + + + + + Automatic Liquidation in Case of Default + Default + + If the loan repayment schedule is not followed, the automatic liquidation process will start. + +
+ + Additional Fees + + + Additional fees may be incurred during liquidation, which can increase the user's losses. + +
+
+ + + + 3 + + + + + Interest Rate Information + Interest Rate + + An annual interest rate of 2% applies. In addition to the loan principal, interest costs must also be + repaid. + + + + + + + 4 + + + + Other Considerations + Smart Contract Risk + Be aware of potential code defects and security vulnerabilities. +
+ + Liquidity Risk + + There may be a lack of liquidity in certain situations. +
+ + Regulatory Risk + + + Users must comply with applicable cryptocurrency and DeFi-related laws and regulations in their country. + +
+
+
+
+ ); +}; + +export default RiskDisclosure; + +const RiskDisclosureWrapper = styled.div` + position: relative; + display: flex; + flex-direction: column; + + width: 100%; + height: auto; + + padding: 2.9rem 1.5rem; +`; + +const RiskDisclosureTitleBox = styled.div` + width: 65%; + display: flex; + align-items: start; + + gap: 1.1rem; + + h1 { + color: #0f0f0f; + font-family: Montserrat; + font-size: 20px; + font-style: normal; + font-weight: 600; + line-height: 34px; + } + + span { + margin-top: 0.65rem; + } +`; + +const RiskDisclosureItemBox = styled.div` + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + + width: 100%; + margin-top: 3.9rem; +`; + +const RiskDisclosureItem = styled.div` + display: flex; + margin-bottom: 1rem; + + padding: 0 1.9rem 0 0.8rem; +`; + +const RiskDisclosureNumberBox = styled.div<{ $last?: boolean }>` + display: flex; + flex-direction: column; + justify-content: ${({ $last }) => ($last ? "start" : "center")}; + align-items: center; + + margin-right: 0.8rem; +`; + +const RiskDisclosureNumber = styled.div` + display: flex; + width: 27px; + height: 27px; + padding: 5px 11px; + flex-direction: column; + justify-content: center; + align-items: center; + gap: 10px; + flex-shrink: 0; + + ${({ theme }) => theme.fonts.Nexton_Body_Text_Small} + border-radius: 13.5px; + background: #303234; + color: #fff; +`; + +const RiskDisclosureNumberDivider = styled.div` + width: 1px; + height: 100%; + + margin-top: 0.2rem; + + border: 1px dashed #f1f4f4; +`; + +const RiskDisclosureContent = styled.div` + flex: 1; + margin-bottom: 4rem; +`; + +const RiskDisclosureSubtitle = styled.h2` + width: 70%; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: #303234; + + margin-bottom: 0.8rem; +`; + +const RiskDisclosureText = styled.p<{ $lead?: boolean; $marginTop?: boolean }>` + ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; + color: ${({ $lead }) => ($lead ? "#5E6162" : "#aaaeaf")}; + + ${({ $marginTop }) => $marginTop && "margin-top: 0.8rem;"} +`; From 68c853f855979a8088f47ce24bb26a08677e16fa Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Wed, 24 Jul 2024 17:51:52 +1000 Subject: [PATCH 034/105] wip: loan borrow items --- src/components/loan/Borrow/BorrowList.tsx | 223 +++++++++--------- src/components/loan/Borrow/BorrowListItem.tsx | 184 +++++++++++++++ src/components/loan/LoanList.tsx | 76 ------ src/components/loan/common/LoanHeader.tsx | 60 ----- src/pages/Loan/BorrowDetail.tsx | 10 +- src/pages/Loan/Loan.styled.tsx | 34 --- src/pages/Loan/Loan.tsx | 46 +--- 7 files changed, 298 insertions(+), 335 deletions(-) create mode 100644 src/components/loan/Borrow/BorrowListItem.tsx delete mode 100644 src/components/loan/LoanList.tsx delete mode 100644 src/components/loan/common/LoanHeader.tsx diff --git a/src/components/loan/Borrow/BorrowList.tsx b/src/components/loan/Borrow/BorrowList.tsx index 6b2c14be..ce465c02 100644 --- a/src/components/loan/Borrow/BorrowList.tsx +++ b/src/components/loan/Borrow/BorrowList.tsx @@ -1,148 +1,141 @@ -import { useNavigate } from "react-router-dom"; import { styled } from "styled-components"; -import IcLoanArrow from "../../../assets/icons/Loan/ic_loan_arrow.svg"; -import { nftInfo } from "../../../types/Nft"; -import { DDayChange, expiredDateChanger } from "../../../utils/dateChanger"; -import { numberCutter } from "../../../utils/numberCutter"; -import { NftStatus } from "../common/Nftstatus"; - -interface BorrowListProps { - item: nftInfo; -} - -const BorrowList = (props: BorrowListProps) => { - const { nftId, amount, timeStamp, lockPeriod } = props.item; - - const navigate = useNavigate(); +import IcArrowRight from "@/assets/icons/Loan/ic_arrow_right.svg"; +import NFTsEmpty from "@/assets/image/Loan/NFTsEmpty.png"; +import { useStakeInfo } from "@/hooks/api/useStakeInfo"; +import useTonConnect from "@/hooks/contract/useTonConnect"; + +import BorrowListItem from "./BorrowListItem"; + +const _NFTsMock = [ + { + nftId: 1, + amount: 1000, + leverage: 2, + lockPeriod: 30, + timeStamp: "2024-07-01T12:00:00Z", + nominator: "User1", + status: 1, + }, + { + nftId: 2, + amount: 500, + leverage: 3, + lockPeriod: 60, + timeStamp: "2024-07-02T12:00:00Z", + nominator: "User2", + status: 2, + }, + { + nftId: 3, + amount: 750, + leverage: 1.5, + lockPeriod: 90, + timeStamp: "2024-07-03T12:00:00Z", + nominator: "User3", + status: 1, + }, + { + nftId: 4, + amount: 1200, + leverage: 2.5, + lockPeriod: 45, + timeStamp: "2024-07-04T12:00:00Z", + nominator: "User4", + status: 3, + }, + { + nftId: 5, + amount: 300, + leverage: 4, + lockPeriod: 15, + timeStamp: "2024-07-05T12:00:00Z", + nominator: "User5", + status: 0, + }, +]; + +const BorrowList = () => { + const { address } = useTonConnect(); + const { nftList } = useStakeInfo(address); return ( - - - - {DDayChange(timeStamp, lockPeriod) > 55 ? ( - - ) : DDayChange(timeStamp, lockPeriod) === 0 ? ( - - ) : ( - - )} -
- NFT - - {" "} - {String(nftId).padStart(5, "0")} - -
-
- Max.LTV - 80% -
-
- navigate(`/loan/${nftId}`)}> - Borrow - loan - -
- - - Principal - {numberCutter(amount)} TON - - - Evaluation - {numberCutter(amount)} TON - - - Expired date - - {expiredDateChanger(timeStamp, lockPeriod, "detail")} - - - -
+ + {/* {nftList && nftList.length > 0 ? ( + nftList.sort((a, b) => Number(b.timeStamp) - Number(a.timeStamp)).map(item =>

{item.nftId}

) + ) : ( + + nfts_empty + +

No results

+ + Let’s move to staking to get new NFT arrow_right + +
+ )} */} + {_NFTsMock && _NFTsMock.length > 0 ? ( + + {_NFTsMock + .sort((a, b) => Number(b.timeStamp) - Number(a.timeStamp)) + .map(item => ( + + ))} + + ) : ( + + nfts_empty + +

No results

+ + Let’s move to staking to get new NFT arrow_right + +
+ )} +
); }; export default BorrowList; -const BorrowLlistWrapper = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - +const BorrowListWrapper = styled.div` width: 100%; - padding: 2.2rem; - - border: 0.1rem solid #e1e4e6; - border-radius: 2rem; - background-color: #fff; - - & + & { - margin-top: 1rem; - } -`; - -const BorrowListTop = styled.div` display: flex; - justify-content: space-between; align-items: center; - gap: 2.6rem; - - width: 100%; - margin-bottom: 1.6rem; - - border-radius: 2rem 2rem 0 0; + flex-direction: column; `; -const BorrowListBottom = styled.div` +const BorrowListItemBox = styled.div` + width: 100%; display: flex; - justify-content: space-between; + flex-direction: column; align-items: center; - width: 100%; - - border-radius: 0 0 2rem 2rem; + margin: 2.3rem 0; `; -const BorrowListBottomTextBottom = styled.div` +const LoanNFTBoxListEmpty = styled.div` display: flex; flex-direction: column; justify-content: center; - align-items: flex-start; - gap: 0.6rem; -`; - -const BorrowListTopLeft = styled.div` - display: flex; - justify-content: center; align-items: center; - gap: 0.6rem; -`; -const Caption3 = styled.span` - color: #303234; - ${({ theme }) => theme.fonts.Telegram_Caption_3}; -`; -const LabelMedium = styled.span` - ${({ theme }) => theme.fonts.Nexton_Label_Medium}; + gap: 1rem; + margin-top: 5.7rem; + + h2 { + ${({ theme }) => theme.fonts.Nexton_Title_Medium_2}; + color: #000; + margin-top: 1.7rem; + } `; -const BorrowButton = styled.button` +const LoanNFTBoxListEmptyLink = styled.div` display: flex; justify-content: center; - align-items: center; - gap: 0.4rem; - - padding: 0.7rem 1.2rem; + gap: 0.5rem; - border: none; - border-radius: 2rem; - background-color: #007aff; - color: #fff; ${({ theme }) => theme.fonts.Nexton_Label_Medium}; + color: #5d5e67; - outline: none; cursor: pointer; `; diff --git a/src/components/loan/Borrow/BorrowListItem.tsx b/src/components/loan/Borrow/BorrowListItem.tsx new file mode 100644 index 00000000..f2fd703c --- /dev/null +++ b/src/components/loan/Borrow/BorrowListItem.tsx @@ -0,0 +1,184 @@ +import { useNavigate } from "react-router-dom"; +import { styled } from "styled-components"; + +import IcLoanArrow from "../../../assets/icons/Loan/ic_loan_arrow.svg"; +import { nftInfo } from "../../../types/Nft"; +import { DDayChange, expiredDateChanger } from "../../../utils/dateChanger"; +import { numberCutter } from "../../../utils/numberCutter"; +import { NftStatus } from "../common/Nftstatus"; + +interface BorrowListProps { + item: nftInfo; +} + +const BorrowListItem = (props: BorrowListProps) => { + const { nftId, amount, timeStamp, lockPeriod } = props.item; + + const navigate = useNavigate(); + + return ( + + + + {/* to-do: change BG to .png */} + {DDayChange(timeStamp, lockPeriod) > 55 ? ( + + ) : DDayChange(timeStamp, lockPeriod) === 0 ? ( + + ) : ( + + )} + + Token ID +

{nftId}

+
+
+ + navigate(`/loan/${nftId}`)}> + Borrow + loan + +
+ + + + + + Principal + {numberCutter(amount)} TON + + + Evaluation + {numberCutter(amount)} TON + + + Expired date + {expiredDateChanger(timeStamp, lockPeriod, "detail")} + + +
+ ); +}; + +export default BorrowListItem; + +const BorrowListItemWrapper = styled.div` + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + + width: 100%; + padding: 1.8rem 2.6rem; + + box-shadow: 0px 0px 12px 0px rgba(206, 216, 225, 0.5); + border-radius: 2rem; + background-color: #fff; + + & + & { + margin-top: 1.4rem; + } +`; + +const BorrowListTop = styled.div` + display: flex; + justify-content: space-between; + align-items: center; + gap: 1.6rem; + + width: 100%; + margin-bottom: 1.2rem; +`; + +const BorrowListTopLeft = styled.div` + display: flex; + justify-content: center; + align-items: center; + gap: 0.6rem; + + p { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: rgba(48, 50, 52, 1); + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } +`; + +const NFTStatus = styled.div<{ type?: string }>` + width: 5rem; + height: 5rem; + + border-radius: 1rem; + background: ${({ type }) => + type === "ongoing" + ? `linear-gradient(90deg, #61b5f2 0%, #98a1fe 100%)` + : type === "forthComing" + ? `linear-gradient(140deg, #FF8C73 2.52%, #FFE0B0 89.95%)` + : `linear-gradient(127deg, #A2A9BC -17.44%, #E5EDFF 100%)`}; +`; + +const BorrowListTopLeftText = styled.div` + display: flex; + flex-direction: column; + justify-content: center; + align-items: flex-start; + gap: 0.2rem; +`; + +const BorrowListItemDivider = styled.div` + width: 100%; + height: 0.1rem; + + background-color: rgba(241, 244, 244, 1); +`; + +const BorrowListBottom = styled.div` + display: flex; + justify-content: space-between; + align-items: center; + + width: 100%; + + margin-top: 1.2rem; +`; + +const BorrowListBottomTextBottom = styled.div` + display: flex; + flex-direction: column; + justify-content: center; + align-items: flex-start; + gap: 0.6rem; +`; + +const Caption3 = styled.span` + ${({ theme }) => theme.fonts.Nexton_Label_Small}; + color: rgba(170, 174, 175, 1); +`; + +const LabelMedium = styled.p` + color: #303234; + font-family: Montserrat; + font-size: 11px; + font-style: normal; + font-weight: 700; + line-height: 16px; /* 145.455% */ +`; + +const BorrowButton = styled.button` + display: flex; + justify-content: center; + align-items: center; + gap: 0.4rem; + + padding: 0.7rem 1.2rem; + + border: none; + border-radius: 2rem; + background-color: #007aff; + color: #fff; + ${({ theme }) => theme.fonts.Nexton_Label_Medium}; + + outline: none; + cursor: pointer; +`; diff --git a/src/components/loan/LoanList.tsx b/src/components/loan/LoanList.tsx deleted file mode 100644 index 147abb1f..00000000 --- a/src/components/loan/LoanList.tsx +++ /dev/null @@ -1,76 +0,0 @@ -import { styled } from "styled-components"; - -import { useStakeInfo } from "@/hooks/api/useStakeInfo"; -import useTonConnect from "@/hooks/contract/useTonConnect"; - -import BorrowList from "./Borrow/BorrowList"; - -const LoanList = () => { - const { address } = useTonConnect(); - const { nftList } = useStakeInfo(address); - - return ( - - - Borrowing - - NFTs to repay - - - {nftList && nftList.length > 0 ? ( - nftList - .sort((a, b) => Number(b.timeStamp) - Number(a.timeStamp)) - .map(item => ) - ) : ( - You need a staked NFT to borrow NXT - )} - - ); -}; - -export default LoanList; - -const LoanListWrapper = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - - width: 100%; -`; - -const LoanNav = styled.div` - display: flex; - justify-content: space-between; - align-items: center; - gap: 2rem; - - width: 100%; - margin-bottom: 1.8rem; -`; - -const LoanNavButton = styled.button<{ type?: string }>` - display: flex; - justify-content: center; - align-items: center; - - width: 100%; - padding: 0.8rem 1rem; - - border: none; - border-radius: 3rem; - background-color: ${({ type }) => (type === "repay" ? "#F9F9FF" : "#fff")}; - color: ${({ type }) => (type === "repay" ? "#76797a" : "#007aff")}; - ${({ theme }) => theme.fonts.Telegram_Caption_1_1}; - box-shadow: 0px 4px 4px 0px rgba(225, 228, 230, 0.5); - - cursor: pointer; - outline: none; -`; - -const EmptyText = styled.span` - margin-top: 5rem; - - color: #303234; - ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; -`; diff --git a/src/components/loan/common/LoanHeader.tsx b/src/components/loan/common/LoanHeader.tsx deleted file mode 100644 index 32b91747..00000000 --- a/src/components/loan/common/LoanHeader.tsx +++ /dev/null @@ -1,60 +0,0 @@ -import { useNavigate } from "react-router-dom"; -import { styled } from "styled-components"; - -const LoanHeader = ({ type }: { type?: string }) => { - const navigate = useNavigate(); - - return ( - <> - {type === "detail" ? ( - Deposit NFT, Borrow $NXT - ) : ( - - Deposit NFT, Borrow $NXT - - )} - - - By depositing your NFT, you can borrow NXT and stake - - - this to extra pay - offs, all without risking the liquidation of - - your deposited NFT. - - - ); -}; - -export default LoanHeader; - -const LoanHeaderBox = styled.div` - display: flex; - justify-content: center; - align-items: center; - - width: 100%; -`; - -const LoanHeaderTop = styled.div` - padding-top: 3rem; - - color: #46494a; - ${({ theme }) => theme.fonts.Nexton_Title_Large}; -`; - -const LoanHeaderDescBox = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - - width: 100%; - margin-top: 1.2rem; - margin-bottom: 3.3rem; -`; - -const LoanHeaderDesc = styled.span` - color: #5e6162; - ${({ theme }) => theme.fonts.Telegram_Caption_3}; -`; diff --git a/src/pages/Loan/BorrowDetail.tsx b/src/pages/Loan/BorrowDetail.tsx index a094b1c1..f7b58071 100644 --- a/src/pages/Loan/BorrowDetail.tsx +++ b/src/pages/Loan/BorrowDetail.tsx @@ -5,16 +5,15 @@ import { styled } from "styled-components"; import BasicModal from "../../components/common/Modal/BasicModal"; import BorrowDetailInfo from "../../components/loan/Borrow/BorrowDetailInfo"; -import LoanHeader from "../../components/loan/common/LoanHeader"; const tele = (window as any).Telegram.WebApp; - +// * Legacy code const BorrowDetail = () => { const [isOpenModal, setIsOpenModal] = useState(false); const navigate = useNavigate(); const handleToggleModal = () => { - setIsOpenModal((prev) => !prev); + setIsOpenModal(prev => !prev); }; useEffect(() => { @@ -34,10 +33,7 @@ const BorrowDetail = () => { return ( <> - {isOpenModal && ( - - )} - + {isOpenModal && } {/* Borrow NXT diff --git a/src/pages/Loan/Loan.styled.tsx b/src/pages/Loan/Loan.styled.tsx index 14202f4e..2ec4e1d1 100644 --- a/src/pages/Loan/Loan.styled.tsx +++ b/src/pages/Loan/Loan.styled.tsx @@ -106,37 +106,3 @@ export const LoanNFTBoxHeader = styled.div` color: #303234; } `; - -export const LoanNFTBoxList = styled.div` - height: 100%; - display: flex; - align-items: center; - flex-direction: column; -`; - -export const LoanNFTBoxListEmpty = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - - gap: 1rem; - margin-top: 5.7rem; - - h2 { - ${({ theme }) => theme.fonts.Nexton_Title_Medium_2}; - color: #000; - margin-top: 1.7rem; - } -`; - -export const LoanNFTBoxListEmptyLink = styled.div` - display: flex; - justify-content: center; - gap: 0.5rem; - - ${({ theme }) => theme.fonts.Nexton_Label_Medium}; - color: #5d5e67; - - cursor: pointer; -`; diff --git a/src/pages/Loan/Loan.tsx b/src/pages/Loan/Loan.tsx index 845b3e97..3ccf075d 100644 --- a/src/pages/Loan/Loan.tsx +++ b/src/pages/Loan/Loan.tsx @@ -1,14 +1,9 @@ import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; -import { styled } from "styled-components"; import IcAlert from "@/assets/icons/Loan/ic_alert.svg"; -import IcArrowRight from "@/assets/icons/Loan/ic_arrow_right.svg"; import IcBars from "@/assets/icons/Loan/ic_bars.svg"; -import NFTsEmpty from "@/assets/image/Loan/NFTsEmpty.png"; - -import LoanHeader from "../../components/loan/common/LoanHeader"; -import LoanList from "../../components/loan/LoanList"; +import BorrowList from "@/components/loan/Borrow/BorrowList"; import { LoanHeaderBox, @@ -16,9 +11,6 @@ import { LoanHeaderBoxTitle, LoanNFTBox, LoanNFTBoxHeader, - LoanNFTBoxList, - LoanNFTBoxListEmpty, - LoanNFTBoxListEmptyLink, LoanSwitcherBox, LoanSwitcherBoxItem, LoanSwitcherBoxTooltip, @@ -45,7 +37,7 @@ const Loan = () => { return () => { tele.offEvent("backButtonClicked"); }; - }, []); + }, [navigate]); const handleViewChange = (view: LoanView) => { setView(view); @@ -82,42 +74,10 @@ const Loan = () => {

0 NFTs

- - - nfts_empty - -

No results

- - Let’s move to staking to get new NFT arrow_right - -
-
+ {view === "borrow" && }
); }; export default Loan; - -const LoanHeaderTop = styled.div` - padding-top: 3rem; - - color: #46494a; - ${({ theme }) => theme.fonts.Nexton_Title_Large}; -`; - -const LoanHeaderDescBox = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - - width: 100%; - margin-top: 1.2rem; - margin-bottom: 3.3rem; -`; - -const LoanHeaderDesc = styled.span` - color: #5e6162; - ${({ theme }) => theme.fonts.Telegram_Caption_3}; -`; From 72bebe1fbfbc1090d6373b96f0df5bd68a4245ac Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 25 Jul 2024 16:05:01 +1000 Subject: [PATCH 035/105] wip: NFT list item & Borrow screen init --- src/assets/image/Loan/ExpiredNFTItem.png | Bin 0 -> 3169 bytes src/assets/image/Loan/ForthcomingNFTItem.png | Bin 0 -> 3990 bytes src/assets/image/Loan/OngoingNFTItem.png | Bin 0 -> 4083 bytes src/components/common/Router.tsx | 4 +- src/components/loan/Borrow/BorrowList.tsx | 2 + src/components/loan/Borrow/BorrowListItem.tsx | 35 +++--- src/pages/Loan/Borrow.styled.tsx | 115 ++++++++++++++++++ src/pages/Loan/Borrow.tsx | 83 +++++++++++++ src/pages/Loan/BorrowDetail.tsx | 93 -------------- 9 files changed, 220 insertions(+), 112 deletions(-) create mode 100644 src/assets/image/Loan/ExpiredNFTItem.png create mode 100644 src/assets/image/Loan/ForthcomingNFTItem.png create mode 100644 src/assets/image/Loan/OngoingNFTItem.png create mode 100644 src/pages/Loan/Borrow.styled.tsx create mode 100644 src/pages/Loan/Borrow.tsx delete mode 100644 src/pages/Loan/BorrowDetail.tsx diff --git a/src/assets/image/Loan/ExpiredNFTItem.png b/src/assets/image/Loan/ExpiredNFTItem.png new file mode 100644 index 0000000000000000000000000000000000000000..e411e30361ad2d0fe9f11d894f2a020d9c607e75 GIT binary patch literal 3169 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 Hu0mjf!!z@F literal 0 HcmV?d00001 diff --git a/src/assets/image/Loan/ForthcomingNFTItem.png b/src/assets/image/Loan/ForthcomingNFTItem.png new file mode 100644 index 0000000000000000000000000000000000000000..db54f4783e24f6aae56bc39473805767bc2dcfd4 GIT binary patch literal 3990 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 literal 0 HcmV?d00001 diff --git a/src/assets/image/Loan/OngoingNFTItem.png b/src/assets/image/Loan/OngoingNFTItem.png new file mode 100644 index 0000000000000000000000000000000000000000..283c68e853eb7e95ec952c3b2f081e14b20ae3bc GIT binary patch literal 4083 zcmVu8m;TeI9co#pg&k=^kk(}Z)1;Q|w! zDvj5wO5$M^o3-&Ms=!aIERPHE*rTYKwIKmE$X&y!i7{orfA`tX&y)HiIeckH@~ z%vjerZ3)2}K*%Z%h~O+G>PH6yVNYt4GYEehV4gc&<@DrQb^td`5KKc@Uw)Z67`|Rp z4xAN$ECsb#lj%iS+k=Ncy9uZszWMs^K6p)+@|(8mNn0T#?%rBx+pOeKsZhKw`MUVS z%yokEyLA3e1!v*mco5bOpG|ydP#?2%0fUz zrkQ}a2#!LBwJNNx5T-bY5|$!}eq8O|y&t{*N=QR%{P7=ux668NPbb$H9~Azf{@Q(n z0^o+ahNH_uKf#06ppyH@>LhV{?I6hsE~T%WLd7Rg`5BI9N3$G*Ydd_d+9iOJ$RGMk z$(6oicGHdBA{Jn$nN+h!B9|{rFaG(xyRw&aNsXqb<-hdGgP5Rc7CN=R9-bT57JNu+ z>~PHllojNspOie`0Gx)|68j2|DVCYNQA|RBEXl4g2kfc@{m);RQy*p{GFAo6^ zWY$9>S-kh#sO7mGT)wBE8nI@=S4WU{hxa>82X`>yw4fEc?`djAQ#lMMrKEm}_%%&8 zAY$>^5KUbH-A2TppGuJr>jBh+Qk^#G~?hDRpF zBiwAl+R;L^h%pSSJFkcFq>ZFioOUHGh7+`;j!Nbeu`SRf*ZBQ1c``kpI`dQ`3c1!o z?ZIn*UjmeM3N+WRW`rvY%o^u1Vogfn6NL694nlhv=Y2|kRzf-Cz4?ohenNqpjHsX+ z2#UBMG0g}d^sT9rXqY`iXHDe(8IMgz#OPX4S7De@)5&R#>b?9Jlc;5q=(F!zEzUdt6Nw-^|<9ULa$}spx~v*_^h+2B#3s9U=y1> zd9KO+*pSN1?=f|U^=Ly7j5tg<4kAj4(!vS^*V>l-WkfU?%Qc)&ZCSl~Nt1cX!)b}< zklRJ$d@GR{inA$|)PoG(uL+EQmnTi0oHh54R?{MyTIxVRJFJK>b&VC(Zu(u;RuR%I zeNW>{=@n~FWUOk_2QyKX8r3loQHWZCPMXmx!g1uCrk2Wy=kW3YnHbn%iod}7VJ5lqujk+=i* zAeJE|Fr*+^SQ3C&`*^q!1VbjZUuD!-JX%_$CvKBoQ3PinePNYPZm$5LVT~HrY#t#q z^zLxg5!MNWKF%tX-pR^!wTSUfnWPVoj?+sG*{mVqB&7y_3m(|;lmg)^A6#u)U3j-x zi+W4)GmEaVNE{#CS>>}cMky@%MM+wf06$S{RU*=$feRq0b~QV~xrN$U8&T-Bu~{rK zdpMO*)U~vVmpK4Yp#9>F1wO@59Z-u7t0u*gW~2Qp7C=&X`pp7>kMA_OJYErUK`98| zGE%kDMwv5pSEaKbJBVm@3}$F+RGAcX!Id+lCIEt)ym$j zH^v>VanT-6SxiRbHR>g&&?*Lw8Zxe>McDF%e{_q810$Uz1(Hn63=HJ|9{0Fp!lM-s z>6WA-qhL!qS!VkHk_mtmqmxf__UP2U#Ug+!tUb=zTdXC6mb(S5unP(Wh}Eru@F(n1 z-7*P6JFwCP>(MI&q7M+n%vA#vDb!N?EkT=fe~P#^NiPr?yO}pAB(>et`)&&FAaIwb zd0ete(Gt<5IE|oTXpq7ajO{%olMv`i}3%_VJtY`-XV>@{5aZ7XPa47sU z6~ql&B;ZL9Zrd6{U!lQXnMkgXRj#A5ToHyB$!Xwd=%X33Y+UHT%n@{U551t+N~)c# z9=-T^qxG^d^gNM~r^`7;r5(T!Ugco=(5tzg_M^^5j+olanJ$Ed)~|8%D`d~(Ym7D* zXxWRIXn?FgLGyOnM!0mUW!2esVG%tF-{E^b5(iR}2t#lky}6EwX7^={ zazi7BO@irPL$$ji=3YZG#_s8iKo-!vV#-&&?etQZt!=@Lby=8RbS{OUl#lD)`Q=5IuCWenjDG@mnO|7*69p=+W<3FC(G!Nwjy zkU1MdJh54j6n3+)!AoLXWlDl zI5&a-2h*e@_D_a|&9ipRkX$^PDThrgOOuQ3z(HcPq&K=v%@W$8YW$xFpdCa1Xp*s& z;TACz0;M}4U5n-u2$QvrxQ#*P{L z3L7|A65A03@p$rWx*LD4-NpSUnx|(#G#R0``-g2+;%2@+*z&;zJI=6V6phfPp;Ky} z{9p|?Yc?+$wGV+*P)@z*TL45ogV)UH1`1ih*cySrYj4Kz_shsL-9tS|=0rLJPfp-7 zba#J9|FC?mhtAc*IU^nSSn^x|5#Oa<*VR9C%6X2+W{7R1@A0twknFWHFYrj3`B;Y* zoRUU0HcH<=9h{DRNBGSy-^)!4bh>p)Y0_()Gb)xG9Z^fW4dBG0-)M<7Ha^uiIdewk z6jZOds^&x^t5;{Bx3@CNp>X6W6Jw1L%fC<3N%x^;ww=>vl|G%hIX>yhH4=nITIXfo7Ry=)Vn+KJ&+xW%9H$t*wO#JY z79G7x^ef4YUf^BgaUUOxeFneeo;&l;oR*|TedW#F!a-A~>zto=L2S#cV8xpS3E@qs z>Cs`t=%s>(MHYz`L+J%VEy*GulBpbwW>OoP)4vhflG_PJK1GT17?r_OSSz=}+YQ0< zh^1p|Tw^zQ(cFLZ(xcbX7w>-Wg@@(hAwW#atDW>C5v>QAb!;b;oGNN=8R#gtqd`ii z$fV_5_EBgXmND}2F~EE_d7Y+v3XA*B`C}bgAc1r%X`ewaCHo%Pnz30PNIJY+{Qm4s zNcy@{D@Uc>G6c|4k%hk^rBI7Fd^B?dscVag;4S-%9+a=KTPluZPLn* zLAwCq6FVGhCcm(_$DO7R-hK6}4+jtj^V{3^V7>>3{B(`1<-mW;%lF8{@uQoVn?^FR zq)^{z;m{#gOjCTHS+kg@6+VSkE(wH!2LJ~%Z}bXF$=DI_fD>iT>+gO4%lEtd1Biq9 z6#9wg8tw zFBYHtv5g-W4LUj1BrKEL87LYa;jZ8P+Yi5V?@;z~QU1bT=BEi~mOj?{W2OZ={MAa_v%y;B; ld0Xzx4=?UN|L9qH{|o)aw`LfutwjI;002ovPDHLkV1jtSwT%D( literal 0 HcmV?d00001 diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index 719cec74..34c66f74 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -1,7 +1,7 @@ import { BrowserRouter, Route, Routes } from "react-router-dom"; import Dashboard from "@/pages/Dashboard/Dashboard"; -import BorrowDetail from "@/pages/Loan/BorrowDetail"; +import Borrow from "@/pages/Loan/Borrow"; import Loan from "@/pages/Loan/Loan"; import RiskDisclosure from "@/pages/Loan/RiskDisclosure"; import Main from "@/pages/Main/Main"; @@ -35,7 +35,7 @@ const Router = () => { } /> } /> } /> - } /> + } /> } /> } /> }> diff --git a/src/components/loan/Borrow/BorrowList.tsx b/src/components/loan/Borrow/BorrowList.tsx index ce465c02..e4c84499 100644 --- a/src/components/loan/Borrow/BorrowList.tsx +++ b/src/components/loan/Borrow/BorrowList.tsx @@ -73,6 +73,8 @@ const BorrowList = () => { )} */} + + {/* // * Mocked data */} {_NFTsMock && _NFTsMock.length > 0 ? ( {_NFTsMock diff --git a/src/components/loan/Borrow/BorrowListItem.tsx b/src/components/loan/Borrow/BorrowListItem.tsx index f2fd703c..64ecc6aa 100644 --- a/src/components/loan/Borrow/BorrowListItem.tsx +++ b/src/components/loan/Borrow/BorrowListItem.tsx @@ -1,11 +1,9 @@ import { useNavigate } from "react-router-dom"; import { styled } from "styled-components"; -import IcLoanArrow from "../../../assets/icons/Loan/ic_loan_arrow.svg"; -import { nftInfo } from "../../../types/Nft"; -import { DDayChange, expiredDateChanger } from "../../../utils/dateChanger"; -import { numberCutter } from "../../../utils/numberCutter"; -import { NftStatus } from "../common/Nftstatus"; +import { nftInfo } from "@/types/Nft"; +import { DDayChange, expiredDateChanger } from "@/utils/dateChanger"; +import { numberCutter } from "@/utils/numberCutter"; interface BorrowListProps { item: nftInfo; @@ -17,10 +15,9 @@ const BorrowListItem = (props: BorrowListProps) => { const navigate = useNavigate(); return ( - + navigate(`/loan/${nftId}`)}> - {/* to-do: change BG to .png */} {DDayChange(timeStamp, lockPeriod) > 55 ? ( ) : DDayChange(timeStamp, lockPeriod) === 0 ? ( @@ -34,10 +31,11 @@ const BorrowListItem = (props: BorrowListProps) => { - navigate(`/loan/${nftId}`)}> + {/* Not finalized yet */} + {/* navigate(`/loan/${nftId}`)}> Borrow loan - + */} @@ -47,14 +45,14 @@ const BorrowListItem = (props: BorrowListProps) => { Principal {numberCutter(amount)} TON - - Evaluation - {numberCutter(amount)} TON - Expired date {expiredDateChanger(timeStamp, lockPeriod, "detail")} + + max LTV. + 50% + ); @@ -75,6 +73,8 @@ const BorrowListItemWrapper = styled.div` border-radius: 2rem; background-color: #fff; + cursor: pointer; + & + & { margin-top: 1.4rem; } @@ -94,7 +94,6 @@ const BorrowListTopLeft = styled.div` display: flex; justify-content: center; align-items: center; - gap: 0.6rem; p { ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; @@ -112,10 +111,10 @@ const NFTStatus = styled.div<{ type?: string }>` border-radius: 1rem; background: ${({ type }) => type === "ongoing" - ? `linear-gradient(90deg, #61b5f2 0%, #98a1fe 100%)` + ? `linear-gradient(217deg, rgba(61, 80, 255, 0.00) 9.1%, #C7CAE9 88.74%), url("./src/assets/image/Loan/OngoingNFTItem.png") lightgray 50% / cover no-repeat` : type === "forthComing" - ? `linear-gradient(140deg, #FF8C73 2.52%, #FFE0B0 89.95%)` - : `linear-gradient(127deg, #A2A9BC -17.44%, #E5EDFF 100%)`}; + ? `linear-gradient(217deg, rgba(255, 93, 57, 0.00) 57.93%, #FF5D39 88.74%), url("./src/assets/image/Loan/ForthcomingNFTItem.png") lightgray 50% / cover no-repeat;` + : `linear-gradient(217deg, rgba(255, 255, 255, 0.00) 35.65%, #A4A4A4 88.74%), url("./src/assets/image/Loan/ExpiredNFTItem.png") lightgray 50% / cover no-repeat`}; `; const BorrowListTopLeftText = styled.div` @@ -124,6 +123,8 @@ const BorrowListTopLeftText = styled.div` justify-content: center; align-items: flex-start; gap: 0.2rem; + + margin-left: 1.6rem; `; const BorrowListItemDivider = styled.div` diff --git a/src/pages/Loan/Borrow.styled.tsx b/src/pages/Loan/Borrow.styled.tsx new file mode 100644 index 00000000..8d55a69b --- /dev/null +++ b/src/pages/Loan/Borrow.styled.tsx @@ -0,0 +1,115 @@ +import { styled } from "styled-components"; + +export const BorrowWrapper = styled.div` + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + + width: 100%; +`; + +export const BorrowCard = styled.div` + width: 100%; + display: flex; + + padding: 27px 69px 28px 70px; + flex-direction: column; + justify-content: center; + align-items: center; + gap: 11.706px; + + border-radius: 0px 0px 20px 20px; + background: #1a1b23; + box-shadow: 0px 4px 8.6px 0px rgba(206, 216, 225, 0.5); +`; + +export const NFTStatus = styled.div<{ type?: string }>` + background-color: lightgray; + background-size: cover; + background-repeat: no-repeat; + background-position: 50%; + width: 100%; + padding-top: 100%; + border-radius: 12px; + + background-image: ${({ type }) => + type === "ongoing" + ? `linear-gradient(217deg, rgba(61, 80, 255, 0.00) 9.1%, #C7CAE9 88.74%), url("./src/assets/image/Loan/OngoingNFTItem.png") lightgray 50% / cover no-repeat` + : type === "forthComing" + ? `linear-gradient(217deg, rgba(255, 93, 57, 0.00) 57.93%, #FF5D39 88.74%), url("./src/assets/image/Loan/ForthcomingNFTItem.png") lightgray 50% / cover no-repeat;` + : `linear-gradient(217deg, rgba(255, 255, 255, 0.00) 35.65%, #A4A4A4 88.74%), url("./src/assets/image/Loan/ExpiredNFTItem.png") lightgray 50% / cover no-repeat`}; +`; + +export const BorrowCardTitle = styled.h1` + color: #fff; + text-align: center; + align-self: stretch; + + ${({ theme }) => theme.fonts.Nexton_Title_Medium_2}; +`; + +export const BorrowCardButton = styled.button` + all: unset; + + width: 200px; + display: flex; + padding: 10px; + justify-content: center; + align-items: center; + gap: 4px; + + border-radius: 10px; + background: #1f53ff; + cursor: pointer; + + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; + color: #fff; +`; + +export const BorrowDetailWrapper = styled.div` + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + + width: 100%; + + padding: 2.9rem 2rem; + gap: 1rem; +`; + +export const BorrowDetailItem = styled.div` + width: 100%; + display: inline-flex; + padding: 1.3rem 1.5rem 3rem 1.5rem; + flex-direction: column; + align-items: flex-start; + gap: 0.3rem; + + border-radius: 2rem; + background: #fff; + + /* drop shadow_type 4 */ + box-shadow: 0px 0px 12px 0px rgba(206, 216, 225, 0.5); +`; + +export const BorrowDetailItemCaption = styled.span` + ${({ theme }) => theme.fonts.Nexton_Label_Small}; + color: rgba(170, 174, 175, 1); +`; + +export const BorrowDetailItemText = styled.p` + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: #303234; + + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +`; + +export const BorrowDetailItemBox = styled.div` + width: 100%; + display: flex; + gap: 1rem; +`; diff --git a/src/pages/Loan/Borrow.tsx b/src/pages/Loan/Borrow.tsx new file mode 100644 index 00000000..a6456b40 --- /dev/null +++ b/src/pages/Loan/Borrow.tsx @@ -0,0 +1,83 @@ +import { useEffect, useState } from "react"; +import { useNavigate } from "react-router-dom"; + +import { DDayChange } from "@/utils/dateChanger"; + +import { + BorrowCard, + BorrowCardButton, + BorrowCardTitle, + BorrowDetailItem, + BorrowDetailItemBox, + BorrowDetailItemCaption, + BorrowDetailItemText, + BorrowDetailWrapper, + BorrowWrapper, + NFTStatus, +} from "./Borrow.styled"; + +const tele = (window as any).Telegram.WebApp; + +const Borrow = () => { + const navigate = useNavigate(); + + useEffect(() => { + if (tele) { + tele.ready(); + tele.BackButton.show(); + tele.onEvent("backButtonClicked", () => { + navigate("/loan"); + }); + } + + return () => { + tele.offEvent("backButtonClicked"); + }; + }, [navigate]); + + return ( + + + {/* // to-do: change the image path */} + + + Staking NFT + Borrow nxTON → + + + + + Token ID + 542394817863ddddddddd + + + + + Network + TON + + + LTV + 50% + + + + + ); +}; + +export default Borrow; + +{ + /* + {isOpenModal && } + + + Borrow NXT + + + + + Confirm + */ +} diff --git a/src/pages/Loan/BorrowDetail.tsx b/src/pages/Loan/BorrowDetail.tsx deleted file mode 100644 index f7b58071..00000000 --- a/src/pages/Loan/BorrowDetail.tsx +++ /dev/null @@ -1,93 +0,0 @@ -import { useEffect, useState } from "react"; -import { useNavigate } from "react-router-dom"; -import { MainButton } from "@vkruglikov/react-telegram-web-app"; -import { styled } from "styled-components"; - -import BasicModal from "../../components/common/Modal/BasicModal"; -import BorrowDetailInfo from "../../components/loan/Borrow/BorrowDetailInfo"; - -const tele = (window as any).Telegram.WebApp; -// * Legacy code -const BorrowDetail = () => { - const [isOpenModal, setIsOpenModal] = useState(false); - const navigate = useNavigate(); - - const handleToggleModal = () => { - setIsOpenModal(prev => !prev); - }; - - useEffect(() => { - if (tele) { - tele.ready(); - tele.BackButton.show(); - tele.onEvent("backButtonClicked", () => { - navigate("/loan"); - }); - } - - return () => { - tele.offEvent("backButtonClicked"); - }; - }, []); - - return ( - <> - - {isOpenModal && } - {/* - - Borrow NXT - */} - - - {/* Confirm */} - - - ); -}; - -export default BorrowDetail; - -const BorrowDetailWrapper = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - - width: 100%; - padding: 2.9rem 1.3rem 2.9rem 1.3rem; -`; - -const BorrowDetailHeader = styled.div` - display: flex; - align-items: center; - gap: 1rem; - position: relative; - - width: 100%; - - color: #27293e; - ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; -`; - -const ConfirmButton = styled.button` - display: flex; - justify-content: center; - align-items: center; - - position: absolute; - left: 1.4rem; - right: 1.4rem; - bottom: 1.4rem; - - width: 93%; - height: 5.4rem; - - border: none; - border-radius: 1.2rem; - background-color: #007aff; - color: #fff; - ${({ theme }) => theme.fonts.Telegram_SemiBold}; - - cursor: pointer; -`; From 147f28a847d276bd259a8d6725d68a13418d9baf Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 29 Jul 2024 16:29:08 +1000 Subject: [PATCH 036/105] wip: added dropdown custom component & react-dropdown package --- package.json | 1 + src/components/common/DropdownMenu.css | 44 +++++++++++++++++++++++ src/components/common/DropdownMenu.tsx | 34 ++++++++++++++++++ src/components/loan/Borrow/BorrowList.tsx | 20 ++++++----- src/pages/Loan/Loan.styled.tsx | 17 ++++++++- src/pages/Loan/Loan.tsx | 26 ++++++++++++-- yarn.lock | 12 +++++++ 7 files changed, 141 insertions(+), 13 deletions(-) create mode 100644 src/components/common/DropdownMenu.css create mode 100644 src/components/common/DropdownMenu.tsx diff --git a/package.json b/package.json index 42c594a8..05684f5d 100644 --- a/package.json +++ b/package.json @@ -32,6 +32,7 @@ "ngrok": "^5.0.0-beta.2", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-dropdown": "^1.11.0", "react-hook-form": "^7.51.4", "react-hot-toast": "^2.4.1", "react-loader-spinner": "^6.1.6", diff --git a/src/components/common/DropdownMenu.css b/src/components/common/DropdownMenu.css new file mode 100644 index 00000000..5016de32 --- /dev/null +++ b/src/components/common/DropdownMenu.css @@ -0,0 +1,44 @@ +.DropdownRoot { + width: auto; +} + +.DropdownControl { + display: flex; + align-items: center; + justify-content: center; + cursor: pointer; + border: none; + + padding: 0; + + font-family: Montserrat; + font-size: 1.9rem; + font-style: normal; + font-weight: 600; + line-height: 21px; /* 161.538% */ + letter-spacing: -0.052px; +} + +.DropdownMenu { + right: 10px; + min-width: 100px; + height: auto; + align-self: stretch; + + border-radius: 10px; + background: #fff; + + box-shadow: 0px 6px 10px 0px rgba(94, 97, 98, 0.3); + + font-family: Montserrat; + font-size: 1.9rem; + font-style: normal; + font-weight: 600; + line-height: 21px; /* 161.538% */ + letter-spacing: -0.052px; + color: #c6caca; + + :active { + color: #303234; + } +} diff --git a/src/components/common/DropdownMenu.tsx b/src/components/common/DropdownMenu.tsx new file mode 100644 index 00000000..edc5893e --- /dev/null +++ b/src/components/common/DropdownMenu.tsx @@ -0,0 +1,34 @@ +import Dropdown from "react-dropdown"; + +import "react-dropdown/style.css"; +import "./DropdownMenu.css"; + +const DropdownArrow = () => ( + + + +); + +const DropdownMenu = ({ options, defaultValue, onOptionSelect }) => { + return ( + } + arrowOpen={} + /> + ); +}; + +export default DropdownMenu; diff --git a/src/components/loan/Borrow/BorrowList.tsx b/src/components/loan/Borrow/BorrowList.tsx index e4c84499..c1a79668 100644 --- a/src/components/loan/Borrow/BorrowList.tsx +++ b/src/components/loan/Borrow/BorrowList.tsx @@ -4,6 +4,8 @@ import IcArrowRight from "@/assets/icons/Loan/ic_arrow_right.svg"; import NFTsEmpty from "@/assets/image/Loan/NFTsEmpty.png"; import { useStakeInfo } from "@/hooks/api/useStakeInfo"; import useTonConnect from "@/hooks/contract/useTonConnect"; +import { FilterNFTs } from "@/pages/Loan/Loan"; +import { DDayChange } from "@/utils/dateChanger"; import BorrowListItem from "./BorrowListItem"; @@ -12,8 +14,8 @@ const _NFTsMock = [ nftId: 1, amount: 1000, leverage: 2, - lockPeriod: 30, - timeStamp: "2024-07-01T12:00:00Z", + lockPeriod: 55, + timeStamp: "2024-03-01T12:00:00Z", nominator: "User1", status: 1, }, @@ -21,8 +23,8 @@ const _NFTsMock = [ nftId: 2, amount: 500, leverage: 3, - lockPeriod: 60, - timeStamp: "2024-07-02T12:00:00Z", + lockPeriod: 55, + timeStamp: "2024-10-02T12:00:00Z", nominator: "User2", status: 2, }, @@ -30,7 +32,7 @@ const _NFTsMock = [ nftId: 3, amount: 750, leverage: 1.5, - lockPeriod: 90, + lockPeriod: 55, timeStamp: "2024-07-03T12:00:00Z", nominator: "User3", status: 1, @@ -39,8 +41,8 @@ const _NFTsMock = [ nftId: 4, amount: 1200, leverage: 2.5, - lockPeriod: 45, - timeStamp: "2024-07-04T12:00:00Z", + lockPeriod: 55, + timeStamp: "2023-07-04T12:00:00Z", nominator: "User4", status: 3, }, @@ -48,14 +50,14 @@ const _NFTsMock = [ nftId: 5, amount: 300, leverage: 4, - lockPeriod: 15, + lockPeriod: 55, timeStamp: "2024-07-05T12:00:00Z", nominator: "User5", status: 0, }, ]; -const BorrowList = () => { +const BorrowList = ({ filter }: { filter?: FilterNFTs }) => { const { address } = useTonConnect(); const { nftList } = useStakeInfo(address); diff --git a/src/pages/Loan/Loan.styled.tsx b/src/pages/Loan/Loan.styled.tsx index 2ec4e1d1..b43b4067 100644 --- a/src/pages/Loan/Loan.styled.tsx +++ b/src/pages/Loan/Loan.styled.tsx @@ -91,9 +91,13 @@ export const LoanNFTBoxHeader = styled.div` width: 100%; display: flex; align-items: center; - justify-content: start; + justify-content: space-between; +`; +export const LoanNFTBoxHeaderLeft = styled.div` + display: flex; gap: 0.4rem; + align-items: center; span { ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; @@ -106,3 +110,14 @@ export const LoanNFTBoxHeader = styled.div` color: #303234; } `; + +export const LoanNFTBoxHeaderRight = styled.div` + display: flex; + gap: 0.4rem; + align-items: center; + + span { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; + color: #76797a; + } +`; diff --git a/src/pages/Loan/Loan.tsx b/src/pages/Loan/Loan.tsx index 3ccf075d..a07235d3 100644 --- a/src/pages/Loan/Loan.tsx +++ b/src/pages/Loan/Loan.tsx @@ -3,6 +3,7 @@ import { useNavigate } from "react-router-dom"; import IcAlert from "@/assets/icons/Loan/ic_alert.svg"; import IcBars from "@/assets/icons/Loan/ic_bars.svg"; +import DropdownMenu from "@/components/common/DropdownMenu"; import BorrowList from "@/components/loan/Borrow/BorrowList"; import { @@ -11,6 +12,8 @@ import { LoanHeaderBoxTitle, LoanNFTBox, LoanNFTBoxHeader, + LoanNFTBoxHeaderLeft, + LoanNFTBoxHeaderRight, LoanSwitcherBox, LoanSwitcherBoxItem, LoanSwitcherBoxTooltip, @@ -18,11 +21,15 @@ import { } from "./Loan.styled"; type LoanView = "borrow" | "repay"; +export type FilterNFTs = "Ongoing" | "Forthcoming" | "Expired" | "All"; const tele = (window as any).Telegram.WebApp; +const filters: FilterNFTs[] = ["Ongoing", "Forthcoming", "Expired", "All"]; + const Loan = () => { const navigate = useNavigate(); + const [filter, setFilter] = useState("All"); const [view, setView] = useState("borrow"); useEffect(() => { @@ -43,6 +50,10 @@ const Loan = () => { setView(view); }; + const handleSortOptionChange = value => { + setFilter(value); + }; + return ( @@ -70,11 +81,20 @@ const Loan = () => { - You have -

0 NFTs

+ + You have +

0 NFTs

+
+ + {view === "borrow" && ( + + Sort by + + + )}
- {view === "borrow" && } + {view === "borrow" && }
); diff --git a/yarn.lock b/yarn.lock index fa632522..84aff004 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2486,6 +2486,11 @@ chokidar@^3.4.0: optionalDependencies: fsevents "~2.3.2" +classnames@^2.2.3: + version "2.5.1" + resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.5.1.tgz#ba774c614be0f016da105c858e7159eae8e7687b" + integrity sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow== + classnames@^2.3.2: version "2.3.2" resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.3.2.tgz#351d813bf0137fcc6a76a16b88208d2560a0d924" @@ -3938,6 +3943,13 @@ react-dom@^18.2.0: loose-envify "^1.1.0" scheduler "^0.23.0" +react-dropdown@^1.11.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/react-dropdown/-/react-dropdown-1.11.0.tgz#b9576de17efd28e5684d101b3f58dfe784af242c" + integrity sha512-E2UWetRPxNdIhQahXw6b984ME7WmcgDj9AEAjrtS/oyLCFVo+2qkCfcS06C22JR0Zj+YLnygwv0Ozf6VKKDq7g== + dependencies: + classnames "^2.2.3" + react-hook-form@^7.51.4: version "7.51.4" resolved "https://registry.yarnpkg.com/react-hook-form/-/react-hook-form-7.51.4.tgz#c3a47aeb22b699c45de9fc12b58763606cb52f0c" From 3af87cdafa7aacc3ae064dc3a823b787dc77ebb6 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 30 Jul 2024 11:11:57 +1000 Subject: [PATCH 037/105] wip: staking info dynamic added --- .../icons/Loan/ic_double_arrows_bottom.svg | 3 + .../icons/Loan/ic_double_arrows_top.svg | 3 + src/assets/image/Loan/OngoingNFTLarge.png | Bin 0 -> 30113 bytes src/components/loan/Borrow/BorrowList.tsx | 1 - src/pages/Loan/Borrow.styled.tsx | 60 +++++++++++--- src/pages/Loan/Borrow.tsx | 76 +++++++++++++++++- 6 files changed, 129 insertions(+), 14 deletions(-) create mode 100644 src/assets/icons/Loan/ic_double_arrows_bottom.svg create mode 100644 src/assets/icons/Loan/ic_double_arrows_top.svg create mode 100644 src/assets/image/Loan/OngoingNFTLarge.png diff --git a/src/assets/icons/Loan/ic_double_arrows_bottom.svg b/src/assets/icons/Loan/ic_double_arrows_bottom.svg new file mode 100644 index 00000000..a0c03816 --- /dev/null +++ b/src/assets/icons/Loan/ic_double_arrows_bottom.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/assets/icons/Loan/ic_double_arrows_top.svg b/src/assets/icons/Loan/ic_double_arrows_top.svg new file mode 100644 index 00000000..5de0f46d --- /dev/null +++ b/src/assets/icons/Loan/ic_double_arrows_top.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/assets/image/Loan/OngoingNFTLarge.png b/src/assets/image/Loan/OngoingNFTLarge.png new file mode 100644 index 0000000000000000000000000000000000000000..d00d8ffb7926d949a225a46bd13e065e2aac7ef8 GIT binary patch literal 30113 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

_#>Ln_ebSsWkePz=R=81FvLx#2#VONJ0;y3e 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

JS()#0`Mu2BSr+%{Rjc2%yxz%L$cpw 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 U$8BI*x&QzG07*qoM6N<$f|}w3;{X5v literal 0 HcmV?d00001 diff --git a/src/components/loan/Borrow/BorrowList.tsx b/src/components/loan/Borrow/BorrowList.tsx index c1a79668..fb876411 100644 --- a/src/components/loan/Borrow/BorrowList.tsx +++ b/src/components/loan/Borrow/BorrowList.tsx @@ -5,7 +5,6 @@ import NFTsEmpty from "@/assets/image/Loan/NFTsEmpty.png"; import { useStakeInfo } from "@/hooks/api/useStakeInfo"; import useTonConnect from "@/hooks/contract/useTonConnect"; import { FilterNFTs } from "@/pages/Loan/Loan"; -import { DDayChange } from "@/utils/dateChanger"; import BorrowListItem from "./BorrowListItem"; diff --git a/src/pages/Loan/Borrow.styled.tsx b/src/pages/Loan/Borrow.styled.tsx index 8d55a69b..3779927c 100644 --- a/src/pages/Loan/Borrow.styled.tsx +++ b/src/pages/Loan/Borrow.styled.tsx @@ -25,17 +25,13 @@ export const BorrowCard = styled.div` `; export const NFTStatus = styled.div<{ type?: string }>` - background-color: lightgray; - background-size: cover; - background-repeat: no-repeat; - background-position: 50%; width: 100%; padding-top: 100%; border-radius: 12px; - background-image: ${({ type }) => + background: ${({ type }) => type === "ongoing" - ? `linear-gradient(217deg, rgba(61, 80, 255, 0.00) 9.1%, #C7CAE9 88.74%), url("./src/assets/image/Loan/OngoingNFTItem.png") lightgray 50% / cover no-repeat` + ? `linear-gradient(217deg, rgba(61, 80, 255, 0.00) 9.1%, #C7CAE9 88.74%), url("./src/assets/image/Loan/OngoingNFTLarge.png") lightgray 50% / cover no-repeat;` : type === "forthComing" ? `linear-gradient(217deg, rgba(255, 93, 57, 0.00) 57.93%, #FF5D39 88.74%), url("./src/assets/image/Loan/ForthcomingNFTItem.png") lightgray 50% / cover no-repeat;` : `linear-gradient(217deg, rgba(255, 255, 255, 0.00) 35.65%, #A4A4A4 88.74%), url("./src/assets/image/Loan/ExpiredNFTItem.png") lightgray 50% / cover no-repeat`}; @@ -79,12 +75,12 @@ export const BorrowDetailWrapper = styled.div` gap: 1rem; `; -export const BorrowDetailItem = styled.div` +export const BorrowDetailItem = styled.div<{ $marginTop?: boolean; $itemsCenter?: boolean }>` width: 100%; display: inline-flex; - padding: 1.3rem 1.5rem 3rem 1.5rem; + padding: 1.5rem 2rem; flex-direction: column; - align-items: flex-start; + align-items: ${({ $itemsCenter }) => ($itemsCenter ? "center" : "flex-start")}; gap: 0.3rem; border-radius: 2rem; @@ -92,6 +88,8 @@ export const BorrowDetailItem = styled.div` /* drop shadow_type 4 */ box-shadow: 0px 0px 12px 0px rgba(206, 216, 225, 0.5); + + margin-top: ${({ $marginTop }) => ($marginTop ? "3.7rem" : "0")}; `; export const BorrowDetailItemCaption = styled.span` @@ -99,13 +97,16 @@ export const BorrowDetailItemCaption = styled.span` color: rgba(170, 174, 175, 1); `; -export const BorrowDetailItemText = styled.p` +export const BorrowDetailItemText = styled.p<{ $textCenter?: boolean }>` + width: 100%; ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; color: #303234; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; + + text-align: ${({ $textCenter }) => ($textCenter ? "center" : "left")}; `; export const BorrowDetailItemBox = styled.div` @@ -113,3 +114,42 @@ export const BorrowDetailItemBox = styled.div` display: flex; gap: 1rem; `; + +export const StakingInfoExpanded = styled(BorrowDetailItem)``; + +export const StakingInfoExpandedHeader = styled(BorrowDetailItemText)` + margin-bottom: 1rem; +`; + +export const StakingInfoExpandedItem = styled.div` + width: 100%; + display: flex; + justify-content: space-between; + + span { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; + color: #aaaeaf; + } + + p { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: #303234; + } +`; + +export const StakingInfoExpandedDivider = styled.div` + width: 100%; + height: 1px; + + background: #f1f4f4; + + margin: 1rem 0; +`; + +export const StakingInfoExpandedCloseBox = styled.div` + width: 100%; + display: flex; + justify-content: center; + + margin-top: 2.9rem; +`; diff --git a/src/pages/Loan/Borrow.tsx b/src/pages/Loan/Borrow.tsx index a6456b40..5dcd9079 100644 --- a/src/pages/Loan/Borrow.tsx +++ b/src/pages/Loan/Borrow.tsx @@ -1,7 +1,9 @@ import { useEffect, useState } from "react"; -import { useNavigate } from "react-router-dom"; +import { useNavigate, useParams } from "react-router-dom"; -import { DDayChange } from "@/utils/dateChanger"; +import IcDoubleArrowsBottom from "@/assets/icons/Loan/ic_double_arrows_bottom.svg"; +import IcDoubleArrowsTop from "@/assets/icons/Loan/ic_double_arrows_top.svg"; +import { useNFTDetail } from "@/hooks/api/useNFTDetail"; import { BorrowCard, @@ -14,12 +16,22 @@ import { BorrowDetailWrapper, BorrowWrapper, NFTStatus, + StakingInfoExpanded, + StakingInfoExpandedCloseBox, + StakingInfoExpandedDivider, + StakingInfoExpandedHeader, + StakingInfoExpandedItem, } from "./Borrow.styled"; const tele = (window as any).Telegram.WebApp; +// ! Data is currently mocked const Borrow = () => { + const [isStakingExpanded, setIsStakingExpanded] = useState(false); const navigate = useNavigate(); + const { id } = useParams(); + + const { data } = useNFTDetail(Number(id)); useEffect(() => { if (tele) { @@ -35,10 +47,13 @@ const Borrow = () => { }; }, [navigate]); + const handleExpandStakingInfo = () => { + setIsStakingExpanded(!isStakingExpanded); + }; + return ( - {/* // to-do: change the image path */} Staking NFT @@ -61,6 +76,61 @@ const Borrow = () => { 50% + + {isStakingExpanded ? ( + + Staking info + + + Principal +

10,000 TON

+ + + + Nominator Pool +

DG Pool #1

+
+ + + Leveraged +

X1.0

+
+ + + Lockup period +

60 days

+
+ + + Unstakable date +

DD.MM.YY

+
+ + + Protocol Fees +

2%

+
+ + + Staking APR +

5%

+
+ + + Total Amount +

10,083 TON

+
+ + + arrows_top + + + ) : ( + + Staking info + arrows_bottom + + )} ); From 8c46f857fa53e32d3a4ee908c6fa1412f2363132 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 30 Jul 2024 15:35:39 +1000 Subject: [PATCH 038/105] wip: BorrowDetails screen init, ProgressBar component, DoubleArrows comp-t --- .../icons/Loan/ic_double_arrows_bottom.svg | 3 - .../icons/Loan/ic_double_arrows_top.svg | 3 - src/assets/icons/Loan/ic_exclude.svg | 3 + src/assets/icons/Loan/ic_ton_logo.svg | 11 ++ src/assets/icons/Loan/ic_trend_up.svg | 3 + src/components/common/Router.tsx | 12 +- src/components/loan/common/DoubleArrows.tsx | 23 +++ src/components/loan/common/ProgressBar.tsx | 91 +++++++++ src/pages/Loan/Borrow.styled.tsx.tsx | 141 ++++++++++++++ src/pages/Loan/BorrowDetails.tsx | 182 ++++++++++++++++++ ...Borrow.styled.tsx => NFTDetail.styled.tsx} | 4 +- src/pages/Loan/{Borrow.tsx => NFTDetail.tsx} | 32 +-- 12 files changed, 475 insertions(+), 33 deletions(-) delete mode 100644 src/assets/icons/Loan/ic_double_arrows_bottom.svg delete mode 100644 src/assets/icons/Loan/ic_double_arrows_top.svg create mode 100644 src/assets/icons/Loan/ic_exclude.svg create mode 100644 src/assets/icons/Loan/ic_ton_logo.svg create mode 100644 src/assets/icons/Loan/ic_trend_up.svg create mode 100644 src/components/loan/common/DoubleArrows.tsx create mode 100644 src/components/loan/common/ProgressBar.tsx create mode 100644 src/pages/Loan/Borrow.styled.tsx.tsx create mode 100644 src/pages/Loan/BorrowDetails.tsx rename src/pages/Loan/{Borrow.styled.tsx => NFTDetail.styled.tsx} (98%) rename src/pages/Loan/{Borrow.tsx => NFTDetail.tsx} (81%) diff --git a/src/assets/icons/Loan/ic_double_arrows_bottom.svg b/src/assets/icons/Loan/ic_double_arrows_bottom.svg deleted file mode 100644 index a0c03816..00000000 --- a/src/assets/icons/Loan/ic_double_arrows_bottom.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/src/assets/icons/Loan/ic_double_arrows_top.svg b/src/assets/icons/Loan/ic_double_arrows_top.svg deleted file mode 100644 index 5de0f46d..00000000 --- a/src/assets/icons/Loan/ic_double_arrows_top.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/src/assets/icons/Loan/ic_exclude.svg b/src/assets/icons/Loan/ic_exclude.svg new file mode 100644 index 00000000..7748b45d --- /dev/null +++ b/src/assets/icons/Loan/ic_exclude.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/assets/icons/Loan/ic_ton_logo.svg b/src/assets/icons/Loan/ic_ton_logo.svg new file mode 100644 index 00000000..8ace6a61 --- /dev/null +++ b/src/assets/icons/Loan/ic_ton_logo.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/assets/icons/Loan/ic_trend_up.svg b/src/assets/icons/Loan/ic_trend_up.svg new file mode 100644 index 00000000..25e83604 --- /dev/null +++ b/src/assets/icons/Loan/ic_trend_up.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index 34c66f74..0ec4a668 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -1,8 +1,9 @@ import { BrowserRouter, Route, Routes } from "react-router-dom"; import Dashboard from "@/pages/Dashboard/Dashboard"; -import Borrow from "@/pages/Loan/Borrow"; +import BorrowDetails from "@/pages/Loan/BorrowDetails"; import Loan from "@/pages/Loan/Loan"; +import NFTDetail from "@/pages/Loan/NFTDetail"; import RiskDisclosure from "@/pages/Loan/RiskDisclosure"; import Main from "@/pages/Main/Main"; import Menu from "@/pages/Menu/Menu"; @@ -33,9 +34,12 @@ const Router = () => { } /> } /> } /> - } /> - } /> - } /> + + } /> + } /> + } /> + } /> + } /> } /> }> diff --git a/src/components/loan/common/DoubleArrows.tsx b/src/components/loan/common/DoubleArrows.tsx new file mode 100644 index 00000000..a4a9b154 --- /dev/null +++ b/src/components/loan/common/DoubleArrows.tsx @@ -0,0 +1,23 @@ +export const DoubleArrows = ({ stroke, direction }: { stroke: string; direction: "up" | "down" }) => { + return direction === "up" ? ( + + + + ) : ( + + + + ); +}; diff --git a/src/components/loan/common/ProgressBar.tsx b/src/components/loan/common/ProgressBar.tsx new file mode 100644 index 00000000..bb84ea18 --- /dev/null +++ b/src/components/loan/common/ProgressBar.tsx @@ -0,0 +1,91 @@ +import React from "react"; +import styled from "styled-components"; + +const ProgressBarWrapper = styled.div` + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + width: 100%; +`; + +const StepsWrapper = styled.div` + display: flex; + align-items: start; + justify-content: space-between; + width: 100%; + margin: 2rem 0; +`; + +const Step = styled.div` + display: flex; + flex-direction: column; + align-items: center; + width: 33%; +`; + +const StepCircle = styled.div<{ active: boolean }>` + width: 30px; + height: 30px; + border-radius: 50%; + background-color: ${({ active }) => (active ? "#1F53FF" : "transparent")}; + color: ${({ active }) => (active ? "#FFF" : "#C6CACA")}; + display: flex; + align-items: center; + justify-content: center; + + text-align: center; + font-family: Montserrat; + font-size: 12px; + font-style: normal; + font-weight: 600; + line-height: 150%; /* 18px */ + letter-spacing: -0.12px; + + border: 1px solid ${({ active }) => (active ? "#1F53FF" : "#C6CACA")}; +`; + +const StepLabel = styled.div<{ active: boolean }>` + ${({ theme }) => theme.fonts.Nexton_Label_Small_2}; + margin-top: 0.6rem; + text-align: center; + color: ${({ active }) => (active ? "#000000" : "#A0A0A0")}; +`; + +const StepConnector = styled.div` + width: 100%; + height: 1px; + background-color: #c6caca; + position: relative; +`; + +const StepConnectorActive = styled(StepConnector)` + background-color: #0056ff; + z-index: 1; +`; + +const ProgressBar = ({ currentStep }) => { + const steps = [ + { label: "Check NFT details and Borrow information." }, + { label: "Checking Loan Protocol Risk" }, + { label: "Verify the information before loan approval." }, + ]; + + return ( + + + {steps.map((step, index) => ( + + {index > 0 && {index <= currentStep && }} + + {index + 1} + {index + 1 <= currentStep && {step.label}} + + + ))} + + + ); +}; + +export default ProgressBar; diff --git a/src/pages/Loan/Borrow.styled.tsx.tsx b/src/pages/Loan/Borrow.styled.tsx.tsx new file mode 100644 index 00000000..dfecf0eb --- /dev/null +++ b/src/pages/Loan/Borrow.styled.tsx.tsx @@ -0,0 +1,141 @@ +import { styled } from "styled-components"; + +import { StakingInfoExpandedCloseBox, StakingInfoExpandedDivider, StakingInfoExpandedItem } from "./NFTDetail.styled"; + +export const BorrowWrapper = styled.div` + position: relative; + display: flex; + flex-direction: column; + + width: 100%; + height: 100%; + + padding: 2.5rem 1.5rem; +`; + +export const BorrowHeaderBox = styled.div` + display: flex; + justify-content: space-between; + align-items: center; + + width: 100%; +`; + +export const BorrowHeaderBoxTitle = styled.div` + display: flex; + text-transform: capitalize; + + h1 { + color: #0f0f0f; + font-family: Montserrat; + font-size: 20px; + font-style: normal; + font-weight: 600; + line-height: 34px; + } +`; + +export const BorrowContentBox = styled.div` + display: flex; + flex-direction: column; + gap: 1.6rem; + margin-top: 2rem; +`; + +export const CollateralizingNFTInfo = styled.div` + width: 100%; + display: inline-flex; + padding: 1.5rem 2rem; + flex-direction: column; + align-items: "center"; + gap: 1.2rem; + + border-radius: 2rem; + background: #1a1b23; + + /* drop shadow_type 4 */ + box-shadow: 0px 0px 12px 0px rgba(206, 216, 225, 0.5); +`; + +export const CollateralizingNFTInfoHeader = styled.div` + width: 100%; + display: flex; + justify-content: start; + align-items: center; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: #fff; +`; + +export const CollateralizingNFTInfoItem = styled(StakingInfoExpandedItem)` + span { + color: #aaaeaf; + } + + p { + max-width: 50%; + color: #fff; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } +`; + +export const CollateralizingNFTInfoItemBox = styled.div` + display: flex; + flex: 1; + align-items: center; + justify-content: end; + gap: 0.6rem; +`; + +export const CollateralizingNFTInfoDivider = styled(StakingInfoExpandedDivider)``; + +export const CollateralizingNFTInfoItemBottom = styled(StakingInfoExpandedCloseBox)` + margin-top: 1.6rem; +`; + +export const ExcludeBox = styled.div` + display: flex; + width: 100%; + justify-content: center; + align-items: center; +`; + +export const BorrowRateBox = styled.div` + width: 100%; + display: flex; + flex-direction: column; +`; + +export const BorrowRateBoxHeader = styled.div` + display: flex; + justify-content: space-between; + align-items: center; + + background: #d9d9d9; + border-radius: 2rem 2rem 1rem 1rem; + + padding: 1.6rem 2.4rem; +`; + +export const BorrowRateBoxHeaderLeft = styled.h2` + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: #303234; +`; + +export const BorrowRateBoxHeaderRight = styled.div` + ${({ theme }) => theme.fonts.Nexton_Label_Small_2}; + color: #909394; +`; + +export const BorrowRateBoxBottom = styled.div` + ${({ theme }) => theme.fonts.Telegram_Title_3_1}; + display: flex; + justify-content: end; + align-items: center; + + background: #d9d9d9; + border-radius: 1rem 1rem 2rem 2rem; + + padding: 2.3rem 2.5rem 2.4rem; +`; diff --git a/src/pages/Loan/BorrowDetails.tsx b/src/pages/Loan/BorrowDetails.tsx new file mode 100644 index 00000000..6156f805 --- /dev/null +++ b/src/pages/Loan/BorrowDetails.tsx @@ -0,0 +1,182 @@ +import { useEffect, useState } from "react"; +import { useNavigate, useParams } from "react-router-dom"; + +import IcExclude from "@/assets/icons/Loan/ic_exclude.svg"; +import IcTonLogo from "@/assets/icons/Loan/ic_ton_logo.svg"; +import { DoubleArrows } from "@/components/loan/common/DoubleArrows.tsx"; +import ProgressBar from "@/components/loan/common/ProgressBar.tsx"; +import { useNFTDetail } from "@/hooks/api/useNFTDetail"; + +import { + BorrowContentBox, + BorrowHeaderBox, + BorrowHeaderBoxTitle, + BorrowRateBox, + BorrowRateBoxBottom, + BorrowRateBoxHeader, + BorrowRateBoxHeaderLeft, + BorrowRateBoxHeaderRight, + BorrowWrapper, + CollateralizingNFTInfo, + CollateralizingNFTInfoDivider, + CollateralizingNFTInfoHeader, + CollateralizingNFTInfoItem, + CollateralizingNFTInfoItemBottom, + CollateralizingNFTInfoItemBox, + ExcludeBox, +} from "./Borrow.styled.tsx.tsx"; + +const tele = (window as any).Telegram.WebApp; + +// ! Data is currently mocked +const BorrowDetails = () => { + const [isInfoExpanded, setIsInfoExpanded] = useState(false); + const navigate = useNavigate(); + const { id } = useParams(); + + const { data } = useNFTDetail(Number(id)); + + useEffect(() => { + if (tele) { + tele.ready(); + tele.BackButton.show(); + tele.onEvent("backButtonClicked", () => { + navigate(-1); + }); + } + + return () => { + tele.offEvent("backButtonClicked"); + }; + }, [navigate]); + + const handleExpandInfo = () => { + setIsInfoExpanded(!isInfoExpanded); + }; + + return ( + + + +

Loan

+
+
+ + + + + {isInfoExpanded ? ( + + Collateralizing NFT info + + + Token ID +

4817sddss863ddddwdwsdwd

+
+ + + Network + + + TON_logo +

TON

+
+
+ + + LTV +

50.0%

+
+ + + + Principal +

10,000 TON

+
+ + + Nominator Pool +

DG Pool #1

+
+ + + Leveraged +

X1.0

+
+ + + Lockup period +

60 days

+
+ + + Unstakable date +

DD.MM.YY

+
+ + + Protocol Fees +

2%

+
+ + + Staking APR +

5%

+
+ + + Total Amount +

10,083 TON

+
+ + + + +
+ ) : ( + + Collateralizing NFT info + + + Token ID +

4817sddss863ddddwdwsdwd

+
+ + + Network + + + TON_logo +

TON

+
+
+ + + LTV +

50.0%

+
+ + + + +
+ )} + + + exclude_icon + + + {/* // ! To be implemented */} + + + Borrow + 1NXT = n TON + + 000.00 nxTON + +
+
+ ); +}; + +export default BorrowDetails; diff --git a/src/pages/Loan/Borrow.styled.tsx b/src/pages/Loan/NFTDetail.styled.tsx similarity index 98% rename from src/pages/Loan/Borrow.styled.tsx rename to src/pages/Loan/NFTDetail.styled.tsx index 3779927c..682094d9 100644 --- a/src/pages/Loan/Borrow.styled.tsx +++ b/src/pages/Loan/NFTDetail.styled.tsx @@ -143,7 +143,7 @@ export const StakingInfoExpandedDivider = styled.div` background: #f1f4f4; - margin: 1rem 0; + margin: 0.9rem 0; `; export const StakingInfoExpandedCloseBox = styled.div` @@ -152,4 +152,6 @@ export const StakingInfoExpandedCloseBox = styled.div` justify-content: center; margin-top: 2.9rem; + + cursor: pointer; `; diff --git a/src/pages/Loan/Borrow.tsx b/src/pages/Loan/NFTDetail.tsx similarity index 81% rename from src/pages/Loan/Borrow.tsx rename to src/pages/Loan/NFTDetail.tsx index 5dcd9079..03b9a053 100644 --- a/src/pages/Loan/Borrow.tsx +++ b/src/pages/Loan/NFTDetail.tsx @@ -1,8 +1,8 @@ import { useEffect, useState } from "react"; import { useNavigate, useParams } from "react-router-dom"; -import IcDoubleArrowsBottom from "@/assets/icons/Loan/ic_double_arrows_bottom.svg"; -import IcDoubleArrowsTop from "@/assets/icons/Loan/ic_double_arrows_top.svg"; +import IcTrendUp from "@/assets/icons/Loan/ic_trend_up.svg"; +import { DoubleArrows } from "@/components/loan/common/DoubleArrows"; import { useNFTDetail } from "@/hooks/api/useNFTDetail"; import { @@ -21,12 +21,12 @@ import { StakingInfoExpandedDivider, StakingInfoExpandedHeader, StakingInfoExpandedItem, -} from "./Borrow.styled"; +} from "./NFTDetail.styled"; const tele = (window as any).Telegram.WebApp; // ! Data is currently mocked -const Borrow = () => { +const NFTDetail = () => { const [isStakingExpanded, setIsStakingExpanded] = useState(false); const navigate = useNavigate(); const { id } = useParams(); @@ -57,7 +57,9 @@ const Borrow = () => { Staking NFT - Borrow nxTON → + navigate(`/loan/${id}/borrow/details`)}> + Borrow nxTON trend_up + @@ -122,13 +124,13 @@ const Borrow = () => { - arrows_top + ) : ( Staking info - arrows_bottom + )} @@ -136,18 +138,4 @@ const Borrow = () => { ); }; -export default Borrow; - -{ - /* - {isOpenModal && } - - - Borrow NXT - - - - - Confirm - */ -} +export default NFTDetail; From ae22485fc05ebb23ceb63eb47c4abaee21ead9ff Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Wed, 31 Jul 2024 15:29:52 +1000 Subject: [PATCH 039/105] wip: ProgressBar component, RiskList component, BorrowDetails Page, BorrowRiskDisclosure Page & styles --- src/components/common/Modal/Modal.styled.tsx | 4 +- src/components/common/Router.tsx | 4 + src/components/loan/common/ProgressBar.tsx | 38 +++-- src/components/loan/common/RisksList.tsx | 159 +++++++++++++++++++ src/pages/Loan/Borrow.styled.tsx.tsx | 19 ++- src/pages/Loan/BorrowDetails.tsx | 11 +- src/pages/Loan/BorrowRiskDisclosure.tsx | 80 ++++++++++ src/pages/Loan/RiskDisclosure.tsx | 153 +----------------- 8 files changed, 292 insertions(+), 176 deletions(-) create mode 100644 src/components/loan/common/RisksList.tsx create mode 100644 src/pages/Loan/BorrowRiskDisclosure.tsx diff --git a/src/components/common/Modal/Modal.styled.tsx b/src/components/common/Modal/Modal.styled.tsx index ed5086ea..aee35064 100644 --- a/src/components/common/Modal/Modal.styled.tsx +++ b/src/components/common/Modal/Modal.styled.tsx @@ -57,9 +57,11 @@ export const OpenTonViewer = styled.button` cursor: pointer; `; -export const Title = styled.p<{ $isDark?: boolean }>` +export const Title = styled.p<{ $isDark?: boolean; $textCenter?: boolean }>` color: ${({ $isDark }) => ($isDark ? "#fff" : "#007aff")}; ${({ theme }) => theme.fonts.Nexton_Body_Text_Large_2} + + text-align: ${({ $textCenter }) => $textCenter && "center"}; `; export const SubTitleBox = styled.div<{ $marginBottom?: boolean }>` diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index 0ec4a668..816a9006 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -2,6 +2,8 @@ import { BrowserRouter, Route, Routes } from "react-router-dom"; import Dashboard from "@/pages/Dashboard/Dashboard"; import BorrowDetails from "@/pages/Loan/BorrowDetails"; +import BorrowRiskDisclosure from "@/pages/Loan/BorrowRiskDisclosure"; +import BorrowVerify from "@/pages/Loan/BorrowVerify"; import Loan from "@/pages/Loan/Loan"; import NFTDetail from "@/pages/Loan/NFTDetail"; import RiskDisclosure from "@/pages/Loan/RiskDisclosure"; @@ -39,6 +41,8 @@ const Router = () => { } /> } /> } /> + } /> + } /> } /> } /> diff --git a/src/components/loan/common/ProgressBar.tsx b/src/components/loan/common/ProgressBar.tsx index bb84ea18..c5ba00a9 100644 --- a/src/components/loan/common/ProgressBar.tsx +++ b/src/components/loan/common/ProgressBar.tsx @@ -10,11 +10,12 @@ const ProgressBarWrapper = styled.div` `; const StepsWrapper = styled.div` + position: relative; display: flex; align-items: start; justify-content: space-between; - width: 100%; - margin: 2rem 0; + width: 200px; + margin: 2rem 0 3.5rem 0; `; const Step = styled.div` @@ -25,6 +26,7 @@ const Step = styled.div` `; const StepCircle = styled.div<{ active: boolean }>` + position: relative; width: 30px; height: 30px; border-radius: 50%; @@ -45,23 +47,23 @@ const StepCircle = styled.div<{ active: boolean }>` border: 1px solid ${({ active }) => (active ? "#1F53FF" : "#C6CACA")}; `; -const StepLabel = styled.div<{ active: boolean }>` +const StepLabel = styled.div<{ position: "left" | "center" | "right" }>` + top: 3.5rem; + left: ${({ position }) => (position === "left" ? "-30%" : position === "center" ? "7.5%" : "50%")}; + position: absolute; + width: 175px; ${({ theme }) => theme.fonts.Nexton_Label_Small_2}; - margin-top: 0.6rem; text-align: center; - color: ${({ active }) => (active ? "#000000" : "#A0A0A0")}; + color: #5e6162; `; -const StepConnector = styled.div` +const StepConnector = styled.div<{ active: boolean }>` + position: relative; + top: 15px; width: 100%; height: 1px; - background-color: #c6caca; - position: relative; -`; - -const StepConnectorActive = styled(StepConnector)` - background-color: #0056ff; - z-index: 1; + border-bottom: 1px dashed ${({ active }) => (active ? "#0056ff" : "#C6CACA")}; + background-color: transparent; `; const ProgressBar = ({ currentStep }) => { @@ -71,15 +73,21 @@ const ProgressBar = ({ currentStep }) => { { label: "Verify the information before loan approval." }, ]; + const getStepPosition = currentStep => { + if (currentStep === 1) return "left"; + if (currentStep === steps.length) return "right"; + return "center"; + }; + return ( {steps.map((step, index) => ( - {index > 0 && {index <= currentStep && }} + {index > 0 && } {index + 1} - {index + 1 <= currentStep && {step.label}} + {index + 1 === currentStep && {step.label}} ))} diff --git a/src/components/loan/common/RisksList.tsx b/src/components/loan/common/RisksList.tsx new file mode 100644 index 00000000..161127d0 --- /dev/null +++ b/src/components/loan/common/RisksList.tsx @@ -0,0 +1,159 @@ +import { styled } from "styled-components"; + +const RisksList = () => { + return ( + + + + 1 + + + + + No Liquidation Risk Due to Collateral Ratio Changes + NFT Collateral + + Since $nxTON is issued using NFTs obtained by staking $TON as collateral, there is no risk of liquidation + due to changes in the value of the collateral. + + + + + + + 2 + + + + + Automatic Liquidation in Case of Default + Default + + If the loan repayment schedule is not followed, the automatic liquidation process will start. + +
+ + Additional Fees + + + Additional fees may be incurred during liquidation, which can increase the user's losses. + +
+
+ + + + 3 + + + + + Interest Rate Information + Interest Rate + + An annual interest rate of 2% applies. In addition to the loan principal, interest costs must also be + repaid. + + + + + + + 4 + + + + Other Considerations + Smart Contract Risk + Be aware of potential code defects and security vulnerabilities. +
+ + Liquidity Risk + + There may be a lack of liquidity in certain situations. +
+ + Regulatory Risk + + + Users must comply with applicable cryptocurrency and DeFi-related laws and regulations in their country. + +
+
+
+ ); +}; + +export default RisksList; + +const RiskDisclosureItemBox = styled.div` + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + + width: 100%; + margin-top: 3.9rem; +`; + +const RiskDisclosureItem = styled.div` + display: flex; + margin-bottom: 1rem; + + padding: 0 1.9rem 0 0.8rem; +`; + +const RiskDisclosureNumberBox = styled.div<{ $last?: boolean }>` + display: flex; + flex-direction: column; + justify-content: ${({ $last }) => ($last ? "start" : "center")}; + align-items: center; + + margin-right: 0.8rem; +`; + +const RiskDisclosureNumber = styled.div` + display: flex; + width: 27px; + height: 27px; + padding: 5px 11px; + flex-direction: column; + justify-content: center; + align-items: center; + gap: 10px; + flex-shrink: 0; + + ${({ theme }) => theme.fonts.Nexton_Body_Text_Small} + border-radius: 13.5px; + background: #303234; + color: #fff; +`; + +const RiskDisclosureNumberDivider = styled.div` + width: 1px; + height: 100%; + + margin-top: 0.2rem; + + border: 1px dashed #f1f4f4; +`; + +const RiskDisclosureContent = styled.div` + flex: 1; + margin-bottom: 4rem; +`; + +const RiskDisclosureSubtitle = styled.h2` + width: 70%; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: #303234; + + margin-bottom: 0.8rem; +`; + +const RiskDisclosureText = styled.p<{ $lead?: boolean; $marginTop?: boolean }>` + ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; + color: ${({ $lead }) => ($lead ? "#5E6162" : "#aaaeaf")}; + + ${({ $marginTop }) => $marginTop && "margin-top: 0.8rem;"} +`; diff --git a/src/pages/Loan/Borrow.styled.tsx.tsx b/src/pages/Loan/Borrow.styled.tsx.tsx index dfecf0eb..daa1b035 100644 --- a/src/pages/Loan/Borrow.styled.tsx.tsx +++ b/src/pages/Loan/Borrow.styled.tsx.tsx @@ -105,17 +105,25 @@ export const BorrowRateBox = styled.div` width: 100%; display: flex; flex-direction: column; + + padding: 1.6rem 2.4rem; + + border-radius: 2rem; + box-shadow: 0px 0px 12px 0px rgba(206, 216, 225, 0.5); `; export const BorrowRateBoxHeader = styled.div` display: flex; justify-content: space-between; align-items: center; +`; - background: #d9d9d9; - border-radius: 2rem 2rem 1rem 1rem; +export const BorrowRateBoxDivider = styled.div` + width: 100%; + height: 1px; + border-bottom: 1px dashed #f1f4f4; - padding: 1.6rem 2.4rem; + margin: 1.2rem 1.7rem 2.3rem 1.7rem; `; export const BorrowRateBoxHeaderLeft = styled.h2` @@ -133,9 +141,4 @@ export const BorrowRateBoxBottom = styled.div` display: flex; justify-content: end; align-items: center; - - background: #d9d9d9; - border-radius: 1rem 1rem 2rem 2rem; - - padding: 2.3rem 2.5rem 2.4rem; `; diff --git a/src/pages/Loan/BorrowDetails.tsx b/src/pages/Loan/BorrowDetails.tsx index 6156f805..8cbf2730 100644 --- a/src/pages/Loan/BorrowDetails.tsx +++ b/src/pages/Loan/BorrowDetails.tsx @@ -1,11 +1,13 @@ import { useEffect, useState } from "react"; import { useNavigate, useParams } from "react-router-dom"; +import { MainButton } from "@vkruglikov/react-telegram-web-app"; import IcExclude from "@/assets/icons/Loan/ic_exclude.svg"; import IcTonLogo from "@/assets/icons/Loan/ic_ton_logo.svg"; import { DoubleArrows } from "@/components/loan/common/DoubleArrows.tsx"; import ProgressBar from "@/components/loan/common/ProgressBar.tsx"; import { useNFTDetail } from "@/hooks/api/useNFTDetail"; +import { isDevMode } from "@/utils/isDevMode.ts"; import { BorrowContentBox, @@ -13,6 +15,7 @@ import { BorrowHeaderBoxTitle, BorrowRateBox, BorrowRateBoxBottom, + BorrowRateBoxDivider, BorrowRateBoxHeader, BorrowRateBoxHeaderLeft, BorrowRateBoxHeaderRight, @@ -166,15 +169,21 @@ const BorrowDetails = () => { exclude_icon - {/* // ! To be implemented */} Borrow 1NXT = n TON + 000.00 nxTON + + {!isDevMode ? ( + navigate(`/loan/${id}/borrow/risk-disclosure`)} /> + ) : ( + + )} ); }; diff --git a/src/pages/Loan/BorrowRiskDisclosure.tsx b/src/pages/Loan/BorrowRiskDisclosure.tsx new file mode 100644 index 00000000..d64d2052 --- /dev/null +++ b/src/pages/Loan/BorrowRiskDisclosure.tsx @@ -0,0 +1,80 @@ +import { useEffect } from "react"; +import { useNavigate, useParams } from "react-router-dom"; +import { MainButton } from "@vkruglikov/react-telegram-web-app"; +import { styled } from "styled-components"; + +import ProgressBar from "@/components/loan/common/ProgressBar.tsx"; +import RisksList from "@/components/loan/common/RisksList.tsx"; +import { isDevMode } from "@/utils/isDevMode.ts"; + +import { BorrowHeaderBox, BorrowHeaderBoxTitle, BorrowWrapper } from "./Borrow.styled.tsx"; + +const tele = (window as any).Telegram.WebApp; + +const BorrowRiskDisclosure = () => { + const navigate = useNavigate(); + const { id } = useParams(); + + useEffect(() => { + if (tele) { + tele.ready(); + tele.BackButton.show(); + tele.onEvent("backButtonClicked", () => { + navigate(-1); + }); + } + + return () => { + tele.offEvent("backButtonClicked"); + }; + }, [navigate]); + + return ( + + + +

Loan

+
+
+ + + + + Loan Protocol Risk Disclosure + + + + {!isDevMode ? ( + navigate(`/loan/${id}/borrow/verify`)} /> + ) : ( + + )} +
+ ); +}; + +export default BorrowRiskDisclosure; + +const BorrowContentBox = styled.div` + display: inline-flex; + padding: 13px 25px 37.5px 20px; + flex-direction: column; + align-items: center; + margin-top: 2rem; + + border-radius: 20px; + background: #fff; + + /* drop shadow_type 4 */ + box-shadow: 0px 0px 12px 0px rgba(206, 216, 225, 0.5); +`; + +const BorrowContentBoxTitle = styled.h2` + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: #303234; + + display: flex; + width: 100%; + justify-content: start; + align-items: center; +`; diff --git a/src/pages/Loan/RiskDisclosure.tsx b/src/pages/Loan/RiskDisclosure.tsx index ebda04be..1d8108d4 100644 --- a/src/pages/Loan/RiskDisclosure.tsx +++ b/src/pages/Loan/RiskDisclosure.tsx @@ -3,6 +3,7 @@ import { useNavigate } from "react-router-dom"; import { styled } from "styled-components"; import IcAlert from "@/assets/icons/Loan/ic_alert.svg"; +import RisksList from "@/components/loan/common/RisksList"; const tele = (window as any).Telegram.WebApp; @@ -32,85 +33,7 @@ const RiskDisclosure = () => {

Loan Protocol Risk Disclosure

- - - - 1 - - - - - No Liquidation Risk Due to Collateral Ratio Changes - NFT Collateral - - Since $nxTON is issued using NFTs obtained by staking $TON as collateral, there is no risk of liquidation - due to changes in the value of the collateral. - - - - - - - 2 - - - - - Automatic Liquidation in Case of Default - Default - - If the loan repayment schedule is not followed, the automatic liquidation process will start. - -
- - Additional Fees - - - Additional fees may be incurred during liquidation, which can increase the user's losses. - -
-
- - - - 3 - - - - - Interest Rate Information - Interest Rate - - An annual interest rate of 2% applies. In addition to the loan principal, interest costs must also be - repaid. - - - - - - - 4 - - - - Other Considerations - Smart Contract Risk - Be aware of potential code defects and security vulnerabilities. -
- - Liquidity Risk - - There may be a lack of liquidity in certain situations. -
- - Regulatory Risk - - - Users must comply with applicable cryptocurrency and DeFi-related laws and regulations in their country. - -
-
-
+ ); }; @@ -148,75 +71,3 @@ const RiskDisclosureTitleBox = styled.div` margin-top: 0.65rem; } `; - -const RiskDisclosureItemBox = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - - width: 100%; - margin-top: 3.9rem; -`; - -const RiskDisclosureItem = styled.div` - display: flex; - margin-bottom: 1rem; - - padding: 0 1.9rem 0 0.8rem; -`; - -const RiskDisclosureNumberBox = styled.div<{ $last?: boolean }>` - display: flex; - flex-direction: column; - justify-content: ${({ $last }) => ($last ? "start" : "center")}; - align-items: center; - - margin-right: 0.8rem; -`; - -const RiskDisclosureNumber = styled.div` - display: flex; - width: 27px; - height: 27px; - padding: 5px 11px; - flex-direction: column; - justify-content: center; - align-items: center; - gap: 10px; - flex-shrink: 0; - - ${({ theme }) => theme.fonts.Nexton_Body_Text_Small} - border-radius: 13.5px; - background: #303234; - color: #fff; -`; - -const RiskDisclosureNumberDivider = styled.div` - width: 1px; - height: 100%; - - margin-top: 0.2rem; - - border: 1px dashed #f1f4f4; -`; - -const RiskDisclosureContent = styled.div` - flex: 1; - margin-bottom: 4rem; -`; - -const RiskDisclosureSubtitle = styled.h2` - width: 70%; - ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; - color: #303234; - - margin-bottom: 0.8rem; -`; - -const RiskDisclosureText = styled.p<{ $lead?: boolean; $marginTop?: boolean }>` - ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; - color: ${({ $lead }) => ($lead ? "#5E6162" : "#aaaeaf")}; - - ${({ $marginTop }) => $marginTop && "margin-top: 0.8rem;"} -`; From 72ef21e316fe5f11760eb163db8cc67ce353c36c Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 1 Aug 2024 11:46:36 +1000 Subject: [PATCH 040/105] wip: added dark variant to basic modal comp-t, confirm borrow modal, progressBar optimisation, Borrow verify Page, NFTDetail styling rename --- src/components/common/Modal/BasicModal.tsx | 42 ++++--- .../loan/Borrow/ConfirmBorrowModal.tsx | 64 ++++++++++ src/components/loan/common/ProgressBar.tsx | 71 +++++------ src/pages/Loan/BorrowVerify.tsx | 117 ++++++++++++++++++ src/pages/Loan/NFTDetail.styled.tsx | 31 ++--- src/pages/Loan/NFTDetail.tsx | 85 +++++++------ 6 files changed, 294 insertions(+), 116 deletions(-) create mode 100644 src/components/loan/Borrow/ConfirmBorrowModal.tsx create mode 100644 src/pages/Loan/BorrowVerify.tsx diff --git a/src/components/common/Modal/BasicModal.tsx b/src/components/common/Modal/BasicModal.tsx index 6aab3abe..226494d9 100644 --- a/src/components/common/Modal/BasicModal.tsx +++ b/src/components/common/Modal/BasicModal.tsx @@ -21,57 +21,59 @@ interface BasicModalProps { type: string; toggleModal: () => void; onClose?: () => void; + isDark?: boolean; } +// todo: refactor this to reduce the code duplication function BasicModal(props: BasicModalProps) { - const { type, toggleModal, onClose } = props; + const { type, toggleModal, onClose, isDark } = props; const navigate = useNavigate(); const { address } = useTonConnect(); - const handleModalText = (type: string) => { + const handleModalText = (type: string, isDark?: boolean) => { switch (type) { case "stake": return ( <> - {MODAL_TEXT[type].title} + {MODAL_TEXT[type].title} - {MODAL_TEXT[type].desc} - {MODAL_TEXT[type].descBr} + {MODAL_TEXT[type].desc} + {MODAL_TEXT[type].descBr} ); case "loan": return ( <> - {MODAL_TEXT[type].title} + {MODAL_TEXT[type].title} - {MODAL_TEXT[type].desc} - {MODAL_TEXT[type].descBr} - {MODAL_TEXT[type].descBr2} + {MODAL_TEXT[type].desc} + {MODAL_TEXT[type].descBr} + {MODAL_TEXT[type].descBr2} ); case "unstaking": return ( <> - {MODAL_TEXT[type].title} - {MODAL_TEXT[type].titleBr} + {MODAL_TEXT[type].title} + {MODAL_TEXT[type].titleBr} - {MODAL_TEXT[type].desc} - {MODAL_TEXT[type].descBr} - {MODAL_TEXT[type].descBr2} + {MODAL_TEXT[type].desc} + {MODAL_TEXT[type].descBr} + {MODAL_TEXT[type].descBr2} ); case "claim": return ( <> - {MODAL_TEXT[type].title} + {MODAL_TEXT[type].title} - {MODAL_TEXT[type].desc} - {MODAL_TEXT[type].descBr} - {MODAL_TEXT[type].descBr2} + {MODAL_TEXT[type].desc} + {MODAL_TEXT[type].descBr} + {MODAL_TEXT[type].descBr2} ); @@ -82,7 +84,7 @@ function BasicModal(props: BasicModalProps) { return ( - + - {handleModalText(type)} + {handleModalText(type, isDark)} void; + onConfirm: () => void; +} + +export const ConfirmBorrowModal = (props: ConfirmBorrowModalProps) => { + const { onConfirm, toggleModal } = props; + + return ( + + + + Would you like to borrow $nxTON? + + + Please verify the loan + information accurately. + + + + + Not Now + + + Yes + + + + + ); +}; + +const ModalButtonWrapper = styled.div` + display: flex; + justify-content: center; + align-items: center; + gap: 1rem; + + width: 100%; +`; + +const ModalButton = styled.button<{ type: string }>` + display: flex; + justify-content: center; + align-items: center; + + width: 100%; + padding: 1.2rem 0; + + border: none; + border-radius: 1.4rem; + + background-color: ${({ type }) => (type === "no" ? "#FFF" : "#007AFF")}; + box-shadow: 0px 0px 20px 0px rgba(198, 197, 208, 0.3); + color: ${({ type }) => (type === "no" ? "#007AFF" : "#FFF")}; + ${({ theme }) => theme.fonts.Telegram_Medium_2}; + + cursor: pointer; +`; diff --git a/src/components/loan/common/ProgressBar.tsx b/src/components/loan/common/ProgressBar.tsx index c5ba00a9..04f50a63 100644 --- a/src/components/loan/common/ProgressBar.tsx +++ b/src/components/loan/common/ProgressBar.tsx @@ -1,6 +1,38 @@ import React from "react"; import styled from "styled-components"; +const ProgressBar = ({ currentStep }) => { + const steps = [ + { label: "Check NFT details and Borrow information." }, + { label: "Checking Loan Protocol Risk" }, + { label: "Verify the information before loan approval." }, + ]; + + const getStepPosition = currentStep => { + if (currentStep === 1) return "left"; + if (currentStep === steps.length) return "right"; + return "center"; + }; + + return ( + + + {steps.map((step, index) => ( + + {index > 0 && } + + {index + 1} + {index + 1 === currentStep && {step.label}} + + + ))} + + + ); +}; + +export default ProgressBar; + const ProgressBarWrapper = styled.div` display: flex; align-items: center; @@ -45,11 +77,12 @@ const StepCircle = styled.div<{ active: boolean }>` letter-spacing: -0.12px; border: 1px solid ${({ active }) => (active ? "#1F53FF" : "#C6CACA")}; + ${({ active }) => active && "outline: solid 4px rgba(31, 83, 255, 0.36)"}; `; const StepLabel = styled.div<{ position: "left" | "center" | "right" }>` top: 3.5rem; - left: ${({ position }) => (position === "left" ? "-30%" : position === "center" ? "7.5%" : "50%")}; + left: ${({ position }) => (position === "left" ? "-35%" : position === "center" ? "7.5%" : "50%")}; position: absolute; width: 175px; ${({ theme }) => theme.fonts.Nexton_Label_Small_2}; @@ -57,43 +90,11 @@ const StepLabel = styled.div<{ position: "left" | "center" | "right" }>` color: #5e6162; `; -const StepConnector = styled.div<{ active: boolean }>` +const StepConnector = styled.div` position: relative; top: 15px; width: 100%; height: 1px; - border-bottom: 1px dashed ${({ active }) => (active ? "#0056ff" : "#C6CACA")}; + border-bottom: 1px dashed #c6caca; background-color: transparent; `; - -const ProgressBar = ({ currentStep }) => { - const steps = [ - { label: "Check NFT details and Borrow information." }, - { label: "Checking Loan Protocol Risk" }, - { label: "Verify the information before loan approval." }, - ]; - - const getStepPosition = currentStep => { - if (currentStep === 1) return "left"; - if (currentStep === steps.length) return "right"; - return "center"; - }; - - return ( - - - {steps.map((step, index) => ( - - {index > 0 && } - - {index + 1} - {index + 1 === currentStep && {step.label}} - - - ))} - - - ); -}; - -export default ProgressBar; diff --git a/src/pages/Loan/BorrowVerify.tsx b/src/pages/Loan/BorrowVerify.tsx new file mode 100644 index 00000000..5b7eea7a --- /dev/null +++ b/src/pages/Loan/BorrowVerify.tsx @@ -0,0 +1,117 @@ +import { useEffect, useState } from "react"; +import { useNavigate, useParams } from "react-router-dom"; +import { MainButton } from "@vkruglikov/react-telegram-web-app"; + +import BasicModal from "@/components/common/Modal/BasicModal.tsx"; +import TransactionConfirmModal from "@/components/common/Modal/TransactionConfirmModal.tsx"; +import { ConfirmBorrowModal } from "@/components/loan/Borrow/ConfirmBorrowModal.tsx"; +import ProgressBar from "@/components/loan/common/ProgressBar.tsx"; +import { isDevMode } from "@/utils/isDevMode.ts"; + +import { BorrowHeaderBox, BorrowHeaderBoxTitle, BorrowWrapper } from "./Borrow.styled.tsx.tsx"; +import { + StakingInfoExpanded, + StakingInfoExpandedDivider, + StakingInfoExpandedHeader, + StakingInfoExpandedItem, +} from "./NFTDetail.styled.tsx"; + +const tele = (window as any).Telegram.WebApp; + +interface ModalState { + type: "borrow" | "confirmBorrow"; + toggled: boolean; +} + +// ! Data is currently mocked +const BorrowVerify = () => { + const navigate = useNavigate(); + const { id } = useParams(); + const [modal, setModal] = useState({ + type: "confirmBorrow", + toggled: false, + }); + + const toggleModal = () => { + setModal(prev => ({ + type: prev.type, + toggled: !prev.toggled, + })); + }; + + useEffect(() => { + if (tele) { + tele.ready(); + tele.BackButton.show(); + tele.onEvent("backButtonClicked", () => { + navigate(-1); + }); + } + + return () => { + tele.offEvent("backButtonClicked"); + }; + }, [navigate]); + + const handleBorrowConfirm = () => { + toggleModal(); + + console.log("Borrow confirmed!"); + + setModal({ type: "borrow", toggled: true }); + }; + + return ( + <> + + + +

Loan

+
+
+ + + + + Loan 01 + + + Borrowed nxTON +

000.00 nxTON

+
+ + + Principal +

00000 TON

+
+ + + LTV +

50.0%

+
+ + + Maturity date +

mm.dd.yy

+
+
+ + {!isDevMode ? ( + + ) : ( + + )} +
+ + {false && } + {modal.type === "confirmBorrow" && modal.toggled && ( + + )} + {modal.type === "borrow" && modal.toggled && ( + console.log("Borrowed!")} /> + )} + + ); +}; + +export default BorrowVerify; diff --git a/src/pages/Loan/NFTDetail.styled.tsx b/src/pages/Loan/NFTDetail.styled.tsx index 682094d9..7cff3dcf 100644 --- a/src/pages/Loan/NFTDetail.styled.tsx +++ b/src/pages/Loan/NFTDetail.styled.tsx @@ -1,6 +1,6 @@ import { styled } from "styled-components"; -export const BorrowWrapper = styled.div` +export const NFTDetailWrapper = styled.div` display: flex; flex-direction: column; justify-content: center; @@ -9,7 +9,7 @@ export const BorrowWrapper = styled.div` width: 100%; `; -export const BorrowCard = styled.div` +export const NFTDetailCard = styled.div` width: 100%; display: flex; @@ -24,20 +24,7 @@ export const BorrowCard = styled.div` box-shadow: 0px 4px 8.6px 0px rgba(206, 216, 225, 0.5); `; -export const NFTStatus = styled.div<{ type?: string }>` - width: 100%; - padding-top: 100%; - border-radius: 12px; - - background: ${({ type }) => - type === "ongoing" - ? `linear-gradient(217deg, rgba(61, 80, 255, 0.00) 9.1%, #C7CAE9 88.74%), url("./src/assets/image/Loan/OngoingNFTLarge.png") lightgray 50% / cover no-repeat;` - : type === "forthComing" - ? `linear-gradient(217deg, rgba(255, 93, 57, 0.00) 57.93%, #FF5D39 88.74%), url("./src/assets/image/Loan/ForthcomingNFTItem.png") lightgray 50% / cover no-repeat;` - : `linear-gradient(217deg, rgba(255, 255, 255, 0.00) 35.65%, #A4A4A4 88.74%), url("./src/assets/image/Loan/ExpiredNFTItem.png") lightgray 50% / cover no-repeat`}; -`; - -export const BorrowCardTitle = styled.h1` +export const NFTDetailCardTitle = styled.h1` color: #fff; text-align: center; align-self: stretch; @@ -45,7 +32,7 @@ export const BorrowCardTitle = styled.h1` ${({ theme }) => theme.fonts.Nexton_Title_Medium_2}; `; -export const BorrowCardButton = styled.button` +export const NFTDetailCardButton = styled.button` all: unset; width: 200px; @@ -63,7 +50,7 @@ export const BorrowCardButton = styled.button` color: #fff; `; -export const BorrowDetailWrapper = styled.div` +export const NFTDetailContentBox = styled.div` display: flex; flex-direction: column; justify-content: center; @@ -75,7 +62,7 @@ export const BorrowDetailWrapper = styled.div` gap: 1rem; `; -export const BorrowDetailItem = styled.div<{ $marginTop?: boolean; $itemsCenter?: boolean }>` +export const NFTDetailItem = styled.div<{ $marginTop?: boolean; $itemsCenter?: boolean }>` width: 100%; display: inline-flex; padding: 1.5rem 2rem; @@ -92,12 +79,12 @@ export const BorrowDetailItem = styled.div<{ $marginTop?: boolean; $itemsCenter? margin-top: ${({ $marginTop }) => ($marginTop ? "3.7rem" : "0")}; `; -export const BorrowDetailItemCaption = styled.span` +export const NFTDetailItemCaption = styled.span` ${({ theme }) => theme.fonts.Nexton_Label_Small}; color: rgba(170, 174, 175, 1); `; -export const BorrowDetailItemText = styled.p<{ $textCenter?: boolean }>` +export const NFTDetailItemText = styled.p<{ $textCenter?: boolean }>` width: 100%; ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; color: #303234; @@ -109,7 +96,7 @@ export const BorrowDetailItemText = styled.p<{ $textCenter?: boolean }>` text-align: ${({ $textCenter }) => ($textCenter ? "center" : "left")}; `; -export const BorrowDetailItemBox = styled.div` +export const NFTDetailItemBox = styled.div` width: 100%; display: flex; gap: 1rem; diff --git a/src/pages/Loan/NFTDetail.tsx b/src/pages/Loan/NFTDetail.tsx index 03b9a053..bd8b140e 100644 --- a/src/pages/Loan/NFTDetail.tsx +++ b/src/pages/Loan/NFTDetail.tsx @@ -2,20 +2,20 @@ import { useEffect, useState } from "react"; import { useNavigate, useParams } from "react-router-dom"; import IcTrendUp from "@/assets/icons/Loan/ic_trend_up.svg"; +import OngoingNFTLarge from "@/assets/image/Loan/OngoingNFTLarge.png"; import { DoubleArrows } from "@/components/loan/common/DoubleArrows"; import { useNFTDetail } from "@/hooks/api/useNFTDetail"; import { - BorrowCard, - BorrowCardButton, - BorrowCardTitle, - BorrowDetailItem, - BorrowDetailItemBox, - BorrowDetailItemCaption, - BorrowDetailItemText, - BorrowDetailWrapper, - BorrowWrapper, - NFTStatus, + NFTDetailCard, + NFTDetailCardButton, + NFTDetailCardTitle, + NFTDetailContentBox, + NFTDetailItem, + NFTDetailItemBox, + NFTDetailItemCaption, + NFTDetailItemText, + NFTDetailWrapper, StakingInfoExpanded, StakingInfoExpandedCloseBox, StakingInfoExpandedDivider, @@ -52,32 +52,39 @@ const NFTDetail = () => { }; return ( - - - + + + {/* NFTs are currently hardcoded to be ongoing. This should be changed to a dynamic value. */} + {true === "ongoing" ? ( + nft + ) : false === "forthComing" ? ( + nft + ) : ( + nft + )} - Staking NFT - navigate(`/loan/${id}/borrow/details`)}> + Staking NFT + navigate(`/loan/${id}/borrow/details`)}> Borrow nxTON trend_up - - - - - - Token ID - 542394817863ddddddddd - - - - - Network - TON - - - LTV - 50% - - + + + + + + Token ID + 542394817863ddddddddd + + + + + Network + TON + + + LTV + 50% + + {isStakingExpanded ? ( @@ -128,13 +135,13 @@ const NFTDetail = () => { ) : ( - - Staking info + + Staking info - + )} - - + + ); }; From c853bb382c0ca82b78a270459de9e1f953ec5bc8 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 2 Aug 2024 11:31:52 +1000 Subject: [PATCH 041/105] wip: preview preparation --- src/assets/image/Loan/ExpiredNFTLarge.png | Bin 0 -> 23289 bytes src/assets/image/Loan/ForthcomingNFTLarge.png | Bin 0 -> 30537 bytes src/components/common/Router.tsx | 8 +- src/components/loan/Borrow/BorrowList.tsx | 1 + src/components/loan/common/StakingInfo.tsx | 158 +++++++++++++++ .../BorrowDetails.styled.tsx} | 22 -- src/pages/Loan/Borrow/BorrowDetails.tsx | 107 ++++++++++ .../{ => Borrow}/BorrowRiskDisclosure.tsx | 2 +- src/pages/Loan/{ => Borrow}/BorrowVerify.tsx | 42 ++-- .../Loan/{ => Borrow}/NFTDetail.styled.tsx | 41 +--- src/pages/Loan/Borrow/NFTDetail.tsx | 90 +++++++++ src/pages/Loan/BorrowDetails.tsx | 191 ------------------ src/pages/Loan/NFTDetail.tsx | 148 -------------- 13 files changed, 374 insertions(+), 436 deletions(-) create mode 100644 src/assets/image/Loan/ExpiredNFTLarge.png create mode 100644 src/assets/image/Loan/ForthcomingNFTLarge.png create mode 100644 src/components/loan/common/StakingInfo.tsx rename src/pages/Loan/{Borrow.styled.tsx.tsx => Borrow/BorrowDetails.styled.tsx} (81%) create mode 100644 src/pages/Loan/Borrow/BorrowDetails.tsx rename src/pages/Loan/{ => Borrow}/BorrowRiskDisclosure.tsx (98%) rename src/pages/Loan/{ => Borrow}/BorrowVerify.tsx (69%) rename src/pages/Loan/{ => Borrow}/NFTDetail.styled.tsx (74%) create mode 100644 src/pages/Loan/Borrow/NFTDetail.tsx delete mode 100644 src/pages/Loan/BorrowDetails.tsx delete mode 100644 src/pages/Loan/NFTDetail.tsx diff --git a/src/assets/image/Loan/ExpiredNFTLarge.png b/src/assets/image/Loan/ExpiredNFTLarge.png new file mode 100644 index 0000000000000000000000000000000000000000..40e3fa48ecf672e7d7fa230c768bc99c909c1a36 GIT binary patch literal 23289 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 cZ$rEM|IoL*K-HAnKL7v#07*qoM6N<$g2;Pb!T { const { address } = useTonConnect(); const { nftList } = useStakeInfo(address); diff --git a/src/components/loan/common/StakingInfo.tsx b/src/components/loan/common/StakingInfo.tsx new file mode 100644 index 00000000..222ea36d --- /dev/null +++ b/src/components/loan/common/StakingInfo.tsx @@ -0,0 +1,158 @@ +import { useState } from "react"; +import { styled } from "styled-components"; + +import IcTonLogo from "@/assets/icons/Loan/ic_ton_logo.svg"; + +import { DoubleArrows } from "./DoubleArrows"; + +type Theme = "black" | "white"; + +interface StakingInfoProps { + isExpandable: boolean; + theme: Theme; + title: string; + stakingInfoItems: { label: string; value: string }[]; + alwaysVisibleItems?: { label: string; value: string }[]; +} + +const StakingInfo = ({ isExpandable, theme, title, stakingInfoItems, alwaysVisibleItems }: StakingInfoProps) => { + const [isExpanded, setExpanded] = useState(false); + const arrowsTheme = theme === "black" ? "white" : "black"; + + const handleExpandInfo = () => { + setExpanded(!isExpanded); + }; + + return ( + + + {title} + + {alwaysVisibleItems && + alwaysVisibleItems.length > 0 && + alwaysVisibleItems.map((item, index) => ( + <> + + {item.label} + {item.label === "Network" ? ( + + TON_logo +

{item.value}

+
+ ) : ( +

{item.value}

+ )} +
+ {index < alwaysVisibleItems.length - 1 && } + + ))} + {alwaysVisibleItems && alwaysVisibleItems.length > 0 && isExpanded && } + + {isExpandable && !isExpanded && ( + + + + )} + {(!isExpandable || isExpanded) && stakingInfoItems && stakingInfoItems.length > 0 && ( + <> + {stakingInfoItems.map((item, index) => ( + <> + + {item.label} +

{item.value}

+
+ {index < stakingInfoItems.length - 1 && } + + ))} + {isExpandable && ( + + + + )} + + )} +
+ ); +}; + +export default StakingInfo; + +const StakingInfoWrapper = styled.div<{ $theme: Theme; $marginTop?: boolean; $itemsCenter?: boolean }>` + width: 100%; + display: inline-flex; + padding: 1.5rem 2rem; + flex-direction: column; + align-items: ${({ $itemsCenter }) => ($itemsCenter ? "center" : "flex-start")}; + gap: 0.3rem; + + border-radius: 2rem; + background: ${({ $theme }) => ($theme === "black" ? "#1a1b23" : "#fff")}; + + /* drop shadow_type 4 */ + box-shadow: 0px 0px 12px 0px rgba(206, 216, 225, 0.5); +`; + +const StakingInfoHeaderText = styled.p<{ $theme: Theme; $textCenter?: boolean }>` + width: 100%; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: ${({ $theme }) => ($theme === "black" ? "#fff" : "#303234")}; + + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + + text-align: ${({ $textCenter }) => ($textCenter ? "center" : "left")}; + + margin-bottom: 1rem; +`; + +const StakingInfoItem = styled.div<{ $theme: Theme }>` + width: 100%; + display: flex; + justify-content: space-between; + + span { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; + color: #aaaeaf; + } + + p { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: ${({ $theme }) => ($theme === "black" ? "#fff" : "#303234")}; + max-width: 50%; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } +`; + +const StakingInfoDivider = styled.div` + width: 100%; + height: 1px; + + background: #f1f4f4; + + margin: 0.9rem 0; +`; + +const StakingInfoBottomBox = styled.div<{ $marginTop?: boolean }>` + width: 100%; + display: flex; + justify-content: center; + + margin-top: ${({ $marginTop }) => ($marginTop ? "2.9rem" : "0")}; + + cursor: pointer; +`; + +const NetworkValueBox = styled.div` + display: flex; + flex: 1; + align-items: center; + justify-content: end; + gap: 0.6rem; +`; diff --git a/src/pages/Loan/Borrow.styled.tsx.tsx b/src/pages/Loan/Borrow/BorrowDetails.styled.tsx similarity index 81% rename from src/pages/Loan/Borrow.styled.tsx.tsx rename to src/pages/Loan/Borrow/BorrowDetails.styled.tsx index daa1b035..be51a534 100644 --- a/src/pages/Loan/Borrow.styled.tsx.tsx +++ b/src/pages/Loan/Borrow/BorrowDetails.styled.tsx @@ -1,7 +1,5 @@ import { styled } from "styled-components"; -import { StakingInfoExpandedCloseBox, StakingInfoExpandedDivider, StakingInfoExpandedItem } from "./NFTDetail.styled"; - export const BorrowWrapper = styled.div` position: relative; display: flex; @@ -66,20 +64,6 @@ export const CollateralizingNFTInfoHeader = styled.div` color: #fff; `; -export const CollateralizingNFTInfoItem = styled(StakingInfoExpandedItem)` - span { - color: #aaaeaf; - } - - p { - max-width: 50%; - color: #fff; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - } -`; - export const CollateralizingNFTInfoItemBox = styled.div` display: flex; flex: 1; @@ -88,12 +72,6 @@ export const CollateralizingNFTInfoItemBox = styled.div` gap: 0.6rem; `; -export const CollateralizingNFTInfoDivider = styled(StakingInfoExpandedDivider)``; - -export const CollateralizingNFTInfoItemBottom = styled(StakingInfoExpandedCloseBox)` - margin-top: 1.6rem; -`; - export const ExcludeBox = styled.div` display: flex; width: 100%; diff --git a/src/pages/Loan/Borrow/BorrowDetails.tsx b/src/pages/Loan/Borrow/BorrowDetails.tsx new file mode 100644 index 00000000..07085c62 --- /dev/null +++ b/src/pages/Loan/Borrow/BorrowDetails.tsx @@ -0,0 +1,107 @@ +import { useEffect } from "react"; +import { useNavigate, useParams } from "react-router-dom"; +import { MainButton } from "@vkruglikov/react-telegram-web-app"; + +import IcExclude from "@/assets/icons/Loan/ic_exclude.svg"; +import ProgressBar from "@/components/loan/common/ProgressBar.tsx"; +import StakingInfo from "@/components/loan/common/StakingInfo.tsx"; +import { useNFTDetail } from "@/hooks/api/useNFTDetail"; +import { isDevMode } from "@/utils/isDevMode.ts"; + +import { + BorrowContentBox, + BorrowHeaderBox, + BorrowHeaderBoxTitle, + BorrowRateBox, + BorrowRateBoxBottom, + BorrowRateBoxDivider, + BorrowRateBoxHeader, + BorrowRateBoxHeaderLeft, + BorrowRateBoxHeaderRight, + BorrowWrapper, + ExcludeBox, +} from "./BorrowDetails.styled.tsx"; + +const tele = (window as any).Telegram.WebApp; + +const alwaysVisibleItems = [ + { label: "Token ID", value: "4817sddss863ddddwdwsdwd" }, + { label: "Network", value: "TON" }, + { label: "LTV", value: "50.0%" }, +]; + +const stakingInfoItems = [ + { label: "Principal", value: "10,000 TON" }, + { label: "Nominator Pool", value: "DG Pool #1" }, + { label: "Leveraged", value: "X1.0" }, + { label: "Lockup period", value: "60 days" }, + { label: "Unstakable date", value: "DD.MM.YY" }, + { label: "Protocol Fees", value: "2%" }, + { label: "Staking APR", value: "5%" }, + { label: "Total Amount", value: "10,083 TON" }, +]; + +// ! Data is currently mocked +const BorrowDetails = () => { + const navigate = useNavigate(); + const { id } = useParams(); + + const { data } = useNFTDetail(Number(id)); + + useEffect(() => { + if (tele) { + tele.ready(); + tele.BackButton.show(); + tele.onEvent("backButtonClicked", () => { + navigate(-1); + }); + } + + return () => { + tele.offEvent("backButtonClicked"); + }; + }, [navigate]); + + return ( + + + +

Loan

+
+
+ + + + + + + + exclude_icon + + + + + Borrow + 1NXT = n TON + + + 000.00 nxTON + + + + {!isDevMode ? ( + navigate(`/loan/${id}/borrow/risk-disclosure`)} /> + ) : ( + + )} +
+ ); +}; + +export default BorrowDetails; diff --git a/src/pages/Loan/BorrowRiskDisclosure.tsx b/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx similarity index 98% rename from src/pages/Loan/BorrowRiskDisclosure.tsx rename to src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx index d64d2052..c76e0b85 100644 --- a/src/pages/Loan/BorrowRiskDisclosure.tsx +++ b/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx @@ -7,7 +7,7 @@ import ProgressBar from "@/components/loan/common/ProgressBar.tsx"; import RisksList from "@/components/loan/common/RisksList.tsx"; import { isDevMode } from "@/utils/isDevMode.ts"; -import { BorrowHeaderBox, BorrowHeaderBoxTitle, BorrowWrapper } from "./Borrow.styled.tsx"; +import { BorrowHeaderBox, BorrowHeaderBoxTitle, BorrowWrapper } from "./BorrowDetails.styled.tsx"; const tele = (window as any).Telegram.WebApp; diff --git a/src/pages/Loan/BorrowVerify.tsx b/src/pages/Loan/Borrow/BorrowVerify.tsx similarity index 69% rename from src/pages/Loan/BorrowVerify.tsx rename to src/pages/Loan/Borrow/BorrowVerify.tsx index 5b7eea7a..11f40c65 100644 --- a/src/pages/Loan/BorrowVerify.tsx +++ b/src/pages/Loan/Borrow/BorrowVerify.tsx @@ -6,15 +6,10 @@ import BasicModal from "@/components/common/Modal/BasicModal.tsx"; import TransactionConfirmModal from "@/components/common/Modal/TransactionConfirmModal.tsx"; import { ConfirmBorrowModal } from "@/components/loan/Borrow/ConfirmBorrowModal.tsx"; import ProgressBar from "@/components/loan/common/ProgressBar.tsx"; +import StakingInfo from "@/components/loan/common/StakingInfo.tsx"; import { isDevMode } from "@/utils/isDevMode.ts"; -import { BorrowHeaderBox, BorrowHeaderBoxTitle, BorrowWrapper } from "./Borrow.styled.tsx.tsx"; -import { - StakingInfoExpanded, - StakingInfoExpandedDivider, - StakingInfoExpandedHeader, - StakingInfoExpandedItem, -} from "./NFTDetail.styled.tsx"; +import { BorrowHeaderBox, BorrowHeaderBoxTitle, BorrowWrapper } from "./BorrowDetails.styled.tsx"; const tele = (window as any).Telegram.WebApp; @@ -23,6 +18,13 @@ interface ModalState { toggled: boolean; } +const stakingInfoItems = [ + { label: "Borrowed nxTON", value: "000.00 nxTON" }, + { label: "Principal", value: "00000 TON" }, + { label: "LTV", value: "50.0%" }, + { label: "Maturity date", value: "mm.dd.yy" }, +]; + // ! Data is currently mocked const BorrowVerify = () => { const navigate = useNavigate(); @@ -72,29 +74,9 @@ const BorrowVerify = () => { - - Loan 01 - - - Borrowed nxTON -

000.00 nxTON

-
- - - Principal -

00000 TON

-
- - - LTV -

50.0%

-
- - - Maturity date -

mm.dd.yy

-
-
+
+ +
{!isDevMode ? ( diff --git a/src/pages/Loan/NFTDetail.styled.tsx b/src/pages/Loan/Borrow/NFTDetail.styled.tsx similarity index 74% rename from src/pages/Loan/NFTDetail.styled.tsx rename to src/pages/Loan/Borrow/NFTDetail.styled.tsx index 7cff3dcf..7b2c3e04 100644 --- a/src/pages/Loan/NFTDetail.styled.tsx +++ b/src/pages/Loan/Borrow/NFTDetail.styled.tsx @@ -100,45 +100,6 @@ export const NFTDetailItemBox = styled.div` width: 100%; display: flex; gap: 1rem; -`; - -export const StakingInfoExpanded = styled(BorrowDetailItem)``; - -export const StakingInfoExpandedHeader = styled(BorrowDetailItemText)` - margin-bottom: 1rem; -`; -export const StakingInfoExpandedItem = styled.div` - width: 100%; - display: flex; - justify-content: space-between; - - span { - ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; - color: #aaaeaf; - } - - p { - ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; - color: #303234; - } -`; - -export const StakingInfoExpandedDivider = styled.div` - width: 100%; - height: 1px; - - background: #f1f4f4; - - margin: 0.9rem 0; -`; - -export const StakingInfoExpandedCloseBox = styled.div` - width: 100%; - display: flex; - justify-content: center; - - margin-top: 2.9rem; - - cursor: pointer; + margin-bottom: 3.7rem; `; diff --git a/src/pages/Loan/Borrow/NFTDetail.tsx b/src/pages/Loan/Borrow/NFTDetail.tsx new file mode 100644 index 00000000..a9f284cc --- /dev/null +++ b/src/pages/Loan/Borrow/NFTDetail.tsx @@ -0,0 +1,90 @@ +import { useEffect } from "react"; +import { useNavigate, useParams } from "react-router-dom"; + +import IcTrendUp from "@/assets/icons/Loan/ic_trend_up.svg"; +import OngoingNFTLarge from "@/assets/image/Loan/OngoingNFTLarge.png"; +import StakingInfo from "@/components/loan/common/StakingInfo"; +import { useNFTDetail } from "@/hooks/api/useNFTDetail"; + +import { + NFTDetailCard, + NFTDetailCardButton, + NFTDetailCardTitle, + NFTDetailContentBox, + NFTDetailItem, + NFTDetailItemBox, + NFTDetailItemCaption, + NFTDetailItemText, + NFTDetailWrapper, +} from "./NFTDetail.styled"; + +const tele = (window as any).Telegram.WebApp; + +const stakingInfoItems = [ + { label: "Principal", value: "10,000 TON" }, + { label: "Nominator Pool", value: "DG Pool #1" }, + { label: "Leveraged", value: "X1.0" }, + { label: "Lockup period", value: "60 days" }, + { label: "Unstakable date", value: "DD.MM.YY" }, + { label: "Protocol Fees", value: "2%" }, + { label: "Staking APR", value: "5%" }, + { label: "Total Amount", value: "10,083 TON" }, +]; + +// ! Data is currently mocked +const NFTDetail = () => { + const navigate = useNavigate(); + const { id } = useParams(); + + const { data } = useNFTDetail(Number(id)); + + useEffect(() => { + if (tele) { + tele.ready(); + tele.BackButton.show(); + tele.onEvent("backButtonClicked", () => { + navigate("/loan"); + }); + } + + return () => { + tele.offEvent("backButtonClicked"); + }; + }, [navigate]); + + return ( + + + {/* NFTs are currently hardcoded to be ongoing. This should be changed to a dynamic value. */} + ongoing_nft + + Staking NFT + navigate(`/loan/${id}/borrow/details`)}> + Borrow nxTON trend_up + + + + + + Token ID + 542394817863ddddddddd + + + + + Network + TON + + + LTV + 50% + + + + + + + ); +}; + +export default NFTDetail; diff --git a/src/pages/Loan/BorrowDetails.tsx b/src/pages/Loan/BorrowDetails.tsx deleted file mode 100644 index 8cbf2730..00000000 --- a/src/pages/Loan/BorrowDetails.tsx +++ /dev/null @@ -1,191 +0,0 @@ -import { useEffect, useState } from "react"; -import { useNavigate, useParams } from "react-router-dom"; -import { MainButton } from "@vkruglikov/react-telegram-web-app"; - -import IcExclude from "@/assets/icons/Loan/ic_exclude.svg"; -import IcTonLogo from "@/assets/icons/Loan/ic_ton_logo.svg"; -import { DoubleArrows } from "@/components/loan/common/DoubleArrows.tsx"; -import ProgressBar from "@/components/loan/common/ProgressBar.tsx"; -import { useNFTDetail } from "@/hooks/api/useNFTDetail"; -import { isDevMode } from "@/utils/isDevMode.ts"; - -import { - BorrowContentBox, - BorrowHeaderBox, - BorrowHeaderBoxTitle, - BorrowRateBox, - BorrowRateBoxBottom, - BorrowRateBoxDivider, - BorrowRateBoxHeader, - BorrowRateBoxHeaderLeft, - BorrowRateBoxHeaderRight, - BorrowWrapper, - CollateralizingNFTInfo, - CollateralizingNFTInfoDivider, - CollateralizingNFTInfoHeader, - CollateralizingNFTInfoItem, - CollateralizingNFTInfoItemBottom, - CollateralizingNFTInfoItemBox, - ExcludeBox, -} from "./Borrow.styled.tsx.tsx"; - -const tele = (window as any).Telegram.WebApp; - -// ! Data is currently mocked -const BorrowDetails = () => { - const [isInfoExpanded, setIsInfoExpanded] = useState(false); - const navigate = useNavigate(); - const { id } = useParams(); - - const { data } = useNFTDetail(Number(id)); - - useEffect(() => { - if (tele) { - tele.ready(); - tele.BackButton.show(); - tele.onEvent("backButtonClicked", () => { - navigate(-1); - }); - } - - return () => { - tele.offEvent("backButtonClicked"); - }; - }, [navigate]); - - const handleExpandInfo = () => { - setIsInfoExpanded(!isInfoExpanded); - }; - - return ( - - - -

Loan

-
-
- - - - - {isInfoExpanded ? ( - - Collateralizing NFT info - - - Token ID -

4817sddss863ddddwdwsdwd

-
- - - Network - - - TON_logo -

TON

-
-
- - - LTV -

50.0%

-
- - - - Principal -

10,000 TON

-
- - - Nominator Pool -

DG Pool #1

-
- - - Leveraged -

X1.0

-
- - - Lockup period -

60 days

-
- - - Unstakable date -

DD.MM.YY

-
- - - Protocol Fees -

2%

-
- - - Staking APR -

5%

-
- - - Total Amount -

10,083 TON

-
- - - - -
- ) : ( - - Collateralizing NFT info - - - Token ID -

4817sddss863ddddwdwsdwd

-
- - - Network - - - TON_logo -

TON

-
-
- - - LTV -

50.0%

-
- - - - -
- )} - - - exclude_icon - - - - - Borrow - 1NXT = n TON - - - 000.00 nxTON - -
- - {!isDevMode ? ( - navigate(`/loan/${id}/borrow/risk-disclosure`)} /> - ) : ( - - )} -
- ); -}; - -export default BorrowDetails; diff --git a/src/pages/Loan/NFTDetail.tsx b/src/pages/Loan/NFTDetail.tsx deleted file mode 100644 index bd8b140e..00000000 --- a/src/pages/Loan/NFTDetail.tsx +++ /dev/null @@ -1,148 +0,0 @@ -import { useEffect, useState } from "react"; -import { useNavigate, useParams } from "react-router-dom"; - -import IcTrendUp from "@/assets/icons/Loan/ic_trend_up.svg"; -import OngoingNFTLarge from "@/assets/image/Loan/OngoingNFTLarge.png"; -import { DoubleArrows } from "@/components/loan/common/DoubleArrows"; -import { useNFTDetail } from "@/hooks/api/useNFTDetail"; - -import { - NFTDetailCard, - NFTDetailCardButton, - NFTDetailCardTitle, - NFTDetailContentBox, - NFTDetailItem, - NFTDetailItemBox, - NFTDetailItemCaption, - NFTDetailItemText, - NFTDetailWrapper, - StakingInfoExpanded, - StakingInfoExpandedCloseBox, - StakingInfoExpandedDivider, - StakingInfoExpandedHeader, - StakingInfoExpandedItem, -} from "./NFTDetail.styled"; - -const tele = (window as any).Telegram.WebApp; - -// ! Data is currently mocked -const NFTDetail = () => { - const [isStakingExpanded, setIsStakingExpanded] = useState(false); - const navigate = useNavigate(); - const { id } = useParams(); - - const { data } = useNFTDetail(Number(id)); - - useEffect(() => { - if (tele) { - tele.ready(); - tele.BackButton.show(); - tele.onEvent("backButtonClicked", () => { - navigate("/loan"); - }); - } - - return () => { - tele.offEvent("backButtonClicked"); - }; - }, [navigate]); - - const handleExpandStakingInfo = () => { - setIsStakingExpanded(!isStakingExpanded); - }; - - return ( - - - {/* NFTs are currently hardcoded to be ongoing. This should be changed to a dynamic value. */} - {true === "ongoing" ? ( - nft - ) : false === "forthComing" ? ( - nft - ) : ( - nft - )} - - Staking NFT - navigate(`/loan/${id}/borrow/details`)}> - Borrow nxTON trend_up - - - - - - Token ID - 542394817863ddddddddd - - - - - Network - TON - - - LTV - 50% - - - - {isStakingExpanded ? ( - - Staking info - - - Principal -

10,000 TON

-
- - - Nominator Pool -

DG Pool #1

-
- - - Leveraged -

X1.0

-
- - - Lockup period -

60 days

-
- - - Unstakable date -

DD.MM.YY

-
- - - Protocol Fees -

2%

-
- - - Staking APR -

5%

-
- - - Total Amount -

10,083 TON

-
- - - - -
- ) : ( - - Staking info - - - )} -
-
- ); -}; - -export default NFTDetail; From 4c4bc2f9b88b04062887eda8b404a1c704b60ad6 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 2 Aug 2024 12:10:00 +1000 Subject: [PATCH 042/105] fix: TS errors --- src/pages/Loan/Borrow/BorrowDetails.tsx | 2 +- src/pages/Loan/Borrow/NFTDetail.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/Loan/Borrow/BorrowDetails.tsx b/src/pages/Loan/Borrow/BorrowDetails.tsx index 07085c62..e9f4e960 100644 --- a/src/pages/Loan/Borrow/BorrowDetails.tsx +++ b/src/pages/Loan/Borrow/BorrowDetails.tsx @@ -46,7 +46,7 @@ const BorrowDetails = () => { const navigate = useNavigate(); const { id } = useParams(); - const { data } = useNFTDetail(Number(id)); + // const { nftDetail } = useNFTDetail(Number(id)); useEffect(() => { if (tele) { diff --git a/src/pages/Loan/Borrow/NFTDetail.tsx b/src/pages/Loan/Borrow/NFTDetail.tsx index a9f284cc..a7e1fcb7 100644 --- a/src/pages/Loan/Borrow/NFTDetail.tsx +++ b/src/pages/Loan/Borrow/NFTDetail.tsx @@ -36,7 +36,7 @@ const NFTDetail = () => { const navigate = useNavigate(); const { id } = useParams(); - const { data } = useNFTDetail(Number(id)); + // const { nftDetail } = useNFTDetail(Number(id)); useEffect(() => { if (tele) { From c91d8e2b1d955ad54e9bf6a41bbe7afbb8e27330 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 2 Aug 2024 17:15:32 +1000 Subject: [PATCH 043/105] wip: added Borrow Action Card to the Main screen --- src/components/main/ActionCards.tsx | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/src/components/main/ActionCards.tsx b/src/components/main/ActionCards.tsx index 25339436..831560f0 100644 --- a/src/components/main/ActionCards.tsx +++ b/src/components/main/ActionCards.tsx @@ -20,21 +20,12 @@ const ActionCards = () => { return ( - {/* Active version is disabled until "Borrow" section is implemented */} - {/* navigate("/myasset")}> + navigate("/loan")}> Borrow nxTON using your NFT as collateral Borrow - */} - - - Coming Soon - - Loan - - navigate("/myasset")}> Check the NFT you received from staking From 6a053b9bf1687e062047af53e56edd20f8929c39 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 2 Aug 2024 17:35:35 +1000 Subject: [PATCH 044/105] fix: useEffect routing dep-s --- src/pages/Loan/Borrow/BorrowDetails.tsx | 2 +- src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx | 2 +- src/pages/Loan/Borrow/BorrowVerify.tsx | 2 +- src/pages/Loan/Borrow/NFTDetail.tsx | 2 +- src/pages/Loan/RiskDisclosure.tsx | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/pages/Loan/Borrow/BorrowDetails.tsx b/src/pages/Loan/Borrow/BorrowDetails.tsx index e9f4e960..38fcca1b 100644 --- a/src/pages/Loan/Borrow/BorrowDetails.tsx +++ b/src/pages/Loan/Borrow/BorrowDetails.tsx @@ -60,7 +60,7 @@ const BorrowDetails = () => { return () => { tele.offEvent("backButtonClicked"); }; - }, [navigate]); + }, []); return ( diff --git a/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx b/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx index c76e0b85..046b8e4a 100644 --- a/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx +++ b/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx @@ -27,7 +27,7 @@ const BorrowRiskDisclosure = () => { return () => { tele.offEvent("backButtonClicked"); }; - }, [navigate]); + }, []); return ( diff --git a/src/pages/Loan/Borrow/BorrowVerify.tsx b/src/pages/Loan/Borrow/BorrowVerify.tsx index 11f40c65..f1b31593 100644 --- a/src/pages/Loan/Borrow/BorrowVerify.tsx +++ b/src/pages/Loan/Borrow/BorrowVerify.tsx @@ -53,7 +53,7 @@ const BorrowVerify = () => { return () => { tele.offEvent("backButtonClicked"); }; - }, [navigate]); + }, []); const handleBorrowConfirm = () => { toggleModal(); diff --git a/src/pages/Loan/Borrow/NFTDetail.tsx b/src/pages/Loan/Borrow/NFTDetail.tsx index a7e1fcb7..4d1c6af3 100644 --- a/src/pages/Loan/Borrow/NFTDetail.tsx +++ b/src/pages/Loan/Borrow/NFTDetail.tsx @@ -50,7 +50,7 @@ const NFTDetail = () => { return () => { tele.offEvent("backButtonClicked"); }; - }, [navigate]); + }, []); return ( diff --git a/src/pages/Loan/RiskDisclosure.tsx b/src/pages/Loan/RiskDisclosure.tsx index 1d8108d4..61f53c17 100644 --- a/src/pages/Loan/RiskDisclosure.tsx +++ b/src/pages/Loan/RiskDisclosure.tsx @@ -22,7 +22,7 @@ const RiskDisclosure = () => { return () => { tele.offEvent("backButtonClicked"); }; - }, [navigate]); + }, []); return ( From 65d948fa142846edc630830f2ab706081b18ccb8 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 2 Aug 2024 17:43:06 +1000 Subject: [PATCH 045/105] fix: margin bug resolved --- src/pages/Loan/Borrow/BorrowDetails.styled.tsx | 2 ++ src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/pages/Loan/Borrow/BorrowDetails.styled.tsx b/src/pages/Loan/Borrow/BorrowDetails.styled.tsx index be51a534..29155986 100644 --- a/src/pages/Loan/Borrow/BorrowDetails.styled.tsx +++ b/src/pages/Loan/Borrow/BorrowDetails.styled.tsx @@ -37,7 +37,9 @@ export const BorrowContentBox = styled.div` display: flex; flex-direction: column; gap: 1.6rem; + margin-top: 2rem; + margin-bottom: 2.9rem; `; export const CollateralizingNFTInfo = styled.div` diff --git a/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx b/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx index 046b8e4a..eab89cdd 100644 --- a/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx +++ b/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx @@ -60,7 +60,9 @@ const BorrowContentBox = styled.div` padding: 13px 25px 37.5px 20px; flex-direction: column; align-items: center; + margin-top: 2rem; + margin-bottom: 2.9rem; border-radius: 20px; background: #fff; From 278b12136e0fb70d930f88f464f3c0ccb142ceaf Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 2 Aug 2024 17:47:55 +1000 Subject: [PATCH 046/105] wip: padding added --- src/pages/Loan/Borrow/BorrowDetails.styled.tsx | 2 +- src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/Loan/Borrow/BorrowDetails.styled.tsx b/src/pages/Loan/Borrow/BorrowDetails.styled.tsx index 29155986..d92d4a77 100644 --- a/src/pages/Loan/Borrow/BorrowDetails.styled.tsx +++ b/src/pages/Loan/Borrow/BorrowDetails.styled.tsx @@ -39,7 +39,7 @@ export const BorrowContentBox = styled.div` gap: 1.6rem; margin-top: 2rem; - margin-bottom: 2.9rem; + padding-bottom: 4rem; `; export const CollateralizingNFTInfo = styled.div` diff --git a/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx b/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx index eab89cdd..6ecfd206 100644 --- a/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx +++ b/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx @@ -62,7 +62,7 @@ const BorrowContentBox = styled.div` align-items: center; margin-top: 2rem; - margin-bottom: 2.9rem; + padding-bottom: 4rem; border-radius: 20px; background: #fff; From 368fcc478418e7eb8cb664f4414ed499d9b8ddce Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 2 Aug 2024 17:51:47 +1000 Subject: [PATCH 047/105] wip: padding added (2) --- src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx b/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx index 6ecfd206..1308ab44 100644 --- a/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx +++ b/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx @@ -62,7 +62,6 @@ const BorrowContentBox = styled.div` align-items: center; margin-top: 2rem; - padding-bottom: 4rem; border-radius: 20px; background: #fff; From 9be2b5be1347a7ef33b95a9a25da519977576e17 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 5 Aug 2024 17:40:01 +1000 Subject: [PATCH 048/105] wip: repay empty screen & repay list item init --- src/assets/image/Loan/RepaysEmpty.png | Bin 0 -> 5454 bytes .../loan/Borrow/BorrowList.styled.tsx | 44 ++++++ src/components/loan/Borrow/BorrowList.tsx | 51 +------ .../loan/Borrow/BorrowListItem.styled.tsx | 125 ++++++++++++++++ src/components/loan/Borrow/BorrowListItem.tsx | 138 ++---------------- src/components/loan/Repay/RepayList.tsx | 52 +++++++ .../loan/Repay/RepayListItem.styled.tsx | 9 ++ src/components/loan/Repay/RepayListItem.tsx | 55 +++++++ src/pages/Loan/Loan.tsx | 2 + 9 files changed, 306 insertions(+), 170 deletions(-) create mode 100644 src/assets/image/Loan/RepaysEmpty.png create mode 100644 src/components/loan/Borrow/BorrowList.styled.tsx create mode 100644 src/components/loan/Borrow/BorrowListItem.styled.tsx create mode 100644 src/components/loan/Repay/RepayList.tsx create mode 100644 src/components/loan/Repay/RepayListItem.styled.tsx create mode 100644 src/components/loan/Repay/RepayListItem.tsx diff --git a/src/assets/image/Loan/RepaysEmpty.png b/src/assets/image/Loan/RepaysEmpty.png new file mode 100644 index 0000000000000000000000000000000000000000..a90f85c1fed7a9f1edd9688ca3d6606daf4a4412 GIT binary patch literal 5454 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 theme.fonts.Nexton_Title_Medium_2}; + color: #000; + margin-top: 1.7rem; + } +`; + +export const LoanNFTBoxListEmptyLink = styled.div` + display: flex; + justify-content: center; + gap: 0.5rem; + + ${({ theme }) => theme.fonts.Nexton_Label_Medium}; + color: #5d5e67; + + cursor: pointer; +`; diff --git a/src/components/loan/Borrow/BorrowList.tsx b/src/components/loan/Borrow/BorrowList.tsx index 6809571e..c6c04cb4 100644 --- a/src/components/loan/Borrow/BorrowList.tsx +++ b/src/components/loan/Borrow/BorrowList.tsx @@ -1,11 +1,15 @@ -import { styled } from "styled-components"; - import IcArrowRight from "@/assets/icons/Loan/ic_arrow_right.svg"; import NFTsEmpty from "@/assets/image/Loan/NFTsEmpty.png"; import { useStakeInfo } from "@/hooks/api/useStakeInfo"; import useTonConnect from "@/hooks/contract/useTonConnect"; import { FilterNFTs } from "@/pages/Loan/Loan"; +import { + BorrowListItemBox, + BorrowListWrapper, + LoanNFTBoxListEmpty, + LoanNFTBoxListEmptyLink, +} from "./BorrowList.styled"; import BorrowListItem from "./BorrowListItem"; const _NFTsMock = [ @@ -100,46 +104,3 @@ const BorrowList = ({ filter }: { filter?: FilterNFTs }) => { }; export default BorrowList; - -const BorrowListWrapper = styled.div` - width: 100%; - display: flex; - align-items: center; - flex-direction: column; -`; - -const BorrowListItemBox = styled.div` - width: 100%; - display: flex; - flex-direction: column; - align-items: center; - - margin: 2.3rem 0; -`; - -const LoanNFTBoxListEmpty = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - - gap: 1rem; - margin-top: 5.7rem; - - h2 { - ${({ theme }) => theme.fonts.Nexton_Title_Medium_2}; - color: #000; - margin-top: 1.7rem; - } -`; - -const LoanNFTBoxListEmptyLink = styled.div` - display: flex; - justify-content: center; - gap: 0.5rem; - - ${({ theme }) => theme.fonts.Nexton_Label_Medium}; - color: #5d5e67; - - cursor: pointer; -`; diff --git a/src/components/loan/Borrow/BorrowListItem.styled.tsx b/src/components/loan/Borrow/BorrowListItem.styled.tsx new file mode 100644 index 00000000..d77db961 --- /dev/null +++ b/src/components/loan/Borrow/BorrowListItem.styled.tsx @@ -0,0 +1,125 @@ +import { styled } from "styled-components"; + +export const BorrowListItemWrapper = styled.div` + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + + width: 100%; + padding: 1.8rem 2.6rem; + + box-shadow: 0px 0px 12px 0px rgba(206, 216, 225, 0.5); + border-radius: 2rem; + background-color: #fff; + + cursor: pointer; + + & + & { + margin-top: 1.4rem; + } +`; + +export const BorrowListTop = styled.div` + display: flex; + justify-content: space-between; + align-items: center; + gap: 1.6rem; + + width: 100%; + margin-bottom: 1.2rem; +`; + +export const BorrowListTopLeft = styled.div` + display: flex; + justify-content: center; + align-items: center; + + p { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: rgba(48, 50, 52, 1); + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } +`; + +export const NFTStatus = styled.div<{ type?: string }>` + width: 5rem; + height: 5rem; + + border-radius: 1rem; + background: ${({ type }) => + type === "ongoing" + ? `linear-gradient(217deg, rgba(61, 80, 255, 0.00) 9.1%, #C7CAE9 88.74%), url("./src/assets/image/Loan/OngoingNFTItem.png") lightgray 50% / cover no-repeat` + : type === "forthComing" + ? `linear-gradient(217deg, rgba(255, 93, 57, 0.00) 57.93%, #FF5D39 88.74%), url("./src/assets/image/Loan/ForthcomingNFTItem.png") lightgray 50% / cover no-repeat;` + : `linear-gradient(217deg, rgba(255, 255, 255, 0.00) 35.65%, #A4A4A4 88.74%), url("./src/assets/image/Loan/ExpiredNFTItem.png") lightgray 50% / cover no-repeat`}; +`; + +export const BorrowListTopLeftText = styled.div` + display: flex; + flex-direction: column; + justify-content: center; + align-items: flex-start; + gap: 0.2rem; + + margin-left: 1.6rem; +`; + +export const BorrowListItemDivider = styled.div` + width: 100%; + height: 0.1rem; + + background-color: rgba(241, 244, 244, 1); +`; + +export const BorrowListBottom = styled.div` + display: flex; + justify-content: space-between; + align-items: center; + + width: 100%; + + margin-top: 1.2rem; +`; + +export const BorrowListBottomTextBottom = styled.div` + display: flex; + flex-direction: column; + justify-content: center; + align-items: flex-start; + gap: 0.6rem; +`; + +export const Caption3 = styled.span` + ${({ theme }) => theme.fonts.Nexton_Label_Small}; + color: rgba(170, 174, 175, 1); +`; + +export const LabelMedium = styled.p` + color: #303234; + font-family: Montserrat; + font-size: 11px; + font-style: normal; + font-weight: 700; + line-height: 16px; /* 145.455% */ +`; + +export const BorrowButton = styled.button` + display: flex; + justify-content: center; + align-items: center; + gap: 0.4rem; + + padding: 0.7rem 1.2rem; + + border: none; + border-radius: 2rem; + background-color: #007aff; + color: #fff; + ${({ theme }) => theme.fonts.Nexton_Label_Medium}; + + outline: none; + cursor: pointer; +`; diff --git a/src/components/loan/Borrow/BorrowListItem.tsx b/src/components/loan/Borrow/BorrowListItem.tsx index 64ecc6aa..759f0636 100644 --- a/src/components/loan/Borrow/BorrowListItem.tsx +++ b/src/components/loan/Borrow/BorrowListItem.tsx @@ -1,10 +1,22 @@ import { useNavigate } from "react-router-dom"; -import { styled } from "styled-components"; import { nftInfo } from "@/types/Nft"; import { DDayChange, expiredDateChanger } from "@/utils/dateChanger"; import { numberCutter } from "@/utils/numberCutter"; +import { + BorrowListBottom, + BorrowListBottomTextBottom, + BorrowListItemDivider, + BorrowListItemWrapper, + BorrowListTop, + BorrowListTopLeft, + BorrowListTopLeftText, + Caption3, + LabelMedium, + NFTStatus, +} from "./BorrowListItem.styled"; + interface BorrowListProps { item: nftInfo; } @@ -59,127 +71,3 @@ const BorrowListItem = (props: BorrowListProps) => { }; export default BorrowListItem; - -const BorrowListItemWrapper = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - - width: 100%; - padding: 1.8rem 2.6rem; - - box-shadow: 0px 0px 12px 0px rgba(206, 216, 225, 0.5); - border-radius: 2rem; - background-color: #fff; - - cursor: pointer; - - & + & { - margin-top: 1.4rem; - } -`; - -const BorrowListTop = styled.div` - display: flex; - justify-content: space-between; - align-items: center; - gap: 1.6rem; - - width: 100%; - margin-bottom: 1.2rem; -`; - -const BorrowListTopLeft = styled.div` - display: flex; - justify-content: center; - align-items: center; - - p { - ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; - color: rgba(48, 50, 52, 1); - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - } -`; - -const NFTStatus = styled.div<{ type?: string }>` - width: 5rem; - height: 5rem; - - border-radius: 1rem; - background: ${({ type }) => - type === "ongoing" - ? `linear-gradient(217deg, rgba(61, 80, 255, 0.00) 9.1%, #C7CAE9 88.74%), url("./src/assets/image/Loan/OngoingNFTItem.png") lightgray 50% / cover no-repeat` - : type === "forthComing" - ? `linear-gradient(217deg, rgba(255, 93, 57, 0.00) 57.93%, #FF5D39 88.74%), url("./src/assets/image/Loan/ForthcomingNFTItem.png") lightgray 50% / cover no-repeat;` - : `linear-gradient(217deg, rgba(255, 255, 255, 0.00) 35.65%, #A4A4A4 88.74%), url("./src/assets/image/Loan/ExpiredNFTItem.png") lightgray 50% / cover no-repeat`}; -`; - -const BorrowListTopLeftText = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: flex-start; - gap: 0.2rem; - - margin-left: 1.6rem; -`; - -const BorrowListItemDivider = styled.div` - width: 100%; - height: 0.1rem; - - background-color: rgba(241, 244, 244, 1); -`; - -const BorrowListBottom = styled.div` - display: flex; - justify-content: space-between; - align-items: center; - - width: 100%; - - margin-top: 1.2rem; -`; - -const BorrowListBottomTextBottom = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: flex-start; - gap: 0.6rem; -`; - -const Caption3 = styled.span` - ${({ theme }) => theme.fonts.Nexton_Label_Small}; - color: rgba(170, 174, 175, 1); -`; - -const LabelMedium = styled.p` - color: #303234; - font-family: Montserrat; - font-size: 11px; - font-style: normal; - font-weight: 700; - line-height: 16px; /* 145.455% */ -`; - -const BorrowButton = styled.button` - display: flex; - justify-content: center; - align-items: center; - gap: 0.4rem; - - padding: 0.7rem 1.2rem; - - border: none; - border-radius: 2rem; - background-color: #007aff; - color: #fff; - ${({ theme }) => theme.fonts.Nexton_Label_Medium}; - - outline: none; - cursor: pointer; -`; diff --git a/src/components/loan/Repay/RepayList.tsx b/src/components/loan/Repay/RepayList.tsx new file mode 100644 index 00000000..188d4de0 --- /dev/null +++ b/src/components/loan/Repay/RepayList.tsx @@ -0,0 +1,52 @@ +import RepaysEmpty from "@/assets/image/Loan/RepaysEmpty.png"; + +import { + BorrowListItemBox, + BorrowListWrapper, + LoanNFTBoxListEmpty, + LoanNFTBoxListEmptyLink, +} from "../Borrow/BorrowList.styled"; + +const _RepaysMock = [ + /* { + nftId: 1, + amount: 1000, + due: "2025-03-01T12:00:00Z", + }, + { + nftId: 2, + amount: 3000, + due: "2025-04-01T12:00:00Z", + }, + { + nftId: 3, + amount: 3100, + due: "2025-06-01T12:00:00Z", + }, */ +]; + +// ! Data is currently mocked +const RepayList = () => { + return ( + + {_RepaysMock && _RepaysMock.length > 0 ? ( + + {_RepaysMock + .sort((a, b) => Number(b.due) - Number(a.due)) + .map(item => ( + <>{item.amount} + ))} + + ) : ( + + repays_empty + +

No results

+ There are no borrowed records. +
+ )} +
+ ); +}; + +export default RepayList; diff --git a/src/components/loan/Repay/RepayListItem.styled.tsx b/src/components/loan/Repay/RepayListItem.styled.tsx new file mode 100644 index 00000000..086131f6 --- /dev/null +++ b/src/components/loan/Repay/RepayListItem.styled.tsx @@ -0,0 +1,9 @@ +import { styled } from "styled-components"; + +import { BorrowListItemWrapper, BorrowListTop } from "../Borrow/BorrowListItem.styled"; + +export const RepayListItemWrapper = styled(BorrowListItemWrapper)<{ $inactive?: boolean }>` + background-color: ${({ $inactive }) => ($inactive ? "#F1F4F4" : "#fff")}; +`; + +export const RepayListTop = styled(BorrowListTop)``; diff --git a/src/components/loan/Repay/RepayListItem.tsx b/src/components/loan/Repay/RepayListItem.tsx new file mode 100644 index 00000000..54a5ab64 --- /dev/null +++ b/src/components/loan/Repay/RepayListItem.tsx @@ -0,0 +1,55 @@ +import { useNavigate } from "react-router-dom"; + +import { DDayChange, expiredDateChanger } from "@/utils/dateChanger"; +import { numberCutter } from "@/utils/numberCutter"; + +import { RepayListItemWrapper, RepayListTop } from "./RepayListItem.styled"; + +const RepayListItem = () => { + const navigate = useNavigate(); + + return ( + navigate(`/repay/${1}`)}> + + + {DDayChange(timeStamp, lockPeriod) > 55 ? ( + + ) : DDayChange(timeStamp, lockPeriod) === 0 ? ( + + ) : ( + + )} + + Token ID +

{nftId}

+
+
+ + {/* Not finalized yet */} + {/* navigate(`/loan/${nftId}`)}> + Borrow + loan + */} +
+ + + + + + Principal + {numberCutter(amount)} TON + + + Expired date + {expiredDateChanger(timeStamp, lockPeriod, "detail")} + + + max LTV. + 50% + + +
+ ); +}; + +export default RepayListItem; diff --git a/src/pages/Loan/Loan.tsx b/src/pages/Loan/Loan.tsx index a07235d3..7b5ed3f7 100644 --- a/src/pages/Loan/Loan.tsx +++ b/src/pages/Loan/Loan.tsx @@ -5,6 +5,7 @@ import IcAlert from "@/assets/icons/Loan/ic_alert.svg"; import IcBars from "@/assets/icons/Loan/ic_bars.svg"; import DropdownMenu from "@/components/common/DropdownMenu"; import BorrowList from "@/components/loan/Borrow/BorrowList"; +import RepayList from "@/components/loan/Repay/RepayList"; import { LoanHeaderBox, @@ -95,6 +96,7 @@ const Loan = () => { {view === "borrow" && } + {view === "repay" && } ); From 1daf7f657880091ec4d3ed36b8f17270f1fdf63a Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 6 Aug 2024 14:37:57 +1000 Subject: [PATCH 049/105] wip: repay list items & post-review borrow fixes --- src/assets/image/Loan/ExpiredNFTLarge.png | Bin 23289 -> 74053 bytes src/assets/image/Loan/ForthcomingNFTLarge.png | Bin 30537 -> 97830 bytes src/assets/image/Loan/OngoingNFTLarge.png | Bin 30113 -> 94219 bytes src/components/common/DropdownMenu.css | 1 + .../loan/Borrow/BorrowListItem.styled.tsx | 6 +- src/components/loan/Repay/RepayList.tsx | 8 +- .../loan/Repay/RepayListItem.styled.tsx | 79 +++++++++++++++++- src/components/loan/Repay/RepayListItem.tsx | 77 +++++++++-------- src/components/loan/common/ProgressBar.tsx | 6 +- src/components/loan/common/StakingInfo.tsx | 10 +-- src/pages/Loan/Borrow/NFTDetail.styled.tsx | 22 ++++- src/pages/Loan/Borrow/NFTDetail.tsx | 7 +- 12 files changed, 161 insertions(+), 55 deletions(-) diff --git a/src/assets/image/Loan/ExpiredNFTLarge.png b/src/assets/image/Loan/ExpiredNFTLarge.png index 40e3fa48ecf672e7d7fa230c768bc99c909c1a36..58f378aa1e546c79fa8a2e0b704b76c9d850ebfe 100644 GIT binary patch literal 74053 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%0A;ABIEG)lu0>*~BLr(~i*-8@_)SqanSjmS;a`DP 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 literal 23289 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

_#>Ln_ebSsWkePz=R=81FvLx#2#VONJ0;y3e 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

JS()#0`Mu2BSr+%{Rjc2%yxz%L$cpw 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 U$8BI*x&QzG07*qoM6N<$f|}w3;{X5v diff --git a/src/components/common/DropdownMenu.css b/src/components/common/DropdownMenu.css index 5016de32..9d5b5b1d 100644 --- a/src/components/common/DropdownMenu.css +++ b/src/components/common/DropdownMenu.css @@ -26,6 +26,7 @@ align-self: stretch; border-radius: 10px; + border: none; background: #fff; box-shadow: 0px 6px 10px 0px rgba(94, 97, 98, 0.3); diff --git a/src/components/loan/Borrow/BorrowListItem.styled.tsx b/src/components/loan/Borrow/BorrowListItem.styled.tsx index d77db961..d55debb1 100644 --- a/src/components/loan/Borrow/BorrowListItem.styled.tsx +++ b/src/components/loan/Borrow/BorrowListItem.styled.tsx @@ -51,10 +51,10 @@ export const NFTStatus = styled.div<{ type?: string }>` border-radius: 1rem; background: ${({ type }) => type === "ongoing" - ? `linear-gradient(217deg, rgba(61, 80, 255, 0.00) 9.1%, #C7CAE9 88.74%), url("./src/assets/image/Loan/OngoingNFTItem.png") lightgray 50% / cover no-repeat` + ? `url("./src/assets/image/Loan/OngoingNFTItem.png") lightgray 50% / cover no-repeat` : type === "forthComing" - ? `linear-gradient(217deg, rgba(255, 93, 57, 0.00) 57.93%, #FF5D39 88.74%), url("./src/assets/image/Loan/ForthcomingNFTItem.png") lightgray 50% / cover no-repeat;` - : `linear-gradient(217deg, rgba(255, 255, 255, 0.00) 35.65%, #A4A4A4 88.74%), url("./src/assets/image/Loan/ExpiredNFTItem.png") lightgray 50% / cover no-repeat`}; + ? `url("./src/assets/image/Loan/ForthcomingNFTItem.png") lightgray 50% / cover no-repeat;` + : `url("./src/assets/image/Loan/ExpiredNFTItem.png") lightgray 50% / cover no-repeat`}; `; export const BorrowListTopLeftText = styled.div` diff --git a/src/components/loan/Repay/RepayList.tsx b/src/components/loan/Repay/RepayList.tsx index 188d4de0..4759169a 100644 --- a/src/components/loan/Repay/RepayList.tsx +++ b/src/components/loan/Repay/RepayList.tsx @@ -7,8 +7,10 @@ import { LoanNFTBoxListEmptyLink, } from "../Borrow/BorrowList.styled"; +import RepayListItem from "./RepayListItem"; + const _RepaysMock = [ - /* { + { nftId: 1, amount: 1000, due: "2025-03-01T12:00:00Z", @@ -22,7 +24,7 @@ const _RepaysMock = [ nftId: 3, amount: 3100, due: "2025-06-01T12:00:00Z", - }, */ + }, ]; // ! Data is currently mocked @@ -34,7 +36,7 @@ const RepayList = () => { {_RepaysMock .sort((a, b) => Number(b.due) - Number(a.due)) .map(item => ( - <>{item.amount} + ))} ) : ( diff --git a/src/components/loan/Repay/RepayListItem.styled.tsx b/src/components/loan/Repay/RepayListItem.styled.tsx index 086131f6..13c659fb 100644 --- a/src/components/loan/Repay/RepayListItem.styled.tsx +++ b/src/components/loan/Repay/RepayListItem.styled.tsx @@ -1,9 +1,84 @@ import { styled } from "styled-components"; -import { BorrowListItemWrapper, BorrowListTop } from "../Borrow/BorrowListItem.styled"; +import { + BorrowListBottom, + BorrowListBottomTextBottom, + BorrowListItemDivider, + BorrowListItemWrapper, + BorrowListTop, + BorrowListTopLeft, + BorrowListTopLeftText, +} from "../Borrow/BorrowListItem.styled"; export const RepayListItemWrapper = styled(BorrowListItemWrapper)<{ $inactive?: boolean }>` background-color: ${({ $inactive }) => ($inactive ? "#F1F4F4" : "#fff")}; + cursor: default; `; -export const RepayListTop = styled(BorrowListTop)``; +export const RepayListTop = styled(BorrowListTop)` + margin-bottom: 0.6rem; +`; + +export const RepayListTopLeft = styled(BorrowListTopLeft)``; + +export const RepayListTopLeftIcon = styled.div<{ $inactive?: boolean }>` + display: flex; + width: 39px; + height: 32px; + padding: 2px 11px; + justify-content: center; + align-items: center; + gap: 10px; + + border-radius: 30px; + background: ${({ $inactive }) => ($inactive ? "#fff" : "#f2f2f7")}; + + ${({ theme }) => theme.fonts.Nexton_Label_Small}; + color: ${({ $inactive }) => ($inactive ? "#B9B9BA" : "#303234")}; + text-align: center; +`; + +export const RepayListTopLeftText = styled(BorrowListTopLeftText)``; + +export const RepayListTopButton = styled.div<{ $inactive?: boolean }>` + display: flex; + height: 42px; + padding: 10px; + justify-content: center; + align-items: center; + gap: 4px; + + border-radius: 20px; + background: ${({ $inactive }) => ($inactive ? "#E1E4E6" : "#1A1B23")}; + + cursor: pointer; + + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; + color: #fff; +`; + +export const RepayListDueDate = styled.div` + width: 100%; + display: flex; + align-items: center; + justify-content: start; + + gap: 0.6rem; + margin-bottom: 1.1rem; + + span { + color: #aaaeaf; + ${({ theme }) => theme.fonts.Nexton_Label_Small_2}; + } + + p { + color: #303234; + ${({ theme }) => theme.fonts.Nexton_Label_Small_2}; + } +`; + +export const RepayListItemDivider = styled(BorrowListItemDivider)``; + +export const RepayListBottom = styled(BorrowListBottom)``; + +export const RepayListBottomTextBottom = styled(BorrowListBottomTextBottom)``; diff --git a/src/components/loan/Repay/RepayListItem.tsx b/src/components/loan/Repay/RepayListItem.tsx index 54a5ab64..9c0e720b 100644 --- a/src/components/loan/Repay/RepayListItem.tsx +++ b/src/components/loan/Repay/RepayListItem.tsx @@ -1,53 +1,60 @@ import { useNavigate } from "react-router-dom"; -import { DDayChange, expiredDateChanger } from "@/utils/dateChanger"; import { numberCutter } from "@/utils/numberCutter"; -import { RepayListItemWrapper, RepayListTop } from "./RepayListItem.styled"; +import { Caption3, LabelMedium } from "../Borrow/BorrowListItem.styled"; + +import { + RepayListBottom, + RepayListBottomTextBottom, + RepayListDueDate, + RepayListItemDivider, + RepayListItemWrapper, + RepayListTop, + RepayListTopButton, + RepayListTopLeft, + RepayListTopLeftIcon, + RepayListTopLeftText, +} from "./RepayListItem.styled"; const RepayListItem = () => { const navigate = useNavigate(); return ( - navigate(`/repay/${1}`)}> + - - {DDayChange(timeStamp, lockPeriod) > 55 ? ( - - ) : DDayChange(timeStamp, lockPeriod) === 0 ? ( - - ) : ( - - )} - - Token ID -

{nftId}

- - - - {/* Not finalized yet */} - {/* navigate(`/loan/${nftId}`)}> - Borrow - loan - */} + + 1 + + Borrowed nxTON +

000.00 nxTON

+
+
+ + navigate(`/repay/${1}`)}>Repayment - + + Before the due date +

2 days

+
- - + + + + Principal - {numberCutter(amount)} TON - - - Expired date - {expiredDateChanger(timeStamp, lockPeriod, "detail")} - - - max LTV. + {numberCutter(123.42)} TON + + + Maturity date + mm.dd.yy + + + Interest rate 50% - - + + ); }; diff --git a/src/components/loan/common/ProgressBar.tsx b/src/components/loan/common/ProgressBar.tsx index 04f50a63..46e07c4c 100644 --- a/src/components/loan/common/ProgressBar.tsx +++ b/src/components/loan/common/ProgressBar.tsx @@ -81,10 +81,10 @@ const StepCircle = styled.div<{ active: boolean }>` `; const StepLabel = styled.div<{ position: "left" | "center" | "right" }>` - top: 3.5rem; - left: ${({ position }) => (position === "left" ? "-35%" : position === "center" ? "7.5%" : "50%")}; + top: 4rem; + left: ${({ position }) => (position === "left" ? "-35%" : position === "center" ? "7.5%" : "55%")}; position: absolute; - width: 175px; + width: ${({ position }) => (position === "right" ? "150px" : "175px")}; ${({ theme }) => theme.fonts.Nexton_Label_Small_2}; text-align: center; color: #5e6162; diff --git a/src/components/loan/common/StakingInfo.tsx b/src/components/loan/common/StakingInfo.tsx index 222ea36d..7cf1ee7b 100644 --- a/src/components/loan/common/StakingInfo.tsx +++ b/src/components/loan/common/StakingInfo.tsx @@ -47,10 +47,10 @@ const StakingInfo = ({ isExpandable, theme, title, stakingInfoItems, alwaysVisib

{item.value}

)} - {index < alwaysVisibleItems.length - 1 && } + {index < alwaysVisibleItems.length - 1 && } ))} - {alwaysVisibleItems && alwaysVisibleItems.length > 0 && isExpanded && } + {alwaysVisibleItems && alwaysVisibleItems.length > 0 && isExpanded && } {isExpandable && !isExpanded && ( @@ -65,7 +65,7 @@ const StakingInfo = ({ isExpandable, theme, title, stakingInfoItems, alwaysVisib {item.label}

{item.value}

- {index < stakingInfoItems.length - 1 && } + {index < stakingInfoItems.length - 1 && } ))} {isExpandable && ( @@ -130,11 +130,11 @@ const StakingInfoItem = styled.div<{ $theme: Theme }>` } `; -const StakingInfoDivider = styled.div` +const StakingInfoDivider = styled.div<{ $theme: Theme }>` width: 100%; height: 1px; - background: #f1f4f4; + background: ${({ $theme }) => ($theme === "black" ? "#46494A" : "#F1F4F4")}; margin: 0.9rem 0; `; diff --git a/src/pages/Loan/Borrow/NFTDetail.styled.tsx b/src/pages/Loan/Borrow/NFTDetail.styled.tsx index 7b2c3e04..b9772af7 100644 --- a/src/pages/Loan/Borrow/NFTDetail.styled.tsx +++ b/src/pages/Loan/Borrow/NFTDetail.styled.tsx @@ -24,6 +24,24 @@ export const NFTDetailCard = styled.div` box-shadow: 0px 4px 8.6px 0px rgba(206, 216, 225, 0.5); `; +export const NFTDetailCardImageBox = styled.div` + position: relative; + + span { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + color: #fff; + ${({ theme }) => theme.fonts.Nexton_Title_Large}; + } + + img { + width: 171px; + height: auto; + } +`; + export const NFTDetailCardTitle = styled.h1` color: #fff; text-align: center; @@ -80,8 +98,8 @@ export const NFTDetailItem = styled.div<{ $marginTop?: boolean; $itemsCenter?: b `; export const NFTDetailItemCaption = styled.span` - ${({ theme }) => theme.fonts.Nexton_Label_Small}; - color: rgba(170, 174, 175, 1); + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; + color: #aaaeaf; `; export const NFTDetailItemText = styled.p<{ $textCenter?: boolean }>` diff --git a/src/pages/Loan/Borrow/NFTDetail.tsx b/src/pages/Loan/Borrow/NFTDetail.tsx index 4d1c6af3..76fffc6a 100644 --- a/src/pages/Loan/Borrow/NFTDetail.tsx +++ b/src/pages/Loan/Borrow/NFTDetail.tsx @@ -4,11 +4,11 @@ import { useNavigate, useParams } from "react-router-dom"; import IcTrendUp from "@/assets/icons/Loan/ic_trend_up.svg"; import OngoingNFTLarge from "@/assets/image/Loan/OngoingNFTLarge.png"; import StakingInfo from "@/components/loan/common/StakingInfo"; -import { useNFTDetail } from "@/hooks/api/useNFTDetail"; import { NFTDetailCard, NFTDetailCardButton, + NFTDetailCardImageBox, NFTDetailCardTitle, NFTDetailContentBox, NFTDetailItem, @@ -56,7 +56,10 @@ const NFTDetail = () => { {/* NFTs are currently hardcoded to be ongoing. This should be changed to a dynamic value. */} - ongoing_nft + + ongoing_nft + D-30 + Staking NFT navigate(`/loan/${id}/borrow/details`)}> From 414a07c73cb358af6097facfb19f7ace465c82e4 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 6 Aug 2024 14:49:16 +1000 Subject: [PATCH 050/105] fix: import NFT list item img --- src/components/loan/Borrow/BorrowListItem.styled.tsx | 8 +------- src/components/loan/Borrow/BorrowListItem.tsx | 9 ++++++--- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/src/components/loan/Borrow/BorrowListItem.styled.tsx b/src/components/loan/Borrow/BorrowListItem.styled.tsx index d55debb1..ed3c4b4a 100644 --- a/src/components/loan/Borrow/BorrowListItem.styled.tsx +++ b/src/components/loan/Borrow/BorrowListItem.styled.tsx @@ -44,17 +44,11 @@ export const BorrowListTopLeft = styled.div` } `; -export const NFTStatus = styled.div<{ type?: string }>` +export const NFTStatus = styled.img` width: 5rem; height: 5rem; border-radius: 1rem; - background: ${({ type }) => - type === "ongoing" - ? `url("./src/assets/image/Loan/OngoingNFTItem.png") lightgray 50% / cover no-repeat` - : type === "forthComing" - ? `url("./src/assets/image/Loan/ForthcomingNFTItem.png") lightgray 50% / cover no-repeat;` - : `url("./src/assets/image/Loan/ExpiredNFTItem.png") lightgray 50% / cover no-repeat`}; `; export const BorrowListTopLeftText = styled.div` diff --git a/src/components/loan/Borrow/BorrowListItem.tsx b/src/components/loan/Borrow/BorrowListItem.tsx index 759f0636..297e9857 100644 --- a/src/components/loan/Borrow/BorrowListItem.tsx +++ b/src/components/loan/Borrow/BorrowListItem.tsx @@ -1,5 +1,8 @@ import { useNavigate } from "react-router-dom"; +import ExpiredNFTItem from "@/assets/image/Loan/ExpiredNFTItem.png"; +import ForthcomingNFTItem from "@/assets/image/Loan/ForthcomingNFTItem.png"; +import OngoingNFTItem from "@/assets/image/Loan/OngoingNFTItem.png"; import { nftInfo } from "@/types/Nft"; import { DDayChange, expiredDateChanger } from "@/utils/dateChanger"; import { numberCutter } from "@/utils/numberCutter"; @@ -31,11 +34,11 @@ const BorrowListItem = (props: BorrowListProps) => { {DDayChange(timeStamp, lockPeriod) > 55 ? ( - + ) : DDayChange(timeStamp, lockPeriod) === 0 ? ( - + ) : ( - + )} Token ID From 66ba84306b4959ea8e440eaa640433452da7a95b Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Wed, 7 Aug 2024 15:36:44 +1000 Subject: [PATCH 051/105] wip: StakingInfo component improvements, RepaymentDetails screen, Modals --- .../loan/Repay/ConfirmRepaymentModal.tsx | 64 ++++++++ src/components/loan/Repay/RepayListItem.tsx | 6 +- src/components/loan/common/StakingInfo.tsx | 51 ++++-- src/constants/ModalText.ts | 8 +- src/pages/Loan/Borrow/BorrowDetails.tsx | 21 ++- src/pages/Loan/Borrow/BorrowVerify.tsx | 14 +- src/pages/Loan/Borrow/NFTDetail.tsx | 20 ++- .../Loan/Repay/RepaymentDetails.styled.tsx | 44 ++++++ src/pages/Loan/Repay/RepaymentDetails.tsx | 145 ++++++++++++++++++ 9 files changed, 335 insertions(+), 38 deletions(-) create mode 100644 src/components/loan/Repay/ConfirmRepaymentModal.tsx create mode 100644 src/pages/Loan/Repay/RepaymentDetails.styled.tsx create mode 100644 src/pages/Loan/Repay/RepaymentDetails.tsx diff --git a/src/components/loan/Repay/ConfirmRepaymentModal.tsx b/src/components/loan/Repay/ConfirmRepaymentModal.tsx new file mode 100644 index 00000000..13f71384 --- /dev/null +++ b/src/components/loan/Repay/ConfirmRepaymentModal.tsx @@ -0,0 +1,64 @@ +import { styled } from "styled-components"; + +import { Container, SubTitle, SubTitleBox, Title } from "@/components/common/Modal/Modal.styled"; +import ModalWrapper from "@/components/common/Modal/ModalWrapper"; + +interface ConfirmRepaymentModalProps { + toggleModal: () => void; + onConfirm: () => void; +} + +export const ConfirmRepaymentModal = (props: ConfirmRepaymentModalProps) => { + const { onConfirm, toggleModal } = props; + + return ( + + + + Would you like to repay Loan 01? + + + Please verify the information of the + loan you intend to repay accurately. + + + + + Not Now + + + Yes + + + + + ); +}; + +const ModalButtonWrapper = styled.div` + display: flex; + justify-content: center; + align-items: center; + gap: 1rem; + + width: 100%; +`; + +const ModalButton = styled.button<{ type: string }>` + display: flex; + justify-content: center; + align-items: center; + + width: 100%; + padding: 1.2rem 0; + + border: none; + border-radius: 1.4rem; + + background-color: ${({ type }) => (type === "no" ? "#FFF" : "#007AFF")}; + box-shadow: 0px 0px 20px 0px rgba(198, 197, 208, 0.3); + color: ${({ type }) => (type === "no" ? "#007AFF" : "#FFF")}; + ${({ theme }) => theme.fonts.Telegram_Medium_2}; + + cursor: pointer; +`; diff --git a/src/components/loan/Repay/RepayListItem.tsx b/src/components/loan/Repay/RepayListItem.tsx index 9c0e720b..6b60cd6f 100644 --- a/src/components/loan/Repay/RepayListItem.tsx +++ b/src/components/loan/Repay/RepayListItem.tsx @@ -31,16 +31,14 @@ const RepayListItem = () => { - navigate(`/repay/${1}`)}>Repayment + navigate(`/loan/${1}/repay/details`)}>Repayment - + /repay/details Before the due date

2 days

- - Principal diff --git a/src/components/loan/common/StakingInfo.tsx b/src/components/loan/common/StakingInfo.tsx index 7cf1ee7b..959c146e 100644 --- a/src/components/loan/common/StakingInfo.tsx +++ b/src/components/loan/common/StakingInfo.tsx @@ -1,4 +1,5 @@ import { useState } from "react"; +import React from "react"; import { styled } from "styled-components"; import IcTonLogo from "@/assets/icons/Loan/ic_ton_logo.svg"; @@ -7,12 +8,22 @@ import { DoubleArrows } from "./DoubleArrows"; type Theme = "black" | "white"; +interface SectionItem { + label: string; + value: string | JSX.Element; +} + +interface Section { + header?: string; + items: SectionItem[]; +} + interface StakingInfoProps { isExpandable: boolean; theme: Theme; title: string; - stakingInfoItems: { label: string; value: string }[]; - alwaysVisibleItems?: { label: string; value: string }[]; + alwaysVisibleItems?: SectionItem[]; + stakingInfoItems: Section[]; } const StakingInfo = ({ isExpandable, theme, title, stakingInfoItems, alwaysVisibleItems }: StakingInfoProps) => { @@ -50,7 +61,6 @@ const StakingInfo = ({ isExpandable, theme, title, stakingInfoItems, alwaysVisib {index < alwaysVisibleItems.length - 1 && } ))} - {alwaysVisibleItems && alwaysVisibleItems.length > 0 && isExpanded && } {isExpandable && !isExpanded && ( @@ -59,14 +69,30 @@ const StakingInfo = ({ isExpandable, theme, title, stakingInfoItems, alwaysVisib )} {(!isExpandable || isExpanded) && stakingInfoItems && stakingInfoItems.length > 0 && ( <> - {stakingInfoItems.map((item, index) => ( - <> - - {item.label} -

{item.value}

-
- {index < stakingInfoItems.length - 1 && } - + {stakingInfoItems.map((section, index) => ( + + {section.header && ( + + {section.header} + + )} + {section.items.map((sectionItem, index) => ( + + + {sectionItem.label} + {sectionItem.label === "Network" ? ( + + TON_logo +

{sectionItem.value}

+
+ ) : ( +

{sectionItem.value}

+ )} +
+ {index < section.items.length - 1 && } +
+ ))} +
))} {isExpandable && ( @@ -96,7 +122,7 @@ const StakingInfoWrapper = styled.div<{ $theme: Theme; $marginTop?: boolean; $it box-shadow: 0px 0px 12px 0px rgba(206, 216, 225, 0.5); `; -const StakingInfoHeaderText = styled.p<{ $theme: Theme; $textCenter?: boolean }>` +const StakingInfoHeaderText = styled.p<{ $theme: Theme; $textCenter?: boolean; $marginTop?: boolean }>` width: 100%; ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; color: ${({ $theme }) => ($theme === "black" ? "#fff" : "#303234")}; @@ -108,6 +134,7 @@ const StakingInfoHeaderText = styled.p<{ $theme: Theme; $textCenter?: boolean }> text-align: ${({ $textCenter }) => ($textCenter ? "center" : "left")}; margin-bottom: 1rem; + margin-top: ${({ $marginTop }) => ($marginTop ? "1.6rem" : "0")}; `; const StakingInfoItem = styled.div<{ $theme: Theme }>` diff --git a/src/constants/ModalText.ts b/src/constants/ModalText.ts index cde71ae2..96ead417 100644 --- a/src/constants/ModalText.ts +++ b/src/constants/ModalText.ts @@ -4,12 +4,18 @@ export const MODAL_TEXT = { desc: "For now you can check minted NFT", descBr: "on My asset, and transaction data", }, - loan: { + borrow: { title: "Successfully borrowed NXT", desc: "Please check deposited NXT", descBr: "in your wallet, and transaction", descBr2: "history by tapping below button", }, + repay: { + title: "Repayment was successful!", + desc: "You can view the repayment history", + descBr: "in the History section and also in the", + descBr2: "TON viewer at the bottom.", + }, unstaking: { title: "Successfully", titleBr: "Unstaking Requested", diff --git a/src/pages/Loan/Borrow/BorrowDetails.tsx b/src/pages/Loan/Borrow/BorrowDetails.tsx index 38fcca1b..bee0dc84 100644 --- a/src/pages/Loan/Borrow/BorrowDetails.tsx +++ b/src/pages/Loan/Borrow/BorrowDetails.tsx @@ -31,14 +31,19 @@ const alwaysVisibleItems = [ ]; const stakingInfoItems = [ - { label: "Principal", value: "10,000 TON" }, - { label: "Nominator Pool", value: "DG Pool #1" }, - { label: "Leveraged", value: "X1.0" }, - { label: "Lockup period", value: "60 days" }, - { label: "Unstakable date", value: "DD.MM.YY" }, - { label: "Protocol Fees", value: "2%" }, - { label: "Staking APR", value: "5%" }, - { label: "Total Amount", value: "10,083 TON" }, + { + header: "Staking info", + items: [ + { label: "Principal", value: "10,000 TON" }, + { label: "Nominator Pool", value: "DG Pool #1" }, + { label: "Leveraged", value: "X1.0" }, + { label: "Lockup period", value: "60 days" }, + { label: "Unstakable date", value: "DD.MM.YY" }, + { label: "Protocol Fees", value: "2%" }, + { label: "Staking APR", value: "5%" }, + { label: "Total Amount", value: "10,083 TON" }, + ], + }, ]; // ! Data is currently mocked diff --git a/src/pages/Loan/Borrow/BorrowVerify.tsx b/src/pages/Loan/Borrow/BorrowVerify.tsx index f1b31593..a426aff0 100644 --- a/src/pages/Loan/Borrow/BorrowVerify.tsx +++ b/src/pages/Loan/Borrow/BorrowVerify.tsx @@ -19,10 +19,14 @@ interface ModalState { } const stakingInfoItems = [ - { label: "Borrowed nxTON", value: "000.00 nxTON" }, - { label: "Principal", value: "00000 TON" }, - { label: "LTV", value: "50.0%" }, - { label: "Maturity date", value: "mm.dd.yy" }, + { + items: [ + { label: "Borrowed nxTON", value: "000.00 nxTON" }, + { label: "Principal", value: "00000 TON" }, + { label: "LTV", value: "95.0%" }, + { label: "Maturity date", value: "mm.dd.yy" }, + ], + }, ]; // ! Data is currently mocked @@ -90,7 +94,7 @@ const BorrowVerify = () => { )} {modal.type === "borrow" && modal.toggled && ( - console.log("Borrowed!")} /> + console.log("Borrowed!")} /> )} ); diff --git a/src/pages/Loan/Borrow/NFTDetail.tsx b/src/pages/Loan/Borrow/NFTDetail.tsx index 76fffc6a..d45a50a3 100644 --- a/src/pages/Loan/Borrow/NFTDetail.tsx +++ b/src/pages/Loan/Borrow/NFTDetail.tsx @@ -21,14 +21,18 @@ import { const tele = (window as any).Telegram.WebApp; const stakingInfoItems = [ - { label: "Principal", value: "10,000 TON" }, - { label: "Nominator Pool", value: "DG Pool #1" }, - { label: "Leveraged", value: "X1.0" }, - { label: "Lockup period", value: "60 days" }, - { label: "Unstakable date", value: "DD.MM.YY" }, - { label: "Protocol Fees", value: "2%" }, - { label: "Staking APR", value: "5%" }, - { label: "Total Amount", value: "10,083 TON" }, + { + items: [ + { label: "Principal", value: "10,000 TON" }, + { label: "Nominator Pool", value: "DG Pool #1" }, + { label: "Leveraged", value: "X1.0" }, + { label: "Lockup period", value: "60 days" }, + { label: "Unstakable date", value: "DD.MM.YY" }, + { label: "Protocol Fees", value: "2%" }, + { label: "Staking APR", value: "5%" }, + { label: "Total Amount", value: "10,083 TON" }, + ], + }, ]; // ! Data is currently mocked diff --git a/src/pages/Loan/Repay/RepaymentDetails.styled.tsx b/src/pages/Loan/Repay/RepaymentDetails.styled.tsx new file mode 100644 index 00000000..a501615b --- /dev/null +++ b/src/pages/Loan/Repay/RepaymentDetails.styled.tsx @@ -0,0 +1,44 @@ +import { styled } from "styled-components"; + +import { + BorrowHeaderBox, + BorrowHeaderBoxTitle, + BorrowRateBox, + BorrowRateBoxBottom, + BorrowRateBoxDivider, + BorrowWrapper, +} from "../Borrow/BorrowDetails.styled"; + +export const RepaymentWrapper = styled(BorrowWrapper)``; + +export const RepaymentHeaderBox = styled(BorrowHeaderBox)``; + +export const RepaymentHeaderBoxTitle = styled(BorrowHeaderBoxTitle)``; + +export const RepaymentContentBox = styled.div` + display: flex; + flex-direction: column; + gap: 1.1rem; + + margin-top: 3.1rem; + padding-bottom: 4rem; +`; + +export const RepayRateBox = styled(BorrowRateBox)``; + +export const RepayRateBoxHeader = styled.div` + display: flex; + justify-content: start; + align-items: start; + + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; + color: #aaaeaf; +`; + +export const RepayRateBoxDivider = styled(BorrowRateBoxDivider)` + margin: 0.9rem 1.7rem 2.3rem 1.7rem; +`; + +export const RepayRateBoxBottom = styled(BorrowRateBoxBottom)` + color: #34c759; +`; diff --git a/src/pages/Loan/Repay/RepaymentDetails.tsx b/src/pages/Loan/Repay/RepaymentDetails.tsx new file mode 100644 index 00000000..d9f1d563 --- /dev/null +++ b/src/pages/Loan/Repay/RepaymentDetails.tsx @@ -0,0 +1,145 @@ +import { useEffect, useState } from "react"; +import { useNavigate, useParams } from "react-router-dom"; +import { MainButton } from "@vkruglikov/react-telegram-web-app"; + +import BasicModal from "@/components/common/Modal/BasicModal"; +import TransactionConfirmModal from "@/components/common/Modal/TransactionConfirmModal"; +import StakingInfo from "@/components/loan/common/StakingInfo.tsx"; +import { ConfirmRepaymentModal } from "@/components/loan/Repay/ConfirmRepaymentModal"; +import { useNFTDetail } from "@/hooks/api/useNFTDetail"; +import { isDevMode } from "@/utils/isDevMode.ts"; + +import { + RepaymentContentBox, + RepaymentHeaderBox, + RepaymentHeaderBoxTitle, + RepaymentWrapper, + RepayRateBox, + RepayRateBoxBottom, + RepayRateBoxDivider, + RepayRateBoxHeader, +} from "./RepaymentDetails.styled"; + +const tele = (window as any).Telegram.WebApp; + +const alwaysVisibleItems = [ + { label: "Borrowed nxTON", value: "000.00 nxTON" }, + { label: "Principal", value: "00000 TON" }, + { label: "LTV", value: "50.0%" }, + { label: "Maturity date", value: "mm.dd.yy" }, +]; + +const stakingInfoItems = [ + { + header: "Collateralizing NFT info", + items: [ + { label: "Token ID", value: "4817sddss863ddddwdwsdwd" }, + { label: "Network", value: "TON" }, + { label: "LTV", value: "50.0%" }, + ], + }, + { + header: "Staking info", + items: [ + { label: "Principal", value: "10,000 TON" }, + { label: "Nominator Pool", value: "DG Pool #1" }, + { label: "Leveraged", value: "X1.0" }, + { label: "Lockup period", value: "60 days" }, + { label: "Unstakable date", value: "DD.MM.YY" }, + { label: "Protocol Fees", value: "2%" }, + { label: "Staking APR", value: "5%" }, + { label: "Total Amount", value: "10,083 TON" }, + ], + }, +]; + +interface ModalState { + type: "repay" | "confirmRepay"; + toggled: boolean; +} + +// ! Data is currently mocked +const RepaymentDetails = () => { + const navigate = useNavigate(); + const { id } = useParams(); + + const [modal, setModal] = useState({ + type: "confirmRepay", + toggled: false, + }); + + const toggleModal = () => { + setModal(prev => ({ + type: prev.type, + toggled: !prev.toggled, + })); + }; + + // const { nftDetail } = useNFTDetail(Number(id)); + + useEffect(() => { + if (tele) { + tele.ready(); + tele.BackButton.show(); + tele.onEvent("backButtonClicked", () => { + navigate(-1); + }); + } + + return () => { + tele.offEvent("backButtonClicked"); + }; + }, []); + + const handleRepayConfirm = () => { + toggleModal(); + + console.log("Borrow confirmed!"); + + setModal({ type: "repay", toggled: true }); + }; + + return ( + <> + + + +

Repayment

+
+
+ + + + + + Amount to be repaid + + 000.00 nxTON + + + + {!isDevMode ? ( + console.log("Repay Modal")} /> + ) : ( + + )} +
+ + {false && } + {modal.type === "confirmRepay" && modal.toggled && ( + + )} + {modal.type === "repay" && modal.toggled && ( + console.log("Repayed!")} /> + )} + + ); +}; + +export default RepaymentDetails; From 98ae2015326024306a2abd314bd1ce79f1fb0922 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 8 Aug 2024 13:20:47 +1000 Subject: [PATCH 052/105] fix: TMA backButton routing bug --- src/pages/Loan/Borrow/BorrowDetails.tsx | 2 +- src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx | 2 +- src/pages/Loan/Borrow/BorrowVerify.tsx | 2 +- src/pages/Loan/Borrow/NFTDetail.tsx | 2 +- src/pages/Loan/Repay/RepaymentDetails.tsx | 4 ++-- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/pages/Loan/Borrow/BorrowDetails.tsx b/src/pages/Loan/Borrow/BorrowDetails.tsx index bee0dc84..7e688da9 100644 --- a/src/pages/Loan/Borrow/BorrowDetails.tsx +++ b/src/pages/Loan/Borrow/BorrowDetails.tsx @@ -65,7 +65,7 @@ const BorrowDetails = () => { return () => { tele.offEvent("backButtonClicked"); }; - }, []); + }, [navigate]); return ( diff --git a/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx b/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx index 1308ab44..f24101ec 100644 --- a/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx +++ b/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx @@ -27,7 +27,7 @@ const BorrowRiskDisclosure = () => { return () => { tele.offEvent("backButtonClicked"); }; - }, []); + }, [navigate]); return ( diff --git a/src/pages/Loan/Borrow/BorrowVerify.tsx b/src/pages/Loan/Borrow/BorrowVerify.tsx index a426aff0..5e5fdf21 100644 --- a/src/pages/Loan/Borrow/BorrowVerify.tsx +++ b/src/pages/Loan/Borrow/BorrowVerify.tsx @@ -57,7 +57,7 @@ const BorrowVerify = () => { return () => { tele.offEvent("backButtonClicked"); }; - }, []); + }, [navigate]); const handleBorrowConfirm = () => { toggleModal(); diff --git a/src/pages/Loan/Borrow/NFTDetail.tsx b/src/pages/Loan/Borrow/NFTDetail.tsx index d45a50a3..5086dc03 100644 --- a/src/pages/Loan/Borrow/NFTDetail.tsx +++ b/src/pages/Loan/Borrow/NFTDetail.tsx @@ -54,7 +54,7 @@ const NFTDetail = () => { return () => { tele.offEvent("backButtonClicked"); }; - }, []); + }, [navigate]); return ( diff --git a/src/pages/Loan/Repay/RepaymentDetails.tsx b/src/pages/Loan/Repay/RepaymentDetails.tsx index d9f1d563..6aa9cc78 100644 --- a/src/pages/Loan/Repay/RepaymentDetails.tsx +++ b/src/pages/Loan/Repay/RepaymentDetails.tsx @@ -82,14 +82,14 @@ const RepaymentDetails = () => { tele.ready(); tele.BackButton.show(); tele.onEvent("backButtonClicked", () => { - navigate(-1); + navigate("/loan"); }); } return () => { tele.offEvent("backButtonClicked"); }; - }, []); + }, [navigate]); const handleRepayConfirm = () => { toggleModal(); From 6079d0e2933abb348109e5c81ace3535dc644540 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 8 Aug 2024 13:31:10 +1000 Subject: [PATCH 053/105] fix: TMA routing absolute paths --- src/pages/Loan/Borrow/BorrowDetails.tsx | 2 +- src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx | 2 +- src/pages/Loan/Borrow/BorrowVerify.tsx | 2 +- src/pages/Loan/Repay/RepaymentDetails.tsx | 1 - 4 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/pages/Loan/Borrow/BorrowDetails.tsx b/src/pages/Loan/Borrow/BorrowDetails.tsx index 7e688da9..d0e821b2 100644 --- a/src/pages/Loan/Borrow/BorrowDetails.tsx +++ b/src/pages/Loan/Borrow/BorrowDetails.tsx @@ -58,7 +58,7 @@ const BorrowDetails = () => { tele.ready(); tele.BackButton.show(); tele.onEvent("backButtonClicked", () => { - navigate(-1); + navigate("/loan/1"); }); } diff --git a/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx b/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx index f24101ec..b0666a88 100644 --- a/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx +++ b/src/pages/Loan/Borrow/BorrowRiskDisclosure.tsx @@ -20,7 +20,7 @@ const BorrowRiskDisclosure = () => { tele.ready(); tele.BackButton.show(); tele.onEvent("backButtonClicked", () => { - navigate(-1); + navigate("/loan/1/borrow/details"); }); } diff --git a/src/pages/Loan/Borrow/BorrowVerify.tsx b/src/pages/Loan/Borrow/BorrowVerify.tsx index 5e5fdf21..7e19b71e 100644 --- a/src/pages/Loan/Borrow/BorrowVerify.tsx +++ b/src/pages/Loan/Borrow/BorrowVerify.tsx @@ -50,7 +50,7 @@ const BorrowVerify = () => { tele.ready(); tele.BackButton.show(); tele.onEvent("backButtonClicked", () => { - navigate(-1); + navigate("/loan/1/borrow/risk-disclosure"); }); } diff --git a/src/pages/Loan/Repay/RepaymentDetails.tsx b/src/pages/Loan/Repay/RepaymentDetails.tsx index 6aa9cc78..a66286dd 100644 --- a/src/pages/Loan/Repay/RepaymentDetails.tsx +++ b/src/pages/Loan/Repay/RepaymentDetails.tsx @@ -6,7 +6,6 @@ import BasicModal from "@/components/common/Modal/BasicModal"; import TransactionConfirmModal from "@/components/common/Modal/TransactionConfirmModal"; import StakingInfo from "@/components/loan/common/StakingInfo.tsx"; import { ConfirmRepaymentModal } from "@/components/loan/Repay/ConfirmRepaymentModal"; -import { useNFTDetail } from "@/hooks/api/useNFTDetail"; import { isDevMode } from "@/utils/isDevMode.ts"; import { From 35759b3afa94fd9c86eb1005a9a9b8d1dcec5ea5 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 8 Aug 2024 13:34:00 +1000 Subject: [PATCH 054/105] fix: Repay List Item bug --- src/components/loan/Repay/RepayListItem.tsx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/components/loan/Repay/RepayListItem.tsx b/src/components/loan/Repay/RepayListItem.tsx index 6b60cd6f..083a7ba5 100644 --- a/src/components/loan/Repay/RepayListItem.tsx +++ b/src/components/loan/Repay/RepayListItem.tsx @@ -31,9 +31,8 @@ const RepayListItem = () => { - navigate(`/loan/${1}/repay/details`)}>Repayment + navigate("/loan/1/repay/details")}>Repayment - /repay/details Before the due date

2 days

From 4a0f58d59c86ae554d1b7d8d2862e7290aa212d8 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 8 Aug 2024 13:39:06 +1000 Subject: [PATCH 055/105] fix: Repayment page test --- src/pages/Loan/Repay/RepaymentDetails.tsx | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/pages/Loan/Repay/RepaymentDetails.tsx b/src/pages/Loan/Repay/RepaymentDetails.tsx index a66286dd..b66fbe93 100644 --- a/src/pages/Loan/Repay/RepaymentDetails.tsx +++ b/src/pages/Loan/Repay/RepaymentDetails.tsx @@ -1,5 +1,5 @@ import { useEffect, useState } from "react"; -import { useNavigate, useParams } from "react-router-dom"; +import { useNavigate } from "react-router-dom"; import { MainButton } from "@vkruglikov/react-telegram-web-app"; import BasicModal from "@/components/common/Modal/BasicModal"; @@ -19,8 +19,6 @@ import { RepayRateBoxHeader, } from "./RepaymentDetails.styled"; -const tele = (window as any).Telegram.WebApp; - const alwaysVisibleItems = [ { label: "Borrowed nxTON", value: "000.00 nxTON" }, { label: "Principal", value: "00000 TON" }, @@ -57,10 +55,11 @@ interface ModalState { toggled: boolean; } +const tele = (window as any).Telegram?.WebApp; + // ! Data is currently mocked const RepaymentDetails = () => { const navigate = useNavigate(); - const { id } = useParams(); const [modal, setModal] = useState({ type: "confirmRepay", @@ -74,8 +73,6 @@ const RepaymentDetails = () => { })); }; - // const { nftDetail } = useNFTDetail(Number(id)); - useEffect(() => { if (tele) { tele.ready(); @@ -86,7 +83,9 @@ const RepaymentDetails = () => { } return () => { - tele.offEvent("backButtonClicked"); + if (tele) { + tele.offEvent("backButtonClicked"); + } }; }, [navigate]); From 25f7a924b86c1a921de17f61733ab95ae6758a6a Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 8 Aug 2024 13:47:07 +1000 Subject: [PATCH 056/105] wip: history screens init --- src/components/common/Router.tsx | 4 + src/components/loan/Repay/RepayListItem.tsx | 2 +- src/pages/Loan/Loan.tsx | 2 +- src/pages/Loan/LoanHistory.styled.tsx | 0 src/pages/Loan/LoanHistory.tsx | 81 +++++++++++++++++++++ src/pages/Loan/Repay/RepaymentDetails.tsx | 4 +- 6 files changed, 89 insertions(+), 4 deletions(-) create mode 100644 src/pages/Loan/LoanHistory.styled.tsx create mode 100644 src/pages/Loan/LoanHistory.tsx diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index 84a3c969..038fc009 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -6,6 +6,8 @@ import BorrowRiskDisclosure from "@/pages/Loan/Borrow/BorrowRiskDisclosure"; import BorrowVerify from "@/pages/Loan/Borrow/BorrowVerify"; import NFTDetail from "@/pages/Loan/Borrow/NFTDetail"; import Loan from "@/pages/Loan/Loan"; +import LoanHistory from "@/pages/Loan/LoanHistory"; +import RepaymentDetails from "@/pages/Loan/Repay/RepaymentDetails"; import RiskDisclosure from "@/pages/Loan/RiskDisclosure"; import Main from "@/pages/Main/Main"; import Menu from "@/pages/Menu/Menu"; @@ -43,6 +45,8 @@ const Router = () => { } /> } /> } /> + } /> + } /> } /> } /> diff --git a/src/components/loan/Repay/RepayListItem.tsx b/src/components/loan/Repay/RepayListItem.tsx index 083a7ba5..c8ab30f2 100644 --- a/src/components/loan/Repay/RepayListItem.tsx +++ b/src/components/loan/Repay/RepayListItem.tsx @@ -21,7 +21,7 @@ const RepayListItem = () => { const navigate = useNavigate(); return ( - + navigate("/loan/1/repay/details")}> 1 diff --git a/src/pages/Loan/Loan.tsx b/src/pages/Loan/Loan.tsx index 7b5ed3f7..e4ef3685 100644 --- a/src/pages/Loan/Loan.tsx +++ b/src/pages/Loan/Loan.tsx @@ -62,7 +62,7 @@ const Loan = () => {

Loan

- + navigate("/loan/history")}> loan_icon diff --git a/src/pages/Loan/LoanHistory.styled.tsx b/src/pages/Loan/LoanHistory.styled.tsx new file mode 100644 index 00000000..e69de29b diff --git a/src/pages/Loan/LoanHistory.tsx b/src/pages/Loan/LoanHistory.tsx new file mode 100644 index 00000000..23365378 --- /dev/null +++ b/src/pages/Loan/LoanHistory.tsx @@ -0,0 +1,81 @@ +import { useEffect } from "react"; +import { useNavigate } from "react-router-dom"; + +import RepaysEmpty from "@/assets/image/Loan/RepaysEmpty.png"; +import { + BorrowListItemBox, + BorrowListWrapper, + LoanNFTBoxListEmpty, + LoanNFTBoxListEmptyLink, +} from "@/components/loan/Borrow/BorrowList.styled"; + +import { LoanHeaderBox, LoanHeaderBoxTitle, LoanWrapper } from "./Loan.styled"; + +const tele = (window as any).Telegram.WebApp; + +const _LoanHistoryMock = [ + { + nftId: 1, + amount: 1000, + due: "2025-03-01T12:00:00Z", + }, + { + nftId: 2, + amount: 3000, + due: "2025-04-01T12:00:00Z", + }, + { + nftId: 3, + amount: 3100, + due: "2025-06-01T12:00:00Z", + }, +]; + +const LoanHistory = () => { + const navigate = useNavigate(); + + useEffect(() => { + if (tele) { + tele.ready(); + tele.BackButton.show(); + tele.onEvent("backButtonClicked", () => { + navigate("/loan"); + }); + } + + return () => { + tele.offEvent("backButtonClicked"); + }; + }, [navigate]); + + return ( + + + +

Loan history

+
+
+ + + {_LoanHistoryMock && _LoanHistoryMock.length > 0 ? ( + + {/* {_RepaysMock + .sort((a, b) => Number(b.due) - Number(a.due)) + .map(item => ( + + ))} */} + + ) : ( + + repays_empty + +

No results

+ There are no borrowed records. +
+ )} +
+
+ ); +}; + +export default LoanHistory; diff --git a/src/pages/Loan/Repay/RepaymentDetails.tsx b/src/pages/Loan/Repay/RepaymentDetails.tsx index b66fbe93..230299b6 100644 --- a/src/pages/Loan/Repay/RepaymentDetails.tsx +++ b/src/pages/Loan/Repay/RepaymentDetails.tsx @@ -98,7 +98,7 @@ const RepaymentDetails = () => { }; return ( - <> +
@@ -136,7 +136,7 @@ const RepaymentDetails = () => { {modal.type === "repay" && modal.toggled && ( console.log("Repayed!")} /> )} - +
); }; From 5e63e6fc6da68f7c7c128b262e602c5d7b23a928 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 9 Aug 2024 18:04:59 +1000 Subject: [PATCH 057/105] wip: history details screen, staking info comp-t update, history list item screens --- src/components/common/Router.tsx | 4 +- .../loan/Borrow/BorrowListItem.styled.tsx | 4 +- .../loan/History/HistoryListItem.styled.tsx | 72 ++++++++++++ .../loan/History/HistoryListItem.tsx | 50 ++++++++ src/components/loan/common/StakingInfo.tsx | 47 +++++--- src/pages/Loan/{ => History}/LoanHistory.tsx | 9 +- src/pages/Loan/History/LoanHistoryDetails.tsx | 107 ++++++++++++++++++ src/pages/Loan/LoanHistory.styled.tsx | 0 8 files changed, 270 insertions(+), 23 deletions(-) create mode 100644 src/components/loan/History/HistoryListItem.styled.tsx create mode 100644 src/components/loan/History/HistoryListItem.tsx rename src/pages/Loan/{ => History}/LoanHistory.tsx (90%) create mode 100644 src/pages/Loan/History/LoanHistoryDetails.tsx delete mode 100644 src/pages/Loan/LoanHistory.styled.tsx diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index 038fc009..2772792a 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -5,8 +5,9 @@ import BorrowDetails from "@/pages/Loan/Borrow/BorrowDetails"; import BorrowRiskDisclosure from "@/pages/Loan/Borrow/BorrowRiskDisclosure"; import BorrowVerify from "@/pages/Loan/Borrow/BorrowVerify"; import NFTDetail from "@/pages/Loan/Borrow/NFTDetail"; +import LoanHistory from "@/pages/Loan/History/LoanHistory"; +import LoanHistoryDetails from "@/pages/Loan/History/LoanHistoryDetails"; import Loan from "@/pages/Loan/Loan"; -import LoanHistory from "@/pages/Loan/LoanHistory"; import RepaymentDetails from "@/pages/Loan/Repay/RepaymentDetails"; import RiskDisclosure from "@/pages/Loan/RiskDisclosure"; import Main from "@/pages/Main/Main"; @@ -47,6 +48,7 @@ const Router = () => { } /> } /> } /> + } /> } /> } /> diff --git a/src/components/loan/Borrow/BorrowListItem.styled.tsx b/src/components/loan/Borrow/BorrowListItem.styled.tsx index ed3c4b4a..d47f2def 100644 --- a/src/components/loan/Borrow/BorrowListItem.styled.tsx +++ b/src/components/loan/Borrow/BorrowListItem.styled.tsx @@ -87,8 +87,8 @@ export const BorrowListBottomTextBottom = styled.div` `; export const Caption3 = styled.span` - ${({ theme }) => theme.fonts.Nexton_Label_Small}; - color: rgba(170, 174, 175, 1); + ${({ theme }) => theme.fonts.Nexton_Label_Small_2}; + color: #aaaeaf; `; export const LabelMedium = styled.p` diff --git a/src/components/loan/History/HistoryListItem.styled.tsx b/src/components/loan/History/HistoryListItem.styled.tsx new file mode 100644 index 00000000..15d3eb3c --- /dev/null +++ b/src/components/loan/History/HistoryListItem.styled.tsx @@ -0,0 +1,72 @@ +import { styled } from "styled-components"; + +import { BorrowListBottom, BorrowListItemDivider } from "../Borrow/BorrowListItem.styled"; +import { RepayListBottomTextBottom } from "../Repay/RepayListItem.styled"; + +export const HistoryListItemWrapper = styled.div` + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + + width: 100%; + padding: 1.7rem 2.1rem 1.9rem 2.1rem; + + box-shadow: 0px 0px 12px 0px rgba(206, 216, 225, 0.5); + border-radius: 2rem; + background-color: #fff; + border-left: 0.7rem solid #1f53ff; + + cursor: pointer; + + & + & { + margin-top: 1.4rem; + } +`; + +export const HistoryListTop = styled.div` + display: flex; + justify-content: space-between; + align-items: center; + + width: 100%; + margin-bottom: 1.2rem; +`; + +export const HistoryListTopLeft = styled.div` + display: flex; + justify-content: center; + align-items: center; + + p { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: #303234; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } +`; + +export const HistoryListTopButton = styled.div<{ $inactive?: boolean }>` + display: inline-flex; + height: 32px; + padding: 2px 11px; + justify-content: center; + align-items: center; + gap: 10px; + flex-shrink: 0; + + border-radius: 19px; + background: ${({ $inactive }) => ($inactive ? "#F2F2F7" : "#1F53FF")}; + + cursor: pointer; + + ${({ theme }) => theme.fonts.Nexton_Label_Small}; + color: ${({ $inactive }) => ($inactive ? "#303234" : "#fff")}; +`; + +export const HistoryListItemDivider = styled(BorrowListItemDivider)``; + +export const HistoryListBottom = styled(BorrowListBottom)``; + +export const HistoryListBottomTextBottom = styled(RepayListBottomTextBottom)``; diff --git a/src/components/loan/History/HistoryListItem.tsx b/src/components/loan/History/HistoryListItem.tsx new file mode 100644 index 00000000..d0c8545a --- /dev/null +++ b/src/components/loan/History/HistoryListItem.tsx @@ -0,0 +1,50 @@ +import { useNavigate } from "react-router-dom"; + +import { numberCutter } from "@/utils/numberCutter"; + +import { Caption3, LabelMedium } from "../Borrow/BorrowListItem.styled"; + +import { + HistoryListBottom, + HistoryListBottomTextBottom, + HistoryListItemDivider, + HistoryListItemWrapper, + HistoryListTop, + HistoryListTopButton, + HistoryListTopLeft, +} from "./HistoryListItem.styled"; + +const HistoryListItem = () => { + const navigate = useNavigate(); + + return ( + navigate("/loan/1/history/details")}> + + +

Loan 1

+
+ + navigate("/loan/1/history/details")}>Paid off +
+ + + + + + Principal + {numberCutter(123.42)} TON + + + Expired date + mm.dd.yy + + + max. LTV + 95% + + +
+ ); +}; + +export default HistoryListItem; diff --git a/src/components/loan/common/StakingInfo.tsx b/src/components/loan/common/StakingInfo.tsx index 959c146e..00ccb2d6 100644 --- a/src/components/loan/common/StakingInfo.tsx +++ b/src/components/loan/common/StakingInfo.tsx @@ -22,11 +22,19 @@ interface StakingInfoProps { isExpandable: boolean; theme: Theme; title: string; + titleButton?: JSX.Element; alwaysVisibleItems?: SectionItem[]; stakingInfoItems: Section[]; } -const StakingInfo = ({ isExpandable, theme, title, stakingInfoItems, alwaysVisibleItems }: StakingInfoProps) => { +const StakingInfo = ({ + isExpandable, + theme, + title, + titleButton, + stakingInfoItems, + alwaysVisibleItems, +}: StakingInfoProps) => { const [isExpanded, setExpanded] = useState(false); const arrowsTheme = theme === "black" ? "white" : "black"; @@ -40,9 +48,11 @@ const StakingInfo = ({ isExpandable, theme, title, stakingInfoItems, alwaysVisib $itemsCenter={isExpandable} onClick={isExpandable && !isExpanded ? handleExpandInfo : undefined} > - - {title} - + +

{title}

+ + {titleButton && titleButton} +
{alwaysVisibleItems && alwaysVisibleItems.length > 0 && alwaysVisibleItems.map((item, index) => ( @@ -72,9 +82,9 @@ const StakingInfo = ({ isExpandable, theme, title, stakingInfoItems, alwaysVisib {stakingInfoItems.map((section, index) => ( {section.header && ( - - {section.header} - + +

{section.header}

+
)} {section.items.map((sectionItem, index) => ( @@ -122,19 +132,24 @@ const StakingInfoWrapper = styled.div<{ $theme: Theme; $marginTop?: boolean; $it box-shadow: 0px 0px 12px 0px rgba(206, 216, 225, 0.5); `; -const StakingInfoHeaderText = styled.p<{ $theme: Theme; $textCenter?: boolean; $marginTop?: boolean }>` +const StakingInfoHeader = styled.div<{ $theme: Theme; $textCenter?: boolean; $marginTop?: boolean }>` width: 100%; - ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; - color: ${({ $theme }) => ($theme === "black" ? "#fff" : "#303234")}; + display: flex; + justify-content: ${({ $textCenter }) => ($textCenter ? "center" : "space-between")}; + align-items: center; + margin-bottom: 1rem; + margin-top: ${({ $marginTop }) => ($marginTop ? "1.6rem" : "0")}; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; + p { + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + color: ${({ $theme }) => ($theme === "black" ? "#fff" : "#303234")}; - text-align: ${({ $textCenter }) => ($textCenter ? "center" : "left")}; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; - margin-bottom: 1rem; - margin-top: ${({ $marginTop }) => ($marginTop ? "1.6rem" : "0")}; + text-align: ${({ $textCenter }) => ($textCenter ? "center" : "left")}; + } `; const StakingInfoItem = styled.div<{ $theme: Theme }>` diff --git a/src/pages/Loan/LoanHistory.tsx b/src/pages/Loan/History/LoanHistory.tsx similarity index 90% rename from src/pages/Loan/LoanHistory.tsx rename to src/pages/Loan/History/LoanHistory.tsx index 23365378..454ba2a8 100644 --- a/src/pages/Loan/LoanHistory.tsx +++ b/src/pages/Loan/History/LoanHistory.tsx @@ -8,8 +8,9 @@ import { LoanNFTBoxListEmpty, LoanNFTBoxListEmptyLink, } from "@/components/loan/Borrow/BorrowList.styled"; +import HistoryListItem from "@/components/loan/History/HistoryListItem"; -import { LoanHeaderBox, LoanHeaderBoxTitle, LoanWrapper } from "./Loan.styled"; +import { LoanHeaderBox, LoanHeaderBoxTitle, LoanWrapper } from "../Loan.styled"; const tele = (window as any).Telegram.WebApp; @@ -59,11 +60,11 @@ const LoanHistory = () => { {_LoanHistoryMock && _LoanHistoryMock.length > 0 ? ( - {/* {_RepaysMock + {_LoanHistoryMock .sort((a, b) => Number(b.due) - Number(a.due)) .map(item => ( - - ))} */} + + ))} ) : ( diff --git a/src/pages/Loan/History/LoanHistoryDetails.tsx b/src/pages/Loan/History/LoanHistoryDetails.tsx new file mode 100644 index 00000000..16f73843 --- /dev/null +++ b/src/pages/Loan/History/LoanHistoryDetails.tsx @@ -0,0 +1,107 @@ +import { useEffect } from "react"; +import { useNavigate } from "react-router-dom"; +import { styled } from "styled-components"; + +import StakingInfo from "@/components/loan/common/StakingInfo"; + +import { LoanHeaderBox, LoanHeaderBoxTitle, LoanWrapper } from "../Loan.styled"; + +const tele = (window as any).Telegram.WebApp; + +const alwaysVisibleItems = [ + { label: "Borrowed nxTON", value: "000.00 nxTON" }, + { label: "Principal", value: "00000 TON" }, + { label: "LTV", value: "50.0%" }, + { label: "Maturity date", value: "mm.dd.yy" }, +]; + +const stakingInfoItems = [ + { + header: "Collateralizing NFT info", + items: [ + { label: "Token ID", value: "4817sddss863ddddwdwsdwd" }, + { label: "Network", value: "TON" }, + { label: "LTV", value: "50.0%" }, + ], + }, + { + header: "Staking info", + items: [ + { label: "Principal", value: "10,000 TON" }, + { label: "Nominator Pool", value: "DG Pool #1" }, + { label: "Leveraged", value: "X1.0" }, + { label: "Lockup period", value: "60 days" }, + { label: "Unstakable date", value: "DD.MM.YY" }, + { label: "Protocol Fees", value: "2%" }, + { label: "Staking APR", value: "5%" }, + { label: "Total Amount", value: "10,083 TON" }, + ], + }, +]; + +// ! Data is currently mocked +const LoanHistoryDetails = () => { + const navigate = useNavigate(); + + useEffect(() => { + if (tele) { + tele.ready(); + tele.BackButton.show(); + tele.onEvent("backButtonClicked", () => { + navigate("/loan/history"); + }); + } + + return () => { + tele.offEvent("backButtonClicked"); + }; + }, [navigate]); + + return ( + + + +

Loan detail

+
+
+ + + Paid off} + alwaysVisibleItems={alwaysVisibleItems} + stakingInfoItems={stakingInfoItems} + /> + +
+ ); +}; + +export default LoanHistoryDetails; + +const LoanContentBox = styled.div` + display: flex; + flex-direction: column; + gap: 1.1rem; + + margin-top: 3.1rem; + padding-bottom: 4rem; +`; + +const StakingInfoTitleButton = styled.div<{ $theme: "paid" | "expiration" }>` + display: inline-flex; + height: 32px; + padding: 2px 11px; + justify-content: center; + align-items: center; + gap: 10px; + flex-shrink: 0; + + border-radius: 19px; + background: ${({ $theme }) => ($theme === "paid" ? "#1f53ff" : "#F2F2F7")}; + color: ${({ $theme }) => ($theme === "paid" ? "#fff" : "#303234")}; + + ${({ theme }) => theme.fonts.Nexton_Label_Small}; +`; diff --git a/src/pages/Loan/LoanHistory.styled.tsx b/src/pages/Loan/LoanHistory.styled.tsx deleted file mode 100644 index e69de29b..00000000 From 932fcca75f594ecd72e3a90ec3b3ea64b13a498c Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 12 Aug 2024 15:42:12 +1000 Subject: [PATCH 058/105] wip: minor fixes --- src/components/common/Modal/BasicModal.tsx | 13 ++++++++++++- .../loan/Borrow/BorrowListItem.styled.tsx | 4 ++-- .../loan/History/HistoryListItem.styled.tsx | 4 ++-- src/components/loan/History/HistoryListItem.tsx | 2 +- src/components/loan/Repay/RepayListItem.styled.tsx | 10 ++++++---- src/components/loan/Repay/RepayListItem.tsx | 2 +- src/pages/Loan/Repay/RepaymentDetails.tsx | 8 ++++---- 7 files changed, 28 insertions(+), 15 deletions(-) diff --git a/src/components/common/Modal/BasicModal.tsx b/src/components/common/Modal/BasicModal.tsx index 226494d9..27f50c2a 100644 --- a/src/components/common/Modal/BasicModal.tsx +++ b/src/components/common/Modal/BasicModal.tsx @@ -43,7 +43,18 @@ function BasicModal(props: BasicModalProps) { ); - case "loan": + case "borrow": + return ( + <> + {MODAL_TEXT[type].title} + + {MODAL_TEXT[type].desc} + {MODAL_TEXT[type].descBr} + {MODAL_TEXT[type].descBr2} + + + ); + case "repay": return ( <> {MODAL_TEXT[type].title} diff --git a/src/components/loan/Borrow/BorrowListItem.styled.tsx b/src/components/loan/Borrow/BorrowListItem.styled.tsx index d47f2def..e3e3b44d 100644 --- a/src/components/loan/Borrow/BorrowListItem.styled.tsx +++ b/src/components/loan/Borrow/BorrowListItem.styled.tsx @@ -91,8 +91,8 @@ export const Caption3 = styled.span` color: #aaaeaf; `; -export const LabelMedium = styled.p` - color: #303234; +export const LabelMedium = styled.p<{ $inactive?: boolean }>` + color: ${({ $inactive }) => ($inactive ? "#B9B9BA" : "#303234")}; font-family: Montserrat; font-size: 11px; font-style: normal; diff --git a/src/components/loan/History/HistoryListItem.styled.tsx b/src/components/loan/History/HistoryListItem.styled.tsx index 15d3eb3c..d106e0d4 100644 --- a/src/components/loan/History/HistoryListItem.styled.tsx +++ b/src/components/loan/History/HistoryListItem.styled.tsx @@ -3,7 +3,7 @@ import { styled } from "styled-components"; import { BorrowListBottom, BorrowListItemDivider } from "../Borrow/BorrowListItem.styled"; import { RepayListBottomTextBottom } from "../Repay/RepayListItem.styled"; -export const HistoryListItemWrapper = styled.div` +export const HistoryListItemWrapper = styled.div<{ $inactive?: boolean }>` display: flex; flex-direction: column; justify-content: center; @@ -15,7 +15,7 @@ export const HistoryListItemWrapper = styled.div` box-shadow: 0px 0px 12px 0px rgba(206, 216, 225, 0.5); border-radius: 2rem; background-color: #fff; - border-left: 0.7rem solid #1f53ff; + border-left: ${({ $inactive }) => ($inactive ? "0.7rem solid #E1E4E6" : "0.7rem solid #1f53ff")}; cursor: pointer; diff --git a/src/components/loan/History/HistoryListItem.tsx b/src/components/loan/History/HistoryListItem.tsx index d0c8545a..ed42f577 100644 --- a/src/components/loan/History/HistoryListItem.tsx +++ b/src/components/loan/History/HistoryListItem.tsx @@ -40,7 +40,7 @@ const HistoryListItem = () => { max. LTV - 95% + 95.0% diff --git a/src/components/loan/Repay/RepayListItem.styled.tsx b/src/components/loan/Repay/RepayListItem.styled.tsx index 13c659fb..3b1e1446 100644 --- a/src/components/loan/Repay/RepayListItem.styled.tsx +++ b/src/components/loan/Repay/RepayListItem.styled.tsx @@ -12,7 +12,9 @@ import { export const RepayListItemWrapper = styled(BorrowListItemWrapper)<{ $inactive?: boolean }>` background-color: ${({ $inactive }) => ($inactive ? "#F1F4F4" : "#fff")}; - cursor: default; + cursor: ${({ $inactive }) => ($inactive ? "not-allowed" : "default")}; + + box-shadow: 0px 0px 12px 0px rgba(206, 216, 225, 0.5); `; export const RepayListTop = styled(BorrowListTop)` @@ -51,13 +53,13 @@ export const RepayListTopButton = styled.div<{ $inactive?: boolean }>` border-radius: 20px; background: ${({ $inactive }) => ($inactive ? "#E1E4E6" : "#1A1B23")}; - cursor: pointer; + cursor: ${({ $inactive }) => ($inactive ? "not-allowed" : "pointer")}; ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; color: #fff; `; -export const RepayListDueDate = styled.div` +export const RepayListDueDate = styled.div<{ $inactive?: boolean }>` width: 100%; display: flex; align-items: center; @@ -72,7 +74,7 @@ export const RepayListDueDate = styled.div` } p { - color: #303234; + color: ${({ $inactive }) => ($inactive ? "#FF7979" : "#303234")}; ${({ theme }) => theme.fonts.Nexton_Label_Small_2}; } `; diff --git a/src/components/loan/Repay/RepayListItem.tsx b/src/components/loan/Repay/RepayListItem.tsx index c8ab30f2..eaf0e99c 100644 --- a/src/components/loan/Repay/RepayListItem.tsx +++ b/src/components/loan/Repay/RepayListItem.tsx @@ -49,7 +49,7 @@ const RepayListItem = () => {
Interest rate - 50% + 95%
diff --git a/src/pages/Loan/Repay/RepaymentDetails.tsx b/src/pages/Loan/Repay/RepaymentDetails.tsx index 230299b6..fc702768 100644 --- a/src/pages/Loan/Repay/RepaymentDetails.tsx +++ b/src/pages/Loan/Repay/RepaymentDetails.tsx @@ -32,7 +32,7 @@ const stakingInfoItems = [ items: [ { label: "Token ID", value: "4817sddss863ddddwdwsdwd" }, { label: "Network", value: "TON" }, - { label: "LTV", value: "50.0%" }, + { label: "LTV", value: "95.0%" }, ], }, { @@ -92,7 +92,7 @@ const RepaymentDetails = () => { const handleRepayConfirm = () => { toggleModal(); - console.log("Borrow confirmed!"); + console.log("Repayment confirmed!"); setModal({ type: "repay", toggled: true }); }; @@ -123,9 +123,9 @@ const RepaymentDetails = () => { {!isDevMode ? ( - console.log("Repay Modal")} /> + ) : ( - + )} From dbf2ebd529137281165e0f1fe3ce39c4c0b3cf2f Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 13 Aug 2024 14:40:11 +1000 Subject: [PATCH 059/105] fix: LTV numbers updated --- src/components/loan/Borrow/BorrowListItem.tsx | 2 +- src/pages/Loan/Borrow/NFTDetail.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/loan/Borrow/BorrowListItem.tsx b/src/components/loan/Borrow/BorrowListItem.tsx index 297e9857..ae462327 100644 --- a/src/components/loan/Borrow/BorrowListItem.tsx +++ b/src/components/loan/Borrow/BorrowListItem.tsx @@ -66,7 +66,7 @@ const BorrowListItem = (props: BorrowListProps) => { max LTV. - 50% + 95%
diff --git a/src/pages/Loan/Borrow/NFTDetail.tsx b/src/pages/Loan/Borrow/NFTDetail.tsx index 5086dc03..753c44b6 100644 --- a/src/pages/Loan/Borrow/NFTDetail.tsx +++ b/src/pages/Loan/Borrow/NFTDetail.tsx @@ -84,7 +84,7 @@ const NFTDetail = () => { LTV - 50% + 95% From 09470a0ff01a3a936dc6c4ccd4764f08a54341fa Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Wed, 14 Aug 2024 14:18:13 +1000 Subject: [PATCH 060/105] feat: added BorrowInput component --- src/components/stake/common/TokensInput.tsx | 15 ++- src/pages/Loan/Borrow/BorrowDetails.tsx | 109 ++++++++++++++---- src/pages/Loan/Borrow/NFTDetail.tsx | 2 +- src/pages/Loan/History/LoanHistoryDetails.tsx | 2 +- src/pages/Loan/Repay/RepaymentDetails.tsx | 2 +- 5 files changed, 99 insertions(+), 31 deletions(-) diff --git a/src/components/stake/common/TokensInput.tsx b/src/components/stake/common/TokensInput.tsx index 22ab6bdc..cd7f351c 100644 --- a/src/components/stake/common/TokensInput.tsx +++ b/src/components/stake/common/TokensInput.tsx @@ -9,12 +9,13 @@ interface TokenInputProps extends NumericFormatProps { name: string; setValue: (name: string, value: string) => void; tokenLabel: string; - + control: any; - balance: number; + balance?: number; error?: string; disabled?: boolean; saveAs?: "floatValue" | "formattedValue"; + disableMax?: boolean; } const TokenInput = ({ @@ -26,6 +27,7 @@ const TokenInput = ({ error, disabled, saveAs = "formattedValue", + disableMax = false, ...props }: TokenInputProps) => { return ( @@ -48,9 +50,12 @@ const TokenInput = ({ /> - setValue(name, String(numberCutter(balance)))}> - MAX - + {!disableMax && ( + setValue(name, String(numberCutter(balance)))}> + MAX + + )} + {tokenLabel} diff --git a/src/pages/Loan/Borrow/BorrowDetails.tsx b/src/pages/Loan/Borrow/BorrowDetails.tsx index d0e821b2..9c61e5b8 100644 --- a/src/pages/Loan/Borrow/BorrowDetails.tsx +++ b/src/pages/Loan/Borrow/BorrowDetails.tsx @@ -1,11 +1,16 @@ import { useEffect } from "react"; +import { useForm } from "react-hook-form"; import { useNavigate, useParams } from "react-router-dom"; +import { zodResolver } from "@hookform/resolvers/zod"; import { MainButton } from "@vkruglikov/react-telegram-web-app"; +import { z } from "zod"; import IcExclude from "@/assets/icons/Loan/ic_exclude.svg"; import ProgressBar from "@/components/loan/common/ProgressBar.tsx"; import StakingInfo from "@/components/loan/common/StakingInfo.tsx"; +import TokenInput from "@/components/stake/common/TokensInput.tsx"; import { useNFTDetail } from "@/hooks/api/useNFTDetail"; +import useTonConnect from "@/hooks/contract/useTonConnect.ts"; import { isDevMode } from "@/utils/isDevMode.ts"; import { @@ -25,7 +30,7 @@ import { const tele = (window as any).Telegram.WebApp; const alwaysVisibleItems = [ - { label: "Token ID", value: "4817sddss863ddddwdwsdwd" }, + { label: "NFT ID", value: "4817sddss863ddddwdwsdwd" }, { label: "Network", value: "TON" }, { label: "LTV", value: "50.0%" }, ]; @@ -48,11 +53,38 @@ const stakingInfoItems = [ // ! Data is currently mocked const BorrowDetails = () => { + const { connected } = useTonConnect(); const navigate = useNavigate(); const { id } = useParams(); // const { nftDetail } = useNFTDetail(Number(id)); + const schema = z.object({ + borrowAmount: z + .string() + .min(1, "Please enter amount") + .transform(Number) + .refine(val => !isNaN(val), "Please enter a valid number") + .refine(val => val >= 1, "Please stake more than 1 TON"), + }); + + const { + handleSubmit, + setValue, + setError, + control, + formState: { errors }, + } = useForm({ + resolver: zodResolver(schema), + mode: "onChange", + shouldFocusError: true, + defaultValues: { + borrowAmount: "", + }, + }); + + console.log("errors", errors); + useEffect(() => { if (tele) { tele.ready(); @@ -67,6 +99,21 @@ const BorrowDetails = () => { }; }, [navigate]); + useEffect(() => { + if (!connected) { + setError("borrowAmount", { + type: "walletConnect", + message: "Please connect your wallet first", + }); + } + }, [connected, setError]); + + const onSubmit = data => { + console.log("form data", data); + + navigate(`/loan/${id}/borrow/risk-disclosure`); + }; + return ( @@ -77,34 +124,50 @@ const BorrowDetails = () => { - - - - - exclude_icon - - - +
+ + + + + exclude_icon + + + {/* @deprecated */} + {/* Borrow 1NXT = n TON 000.00 nxTON - - - - {!isDevMode ? ( - navigate(`/loan/${id}/borrow/risk-disclosure`)} /> - ) : ( - - )} + */} + + + + + {!isDevMode ? ( + + ) : ( + + )} +
); }; diff --git a/src/pages/Loan/Borrow/NFTDetail.tsx b/src/pages/Loan/Borrow/NFTDetail.tsx index 753c44b6..481abe29 100644 --- a/src/pages/Loan/Borrow/NFTDetail.tsx +++ b/src/pages/Loan/Borrow/NFTDetail.tsx @@ -73,7 +73,7 @@ const NFTDetail = () => { - Token ID + NFT ID 542394817863ddddddddd diff --git a/src/pages/Loan/History/LoanHistoryDetails.tsx b/src/pages/Loan/History/LoanHistoryDetails.tsx index 16f73843..dc3e1ff8 100644 --- a/src/pages/Loan/History/LoanHistoryDetails.tsx +++ b/src/pages/Loan/History/LoanHistoryDetails.tsx @@ -19,7 +19,7 @@ const stakingInfoItems = [ { header: "Collateralizing NFT info", items: [ - { label: "Token ID", value: "4817sddss863ddddwdwsdwd" }, + { label: "NFT ID", value: "4817sddss863ddddwdwsdwd" }, { label: "Network", value: "TON" }, { label: "LTV", value: "50.0%" }, ], diff --git a/src/pages/Loan/Repay/RepaymentDetails.tsx b/src/pages/Loan/Repay/RepaymentDetails.tsx index fc702768..b86d6e28 100644 --- a/src/pages/Loan/Repay/RepaymentDetails.tsx +++ b/src/pages/Loan/Repay/RepaymentDetails.tsx @@ -30,7 +30,7 @@ const stakingInfoItems = [ { header: "Collateralizing NFT info", items: [ - { label: "Token ID", value: "4817sddss863ddddwdwsdwd" }, + { label: "NFT ID", value: "4817sddss863ddddwdwsdwd" }, { label: "Network", value: "TON" }, { label: "LTV", value: "95.0%" }, ], From 623c739b78a9c090d051f18a945b3f731e95ea75 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 19 Aug 2024 16:38:59 +1000 Subject: [PATCH 061/105] feat:nftInfo DTO updated --- src/components/loan/Borrow/BorrowList.tsx | 22 ++++++++++++++----- src/components/loan/Borrow/BorrowListItem.tsx | 4 ++-- src/pages/Loan/Borrow/NFTDetail.tsx | 2 -- src/pages/Main/Main.tsx | 2 +- src/types/Nft.ts | 4 +++- 5 files changed, 22 insertions(+), 12 deletions(-) diff --git a/src/components/loan/Borrow/BorrowList.tsx b/src/components/loan/Borrow/BorrowList.tsx index c6c04cb4..e1a1f8ae 100644 --- a/src/components/loan/Borrow/BorrowList.tsx +++ b/src/components/loan/Borrow/BorrowList.tsx @@ -15,7 +15,9 @@ import BorrowListItem from "./BorrowListItem"; const _NFTsMock = [ { nftId: 1, - amount: 1000, + principal: 1000, + totalAmount: 1000, + unstakableDate: "2024-03-01T12:00:00Z", leverage: 2, lockPeriod: 55, timeStamp: "2024-03-01T12:00:00Z", @@ -24,7 +26,9 @@ const _NFTsMock = [ }, { nftId: 2, - amount: 500, + principal: 500, + totalAmount: 500, + unstakableDate: "2024-10-02T12:00:00Z", leverage: 3, lockPeriod: 55, timeStamp: "2024-10-02T12:00:00Z", @@ -33,7 +37,9 @@ const _NFTsMock = [ }, { nftId: 3, - amount: 750, + principal: 750, + totalAmount: 1000, + unstakableDate: "2024-07-03T12:00:00Z", leverage: 1.5, lockPeriod: 55, timeStamp: "2024-07-03T12:00:00Z", @@ -42,7 +48,9 @@ const _NFTsMock = [ }, { nftId: 4, - amount: 1200, + principal: 1200, + totalAmount: 1200, + unstakableDate: "2023-07-04T12:00:00Z", leverage: 2.5, lockPeriod: 55, timeStamp: "2023-07-04T12:00:00Z", @@ -51,7 +59,9 @@ const _NFTsMock = [ }, { nftId: 5, - amount: 300, + principal: 300, + totalAmount: 300, + unstakableDate: "2024-07-05T12:00:00Z", leverage: 4, lockPeriod: 55, timeStamp: "2024-07-05T12:00:00Z", @@ -63,7 +73,7 @@ const _NFTsMock = [ // ! Data is currently mocked const BorrowList = ({ filter }: { filter?: FilterNFTs }) => { const { address } = useTonConnect(); - const { nftList } = useStakeInfo(address); + // const { nftList } = useStakeInfo("kQA0OzE2rmi0k54C_WtmO3pqXCEnpdG8k_S_eA2K1er6EZfd"); return ( diff --git a/src/components/loan/Borrow/BorrowListItem.tsx b/src/components/loan/Borrow/BorrowListItem.tsx index ae462327..de96935b 100644 --- a/src/components/loan/Borrow/BorrowListItem.tsx +++ b/src/components/loan/Borrow/BorrowListItem.tsx @@ -25,7 +25,7 @@ interface BorrowListProps { } const BorrowListItem = (props: BorrowListProps) => { - const { nftId, amount, timeStamp, lockPeriod } = props.item; + const { nftId, principal, totalAmount, unstakableDate, timeStamp, lockPeriod } = props.item; const navigate = useNavigate(); @@ -58,7 +58,7 @@ const BorrowListItem = (props: BorrowListProps) => { Principal - {numberCutter(amount)} TON + {numberCutter(principal)} TON Expired date diff --git a/src/pages/Loan/Borrow/NFTDetail.tsx b/src/pages/Loan/Borrow/NFTDetail.tsx index 481abe29..54061c40 100644 --- a/src/pages/Loan/Borrow/NFTDetail.tsx +++ b/src/pages/Loan/Borrow/NFTDetail.tsx @@ -40,8 +40,6 @@ const NFTDetail = () => { const navigate = useNavigate(); const { id } = useParams(); - // const { nftDetail } = useNFTDetail(Number(id)); - useEffect(() => { if (tele) { tele.ready(); diff --git a/src/pages/Main/Main.tsx b/src/pages/Main/Main.tsx index b1e3d035..15d0848c 100644 --- a/src/pages/Main/Main.tsx +++ b/src/pages/Main/Main.tsx @@ -144,7 +144,7 @@ const Main = () => { // Calculate the total amount staked const totalStaked = useMemo(() => { - return nftList?.reduce((acc, nft) => acc + nft.amount, 0) || 0; + return nftList?.reduce((acc, nft) => acc + nft.principal, 0) || 0; }, [nftList]); // Toggle welcome modal diff --git a/src/types/Nft.ts b/src/types/Nft.ts index ffab89ac..79c4e8ee 100644 --- a/src/types/Nft.ts +++ b/src/types/Nft.ts @@ -3,10 +3,12 @@ export interface stakeInfo { } export interface nftInfo { nftId: number; - amount: number; + principal: number; + totalAmount: number; leverage: number; lockPeriod: number; timeStamp: string; nominator: string; status: number; + unstakableDate: string; } From a6ac18324f896f4eea566752dfc87f8409059c3c Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 20 Aug 2024 12:50:07 +1000 Subject: [PATCH 062/105] wip: connected NFTDetail page with the updated API --- src/assets/icons/Loan/ic_trend_right.svg | 3 + src/components/common/Router.tsx | 6 +- src/components/loan/Borrow/BorrowList.tsx | 83 +----------- src/components/loan/Borrow/BorrowListItem.tsx | 4 +- src/hooks/api/useNFTDetail.tsx | 14 +- src/hooks/api/useStakeInfo.tsx | 6 +- src/pages/Loan/Borrow/BorrowDetails.tsx | 60 +++++---- src/pages/Loan/Borrow/NFTDetail.tsx | 95 ------------- src/pages/Loan/Loan.tsx | 6 +- .../NFTDetail}/NFTDetail.styled.tsx | 6 +- src/pages/MyAsset/NFTDetail/NFTDetail.tsx | 126 ++++++++++++++++++ src/pages/MyAsset/StakingNftDetail.tsx | 1 + 12 files changed, 186 insertions(+), 224 deletions(-) create mode 100644 src/assets/icons/Loan/ic_trend_right.svg delete mode 100644 src/pages/Loan/Borrow/NFTDetail.tsx rename src/pages/{Loan/Borrow => MyAsset/NFTDetail}/NFTDetail.styled.tsx (91%) create mode 100644 src/pages/MyAsset/NFTDetail/NFTDetail.tsx diff --git a/src/assets/icons/Loan/ic_trend_right.svg b/src/assets/icons/Loan/ic_trend_right.svg new file mode 100644 index 00000000..be0bd0c6 --- /dev/null +++ b/src/assets/icons/Loan/ic_trend_right.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index 2772792a..09347dca 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -4,7 +4,6 @@ import Dashboard from "@/pages/Dashboard/Dashboard"; import BorrowDetails from "@/pages/Loan/Borrow/BorrowDetails"; import BorrowRiskDisclosure from "@/pages/Loan/Borrow/BorrowRiskDisclosure"; import BorrowVerify from "@/pages/Loan/Borrow/BorrowVerify"; -import NFTDetail from "@/pages/Loan/Borrow/NFTDetail"; import LoanHistory from "@/pages/Loan/History/LoanHistory"; import LoanHistoryDetails from "@/pages/Loan/History/LoanHistoryDetails"; import Loan from "@/pages/Loan/Loan"; @@ -13,8 +12,8 @@ import RiskDisclosure from "@/pages/Loan/RiskDisclosure"; import Main from "@/pages/Main/Main"; import Menu from "@/pages/Menu/Menu"; import MyAsset from "@/pages/MyAsset/MyAsset"; +import NFTDetail from "@/pages/MyAsset/NFTDetail/NFTDetail"; import NftList from "@/pages/MyAsset/NftList"; -import StakingNftDetail from "@/pages/MyAsset/StakingNftDetail"; import UnstakingDetail from "@/pages/MyAsset/UnstakingDetail"; import UnstakingList from "@/pages/MyAsset/UnstakingList"; import Nlp from "@/pages/Nlp/Nlp"; @@ -42,7 +41,6 @@ const Router = () => { } /> } /> - } /> } /> } /> } /> @@ -57,7 +55,7 @@ const Router = () => { } /> } /> - } /> + } /> } /> } /> } /> diff --git a/src/components/loan/Borrow/BorrowList.tsx b/src/components/loan/Borrow/BorrowList.tsx index e1a1f8ae..cefb63b3 100644 --- a/src/components/loan/Borrow/BorrowList.tsx +++ b/src/components/loan/Borrow/BorrowList.tsx @@ -1,8 +1,8 @@ import IcArrowRight from "@/assets/icons/Loan/ic_arrow_right.svg"; import NFTsEmpty from "@/assets/image/Loan/NFTsEmpty.png"; -import { useStakeInfo } from "@/hooks/api/useStakeInfo"; import useTonConnect from "@/hooks/contract/useTonConnect"; import { FilterNFTs } from "@/pages/Loan/Loan"; +import { nftInfo } from "@/types/Nft"; import { BorrowListItemBox, @@ -12,88 +12,13 @@ import { } from "./BorrowList.styled"; import BorrowListItem from "./BorrowListItem"; -const _NFTsMock = [ - { - nftId: 1, - principal: 1000, - totalAmount: 1000, - unstakableDate: "2024-03-01T12:00:00Z", - leverage: 2, - lockPeriod: 55, - timeStamp: "2024-03-01T12:00:00Z", - nominator: "User1", - status: 1, - }, - { - nftId: 2, - principal: 500, - totalAmount: 500, - unstakableDate: "2024-10-02T12:00:00Z", - leverage: 3, - lockPeriod: 55, - timeStamp: "2024-10-02T12:00:00Z", - nominator: "User2", - status: 2, - }, - { - nftId: 3, - principal: 750, - totalAmount: 1000, - unstakableDate: "2024-07-03T12:00:00Z", - leverage: 1.5, - lockPeriod: 55, - timeStamp: "2024-07-03T12:00:00Z", - nominator: "User3", - status: 1, - }, - { - nftId: 4, - principal: 1200, - totalAmount: 1200, - unstakableDate: "2023-07-04T12:00:00Z", - leverage: 2.5, - lockPeriod: 55, - timeStamp: "2023-07-04T12:00:00Z", - nominator: "User4", - status: 3, - }, - { - nftId: 5, - principal: 300, - totalAmount: 300, - unstakableDate: "2024-07-05T12:00:00Z", - leverage: 4, - lockPeriod: 55, - timeStamp: "2024-07-05T12:00:00Z", - nominator: "User5", - status: 0, - }, -]; - // ! Data is currently mocked -const BorrowList = ({ filter }: { filter?: FilterNFTs }) => { - const { address } = useTonConnect(); - // const { nftList } = useStakeInfo("kQA0OzE2rmi0k54C_WtmO3pqXCEnpdG8k_S_eA2K1er6EZfd"); - +const BorrowList = ({ filter, nftList }: { filter?: FilterNFTs; nftList: nftInfo[] }) => { return ( - {/* {nftList && nftList.length > 0 ? ( - nftList.sort((a, b) => Number(b.timeStamp) - Number(a.timeStamp)).map(item =>

{item.nftId}

) - ) : ( - - nfts_empty - -

No results

- - Let’s move to staking to get new NFT arrow_right - -
- )} */} - - {/* // * Mocked data */} - {_NFTsMock && _NFTsMock.length > 0 ? ( + {nftList && nftList.length > 0 ? ( - {_NFTsMock + {nftList .sort((a, b) => Number(b.timeStamp) - Number(a.timeStamp)) .map(item => ( diff --git a/src/components/loan/Borrow/BorrowListItem.tsx b/src/components/loan/Borrow/BorrowListItem.tsx index de96935b..73b84787 100644 --- a/src/components/loan/Borrow/BorrowListItem.tsx +++ b/src/components/loan/Borrow/BorrowListItem.tsx @@ -30,7 +30,7 @@ const BorrowListItem = (props: BorrowListProps) => { const navigate = useNavigate(); return ( - navigate(`/loan/${nftId}`)}> + navigate(`/myasset/${nftId}`)}> {DDayChange(timeStamp, lockPeriod) > 55 ? ( @@ -62,7 +62,7 @@ const BorrowListItem = (props: BorrowListProps) => {
Expired date - {expiredDateChanger(timeStamp, lockPeriod, "detail")} + {unstakableDate} max LTV. diff --git a/src/hooks/api/useNFTDetail.tsx b/src/hooks/api/useNFTDetail.tsx index 17d02e56..63fbd723 100644 --- a/src/hooks/api/useNFTDetail.tsx +++ b/src/hooks/api/useNFTDetail.tsx @@ -1,18 +1,14 @@ import useSWR from "swr"; import { nextonFetcher } from "@/api/axios"; -import { stakeInfo } from "@/types/Nft"; +import { nftInfo } from "@/types/Nft"; export const useNFTDetail = (nftId: number) => { - const { data } = useSWR( - `/data/getStakeInfoByNftId?nftId=${nftId}`, - nextonFetcher, - { - errorRetryInterval: 3, - } - ); + const { data } = useSWR(`/data/getStakeInfoByNftId?nftId=${nftId}`, nextonFetcher, { + errorRetryInterval: 3, + }); return { - nftDetail: data?.stakeInfos, + nftDetail: data, }; }; diff --git a/src/hooks/api/useStakeInfo.tsx b/src/hooks/api/useStakeInfo.tsx index bcfe6e49..d9726bd2 100644 --- a/src/hooks/api/useStakeInfo.tsx +++ b/src/hooks/api/useStakeInfo.tsx @@ -1,10 +1,10 @@ import useSWR from "swr"; import { nextonFetcher } from "@/api/axios"; -import { stakeInfo } from "@/types/Nft"; +import { nftInfo } from "@/types/Nft"; export const useStakeInfo = (address: string) => { - const { data, isLoading, error } = useSWR( + const { data, isLoading, error } = useSWR( `/data/getAllStakeInfoByAddress?address=${address}`, nextonFetcher, { @@ -13,7 +13,7 @@ export const useStakeInfo = (address: string) => { ); return { - nftList: data?.stakeInfos, + nftList: data, isLoading, isError: Boolean(error), }; diff --git a/src/pages/Loan/Borrow/BorrowDetails.tsx b/src/pages/Loan/Borrow/BorrowDetails.tsx index 9c61e5b8..9f5e75c6 100644 --- a/src/pages/Loan/Borrow/BorrowDetails.tsx +++ b/src/pages/Loan/Borrow/BorrowDetails.tsx @@ -1,4 +1,4 @@ -import { useEffect } from "react"; +import { useEffect, useState } from "react"; import { useForm } from "react-hook-form"; import { useNavigate, useParams } from "react-router-dom"; import { zodResolver } from "@hookform/resolvers/zod"; @@ -29,35 +29,13 @@ import { const tele = (window as any).Telegram.WebApp; -const alwaysVisibleItems = [ - { label: "NFT ID", value: "4817sddss863ddddwdwsdwd" }, - { label: "Network", value: "TON" }, - { label: "LTV", value: "50.0%" }, -]; - -const stakingInfoItems = [ - { - header: "Staking info", - items: [ - { label: "Principal", value: "10,000 TON" }, - { label: "Nominator Pool", value: "DG Pool #1" }, - { label: "Leveraged", value: "X1.0" }, - { label: "Lockup period", value: "60 days" }, - { label: "Unstakable date", value: "DD.MM.YY" }, - { label: "Protocol Fees", value: "2%" }, - { label: "Staking APR", value: "5%" }, - { label: "Total Amount", value: "10,083 TON" }, - ], - }, -]; - -// ! Data is currently mocked const BorrowDetails = () => { const { connected } = useTonConnect(); const navigate = useNavigate(); + const [alwaysVisibleInfo, setAlwaysVisibleInfo] = useState([]); + const [stakingInfo, setStakingInfo] = useState([{ items: [] }]); const { id } = useParams(); - - // const { nftDetail } = useNFTDetail(Number(id)); + const { nftDetail } = useNFTDetail(Number(id)); const schema = z.object({ borrowAmount: z @@ -108,6 +86,32 @@ const BorrowDetails = () => { } }, [connected, setError]); + useEffect(() => { + if (nftDetail) { + setAlwaysVisibleInfo([ + { label: "NFT ID", value: nftDetail[0].nftId }, + { label: "Network", value: "TON" }, + { label: "LTV", value: "95.0%" }, + ]); + + setStakingInfo([ + { + header: "Staking info", + items: [ + { label: "Principal", value: `${nftDetail[0].principal} TON` }, + { label: "Nominator Pool", value: nftDetail[0].nominator }, + { label: "Leveraged", value: `${nftDetail[0].leverage}x` }, + { label: "Lockup period", value: `${nftDetail[0].lockPeriod} days` }, + { label: "Unstakable date", value: nftDetail[0].unstakableDate }, + { label: "Protocol Fees", value: "2%" }, + { label: "Staking APR", value: "5%" }, + { label: "Total Amount", value: `${nftDetail[0].totalAmount} TON` }, + ], + }, + ]); + } + }, [nftDetail]); + const onSubmit = data => { console.log("form data", data); @@ -130,8 +134,8 @@ const BorrowDetails = () => { isExpandable={true} theme="black" title="Collateralizing NFT info" - alwaysVisibleItems={alwaysVisibleItems} - stakingInfoItems={stakingInfoItems} + alwaysVisibleItems={alwaysVisibleInfo} + stakingInfoItems={stakingInfo} /> diff --git a/src/pages/Loan/Borrow/NFTDetail.tsx b/src/pages/Loan/Borrow/NFTDetail.tsx deleted file mode 100644 index 54061c40..00000000 --- a/src/pages/Loan/Borrow/NFTDetail.tsx +++ /dev/null @@ -1,95 +0,0 @@ -import { useEffect } from "react"; -import { useNavigate, useParams } from "react-router-dom"; - -import IcTrendUp from "@/assets/icons/Loan/ic_trend_up.svg"; -import OngoingNFTLarge from "@/assets/image/Loan/OngoingNFTLarge.png"; -import StakingInfo from "@/components/loan/common/StakingInfo"; - -import { - NFTDetailCard, - NFTDetailCardButton, - NFTDetailCardImageBox, - NFTDetailCardTitle, - NFTDetailContentBox, - NFTDetailItem, - NFTDetailItemBox, - NFTDetailItemCaption, - NFTDetailItemText, - NFTDetailWrapper, -} from "./NFTDetail.styled"; - -const tele = (window as any).Telegram.WebApp; - -const stakingInfoItems = [ - { - items: [ - { label: "Principal", value: "10,000 TON" }, - { label: "Nominator Pool", value: "DG Pool #1" }, - { label: "Leveraged", value: "X1.0" }, - { label: "Lockup period", value: "60 days" }, - { label: "Unstakable date", value: "DD.MM.YY" }, - { label: "Protocol Fees", value: "2%" }, - { label: "Staking APR", value: "5%" }, - { label: "Total Amount", value: "10,083 TON" }, - ], - }, -]; - -// ! Data is currently mocked -const NFTDetail = () => { - const navigate = useNavigate(); - const { id } = useParams(); - - useEffect(() => { - if (tele) { - tele.ready(); - tele.BackButton.show(); - tele.onEvent("backButtonClicked", () => { - navigate("/loan"); - }); - } - - return () => { - tele.offEvent("backButtonClicked"); - }; - }, [navigate]); - - return ( - - - {/* NFTs are currently hardcoded to be ongoing. This should be changed to a dynamic value. */} - - ongoing_nft - D-30 - - - Staking NFT - navigate(`/loan/${id}/borrow/details`)}> - Borrow nxTON trend_up - - - - - - NFT ID - 542394817863ddddddddd - - - - - Network - TON - - - LTV - 95% - - - - - - - ); -}; - -export default NFTDetail; diff --git a/src/pages/Loan/Loan.tsx b/src/pages/Loan/Loan.tsx index e4ef3685..4625107e 100644 --- a/src/pages/Loan/Loan.tsx +++ b/src/pages/Loan/Loan.tsx @@ -6,6 +6,8 @@ import IcBars from "@/assets/icons/Loan/ic_bars.svg"; import DropdownMenu from "@/components/common/DropdownMenu"; import BorrowList from "@/components/loan/Borrow/BorrowList"; import RepayList from "@/components/loan/Repay/RepayList"; +import { useStakeInfo } from "@/hooks/api/useStakeInfo"; +import useTonConnect from "@/hooks/contract/useTonConnect"; import { LoanHeaderBox, @@ -29,9 +31,11 @@ const tele = (window as any).Telegram.WebApp; const filters: FilterNFTs[] = ["Ongoing", "Forthcoming", "Expired", "All"]; const Loan = () => { + const { address } = useTonConnect(); const navigate = useNavigate(); const [filter, setFilter] = useState("All"); const [view, setView] = useState("borrow"); + const { nftList } = useStakeInfo(address); useEffect(() => { if (tele) { @@ -95,7 +99,7 @@ const Loan = () => { )} - {view === "borrow" && } + {view === "borrow" && } {view === "repay" && } diff --git a/src/pages/Loan/Borrow/NFTDetail.styled.tsx b/src/pages/MyAsset/NFTDetail/NFTDetail.styled.tsx similarity index 91% rename from src/pages/Loan/Borrow/NFTDetail.styled.tsx rename to src/pages/MyAsset/NFTDetail/NFTDetail.styled.tsx index b9772af7..50aed20a 100644 --- a/src/pages/Loan/Borrow/NFTDetail.styled.tsx +++ b/src/pages/MyAsset/NFTDetail/NFTDetail.styled.tsx @@ -50,7 +50,7 @@ export const NFTDetailCardTitle = styled.h1` ${({ theme }) => theme.fonts.Nexton_Title_Medium_2}; `; -export const NFTDetailCardButton = styled.button` +export const NFTDetailCardButton = styled.button<{ $disabled?: boolean }>` all: unset; width: 200px; @@ -61,8 +61,8 @@ export const NFTDetailCardButton = styled.button` gap: 4px; border-radius: 10px; - background: #1f53ff; - cursor: pointer; + background: ${({ $disabled }) => ($disabled ? "#E1E4E6" : "#1f53ff")}; + cursor: ${({ $disabled }) => ($disabled ? "not-allowed" : "pointer")}; ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; color: #fff; diff --git a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx new file mode 100644 index 00000000..983a990f --- /dev/null +++ b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx @@ -0,0 +1,126 @@ +import { useEffect, useState } from "react"; +import { useNavigate, useParams } from "react-router-dom"; + +import IcTrendRight from "@/assets/icons/Loan/ic_trend_right.svg"; +import IcTrendUp from "@/assets/icons/Loan/ic_trend_up.svg"; +import ExpiredNFTLarge from "@/assets/image/Loan/ExpiredNFTLarge.png"; +import ForthComingNFTLarge from "@/assets/image/Loan/ForthcomingNFTLarge.png"; +import OngoingNFTLarge from "@/assets/image/Loan/OngoingNFTLarge.png"; +import StakingInfo from "@/components/loan/common/StakingInfo"; +import { useNFTDetail } from "@/hooks/api/useNFTDetail"; +import { nftInfo } from "@/types/Nft"; +import { DDayChange } from "@/utils/dateChanger"; + +import { + NFTDetailCard, + NFTDetailCardButton, + NFTDetailCardImageBox, + NFTDetailCardTitle, + NFTDetailContentBox, + NFTDetailItem, + NFTDetailItemBox, + NFTDetailItemCaption, + NFTDetailItemText, + NFTDetailWrapper, +} from "./NFTDetail.styled"; + +const tele = (window as any).Telegram.WebApp; + +const NFTDetail = () => { + const navigate = useNavigate(); + const [nftInfo, setNftInfo] = useState(); + const [stakingInfo, setStakingInfo] = useState([{ items: [] }]); + const { id } = useParams(); + const { nftDetail } = useNFTDetail(Number(id)); + + useEffect(() => { + if (tele) { + tele.ready(); + tele.BackButton.show(); + tele.onEvent("backButtonClicked", () => { + navigate("/loan"); + }); + } + + return () => { + tele.offEvent("backButtonClicked"); + }; + }, [navigate]); + + useEffect(() => { + if (nftDetail) { + setNftInfo(nftDetail[0]); + + setStakingInfo([ + { + items: [ + { label: "Principal", value: `${nftDetail[0].principal} TON` }, + { label: "Nominator Pool", value: nftDetail[0].nominator }, + { label: "Leveraged", value: `${nftDetail[0].leverage}x` }, + { label: "Lockup period", value: `${nftDetail[0].lockPeriod} days` }, + { label: "Unstakable date", value: nftDetail[0].unstakableDate }, + { label: "Protocol Fees", value: "2%" }, + { label: "Staking APR", value: "5%" }, + { label: "Total Amount", value: `${nftDetail[0].totalAmount} TON` }, + ], + }, + ]); + } + }, [nftDetail]); + + // todo: migrate to the unstakableDate from the backend + const SwitchDDayNftImage = () => { + if (DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod) > 15) { + return ongoing_nft; + } else if (DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod) > 0) { + return forthcoming_nft; + } else { + return expired_nft; + } + }; + + return ( + + + + {SwitchDDayNftImage()} + {DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod) > 0 + ? `D-${DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod)}` + : DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod) === 0 + ? `D-Day` + : `D+${DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod) * -1}`} + + + Staking NFT + navigate(`/loan/${id}/borrow/details`)}> + Borrow nxTON trend_up + + + Unstake Now trend_right + + + + + + NFT ID + {nftInfo?.nftId} + + + + + Network + TON + + + LTV + 95% + + + + + + + ); +}; + +export default NFTDetail; diff --git a/src/pages/MyAsset/StakingNftDetail.tsx b/src/pages/MyAsset/StakingNftDetail.tsx index 2a10018a..a65ec376 100644 --- a/src/pages/MyAsset/StakingNftDetail.tsx +++ b/src/pages/MyAsset/StakingNftDetail.tsx @@ -8,6 +8,7 @@ import { useNFTDetail } from "@/hooks/api/useNFTDetail"; const tele = (window as any).Telegram.WebApp; +// ! @deprecated const StakingNftDetail = () => { const location = useLocation(); const navigate = useNavigate(); From 3bd498688cb78e59a241b03f70a38203e1543a6c Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 20 Aug 2024 12:54:36 +1000 Subject: [PATCH 063/105] fix: deprecated comp-t fix --- src/pages/MyAsset/NFTDetail/NFTDetail.tsx | 9 ++++++--- src/pages/MyAsset/StakingNftDetail.tsx | 8 ++++---- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx index 983a990f..b3d0cb6d 100644 --- a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx +++ b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx @@ -92,9 +92,12 @@ const NFTDetail = () => { Staking NFT - navigate(`/loan/${id}/borrow/details`)}> - Borrow nxTON trend_up - + {DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod) > 0 && ( + navigate(`/loan/${id}/borrow/details`)}> + Borrow nxTON trend_up + + )} + Unstake Now trend_right diff --git a/src/pages/MyAsset/StakingNftDetail.tsx b/src/pages/MyAsset/StakingNftDetail.tsx index a65ec376..0d352c7d 100644 --- a/src/pages/MyAsset/StakingNftDetail.tsx +++ b/src/pages/MyAsset/StakingNftDetail.tsx @@ -9,6 +9,7 @@ import { useNFTDetail } from "@/hooks/api/useNFTDetail"; const tele = (window as any).Telegram.WebApp; // ! @deprecated +// todo: migrate to NFTDetail component const StakingNftDetail = () => { const location = useLocation(); const navigate = useNavigate(); @@ -31,12 +32,11 @@ const StakingNftDetail = () => { }, []); return ( - nftDetail && - nftDetail.length > 0 && ( + nftDetail && ( Staking NFT - - + + ) ); From 4a85c24412c049a97f17b0060ae13d2d84885d11 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 20 Aug 2024 12:56:05 +1000 Subject: [PATCH 064/105] fix: deprecated comp-t fix --- src/pages/Unstaking/UnstakingNftDetail.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/pages/Unstaking/UnstakingNftDetail.tsx b/src/pages/Unstaking/UnstakingNftDetail.tsx index eaf6c3e5..883c9e06 100644 --- a/src/pages/Unstaking/UnstakingNftDetail.tsx +++ b/src/pages/Unstaking/UnstakingNftDetail.tsx @@ -79,12 +79,12 @@ const UnstakingNftDetail = () => { return ( <> - {nftDetail && nftDetail.length > 0 && ( + {nftDetail && ( {/* {toggleModal && } */} Unstaking NFT - - + + During this period you may not cancel the transaction. {!pathname.includes("view") && ( // From 3099eb198d476b8f4dc511a39174eca7d196c74b Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 20 Aug 2024 12:58:52 +1000 Subject: [PATCH 065/105] refactor: updated the deprecated components --- src/components/myAsset/Detail/DetailNFTInfo.tsx | 8 ++++---- .../myAsset/NFT/Unstaking/UnstakingInfo.tsx | 17 +++++------------ src/pages/MyAsset/NFTDetail/NFTDetail.tsx | 3 ++- src/pages/Unstaking/UnstakingNftDetail.tsx | 2 +- 4 files changed, 12 insertions(+), 18 deletions(-) diff --git a/src/components/myAsset/Detail/DetailNFTInfo.tsx b/src/components/myAsset/Detail/DetailNFTInfo.tsx index 05719013..7d411310 100644 --- a/src/components/myAsset/Detail/DetailNFTInfo.tsx +++ b/src/components/myAsset/Detail/DetailNFTInfo.tsx @@ -25,7 +25,7 @@ const DetailNftInfo = (props: DetailNftInfoProps) => { const { item } = props; const address = useTonAddress(); const telegramId = useRecoilValue(telegramAtom); - const { nftId, amount, leverage, timeStamp, lockPeriod, nominator, status } = item; + const { nftId, principal, leverage, timeStamp, lockPeriod, nominator, status } = item; const { sendMessage } = Contract.depositTon(); const [isOpenModal, setIsOpenModal] = useState(false); @@ -94,7 +94,7 @@ const DetailNftInfo = (props: DetailNftInfoProps) => { Principal - {numberCutter(amount)} TON + {numberCutter(principal)} TON Nominator Pool @@ -114,7 +114,7 @@ const DetailNftInfo = (props: DetailNftInfoProps) => { Protocol Fees - {numberCutter(getProtocolFee(String(amount), leverage))}% + {numberCutter(getProtocolFee(String(principal), leverage))}% Staking APR @@ -122,7 +122,7 @@ const DetailNftInfo = (props: DetailNftInfoProps) => { Total Amount - {numberCutter(amount)} TON + {numberCutter(principal)} TON diff --git a/src/components/myAsset/NFT/Unstaking/UnstakingInfo.tsx b/src/components/myAsset/NFT/Unstaking/UnstakingInfo.tsx index c86f28a4..c6a50d9f 100644 --- a/src/components/myAsset/NFT/Unstaking/UnstakingInfo.tsx +++ b/src/components/myAsset/NFT/Unstaking/UnstakingInfo.tsx @@ -2,10 +2,7 @@ import { styled } from "styled-components"; import IcTonSymbol from "../../../../assets/icons/MyAsset/ic_tonSymbol.svg"; import { nftInfo } from "../../../../types/Nft"; -import { - expiredDateChanger, - UnstakingDateChanger, -} from "../../../../utils/dateChanger"; +import { expiredDateChanger, UnstakingDateChanger } from "../../../../utils/dateChanger"; import { numberCutter } from "../../../../utils/numberCutter"; interface UnstakingInfoProps { @@ -13,13 +10,13 @@ interface UnstakingInfoProps { } const UnstakingInfo = (props: UnstakingInfoProps) => { - const { amount, leverage, lockPeriod, timeStamp } = props.item; + const { principal, leverage, lockPeriod, timeStamp } = props.item; return ( Principal - {numberCutter(amount)} TON + {numberCutter(principal)} TON Rewards @@ -49,9 +46,7 @@ const UnstakingInfo = (props: UnstakingInfoProps) => { TON */} - + Available in < 9H @@ -62,9 +57,7 @@ const UnstakingInfo = (props: UnstakingInfoProps) => { Date of Unstaking - - {UnstakingDateChanger(timeStamp)} - + {UnstakingDateChanger(timeStamp)} diff --git a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx index b3d0cb6d..725afc8b 100644 --- a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx +++ b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx @@ -10,6 +10,7 @@ import StakingInfo from "@/components/loan/common/StakingInfo"; import { useNFTDetail } from "@/hooks/api/useNFTDetail"; import { nftInfo } from "@/types/Nft"; import { DDayChange } from "@/utils/dateChanger"; +import { numberCutter } from "@/utils/numberCutter"; import { NFTDetailCard, @@ -61,7 +62,7 @@ const NFTDetail = () => { { label: "Unstakable date", value: nftDetail[0].unstakableDate }, { label: "Protocol Fees", value: "2%" }, { label: "Staking APR", value: "5%" }, - { label: "Total Amount", value: `${nftDetail[0].totalAmount} TON` }, + { label: "Total Amount", value: `${numberCutter(nftDetail[0].totalAmount)} TON` }, ], }, ]); diff --git a/src/pages/Unstaking/UnstakingNftDetail.tsx b/src/pages/Unstaking/UnstakingNftDetail.tsx index 883c9e06..d203cd4a 100644 --- a/src/pages/Unstaking/UnstakingNftDetail.tsx +++ b/src/pages/Unstaking/UnstakingNftDetail.tsx @@ -48,7 +48,7 @@ const UnstakingNftDetail = () => { }; }; - await sendMessage(data(), `${nftDetail[0].amount}`); + await sendMessage(data(), `${nftDetail.principal}`); const response = await postUnstake(newUnstaking); if (response === 200) { // handleToggleModal(); From ae21509e259b0aa5e6cc0aba7349dc4ed3b4165b Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 20 Aug 2024 13:00:02 +1000 Subject: [PATCH 066/105] refactor: updated the deprecated components --- .../myAsset/Unstaking/UnstakingDetail/UnstakingDetailItem.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailItem.tsx b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailItem.tsx index 0db887b2..92d1eb03 100644 --- a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailItem.tsx +++ b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailItem.tsx @@ -14,7 +14,7 @@ interface UnstakingDetailItemProps { } const UnstakingDetailItem = (props: UnstakingDetailItemProps) => { - const { nftId, amount, timeStamp } = props.item; + const { nftId, principal, timeStamp } = props.item; const navigate = useNavigate(); return ( @@ -38,7 +38,7 @@ const UnstakingDetailItem = (props: UnstakingDetailItemProps) => { Value - {numberCutter(amount)} + {numberCutter(principal)} TON From a43b49cc5f0b57243364f335e18697dbfde018af Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 20 Aug 2024 13:03:37 +1000 Subject: [PATCH 067/105] refactor: removed deprecated Borrow component --- .../loan/Borrow/BorrowDetailInfo.tsx | 196 ------------------ 1 file changed, 196 deletions(-) delete mode 100644 src/components/loan/Borrow/BorrowDetailInfo.tsx diff --git a/src/components/loan/Borrow/BorrowDetailInfo.tsx b/src/components/loan/Borrow/BorrowDetailInfo.tsx deleted file mode 100644 index afb850eb..00000000 --- a/src/components/loan/Borrow/BorrowDetailInfo.tsx +++ /dev/null @@ -1,196 +0,0 @@ -import { useParams } from "react-router-dom"; -import { styled } from "styled-components"; - -import IcLoanEqual from "../../../assets/icons/Loan/ic_loan_equal.svg"; -import { useNFTDetail } from "../../../hooks/api/useNFTDetail"; -import { DDayChange, expiredDateChanger } from "../../../utils/dateChanger"; -import { numberCutter } from "../../../utils/numberCutter"; -import { NftStatus } from "../common/Nftstatus"; - -const BorrowDetailInfo = () => { - const { id } = useParams(); - const { nftDetail } = useNFTDetail(Number(id)); - - return ( - nftDetail && - nftDetail.length > 0 && ( - <> - - - Collateralizing NFT info - - {DDayChange(nftDetail[0].timeStamp, nftDetail[0].lockPeriod) > - 55 ? ( - - ) : DDayChange( - nftDetail[0].timeStamp, - nftDetail[0].lockPeriod - ) === 0 ? ( - - ) : ( - - )} - NFT {String(nftDetail[0].nftId).padStart(5, "0")} - - - - - Principal - {numberCutter(nftDetail[0].amount)} TON - - - Evaluation - {numberCutter(nftDetail[0].amount)} TON - - - Expired date - - {expiredDateChanger( - nftDetail[0].timeStamp, - nftDetail[0].lockPeriod, - "detail" - )} - - - - - - - - LTV - - - 80% - - - equal - - - Borrow - 1NXT = n TON - - - - {numberCutter(nftDetail[0].amount * 0.8)} - - NXT - - - - - ) - ); -}; - -export default BorrowDetailInfo; - -const BorrowDetailInfoWrapper = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - - width: 100%; - - border: 0.1rem solid #f1f4f4; - border-radius: 2rem; -`; - -const BorrowDetailInfoTop = styled.div` - display: flex; - flex-direction: column; - justify-content: space-between; - align-items: center; - gap: 1.25rem; - - width: 100%; - padding: 1.6rem 0 1.25rem 0; - - border-radius: 2rem 2rem 0 0; - background-color: #fff; -`; - -const BorrowDetailInfoTopNftBox = styled.div` - display: flex; - align-items: center; - gap: 1rem; - - color: #000; - ${({ theme }) => theme.fonts.Telegram_Caption_3}; -`; -const BodyTextMedium2 = styled.span` - color: #303234; - ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; -`; - -const BorrowListBottom = styled.div` - display: flex; - justify-content: space-between; - align-items: center; - - width: 100%; - padding: 2rem 3.5rem; - - border-radius: 0 0 2rem 2rem; - background-color: #f9f9ff; -`; - -const BorrowListBottomTextBottom = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: flex-start; - gap: 0.6rem; -`; - -const Caption3 = styled.span` - ${({ theme }) => theme.fonts.Telegram_Caption_3}; -`; - -const LabelMedium = styled.span` - ${({ theme }) => theme.fonts.Nexton_Label_Medium}; -`; - -const BorrowLTVBox = styled.div` - display: flex; - justify-content: space-between; - align-items: center; - gap: 0.8rem; - - width: 100%; - margin-top: 1rem; -`; - -const BorrowShadowBox = styled.div<{ type?: string }>` - display: flex; - flex-direction: column; - - width: ${({ type }) => (type === "right" ? `55%` : `38%`)}; - padding: 1.6rem; - - border: 0.1rem solid #f1f4f4; - border-radius: 2rem; - background-color: #fff; -`; - -const BorrowShadowInnerBox = styled.div` - display: flex; - justify-content: space-between; - align-items: center; - gap: 1rem; - - width: 100%; - - & + & { - margin-top: 1.6rem; - } -`; From 413cd9e19050dec2c4534a4d6e273e4c4f57e6d5 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 3 Sep 2024 12:25:39 +1000 Subject: [PATCH 068/105] comment: specified mocked screens --- src/pages/Loan/History/LoanHistory.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pages/Loan/History/LoanHistory.tsx b/src/pages/Loan/History/LoanHistory.tsx index 454ba2a8..52d8f765 100644 --- a/src/pages/Loan/History/LoanHistory.tsx +++ b/src/pages/Loan/History/LoanHistory.tsx @@ -32,6 +32,7 @@ const _LoanHistoryMock = [ }, ]; +// ! Data is currently mocked const LoanHistory = () => { const navigate = useNavigate(); From ce2bccdef15a6b23fb96de9fb2f3ee08123a503d Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 3 Sep 2024 13:36:50 +1000 Subject: [PATCH 069/105] feat: refactored NFT remaingn days utils, added NFT list counter, added doc-s, minor fixes in Borrowing flow --- .../icons/Dashboard/ic_stake_link_arrow.svg | 2 +- src/assets/icons/Landing/ic_more_arrow.svg | 2 +- src/assets/icons/Landing/ic_nftMore_arrow.svg | 2 +- .../Landing/ic_nftMore_arrow_disabled.svg | 2 +- .../icons/Landing/ic_wallet_connect.svg | 4 +- src/assets/icons/Loan/ic_alert.svg | 2 +- src/assets/icons/Loan/ic_arrow_right.svg | 2 +- src/assets/icons/Loan/ic_loan_arrow.svg | 2 +- src/assets/icons/Loan/ic_trend_right.svg | 2 +- src/assets/icons/Loan/ic_trend_up.svg | 2 +- src/assets/icons/Main/ic_lst_coin.svg | 2 +- src/assets/icons/Menu/ic_menu_asset.svg | 4 +- src/assets/icons/Menu/ic_menu_dashboard.svg | 6 +-- src/assets/icons/Menu/ic_menu_sad_smile.svg | 2 +- src/assets/icons/Menu/ic_menu_swap.svg | 2 +- src/assets/icons/Modal/ic_close.svg | 4 +- src/assets/icons/Modal/ic_modal_arrow.svg | 2 +- src/assets/icons/MyAsset/ic_arrow.svg | 2 +- src/assets/icons/MyAsset/ic_arrow_down.svg | 2 +- src/assets/icons/MyAsset/ic_arrow_right.svg | 2 +- src/assets/icons/MyAsset/ic_arrow_up.svg | 2 +- .../icons/MyAsset/ic_cardCheck_active.svg | 2 +- .../icons/MyAsset/ic_cardCheck_disable.svg | 2 +- src/assets/icons/MyAsset/ic_card_active.svg | 2 +- src/assets/icons/MyAsset/ic_card_disable.svg | 2 +- src/assets/icons/MyAsset/ic_check.svg | 2 +- src/assets/icons/MyAsset/ic_claim.svg | 2 +- src/assets/icons/MyAsset/ic_claim_disable.svg | 2 +- src/assets/icons/MyAsset/ic_coins_active.svg | 2 +- src/assets/icons/MyAsset/ic_coins_disable.svg | 2 +- src/assets/icons/MyAsset/ic_filter.svg | 2 +- src/assets/icons/MyAsset/ic_refresh.svg | 2 +- src/assets/icons/MyAsset/ic_reload.svg | 2 +- .../icons/MyAsset/ic_small_arrow_right.svg | 2 +- src/assets/icons/MyAsset/ic_wallet.svg | 4 +- src/assets/icons/Stake/ic_alert_blue.svg | 2 +- src/assets/icons/Stake/ic_checked.svg | 2 +- src/assets/icons/Stake/ic_error.svg | 2 +- src/assets/icons/Stake/ic_search.svg | 2 +- src/assets/icons/Stake/ic_select_arrow.svg | 2 +- src/assets/icons/Stake/ic_unchecked.svg | 2 +- src/assets/icons/Swap/ic_swap_arrow.svg | 2 +- src/assets/icons/ic_back.svg | 2 +- src/components/common/DropdownMenu.tsx | 6 +-- src/components/loan/Borrow/BorrowList.tsx | 7 ++- src/components/loan/Borrow/BorrowListItem.tsx | 12 ++--- src/components/loan/common/DoubleArrows.tsx | 12 ++--- src/components/main/ActionCards.tsx | 6 +-- src/pages/Loan/Loan.tsx | 3 +- src/pages/MyAsset/NFTDetail/NFTDetail.tsx | 45 +++++++++++-------- src/utils/getNftState.ts | 44 ++++++++++++++++++ 51 files changed, 144 insertions(+), 89 deletions(-) create mode 100644 src/utils/getNftState.ts diff --git a/src/assets/icons/Dashboard/ic_stake_link_arrow.svg b/src/assets/icons/Dashboard/ic_stake_link_arrow.svg index de413619..daedb9ee 100644 --- a/src/assets/icons/Dashboard/ic_stake_link_arrow.svg +++ b/src/assets/icons/Dashboard/ic_stake_link_arrow.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/Landing/ic_more_arrow.svg b/src/assets/icons/Landing/ic_more_arrow.svg index 81a39edd..b84fc12e 100644 --- a/src/assets/icons/Landing/ic_more_arrow.svg +++ b/src/assets/icons/Landing/ic_more_arrow.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/Landing/ic_nftMore_arrow.svg b/src/assets/icons/Landing/ic_nftMore_arrow.svg index 0be51e4b..6c36f08c 100644 --- a/src/assets/icons/Landing/ic_nftMore_arrow.svg +++ b/src/assets/icons/Landing/ic_nftMore_arrow.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/Landing/ic_nftMore_arrow_disabled.svg b/src/assets/icons/Landing/ic_nftMore_arrow_disabled.svg index 9ff59a5a..a1234a00 100644 --- a/src/assets/icons/Landing/ic_nftMore_arrow_disabled.svg +++ b/src/assets/icons/Landing/ic_nftMore_arrow_disabled.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/Landing/ic_wallet_connect.svg b/src/assets/icons/Landing/ic_wallet_connect.svg index 2f6ef886..2ea0833d 100644 --- a/src/assets/icons/Landing/ic_wallet_connect.svg +++ b/src/assets/icons/Landing/ic_wallet_connect.svg @@ -2,6 +2,6 @@ - - + + diff --git a/src/assets/icons/Loan/ic_alert.svg b/src/assets/icons/Loan/ic_alert.svg index b2f50987..7815087f 100644 --- a/src/assets/icons/Loan/ic_alert.svg +++ b/src/assets/icons/Loan/ic_alert.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/Loan/ic_arrow_right.svg b/src/assets/icons/Loan/ic_arrow_right.svg index 48ad454e..449b0d86 100644 --- a/src/assets/icons/Loan/ic_arrow_right.svg +++ b/src/assets/icons/Loan/ic_arrow_right.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/Loan/ic_loan_arrow.svg b/src/assets/icons/Loan/ic_loan_arrow.svg index e82ef819..1f94f4c3 100644 --- a/src/assets/icons/Loan/ic_loan_arrow.svg +++ b/src/assets/icons/Loan/ic_loan_arrow.svg @@ -1,4 +1,4 @@ - + diff --git a/src/assets/icons/Loan/ic_trend_right.svg b/src/assets/icons/Loan/ic_trend_right.svg index be0bd0c6..ea361482 100644 --- a/src/assets/icons/Loan/ic_trend_right.svg +++ b/src/assets/icons/Loan/ic_trend_right.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/Loan/ic_trend_up.svg b/src/assets/icons/Loan/ic_trend_up.svg index 25e83604..6f939ebc 100644 --- a/src/assets/icons/Loan/ic_trend_up.svg +++ b/src/assets/icons/Loan/ic_trend_up.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/Main/ic_lst_coin.svg b/src/assets/icons/Main/ic_lst_coin.svg index 4e2a52b2..8dcb90e7 100644 --- a/src/assets/icons/Main/ic_lst_coin.svg +++ b/src/assets/icons/Main/ic_lst_coin.svg @@ -1,7 +1,7 @@ - + diff --git a/src/assets/icons/Menu/ic_menu_asset.svg b/src/assets/icons/Menu/ic_menu_asset.svg index 338aa0a9..49ac1842 100644 --- a/src/assets/icons/Menu/ic_menu_asset.svg +++ b/src/assets/icons/Menu/ic_menu_asset.svg @@ -2,8 +2,8 @@ - - + + diff --git a/src/assets/icons/Menu/ic_menu_dashboard.svg b/src/assets/icons/Menu/ic_menu_dashboard.svg index 10ece941..32dbd33e 100644 --- a/src/assets/icons/Menu/ic_menu_dashboard.svg +++ b/src/assets/icons/Menu/ic_menu_dashboard.svg @@ -1,5 +1,5 @@ - - - + + + diff --git a/src/assets/icons/Menu/ic_menu_sad_smile.svg b/src/assets/icons/Menu/ic_menu_sad_smile.svg index 04dd2380..eb38dc9b 100644 --- a/src/assets/icons/Menu/ic_menu_sad_smile.svg +++ b/src/assets/icons/Menu/ic_menu_sad_smile.svg @@ -3,7 +3,7 @@ - + diff --git a/src/assets/icons/Menu/ic_menu_swap.svg b/src/assets/icons/Menu/ic_menu_swap.svg index 4f6f8c00..a5ab651d 100644 --- a/src/assets/icons/Menu/ic_menu_swap.svg +++ b/src/assets/icons/Menu/ic_menu_swap.svg @@ -1,6 +1,6 @@ - + diff --git a/src/assets/icons/Modal/ic_close.svg b/src/assets/icons/Modal/ic_close.svg index 5493310a..75e1145a 100644 --- a/src/assets/icons/Modal/ic_close.svg +++ b/src/assets/icons/Modal/ic_close.svg @@ -1,4 +1,4 @@ - - + + diff --git a/src/assets/icons/Modal/ic_modal_arrow.svg b/src/assets/icons/Modal/ic_modal_arrow.svg index 5cb9c077..5bef1f03 100644 --- a/src/assets/icons/Modal/ic_modal_arrow.svg +++ b/src/assets/icons/Modal/ic_modal_arrow.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_arrow.svg b/src/assets/icons/MyAsset/ic_arrow.svg index 178863f1..bc7cb767 100644 --- a/src/assets/icons/MyAsset/ic_arrow.svg +++ b/src/assets/icons/MyAsset/ic_arrow.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_arrow_down.svg b/src/assets/icons/MyAsset/ic_arrow_down.svg index cfe4c5d1..ed5f2154 100644 --- a/src/assets/icons/MyAsset/ic_arrow_down.svg +++ b/src/assets/icons/MyAsset/ic_arrow_down.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_arrow_right.svg b/src/assets/icons/MyAsset/ic_arrow_right.svg index 9fd54dc5..101bfd1a 100644 --- a/src/assets/icons/MyAsset/ic_arrow_right.svg +++ b/src/assets/icons/MyAsset/ic_arrow_right.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_arrow_up.svg b/src/assets/icons/MyAsset/ic_arrow_up.svg index dad24750..d84b3000 100644 --- a/src/assets/icons/MyAsset/ic_arrow_up.svg +++ b/src/assets/icons/MyAsset/ic_arrow_up.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_cardCheck_active.svg b/src/assets/icons/MyAsset/ic_cardCheck_active.svg index 05e25c30..d521470a 100644 --- a/src/assets/icons/MyAsset/ic_cardCheck_active.svg +++ b/src/assets/icons/MyAsset/ic_cardCheck_active.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_cardCheck_disable.svg b/src/assets/icons/MyAsset/ic_cardCheck_disable.svg index 0fe6b2b6..e63f1208 100644 --- a/src/assets/icons/MyAsset/ic_cardCheck_disable.svg +++ b/src/assets/icons/MyAsset/ic_cardCheck_disable.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_card_active.svg b/src/assets/icons/MyAsset/ic_card_active.svg index ce979e7b..cc6bc313 100644 --- a/src/assets/icons/MyAsset/ic_card_active.svg +++ b/src/assets/icons/MyAsset/ic_card_active.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_card_disable.svg b/src/assets/icons/MyAsset/ic_card_disable.svg index 35127c69..b6bbc14e 100644 --- a/src/assets/icons/MyAsset/ic_card_disable.svg +++ b/src/assets/icons/MyAsset/ic_card_disable.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_check.svg b/src/assets/icons/MyAsset/ic_check.svg index 35bfbe4a..324f4052 100644 --- a/src/assets/icons/MyAsset/ic_check.svg +++ b/src/assets/icons/MyAsset/ic_check.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_claim.svg b/src/assets/icons/MyAsset/ic_claim.svg index 6bbb26ba..62f33290 100644 --- a/src/assets/icons/MyAsset/ic_claim.svg +++ b/src/assets/icons/MyAsset/ic_claim.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_claim_disable.svg b/src/assets/icons/MyAsset/ic_claim_disable.svg index 61acfd37..cb1335e2 100644 --- a/src/assets/icons/MyAsset/ic_claim_disable.svg +++ b/src/assets/icons/MyAsset/ic_claim_disable.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_coins_active.svg b/src/assets/icons/MyAsset/ic_coins_active.svg index fcd1c094..65103d55 100644 --- a/src/assets/icons/MyAsset/ic_coins_active.svg +++ b/src/assets/icons/MyAsset/ic_coins_active.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_coins_disable.svg b/src/assets/icons/MyAsset/ic_coins_disable.svg index 588e40f6..b793180a 100644 --- a/src/assets/icons/MyAsset/ic_coins_disable.svg +++ b/src/assets/icons/MyAsset/ic_coins_disable.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_filter.svg b/src/assets/icons/MyAsset/ic_filter.svg index fe9b4c64..09b577f0 100644 --- a/src/assets/icons/MyAsset/ic_filter.svg +++ b/src/assets/icons/MyAsset/ic_filter.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_refresh.svg b/src/assets/icons/MyAsset/ic_refresh.svg index e613214f..807450fb 100644 --- a/src/assets/icons/MyAsset/ic_refresh.svg +++ b/src/assets/icons/MyAsset/ic_refresh.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_reload.svg b/src/assets/icons/MyAsset/ic_reload.svg index e03688a1..83d569f5 100644 --- a/src/assets/icons/MyAsset/ic_reload.svg +++ b/src/assets/icons/MyAsset/ic_reload.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_small_arrow_right.svg b/src/assets/icons/MyAsset/ic_small_arrow_right.svg index 7bc445f6..f36f0065 100644 --- a/src/assets/icons/MyAsset/ic_small_arrow_right.svg +++ b/src/assets/icons/MyAsset/ic_small_arrow_right.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/MyAsset/ic_wallet.svg b/src/assets/icons/MyAsset/ic_wallet.svg index c1ac1b78..70406e5e 100644 --- a/src/assets/icons/MyAsset/ic_wallet.svg +++ b/src/assets/icons/MyAsset/ic_wallet.svg @@ -2,6 +2,6 @@ - - + + diff --git a/src/assets/icons/Stake/ic_alert_blue.svg b/src/assets/icons/Stake/ic_alert_blue.svg index 7b727ea8..dfb8aea3 100644 --- a/src/assets/icons/Stake/ic_alert_blue.svg +++ b/src/assets/icons/Stake/ic_alert_blue.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/Stake/ic_checked.svg b/src/assets/icons/Stake/ic_checked.svg index 6e097af6..6eca7320 100644 --- a/src/assets/icons/Stake/ic_checked.svg +++ b/src/assets/icons/Stake/ic_checked.svg @@ -1,4 +1,4 @@ - + diff --git a/src/assets/icons/Stake/ic_error.svg b/src/assets/icons/Stake/ic_error.svg index 4b7241b2..92fb8fb7 100644 --- a/src/assets/icons/Stake/ic_error.svg +++ b/src/assets/icons/Stake/ic_error.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/Stake/ic_search.svg b/src/assets/icons/Stake/ic_search.svg index 5b382ff3..7aa5016e 100644 --- a/src/assets/icons/Stake/ic_search.svg +++ b/src/assets/icons/Stake/ic_search.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/Stake/ic_select_arrow.svg b/src/assets/icons/Stake/ic_select_arrow.svg index 13827482..62edb4fd 100644 --- a/src/assets/icons/Stake/ic_select_arrow.svg +++ b/src/assets/icons/Stake/ic_select_arrow.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/Stake/ic_unchecked.svg b/src/assets/icons/Stake/ic_unchecked.svg index f0581615..16c1dc38 100644 --- a/src/assets/icons/Stake/ic_unchecked.svg +++ b/src/assets/icons/Stake/ic_unchecked.svg @@ -1,4 +1,4 @@ - + diff --git a/src/assets/icons/Swap/ic_swap_arrow.svg b/src/assets/icons/Swap/ic_swap_arrow.svg index 67ab501e..4f10874e 100644 --- a/src/assets/icons/Swap/ic_swap_arrow.svg +++ b/src/assets/icons/Swap/ic_swap_arrow.svg @@ -1,3 +1,3 @@ - + diff --git a/src/assets/icons/ic_back.svg b/src/assets/icons/ic_back.svg index 2ff4906f..d45e8fe0 100644 --- a/src/assets/icons/ic_back.svg +++ b/src/assets/icons/ic_back.svg @@ -1,3 +1,3 @@ - + diff --git a/src/components/common/DropdownMenu.tsx b/src/components/common/DropdownMenu.tsx index edc5893e..34b221b6 100644 --- a/src/components/common/DropdownMenu.tsx +++ b/src/components/common/DropdownMenu.tsx @@ -8,9 +8,9 @@ const DropdownArrow = () => ( ); diff --git a/src/components/loan/Borrow/BorrowList.tsx b/src/components/loan/Borrow/BorrowList.tsx index cefb63b3..dd870265 100644 --- a/src/components/loan/Borrow/BorrowList.tsx +++ b/src/components/loan/Borrow/BorrowList.tsx @@ -1,6 +1,7 @@ +import { useNavigate } from "react-router-dom"; + import IcArrowRight from "@/assets/icons/Loan/ic_arrow_right.svg"; import NFTsEmpty from "@/assets/image/Loan/NFTsEmpty.png"; -import useTonConnect from "@/hooks/contract/useTonConnect"; import { FilterNFTs } from "@/pages/Loan/Loan"; import { nftInfo } from "@/types/Nft"; @@ -14,6 +15,8 @@ import BorrowListItem from "./BorrowListItem"; // ! Data is currently mocked const BorrowList = ({ filter, nftList }: { filter?: FilterNFTs; nftList: nftInfo[] }) => { + const navigate = useNavigate(); + return ( {nftList && nftList.length > 0 ? ( @@ -29,7 +32,7 @@ const BorrowList = ({ filter, nftList }: { filter?: FilterNFTs; nftList: nftInfo nfts_empty

No results

- + navigate("/stake/amount")}> Let’s move to staking to get new NFT arrow_right diff --git a/src/components/loan/Borrow/BorrowListItem.tsx b/src/components/loan/Borrow/BorrowListItem.tsx index 73b84787..cdb9c3bb 100644 --- a/src/components/loan/Borrow/BorrowListItem.tsx +++ b/src/components/loan/Borrow/BorrowListItem.tsx @@ -4,7 +4,7 @@ import ExpiredNFTItem from "@/assets/image/Loan/ExpiredNFTItem.png"; import ForthcomingNFTItem from "@/assets/image/Loan/ForthcomingNFTItem.png"; import OngoingNFTItem from "@/assets/image/Loan/OngoingNFTItem.png"; import { nftInfo } from "@/types/Nft"; -import { DDayChange, expiredDateChanger } from "@/utils/dateChanger"; +import { getNftState } from "@/utils/getNftState"; import { numberCutter } from "@/utils/numberCutter"; import { @@ -25,7 +25,7 @@ interface BorrowListProps { } const BorrowListItem = (props: BorrowListProps) => { - const { nftId, principal, totalAmount, unstakableDate, timeStamp, lockPeriod } = props.item; + const { nftId, principal, unstakableDate } = props.item; const navigate = useNavigate(); @@ -33,12 +33,12 @@ const BorrowListItem = (props: BorrowListProps) => { navigate(`/myasset/${nftId}`)}> - {DDayChange(timeStamp, lockPeriod) > 55 ? ( + {getNftState(unstakableDate) === "ongoing" ? ( - ) : DDayChange(timeStamp, lockPeriod) === 0 ? ( - - ) : ( + ) : getNftState(unstakableDate) === "forthcoming" ? ( + ) : ( + )} Token ID diff --git a/src/components/loan/common/DoubleArrows.tsx b/src/components/loan/common/DoubleArrows.tsx index a4a9b154..181a6b62 100644 --- a/src/components/loan/common/DoubleArrows.tsx +++ b/src/components/loan/common/DoubleArrows.tsx @@ -4,9 +4,9 @@ export const DoubleArrows = ({ stroke, direction }: { stroke: string; direction: ) : ( @@ -14,9 +14,9 @@ export const DoubleArrows = ({ stroke, direction }: { stroke: string; direction: ); diff --git a/src/components/main/ActionCards.tsx b/src/components/main/ActionCards.tsx index 831560f0..efb79730 100644 --- a/src/components/main/ActionCards.tsx +++ b/src/components/main/ActionCards.tsx @@ -7,9 +7,9 @@ const ArrowIcon = ({ dark, disabled }: { dark?: boolean; disabled?: boolean }) = ); diff --git a/src/pages/Loan/Loan.tsx b/src/pages/Loan/Loan.tsx index 4625107e..58289e30 100644 --- a/src/pages/Loan/Loan.tsx +++ b/src/pages/Loan/Loan.tsx @@ -88,7 +88,8 @@ const Loan = () => { You have -

0 NFTs

+ {view === "borrow" && nftList &&

{nftList.length} NFTs

} + {view === "repay" &&

0 Loans

}
{view === "borrow" && ( diff --git a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx index 725afc8b..fb2f30f5 100644 --- a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx +++ b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx @@ -10,6 +10,7 @@ import StakingInfo from "@/components/loan/common/StakingInfo"; import { useNFTDetail } from "@/hooks/api/useNFTDetail"; import { nftInfo } from "@/types/Nft"; import { DDayChange } from "@/utils/dateChanger"; +import { calculateRemainingDays, getNftState } from "@/utils/getNftState"; import { numberCutter } from "@/utils/numberCutter"; import { @@ -27,6 +28,18 @@ import { const tele = (window as any).Telegram.WebApp; +const getDDayText = (unstakableDate: string): string => { + const remainingDays = calculateRemainingDays(unstakableDate); + + if (remainingDays > 0) { + return `D-${remainingDays}`; + } else if (remainingDays === 0) { + return `D-Day`; + } else { + return `D+${remainingDays * -1}`; + } +}; + const NFTDetail = () => { const navigate = useNavigate(); const [nftInfo, setNftInfo] = useState(); @@ -69,28 +82,22 @@ const NFTDetail = () => { } }, [nftDetail]); - // todo: migrate to the unstakableDate from the backend - const SwitchDDayNftImage = () => { - if (DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod) > 15) { - return ongoing_nft; - } else if (DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod) > 0) { - return forthcoming_nft; - } else { - return expired_nft; - } - }; - return ( - - {SwitchDDayNftImage()} - {DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod) > 0 - ? `D-${DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod)}` - : DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod) === 0 - ? `D-Day` - : `D+${DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod) * -1}`} - + {nftInfo?.unstakableDate && ( + + {getNftState(nftInfo.unstakableDate) === "ongoing" ? ( + ongoing_nft + ) : getNftState(nftInfo.unstakableDate) === "forthcoming" ? ( + forthcoming_nft + ) : ( + expired_nft + )} + + {getDDayText(nftInfo.unstakableDate)} + + )} Staking NFT {DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod) > 0 && ( diff --git a/src/utils/getNftState.ts b/src/utils/getNftState.ts new file mode 100644 index 00000000..eadd140b --- /dev/null +++ b/src/utils/getNftState.ts @@ -0,0 +1,44 @@ +/** + * getNftState - Determines the state of the NFT based on the unstakable date. + * + * @param {string} unstakableDate - The unstakable date of the NFT in "dd.mm.yyyy" format. + * @returns {string} - The state of the NFT ("ongoing", "forthcoming", "expired"). + * + * The function calculates the remaining days until the unstakable date: + * - If the remaining days are greater than 15, it returns "ongoing". + * - If the remaining days are between 1 and 15, it returns "forthcoming". + * - If the remaining days are 0 or less, it returns "expired". + */ +export const getNftState = (unstakableDate: string): string => { + const remainingDays = calculateRemainingDays(unstakableDate); + + if (remainingDays > 15) { + return "ongoing"; + } else if (remainingDays > 0) { + return "forthcoming"; + } else { + return "expired"; + } +}; + +/** + * calculateRemainingDays - Calculates the remaining days until the unstakable date. + * + * @param {string} unstakableDate - The unstakable date of the NFT in "dd.mm.yyyy" format. + * @returns {number} - The number of remaining days until the unstakable date. + */ +export const calculateRemainingDays = (unstakableDate: string): number => { + const today = new Date(); + today.setHours(0, 0, 0, 0); + + const dateParts = unstakableDate.split("."); + const unstakableDateObj = new Date( + parseInt(dateParts[2], 10), // Assuming the year is in "yyyy" format + parseInt(dateParts[1], 10) - 1, + parseInt(dateParts[0], 10), + ); + unstakableDateObj.setHours(0, 0, 0, 0); + + const differenceInMs = unstakableDateObj.getTime() - today.getTime(); + return differenceInMs / (1000 * 60 * 60 * 24); +}; From ab202027dc0a78af0ed5f48493848d089ad3ce9b Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Wed, 4 Sep 2024 13:36:30 +1000 Subject: [PATCH 070/105] feat: unstaking flow pages, NFTList component refactoring, utils function added, Router refactoring, minor fixes --- .../icons/MyAsset/ic_cardCheck_disable.svg | 2 +- src/components/common/Router.tsx | 26 +++-- src/components/main/ActionCards.tsx | 2 +- src/components/myAsset/NFT/NftItem.tsx | 103 ++++++------------ .../NFT/Unstaking/UnstakingPreview.tsx | 41 +++---- src/components/myAsset/NftHeader.tsx | 55 ++++------ .../UnstakingDetail/UnstakingDetailItem.tsx | 2 +- src/pages/Loan/Loan.tsx | 2 +- src/pages/MyAsset/MyAsset.tsx | 9 +- src/pages/MyAsset/NFTDetail/NFTDetail.tsx | 14 +-- src/pages/MyAsset/NftList.tsx | 9 +- src/pages/Unstaking/UnstakingNftDetail.tsx | 18 +-- src/utils/getNftState.ts | 23 ++++ 13 files changed, 133 insertions(+), 173 deletions(-) diff --git a/src/assets/icons/MyAsset/ic_cardCheck_disable.svg b/src/assets/icons/MyAsset/ic_cardCheck_disable.svg index e63f1208..245b8bd2 100644 --- a/src/assets/icons/MyAsset/ic_cardCheck_disable.svg +++ b/src/assets/icons/MyAsset/ic_cardCheck_disable.svg @@ -1,3 +1,3 @@ - + diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index 09347dca..339a8579 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -34,10 +34,12 @@ const Router = () => { } /> } /> } /> - } /> - } /> - } /> - } /> + + } /> + } /> + } /> + } /> + } /> } /> @@ -48,17 +50,19 @@ const Router = () => { } /> } /> - } /> - } /> }> } /> - } /> - } /> + } /> + } /> } /> - } /> - } /> - } /> + + } /> + } /> + + + } /> + } /> ); diff --git a/src/components/main/ActionCards.tsx b/src/components/main/ActionCards.tsx index efb79730..5738e67e 100644 --- a/src/components/main/ActionCards.tsx +++ b/src/components/main/ActionCards.tsx @@ -27,7 +27,7 @@ const ActionCards = () => { - navigate("/myasset")}> + navigate("/myasset/nftlist")}> Check the NFT you received from staking My NFTs diff --git a/src/components/myAsset/NFT/NftItem.tsx b/src/components/myAsset/NFT/NftItem.tsx index 09b11f48..9cd9b9e4 100644 --- a/src/components/myAsset/NFT/NftItem.tsx +++ b/src/components/myAsset/NFT/NftItem.tsx @@ -1,86 +1,55 @@ +import { useCallback, useMemo } from "react"; import { useNavigate } from "react-router-dom"; import { useRecoilState } from "recoil"; import { css, styled } from "styled-components"; -import NFTExpired from "../../../assets/image/MainNftExpired.png"; -import NFTForthComing from "../../../assets/image/MainNftForthComing.png"; -import NFTOngoing from "../../../assets/image/MainNftOngoing.png"; -import { imageSizeAtom } from "../../../lib/atom/imageSize"; -import { nftInfo } from "../../../types/Nft"; -import { DDayChange, expiredDateChanger } from "../../../utils/dateChanger"; +import NFTExpired from "@/assets/image/MainNftExpired.png"; +import NFTForthComing from "@/assets/image/MainNftForthComing.png"; +import NFTOngoing from "@/assets/image/MainNftOngoing.png"; +import { imageSizeAtom } from "@/lib/atom/imageSize"; +import { nftInfo } from "@/types/Nft"; +import { getDDayText, getNftState } from "@/utils/getNftState"; interface NftItemProps { item: nftInfo; } -const NftItem = (props: NftItemProps) => { - const { item } = props; - const { nftId, timeStamp, lockPeriod } = item; +const NftItem = ({ item }: NftItemProps) => { + const { nftId, unstakableDate } = item; const [, setImageSize] = useRecoilState(imageSizeAtom); - const navigate = useNavigate(); - const handleMouseMove = (event: React.MouseEvent) => { - const rect = (event.target as HTMLImageElement).getBoundingClientRect(); - setImageSize({ width: rect?.width, height: rect?.height }); - navigate(`/myasset/${nftId}`); - }; + const handleImageClick = useCallback( + (event: React.MouseEvent) => { + const rect = (event.target as HTMLImageElement).getBoundingClientRect(); + setImageSize({ width: rect?.width, height: rect?.height }); + navigate(`/myasset/${nftId}`); + }, + [setImageSize, navigate, nftId], + ); - const SwitchDDayNftImage = () => { - if (DDayChange(timeStamp, lockPeriod) > 15) { - return ( - - ); - } else if (DDayChange(timeStamp, lockPeriod) > 0) { - return ( - - ); - } else { - return ( - - ); - } - }; + const SwitchDDayNftImage = useMemo(() => { + const nftState = getNftState(unstakableDate); + const imageSrc = nftState === "ongoing" ? NFTOngoing : nftState === "forthcoming" ? NFTForthComing : NFTExpired; + const altText = `NFT${nftState.charAt(0).toUpperCase() + nftState.slice(1)}`; + + return ( + + ); + }, [unstakableDate, handleImageClick]); return ( - {SwitchDDayNftImage()} - - {DDayChange(timeStamp, lockPeriod) > 0 - ? `D-${DDayChange(timeStamp, lockPeriod)}` - : DDayChange(timeStamp, lockPeriod) === 0 - ? `D-Day` - : `D+${DDayChange(timeStamp, lockPeriod) * -1}`} - + {SwitchDDayNftImage} + {getDDayText(unstakableDate)} Expired Date - - {expiredDateChanger(timeStamp, lockPeriod)} - + {unstakableDate} ); }; @@ -92,7 +61,6 @@ const NFTItemWrapper = styled.div` width: 100%; height: 100%; aspect-ratio: 1/1.1; - border-radius: 2rem; `; @@ -104,7 +72,6 @@ const NFTDDayText = styled.span` position: absolute; top: 1.5rem; left: 1.7rem; - color: #fff; ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium}; `; @@ -113,10 +80,8 @@ const NFTExpiredDateText = styled.span<{ $date?: boolean }>` position: absolute; bottom: 2.7rem; left: 1.7rem; - color: #fff; ${({ theme }) => theme.fonts.Telegram_Caption_2}; - ${({ $date }) => $date && css` diff --git a/src/components/myAsset/NFT/Unstaking/UnstakingPreview.tsx b/src/components/myAsset/NFT/Unstaking/UnstakingPreview.tsx index dc9158d3..8dabf5c8 100644 --- a/src/components/myAsset/NFT/Unstaking/UnstakingPreview.tsx +++ b/src/components/myAsset/NFT/Unstaking/UnstakingPreview.tsx @@ -1,37 +1,28 @@ import { styled } from "styled-components"; -import NftPreviewExpired from "../../../../assets/image/NftPreviewExpired.png"; -import { nftInfo } from "../../../../types/Nft"; -import { expiredDateChanger } from "../../../../utils/dateChanger"; +import NftPreviewExpired from "@/assets/image/NftPreviewExpired.png"; +import { nftInfo } from "@/types/Nft"; interface UnstakingPreviewProps { item: nftInfo; } const UnstakingPreview = (props: UnstakingPreviewProps) => { - const { nftId, timeStamp, lockPeriod } = props.item; + const { nftId, unstakableDate } = props.item; + console.log(props.item); return ( expired + - - NFT ID {String(nftId).padStart(5, "0")} - - - Expired Date {expiredDateChanger(timeStamp, lockPeriod, "detail")} - + NFT ID {String(nftId).padStart(5, "0")} + Expired Date {unstakableDate} - When the contract receives - - - Unstaking transaction, - - - This NFT will be burned. + When the contract receives unstaking transaction, This NFT will be burned. @@ -44,6 +35,7 @@ export default UnstakingPreview; const UnstakingPreviewWrapper = styled.div` display: flex; justify-content: center; + border-radius: 2rem; width: 100%; `; @@ -53,10 +45,6 @@ const UnstakingPreviewImageWrapper = styled.div` width: 100%; - @media (max-width: 500px) { - padding: 0 1.7rem; - } - img { width: 100%; } @@ -70,17 +58,17 @@ const UnstakingPreviewTop = styled.div` gap: 1.1rem; position: absolute; top: 3rem; - left: 4.5rem; + left: 3.5rem; `; const UnstakingPreviewTopTitle = styled.span` color: #fff; - ${({ theme }) => theme.fonts.Telegram_Headline}; + ${({ theme }) => theme.fonts.Nexton_Title_Medium_1}; `; const UnstakingPreviewTopDesc = styled.span` color: #fff; - ${({ theme }) => theme.fonts.Telegram_Medium_1}; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; `; const UnstakingPreviewBottom = styled.div` @@ -88,9 +76,10 @@ const UnstakingPreviewBottom = styled.div` flex-direction: column; position: absolute; bottom: 2.1rem; - left: 4.5rem; + left: 3.5rem; `; const UnstakingPreviewBottomDesc = styled.p` + width: 240px; color: #fff; - ${({ theme }) => theme.fonts.Telegram_Caption_1}; + ${({ theme }) => theme.fonts.Nexton_Label_Small}; `; diff --git a/src/components/myAsset/NftHeader.tsx b/src/components/myAsset/NftHeader.tsx index 713c0a59..a5e0dd6e 100644 --- a/src/components/myAsset/NftHeader.tsx +++ b/src/components/myAsset/NftHeader.tsx @@ -1,56 +1,43 @@ import { useLocation, useNavigate } from "react-router-dom"; import styled, { css } from "styled-components"; -import IcCardActive from "../../assets/icons/MyAsset/ic_card_active.svg"; -import IcCardDisable from "../../assets/icons/MyAsset/ic_card_disable.svg"; -import IcCardCheckActive from "../../assets/icons/MyAsset/ic_cardCheck_active.svg"; -import IcCardCheckDisable from "../../assets/icons/MyAsset/ic_cardCheck_disable.svg"; -import IcCoinsActive from "../../assets/icons/MyAsset/ic_coins_active.svg"; -import IcCoinsDisable from "../../assets/icons/MyAsset/ic_coins_disable.svg"; +import IcCardActive from "@/assets/icons/MyAsset/ic_card_active.svg"; +import IcCardDisable from "@/assets/icons/MyAsset/ic_card_disable.svg"; +import IcCardCheckActive from "@/assets/icons/MyAsset/ic_cardCheck_active.svg"; +import IcCardCheckDisable from "@/assets/icons/MyAsset/ic_cardCheck_disable.svg"; +import IcCoinsActive from "@/assets/icons/MyAsset/ic_coins_active.svg"; +import IcCoinsDisable from "@/assets/icons/MyAsset/ic_coins_disable.svg"; -interface NftHeaderProps { - myAssetMenu: string; -} - -const NftHeader = (props: NftHeaderProps) => { +const NftHeader = () => { const navigate = useNavigate(); const location = useLocation(); - const { myAssetMenu } = props; const { pathname } = location; return ( navigate("/myasset/nftlist")}> - + {pathname.includes("nftlist") ? ( - card + card_active ) : ( - card + card_disable )} NFT - navigate("/myasset/unstaking")}> - - {pathname.includes("unstaking") ? ( - cardCheck - ) : ( - cardCheck - )} - - Unstaking + + + + cardCheck + + Unstaked + - {myAssetMenu === "Reward" ? ( - cardCheck - ) : ( - cardCheck - )} + cardCheck - - Reward - + Reward ); @@ -115,7 +102,7 @@ const UnstakingBox = styled(NFTHeadingImageBox)<{ $active: boolean }>` box-shadow: 0px 0px 14px 0px rgba(206, 216, 225, 0.8); `} `; -const NFTHeadingItemText = styled.span` - color: #333; +const NFTHeadingItemText = styled.span<{ $disabled?: boolean }>` + color: ${({ $disabled }) => ($disabled ? `#90909A` : `#333`)}; ${({ theme }) => theme.fonts.Nexton_Label_Medium}; `; diff --git a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailItem.tsx b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailItem.tsx index 92d1eb03..2d7a2dc7 100644 --- a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailItem.tsx +++ b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailItem.tsx @@ -19,7 +19,7 @@ const UnstakingDetailItem = (props: UnstakingDetailItemProps) => { return ( navigate(`/unstaking/view/${nftId}`)} + onClick={() => navigate(`/unstaking/${nftId}`)} > diff --git a/src/pages/Loan/Loan.tsx b/src/pages/Loan/Loan.tsx index 58289e30..3e29f076 100644 --- a/src/pages/Loan/Loan.tsx +++ b/src/pages/Loan/Loan.tsx @@ -88,7 +88,7 @@ const Loan = () => { You have - {view === "borrow" && nftList &&

{nftList.length} NFTs

} + {view === "borrow" &&

{nftList?.length || 0} NFTs

} {view === "repay" &&

0 Loans

}
diff --git a/src/pages/MyAsset/MyAsset.tsx b/src/pages/MyAsset/MyAsset.tsx index dc24cd9c..d176da0a 100644 --- a/src/pages/MyAsset/MyAsset.tsx +++ b/src/pages/MyAsset/MyAsset.tsx @@ -1,16 +1,13 @@ -import { useState } from "react"; import { Outlet, useLocation } from "react-router-dom"; import styled from "styled-components"; +import Header from "@/components/common/Header"; +import NftHeader from "@/components/myAsset/NftHeader"; import useTonConnect from "@/hooks/contract/useTonConnect"; -import Header from "../../components/common/Header"; -import NftHeader from "../../components/myAsset/NftHeader"; - const MyAsset = () => { const { connected, tonConnectUI } = useTonConnect(); const { pathname } = useLocation(); - const [myAssetMenu, setMyAssetMenu] = useState("NFT"); return ( @@ -22,7 +19,7 @@ const MyAsset = () => { tonConnectUI={tonConnectUI} /> - + diff --git a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx index fb2f30f5..6eb2ee06 100644 --- a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx +++ b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx @@ -10,7 +10,7 @@ import StakingInfo from "@/components/loan/common/StakingInfo"; import { useNFTDetail } from "@/hooks/api/useNFTDetail"; import { nftInfo } from "@/types/Nft"; import { DDayChange } from "@/utils/dateChanger"; -import { calculateRemainingDays, getNftState } from "@/utils/getNftState"; +import { getDDayText, getNftState } from "@/utils/getNftState"; import { numberCutter } from "@/utils/numberCutter"; import { @@ -28,18 +28,6 @@ import { const tele = (window as any).Telegram.WebApp; -const getDDayText = (unstakableDate: string): string => { - const remainingDays = calculateRemainingDays(unstakableDate); - - if (remainingDays > 0) { - return `D-${remainingDays}`; - } else if (remainingDays === 0) { - return `D-Day`; - } else { - return `D+${remainingDays * -1}`; - } -}; - const NFTDetail = () => { const navigate = useNavigate(); const [nftInfo, setNftInfo] = useState(); diff --git a/src/pages/MyAsset/NftList.tsx b/src/pages/MyAsset/NftList.tsx index 91bc1f02..acc1512d 100644 --- a/src/pages/MyAsset/NftList.tsx +++ b/src/pages/MyAsset/NftList.tsx @@ -72,12 +72,14 @@ const NftList = () => { reload Staked - {/* Hidden for now */} + {/* // ! Hidden for now, no functionality */} {/* Collateralized */} - + + {/* // ! Hidden for now, works incorrectly */} + {/* {period} {period === "Filter" ? ( filter @@ -86,8 +88,9 @@ const NftList = () => { ) : ( )} - + */} + {handlePrintMyAssetFilter()?.filter(item => item.status !== 2).length > 0 ? ( {handlePrintMyAssetFilter() diff --git a/src/pages/Unstaking/UnstakingNftDetail.tsx b/src/pages/Unstaking/UnstakingNftDetail.tsx index d203cd4a..c1c7aa53 100644 --- a/src/pages/Unstaking/UnstakingNftDetail.tsx +++ b/src/pages/Unstaking/UnstakingNftDetail.tsx @@ -15,6 +15,7 @@ import useTonConnect from "@/hooks/contract/useTonConnect"; import { Transfer } from "@/hooks/contract/wrappers/tact_FakeItem"; import { telegramAtom } from "@/lib/atom/telegram"; import { UnstakingProps } from "@/types/staking"; +import { isDevMode } from "@/utils/isDevMode"; const tele = (window as any).Telegram.WebApp; @@ -81,15 +82,17 @@ const UnstakingNftDetail = () => { <> {nftDetail && ( - {/* {toggleModal && } */} Unstaking NFT - + + + + During this period you may not cancel the transaction. - {!pathname.includes("view") && ( - // - // Confirm - // + + {isDevMode ? ( + Confirm + ) : ( )} @@ -106,11 +109,12 @@ const UnstakingWrapper = styled.div` position: relative; width: 100%; + padding: 0 1.5rem; background-color: #f2f2f7; `; const UnstakingHeader = styled.div` display: flex; - justify-content: center; + justify-content: start; align-items: center; width: 100%; diff --git a/src/utils/getNftState.ts b/src/utils/getNftState.ts index eadd140b..15a68035 100644 --- a/src/utils/getNftState.ts +++ b/src/utils/getNftState.ts @@ -42,3 +42,26 @@ export const calculateRemainingDays = (unstakableDate: string): number => { const differenceInMs = unstakableDateObj.getTime() - today.getTime(); return differenceInMs / (1000 * 60 * 60 * 24); }; + +/** + * getDDayText - Generates a D-Day text based on the unstakable date. + * + * @param {string} unstakableDate - The unstakable date of the NFT in "dd.mm.yyyy" format. + * @returns {string} - The D-Day text ("D-", "D-Day", "D+"). + * + * The function calculates the remaining days until the unstakable date: + * - If the remaining days are greater than 0, it returns "D-". + * - If the remaining days are 0, it returns "D-Day". + * - If the remaining days are less than 0, it returns "D+". + */ +export const getDDayText = (unstakableDate: string): string => { + const remainingDays = calculateRemainingDays(unstakableDate); + + if (remainingDays > 0) { + return `D-${remainingDays}`; + } else if (remainingDays === 0) { + return `D-Day`; + } else { + return `D+${remainingDays * -1}`; + } +}; From 530f0ad217c11325a0b584017f0d59078498558e Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 5 Sep 2024 11:55:59 +1000 Subject: [PATCH 071/105] feat: unstaking detail screen, unstaking conirmations modals, borrowing flow temp. restriction --- .../common/Modal/TransactionConfirmModal.tsx | 10 +- src/components/common/Router.tsx | 5 +- src/components/main/ActionCards.tsx | 10 +- .../NFT/Unstaking/UnstakingPreview.tsx | 13 +- .../unstaking/ConfirmUnstakingModal.tsx | 38 ++++ src/hooks/api/useNFTDetail.tsx | 3 +- src/pages/Stake/NFTPreview.tsx | 1 - src/pages/Unstaking/UnstakingNftDetail.tsx | 164 ++++++++++++------ 8 files changed, 170 insertions(+), 74 deletions(-) create mode 100644 src/components/unstaking/ConfirmUnstakingModal.tsx diff --git a/src/components/common/Modal/TransactionConfirmModal.tsx b/src/components/common/Modal/TransactionConfirmModal.tsx index f45b56c3..629a39d0 100644 --- a/src/components/common/Modal/TransactionConfirmModal.tsx +++ b/src/components/common/Modal/TransactionConfirmModal.tsx @@ -4,15 +4,15 @@ import { styled } from "styled-components"; import { Container, SubTitle, Title } from "./Modal.styled"; import ModalWrapper from "./ModalWrapper"; -const TransactionConfirmModal = () => { +const TransactionConfirmModal = ({ isDark = true }: { isDark?: boolean }) => { return ( - + { /> - Redirecting to wallet for transaction confirmation. - It will only take a moment. + Redirecting to wallet for transaction confirmation. + It will only take a moment. diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index 339a8579..0c8a5ec8 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -40,7 +40,8 @@ const Router = () => { } /> } /> - + {/* // ! Paths under /loan are disabled until contract & API are ready */} + {/* } /> } /> } /> @@ -49,7 +50,7 @@ const Router = () => { } /> } /> } /> - + */} }> } /> } /> diff --git a/src/components/main/ActionCards.tsx b/src/components/main/ActionCards.tsx index 5738e67e..85735cae 100644 --- a/src/components/main/ActionCards.tsx +++ b/src/components/main/ActionCards.tsx @@ -20,11 +20,11 @@ const ActionCards = () => { return ( - navigate("/loan")}> - Borrow nxTON using your NFT as collateral - - Borrow - + navigate("/loan")} */> + Borrow nxTON using your NFT as collateral + + Coming Soon + navigate("/myasset/nftlist")}> diff --git a/src/components/myAsset/NFT/Unstaking/UnstakingPreview.tsx b/src/components/myAsset/NFT/Unstaking/UnstakingPreview.tsx index 8dabf5c8..666f676b 100644 --- a/src/components/myAsset/NFT/Unstaking/UnstakingPreview.tsx +++ b/src/components/myAsset/NFT/Unstaking/UnstakingPreview.tsx @@ -3,22 +3,15 @@ import { styled } from "styled-components"; import NftPreviewExpired from "@/assets/image/NftPreviewExpired.png"; import { nftInfo } from "@/types/Nft"; -interface UnstakingPreviewProps { - item: nftInfo; -} - -const UnstakingPreview = (props: UnstakingPreviewProps) => { - const { nftId, unstakableDate } = props.item; - console.log(props.item); - +const UnstakingPreview = ({ nftDetail }: { nftDetail: nftInfo | undefined }) => { return ( expired - NFT ID {String(nftId).padStart(5, "0")} - Expired Date {unstakableDate} + NFT ID {String(nftDetail?.nftId).padStart(5, "0")} + Expired Date {nftDetail?.unstakableDate} diff --git a/src/components/unstaking/ConfirmUnstakingModal.tsx b/src/components/unstaking/ConfirmUnstakingModal.tsx new file mode 100644 index 00000000..51747c7c --- /dev/null +++ b/src/components/unstaking/ConfirmUnstakingModal.tsx @@ -0,0 +1,38 @@ +import IcClose from "@/assets/icons/Modal/ic_close.svg"; +import { Button, Container, ModalHeader, SubTitle, SubTitleBox, Title } from "@/components/common/Modal/Modal.styled"; +import ModalWrapper from "@/components/common/Modal/ModalWrapper"; + +interface ConfirmUnstakingModalProps { + toggleModal: () => void; + onConfirm: () => void; +} + +export const ConfirmUnstakingModal = (props: ConfirmUnstakingModalProps) => { + const { onConfirm, toggleModal } = props; + + return ( + + + + close { + toggleModal(); + s; + }} + /> + + + Would you like to unstake? + + Unstaking process would take about 36 hours. + Check left time on My asset, + and transaction data on TON viewer. + + + + + + ); +}; diff --git a/src/hooks/api/useNFTDetail.tsx b/src/hooks/api/useNFTDetail.tsx index 63fbd723..8c1ed59e 100644 --- a/src/hooks/api/useNFTDetail.tsx +++ b/src/hooks/api/useNFTDetail.tsx @@ -4,11 +4,12 @@ import { nextonFetcher } from "@/api/axios"; import { nftInfo } from "@/types/Nft"; export const useNFTDetail = (nftId: number) => { - const { data } = useSWR(`/data/getStakeInfoByNftId?nftId=${nftId}`, nextonFetcher, { + const { data, isLoading } = useSWR(`/data/getStakeInfoByNftId?nftId=${nftId}`, nextonFetcher, { errorRetryInterval: 3, }); return { nftDetail: data, + isLoading, }; }; diff --git a/src/pages/Stake/NFTPreview.tsx b/src/pages/Stake/NFTPreview.tsx index 2ea30a20..6def81b5 100644 --- a/src/pages/Stake/NFTPreview.tsx +++ b/src/pages/Stake/NFTPreview.tsx @@ -21,7 +21,6 @@ import { globalError } from "@/lib/atom/globalError"; import { stakingAtom, stakingInputAtom } from "@/lib/atom/staking"; import { isDevMode } from "@/utils/isDevMode"; - const tele = (window as any).Telegram.WebApp; interface ModalState { diff --git a/src/pages/Unstaking/UnstakingNftDetail.tsx b/src/pages/Unstaking/UnstakingNftDetail.tsx index c1c7aa53..2897c664 100644 --- a/src/pages/Unstaking/UnstakingNftDetail.tsx +++ b/src/pages/Unstaking/UnstakingNftDetail.tsx @@ -6,36 +6,77 @@ import { useRecoilValue } from "recoil"; import { styled } from "styled-components"; import { postUnstake } from "@/api/postUnstake"; -// import BasicModal from "@/components/common/Modal/BasicModal"; -import UnstakingInfo from "@/components/myAsset/NFT/Unstaking/UnstakingInfo"; +import BasicModal from "@/components/common/Modal/BasicModal"; +import TransactionConfirmModal from "@/components/common/Modal/TransactionConfirmModal"; import UnstakingPreview from "@/components/myAsset/NFT/Unstaking/UnstakingPreview"; +import { ConfirmUnstakingModal } from "@/components/unstaking/ConfirmUnstakingModal"; import { useNFTDetail } from "@/hooks/api/useNFTDetail"; -import * as Contract from "@/hooks/contract/useFakeItemContract"; import useTonConnect from "@/hooks/contract/useTonConnect"; import { Transfer } from "@/hooks/contract/wrappers/tact_FakeItem"; import { telegramAtom } from "@/lib/atom/telegram"; import { UnstakingProps } from "@/types/staking"; import { isDevMode } from "@/utils/isDevMode"; +import { + NFTDetailContentBox, + NFTDetailItem, + NFTDetailItemBox, + NFTDetailItemCaption, + NFTDetailItemText, +} from "../MyAsset/NFTDetail/NFTDetail.styled"; + const tele = (window as any).Telegram.WebApp; +interface ModalState { + type: "unstake" | "confirmUnstake"; + toggled: boolean; +} + const UnstakingNftDetail = () => { const telegramId = useRecoilValue(telegramAtom); - // const [toggleModal, setToggleModal] = useState(false); const { address } = useTonConnect(); - const { sendMessage } = Contract.useFakeItemContract(); + // const { sendMessage } = Contract.useFakeItemContract(); const { id } = useParams(); - const { nftDetail } = useNFTDetail(Number(id)); + const { nftDetail, isLoading: isLoadingNftDetail } = useNFTDetail(Number(id)); const location = useLocation(); - const { pathname } = location; const navigate = useNavigate(); + const [isLoadingUnstake, setIsLoadingUnstake] = useState(false); + const [modal, setModal] = useState({ + type: "confirmUnstake", + toggled: false, + }); + + useEffect(() => { + if (tele) { + tele.ready(); + tele.BackButton.show(); + tele.onEvent("backButtonClicked", () => { + navigate(`/myasset/nftlist`); + }); + } - // const handleToggleModal = () => { - // setToggleModal(prev => !prev); - // }; + return () => { + tele.offEvent("backButtonClicked"); + }; + }, []); + + const toggleModal = () => { + setModal(prev => ({ + type: prev.type, + toggled: !prev.toggled, + })); + }; const postUnstaking = async () => { - if (address && nftDetail) { + setIsLoadingUnstake(true); + setTimeout(() => { + console.log("postUnstaking"); + setModal({ type: "unstake", toggled: true }); + setIsLoadingUnstake(false); + }, 1000); + + // todo: connect contract & API + /* if (address && nftDetail) { const newUnstaking: UnstakingProps = { telegramId: Number(telegramId), nftId: Number(id), @@ -52,50 +93,68 @@ const UnstakingNftDetail = () => { await sendMessage(data(), `${nftDetail.principal}`); const response = await postUnstake(newUnstaking); if (response === 200) { - // handleToggleModal(); + setModal({ type: "unstake", toggled: true }); navigate(`/unstaking/beta`); } - } + } */ }; - useEffect(() => { - if (tele) { - tele.ready(); - tele.BackButton.show(); - if (pathname.includes("view")) { - tele.onEvent("backButtonClicked", () => { - navigate(`/myasset/unstakingdetail`); - }); - } else { - tele.onEvent("backButtonClicked", () => { - navigate(`/myasset/nftlist`); - }); - } - } + const handleUnstakeConfirm = () => { + toggleModal(); - return () => { - tele.offEvent("backButtonClicked"); - }; - }, []); + postUnstaking(); + }; return ( <> - {nftDetail && ( - - Unstaking NFT - - - - - - During this period you may not cancel the transaction. - - {isDevMode ? ( - Confirm - ) : ( - - )} - + + Unstaking NFT + + + + {/* */} + + + + + Principal + {nftDetail[0]?.principal} TON + + + Rewards + 0.000 TON + + + + + Available in + {nftDetail[0]?.unstakableDate} + + + Unstaking period + 14 days + + + Date of Unstaking + {nftDetail[0]?.unstakableDate} + + + + During this period you may not cancel the transaction. + + {isDevMode ? ( + setModal({ type: "confirmUnstake", toggled: true })}>Confirm + ) : ( + setModal({ type: "confirmUnstake", toggled: true })} /> + )} + + + {isLoadingUnstake && } + {modal.type === "confirmUnstake" && modal.toggled && ( + + )} + {modal.type === "unstake" && modal.toggled && ( + console.log("Unstaked!")} /> )} ); @@ -121,13 +180,17 @@ const UnstakingHeader = styled.div` padding-top: 2.9rem; padding-bottom: 1.8rem; - color: #46494a; - ${({ theme }) => theme.fonts.Telegram_Title_3_1}; + color: #0f0f0f; + font-family: Montserrat; + font-size: 20px; + font-style: normal; + font-weight: 600; + line-height: 34px; /* 170% */ `; const UnstakingMessageBox = styled.div` width: 100%; - margin-top: 12.3rem; + margin-top: 4.3rem; margin-bottom: 2.4rem; color: #5e6162; @@ -139,6 +202,7 @@ const UnstakingButtonWrapper = styled.div` width: 100%; padding: 0 1.6rem; `; + const UnstakingButton = styled.button` display: flex; justify-content: center; From 3a6828e9cab1eff6a5e6a4e9eca532e3b2edaf73 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 5 Sep 2024 12:09:16 +1000 Subject: [PATCH 072/105] feat: conditional unstaking btn display, minor fixes --- src/components/unstaking/ConfirmUnstakingModal.tsx | 1 - src/pages/MyAsset/NFTDetail/NFTDetail.tsx | 14 +++++++------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/components/unstaking/ConfirmUnstakingModal.tsx b/src/components/unstaking/ConfirmUnstakingModal.tsx index 51747c7c..84bc5321 100644 --- a/src/components/unstaking/ConfirmUnstakingModal.tsx +++ b/src/components/unstaking/ConfirmUnstakingModal.tsx @@ -19,7 +19,6 @@ export const ConfirmUnstakingModal = (props: ConfirmUnstakingModalProps) => { alt="close" onClick={() => { toggleModal(); - s; }} /> diff --git a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx index 6eb2ee06..f4283b3e 100644 --- a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx +++ b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx @@ -32,8 +32,9 @@ const NFTDetail = () => { const navigate = useNavigate(); const [nftInfo, setNftInfo] = useState(); const [stakingInfo, setStakingInfo] = useState([{ items: [] }]); + const [isNftExpired, setIsNftExpired] = useState(false); const { id } = useParams(); - const { nftDetail } = useNFTDetail(Number(id)); + const { nftDetail, isLoading } = useNFTDetail(Number(id)); useEffect(() => { if (tele) { @@ -52,6 +53,7 @@ const NFTDetail = () => { useEffect(() => { if (nftDetail) { setNftInfo(nftDetail[0]); + setIsNftExpired(getNftState(nftDetail[0].unstakableDate) === "expired"); setStakingInfo([ { @@ -88,13 +90,11 @@ const NFTDetail = () => { )} Staking NFT - {DDayChange(nftInfo?.timeStamp, nftInfo?.lockPeriod) > 0 && ( - navigate(`/loan/${id}/borrow/details`)}> - Borrow nxTON trend_up - - )} + navigate(`/loan/${id}/borrow/details`)} */> + Borrow nxTON trend_up + - + isNftExpired && navigate(`/unstaking/${id}`)}> Unstake Now trend_right
From b77ef6ffc614a5db8300dce5eacbeb955e75ecaa Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 6 Sep 2024 13:03:17 +1000 Subject: [PATCH 073/105] feat: connected GET unstaking info API, NFT img-s updated, Nominator List fixed, minor fixes --- src/assets/image/Loan/ExpiredNFTLarge.png | Bin 74053 -> 26844 bytes src/assets/image/Loan/ForthcomingNFTLarge.png | Bin 97830 -> 29220 bytes src/assets/image/Loan/OngoingNFTLarge.png | Bin 94219 -> 28520 bytes src/assets/image/MainNftExpired.png | Bin 21514 -> 33217 bytes src/assets/image/MainNftForthComing.png | Bin 30435 -> 47603 bytes src/assets/image/MainNftOngoing.png | Bin 29578 -> 47877 bytes src/assets/image/NftPreviewOngoing.png | Bin 0 -> 206269 bytes .../NFT/Unstaking/UnstakingPreview.tsx | 8 ++-- .../stake/NFTPreview/NftPreviewImage.tsx | 37 ++++++++++-------- .../stake/Nominator/NominatorItem.tsx | 5 ++- src/hooks/api/unstaking/useUnstakingDetail.ts | 18 +++++++++ .../MyAsset/NFTDetail/NFTDetail.styled.tsx | 4 +- src/pages/Unstaking/UnstakingNftDetail.tsx | 17 ++++---- 13 files changed, 57 insertions(+), 32 deletions(-) create mode 100644 src/assets/image/NftPreviewOngoing.png create mode 100644 src/hooks/api/unstaking/useUnstakingDetail.ts diff --git a/src/assets/image/Loan/ExpiredNFTLarge.png b/src/assets/image/Loan/ExpiredNFTLarge.png index 58f378aa1e546c79fa8a2e0b704b76c9d850ebfe..4ff3d8a41b40c3d1222fa91950ccb4ec193c3b61 100644 GIT binary patch literal 26844 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≪M*es;jp%3#P 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 k-ObO00009a7bBm000&x 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%0A;ABIEG)lu0>*~BLr(~i*-8@_)SqanSjmS;a`DP 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 diff --git a/src/assets/image/Loan/ForthcomingNFTLarge.png b/src/assets/image/Loan/ForthcomingNFTLarge.png index 17a3f215be09324d02b766c2a5f87a408a4d6d88..e7213fbb80d9d3882a1ddc2f7a663b0eecb5cd2e 100644 GIT binary patch literal 29220 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 Od?zQZ46Knf4fr1@Nn4r# literal 97830 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 literal 94219 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 z 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 BT)F@N diff --git a/src/assets/image/MainNftForthComing.png b/src/assets/image/MainNftForthComing.png index 4756e25f4c8f4240bd8ad69400d343cf7b72e022..6eecf2f1fbaa0ab014332d7e3ed5cd0e892aaa4e 100644 GIT binary patch literal 47603 zcmXt8b9iLU)1BD1ZQHhOJK5OwCYz0&Y;4=MZEIuO{C4;KeSh>b&-8THtvYq;)SY|# zr=q+B95gmG004lKk`z@20Du_(3{gn%KQlR!#-x8fpd2K%oB;rIvcCgJN}2Tf&m@qu zvV<_8Y6|z{&lgY&Avqxcpf(2P-3SZ-XbqDR6;ky8I{%QHr;~ER4{Oc#DsL+<$Jqp6 zgG#~)0z?9F;e=viWl7CN9K_OOO^9tu8XIQ(NI!rOc`ighfRxroZDhgeN#W(pne&(8 ze+>Dw+ zy+eh6JZ^uirE_e*xvG4mr;ko=BYZ5r%~qF=X|t4nx}uLuvuNkmoyV7165WO@80&M?6sWA`xbNYL&W4bUZ=|mgCG4WBVc|($WdS> z($n%Uj+9y<_mAIB$I!XHSp>K6Eu4Y34PtiyD)Uuu%?LTW@a5%N@DopqXD9816AFTHK}K>hzXKAI(i%@iQPBBTL!WwNd7X<%d~6Y4BA4GlXAUPm7L4#EM&yOS%im@b{cnWIk1Wp`Y)DtP%sqdV{^ zYV}<_VTuFnO{CZ6%Ic=6>K@>fKsGqqwgy>%fxW(+(dg-hdIE2O)1Gi}1}zY{3r|)M z{>n%ek|I|IjF zFm2EVZ1(eWs(Gh9nI^0BEn<%LF=jqmn=)hayL5lpe$WcCft`z)jQ*0P)X^vgDPd`C zIL?{AM*Q}an%yCi$@1k%TF$HUwA!UPd>J}~mC3T*i^-EPi9i39Fwi}AwZZq$%>Nqm zIr=5ERo8(Q;QQ75H8t&jJ@lDd`p!K{t0s@ybp(!C_hYdWYr&u1ZzTEdM-ob*ZM4Ub zi|ACXSP_2A?x}1Q?t?Tz=E@;gg~t^7+Q@4Y>sC?U&uxKb+8)-L>b7~tCl5u0(N$+B zR0AIh&+WPy-1<5Hr9+Ab`~gJS!7V!V9S%9&%K7|f+d`t-VuCN?uhqxE&!OS&8wEd! zEUIbXm80&D<}Z`g{j2TGGixr9T13r@lh2QF;&q895QDa_x1G;7a*ft8wJPC*E`Xav z;#>FfQ(@E9_R-#UD}nc!(i5~7CP0WyXWDC7L#Yjq=5Tph=O%WK{rpGtchP;LrNzbSqf;hN@k?s&Kh~z5 zZ~WiRv+jIk&V#Q2KSw6c-4eE6uQ@(P?MJ1!E~YfPKLlPUZR@+cSy#FoAZ7`=L6#GA z52*h{hfsL_YvqSKq4z7kyt6y*{JPxN=Z`<}=pb4H*+5jkWju4(#$q1u(=AM2stjmk zkEm5SC6&LICL(lGJceB1JCE#bYc{SiP<$<6U?b`P&hNHA3BHDn*99268@vR}?Jsv8 zHhCO6Uv|Eqt?$1opGua#v2(qwPn~SB|3K%OeiNIz`*8n7k&$F4|Bzu5bBO1pT%Avb z@I1n^z?GiTaiM!`JC0yn9=*N3vZLf5(V>?e#(Tx`C>YvIb%m^wboEQ#qRETY+5J-i z^Q)PI*x+S~&tk1^32)$%rSIzj<17E`o?ry(;B9fJ`|Xay`{Ao=`J?Q`FOP@r<#70k zYA?uD!C1ii7>*xZ3v}=j+(L1Dnp& z*CCsCtK66Fv3m96F6K&Yt0S)bFPJZJNqA0OH>8g!)$l%<>7U(2kEaA%)9-ZE=vIqQ z{%->B+1nGJL}o7A9ba#kG9w*+m?Q(vR@d!wUg@+4dRCoRxBZC++eJ1<5{o~sm_t71 z;}5p$Xz$0L{0*>fhx7pJ>D$kJ+iwandT()on>KH9ohKzVXC4L;3HDcT)roI^^XW~! z{fD|i_+PR%8&@vguiINO_yD&8vh0sX|7Z6rg6<0l_>tF?r}4Dv{lDwgw(MW7vs6AN zAQH3fjQ!8{wx7G-=i>rP-=|IWoq6r3o-chLz7{9CszA^Gu79KEG45>Jn|rb&HW<^> zBMAFE{MgGr{glj@c75A3xk|0x`s(F-dwrh-t%m9S%ax95r;45J;#haU8w&v>?YjRS zN$W@7#UzCN=iy450D-3KM%8|fYvA%pHc7sLqQ+2W5_9GO5_RFMwY_fc@XBdng*@?udS_dexZrxj9#7bm|rFpfs@@o zb(X$k~}cCNtqb%z^dQE-mIjl1=4PK@sEyl$t?vpM*)=|drbnkv`0x8 z#{WE!8YIY05V#vf`POWL%tb&&*PQ;J9*t8uFzhPjcE9p=RXtr+NHl#ZAw>CE}z7FR>X6c=PCbLXvjO*-FvQ^#z$9VvWBl7bh`$B!BiTo9rfRp_rZ&Jjte0g)B7K2d5IF6+d?)t z3^$zmr$ns?=h}aI<6mk?*Q5A%Da#G<*X%i>vM{vIRsG9eOAp-Uo9l?qQ%2^0slY1a zmxr+UX##gH*>kVm^KbKR`1Zpw*;8PY*t-V>X-3Dt1gB_6+oCp`oP1j0=f?d1-b;l8 zvg-BzvHvkprW5*?#FNtJp+nC>-Qo*_N|U8wKFq%7fw*;>z&~QSsb;JB2Tr*IxZ7~qbC=1o%4VAXf8|r2$i_&ifMNO1pVq>51@HHj zX621&cND75cAfY0e~qeRd#+QRZmZw714B8QjWOwe1%{!XhWBt+TH$^9P;g=0TKz|+ zbPvc9@iOgh6vHL!4$X#(VLJZBv@s`8K9kZpM*In8@ed;H)ok`$Cf5a@;vZMKu88gI zb^3opk%A4{wrq1=fNfj`OPt%pQ7pBME_-Q5G`AHNPOvK@2@pAebdr* zk{wS}cKc9VmQib*!GFMM?qV4tuaiB-6z{cGXj_jqg8vVGte-$#e~3 zduIFag0YpIe{O8)lnSz5ea}dBjYtvIxBgFczG)T3njD<9U^vyEIsR9B#=jx3hnR2> z3R>{mDXYNV{}TU;JrPRHYn;lIfBqV{_FpNK_2Ad!i`KcGcl&c^O>%Ef_|k3s(;-i? z?THKTzIU~6&9!K?f^lPV=~4NgV4W21EYu>Lx0G6zQvP+k>Nab9 zl-!$-ar}^^kWPK{)1dp#{!*a%SCQV`$dl41guoZuUmAX8`@i75JQi0UPz#(gU;S7} ze@F0l#cyNSIJ)b(H-8JntNO(FdiyHYJ@`lxcxq%A6Zkavg!sdFjZclQ;xAplFP!W@ znqu%W{k65tZ%17_rx<-}2Y6(b-ja6Vow*jQ1DTA5I3H2la$n6x zavI;sjq=g>dbfm@$Fc|Mv2&h&Qqvc8+*o@GwCbR|rDn)KhFHb(Mo+d{QS(zBEWYIr z+o*y)7eifS`twiQ3Ff@*`s@HTGoN3-ubcZ=Le~(FxhPhHpd$=9_|2z)^{ajCjgH0e zzU}oPpFx}d=xMJ|PXqiBIsCPU|IMr$+RB;VQ%+f5SgAX84s2fS(?#Ydpu0qETiZYB zNnIRaQqRDBgL`Mf{7RPtr872fnZM>qy{ywpX8eznzbqRKe)^=IZt$l0 zd8;9i-0k%BUix;GpE}J$?GYtvZKs=544}_M8U4fc?#4o#!Rpj!qh!AP*T!o9myw!B z*|TDSPsQjXPdt`hC~cO#GLD=Hov@CSXbEio+1>p{MbD%!^%QIJ+kSc;!;f3vi*M6) zZaZr%^y&76n}OdTD$}>3ue_xg>(3)R9EUj_e5Ssiouta>KOz2+AYyz>)v6hfl-toC z&2OsL@R|ajH$d9m&j$?h^{2JT2LYz*>`%)VoDDayGtz5lU`<{ZS3$Uc8XIlkpRSLg zUlkE2(B@=jY_I0l^Xh&@_`uBfjjSiKlOd^_9f{OXRAIra zZJJWfPpR;|XlWWV>C+8{fXf zlkj`rC$jHWa3~?H#1}kO5sW}bAZNYz(v8fSD|I)(xx$u%%DP?-JtX9mzb#}$T zcLJpP)vMs^30UHr=iY*H8L@12K;xdEDCcBQl1`SrZHO~?9!$`@*?nZj7rZIR?~m5- z!DO5Q1aBvN2Nmpb->B5}gSf6)g#_#qO=}TY;&9Wu?3)Q9fTjuCG9l?=I&q?GfmIH~zuO;>a%7vV1SU00c?AOr~ zqPy;pp+{x`^X9@`d3o2qW!Bc{$|qLd6^|*1pWFoZg_Gi%6Hrs<23lyK1|%ei*}#IR zxf9DmEXlbh0{};$jp3i5+7L|G0O~7Zl>ulVk z+y0-(Z%GVl7iF~2!TwVsj_I3;AEQIYn#jV4CHPXAqO>VoM zN<(#nO!8|z6kM(rdUS$eZ37K~c${ZE1TM&!e1n*PxN6vP4@OhmRnY9&pWqL5Qxm&_ zIk0k<>;m|YGr;7tryGB2x)JQI>xwOB`aWykaAGSG(>C8lH9j>-5 zPxGinc-~i*+h~hYh3r zj*k<$moL*$OaoHm_X4lk{f_cP6C&_AT3bc78l{|~Aq!fRj+splF~)5ci`HR$V)6Ln zi>%@%8$~0$zi7$i)JCD%2t6*s4j8%;Xtbx6$6Kh zn361A67$;B)(wc7{I31&Mk7TINDvNpb$33@@mMvwS2{eAJf6lp0!q1SZYbCh2D^~X zRK+w~bOl6m^KpyDWE=Te?b&8Kg$q&;my=U5o8xnr-`-s z2R~v!VKo{9sGR67vI?FE@XZC7M+MXoD+aIID07giN@2L9A+Z;+OUDJy3FTWbd`~R! zrJzdOn^&$P3gLWjBmsi5hwLqR81@3hjDiG{?B0%rydco2bU6MSId0j5jI z2?uq(8WnZGh&?W(c-^x*{@{ZsJTC&{M73|H9$T}(p2!_1ryc3LyT)vbnDFH>*N@i^W7&VZGW~JP`x*1e}=yw z@EBg?JXr95B96wp?ed#i7o@R?Fom6JAkqO$vH}#bSc`2KWhC*%yV~1SUaiFdSJ1lk z{^1AGc;)Eoh4kG~q636iKw`(|xSeR5RUn;>jTtW77>UDHWfgYe+nUj840^}aMk)st zd}W4G_W8=a+n(MMgOn${QNcaS3BueVl?XG;Q`6PFVj0}ORF~x(5~fh7cdF3?SAe`^ z1rA&or+UsK;`E_*An%vJA?PJA@g%z5)HV=E-#nKZx4t4vG6thEPJV~Nbq6|z(L3i zL8yaVjF*6{XWy2K?0R=gkWhQX z&FIq%lQEpizZRJ5!&_X4Yp zW%>u8dhHYZN+z&&92xfg*pJfG14!`P;G)_9qg7WoWaBSm!_yIvT%OCnkM~bF`>AN6 zpu-^xj$M{Uj@pQ#66cp)pIe}U{l<2E$`X$BDIi(htEB9vLURK2dW7EifqiZ4#HNey9=t;cK=% zb!i*gSARp|D?nBju_!XyvOL91FLrtCMLx?bYmERhBh>vXhK#QpxR`OrVUE=9YKHBZ z32-U*^akaB1Fz}-0k8RX1g}k6RaoS+G1QhcW#uwDqSd^>c|{oKApg}ScTMaqwikzl zCE91a2!{zZf_A`uJV6tlo-1$XzYQJ24>81-7CksY5!i(Ju3i_f3q0du$HyVwpj3Q( z)ItwMZ6$>U3E2b7ffrrWHFNG_TQ z>!bYcIXWt>EV_@P64^6wpseAn8oM6V87igpDE*@d?F z6=qq)4l3GMPbP$xKiLZ{lww97>d@K)1c%$#pu0(I=qOIbZ=LX3L{CLvTNg^@=&sV- z%dHtLD~Ckt~2WAA12VG>zE^4L@1?2SshzAuM-b&d;fc=%1(H z%nK5o9yP0*$~7FBF3E&XgPD^F~z%%$xIa(jMfTwT9~?EZ@RvQzVuR~ z^PAU}9kqaLuE)fu+p2kJ=yz-*8O!c*(S!p#q)YE38s~R2?be;H>Z&Y@TW;hK9j1IJ z$}(X0RhF|qY*rQMR)Fz8^lQ8x=I1Z^Nd-F`^Wts{%0$WuIn{<^vCsGpUCD-SurW@q z^BXK1==;2J>e}?3V-iOCn;;E{V(2k=qLB7$I5YKNaME=I5RH#>H?-6eNMt zDxN_U@aoYES2ox+a#N)-00yQLm;^*}4NXaIu2mNS5Y~v=pGO1?8}5_J2S(Y~Du$pF zIDKYZMCjaUj?Z5dy$;G;-aAeGL-WtmFPiUmZ%3LDoEyKg#N*KPI-D|v8h|J#V4JRk zS3x(WcwQd4LFLh+~(9QpqHs5CfEu^^qX4;FGQ^rY5GQLk3UnoKh0jA zt~8+iUp`L)4t^yZ#GGW2fQ&YZn{`tKM`6)_FP_n9%#95M{a9mwx2j0Mlew{qw0dGn zofv$8R{O$3lbTj`u~KZ|fM~+q}&2sUOTf zYKfaVw&scC&S{UOI&yrXD|{`_%7Fn3NG^s)6BW_k^`+gH00;hDNa0WH{U!H4C2ofp1bAJQjmAxo7 zvLJds7_KuS&I4I*>7#{Vcqpxq#Rbfz1PSwggAzgj<^>rc#VB3hs%6rklWc;q2!5}S z#excJH6-;qzOYjTl_q=;{j#~|0q1?blHfd%h+&c!nVmp07{fK*;_eK1Jk%;wwRzco zfANVwg(JHwe!BbNg}G;{aeQ!So)xMn=7QyHTp;13z)_!@+( z!$7z{Pp-bfh zccH$J_)#+a^4Eiy_-^s&3=8kR;PtVoar^q_zVrG?v#LL-JD13eDlg8MHjCgQI}5rC z0S76F|FD^w%4VF<%B8AQJVy~qDPl-0v~Ajpp+&YaknLrJW}^ul3I=Qu4HHZsOWzXt zrbrEyl45_1_trB}t;9a~`iwfll(x4tA5YNmos~mwZ*atYPe-uqZ^6&r<|Lax z>_NH&c)b^gsHpUy46d3h60SB!GNEy%lynt%~_R#re7)KO8NmP1dB*K<9WpRfS0)eL$Clc3S zX=f@&l{<)j1&mZWTYH4KpSb)<%Zh=*X;pccOOwmW_N}B-W1AM(0kO7EON-h>y&{gsh# zTTBs(z|g^C;ltxc_q43ZJ)Q;CbAdVp07{s2I01{9U|5(Q_K*yNk}Kl?Lq)fU{c5%3 z8#r6@>1+Kd9s1)V6{HD;UJE^ERbY_>`qBz}t!_wD-2 z4&otstVIla815!AMSB(X;#P>&$5l52k8TABf$eA;m_9yu1lwg`w9tK@ZR8XBgS9%EONl9+z5m-^9>x`Xp;+Ap3DQ^voRpT~=EwY>$p*MD}<2lHB<0UezMd#gVj&Myyl`_B4Kw}sLI1Vo3_%hZo$ zZjSa;xU`G2hjtv^6=xiic~XQu2^cKx(fqDI_i zF+y0DatzT}zX@3L&dWghkR{XdLY1G=;W4vBY?@_*)0f)~2XEMk3TVMVC`S1SxFsv2 zZOPmi4z-2v%b^>wYVA|Ge|IX1TQyB$%XU%nXp0p4u_jjBU_D!8o9oG$deF$8&f!5K zTvo+l!{OI{%T(1ZFQmau&iJgPqh-gs43Q5Z2a?%Lc?ZJZyZ6~zt<(8yzR%Yy42J|H zmZO}M8hj>6LDw)Qr>SVxCPCwXrP$^y;#$o({PBIJ_38Y&vrT6erwn~Zdm{1iNw7>F zFf=GPSS8X0MaeSAc6Y`pzt)nYFvmrAasUOpWW{nR;Kl_S0%WX!MSP9;NwyMkw3J7& zEvD{JuY7gRAtu^y4Bu5-C zN&-?7BHnVqs{slK#?+-Zz>(CD8m_DY&9CA2%6ub@7eZoo36V2wV2*o*}IjP z#WYiK&s9Z*q*c$-fu!qPhW$Mw9;u!Wlgej|)g?V~tOJsxI&Hy~J{_{e`80!0NH_W8 zcnmZ?*7wF4Qo?Xdhnz53QQuW$c(lfvcW@}QFm$T$%IIDZDYvvV>3n+yH$M$InfJGL zm@o-ifwil^8S|Jt>`#J+=HM0NooULg7XjrIf+8AA;9;7oY^?*ux+Rn1(yBt@f*wn@qztHu zF2up_kh{A2O!+ABhj{MKEZ41~2xkZ(FwVju~okj4pA;)n`8)11{W z4A>QMn%|;@gquMMxHD|cZQCHCyuX=cWm9aR>boy3JRv7ZZTbd`Zx7E{MpaE0qJOHPbjmmv+UacT!Igd$yTyO}V6 zg>OrDjF$;XSxHF#bINF#V6VzR*A-Q4ZHtk$udDGPRB-Pww$x}daBjQqcpIQ`%9-LN zISAI@fC2J}w~)Zhkr8wV?ptImB3N7J8W7tX#liOb4_ye>2;g3dxr#%F+ptLieh`P( zMzA)A+UwthpQudkb_p>wrfY&7yrP(UiBRd6M`M4gRZxpYGh$qor@1mQy{E;%y6Z>| zkhqU6F%2J}^{dq(vt%+56#b^-Q1uK)8%M(&0b^~tRcF^N7p3sP7UU&w`VoL2_#IlN zrGd*9rb!Roj%GD9boGVHXtO0_!JegR?Y^MCMhFw-+#Rtb&I89+JGSY(aVIdy-T<2`Y{U4iqzJS z`nh0}RtJ=$HCnqPRA>Zj?Zu^Gu$S)FBrWc4tub?PA9ShUk*neMJf9 z+H6VcO%z%6<2n-_ZyhZJZSDXimk1%O6f$cv0H$+?`?LZ%S|K3ej3MGd2JoBnyjr2Z zu_}snas;Z`266%RMS(FjxZ@{nfYn);4A$a4QjXK{@Ao-k*<>$r z(|if-bfKu;dH1`cN_Fu(uBeT$NW&v18z5aH{%x85GpzLD!tRJ zSu$b@+rqf&WC<53ah-%Q`NLCe;+TgszwyypX_X?~!%XXWAYW;72PgrzLhoW6g=)1q zB}3Lici31#=O6FtmC$dYO&23o(Q^6jJ8SjKJHsc_k)I zfT+6>zd81C6P(o?0V@kbow!+oan<*pXDR|T#pfo%1|qd_1mamSBHUk}xm6FKag2D7 z>s?IL0agt&P~7Sgbg_h6BNtszF3fM~>J29nez4_}aR>&M)+HNC>_pil0&Ji)`F#nL z?jCTKE<@=}1he8IdM zlc$a6I$xupbhfcPr<>0ALcyz*738TJQor~X`QNS=h zV!F+^`Lf7j{abjPJ?E>nm)Pd1vN_);ZI7g%l_o6y_%luvWnbw(7_UalSAL6_TsWBaUtNQ*M6 z&e)47o_*>xd53y5enT*q&2Z5GEIjjY6LuZYe=y_bK#Y;Ii)gFl>`j=%C~|3vE>i}i zEY~@)(c@Z5vz`q%!6RKx6jl{(Vi^^9p#$5QTWe-#qayuGPk>HCUh02P%bi#aB&m%2 z;4rQ6@M+4f#6Ul#vl1>o3ZdyK^PN1i+6G}~Vxh|>O}-ju(o1W+*b87EE))nI<^gzO zaNFx-<+lRTPwROJM%R})Mk@$KGMCskEJjqmODMTu$WYXH9!_?dH%3i->lS`Kd~i{Q z^vNEp^NFuZIuAJ=nIJ}U|J9DNB1{ut3jWxHW$an!3i{d4j+I2Xy+xM^5(kBasfMrCXOUJ?gV;rWq- z=!HCqx|*rfte&BvnQRlx*AzC)BgwP+%k(BRY-(~PsTFwWgg zSRd@aCYq7qX6>AGLimC3KqzL5lp{M3EO|9*Y$cBLECuqC+TM5S++1p1*iWhV^lM>B zb7>=c4Y@0ZMQ`5r*yH%x(;_ZgLzU{Wcc_lVc?%~|TK#@|&m~92CE%MgKp~PDMr^D zGDTEUn6Y&;N~rdAQmnkGJoH zwidz4fEQxJeG@UnI_P-QL0+4?Jg`P%UoD7uNAr`!*hp9O!|NoF?z%3lL`NOs1Y=vg zfQO>FfhX;GE}^oY(Cjrya2MP{MLNs`G_7qR&qHqnR(LIP5=0{$juvt_70YdH5^#?M z0_zgxUYoKnDA}VgRR9;}aK0WC$a14lx{5>;3>nI}xR$c1kg<;$n^#t`O{zhZEk_?e zVU*N67;iM%i$nW>r-^`&*j=)EaHMU9w^N^t4(Vl?C3p8EL0JYH=Zce|Id(T-VlJ?h zmxdkN#9V_V`Wk8S@wl9*JeQdgqk5ULL1Gn37O4aDIHD(@HvwNE7{ei;X+60uL@?A1 zsMw3ID0sLjbP{^@#PZr>j}?cJws-$Mx{Fn6_~G;pd}jm^XC{W=ln}-X)#8aN9H-A- z7N1#04t39c(>%nFvnwbe06x+v*){6T9VAO7sUaqqDgNn0+PpkUM3P;-mnabx6@MyB zuxdeI)c_JcvX&f`6#lRm91qDQ68;g8Qb*-cD|rfTVY9BOlt+Z35i5QhDOVXAaxs`K z9*1B$rwAlUa|zCeyNY~DH+h4t(O6Ye$w-6y&10z?W*3n8EKSTMXT#x!|V*WMgbmpl5UNlQ3;dnf-K>>Su@nfwwFRU!VO4q2!cqBDx_9M`t5`$5h3kqz z98}pHx#Oib2%g@QlCiCw@`j=mEv5H6c(95C<|v{;y2>g+U4X=6{S$G}FPVNf=H8kb zc_1osq&1(&cQ_XmKN$2NCdb8eMIc7JdM%mY^v z5N;q|@#Wb*mXr_49Mq^pPtMH{agT!7=_%9Kvpn~PfgB(#YO`RN zHq@`7*W#bR-Sn&!8QKTdID1IL2`iX6_8A5*bt^z6G;1(v17+9mILWTf;0SgoU2-x9 zo3Mphtw6vNAYyUB+Xu2w`-Sa{yLEK3|K9ULK*rnO@A!SAmO&$q(+v{)K5l zPdyl;+&^Re)d;dQ{V_0nyZyCVji1x#?@n>U`ua?(6@q@`9y`0LyxIEk4obfv#BX`t zer7M6c^GZA7W~`T!>XS9?l}0f2fL%G*-e_gw-T5*5^`1IkUskdHfSmZdM5ysR|PCx z@Z!7V^&%Y4`kVP4AOg4c9xoOhg6td`3~BfU+0>Gtz=9BUQBA8yMguj*_Xp`uNeb>! z%emJuMOa5(w+GrQe!l9n6($2PuBX7!n|>NoZYm_g-+HFwM!HG*y=tLQigp+}Ap9{W zP-KOeLICX-DaH7ztVOR5$P=N;q)XnT8SI_%wi%b6*Tp}lIkI^ya{(`uI8lINB}etm zV-MiqKw{GDCFi?P{Pbw(&UAn+=nB3EFJ^#mk;!W+o*@*-_M8BDq%~$|ZoazPDmuwf zk=}+y2{TQQ&7z?FWFSuo&R$Vw*i;T>VS$fNOAkl`iJ}X#gD;$CEkvwPaMaaw{Wpwe zIHSbM9mjCiuHgw1!%Xb(x{lAn2n|qGgA#&KWqOpB$i&Ly4RI#$Q)m&wfSPW#5GRz4 zwde*Ux=gq;Oj{k>Xtmb(F8T-Z9Vrd<09lMfZt}Hj^I`7jZGWHJ*?AyU{}cE>gP-kP z22v9^$9S}_V=tc5ayZ}K)EatQ>`ppY3K*@mb%<*Ljs?t*N`B0wpb_A~#VE~9z=7D`!Cpld=m%n7xQHW7;3x+tobPEV}m4JlJh*0>%7}f z%rh_M3+?Y)|R60)#4c=#)-5Qqp z*gn3dBtlev8sqDXl969rSE#*f?R1?&&^+R^FqFsxgOUFICfrtng;{vgZ&wc%oqZ>! z0sDc9kuZyvkXBkP<8u%NqOB(uR1SEGI7_oaUW#5|A#m6> zZn~@lrbRtNQx8-UWLeBjObD5<;$A{^&@iROb}I`w9;6)ZyQn8_<%EarROCryBB>eE z=(;_jJ;}>A0-hdGz7-O**1bggUV_Bs^;m!O^E?7SC=sIax;%r^_Lac%F>d9dX!eL# z50Pek1=Gd*+C`%2@t`n=?-KEC(oI#=u7r(EXH$z_Slep>sr(DSVLSZX4BFd*mki!k zt2cqpB8FL!Sjv6oghJ5D!$>)q&64K&aZgGM?|R}AAel-$rfS)Ksk(A@q_wmFRVV>C zmaqa>ib;pGP{XCa4=jH!?HN@ggRz5^yjsLcjS06+HcAJ24P}LO0Bgz!eT0DLj#W3M zWm`@IzLvz>TK5nZj6YA)RSFy-6Zs9EdZE=GjR!sbC)0l=^&kInn77Cy)8OP5Wv+ z(}jI)j)O_}sxPk;1f$iTFV#cbOZ;R5UF*zjBZgpGGDDzEcacCAmRvQzL<#dQjZSz~ zZAsL{c@Pazw%Jm z=4~JU-e&H{pmZn%pm8Agq##2B?wsL^sf?M3JNDS93beLC zGYK*e09j(J!Lt}sKSN>swd3WvRo%vkZ((CTb4DdDUwKp?d}0TP18vk&SoGaHUS$eN ztobg;QBW&Nw9*>f8R5huuFaga%L%292A6>q+(Ms5VrVAAS>%9}3&3qgSu*0jTmF0E zcrp9!lyClZt`-Akxn^bu6gyspo+>cFRZ++3k}h3LW*&6khUgvA1j!Gs19A$f#q5D5 zv6nb=n!j>gdJX~l5$L(kxB=q3paCMGFroBmRsbatm_0Au#76`a7zmkuyih>S8J4`B ziL_Q;FLnZHP#j!*w-U&%+A+Y`Frsi;7-Qv>)GCMyMBe(hjMliWDQv$tLF6m652q3E zb;yf;a}vcV0fApqCY(+!Qs!h>>-Qp~$G0y9_U^En8vGsLZEJt%93H*F$lnUz;S6)b zCghwG=lano&pZeR`*^tPz_gam&I~?}M=JcRws~Kj4cbALqFTtwu`p2;Bw+)8Pu#H- zH*qnCGh(Jn){93Ir3~Nr)|&UZhV^_8GOiw3BU#BbzP;Im(M)BnZ!oA`pX#tf_!IRB8sINjVT&2W zWsor+MYSEf+fmpBTM6#z^w#_z09Zh$zdvU1)0}T`8wM@XgF6~@G*yZ4p=0%DHyDGg zn#)5ro<^~c>A6Pw_9gBs1VCAU41ljWw*cdj7;4eVxUB%s;(<9GPSE+%7oHBF`lX-w zr><=P5)+re$oU(0w-r^M$VmY zjd49$?;2ObQG{%3js6;dKlqw(x4Dgt*3$A85`VNc(##;m(cMzoO{@ipy3K}_!k-4R zu&nWO_I+4Tt1{3Z1t6vQ#iwu`-D6B<9EtiG7~_7;cDkrR&QP%tOypeHwwg8I- zwIyXY!2!XFj0W{O9WhSU?Hf7LyK8#`iik#&_=Hu_-&uZ?uXSD$H( zKsXawA>Cq@Ko*zr3x5+_!%4QABS8T}DgA0kH1C6aR1e09Djz>`fSnsEw1_s=Yo%p&h;+r&};f!@f z=;_eD^v-EL2u|MZsanNABnZ?F^P* zQm_8JYZLBQ`>i3Z#iOlOTShDCFq1&V9?35fFHwjiwou^8bL2tbwOfNtSnQDM;VLaV!wk{91y`#=}ULO z^6cs_&OKRc09YDMtX~8N;|*C=gkDD`QbAZsyVN~T>RP4jNS{Au$1mVj(kfqja)xQqL0v^U65cNn>`G5&3#;AHPJ7-o6uvU7t@$Tr|0Y2YL;lBsW0j#Y#7U116D@% zbo6HoLX)1Y=EZ)8aFz;s$pL%=36)}XhC&^{ocPE}i~20&E>C0-TgC8g3o}rQJ8JEl1vC$qP1asn}=VI7Q zMZ`0!#r+CccsoP7MSYiJ7uBD|b->nEVFnn&U~G-a5x~)21{h#`sBaw18NOuFEFHmsK0RqSfa9-CEJ@fPnEL&u;#TbiU4VmCdm_c>qE{sx<`Ta08g^4*TPf^atM!}y&8a#J?2T=(8w?q;QwB}UUokeA zs^glCr^)C#RTeZtd^PZX$c|&+OFn+nxj&2(ed9dyvsQO08b}#PLF(KGW(Esf%}(7^ zwg@qgqe(cZmdYSnw%Eby-??X3e|68YesbPV7s7+vru#RvHNWln@Hcy`cL^fNNtQ-{Mt_l#$ z$p#33&S5L5Mf(9lux=S#=FfO{hrgY?j(L_#Ecl|5e%}_p2}I%g(D;qIRRibdk+Lsu z`MzGjGKxJ}8F*||F!U;PfGsz5-*H%$fO z>ZvvGS(Tv-W83D?fLjm1Au1`lxE7?1zG4rpYa4?xU4;dcjP`KeK&;VH(%~SB;y68C z-nT&}Lem5*nGM+AidvM-YOhBzMvb31hG9-38y`D@c@m&2bW-_maHveXrS!cm9vNAl z*&=}W0BE2)x|5as0iU*L5EB|wfWFCicxOi79X z$4F^KX5_I(he;Wl@l#~sfm3cqmQfA|n9r%E4`+nRT){wj!!3NyEP&JDz#z%ci^c0Ieu@IR-6-Rv-Ew)!-Gv^ zi!;TfX+EXKGec7rNoQ*Cq&_Lwr&uZg4+&*C_F(ps!s9WQ;p<=ig8a&#AA7NW<(_4I ze4i4M^MHb669_u&dZSLXIH$r!jj2``G>{KE4|o|a!i%(?2A!_UXez7W#e;8rRlJR& zYa55tF^tuU-x_=}B=goAa7Jp8=kmVAMvqWqURa5K<#$CcI-)~Y^*Vb>`a$Ss_3V^G zR(i+W!TChrrnhd;4lRIu5{_noESibn#@t|DWL;(e7<(lH^)6!ClI=l`V{`Ai^1tu_ zLBbn`T}}qdc{o7^m0@{F!s64URdW`)hT`!)4WuRB~G&IW&CS4VW6cGf~5J52z(esK-wpzXe8b6L1 zN$xL7Jy2fEt`P#l5@ri%dF=DRyI*@t22z!G^dXw_S3IIq}B&T3D5Ey_b zr)?rU=w*G%yy^5poFZ|Zafl!|(w?sHc|;SD3c}pwC-EpDz}(^@!k}tQ+n9D_#0a9O zFX)0Z%%?~|2wgp8(;})nfgZctk164w`-=Q`kK1!TqMA4g#2S`E02_>{(+YQi`^3Av3kwGf38wT3M9O!K@(<%2|oItj{qSGlO~lNns7l-%8S< z-@eHHSN1D}U;onax!(|N;Nji@h?c&l5Vrw{UoNi^F#}Flqy~5jgD8IbivXt9#?cPe zny#bXVHTY-{__2H-u#ez!{=pzK`WBM;i0!5x3!WOXBAP^c!MH3X3^0=dRsgz+sBOz zCSDutR77(p3UpBD+aj!BKe%;#TTCGh4r$<5KE;)vo|x?NdaEy)aZT zu@Z5h->8d5mnNvQGM_n+ZBaT|D!idkp}n=9?OA}+!wiPjs7wk*&CB9(%%Fn>5h!ir zqlQ#mNx}Sz7VUUm-UKn(smm$pgY$#}*rZuEv*M7j7#$ZJtPWNpRkvVXL>)7e zZIL@&Dgi2eS{ptRnU01F6~>9XsEf}C_$1O4)~ZXDJ0QU;%W0g2Pk4H zo)PQJtcRmLWezev|K6|t?0ri3$#KXaRCz9uyZM^8(&Lt*a1%34{_KGvR2QhYv= zg!y}0_^_;txHQzbvLztF&?ERtN0or!WoI5mSrwiJ+Nm*71`spV;;P~B3Qw@KQ`09A zrDJA`1uG+Qsc9;7Boiv0L5`;&Z-Rhi*_CMqBih}!ywgL3F9LD)Wrc?j92eu@4+9XQqRZgL*_jU#9e53` zJ!C~tt~G%1@zkj!`21v?yNNtoHGPWPcyt{8_5a>aA?;x#&p!Njjhd!c%~7+0MDx`X z$oBFt(zP0FIgQF@@Vu*OK?J&XuL=?{ku{6-b)(wO6JM7k>9mOpW`6!tOWG_x4U_0J z&scC|&TKH9r8-CPCor!YRwN%+0(MHQl(-^ksh2i58|9D**Ar9kxT@HpA_gMZP=h9^ zCUlL|R$)+nuh$0=i6{?2aUS3BXcN0z+*o{PU1O^Lb#J*K{yg1}R_D&^0IooZXBD z*~dU6paqZO%cA9a7j(2)ts^BsN2d^5!?`v`QUnZ&Z4N8ItLzj^2Zeejg}xT~rh2wI zC+2ZxjcTBO4UVAT{WGb>hTGz#Z6;^3Or5D!^Z4pD2)ce@TdJ^6716{q$78Bh=w>`s z-w+DyTw{^wQ)q>Ek9$c4#>WwW~1+X;A`!U48n)e z-#}Y-IYC2NsCF{9hzyJ4NaI|_tCh^zv#nk0r|H7VyP|~zKALaag2d6`R^$TaXb(TM zfE=|qX%<9i74hZQC5O<}Pj^9~z z>-3%kaG~7Lsmzv<7VXTY0U&71SFgUY1A_i!5shClwv&VSw8GNYtQoY32QTk0fIAJ9 zH+!?bs6!!3HlUeM1g>k7M&j&GYE%mPNzMMr$J~*ZLC$5;78_1W83;|P4{GRqmH~1+ z#Sj`N4Or#HumVj@{6$;s)F_^XY8>R1%$j!%-Hsr7Qb2Cil>;F)qZ1h`|8!tdX^JE` z*3sOF?y_(iZt+JL00_|%FG4J-SD{M888pGPd*aKiqJxDHcsmab{ox z*f%qRo)rYZXNV8$D`MQAq3HQ7Ga8S$Da4YUP=BvzBiIn$Ia|8~cmU|ZpSrg*eM7)K z(hGfXq4+B!3wX`60sGpbfnnrnzO#lXlFIaz0Mb(8Ie;G)d>TG5&}=`OJG%X|1Ur^3 z>$0Ots|{~K$d;XxW9rewlthq3{VkhG2F?f;FmgB;I)Ib(H7AQ;DNJd!rr^LpNEKnA z=ipsB5AI`0yWptr)r`6(XjkVnA)uix9f*vR%x3Vo93QkQ%1lS9Pl%6rG#)0pm*0}= zo{2?wsBnMCvj5l$$R~ISK~D7}&B9>{QfL*#M|GwMF+a4qU0m(IP9#=bg^8XLJl6J$M}}KS5}! zj^QF=2zWudnP${Jo9BX>u?#{1X^$WbzQ1tv~4xSNc-OZ>U?DvKdz;7N%& zTz3n1JIM@mi6twu52){;0Ai+SxaEgwE*V#Rp6Em+_tb4D6ZuyO>NsjSSy*Cc^i?(M zvIn*;0OrdV#z2x7WFmH3%5@mz`Oy{)G6+D~iq-P}H*~cS@%f-l16-b1UtMq7H6?$f5w03CM%5J9Kd8gv(`4D0SDgMB8H`#W zX_j@$K@Shyu%k-{SmQ*CgId=#*cw^o8~|un^6am6#4~nG)QPM6ZTPYTiiGwfGss|6 z=Hr7GrfD#Uke({A#5LLmn7WNzIC$k8YT<1`#8`YE&9aXjOdQDQRxVkHP8+2BPRCF+ zS9Ts;*PktBPIOgwu91S+VKUBK+)yexC7qiIFd(6N7!mi#9bzUhacH0fLb?`A7J40= z)&8Fvm9^ufQ{zC0PpHe>r2-atU&R4y7&x^B%QlH^8ROs~#*-T>RkMX~#4y?ygvk9! zQh-1~Jv(_|pf%bUI7bPA4o}EXnk1EJN?}7mZS10i!~Qs&5*)}sy9s5gMJu)!nW|%A zxYo>Nj;+=?vc;h#D+*l`Fj6inOJ3-h%DyoJ%bkq}gV8Rp{u>K>Mi;x1X+v>8Hf?GGS9)DH2=)?8MrJTsE~A2t_{zPXOnXm9#Y?EJD2o~jO^}vi z2SWe?Ffg>Jp$Mxoeh4d|5GXQ8RU{b@F<(MU6+idq^t1Vgu~UaTJ2N;ouFd{ZmLeQL0czvTwhBT zXd#k}_F?IXQx6iDTpP$>K-rk4>s0mvC20pa9)ast%j`>+2f)05L&#{6V@!ujgB6#C zen22rIKB=LVHsl!pdMa(EB%f2@k-;a<4vQKh~?|4bOtwcR`(eF#4CUw-d% z@rxkSOve;b(>m594xote0xFIXy!c6O(*q7VEd~%AO2c{^lggo=yHmG;LBKxXU_90p zAw&ch(DCXHFPLT~SN3p#ZrBb5VH=Pbes;>REmKL!E`ldoC=iJ3O497EEx&LgF9{&Z zbDZ#6npMy-l&%rhH3`_(vri?YGO?uK8nZAd)qb$=;VMahM*8MEytTsb_e#L$zSz`&$TPV}+ zPcP+PefC=ZtM7g;|K;~z$$xbRuTQs4{x=}QZpJ4HeZ5I8oUX2u0pdbt@YW8&JSOUw z3?(~j4P4JIIM0!gt@ip>CAKnB!#CQGQUHV)34mzrh^3R*X*<8yrD{Lq8u1w|jegIg zhIOT}q^oD_#8g-5svBil9>_M%VZrB?Ilv;w_@XSnHy9lbbp94jph%)v+E- z+CE@Vixq7p3F^w(g($9={)ZQ6zV&*O|L?ayJHW~TOF~i~W)xgea}BHth3LD{P;9~? zOhGISK!LGFtyJ`P+Uc_Bu)WjRiDhtF1)_iqIr^5^3DLBWO{d17av^Yvi%!MI>J)68 zQWEo!NgA1?RXExV4h_IKcdK<-vX*?<(fi&OH1OEjROGP@iVjG}`z08xfGMVE`E>O;t&pPFnn2NquNCw=P5S&9U?im^=szbRMEuXEC zdP6^Ad*w`z?(+oQJO2w3;NwFVk>w_DUE6%?)ecyn9+}oZy8~AOmI?);Nj!1BZY>{Ug zIzczuibRKjB@{oa1LQ%WOmt2=Hz|+%vl<|%J<4n_Skgpd4kX;R`lQjHTxeHTPLjoN zCbqQ}q0?Zw2pX|`{gF0)eAxo$bg|#=Io7d$ z_dYEQz*6azz^|CX9x|$b+S9t&mViLMRK0yVuyi8?_!f1cSv<5*vx2P4;qIVHbc-Ho zVwWZ8$>M*8%KlfCi!v-jSlxCY}nOFVqX~f*aQT1dcyQVM_X=u zwmdmYPHTd#$?E1tAB#^paBu5;X#CxZ-%a4zs0Sq+om4jVTAO;sDQWsc+(*zlP6L65 zM5V9Z?|p^p=RC03NxgbFG9$OS>e{CC{oL{d*44IdCttLHK2CVjA|Oop!Pkg|FT~rV zzN0u3GE+fM=L3&weS^`0eyy>t-&2O0uq!18-kal zD|G=ya@T1h*vMAN63kWFI|xjc078MH-&7dTn!1CYD-HGP?N++VNj{toMs>O_Lw9CZ zGO4~Et!CfWo$t<6+)q#RhFzHAB8S5Hm#W8#@7mH z*aLLLc&}o+7p(wMWLDvaec#6g6iWoK2HZZo%erS)zkAQHcEI}Pt2ZRORvn=GQGF|Q zy>0BXwxZ{>+WviA#GiuW<6PRQqAOYlaKlh6K|TpaFq@!v$pR|ncfYW2YhB?Wo|?m( zW~>Ckd_#70@YKN8eN}S;KtYhlrR?N(eX)BMkDu#aB>CIfB;;)B#X>YVpzDDBMQubV zy1;&@Mct4b>=NBt83QZ~0#-!WZAE;|60boSoJWO|3I`*53a)?okzsT9iB%E=OUte+ z`=bIFye_ncnHUX*A*M;ur|n>x3B1nSMItT@0!wBl4MAmdj3J;^-re%Z! zw*=72_*(0+K%r5%D>^j>Cq5!uUB~E*s+biTMllst4UZ*&_=uDD)`84`7j#v}X{ZQ6 zP6=Sj8Yw7ki4C{m(a+8358N}`QeAJTHz}KE*P!u{)I>lZ6IQ}lH?hUZqnEsM>iYo5 zCJ95OGeC6qP5i}!7JkF4?HaM+x?2N89v?=srC+vq?<8t+Aed3ct^l?`B)VB9N6XRPZ9dgo#ffBuQeVL^?x+vDfc0#;r#f2Gq(xp8$F z1@Ig&HKSlthM%R4NG{ZmW)Q@}fQV6DN9%(Q0hT4N0GqrJF@mum^Xh+-)NGe&A(QQT zQZdk6*0ha(XFoRlAqaAA8y}sk-S>aDrhWi>4H*9(HiIk}yTIGd<8>pX)Bq)`8c#LC z_|DIgHc>DR&N-3}5j5;#(1r%1DwisqO!yL6*7pPnF_5|s81!FJUc$%FfZi|Qn(TS$ zbo96;ax0LhWSF(MUJJPvF`T(&%%~CA*&TS9XVjWNH2}jc7 zlaK=z@eH9yS)7x2_n@TvAjO@r2xqHehM-U@7e>Y3DP&qAHD*`%SfAMxH`v0+IPb-w zM+C{D$oMlC=JBP!lhbUw+NB#&L-iS96)=&`CJ79v3}J*I!NMEBL6}W6;n*>$?%}FO zHZEY3We`-sEQ#(_sGB20Op`)k=w3uYv~^HGljjf)7ga3J1fmt6-$)jyFT^~KL;_I; zv}He?x7zIiQ+=zzrEBDfp*9kJyMxsZRR8?jpAukIR}c~8a{B%3+*y6@k1po9J^MPf zIKDj9=|hPHiM5hRK3v75h%(Pp4B&435**Y#Cwl@_VQ`Wb8Djo|;3(mOW`&Q{81Qa2 z6eVaMGU+Nnyr|dd7)~5=#7w=498&kCRpqSt>4KXSF{2Kx+X+`dyda0L!lM9P^tqua z>|hqJDy#i#Or`@M>M+C`xHXrA3%IQ3`2L_v*U~q`{i&~u@*kT(LBQqo% zH05D2Ob(<`iuBQPrwe3nqau7VMC@xzHr&MQF!)C*+KH-PGMimtPD8>u7pF(PNIdgwX-RfYIT7T(%6JGa~aMg zO_WNRx+nlN1eUqxoY|q4BT+@*otZ-njHC_mq$vRw>)go$nUCrL&+Jk8J~&Y?4F!@X*iO*jBDw!Gzl zt~h3e5Nn*bRdMS9&VyCUn|_>LeKi~kRs*bhn*nck%Kp62y>VIB78P7~%+50ND&v?R zS7-}UFML^T9e~Nkk}-)viq1n1S)^eSWb;5h8r5|^DfTfMGlHi`+ZQM(hVowgma4pX z0NRB=%;5G%HWxqfsWndvWzjEw!S`kifXtd0tUgoO2*_&>K%ovKmhtC)h8pdE_TBCO zV&6P^Uwr@P_s@N+Lu>1b77ye^$1<3nF4>VzTRp?aD%~W%y8oH16M~|_V6IPb%Yf=C z%tAqmlh^vZKp&&CweS?cl_Mvtu{9B5w#182ttwmjjfPkpv~gHE9=wLUW8~{DMij9p zfbRv@zOwHuL5c+z!~5Qx#^j+Y?Hj+buG5fW)5uP&HU_B-{K$N9+wFiJw`LPK2-@Ul zB5bS3c>I9NIXVbeBsFYTfi9gHuL>eK)0*v)Wf^d0S;^A~gitY|0V-e?{m$fc5R8E* zL_(f?(k1@Z=dbU8^_l$9zP;g_pN$Mli%e2VIWK4DtALR093Q&s{wy%cGyEzIeb6RM za-05Wb0h0aN7Kg(B$f_{<4y5}_lh(MO_I9b8<)%zBr2bDP(Qs1Zm!f`);IvxOXsktt;T|JkW-~_+8lZ9WNOpdnp9sNFep;*G$1_#Jmt8*jT19x zhAEb;FRv*!wP+rZ5xjIcH(KNk^$93esTTj*?pL7lnQ0ol3=LKN)-aa^|6LqIIdEr{ zktM2Nb|hg4mGxFGNizxz43n^iHlxwEKYx9!Vg25IrSRLI%eVdZ90V&9xG;zG%Xd~g zv(^q!Z2fJ(hXyz>5z#K+7v2r7EcH>InSn(U-ibc};>gBCa3?u=X!tHaiC_u!?3rK+ z{dNQg`qHxKUZroG%E&hY)nw@vXqH)!@s4!s+Ms~A7%bs59DMAoaY5Ied7ig39!0Sn z@n~Ww03x&>hj7y1^nmV_`dwnXRqY{_svh` zo1edNg`z)jP|Ut62OVzO#^LPN@k`bYOM?IpoMmK+~rv4fF4?9srp5|d(V%T zdZZ>Xrv)Di4qlp9Dy5^~2m+M?wP4-IggV<6&_Rb^#h{;OQ5YXdCo>_qR4(gqfYKb_ zH{(EVbdaJho-*5(&KX75%0MiG4G$wjTTvt0;v%|29VIG$wM#$)>Kk)9Og|}=!_H3~ zggoQ5R!%9p!7iRjr(Q`kFj?uhVh{hh1#YZ$%~DQmlrGry`NFyH-^MjPN!Tmzfb}oF zc?Ycf6~cdU2dr;>&i4}{a7|Ny-{*%CLq&`Ym0VzLKot6M-*+m)1yuZm7J>z(Zs(?UnLdUO=%V2seI8}BkNev&!xav5)9{a@vF*Nnq z(3$hf9`UQ4ZAhO>HG7%>nERP|Xumz@_vVyv|NNuxe=h8GE0aYwR2z9m>Lh#*CeR`} zOJA1rP;cQ4z|x(o;V&Ielf|@wbp`A=)OC(&=Fh|jVr7{1MOC~4V_ALO=T(J+DdzEQ zv(@m(u~^$%`)I5wRqIqMF%_(ePeh<;BTPji08x@6Z>o&FFk4Q#TBgYn6LKPF0RhZj zV!^qg$C6289YM)za4iBz+SuR-HgN-Fu*EhKOPM=Y@D{nX#m_6)o&Vyg!`4k0a&j}y$9e$0ApPDyc-j= z9stiN4I(7MD6P~ELB>kl(t*;HeLb{B+=un}?Us&8h{^5weHK zMQ59ZZ|x*O9!)Xa&2GqDe3K`H=212STZF8uHxdN!M?Qvop*1ru2cH;W4ICA+Byva> zg_ZTejoxYMKCw8foMf?<7XX&DLWI(Ruv3DjpFzOdKYwq(pRnziwZv4Yb-K3%y5a{x zQ=}{vJSq%Sajbxl5l^6PvbI07K@GG=#E4CPL2Km;^3_GpR+SkuS}4%Qbkp!=|({!(OE$_hY!bdc6H2nq)6-|1QQ zB9Ott)iexLuw}psY`^d}b>k?0TXhtgzAo#Nvaa`pRbx+Li|HO*>4iD3BF{h-jbop_-U6t8?>nCz8%aNZ^ZfmUsFQ|>9dLAQ z0W6mO=aQE}(uX=+cox>)f=}bl55Ef>b62K1#lHq4Zhd56V~4@mk{>}LLTS8h7VB_-76%YhNMoSV5HGOnFv9TVrJn7oF>+YKdh(o@7g%EwH8t8q%S`$W{Hm zPmPhh++tGOg^lL-*)C#8az_*{tz-Zd9@VST92KE_#owiaw?UD7%XyoOQ<-b2ytWC2@b(b@xUy}D>YKV`w! zyW&1EcYwn5_`1G{$mXM(JuYy)r{5yN0-Hdmn(@pBGBbXGv&sUrz!w9yx1E9R$=gZT zREQE8OYqM@g0r78#0W0*lVk_e$wMrYOOw2cwa7~<3QdbAy_~w&Aht5Yu)?ofPc!-8 ziyw-9_@Vq?|BK(3-~0Bb$29Tn3TDE-X#;Je@ORo^fr;~=W-wg&a>CI-z$tB`S{?W> zH|*ES8^J2+u2Ff;1KYymbdD~2I!=0aqxsw??>x4SRf(kPoa-BG2CGsDPUbWm5FI=N zfJd94NWZ6=B%-x3TaAhBG9)aSw_R?DE+AvxBbmH#LNV$!U25pq+`s|juv26}w&+Fe zp^qXcr$uJ}FZM>@i$L=~KEOdo)b|^pdpHP;-xKg;b*1uv)3l1|8c??6Z`p&EKI@Oy zq0Po3tuMsK{ByMa@Fus9p5%isd?>g5-_t%(xyc`W{^qU0YptbX&(>9Wy8@aYebVJS zTIgn*bxGiyd>&&y^z5~!ku@Zf|GSlJJ2{SL;vW({(KJDtOaYOI0Bd%30laj43XMY3 zkK$e|A-qI(0SqFtZmp0AXu4z!G9(q}Re}Nbi7ZbYEfS4Qq%fWt2b49zvg}QADdz9o z9_M}Qn7{T?VGaFA0ucTjV=6ga{Hcu-7czWA5Z5y;()xJPi*tD!mRt`AY1f45cMI2ehd>U8F|1J)g^ZchWab{qN>(x)l(9I~UoK^k8gP^C=stx8~gZO3b6OM~Vt ztsUwbS6a5)zm2T#tj}A@%E$CAc%N8fzu-9P&3$0Bh*_^HwoyYM$55ATmOQET_!)LS zDorOcY3drwfN6sXwwaj>WkyC#{VJKC^Pt7iyyY8CF7ckiq)Qe^pp(9sNEs|fY2QI9 zXMr!#Z=)^9qIqNSl9|S5UNy7=f`Q-js3I?WJlfLRwCgANK^T1f3cAn~3D9V~h?NJ5 z3Z6%~seEt%)(3aMx@C|+f7{&fyElC^cK=FTJQ1Te6WV@(^^lHd zJsfFSQjZEy;eo+>fOOW2cJN(0xl#<4Ern>LV|j2*QKhj_BOlsWp&nt6#=Vd?scF1K zbN=e?>=3m+^)ft9&I(ThEsk-er4caV0P?`dZu4U>Y6|X$88z0aOyOUB#-GSa(;erK zG;ARP#GJRJqb+X5hVE`_H8niWm z0S6Zv6p)Tc33v(T;LH?F$)G?Wt9eB}08VACYkUgb1bwjspW43;YnIIj2n`RG_H}?T zJnl1&xgdOOqd)lDjEZ8nRF9wYg7%PAPOg7An|B!6i zNQ(|i`iuaZK_>~Rm9_v-t1=Cv089XqMGr%-Uy50gf}XciH!72%1Si3<&@Wp0-1`0s z8k1500)V%5y@ID*Z=8%vK1x{uel38WS;w*o@Zdh^ZBPm zG`b{+SOEZmOvnS%;2gTa5^D!5P0P41pq)zKhc{s0AqW(Nb8YIWVRB_zL3k2HLg zz{oQ!pHZO>xYdP9IgSr8h@!CW26T@nvLeNtCWtI^4}pLq!&I1-b<{8N)Td=u0IW25 z6!+{8MR%DX4=6IADrT$vyckVxMh&-+0al%+V;d{7G$(MvVaf8)d0QdVRKrKzJ^I!0s!JnOmH?zarE`7(NkR|l;?2R_iO`hS5_y~WB;gQXP;Lc~5uq#) z+Zypv5`hBN{EP%IbnyVT#dgJBOTms9#9#n8)<2%iHAM6j2Ui zNGnb9(-z7K=QbKH1Z>#_QhsOyShhSR!DL}x6$xj@O{ca5-zp1Ap&aC_$|BApp4Tt( z$DT2&&%lIn7qWo$QV&%8FxIH28HgVEkSqb+steOYOsEfNbbmZDtPkhEJ8&IWK4jvE~e4YXz`02s{zm3T(B`YaG_l8)>Q z91s*)XHzRmobqwo6&uAYgn^aLH!_FM9?OaMDWs13B}xVs($DW(^b5OR0-M#233>+4 zWJ=9Bxa6!cY88(e4hJ-7ZfEqY{Bop&G@ULvoyj4x>_alP`S_Sr(dW2=$8u(cc(Erk!$1tFmNtA!D||^=6{4 z55Ulw>WQ4*Cq&=3t`Hm)-9U!`B(O<0qX>y6T?A|bY6E;IgQI{I5$^w$_c@WBj?nzpbHan05mH;41C&R02(s09Gb3J z0W6fsWtF^uwOKsMqZsa zms1#cC z8alfa3P5X8xBY}XZnM%h&od|vvyCAro<uiG|1sTDz)$Ym_Mw5pfA_W(SvA^wv^AWHR5-dS3G+W^aK`B;H>it|1<1) zAv%inC2d}9W36#Q!T{QZPXTQ!e-n>v+En9c9sCBpB0m7LS7oovuj939^OB^W^qXbT zB`p4=k{+~}Io4Z4a)hbtR$3(k0~k4k(y}=l=M*(bjs&-(BUGEVpz}!#pgy?WV1uY` zW6unnfWw*iEkEkWGY0^-MmU$z?Mh)ca)h)2266Ns$dWb|mSrATwptjY6`pe%2Ta^voP`~5L^Z(uJ?!4CWi zkS7aE?JFziPdu~OIg^L3F7+MMFiG&M_oOa+IR$qGXpt=WR3K#v4p1r$1WAIk5FNII z!Vz8CM*aB^$u(1-JT$J9&j%W+X69v1L`b}(Vddcb35OA(4VAF7E|rQs)XpUTAg~p^ z3%P+NG|k-qS3Awjx(@N+#;yrk%y7yT$U$zC(lcPF^s=CGCTUNBX*;c5h^#Xln+{j9 zlYA=?1~RDvKNcy0f9j15j~2H*v$_M;haZe=s{~@oFJh+fJ+(is>KcOlN<+Y36-Idq zRG5;xCF7;Ml2gw-hI)?vJi8i;(y~Kpb6zNzV==?9erNB_(a}dMZ;`IQYP+?bHpgI= zQ;y4GD|vW+EfvUE2D269Xk)C-$LZ*77n=eFoueq%rf511(vM%geR6oR*u0p5dFQRUz?oUHN? z;yvvN3+nMsQM@29ZPtMY2Ob{p%85;hhCWkQ7n+!lozw2xc6_wZRidQy?M(L$Oluu$ zc=VvZQ1a&&%G`=w6sec{=a81K+jVV0KWF1Xn-^RR9__vIP6JG*v8Bc` zg<&vT%dwbz2dk%j(xgqu-5N%SPEMKl%^I99{KlJD*>l=bE4eXrlaG051R2#fNT)#3npp-q;X6o zckYukCw)@eBZxKYG@u%u*f)#rR|@xC?sd`K_2H{ug$LdK#Ubf^R0A1-*6l&BlZ(Nv z(HW*69_&6NaNe73QX!+FiPbgF!?oZkfQK-=l86jvHR2z~*e7@7THYMndrZSH}N>|nCPk+XvK zWJqfd;*KI~L`rENk(Rv?4kW%tQ?fY#Gf@r}fwogq$y;j*^X3qN$NW1M>y2*YwN4lG zDsXF&6V`=@oun3=p^XxoR5x2qU<@3&4=HsvLk*{#i%Evl53m|jL(fKBoXjXCvZetr zmJ9A6dd|{}@XN>`8Ep6#^EgJ+1GmiyEW$u|)Gk|i{KCgB4?Us7gWY|{)~yZbl^Gtq z+8IT0T3_^@7tZpEJ_d6z%!FaC`$+MyxX%*p0szY%$(E`X%{pAh#jjk|&4^!XGBwf$ z`1T;0`heq*UeV?-)l+1B-p~p==R-SBmBdLPllGA&1XM`ITbnE!Fdd0I6CJc*|BsKt zJXo%tJ^Y}6U$-FS&0}q*mm&|dJ;vx>IuP+hJia-5A{*KACE9EYUK@aLCgB2hz=6#9 z8`9nPitgJQZgWa_(~#cl*yvzV7p2}NQ3S@6-DVxI(n-H9L1lRH#xh{}@w5PgLXXg< zy;3E3D9fXR3|gW{e+2*wL%IN&bsT@S^l!fL7+4wc8}&5mhwqkHLV2e0;viOiPfE*Z zSAd6M2QCzq-!*v{d>UWI(NBf=tza%Bdz_PLOV672DP&%P1*dM(4~0O=0b*ptBDh2l^-uz<_NkVYuwjJp3^4RDU-!gKzA?4b z^woHqPgf4h zi>-^Taun5~2Gga19>B-pYms68HsBdwaxs*_%Xw�mKhFcuFG+^tTd;m|;g|D6oS{ zD2KquH4tT2p`t^LPuDK?fRTo`Wn7WNM%LE)nz2!uN);DY=NkaDojP*}E-6_~4Um6- zRa4l97pt6QrQJqWBshKTHULX*LhBXr95hSd!*97R0lIfK)a--f8?C+Mx>kTy93TGI zZTwvawfGvkCBM9wv2LkIc@I6dh2jz?qNs~31CjsHVLWikv!H~)Kl7moJxhQ%*ct;5 zW@8Tkz?+U+&y@L>bxiVI?PSxuFLSv{A{mf~Yg$0e;Cz*%f-36jGAggyJq?>E+;D%g zh6A0OS1Y@P^#=>doin1-sK|0(byR1mYzACn98V2;ouw9y?v*)8_J{W+NYA6hXz9DwWqd-LqS*`GAa7N!*0X3!} ztJ6pi%O}17t%!m(G7I#@r1<0hv zt2}T1y8{5jUQHb*6pK)1<)_n-EuV#s;84l@y=5y#`VHFA6D0iZSEF;Ca7h0|w>v1L z=O}c_8^<1%W%oBwiY)}CM(VPh3C(j4Q7(3-ZER_>1V9NKZ`ZSIz+wr=3iKSbBU_uF zMNguTsbrBa2ZO2hLPNdY9Q6;t(m5q8_3?FO28OTe8U4$1F&GnsEQO#!R*GFXV;53j zN#s<(4=c~UpiFs8DSqeGs)0*Qd#^|vL&1iTK-8cX4m40ZzhZ_aLIEleuy~C1;Gnhw zWEALcz6N8~$ygiNDe+UiN>RmiMh!-FB1 z+lMuT0stU%nm5-a;^(4x27!-SBFo+FNpT*UlAOwwvTfx3A_#_qwsGLZK z41TvOU**hmJa9vs+Bco8>Ujj42Zg}uAs<;{zoX?c)i#E2O}xPJ-^7Uk@IZ18`Iy{OTC%0~Pn1i>!@} z23^Vm>l%`rire!Ey6?irPH5NzIU4LR;lu;hBgHc~o3|2)vsEqY1G7PrEkTA1=XEtS zuH@CA1Qsa^@WGu6^#Rm3E68R#mqpsz?MJZ%3_7|NvcbBLUyW4cPpY`0i;ixieEay& zxm}f82rBc#(Q3avXP0un0U8k!Wu|PErv!D4bn&*zn@_wn83SjRK(60ScDK*=!a1K?t30(t!8p0f(d)?^w=3R@G~RZvu>Dmm-d zX}THnD-f>4N6z`taRZ$Yc5@;PdE4qiHu4a?nz8zz^wXnu6y1uWRoI^{d{c_a-U z_s8FVegF4L{=%R8iTR$D3DbtQWdd&R)sjBiOG#uLIJBvkws$>MQs>d&7z%UVVRGVPRW&HLxl8Y4Dv)_st14N{* zbxc9|2^Dw|z%Sl_v)2sAQ1|TZ&9WWx9X!)YHf^1&hDwihwllkmh!VJ9Pr$%V0gg)| z2wWnlg$R0e4Q3p~tkgu?tRN_*?`vI_Ey2=(H3v{!12)p9lS#o=+?M6jDg~^&k2SE- zkz_-^Hcfb@4Y%cKYz0cUlyL)Z?>3y`R%sxKj0(Sgc2Z6 zUZiaLm2&enoQrOUEQI?eO}5qJPOpqkm^js#8R{gV7@uInu~qp%@3Lk;e;YYX%ovP4 zaCGM+2<~t0w<1!3sAed9ygH8|B+esNU@lCtl(TbuYt!_(0war$6}nn{KCdbo$XWI6 z`JB;4e_ z6<{9Gm?a*QLhUVdC|V`SMX_Yz!4{bj0K{It^Vw_p!|&d+t8aZKzk3I)S8uup`G_EV zf>aQ2`H7MvNH~tA2H7wECogzRM>8HHDM;Zl$aoi79V^2ecI=adZ6l68kaJAnh_;3l zg!pN-bFE`I^$@{6$NEu^Y?FQ)w{x4qe zuFRX1U1*;5j30Rp99BQ6IntxTmhaB-k@(Q(fQlh^EfZ|#_OD|fSma;En6nCz2(`k4 zv>US^+yzo9I*J^QHpV3Vkmt{NyRzKI#CFY!19FNx)ew<>$T%tub|{~sBc zL9j(y4|pZgz>QB4D+plF2|~#D6*cXlNr-3eInxl*z=JT|Hw=gwq(!6xsH~(lvUu$8 zYgT`F&#eCN+n*ho*1o27Zg|!%r@v8|nMhw7}xhKTfy9MhTr=kWs6~##ZPI8Jd6tpCMp3&(Nmi zc1!LvQ&d=3UDprS1$zm$E|Dz*R~>v%_qs0W#}LpT0Rf(;9R#{YosgVsdjuWUZLRAk zV;$9GS;J)86>-AegU}pYj-HBb6wZaF5|FY~wT@1SX8?=Dj_jqBND&4V3JNri@R~xn zLC{K26rhn@S)L8+MWqrM<ANKfGTh{O0#x#kn~<5w?mgA?!Re7zfYJ;V_WI zK?~a0X3I1%xN8C*dBi+fcjmhbjYoL( z4a}a;&%*8m;SKo|FZG}JdbsGvU}cg|wa}9%dZhnwaI;^A93p}jHinKGU`w|0z!V`H z;DrvCaVsg!uum|6`XZRgkroX=8-9WQ4t*4XAO&{NtUe^dKA3~5vVByfz3}BFvdpB7 z`GJF^3Hz&WCKa*P*YQfG!O1qu5(X~BoKO_x9UEKhSOX)a5CqW4QXgjk+AY$gu?%*v zMi?2WU3%44hR}&f2LZzbUw(;zh+?7Sd)fD0?SS=1M~1Zn*5~0!)LuK8d@*s#=6b;> zLZuE-;Kb;R6TwC%V8SD~SlRAiQg2w!XnhbsLwtCzCEvFxC-vy~Jhm0uekHQ@Q4VCj zHq~WdYcU8QlB2|9)R$i88Q05pk@QN*3{hdCZ^j(jfD#ULM?96@hxCMwFmMnkmOhSq zC;>n#7^c`DAQIG*b8xujFT!z#1|^cV#GsU_R(M(jI?|V751rvWU+QsKdp=Po2Utc; zS{xwO+DK!-2rm6wjwH1Y4SN89N`V}Y3S;a%99yz}H5MKmfHl^zcCh-!_goiReTM>@Vum~dNrAGq;z!KxBmDx$eyZABMYDRFGM_4{!E7&jy z3DJFXhTt}2m{*WeH-%Lq2+WjmP6IcgECjPTyr*)}e;#)+oN`i&R$&-e` zv{KZzle%Z$D+qKn;Mg)qcXdPe?j#7TCwxl$Ec11d^cxZObp%H(gw6oG#MXKoWSB&r zlG8Y_b?9gvNF~q_FGF89(#O}O2AI)N=|>4^ZxwRrI6fQvv1lwucJ<9;TKMVxvjA4f zfQYY1?hmc!D>x|`BnE9=QCd!Y2{Vdg3T4GN=2nVDNcath>pG%@l~wu-)%cUX8#xgJ zDGNVrcBZ6JJ9S-2jM~{SMYXk_6}e-7mo++e^c$bcGBbfWiefe>tLohB%minp%C&&U z_~U-Dlv+O!Sx&$WP8+zetuD35h+`bOVfik__r|#b)EGxnT>8WYcwoHL$(WNPGy9q zEHSM{otl6?otjP_+W7e*Lswj$rKRvdgY?R=%)AU zZ(^p4zE{-@nn)p&2~eYv@1|J0BAB2Bd9fPljEzt>`4~jUk_^>FGoNC{ z3a?}rISNglA&Wsfr-eLBTHfCN5qRk{=W)@mqen9C9|&F`=4n4$2RemzX(MO#wYP!u zU!$bRXYw#P#4M}QBK_>ty;?gw$FFNs>sDSuS*K#{<5nWYzVqrqH95$J;rtC2dN}Sl3R^w^GzkTh6b)?L@z2 zEzo*vq~{7C(i}R?PW$&!U$cad>-cf&D!e7HgO)zNfOFRF%(pRCYTXkt-?`p%b>dv; zHWqGu5#P@~aHvTr`*h{1srW{t{-f@eHYVMFzWdqhJ79e#-}?Rltg}V;AJjnaVqp0J z+CS`+6JV&R{{|1zr^Lp}kl<5b!wrMH(RTpbtS$o@oKC*T*EvgEQ9zl*tW1}Jz>t}y zp%y%qhGFnEW2kaj2hReG%hni{FU&B%`};GKL4utM%Qfs3JHJx5`-$6)bAWg0?>}kq zzDu2>p8cTS{FvW!RG&*C9?^MQiRp1p`#vyAkI^^k7m#jQgPVWGbW`KFVSDRo)$+YN zVEya4rD6a4-aX@bk);OZ53%HiR5_+v5!5AHn_>tGgx!W$BE6ryUvLVAIn3sx(7iKp zYsy~y%43xwe#7Dwg713qYWRxIdvarMm@r5>oY}^JDWF3=cIW^%sSmj&0I4)tbg{6} z)O9l2PTIa}SrUN%29<6#65UT^XT z-yFN#_o?ANMWh7JgfRApRWJZ37z%G(RHnAi$W&?4i2tCT^A*U9axEqW5Og%DS7#+;igPMFEe_a+!9aen^0wghHvai8l7QnY;v=z#SHcfi67t0R?Q+XFzy8Y^g(eSVg36+s>i zlfYw4SRLS?u@+)@?nJ#s{xPjH!Rbz9Bq77RQ5r^%ffH5?IXH~zVP0YNtD3P-Ps^3a z%}&AF0rsX6G8}a`xL*yXo+Gewe8_*zwzigXXx7fOmKd01q7;Y^IKrA=ska z8#>z>I)HjCynSe*pH`pfvahoMeKgq7GJ>oD-+|;AJ&_eCt4#I`om$!fzt%Z9)(Or$ z$yj3wiJSgLhsQ!$1T9WAAZAJw1J~(*`x6`f^_&jw|NMSJkp~^!Y3a@-tKmf$U~IJk zfiSk$(jE^gd`2>XoudsC=Z|tIJ4OexD3^h-#~O~5tHTa*E9>T=f)=!pJ_Xu5ncp$c zm2a$uc5e!RzLR;16QxVgy66_3H<9$d$G4ACcyGZ47#MT_@c!unE;WiGP=9 zA82zY{;X=&?11-6=JR}Ymbj1ZUS7YpW5NAje(O{DH{W?hfORV9iNemvJB_TVef?_C z))=xn{Bf+bC*!KL0BFTwyH1KW2#7$tIyHioNCsZkPeagi<<;*4^qZmK{zEXlLH#jp zQ(9xn%%r^3!xA{-SzD6FqigUgXne0wruh<-pp6DcS$WDg$fm9$;ImrqL{PBz1ZGKl z;O%mG?;h%;GM?;#^}rRI;9UaO*nc<}!G{X1&Of{37)NJ=q;z%i5Cd~LzksgSmHzng zp$+hH*ZyGf9|Xq1r?DZ-&6y4vj}kHLd}T&9GOQi2{@`2VO5vVmwdDjDn4t7%-gQQ8 zua9}sd6V|R8AjITcHPnsf|4}n=@ZUbm5Bn_gUW&_W_{a+k9Zl3)6pE{2IGUuhPUnr z_rXl9j{SOb1(t7y#$(xzcDjf061?ahT6p&)wlFZZ6?a}xjsI%j=D zcz`QZ*8*lP3_v3XxikR>^vU0}0V(u}4$Nc`W#!k^t-fVV-4ZwC+x}T;TMyRAf@sv^ zKcx6Cel!>Hp+Y{nU^tQ$DPG^b;alH(CI9BTV@kMx-$Bd`p?V_RiBW0?wn5*4fylWL zx>7&|L1CfQ)TdJA(B}A=JRJ~A!`t|oSpGtan%mS*V9_0|HW+`%BGe^ zhTMOqcxcVAQ4V-RcQ%r@0+nT;6gda2LNCao|0>g#jueZ{{`N=*EixPYE^Qydye7(>`zm5C460Sf{eP@X$@b{YO*0O*XcY}9d{8lNk3cRXp@*d(ph|Gge>MyaH zt^V)-#UIG44V)X4uoI!J9y{q=udB(wrvV*XeGcg_*<$0Xl~4RG@~oq)N)xWFPSNDV zQSC%NDfN#rq-#GFsJDn%143g%XfED&CDzkO{#^UYhsyQNiZRgnMaWD|E1_OClrgg{ z3*9=M;sQtITeo18R;R%q=|)ByZqeufFJ-MY`jem`W{JqWbOni~~#BVzXiZjMPta47fO)le@J$p&0WA?6f^z?k^ zMDhdL$q1+{I2)c62!zfDxJnj`x6QG9)-$C~~4G|?Qrfi5D;>WEFm#7Baf zb%sQ=p=h08ML-PaT^c*F7w8b{eIU+rW6}>+I-izjnHBTCrC@#hh^V}6c`5Nfz-##9 zQw&;1=KA)^obq}`NxYflZA$KH(v#!2c`2>(1TW8Pj$79o99 zp|DH(ByBd73-l6mO4_7}i#blnEOd){2%QS+RW!e4x%>V&8wKp-yNhXj3e#C-nb-GY z0;S0C#&?}G*tg*(?&rv|29ZJeP-%d`F3#Ne-Kqh=4AohgK zf^U(6Se!)5v`peEBPn#y#W;o=$qxnacAYc%nP*H@w@v8Q9~FMLWDpQavWgn*I7`n( zvjnc8vyohQ4=?ufiqo@S_v1GpD|JwdCXE_v|39wJ-}(McF4bojTS?zX=&z6B2KhWH zKic>of9}(I+aJRElzle5tT)p7+107XRu&W9{O8K%LGE%K)CiNtG(rl+L8dtAqk}9`sY2OiI=eBWu7^ z?U>+gPN1P&Z}OF8o9yRN%>) zaw3D3EG16bxRu6fgR!isBg9u0;KO5jqE{zt4}|_!qIrpB<42V^i0LF?-asZ`X@bV6 zqiJ``9sH_AGV?&dLzxA7#uROh<*xS!8cp4x4>fs(K9eABqz-vS=*Dl%4iDAE`*`ZD zBDisuu^T`ZGF&>>U4)qHl8*xTxi~<+H8Aa@9rEjFp%jnLpT}yfx9T%j-sSzrKh)E> z7xK8B$YL1xh(0xP8|){=!NG9j3MfMLih_8|R2SZFRhmwzylvK7&Y#HoT(P%3z5wK? zw9TuJN0)4yc;>T-QP-G%7X}Fg4Z+{|TrI(!{U=km5r z3BZMZrd0-Heo}YQzbewmM8WCGP9z@yYY`qD*|#d_SJkIZe5?Wn9ej>YbC^a!h{@Dj zUUdA&g{FA{>B%3CABx3i>E*L?kIL?>XI0Nepb9J?^vJW7I?x{QmNxM^$;ckaCUt|% zTk?9gEZ~)aXY)^8o8DXwn-Hf;PoTg>YJaxX$i|eme0b)86ORp!OEWb|TEk(in8v|$ z$dUY{@L}+SbCBT;+UuLLy?(S0zMwzK?%62Di%+3v`@wfUc>{F{Niaa3DQ`R26+eCi zW)^?Et~^V-^KFGKttyHKI7lzI2=K74Xp5#e1P;z$1nwFDyVpx1+oXp&j=)JoGpjcCM`{nfHvmaI=K**V z-hP2VWI;y)1~=Ffhka@xH=Y*|PEP!;1SZBv@wc#0v75G;*t_|ZRshm@tO9|Y`|?YS z|9BMAampVleJT_@nnbu}mjO$W_bf}UOAVbNJa}qdSEiGT9-lJLSHMc6)Z_CI{vI_X zFQ#h@hxr0kUG!Edk91Lm`_i7z0N=!Gvh(U=uofZNqGFXgZeaX1iFai9vy9YQF>qLI?z~thL7Yh2w8)!Bb6{9#apWpK>+Zo zuKqPawA96HtvZwlWi*RJ12}ar)AnFKGLz5;+V~*^ly(T8HU~Rwn^52|hz{ynbc>gS zSOpZO9T<&$D~}7da|P|RQMK{}F3W4D4b07p5VgIM-{p^!!B%R(LY4=?kUoR9)e(87UQ%I3q2Kv0Ro|_JCTO!E((K_vA#vc=_R0_n^YOTcXLm}sw)3*0QD=6fH>Tu5-5LqJvo zpMySX@m0z>(%EH8K0a+6=SooF$WS{&@;a<^zK5fb839W$!N7(94Z%%$tq5ht@PRft z8(=w%-Mj}Gkl*M;9($?rKUm(sz&@~a6zo(K$na|cgmC;~q`1XW(JJA5EYYOHTfk2o zcjaf*a5Q8gkJ1K?ks-xc{>3XgJ>h$y&Al%m(_oyAoy~EBsm%_E0CaQJPQs$NUBdgf zg)TuO;2IF^ShvOF0g$Q`S;?&D$i8Jv589#(&z;NVeYh3MvOd;B-Vx8$2OQAih)Mbe z2Bt_Iuv%U5d$@WHI9;0+_lvlj->tT#`o_L^=I20~s?Ex)jV~) z=Bik$1U^eyh?BNjj+gI?QQev9@S)&nj@lNZZEUOzFGRk2!n@F~Z5N%<;I)l34ko?L z2tZSx<=h6rXSOts3`|m7I)^RH%7|Z7Dm3Crry>EI*oK-RSp%#`9#YKR@ka!y3nOL? zC=AA)VJXnI!kYrDlTiSVL@1ed{K^XwCBUe3ancy~z z;i?bPH}Becly!zx^vWkY2;i;A$S>QQFZ;JnXN&_p+p&{Yjn&2urhM# z_uz#TW}GC{KufQ%(XT2m^XZOjBSUS80Z8CRHGPbRpf!{)Ii%c6IF9c%#oB-Q zYtG`l%!P7U3SYh9pv~?k9X zRhLWIP)qDIcR{X$dI>q9AIbI%ylZQAbPvEihGJGPxp+@}ni$@*q}v2L-{*8w$vsrl z`K1JsARkYBX62ZPnS+vK7KJp+@k5>stgJ$#ZzLoWpb0ywb4Z?dT4apkK#`$L?>2aP ztxES24`?UOAnhdJZ$^G8B5=O;DaTdyk9vIkLVsZY7x;TVm==u|84#QVVmQyf%=q`g z&~5k>*LKULHZ;{r`m7_n?`Pg9-t#a;AhAuME4+U>}0||=Qc;aI$t$si^Zk(t+l@@uyG$} z3HTQ&GPD0Bjk8X#vk?)FiPiswWa=RACB}alTIO*fEHs_c(S*8v8nDu_w>-goTU`L(Xs$8(UC`EgExrkeAZBsh@tWd(a% z!p|hvo;=XuoJe^xX`hFTkrHKax+<9SN}=sKBoNM{Q>Lxss|l#)cJbfp7kq?mw&;$w znga+fE)C;lU6bOgSh1Gc$BzPA#H1Ulw6s~{skZYhSz3A`k7MEG#(&->H`ea`X71vM zXC0xfK#8J{+xQwwhrYvcOmOG?ek#W$?-T|D=H19}+E3cZ>cJo&tCdj}hKCuT=qN8E#;}W`ZnOTqWyWE6bjcAtdONdzEW45%# zX=j|f^RK(#waBy)dKu|Sd5(eZ$hgr3*6x#!fPLdpuHOIEXICH2QhcHMxjBkFimZ}9Jml#x##huHCoIy1m!lHUu_iJ&2AL0@a#ew zyF~yVhrkkx*rK`SWEc`dlfGjBESQ~3x+hbJ{?C{h$2eNdR^05v`#xE+d ziOCiN590&0oHF@+pSa<;^2-=;(N-VDTh^9ok_h#^!Eez#F9E9PGimWNUpy<35i9Zn z&=Zb1E-xeg5B)VRh8!7~GI3dm$wba@CQ{EC&CmowRlx`tGq^I9aN^SktdDe%MjS__ zMHe8MF&vJD1fq=_-AE;|qN#y?mP$t3^}b6fcI7KTDytlRCT^g1J>3Kbs|)^T63TV0 zq=(aIUu+l1U<{0EB5igM&SU&Zx`I6{kugIK?2vEko-!CrD5zMi z{#KR)^vY?t=H5Ha`hFvO(&he|tjDJ^07%JzINOlocSgP+{;oN^q!}UdAjp%GF1{IY zsJUi|fPkrRg@KnA|JnC@;{qm~m$d*u3^5+DOWj)UY0$13TE{6`*5D74dQdbsad_>G{bLejMfZnocjj+oCtw zWzu$e75zs*N6c;o0&M=U6qTPxhw_0BX7H74Ju)AWg2cuDlz0lFrpu%NalfU2WT zkmXGzOAU;(xR)OPquFi$er*4GawCLF=!H!HxNt@pi;^>SZNty86A>hWUMhzC@@sWj z;d5G!*Ab!UL9$M8kpfzIY#7tf1|q`lpALf~Jfs+GSzeF! z|8MSEVlAnv=-T(u82qH0#282KwZ=r_puxE`Of*g!VJx7GX%d;L2_NH}5GP6)2u=(G z32`8wgvJr#1e_2P6JP7dPr~b9VnXw3TXpN4z1QC7)V=pLcH2cRuj+jEf3Neadpm`2 znw`xpcxE5`h8|#4u#x~!Zjco7+@HV*H5XYHA(?ahz~d5$Cz-UZ51xI? z{37eo_&HP2@AR27xN>yV0zr=$p<{UNwb5SxhIm)tMiwopP$PJeRO`$@Unm1ZU{U}r z_02qhI3lt9+)T5Mt!{P3!hu(%8p;F5fF;T>z5gWzpu~XzYG%~a^!CXFDwUNR3H#6{lnul(}TVzA|>G=L+fH^+vMU0p6f!?LIe z%XNRn{6*{XiiR0H`U{C}sB2=k{I5G2unh!ZY9bway@9YMxGv;UbYi!ES8nFX`rg3& zKYjXiDKb5erX}PWz$PwJ`I)iNl`B`Gg2nlgMxO>m$|x!s!K*`9sNzT)brs2}a}bM0 zXE(>cGHyR94Mzgz+fJex<*3bRA|K%z@RAjtm*t<9&?*HGtz*b^w8Psq8k;z*7M8SGz}~ zfrf!(7*sr{c(PIHS&KZoY7#cY|@ z`!;aRV}Km4#{a*wcI#@c`1<*~oQW}zl$f)i%7y};bSVkW3idY*C5@7r0H?~(+rvOg1-i6&(_k?~S=gRM z{~4HSku-J#&D@ph7^H5-{J-n``MK>3y5mtZ-dT-%CYLHgP8}}Xd%=jg%0kJe#N363 zQ9wjcGb1N!a(JatP}v-b>QIn5YD1wir|00L=wE`EHl&9FXp)QM;5ublLN_l9dUhld zBw57T1u*dV41iMK7pn=U=`;69vjzJQU8YfZ_{<>DvUWa$Fc3&Q2IV#yY&sY)MA=(8 zHGoR}#nN7TuU7+2B><{6Tfd=S!2_+_ZhH*?$b*f?jB@aXIPJZNA z;(^+1VELlOw;oS6*Ab6@P5ffs-hBCg;lc%k_a;BmH&@vE@Y2}fXnLV_D%;;b7?JKS z5=)Y@OP6$7(DXEchToGxwJk%3YR2tlr)OD~o*fXIKxys;eFtc&%R02rA%KlX3lekU zIdJie#}Z56B&Xuw(gyAWz>J zn|Nm#dIs)2FO>n&200*?Xr#bI9X%1iC?u7}-l1Ip8E;r=)O{i6p|Nkd55QR4*^EV7 zo}GIvlp)mR{s{7i`YcP9T|3~H?UdVudkywRwNs%LCGYuFH`Fcl?+=*TjZ-Y#_u{=r zH-k~HZ!d1Op?#zC|B*)?!Sw#u`d3%S$<{avdujX}&5M|;|G5XN)f*h_U;Xk|aCrGJ z%}e^mZiQJY<0&n6=npW0R~hPkD_74jxj(u*=KAFkllv=pz7{26{i2>dxm!6--Lk@$ zK0h88>wtOBV0P#{^VgO?oeY_@e41mb^a2pz-}}nmm3-<;{;N+}{+NWbeb#!@0Y|s5 z_$IKEN;;7qEMH4cLP$(q2c}&L!(L?ISE6bqrFLHW{Q2)!aP_15s_dqC%C?~Ghv1er zb~cxzDf1XaETS}%lUM_-13Q+*1sn$ zr*6A6{yF4sKYRA);El*Sdcjnii8ID(`XH5qoY>a4G&OLVgUQKwU@1{&w?@;ktdi>a zt0684No-Wyx%tWg)wYum1`?Jo^Rt%G-e*X4Bfp(3(0yGVDtyLJbt#{L`w@MmO|}6n zkNewsk!1?4+I`-jFUwtUOsLD~-@#J&LE|UQ-uC;*6C5#LGBQ5)n@(jr~?BHmn-pUztkOR=NzhabwJNP zUqta)<}&c@WNiRFfp zK*!CNM-mBIx^uKtX>vmR4pju97zkFT)nMY(1f-8N{rO(N8~j;Ta+Y$L1U*2iig@zX zQ@iQ1Br;l{rH$INB_7m4MZN6+J_+4JFj z3F<&J*)Bmw5ZFPo=+2caKPbFF*LjsLnjB1J_=i{gF%+q3? zZ0>`kg!lyU>&0`PVfo6Ul>eXd|Ki1qc<`Zz$Oj_FDo;`?BKFaTZ;U1P)aRq4EBMwo zzkzq({bOQvg8Rm!?Nl~4^vCAQs(}_QDY9XEjmg7u7FcqQ4E zoZ8#N7eDuzQZy&r`d3+vPYr0Lor9RA z>!;4D247zBjH^neM0chkbkYf1vJJ$;E$DK<{tD@(Mw8_m@?Y|!9V!Ih%uCIIbTt`@ z?Grq!wYxn%$_k=qV&tWPn?gM+j9?Q5^EH`0Qk#F=Xl zMEgQ%ElGf6MMPM&?VcSdKod|d7?QOJSj550fJ1{(t(bsE8(~0lvLbGzh_Mc8W;*av z({&C&RG-!NZFt{F6L5g)SfY@?y$={5U?9qT_`Rs`GA);t1T;WvWaXu;rq@GK8Jk8C zK$Ydqx}ak_mp?AAha_77dqmlqi^n^Q1K|)zJ;mczwXLqo61ZAX9bhd@2t*`-2GbRm zjh##Ny>XiXunNI?UB~>NUZ#KL)z`5<-x^z|Vo8)sls<6CciTCjRTR_mk6 zwQ(j8d+Y5#jC*2_!T_f7)dbq4q$WRwG_Q5_>ji8qNp@TFsE8iHLG2-rE(~hkVP4{; zzaX^)zKk#dyo}sLaiHcm1143&$N*%{&it&T7dVNgh)F%*6MW*7s$22M9_tIpsYg81SrVPVx>Ui~1~R&6`XyparfBXkj0(w5uEXHe*!h zWqWi1eDjPGh%?F7UcA=_)nrGvi_g4Ex%$3OGgGU{4ly}62K||gRN_&csNWY*^VbfP z;#p$su~Aca^QA3wic#Qt=l{ivkK&cr#|hIH&YB+OdU9MkK822e*6?JUp_>@91^;>JyMxz7JwYK?ess>i*$H~MO&A)pHpbVD!_X%Egb~? z8h(hnN4fp08d=83tF_lH;~v=lXFuhNmiEpsM;yw)E=|2zMBFBG`Q|+qKMaYqs$SWT z@en0R!I9hLMRr`cM~7GMd9jZrq3%daxHD=Z|Mj0A;Ge^7&ujr_VeyZt%Zrl>EC(c@&A68tR1<(@3Y0bUEiDpVU75 zV4Lbf*H(7>z9R)-2+A!Y^b7jDYSX>dY6P%P!=uCB1#6jM(IzyZTMlw8%f4<>eG}1Y zhs5=J3*^eL&|C`s9o5_U>dJ?9@ac9$iN$jNw}1T`SL>HRrNG?@1e`&q=0F-iJ8>Td zyl(c>{jMWzc6{C!+Y}T%xrooT>b=}H*r>|_2E!DblfTVOLl9Gj; z--(fMaXU$NAs@HPztj6Q=6(3^#bY*Kdz`kSuATSCC*vZC`2^cHOwWYaD5C~_NHZ0@^F z|6V-<@=56h0Nuc^H>+eCxCUP{{iU+r{Ym>&nYZcEizAkQ*_H`#c8dSVGxzTg7WzcjY_&9u1X*D7<5*0$^8quj-S)m?yPGK z$a*aqxd%MEBnYrQIDl(&>ZYCC2)<`e*uiX_AIjtWBULA N002ovPDHLkV1m8WjmiK3 literal 30435 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∾p>!`zV-uA#p{G;YLiRxlu6l62pea-XybnVRG@Z^;kEmExdi)frJmS@uM8J=-4%=m58`$@m@AWXh zupyG$ZCWX}S2L7PSzAU2XyWf>&KZO7TBY{L*>2T|(7L+Wha3tbw!D`j6otL1=^kXK zw5?keb&+w;Tk1MSK0^4UgE|TBl2-VSU>QN-Yj5%uef3eS_g zWxj>*W(FanUYyaNMMB2pJAG#z*1GP}FHuYQFmlxNr9R?@pNul_GHeH$a4>~*3O|y% zbRP_hHP=nw@&4j^gECU3EU`fL>$Rt=i2*(1qefHmr9;&$-v3v6xP&N3Oaw`;^D10& zT_uL^!j@2XDZKO5U?%_$L&dz3MR%DzPUrjJ!(XM3pT0})z4r_B_~Y-<7tcSd_1W%< zxXw85oVoJRCFt36B34=CV5wxVT>tvW136o@#?FujxkyRyJpy(6UPO%hW+^HqmM>;-Gkk) zYl2!|7OL-s(S6u8%dXox+B2WJ3Waq^jAz*uwCe$xbzRY-rw+O}ZmnSt#9~ zCIdM{N*Q?%>NDhaBvf^>rIRH!pU@>3|a)lBVL?YCv z=CukQ5q38~FzU1iOzR563fe+1*{aXErH^DJ0mO*vfcM)wq=~)pCH&5BQ-9u+HDFXI7V52LPQ%JwL9Qx2{aAwd*v+Vli1n$-a=6Qda=)3Q}J5KAe za9t9kKQx*B$}6uBtYar!$3A6Fta*ZWPxLLvtu^c+61;tBG^FP>%dSgfbX||m9CV*a z&$8?Gj^|8+b+*xI?*J77uikdYT>vU`MhHs{5CEYf5YTlno56A`KSmBh9<5Hf76nq) z0E&1Gb%FJoei-D!^LP}n37|Yezz(Q)VBT~dYVNuOK2a~S;iJgyyf9?F8~83dYv)Sz z20Qj*46+gOj1!6`GXY<;I}l`RIrk}V2lRq@Oo69`q{Xk5EZZ^_z$;|Fj;X$kGk_85^;cK zmYqF@NHAwt`Q7!4$if%)n`|jO5j-DWz-loerwmpnOdJlCzEPW6CpJkl>jCzU_KJ_$ z`8l_#6PGjsc*ZCou)H1Q!wzJ&N|nTg;BnEjP~nL{bJ=I@i*!*1XmX{+HS;)kKWPn{ ze#NU0PH4dCxazOy5&}!~e?cuxTQ^f0jp@fjOCsrB6oVQGhEIqMSr&RUssZ?OS~*ef zbsTc~HLiTNex2tso_zZ3BYN-se?m`mFZB2SsR8tP{f>)J^XoDeSxhVEtv%z>J0k9B z9@G8SZ;;cVU3AX2l`Z%sbdSio11l`pr|r|n+n`M~MEH0_-1=4qI+xq;x-4<3#e*_| z@KP?nG<{MDp5w4J?C$8AWiLHL0lO`U8Nch%d(JV*@wQf8%SFKDBK zdg3|>K{*9%w%8cuarv7peNup6ez)|7n+)9b)Q<3(sRKLJ=pqS`h+r`2L*GNtL>Me3 zz(C2U5tjieX~Bz59Hf-8NT0Ht{n7{Q>be7$hfthx=Ky&u0|M3R`B?{n9I#RL+E}Nt zFw>SVb^cN-KcT^hlj^BR6b zly@qql=H!Mlw;FD*_|fIqdubhnGM_?)=S_w7uKw{krKEwMfulZf;74GuBbjamcLrwMz zG&kPsDcsdgLWDGZf@qX5vnqsfE8CW$XpB44AcA+5;u!*>`k+1K%_o?^a#1nRqUKAZ zU3>6)6Bh{7G|$5XLn0M}}ST^-1e++<-4o+8vimVh{_en7Aay8`W$6rc?c4V10aQ zhMit;NJAI^T)?*jgi{CbvaU0BvfO}^NF5ci{}2^FoRPOr2B1!9%YhjHN~9wq(ojZ? z#8m|e>_J`zRRuk%%WAmm6G5PVZy=I7h@{%kE&F+~VzXvX>OX;Q=c~(%b-1G$Uy zLMLF4Vux<0tIo0057%ryPKK}?+R5vc$q$^DTlzpbjTLs#Hpim81@47RGAa{vSC7>1 zk-;GMby&V)4`(G95NN<&bHkY{Wby!=8L^Z@3XL+rP>uJ=a0YzikeY$WB=L|Q?eq>F z^0JqMB>}xxQZNtaQwIy1kwq@d(z+HrIEf>+ENthA*5v}${34IHEmd0k;u8YcrjMxg zwamDNi@H)8?;)48%yenAX9B6T(@7>7hVN4ESUCMq3FvvcVPPVHNcN$s!jV9> zJJ!f!ccIF6z%xPrF=kK?p>Xf`Sevr%jnma*)8!HpqQ0VLQ_i$~$hgSR^t#pq$cB#|Ru+`t-4Occ9rn|pL+N9* zv5#OKE>bOLG4#nAPh+?=rp5>A+~o`3jLl;*v^X8`k-9L8=l|mNlOkV~l6u!E=z&g3 z;=b%5OUt2a*n@qd*eS;LVIRjEZ@jV8)SY6Kuy5;lg7txg^{^Ld&Mfq8r}FvdpVP%IF{ty>H(Hwx zc<_^U^$2_^PFCRTGWAR+U(rBtrPcI70?g7n@NB@CTATa6@BVcGP#ga{eQ_0YIl8WD zBdrebA-z6k_FLVZ4g2rxOAW9>TPQ2CEpuJQ1=&yZ_=Y`}vW<5<*X`W> zu!Ik(cRSFJ=)$(vh`<;q)W*nqZLM6sED!M^Eon5mdc=6?ZEFO#2bUHxme=Xkj6P-o z=UFDf#2N^Tr6fn)`MV6j5(H#7tU>!V@?(LGi3NB*Dk#>&mnv1DKY_)5{WEqN(A||Q zNETd*aPRt_LFUNf6;gsjtpNuZylpy3h2!S^a}3Xuk*S3G%Oo!BE

!{cOLr`y$!L z?WsO51a%FJuLM1QNpS9H)0Of}0J<1PF?vaa<0uM@C4 zDla$+tHNCoZ?oAIK2gVH zRP;C3b#{O9yJ&eAfvB@xKmk|VQfn*jJVqiG^}ju$lh{r%qRYQE%PzTGW$b*X`>-2e zCtn8cyTs_y7~Mh9vh3rqHSFXsBAxn?o6B+j|1H_O|Vt9DJd(qPr$H%7^WD5FWo9 z0H4D|)dk}ui>R)p=XN(`qx)!UV@srmGDUmb?jQgShPH)PTW^n96oQULv+j`iJDn#7 z6YO>w&|t780&unCV-l^w96MAFbRyJ1nl%2Hd;@im3y6mepR2Cn!p%UfLcy4zO_FcG~pA@$ZpbRs(G`k^hboEa}tk z=jX@gCqV!B>BBRN{tM&tgAadg>2E{`YNd!9eUy5ao9&<`y49ke+<6@!0?Nfx!AH0T zI&wSUyriSe9a*GiuX$;A?vZ{JBf~e>p|#<6N&NHJ(DU|V$(!_;SN$v6Gf+>L>}8~5+eba2IGbZZ$WO3_-2nxHI(yrxX4zxmyl+pVhwsC#U|s)oFG}4+ zo^BtrPuB=*<7P%bsUyG^{L0lAKnsmi+>mxY8>%&(5zL`XG4P%!rSQRr zzdo|(A8H2u$@l4tAN|lC=CrX$P;(S99@l9{lcirv)OSB&h#BEil5sg{l}?mxy6(Nd zF~J&bnA96%BG@lEeb(zy#sD%u;kaYrR^^D-l~(l zw5RdrYxX6?OIrbza_Ev61MOnF#E9*~-l7lj{rmTi4?p~HfOb9M`>^ZEk`t`+3EIO{ z{zaer{OOEYfE*8OEk`f1BycC3x#>cvTuBl8phOX6EPI%xM7C+U;0`sq){>JpNB z_wHTx9S|e{R3F%-KE!EbQGDOg>B2HxC*vzV9S|Wf1u#k*dU(!x<4xPVsmHteI{*kE z9-U-2QIU)9<+synpc&WpdpR#2?cpp>f4lyGE&|K)-DZneN8oSAC;mp;Q|Fbc4G8_m zY+Iuw&}=lQ>!1N^Yl3@Sr0@I1J3rFe4d%TFflblhod)PEWW-5{fEu$gfkD`B1LH6I z4lh|r`H#ggJ~(>W=sEbP`j0^fWJVt1g)s2) zmatQhthzI$5)?>&K_36^Ye&<*wD^a&b4cojB<*3SB6;*@CPq2qozXtkW<>2}K>mUp zuxHHhg4Y8k8tAh}wCiCgKg~A?WaQM3^u7|kvwNYRJvP6yA7UTC7w|Ak>uUlL2>gXz zo&?-(50cK$tb5S0aGZ8@ou-eJJ|d{2R!_h##gF{f%|YnnT>P~5foL0K+G(1KZiOQ5 zXr05(9|A8FI|eBKwcq%^>F597|DOKl|M6ds&tLwPzfF%G{o35s1$3RZN#7&XGYOS3 zWm67$3sQcEg?yaguyOin*439A1yzQ43VPC$cMJm|#vt}7loaH`0hS5wW{8zdsqnk^ zrviL9`E~h58JlEG`dMAuxbr&5XA&#A922N0B}KMzzs7!ZEd_MbM(ywjF$z3=`gDBi zk{Cbq#Yqa*&+K{-RLpC8v5zG&iiP#hv9UjNsyi*>%SSaC?&G_!XJ6sQJT8~SPyANqD(R9CN*p)fmi{01n{OCtN+O;ZDmtc^!gKdg^BA{ZZ%Z*p$Sqy0Q>*E@N zDga2uK$JjE+V!0w>jo2ct^#*r|N6w z9*C5Tdutr+i#o(>UKeeS@{QjZ`0yO+)yu#Hv-kGhA+0Uya#c3BcQ6EHv`GcZfRm$= zWhd}w)VbTf+iKB+2;3OvCD)6C!^~J%5R7z90uvA0xVBunm~BmQvgYmdpx85ZzQ$C` z;pD&vf;$ROL9jGLT->A*l4iunSBBRn$ws^2XLAIZVq?hd`&PZDY0kCJ#A<$ISK;)c{%B761%6PKVB+ zr+H`_bYMyyGmC;)esCOwE7oEw$&9M{S2Gi_>DlH zYLS4_*Q}Ie@5BSK4Ei;;Ir)M9PlP=u+n0!$RCYP?o+eZV9>Gv9MN_4(0xN_)cYjFb ziSmw8k-3Zvt-fdDDf>dX&)Dqp>1U7Wz4w2S9)0+m^x@-Qr_Y~18^Dfx7w{_OMvj;s z@?dB?d3I@_9LU0PQHqY8P-rFgvCnqdc;f7Ai+0mLiz~Vch^0GgT?RIEVSD^yG(%g4 zH^?SFNYaSA64Lq?6|7eDSLw;BzdM4M%ILbp&`3-IsmJ&Ip}WK&i~7K+?GhtXuPh&Z z^wG$$>-epp{mioKs*(fA;?nRF7msLX?=Bh%Z^h95meUQ6+_HD`O{cbYU0@CS`0YSl z)BE_QQ-5)iJ|U~KjEf9A?;4c#0Z_WAD^zXCJKi^S#&-x{9ZWCnA~;1>>6*V%=31;?mYpNxkENjbo$K^vXbMk-ycI8=36j8D;86 zo2>E0wXQ4FM{jqbL#w~Ur|TC1`p!0#75wwcuXg={4F(z^1c~M8OhRBeD@p{|U)5W;!5errYCt>J|KfoYlNi_pcxusNKJ(fKUiXR0NV37>VcBJejiNjA zvQT@Dh?3}Nf{F2I4H&pvcY9g+Uu5@gnzvMFsTABvajA}*vDuuch`Sdpj#7Me(}vqz zDyWqeskYw?w9`HulbC~Wj}X}qYx5~oDuoQ;1Mrql6IM_jAaIl!^7NUQL=#0qeBs}G zo$Z0mP=1T3D_CEngAFbelisC2OU5SQ#R~{{z?i0o0`x~8{sukz=r>NF{!5lMC-9kB z_h_4l;7H=Wk4uZ7D-c0$uf{`^m7$M92@5GRxnjQ5+>#-dkNF9^zH(8Mc)?U4#k26n zWA)|EF?LFVu~Z-?z@1yDl1p1aX1neaFviI(&?)?DyS5b$YEq1!)C0Bzei^=zi5`k} z%!X7GTrW8Mp;K1SuGr(uun(|)0(bF!*fqoM51rbUj)WO@d){-r?NoP((Q|$G#nD*e zo8D<|KXj^}x~9fnmpTr8=u{h1(5}qewvJ zziVTh&~@Y>2Sa<)$C_I6k7JZO0)=t?Db0Z(`bO*d-_z=I%#%{ARIlwkh zFIHEe4fKz`r+k;S_!;o)d0Jb+n7r?I;QS+51RczGb6kJf_7|wz>k`WPvjU z!0_zaoDv%#X@Q*rw3EeRGY%`rqjbUzz*V49z$j$4tmr%yV9|}2&o<Q;kk`4DktT2?>>E-DPZ@CMA}QrId0l7R`adjxB&<*1 z()0IWyVvX|Enr(J+N|w19ijIHSaT4@g;>S|JOBLo59#3#eu+Lj0lEV9XFq&g!WW2X z-+c)PTB8FhVL)AnH>iE4e@se*OIz)tqW$*~W+9=fz#58Lw5 zF@ZE}wH%ij_T5R%t}9^ob?kWfTTcCrR}z201nHRYeAp_M+Y(pvW$Gb z-d-+toS{`#pR5#c4CfL21(=id0m*XCWMKf-Ua#;3z*ewaN396@5&T(sw|@Xfs3WNB zR!^Fqr0F2aw#kAtKE>PXa(S5x8#n;dKrFv)0ot_Tp@3d$wodgiJ}m6?-FC%~HoTyJ z#rY1jyDu0Ys6xUvk@giYQVDF!_JI)x2@I-}XJcR17$ErRp$dB?_3tZ<{&3<#lc@J= ztQ`&KR%}G|eb((kR2!fume+6$FrZ<3a7`BD6M5bST?6#wprGs8%a^BXC$JzGJc5@T zg@bRzn>kRoxaYtZ!2?n3gp%@8Ioensz*!dSZ~?wC@Hv_wMypUiBD=+{-R$}aUCap* zB&U7}K!MjypJ_VBQ$U+thR}zEeai9;qm%P^sz4+;9vA#=zutlaUqP0Noj@+9Ys#@; zNQ)lDY_DY(pOPXzdTNn7oI}7KD(4aYT(=voKEJmz)Bb^D4tY|IvtakLDbxIB-IR!H z%h_4{XS-9zLOq5g_YfMqHr~?Y51pzIn&x-FK8T*T0Y3ly^Ep1M<(PBmatZuwK_|lHbiG1bQr?ZgAO+06%^5h3)V3RQ%KVZaOLacH0<@ z1r&pB7kSV(pp3V-fN7~&@!eZ(-F9X2(G}`?fVvBq1cgn-H{=jmcdkKr1~aP%1F#2k z1al0aAS0y(KpgM{13SfliTmn$c_PfUH1`tB!g&mfiiCjAPr-0mgGp4tHuEapEG;Yq zD*|9oV!%k?mO7vM5A>9jBx!PVL9lBdRHX5-tSzAg72cK?iJ~^dr`k=0-ahO|5_|~t z;hHu&EaNeC)@sO=jUGxC*+8X(lBF&C?SpULU=dn%l52jKW9Md6SOuGJWbwiRJ`_ul z8ck?WC?^$+ZTNNXd&{IJnK{BoeL_(IEx~gTg3J+g!Z--z{`!5z42Qgb-A_*2YR5YRgE-+s_Gww;pkwsn8jW`u0o=E{okHx(dW3 zjxag-C-gr_zZWU-jLI5up&CS_j1OMMz!il`qDu8?b~{Dj7O<~mA<7EbMZ65q>_)4*Y#W%om$?^MukOJWB2*HtPC+BL(j zNpPj*Z#g|b?|kQ&g+IDDr0r4dAi`gs3HVuYNseGAhh@`|9~vM$>j6aRqMAIp}j45R@a{gKM-wmY4LQTF~LT%z-*N zYQRgRJ>J#;Wp5X0S%JbstAn5&=_8Qywz34rttmSi1zv5*Q5eT-tDU$)4YNOJNI$*L8%sEtMWJgvx2O{oS7~YDz@_!{; zX7S{*4(basUP5I#QK<(Z47xIq0(l7rZs~G?9vvV=3Gmmo;Ttk$0AfHT_BqcAB4+&uv?#3+}S}<%{za z+TezVP51u&B245y=qug$aGceAn;KjtO6|%LN2u6UsIdfhade5x$4}p%S@aX2>z@sf z6catEZip|n#NS;aSsIrB{R>{DjUY^m7KqxohwVkep~bfiZ-jjscpTaEqsfZ~6Di3P zYzB~Ti4ufkQum*YpQN109NQvje^|8`pLy#oRJ>&qzLVXpj(2^a^EPE7DgvG7K6&yt zO1-aqkJcRrjZ$kKO_L5B)JDg{*#H69UcGwRo`N!$HLt|ux*FS`TuE={hO zd9+{AQdiHs1U^`et#?)<)22yeyMHZUCqQt{lLEIC574cm(9Aox`g@rf!_U z(Kdpw)w2N?yIKwq0s%7H%@!B#+W;YfO*3PPA>T8Md2Y$q3p4>bk*N_XyNm>@oIgOH z**fqb+2#(J2wvdYe*Lm$_ojW07_1IBpP6xxx0)M!6Zr#qem7(Q_r4C8<}K~DYjGnC zWC?A9*O?01L7jzKrPR$pT{Hga&yeM9NJMNGBx&@+c4Z{MaT}K{cv+AUQ9{uHr|cxF z{x>z|C*A{cAIs%7TTS!o8#BUC3Kwy1ex3aI)`=V(=j28<4{q}6pV5Rp7+r;dYEl5L zV4NrqYd69!f9Wst7@6~r&n)^6zDpl}^8R?kXyGZD3!%OJ*zv`Cpv5Vitw+3%QOP)R zeaEsqxKl_(J7bG%_#&$DcsV57yn{Z3{qaa@!9L^NRy%*F{Lqi?7`CLfn1Q@l{4P?s zjFPdGd6V%LkQw}Nlstgf5*IoA0z42@A?prA++ytrf;<20dIOou+AfgC<3l?PtdFny z;-oXfKGvx#Sl?~yc>n%=ePPmgagwcJA4F{*_VL}{QFH?O;{@vCp;P_c-gY`Rbh*N6 z!Qbwr0~32$(jemdLt6Siwsceml+Kx5XWzy~Ki_%h9o82o^$h!8{EL5ayg^F;FvEUk zqv9D(F%kK&eM&f$5)~~4{;4-!L|!;PN=XL1U*AUgdM1 zX#b$&u3qh!S6zpxPORvHQRl&Tn_+5<+>{|(24Hog&LtmkAf6`VKO=0bK-HFTKIdaq zztYYWn_lrniMI+E>8K6r)}9aTN&2kE2wbj{0M;oZuMQ}N^d9HGxiX<)5K>-FV# zbHqibc-VPH`_gLHrQML9atw#_Pg{ol^y9bBEV~v|;I0pyiY<-t%=%&FMBjF*fc*sS z`p~Io-8I90_&)4f_M|cDXqH_w?DoRZaZT~He*XW;u)B)jtxKb#gY{imE9Z;t#U46c z%6rCeer2pro7qKQ!mtC<-ZuAkAY<(_moXtgfG%}ANvwPI{VGcOxf+hL{%(zP=N;wa zD_x-MnDy<~;Pc9E)H2Y>k2nnjn=iCI@Qk{=eDJefC)$ROi_z%f_YMEpo$GB(=WMo@ z%_!6+dPFzFOg{I}Cv6DUZ}~R*MerD1i54mSQr)fnDxlABz8MGB?^a+5_?-`rsockx zbW5(>QqNR-R;*nu%@J&^N6sG+`RE~#QHyFNQwwY335BB~IqJtRN#nmrC$m=GeGrf{ zfpJ=AXPHhlWy7qrq+ldSYTK(It2k6K6Nf`v+uij zYMLsydrW<}F3@fSNo4mga8v;Q*@l+^|CH4LF3Zw2OfezC~&Bpbg8ROc6cF!bU3 zzd}#X?D@kpi|znD%T+!WH==~1IZ4g+`2=x%eiBS#;O-8$i8jvcu@gzX6CE0h*i(HX z)zj_{de)wNd~uaBcABE!)e*sIa7)-|fqQ?Q(7C@h1E0blVU>y-c)cGbh=AXK|)CZBwJ;0+zZ!D;O48mf)Z)s7FTn zeqC-XGkTHC8@k~$t({)K@UodyA>V?scG-c4?z413Z!>`u+5sD?3|L^wM!J(C;F{Nq z2tcxCSNdR8*brnK-$zM=W5s6UzAgaaYuY&mj;1>OpS$o>a0&B7o%<@a0j&_m<{e9O0-W^xA zap)>tF=98w7BPL6P*#_0Al=d*x*uBcyAltuKjabPuKyFuXmax6^~vp98_%{m8;71m zu*htjI|N1*NpXWGN}Hq}i2B&YwCX2#Djfs#NABiEi9xpN7I7$8x9qx;I0&rtxzCa0SQ`6OQ2rP-g^PXY1HS7V} z_1t-T;7%D-MnC)Pvpd}jThD**d*Ay6Y3Py|ebuYZVsxt;-NW6N#OR;3kFyNqVf(uS z-S*q%{BdXzRgi>RD^f2jvfcYU=px801>xETq+Trpq9)Hy2HNmhc-dX={I%bqW50%N zBEZ~<32if!!G4JHAkSC!8U*ZRPo*ts4+LvFR*o-xYS%u|#s*IN!nZn)ba5`e?*=bt_3bW!Xm=-6cj3fACZvQne)b0PB5c82)jW#Be^CCoY&ie0mZe=XGXa4BXk8oKWL~ z2M>l8buG^c#BaVh3BezJ@0m^jF9;k92sC~dAans#3EGWJYcJ>Yuj+2f`!%uZ{u$>S z`87a>gf27LAoGuVaN{kpgt4LD8(81A(K5q$&S@4hSQgGBSTD31&$7AJdF){%+6Vt# zL}}-C?R(wY_lXV-4ho>|NO%~Do`vuMHgml_W2fIR z`$o}DmaKbp=hy@r&c%aiLOA&PZWr_S5g-y|ttyC21N>~O*Xr&5dY30<>T0BbPA(YIZ+v10in6x?phB>yC%D8@6o=b#%Ec4 za9+warv)0I?U*a6OGYY!MZC9)2WU#r33micKEx+mdRs?>($eGh4gZ3EHtjG$^_}q$ z?;4QWBB7pTR{*})<$McrX2H9?1oVLHp_Hz_ZjTB-gnFWMotR3Y;k=b`a$|Fz51mE_ zv4>9Cmc!l%pxjS_YK~C?F~M3YBPsuL7CmHUkBX@e5cL#0Kdri=6kUTg(xDj z7}<9gseonvEBLRhCF-CiNka~xenfqW*NDsHNhIne#e*nl^)~Z7@+Smz3cv$b5{ba9 zJ0f5mzc%<2vp1HPl;6Ac9K<9BSqYgb+I2FiDoNT_E@S}S3Jo%TLB9he#=s-Z5-zgw zM@w zEUNf9_$ks6knh07Y2e?&RD5agFS9R+)zfP)o$0vpx!Kj|^M(#z5Qj;Ir&|0} ze75RY1@%WkXI^S@GF;uE2FZya4i=qOuaCdAjXSe(Ow2haJ;=xk&M;Oi(E~35%Tmr2 zy-DiR3-L-|rQdbiVt7;~qP}MTiqGAl*g+pU^)>9e1-YKKHSBu*PM5^!ac0-)t+(D9 zU|qB2x`th|>v~OhiP7x319#m?Q9pGJyFGL|aJ6rfuB%x%K`&k5lPzF}O!4;6v41qyKe1>FHW-EVuY>_yuK|b%`m$noAUm4PTX!#vPfOa?zBNcqdzqHOSV-Yo8Q}) zx_5o_Ed=VG%}08IX%i|PG5RRdzj16IOzpHbWw8qh=yGYG^XB}co{=8V;?5`NDEMlb z^FjY=wh49=w5fke699Q+SgsG9znq79eJy%iq6F35*SfDTl=16CwJ!u8BA4A~miOQZ z12zV*;n#%V;V1yXDS_-jCqY#iz^#kK8w{bX@o53s+e{i1;6Z>UwmZKQ5rP(OAVQ>o zD4-bE3tyCrDPAzf-kgY1?$B#{nQ+X!YajZ&d7=ex7

L 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⋘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 literal 0 HcmV?d00001 diff --git a/src/components/myAsset/NFT/Unstaking/UnstakingPreview.tsx b/src/components/myAsset/NFT/Unstaking/UnstakingPreview.tsx index 666f676b..039ce733 100644 --- a/src/components/myAsset/NFT/Unstaking/UnstakingPreview.tsx +++ b/src/components/myAsset/NFT/Unstaking/UnstakingPreview.tsx @@ -1,17 +1,17 @@ import { styled } from "styled-components"; import NftPreviewExpired from "@/assets/image/NftPreviewExpired.png"; -import { nftInfo } from "@/types/Nft"; +import { IUnstakingDetailData } from "@/hooks/api/unstaking/useUnstakingDetail"; -const UnstakingPreview = ({ nftDetail }: { nftDetail: nftInfo | undefined }) => { +const UnstakingPreview = ({ unstakingDetail }: { unstakingDetail?: IUnstakingDetailData }) => { return ( expired - NFT ID {String(nftDetail?.nftId).padStart(5, "0")} - Expired Date {nftDetail?.unstakableDate} + NFT ID {String(unstakingDetail?.nftId).padStart(5, "0")} + Expired Date {unstakingDetail?.unstakableDate} diff --git a/src/components/stake/NFTPreview/NftPreviewImage.tsx b/src/components/stake/NFTPreview/NftPreviewImage.tsx index 6bb9758d..3f9d9571 100644 --- a/src/components/stake/NFTPreview/NftPreviewImage.tsx +++ b/src/components/stake/NFTPreview/NftPreviewImage.tsx @@ -1,7 +1,7 @@ -import { css, styled } from "styled-components"; +import { styled } from "styled-components"; -import NFTPreview from "../../../assets/image/MainNftOngoing.png"; -import { lockUpDateChanger } from "../../../utils/dateChanger"; +import NFTPreview from "@/assets/image/NftPreviewOngoing.png"; +import { lockUpDateChanger } from "@/utils/dateChanger"; interface NftPreviewImageProps { lockup: number; @@ -14,10 +14,13 @@ const NftPreviewImage = (props: NftPreviewImageProps) => { - D-{lockup} + -

Expired Date

-

{lockUpDateChanger(lockup, "expired")}

+ D-{lockup} +
+

Expired Date

+

{lockUpDateChanger(lockup, "expired")}

+
@@ -42,24 +45,22 @@ const NFTPreviewImageBoxWrapper = styled.div` `; const NFTPreviewImageBox = styled.img` - width: 15rem; - height: 16rem; + width: 34rem; + height: 22rem; border-radius: 2rem; `; const NFTPreviewImageText = styled.span` - position: absolute; - top: 1.5rem; - left: 1.7rem; - color: #fff; - ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium}; + ${({ theme }) => theme.fonts.Nexton_Title_Medium}; + + margin-bottom: 0.5rem; `; const NFTPreviewTextBottomBox = styled.div` position: absolute; - bottom: 1.5rem; - left: 1.7rem; + bottom: 3rem; + left: 2.4rem; display: flex; flex-direction: column; justify-content: center; @@ -67,6 +68,10 @@ const NFTPreviewTextBottomBox = styled.div` p { color: #fff; - ${({ theme }) => theme.fonts.Telegram_Caption_2}; + font-family: Montserrat; + font-size: 12px; + font-style: normal; + font-weight: 500; + line-height: 22px; /* 183.333% */ } `; diff --git a/src/components/stake/Nominator/NominatorItem.tsx b/src/components/stake/Nominator/NominatorItem.tsx index 590fa236..93a4733c 100644 --- a/src/components/stake/Nominator/NominatorItem.tsx +++ b/src/components/stake/Nominator/NominatorItem.tsx @@ -95,12 +95,13 @@ const NominatorItem: React.FC = ({ - {totalStake && ( + {/* // todo: remove hardcoded labels, once API is ready */} + {/* {totalStake && ( TVL {totalStake.toLocaleString()} TON - )} + )} */} ); diff --git a/src/hooks/api/unstaking/useUnstakingDetail.ts b/src/hooks/api/unstaking/useUnstakingDetail.ts new file mode 100644 index 00000000..8c148004 --- /dev/null +++ b/src/hooks/api/unstaking/useUnstakingDetail.ts @@ -0,0 +1,18 @@ +import useSWR from "swr"; + +import { nextonFetcher } from "@/api/axios"; + +export interface IUnstakingDetailData { + nftId: number; + principal: number; + rewards: number; + availableIn: string; + unstakingPeriod: number; + unstakableDate: string; +} + +export function useUnstakingDetail(nftId: number | string) { + const swrKey = `/data/unstakingDetail/${nftId}`; + + return useSWR(swrKey, nextonFetcher); +} diff --git a/src/pages/MyAsset/NFTDetail/NFTDetail.styled.tsx b/src/pages/MyAsset/NFTDetail/NFTDetail.styled.tsx index 50aed20a..7a1649ad 100644 --- a/src/pages/MyAsset/NFTDetail/NFTDetail.styled.tsx +++ b/src/pages/MyAsset/NFTDetail/NFTDetail.styled.tsx @@ -29,8 +29,8 @@ export const NFTDetailCardImageBox = styled.div` span { position: absolute; - top: 50%; - left: 50%; + top: 15%; + left: 27.5%; transform: translate(-50%, -50%); color: #fff; ${({ theme }) => theme.fonts.Nexton_Title_Large}; diff --git a/src/pages/Unstaking/UnstakingNftDetail.tsx b/src/pages/Unstaking/UnstakingNftDetail.tsx index 2897c664..541c5982 100644 --- a/src/pages/Unstaking/UnstakingNftDetail.tsx +++ b/src/pages/Unstaking/UnstakingNftDetail.tsx @@ -10,12 +10,13 @@ import BasicModal from "@/components/common/Modal/BasicModal"; import TransactionConfirmModal from "@/components/common/Modal/TransactionConfirmModal"; import UnstakingPreview from "@/components/myAsset/NFT/Unstaking/UnstakingPreview"; import { ConfirmUnstakingModal } from "@/components/unstaking/ConfirmUnstakingModal"; +import { useUnstakingDetail } from "@/hooks/api/unstaking/useUnstakingDetail"; import { useNFTDetail } from "@/hooks/api/useNFTDetail"; import useTonConnect from "@/hooks/contract/useTonConnect"; import { Transfer } from "@/hooks/contract/wrappers/tact_FakeItem"; import { telegramAtom } from "@/lib/atom/telegram"; -import { UnstakingProps } from "@/types/staking"; import { isDevMode } from "@/utils/isDevMode"; +import { limitDecimals } from "@/utils/limitDecimals"; import { NFTDetailContentBox, @@ -37,7 +38,7 @@ const UnstakingNftDetail = () => { const { address } = useTonConnect(); // const { sendMessage } = Contract.useFakeItemContract(); const { id } = useParams(); - const { nftDetail, isLoading: isLoadingNftDetail } = useNFTDetail(Number(id)); + const { data: unstakingDetail, isLoading: isLoadingUnstakingDetail } = useUnstakingDetail(Number(id)); const location = useLocation(); const navigate = useNavigate(); const [isLoadingUnstake, setIsLoadingUnstake] = useState(false); @@ -110,7 +111,7 @@ const UnstakingNftDetail = () => { Unstaking NFT - + {/* */} @@ -118,25 +119,25 @@ const UnstakingNftDetail = () => { Principal - {nftDetail[0]?.principal} TON + {limitDecimals(unstakingDetail?.principal, 3)} TON Rewards - 0.000 TON + {limitDecimals(unstakingDetail?.rewards, 3)} TON Available in - {nftDetail[0]?.unstakableDate} + {unstakingDetail?.availableIn} Unstaking period - 14 days + {unstakingDetail?.unstakingPeriod} days Date of Unstaking - {nftDetail[0]?.unstakableDate} + {unstakingDetail?.unstakableDate} From 22e35cfba418ec53a87669a1f9257b2a7ce6a56b Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 9 Sep 2024 16:22:56 +1000 Subject: [PATCH 074/105] feat: unstaked list screen --- src/components/common/Router.tsx | 4 +- src/components/myAsset/NftHeader.tsx | 14 ++++-- ...ailHeader.tsx => UnstakedDetailHeader.tsx} | 46 ++++++------------- ...gDetailItem.tsx => UnstakedDetailItem.tsx} | 33 +++++-------- .../UnstakingDetail/UnstakedDetailList.tsx | 24 ++++++++++ .../UnstakingDetail/UnstakingDetailList.tsx | 26 ----------- src/pages/MyAsset/UnstakedList.tsx | 42 +++++++++++++++++ src/pages/MyAsset/UnstakingList.tsx | 5 +- 8 files changed, 104 insertions(+), 90 deletions(-) rename src/components/myAsset/Unstaking/UnstakingDetail/{UnstakingDetailHeader.tsx => UnstakedDetailHeader.tsx} (61%) rename src/components/myAsset/Unstaking/UnstakingDetail/{UnstakingDetailItem.tsx => UnstakedDetailItem.tsx} (72%) create mode 100644 src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList.tsx delete mode 100644 src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailList.tsx create mode 100644 src/pages/MyAsset/UnstakedList.tsx diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index 0c8a5ec8..68bc0fe2 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -14,8 +14,8 @@ import Menu from "@/pages/Menu/Menu"; import MyAsset from "@/pages/MyAsset/MyAsset"; import NFTDetail from "@/pages/MyAsset/NFTDetail/NFTDetail"; import NftList from "@/pages/MyAsset/NftList"; +import UnstakedList from "@/pages/MyAsset/UnstakedList"; import UnstakingDetail from "@/pages/MyAsset/UnstakingDetail"; -import UnstakingList from "@/pages/MyAsset/UnstakingList"; import Nlp from "@/pages/Nlp/Nlp"; import Referral from "@/pages/Referral/Referral"; import Amount from "@/pages/Stake/Amount"; @@ -53,7 +53,7 @@ const Router = () => { */} }> } /> - } /> + } /> } /> } /> diff --git a/src/components/myAsset/NftHeader.tsx b/src/components/myAsset/NftHeader.tsx index a5e0dd6e..9ba73c8e 100644 --- a/src/components/myAsset/NftHeader.tsx +++ b/src/components/myAsset/NftHeader.tsx @@ -26,11 +26,15 @@ const NftHeader = () => { NFT - - - cardCheck - - Unstaked + navigate("/myasset/unstaked")}> + + {pathname.includes("unstaked") ? ( + cardCheck_active + ) : ( + card_disable + )} + + Unstaked diff --git a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailHeader.tsx b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader.tsx similarity index 61% rename from src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailHeader.tsx rename to src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader.tsx index b3a05312..c84d2d46 100644 --- a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailHeader.tsx +++ b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader.tsx @@ -2,17 +2,17 @@ import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; import { styled } from "styled-components"; -import IcBack from "../../../../assets/icons/ic_back.svg"; -import IcDown from "../../../../assets/icons/MyAsset/ic_arrow_down.svg"; -import IcUp from "../../../../assets/icons/MyAsset/ic_arrow_up.svg"; +import IcBack from "@/assets/icons/ic_back.svg"; +import IcDown from "@/assets/icons/MyAsset/ic_arrow_down.svg"; +import IcUp from "@/assets/icons/MyAsset/ic_arrow_up.svg"; const tele = (window as any).Telegram.WebApp; -interface UnstakingDetailHeaderProps { +interface UnstakedDetailHeaderProps { UnstakingListLength: number; } -const UnstakingDetailHeader = (props: UnstakingDetailHeaderProps) => { +const UnstakedDetailHeader = (props: UnstakedDetailHeaderProps) => { const { UnstakingListLength } = props; const navigate = useNavigate(); const [isOpenDesc, setIsOpenDesc] = useState(false); @@ -39,41 +39,21 @@ const UnstakingDetailHeader = (props: UnstakingDetailHeaderProps) => { <> - setIsOpenDesc((prev) => !prev)}> - Unstaking NFT - + setIsOpenDesc(prev => !prev)}>Unstaking NFT {isOpenDesc ? ( - up setIsOpenDesc(false)} - style={pointerStyle} - /> + up setIsOpenDesc(false)} style={pointerStyle} /> ) : ( - down setIsOpenDesc(true)} - style={pointerStyle} - /> + down setIsOpenDesc(true)} style={pointerStyle} /> )} - - Total unstaking NFT {UnstakingListLength} - + Total unstaking NFT {UnstakingListLength} {isOpenDesc && (
- - Unstaking will take approximately 7days to complete. Your - - - transaction history will be burned. Once you’ve had run burning - - - NFT and unstaking, canceling transaction can not be accepted. - + Unstaking will take approximately 7days to complete. Your + transaction history will be burned. Once you’ve had run burning + NFT and unstaking, canceling transaction can not be accepted.
)} @@ -81,7 +61,7 @@ const UnstakingDetailHeader = (props: UnstakingDetailHeaderProps) => { ); }; -export default UnstakingDetailHeader; +export default UnstakedDetailHeader; const UnstakingDetailHeaderWrapper = styled.div` display: flex; diff --git a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailItem.tsx b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailItem.tsx similarity index 72% rename from src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailItem.tsx rename to src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailItem.tsx index 2d7a2dc7..286c7549 100644 --- a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailItem.tsx +++ b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailItem.tsx @@ -1,37 +1,26 @@ import { useNavigate } from "react-router-dom"; -import { css, styled } from "styled-components"; +import { styled } from "styled-components"; -import IcTon from "../../../../assets/icons/MyAsset/ic_tonSymbol.svg"; -import { nftInfo } from "../../../../types/Nft"; -import { - AvailableDate, - UnstakingDateChanger, -} from "../../../../utils/dateChanger"; -import { numberCutter } from "../../../../utils/numberCutter"; +import IcTon from "@/assets/icons/MyAsset/ic_tonSymbol.svg"; +import { nftInfo } from "@/types/Nft"; +import { AvailableDate, UnstakingDateChanger } from "@/utils/dateChanger"; +import { numberCutter } from "@/utils/numberCutter"; -interface UnstakingDetailItemProps { +interface UnstakedDetailItemProps { item: nftInfo; } -const UnstakingDetailItem = (props: UnstakingDetailItemProps) => { +const UnstakedDetailItem = (props: UnstakedDetailItemProps) => { const { nftId, principal, timeStamp } = props.item; const navigate = useNavigate(); return ( - navigate(`/unstaking/${nftId}`)} - > + navigate(`/unstaking/${nftId}`)}> - - ID {String(nftId).padStart(5, "0")} - + ID {String(nftId).padStart(5, "0")} Available in - - {AvailableDate(timeStamp) < 0 - ? `0000 Hours` - : `${AvailableDate(timeStamp)} Hours`} - + {AvailableDate(timeStamp) < 0 ? `0000 Hours` : `${AvailableDate(timeStamp)} Hours`} @@ -51,7 +40,7 @@ const UnstakingDetailItem = (props: UnstakingDetailItemProps) => { ); }; -export default UnstakingDetailItem; +export default UnstakedDetailItem; const UnstakingDetailItemWrapper = styled.div` width: 100%; diff --git a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList.tsx b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList.tsx new file mode 100644 index 00000000..9dc50d96 --- /dev/null +++ b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList.tsx @@ -0,0 +1,24 @@ +import { styled } from "styled-components"; + +import { useUnstakingList } from "@/pages/MyAsset/hooks/useUnstakingList"; + +import UnstakedDetailItem from "./UnstakedDetailItem"; + +const UnstakedDetailList = () => { + const { unstakingList } = useUnstakingList(); + + return ( + + {unstakingList + ?.sort((a: any, b: any) => b.timeStamp - a.timeStamp) + ?.map(data => )} + + ); +}; + +export default UnstakedDetailList; + +const UnstakedDetailListWrapper = styled.div` + width: 100%; + padding-top: 1rem; +`; diff --git a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailList.tsx b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailList.tsx deleted file mode 100644 index ed0a3300..00000000 --- a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailList.tsx +++ /dev/null @@ -1,26 +0,0 @@ -import { styled } from "styled-components"; - -import { useUnstakingList } from "@/pages/MyAsset/hooks/useUnstakingList"; - -import UnstakingDetailItem from "./UnstakingDetailItem"; - -const UnstakingDetailList = () => { - const { unstakingList } = useUnstakingList(); - - return ( - - {unstakingList - ?.sort((a: any, b: any) => b.timeStamp - a.timeStamp) - ?.map((data) => ( - - ))} - - ); -}; - -export default UnstakingDetailList; - -const UnstkaingDetailListWrapper = styled.div` - width: 100%; - padding-top: 1rem; -`; diff --git a/src/pages/MyAsset/UnstakedList.tsx b/src/pages/MyAsset/UnstakedList.tsx new file mode 100644 index 00000000..10d763b2 --- /dev/null +++ b/src/pages/MyAsset/UnstakedList.tsx @@ -0,0 +1,42 @@ +import { useEffect } from "react"; +import { useNavigate } from "react-router-dom"; +import { styled } from "styled-components"; + +import IcClaimDisable from "@/assets/icons/MyAsset/ic_claim_disable.svg"; +import UnstakedDetailHeader from "@/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader"; +import UnstakedDetailList from "@/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList"; + +const tele = (window as any).Telegram.WebApp; + +const UnstakedList = () => { + const navigate = useNavigate(); + + useEffect(() => { + if (tele) { + tele.ready(); + tele.BackButton.show(); + tele.onEvent("backButtonClicked", () => { + navigate("/main"); + }); + } + + return () => { + tele.offEvent("backButtonClicked"); + }; + }, []); + + return ( + + + + + + ); +}; + +export default UnstakedList; + +const UnstakedListWrapper = styled.div` + width: 100%; + padding: 3rem 2rem; +`; diff --git a/src/pages/MyAsset/UnstakingList.tsx b/src/pages/MyAsset/UnstakingList.tsx index f21a928b..61d7d66f 100644 --- a/src/pages/MyAsset/UnstakingList.tsx +++ b/src/pages/MyAsset/UnstakingList.tsx @@ -3,10 +3,11 @@ import { useNavigate } from "react-router-dom"; import { styled } from "styled-components"; import IcClaimDisable from "@/assets/icons/MyAsset/ic_claim_disable.svg"; -import UnstakingDetailList from "@/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailList"; +import UnstakedDetailList from "@/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList"; const tele = (window as any).Telegram.WebApp; +// ! @deprecated const UnstakingList = () => { const navigate = useNavigate(); @@ -64,7 +65,7 @@ const UnstakingList = () => { {/* */} - + ); From d1e29d502e73b84b75138cdc48c06e5fa710383d Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 9 Sep 2024 16:27:15 +1000 Subject: [PATCH 075/105] fix: imports updated --- src/components/common/Router.tsx | 2 -- src/pages/MyAsset/UnstakingDetail.tsx | 9 +++++---- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index 68bc0fe2..f2623b83 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -15,7 +15,6 @@ import MyAsset from "@/pages/MyAsset/MyAsset"; import NFTDetail from "@/pages/MyAsset/NFTDetail/NFTDetail"; import NftList from "@/pages/MyAsset/NftList"; import UnstakedList from "@/pages/MyAsset/UnstakedList"; -import UnstakingDetail from "@/pages/MyAsset/UnstakingDetail"; import Nlp from "@/pages/Nlp/Nlp"; import Referral from "@/pages/Referral/Referral"; import Amount from "@/pages/Stake/Amount"; @@ -54,7 +53,6 @@ const Router = () => { }> } /> } /> - } /> } /> diff --git a/src/pages/MyAsset/UnstakingDetail.tsx b/src/pages/MyAsset/UnstakingDetail.tsx index be40992b..fc883599 100644 --- a/src/pages/MyAsset/UnstakingDetail.tsx +++ b/src/pages/MyAsset/UnstakingDetail.tsx @@ -1,17 +1,18 @@ import { styled } from "styled-components"; -import UnstakingDetailHeader from "@/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailHeader"; -import UnstakingDetailList from "@/components/myAsset/Unstaking/UnstakingDetail/UnstakingDetailList"; +import UnstakedDetailHeader from "@/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader"; +import UnstakedDetailList from "@/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList"; import { useUnstakingList } from "./hooks/useUnstakingList"; +// ! @deprecated const UnstakingDetail = () => { const { unstakingList } = useUnstakingList(); return ( - - + + ); }; From d08a4c0a7dc42c9a346aa39d1e9d491a77a04120 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 10 Sep 2024 12:55:18 +1000 Subject: [PATCH 076/105] feat: myAssets filtering, empty NFTs Fallback --- .../UnstakingDetail/UnstakedDetailHeader.tsx | 10 ++++---- .../UnstakingDetail/UnstakedDetailList.tsx | 25 ++++++++++++++++--- src/pages/MyAsset/NftList.tsx | 19 +++++++------- src/pages/MyAsset/hooks/useMyAssetFilter.tsx | 24 ++++++------------ 4 files changed, 44 insertions(+), 34 deletions(-) diff --git a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader.tsx b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader.tsx index c84d2d46..bf6eed04 100644 --- a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader.tsx +++ b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader.tsx @@ -40,23 +40,23 @@ const UnstakedDetailHeader = (props: UnstakedDetailHeaderProps) => { setIsOpenDesc(prev => !prev)}>Unstaking NFT - {isOpenDesc ? ( + {/* {isOpenDesc ? ( up setIsOpenDesc(false)} style={pointerStyle} /> ) : ( down setIsOpenDesc(true)} style={pointerStyle} /> - )} + )} */} Total unstaking NFT {UnstakingListLength} - {isOpenDesc && ( + {/* {isOpenDesc && (
- Unstaking will take approximately 7days to complete. Your + Unstaking will take approximately 7 days to complete. Your transaction history will be burned. Once you’ve had run burning NFT and unstaking, canceling transaction can not be accepted.
- )} + )} */} ); }; diff --git a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList.tsx b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList.tsx index 9dc50d96..3befe31a 100644 --- a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList.tsx +++ b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList.tsx @@ -1,5 +1,7 @@ import { styled } from "styled-components"; +import RepaysEmpty from "@/assets/image/Loan/RepaysEmpty.png"; +import { LoanNFTBoxListEmpty, LoanNFTBoxListEmptyLink } from "@/components/loan/Borrow/BorrowList.styled"; import { useUnstakingList } from "@/pages/MyAsset/hooks/useUnstakingList"; import UnstakedDetailItem from "./UnstakedDetailItem"; @@ -9,9 +11,18 @@ const UnstakedDetailList = () => { return ( - {unstakingList - ?.sort((a: any, b: any) => b.timeStamp - a.timeStamp) - ?.map(data => )} + {unstakingList ? ( + unstakingList + ?.sort((a: any, b: any) => b.timeStamp - a.timeStamp) + ?.map(data => ) + ) : ( + + unstaked_empty + +

No results

+ There is no record of unstaking. +
+ )}
); }; @@ -22,3 +33,11 @@ const UnstakedDetailListWrapper = styled.div` width: 100%; padding-top: 1rem; `; + +const UnstakedDetailListEmpty = styled(LoanNFTBoxListEmpty)` + padding-top: 1rem; +`; + +const UnstakedDetailListEmptyLink = styled(LoanNFTBoxListEmptyLink)` + cursor: default; +`; diff --git a/src/pages/MyAsset/NftList.tsx b/src/pages/MyAsset/NftList.tsx index acc1512d..eda44df4 100644 --- a/src/pages/MyAsset/NftList.tsx +++ b/src/pages/MyAsset/NftList.tsx @@ -2,11 +2,11 @@ import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; import styled, { css } from "styled-components"; -import IcCheck from "../../assets/icons/MyAsset/ic_check.svg"; -import Icfilter from "../../assets/icons/MyAsset/ic_filter.svg"; -import IcReload from "../../assets/icons/MyAsset/ic_reload.svg"; -import NFTFilter from "../../components/myAsset/Filter/NFTFilter"; -import NftItem from "../../components/myAsset/NFT/NftItem"; +import IcCheck from "@/assets/icons/MyAsset/ic_check.svg"; +import Icfilter from "@/assets/icons/MyAsset/ic_filter.svg"; +import IcReload from "@/assets/icons/MyAsset/ic_reload.svg"; +import NFTFilter from "@/components/myAsset/Filter/NFTFilter"; +import NftItem from "@/components/myAsset/NFT/NftItem"; import useMyAssetFilter from "./hooks/useMyAssetFilter"; @@ -71,15 +71,14 @@ const NftList = () => { reload - Staked {/* // ! Hidden for now, no functionality */} - {/* + {/*Staked + Collateralized */} - {/* // ! Hidden for now, works incorrectly */} - {/* + {period} {period === "Filter" ? ( filter @@ -88,7 +87,7 @@ const NftList = () => { ) : ( )} - */} + {handlePrintMyAssetFilter()?.filter(item => item.status !== 2).length > 0 ? ( diff --git a/src/pages/MyAsset/hooks/useMyAssetFilter.tsx b/src/pages/MyAsset/hooks/useMyAssetFilter.tsx index dc4674f5..476e2df0 100644 --- a/src/pages/MyAsset/hooks/useMyAssetFilter.tsx +++ b/src/pages/MyAsset/hooks/useMyAssetFilter.tsx @@ -1,8 +1,8 @@ -import { useEffect, useState } from "react"; +import { useState } from "react"; -import { useStakeInfo } from "../../../hooks/api/useStakeInfo"; -import useTonConnect from "../../../hooks/contract/useTonConnect"; -import { DDayChange } from "../../../utils/dateChanger"; +import { useStakeInfo } from "@/hooks/api/useStakeInfo"; +import useTonConnect from "@/hooks/contract/useTonConnect"; +import { getNftState } from "@/utils/getNftState"; const useMyAssetFilter = () => { const { address } = useTonConnect(); @@ -16,7 +16,7 @@ const useMyAssetFilter = () => { const { nftList } = useStakeInfo(address); const handleToggleFilter = () => { - setIsOpenFilter((prev) => !prev); + setIsOpenFilter(prev => !prev); }; const handleCheckPeriod = (type: string) => { @@ -43,19 +43,11 @@ const useMyAssetFilter = () => { const handlePrintMyAssetFilter = () => { switch (period) { case "Ongoing": - return nftList?.filter( - (item) => DDayChange(item.timeStamp, item.lockPeriod) > 15 - ); + return nftList?.filter(item => getNftState(item?.unstakableDate) === "ongoing"); case "Forthcoming": - return nftList?.filter( - (item) => - DDayChange(item.timeStamp, item.lockPeriod) <= 15 && - DDayChange(item.timeStamp, item.lockPeriod) > 0 - ); + return nftList?.filter(item => getNftState(item?.unstakableDate) === "forthcoming"); case "Expired": - return nftList?.filter( - (item) => DDayChange(item.timeStamp, item.lockPeriod) <= 0 - ); + return nftList?.filter(item => getNftState(item?.unstakableDate) === "expired"); default: return nftList; } From 406d7cc606ad6e7bd1b86d1ab2024b80902d3b5c Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Tue, 10 Sep 2024 12:58:57 +1000 Subject: [PATCH 077/105] feat: myAssets nfts list empty fallback --- src/pages/MyAsset/NftList.tsx | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/src/pages/MyAsset/NftList.tsx b/src/pages/MyAsset/NftList.tsx index eda44df4..c4e24455 100644 --- a/src/pages/MyAsset/NftList.tsx +++ b/src/pages/MyAsset/NftList.tsx @@ -2,9 +2,12 @@ import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; import styled, { css } from "styled-components"; +import IcArrowRight from "@/assets/icons/Loan/ic_arrow_right.svg"; import IcCheck from "@/assets/icons/MyAsset/ic_check.svg"; -import Icfilter from "@/assets/icons/MyAsset/ic_filter.svg"; +import IcFilter from "@/assets/icons/MyAsset/ic_filter.svg"; import IcReload from "@/assets/icons/MyAsset/ic_reload.svg"; +import NFTsEmpty from "@/assets/image/Loan/NFTsEmpty.png"; +import { LoanNFTBoxListEmpty, LoanNFTBoxListEmptyLink } from "@/components/loan/Borrow/BorrowList.styled"; import NFTFilter from "@/components/myAsset/Filter/NFTFilter"; import NftItem from "@/components/myAsset/NFT/NftItem"; @@ -81,7 +84,7 @@ const NftList = () => { {period} {period === "Filter" ? ( - filter + filter ) : period === "All" ? ( check ) : ( @@ -100,7 +103,14 @@ const NftList = () => { ))} ) : ( - Empty + + nfts_empty + +

No results

+ navigate("/stake/amount")}> + Let’s move to staking to get new NFT arrow_right + +
)} ); @@ -211,16 +221,12 @@ const NFTItemWrapper = styled.div` } `; -const ExtraBox = styled.div` - width: 100%; - margin-top: 5.6rem; - - color: #2f3038; - ${({ theme }) => theme.fonts.Nexton_Title_Medium}; - - text-align: center; +const NftListEmpty = styled(LoanNFTBoxListEmpty)` + padding-top: 1rem; `; +const NftListEmptyLink = styled(LoanNFTBoxListEmptyLink)``; + const NFTStatus = styled.div<{ type?: string }>` width: 1.4rem; height: 1.4rem; From 5fbd02b73b8c78c66a6b6d81a8e9595d20451acf Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Wed, 11 Sep 2024 15:37:16 +1000 Subject: [PATCH 078/105] feat: ustakingList API connected, unstakingItem implemented --- .../UnstakingDetail/UnstakedDetailHeader.tsx | 31 +---- .../UnstakingDetail/UnstakedDetailItem.tsx | 128 +++++++++--------- .../UnstakingDetail/UnstakedDetailList.tsx | 12 +- src/hooks/api/unstaking/useUnstakedList.ts | 16 +++ src/pages/MyAsset/UnstakedList.tsx | 19 ++- src/pages/MyAsset/hooks/useUnstakingList.tsx | 1 + src/pages/Unstaking/UnstakingNftDetail.tsx | 4 +- 7 files changed, 108 insertions(+), 103 deletions(-) create mode 100644 src/hooks/api/unstaking/useUnstakedList.ts diff --git a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader.tsx b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader.tsx index bf6eed04..a0c8005f 100644 --- a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader.tsx +++ b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader.tsx @@ -1,4 +1,4 @@ -import { useEffect, useState } from "react"; +import { useState } from "react"; import { useNavigate } from "react-router-dom"; import { styled } from "styled-components"; @@ -6,47 +6,26 @@ import IcBack from "@/assets/icons/ic_back.svg"; import IcDown from "@/assets/icons/MyAsset/ic_arrow_down.svg"; import IcUp from "@/assets/icons/MyAsset/ic_arrow_up.svg"; -const tele = (window as any).Telegram.WebApp; - interface UnstakedDetailHeaderProps { - UnstakingListLength: number; + unstakedListLength: number | undefined; } -const UnstakedDetailHeader = (props: UnstakedDetailHeaderProps) => { - const { UnstakingListLength } = props; +const UnstakedDetailHeader = ({ unstakedListLength }: UnstakedDetailHeaderProps) => { const navigate = useNavigate(); const [isOpenDesc, setIsOpenDesc] = useState(false); - useEffect(() => { - if (tele) { - tele.ready(); - tele.BackButton.show(); - tele.onEvent("backButtonClicked", () => { - navigate("/myasset/unstaking"); - }); - } - - return () => { - tele.offEvent("backButtonClicked"); - }; - }, []); - - const pointerStyle = { - cursor: "pointer", - }; - return ( <> - setIsOpenDesc(prev => !prev)}>Unstaking NFT + setIsOpenDesc(prev => !prev)}>Unstaked NFT {/* {isOpenDesc ? ( up setIsOpenDesc(false)} style={pointerStyle} /> ) : ( down setIsOpenDesc(true)} style={pointerStyle} /> )} */} - Total unstaking NFT {UnstakingListLength} + Total unstaked NFT {unstakedListLength || 0} {/* {isOpenDesc && ( diff --git a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailItem.tsx b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailItem.tsx index 286c7549..af2a19fd 100644 --- a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailItem.tsx +++ b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailItem.tsx @@ -2,40 +2,39 @@ import { useNavigate } from "react-router-dom"; import { styled } from "styled-components"; import IcTon from "@/assets/icons/MyAsset/ic_tonSymbol.svg"; -import { nftInfo } from "@/types/Nft"; -import { AvailableDate, UnstakingDateChanger } from "@/utils/dateChanger"; -import { numberCutter } from "@/utils/numberCutter"; +import { IUnstakedListData } from "@/hooks/api/unstaking/useUnstakedList"; +import { limitDecimals } from "@/utils/limitDecimals"; -interface UnstakedDetailItemProps { - item: nftInfo; -} - -const UnstakedDetailItem = (props: UnstakedDetailItemProps) => { - const { nftId, principal, timeStamp } = props.item; +const UnstakedDetailItem = ({ item }: { item: IUnstakedListData }) => { + const { nftId, availableIn, unstakedAt, unstakedAmount } = item; const navigate = useNavigate(); return ( - navigate(`/unstaking/${nftId}`)}> - - ID {String(nftId).padStart(5, "0")} - - Available in - {AvailableDate(timeStamp) < 0 ? `0000 Hours` : `${AvailableDate(timeStamp)} Hours`} - - - - - Value - - {numberCutter(principal)} - TON - - - - - Date of unstaking - {UnstakingDateChanger(timeStamp, "detail")} - + + ID {String(nftId).padStart(4, "0")} + + + + Available in +

{availableIn}

+
+ + + Value +

{limitDecimals(unstakedAmount, 3)} TON

+
+ + + + + Date of unstaking +

+ {unstakedAt + ? new Date(unstakedAt).toLocaleDateString("en-US", { month: "2-digit", day: "2-digit", year: "numeric" }) + : ""} +

+
+
); }; @@ -53,60 +52,59 @@ const UnstakingDetailItemWrapper = styled.div` margin-top: 0.8rem; } - cursor: pointer; + cursor: default; `; -const UnstakingDetailTopBox = styled.div` +const UnstakingDetailContentBox = styled.div` display: flex; - justify-content: space-between; + flex-direction: column; align-items: center; width: 100%; -`; -const UnstakingDetailId = styled.div` - display: flex; - justify-content: center; - align-items: center; - gap: 1rem; - padding: 0.4rem 1.2rem; - - border-radius: 2rem; - background-color: #141420; - color: #f1f1f1; - ${({ theme }) => theme.fonts.Telegram_Caption_3}; + margin-top: 1.2rem; `; -const UnstakingDetailMiddel = styled.div` +const UnstakingDetailContentBoxItem = styled.div` display: flex; - justify-content: flex-end; + justify-content: space-between; align-items: center; width: 100%; - margin-top: 1.2rem; -`; -const UnstakingDetailRightTopBox = styled.div` - display: flex; - justify-content: space-between; - align-items: center; - gap: 2.6rem; -`; -const CaptionText = styled.span` - color: #000; - ${({ theme }) => theme.fonts.Telegram_Caption_3}; + span { + color: #aaaeaf; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_3}; + } + + p { + color: #303234; + ${({ theme }) => theme.fonts.Nexton_Body_Text_Medium_2}; + } `; -const BoldText = styled.span` - color: #000; - ${({ theme }) => theme.fonts.Telegram_SemiBold}; +const UnstakingDetailContentBoxDivider = styled.div` + width: 100%; + height: 1px; + background-color: #f1f4f4; + + margin: 2rem 0; `; -const UnstakingDetailBottomBox = styled.div` +const UnstakingDetailId = styled.div` display: flex; - justify-content: space-between; + width: fit-content; + height: 32px; + padding: 2px 11px; + justify-content: center; align-items: center; + gap: 10px; + flex-shrink: 0; - width: 100%; - margin-top: 2.6rem; + border-radius: 30px; + background: linear-gradient(276deg, rgba(197, 197, 197, 0.71) 5.57%, rgba(0, 0, 0, 0.8) 95.68%); + + color: #fff; + text-align: center; + ${({ theme }) => theme.fonts.Nexton_Label_Small}; `; diff --git a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList.tsx b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList.tsx index 3befe31a..5f36e3d6 100644 --- a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList.tsx +++ b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList.tsx @@ -2,19 +2,15 @@ import { styled } from "styled-components"; import RepaysEmpty from "@/assets/image/Loan/RepaysEmpty.png"; import { LoanNFTBoxListEmpty, LoanNFTBoxListEmptyLink } from "@/components/loan/Borrow/BorrowList.styled"; -import { useUnstakingList } from "@/pages/MyAsset/hooks/useUnstakingList"; +import { IUnstakedListData } from "@/hooks/api/unstaking/useUnstakedList"; import UnstakedDetailItem from "./UnstakedDetailItem"; -const UnstakedDetailList = () => { - const { unstakingList } = useUnstakingList(); - +const UnstakedDetailList = ({ unstakedList }: { unstakedList?: IUnstakedListData[] }) => { return ( - {unstakingList ? ( - unstakingList - ?.sort((a: any, b: any) => b.timeStamp - a.timeStamp) - ?.map(data => ) + {unstakedList ? ( + unstakedList?.map(data => ) ) : ( unstaked_empty diff --git a/src/hooks/api/unstaking/useUnstakedList.ts b/src/hooks/api/unstaking/useUnstakedList.ts new file mode 100644 index 00000000..a3877917 --- /dev/null +++ b/src/hooks/api/unstaking/useUnstakedList.ts @@ -0,0 +1,16 @@ +import useSWR from "swr"; + +import { nextonFetcher } from "@/api/axios"; + +export interface IUnstakedListData { + nftId: string | number; + availableIn: string; + unstakedAt: Date | null; + unstakedAmount: number; +} + +export function useUnstakedList(telegramId: string) { + const swrKey = `/data/unstakingList/${telegramId}`; + + return useSWR(swrKey, nextonFetcher); +} diff --git a/src/pages/MyAsset/UnstakedList.tsx b/src/pages/MyAsset/UnstakedList.tsx index 10d763b2..fa0f7c6d 100644 --- a/src/pages/MyAsset/UnstakedList.tsx +++ b/src/pages/MyAsset/UnstakedList.tsx @@ -1,15 +1,22 @@ import { useEffect } from "react"; import { useNavigate } from "react-router-dom"; +import { useRecoilState } from "recoil"; import { styled } from "styled-components"; import IcClaimDisable from "@/assets/icons/MyAsset/ic_claim_disable.svg"; import UnstakedDetailHeader from "@/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader"; import UnstakedDetailList from "@/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList"; +import { useUnstakedList } from "@/hooks/api/unstaking/useUnstakedList"; +import { telegramAtom } from "@/lib/atom/telegram"; const tele = (window as any).Telegram.WebApp; const UnstakedList = () => { const navigate = useNavigate(); + const [telegramId, setTelegramId] = useRecoilState(telegramAtom); + const { data } = useUnstakedList(telegramId); + + console.log("useUnstakedList: ", data); useEffect(() => { if (tele) { @@ -18,6 +25,14 @@ const UnstakedList = () => { tele.onEvent("backButtonClicked", () => { navigate("/main"); }); + + const tgId = tele?.initDataUnsafe?.user?.id; + if (tgId) { + setTelegramId(tgId); + } else { + // Edge case: when user is using Nexton app outside of Telegram + setTelegramId(0); + } } return () => { @@ -27,9 +42,9 @@ const UnstakedList = () => { return ( - + - + ); }; diff --git a/src/pages/MyAsset/hooks/useUnstakingList.tsx b/src/pages/MyAsset/hooks/useUnstakingList.tsx index 9fe88b18..65d087f3 100644 --- a/src/pages/MyAsset/hooks/useUnstakingList.tsx +++ b/src/pages/MyAsset/hooks/useUnstakingList.tsx @@ -1,6 +1,7 @@ import { useStakeInfo } from "@/hooks/api/useStakeInfo"; import useTonConnect from "@/hooks/contract/useTonConnect"; +// ! @deprecated export const useUnstakingList = () => { const { address } = useTonConnect(); const { nftList } = useStakeInfo(address); diff --git a/src/pages/Unstaking/UnstakingNftDetail.tsx b/src/pages/Unstaking/UnstakingNftDetail.tsx index 541c5982..c75619e2 100644 --- a/src/pages/Unstaking/UnstakingNftDetail.tsx +++ b/src/pages/Unstaking/UnstakingNftDetail.tsx @@ -34,8 +34,8 @@ interface ModalState { } const UnstakingNftDetail = () => { - const telegramId = useRecoilValue(telegramAtom); - const { address } = useTonConnect(); + // const telegramId = useRecoilValue(telegramAtom); + // const { address } = useTonConnect(); // const { sendMessage } = Contract.useFakeItemContract(); const { id } = useParams(); const { data: unstakingDetail, isLoading: isLoadingUnstakingDetail } = useUnstakingDetail(Number(id)); From 0b264b4fecec51f97a0a9396a43abc863dbcf76e Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Wed, 11 Sep 2024 16:06:14 +1000 Subject: [PATCH 079/105] fix: props resolved --- src/pages/MyAsset/UnstakingDetail.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/MyAsset/UnstakingDetail.tsx b/src/pages/MyAsset/UnstakingDetail.tsx index fc883599..7682338e 100644 --- a/src/pages/MyAsset/UnstakingDetail.tsx +++ b/src/pages/MyAsset/UnstakingDetail.tsx @@ -11,7 +11,7 @@ const UnstakingDetail = () => { return ( - + ); From 0e42f4e6ec457db2505332db0adad06963f3ddb0 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 13 Sep 2024 14:20:15 +1000 Subject: [PATCH 080/105] feat: added view unstaking screen & error/loading fallbacks --- src/components/common/Router.tsx | 1 + .../UnstakingDetail/UnstakedDetailItem.tsx | 4 +- src/pages/Unstaking/UnstakingNftDetail.tsx | 114 +++++++++++------- 3 files changed, 75 insertions(+), 44 deletions(-) diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index f2623b83..5b032b11 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -57,6 +57,7 @@ const Router = () => { } /> } /> + } /> } /> diff --git a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailItem.tsx b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailItem.tsx index af2a19fd..c79bac53 100644 --- a/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailItem.tsx +++ b/src/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailItem.tsx @@ -10,7 +10,7 @@ const UnstakedDetailItem = ({ item }: { item: IUnstakedListData }) => { const navigate = useNavigate(); return ( - + navigate(`/unstaking/${nftId}/view`)}> ID {String(nftId).padStart(4, "0")} @@ -52,7 +52,7 @@ const UnstakingDetailItemWrapper = styled.div` margin-top: 0.8rem; } - cursor: default; + cursor: pointer; `; const UnstakingDetailContentBox = styled.div` diff --git a/src/pages/Unstaking/UnstakingNftDetail.tsx b/src/pages/Unstaking/UnstakingNftDetail.tsx index c75619e2..0adf4de3 100644 --- a/src/pages/Unstaking/UnstakingNftDetail.tsx +++ b/src/pages/Unstaking/UnstakingNftDetail.tsx @@ -6,6 +6,7 @@ import { useRecoilValue } from "recoil"; import { styled } from "styled-components"; import { postUnstake } from "@/api/postUnstake"; +import Loader from "@/components/common/Loader"; import BasicModal from "@/components/common/Modal/BasicModal"; import TransactionConfirmModal from "@/components/common/Modal/TransactionConfirmModal"; import UnstakingPreview from "@/components/myAsset/NFT/Unstaking/UnstakingPreview"; @@ -33,12 +34,12 @@ interface ModalState { toggled: boolean; } -const UnstakingNftDetail = () => { +const UnstakingNftDetail = ({ view }: { view?: boolean }) => { // const telegramId = useRecoilValue(telegramAtom); // const { address } = useTonConnect(); // const { sendMessage } = Contract.useFakeItemContract(); const { id } = useParams(); - const { data: unstakingDetail, isLoading: isLoadingUnstakingDetail } = useUnstakingDetail(Number(id)); + const { data: unstakingDetail, isLoading: isLoadingUnstakingDetail, error } = useUnstakingDetail(Number(id)); const location = useLocation(); const navigate = useNavigate(); const [isLoadingUnstake, setIsLoadingUnstake] = useState(false); @@ -106,47 +107,71 @@ const UnstakingNftDetail = () => { postUnstaking(); }; + if (error) { + return ( + +
+ Unstaking NFT + Error: {error.message} +
+ + navigate("/myasset/nftlist")}> + Go to NFT List + +
+ ); + } + return ( <> Unstaking NFT - - - {/* */} - - - - - Principal - {limitDecimals(unstakingDetail?.principal, 3)} TON - - - Rewards - {limitDecimals(unstakingDetail?.rewards, 3)} TON - - - - - Available in - {unstakingDetail?.availableIn} - - - Unstaking period - {unstakingDetail?.unstakingPeriod} days - - - Date of Unstaking - {unstakingDetail?.unstakableDate} - - - - During this period you may not cancel the transaction. - - {isDevMode ? ( - setModal({ type: "confirmUnstake", toggled: true })}>Confirm + {isLoadingUnstakingDetail ? ( + + + ) : ( - setModal({ type: "confirmUnstake", toggled: true })} /> + <> + + + + + + Principal + {limitDecimals(unstakingDetail?.principal, 3)} TON + + + Rewards + {limitDecimals(unstakingDetail?.rewards, 3)} TON + + + + + Available in + {unstakingDetail?.availableIn} + + + Unstaking period + {unstakingDetail?.unstakingPeriod} days + + + Date of Unstaking + {unstakingDetail?.unstakableDate} + + + + During this period you may not cancel the transaction. + + {!view && + (isDevMode ? ( + setModal({ type: "confirmUnstake", toggled: true })}> + Confirm + + ) : ( + setModal({ type: "confirmUnstake", toggled: true })} /> + ))} + )} @@ -169,9 +194,19 @@ const UnstakingWrapper = styled.div` position: relative; width: 100%; + min-height: 100vh; padding: 0 1.5rem; background-color: #f2f2f7; `; + +const LoaderWrapper = styled.div` + display: flex; + justify-content: center; + align-items: center; + width: 100%; + height: 100vh; +`; + const UnstakingHeader = styled.div` display: flex; justify-content: start; @@ -199,11 +234,6 @@ const UnstakingMessageBox = styled.div` text-align: center; `; -const UnstakingButtonWrapper = styled.div` - width: 100%; - padding: 0 1.6rem; -`; - const UnstakingButton = styled.button` display: flex; justify-content: center; From 3f593561ac9b1eb38762f4d56cd866317a763ecc Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 19 Sep 2024 15:57:34 +1000 Subject: [PATCH 081/105] feat: loaders & errors interceptor added --- src/pages/MyAsset/NftList.tsx | 16 +++++++++++++++- src/pages/MyAsset/UnstakedList.tsx | 19 +++++++++++++++++-- src/pages/MyAsset/hooks/useMyAssetFilter.tsx | 3 ++- 3 files changed, 34 insertions(+), 4 deletions(-) diff --git a/src/pages/MyAsset/NftList.tsx b/src/pages/MyAsset/NftList.tsx index c4e24455..7f5b7624 100644 --- a/src/pages/MyAsset/NftList.tsx +++ b/src/pages/MyAsset/NftList.tsx @@ -7,6 +7,7 @@ import IcCheck from "@/assets/icons/MyAsset/ic_check.svg"; import IcFilter from "@/assets/icons/MyAsset/ic_filter.svg"; import IcReload from "@/assets/icons/MyAsset/ic_reload.svg"; import NFTsEmpty from "@/assets/image/Loan/NFTsEmpty.png"; +import Loader from "@/components/common/Loader"; import { LoanNFTBoxListEmpty, LoanNFTBoxListEmptyLink } from "@/components/loan/Borrow/BorrowList.styled"; import NFTFilter from "@/components/myAsset/Filter/NFTFilter"; import NftItem from "@/components/myAsset/NFT/NftItem"; @@ -29,6 +30,7 @@ const NftList = () => { handleCheckPeriod, handlePrintMyAssetFilter, handleToggleFilter, + isLoading, } = useMyAssetFilter(); const handleSelect = (index: number) => { @@ -93,7 +95,11 @@ const NftList = () => {
- {handlePrintMyAssetFilter()?.filter(item => item.status !== 2).length > 0 ? ( + {isLoading ? ( + + + + ) : handlePrintMyAssetFilter()?.filter(item => item.status !== 2).length > 0 ? ( {handlePrintMyAssetFilter() .sort((a, b) => Number(b.timeStamp) - Number(a.timeStamp)) @@ -141,6 +147,14 @@ const NFtListWrapper = styled.div` } `; +const LoaderWrapper = styled.div` + display: flex; + justify-content: center; + align-items: center; + width: 100%; + height: 50vh; +`; + const NftListHeader = styled.div` display: flex; justify-content: space-between; diff --git a/src/pages/MyAsset/UnstakedList.tsx b/src/pages/MyAsset/UnstakedList.tsx index fa0f7c6d..198c0809 100644 --- a/src/pages/MyAsset/UnstakedList.tsx +++ b/src/pages/MyAsset/UnstakedList.tsx @@ -4,6 +4,7 @@ import { useRecoilState } from "recoil"; import { styled } from "styled-components"; import IcClaimDisable from "@/assets/icons/MyAsset/ic_claim_disable.svg"; +import Loader from "@/components/common/Loader"; import UnstakedDetailHeader from "@/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailHeader"; import UnstakedDetailList from "@/components/myAsset/Unstaking/UnstakingDetail/UnstakedDetailList"; import { useUnstakedList } from "@/hooks/api/unstaking/useUnstakedList"; @@ -14,7 +15,7 @@ const tele = (window as any).Telegram.WebApp; const UnstakedList = () => { const navigate = useNavigate(); const [telegramId, setTelegramId] = useRecoilState(telegramAtom); - const { data } = useUnstakedList(telegramId); + const { data, isLoading } = useUnstakedList(telegramId); // ! test ID - 555 console.log("useUnstakedList: ", data); @@ -44,7 +45,13 @@ const UnstakedList = () => { - + {isLoading ? ( + + + + ) : ( + + )} ); }; @@ -55,3 +62,11 @@ const UnstakedListWrapper = styled.div` width: 100%; padding: 3rem 2rem; `; + +const LoaderWrapper = styled.div` + width: 100%; + height: 50vh; + display: flex; + justify-content: center; + align-items: center; +`; diff --git a/src/pages/MyAsset/hooks/useMyAssetFilter.tsx b/src/pages/MyAsset/hooks/useMyAssetFilter.tsx index 476e2df0..14ac3c51 100644 --- a/src/pages/MyAsset/hooks/useMyAssetFilter.tsx +++ b/src/pages/MyAsset/hooks/useMyAssetFilter.tsx @@ -13,7 +13,7 @@ const useMyAssetFilter = () => { //ongoing,all 클릭 했을 떄 border 관리 하기 위한 state const [period, setPeriod] = useState("Filter"); const [isOpenFilter, setIsOpenFilter] = useState(false); - const { nftList } = useStakeInfo(address); + const { nftList, isLoading } = useStakeInfo(address); const handleToggleFilter = () => { setIsOpenFilter(prev => !prev); @@ -63,6 +63,7 @@ const useMyAssetFilter = () => { handleCheckPeriod, handlePrintMyAssetFilter, handleToggleFilter, + isLoading, }; }; From 57cd8d347e57f086589b02648b539d99f313ded4 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 10 Oct 2024 12:38:34 +1000 Subject: [PATCH 082/105] fix: post-merge fixes --- package-lock.json | 8389 +++++++++++++++++++++++ src/components/main/MainMyAssetInfo.tsx | 1 + src/pages/Loan/Borrow/BorrowDetails.tsx | 26 +- src/pages/Menu/Menu.styled.tsx | 6 + yarn.lock | 1646 ++--- 5 files changed, 9097 insertions(+), 971 deletions(-) create mode 100644 package-lock.json diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 00000000..99e55b9a --- /dev/null +++ b/package-lock.json @@ -0,0 +1,8389 @@ +{ + "name": "nexton_front", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "nexton_front", + "version": "0.0.0", + "dependencies": { + "@aws-crypto/sha256-js": "^5.0.0", + "@emotion/react": "^11.11.1", + "@emotion/styled": "^11.11.0", + "@esbuild-plugins/node-globals-polyfill": "^0.2.3", + "@hookform/resolvers": "^3.3.4", + "@mui/material": "^5.14.1", + "@orbs-network/ton-access": "^2.3.3", + "@ton/core": "^0.58.1", + "@ton/crypto": "^3.3.0", + "@ton/ton": "^15.0.0", + "@tonconnect/ui-react": "^2.0.9", + "@vercel/analytics": "^1.3.1", + "@vkruglikov/react-telegram-web-app": "^2.1.1", + "axios": "^1.5.0", + "eslint-plugin-simple-import-sort": "^12.0.0", + "framer-motion": "^10.16.4", + "ngrok": "^5.0.0-beta.2", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "react-dropdown": "^1.11.0", + "react-hook-form": "^7.51.4", + "react-hot-toast": "^2.4.1", + "react-loader-spinner": "^6.1.6", + "react-number-format": "^5.3.4", + "react-router-dom": "^6.14.2", + "react-toastify": "^10.0.5", + "recharts": "^2.12.7", + "recoil": "^0.7.7", + "recoil-persist": "^5.1.0", + "rollup-plugin-node-polyfills": "^0.2.1", + "styled-components": "^6.0.5", + "swr": "^2.2.5", + "zod": "^3.23.8" + }, + "devDependencies": { + "@ton/test-utils": "^0.4.2", + "@types/react": "^18.2.15", + "@types/react-dom": "^18.2.7", + "@types/styled-components": "^5.1.26", + "@typescript-eslint/eslint-plugin": "^6.0.0", + "@typescript-eslint/parser": "^6.0.0", + "@vitejs/plugin-react": "^4.0.3", + "eslint": "^8.45.0", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-react-refresh": "^0.4.3", + "prettier": "^3.3.2", + "typescript": "^5.0.2", + "vite": "^4.4.5", + "vitest": "^1.6.0" + } + }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@aws-crypto/sha256-js": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.0.0.tgz", + "integrity": "sha512-g+u9iKkaQVp9Mjoxq1IJSHj9NHGZF441+R/GIH0dn7u4mix5QQ4VqgpppHrNm1LzjUzb0BpcFGsBXP6cOVf+ZQ==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/util": "^5.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "license": "0BSD" + }, + "node_modules/@aws-crypto/util": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.0.0.tgz", + "integrity": "sha512-1GYqLdYRe96idcCltlqxdJ68OWE6ADT8qGLmVi7PVHKl8AxD2EWSbJSSevPq2eTx6vaPZpkr1RoZ3lcw/uGoEA==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "license": "0BSD" + }, + "node_modules/@aws-sdk/types": { + "version": "3.370.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.370.0.tgz", + "integrity": "sha512-8PGMKklSkRKjunFhzM2y5Jm0H2TBu7YRNISdYzXLUHKSP9zlMEYagseKVdmox0zKHf1LXVNuSlUV2b6SRrieCQ==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/types": "^1.1.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.259.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz", + "integrity": "sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.3.1" + } + }, + "node_modules/@babel/cli": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.22.9.tgz", + "integrity": "sha512-nb2O7AThqRo7/E53EGiuAkMaRbb7J5Qp3RvN+dmua1U+kydm0oznkhqbTEG15yk26G/C3yL6OdZjzgl+DMXVVA==", + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.17", + "commander": "^4.0.1", + "convert-source-map": "^1.1.0", + "fs-readdir-recursive": "^1.1.0", + "glob": "^7.2.0", + "make-dir": "^2.1.0", + "slash": "^2.0.0" + }, + "bin": { + "babel": "bin/babel.js", + "babel-external-helpers": "bin/babel-external-helpers.js" + }, + "engines": { + "node": ">=6.9.0" + }, + "optionalDependencies": { + "@nicolo-ribaudo/chokidar-2": "2.1.8-no-fsevents.3", + "chokidar": "^3.4.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", + "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==", + "license": "MIT", + "dependencies": { + "@babel/highlight": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", + "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz", + "integrity": "sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==", + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.5", + "@babel/generator": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.9", + "@babel/helper-module-transforms": "^7.22.9", + "@babel/helpers": "^7.22.6", + "@babel/parser": "^7.22.7", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.8", + "@babel/types": "^7.22.5", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.9.tgz", + "integrity": "sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.5.tgz", + "integrity": "sha512-m1EP3lVOPptR+2DwD125gziZNcmoNSHGmJROKoy87loWUQyJaVXDgpmruWqDARZSmtYQ+Dl25okU8+qhVzuykw==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.9.tgz", + "integrity": "sha512-7qYrNM6HjpnPHJbopxmb8hSPoZ0gsX8IvUS32JGVoy+pU9e5N0nLr1VjJoR6kA4d9dmGLxNYOjeB8sUDal2WMw==", + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-validator-option": "^7.22.5", + "browserslist": "^4.21.9", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "license": "ISC" + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.9.tgz", + "integrity": "sha512-Pwyi89uO4YrGKxL/eNJ8lfEH55DnRloGPOseaA8NFNL6jAUnn+KccaISiFazCj5IolPPDjGSdzQzXVzODVRqUQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz", + "integrity": "sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz", + "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==", + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", + "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", + "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", + "license": "MIT", + "dependencies": { + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", + "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", + "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", + "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz", + "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-wrap-function": "^7.22.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz", + "integrity": "sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==", + "license": "MIT", + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", + "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", + "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.9.tgz", + "integrity": "sha512-sZ+QzfauuUEfxSEjKFmi3qDSHgLsTPK/pEpoD/qonZKOtTPTLbf59oabPQ4rKekt9lFcj/hTZaOhWwFYrgjk+Q==", + "license": "MIT", + "dependencies": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.6.tgz", + "integrity": "sha512-YjDs6y/fVOYFV8hAf1rxd1QvR9wJe1pDBZ2AREKq/SDayfPzgk0PBnVuTCE5X1acEpMMNOVUqoe+OwiZGJ+OaA==", + "license": "MIT", + "dependencies": { + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.6", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", + "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.5", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "license": "MIT" + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.22.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.7.tgz", + "integrity": "sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q==", + "license": "MIT", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz", + "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz", + "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-external-helpers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-external-helpers/-/plugin-external-helpers-7.22.5.tgz", + "integrity": "sha512-ngnNEWxmykPk82mH4ajZT0qTztr3Je6hrMuKAslZVM8G1YZTENJSYwrIGtt6KOtznug3exmAtF4so/nPqJuA4A==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", + "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz", + "integrity": "sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz", + "integrity": "sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", + "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", + "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz", + "integrity": "sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.22.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.7.tgz", + "integrity": "sha512-7HmE7pk/Fmke45TODvxvkxRMV9RazV+ZZzhOL9AG8G29TLrr3jkjwF7uJfxZ30EoXpO+LJkq4oA8NjO2DTnEDg==", + "license": "MIT", + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.5", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", + "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz", + "integrity": "sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.5.tgz", + "integrity": "sha512-EcACl1i5fSQ6bt+YGuU/XGCeZKStLmyVGytWkpyhCLeQVA0eu6Wtiw92V+I1T/hnezUv7j74dA/Ro69gWcU+hg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz", + "integrity": "sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz", + "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz", + "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz", + "integrity": "sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/template": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.5.tgz", + "integrity": "sha512-GfqcFuGW8vnEqTUBM7UtPd5A4q797LTvvwKxXTgRsFjoqaJiEg9deBG6kWeQYkVEL569NpnmpC0Pkr/8BLKGnQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz", + "integrity": "sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz", + "integrity": "sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz", + "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz", + "integrity": "sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==", + "license": "MIT", + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz", + "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz", + "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz", + "integrity": "sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==", + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz", + "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz", + "integrity": "sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz", + "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz", + "integrity": "sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz", + "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz", + "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz", + "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz", + "integrity": "sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz", + "integrity": "sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz", + "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz", + "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz", + "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==", + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz", + "integrity": "sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz", + "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.6.tgz", + "integrity": "sha512-Vd5HiWml0mDVtcLHIoEU5sw6HOUW/Zk0acLs/SAeuLzkGNOPc9DB4nkUajemhCmTIz3eiaKREZn2hQQqF79YTg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz", + "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz", + "integrity": "sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz", + "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz", + "integrity": "sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-display-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.22.5.tgz", + "integrity": "sha512-PVk3WPYudRF5z4GKMEYUrLjPl38fJSKNaEOkFuoprioowGuWN6w2RKznuFNSlJx7pzzXXStPUnNSOEO0jL5EVw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.22.5.tgz", + "integrity": "sha512-rog5gZaVbUip5iWDMTYbVM15XQq+RkUKhET/IHR6oizR+JEoN6CAfTTuHcK4vwUyzca30qqHqEpzBOnaRMWYMA==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-development": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.22.5.tgz", + "integrity": "sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==", + "license": "MIT", + "dependencies": { + "@babel/plugin-transform-react-jsx": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.22.5.tgz", + "integrity": "sha512-nTh2ogNUtxbiSbxaT4Ds6aXnXEipHweN9YRgOX/oNXdf0cCrGn/+2LozFa3lnPV5D90MkjhgckCPBrsoSc1a7g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.22.5.tgz", + "integrity": "sha512-yIiRO6yobeEIaI0RTbIr8iAK9FcBHLtZq0S89ZPjDLQXBA4xvghaKqI0etp/tF3htTM0sazJKKLz9oEiGRtu7w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-pure-annotations": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.22.5.tgz", + "integrity": "sha512-gP4k85wx09q+brArVinTXhWiyzLl9UpmGva0+mWyKxk6JZequ05x3eUcIUE+FyttPKJFRRVtAvQaJ6YF9h1ZpA==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.5.tgz", + "integrity": "sha512-rR7KePOE7gfEtNTh9Qw+iO3Q/e4DEsoQ+hdvM6QUDH7JRJ5qxq5AA52ZzBWbI5i9lfNuvySgOGP8ZN7LAmaiPw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "regenerator-transform": "^0.15.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz", + "integrity": "sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz", + "integrity": "sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz", + "integrity": "sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz", + "integrity": "sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz", + "integrity": "sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz", + "integrity": "sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.9.tgz", + "integrity": "sha512-BnVR1CpKiuD0iobHPaM1iLvcwPYN2uVFAqoLVSpEDKWuOikoCv5HbKLxclhKYUXlWkX86DoZGtqI4XhbOsyrMg==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.9", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-typescript": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.5.tgz", + "integrity": "sha512-biEmVg1IYB/raUO5wT1tgfacCef15Fbzhkx493D3urBI++6hpJ+RFG4SrWMn0NEZLfvilqKf3QDrRVZHo08FYg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz", + "integrity": "sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz", + "integrity": "sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz", + "integrity": "sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.9.tgz", + "integrity": "sha512-wNi5H/Emkhll/bqPjsjQorSykrlfY5OWakd6AulLvMEytpKasMVUpVy8RL4qBIBs5Ac6/5i0/Rv0b/Fg6Eag/g==", + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.9", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.22.5", + "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.22.5", + "@babel/plugin-transform-async-generator-functions": "^7.22.7", + "@babel/plugin-transform-async-to-generator": "^7.22.5", + "@babel/plugin-transform-block-scoped-functions": "^7.22.5", + "@babel/plugin-transform-block-scoping": "^7.22.5", + "@babel/plugin-transform-class-properties": "^7.22.5", + "@babel/plugin-transform-class-static-block": "^7.22.5", + "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-computed-properties": "^7.22.5", + "@babel/plugin-transform-destructuring": "^7.22.5", + "@babel/plugin-transform-dotall-regex": "^7.22.5", + "@babel/plugin-transform-duplicate-keys": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.5", + "@babel/plugin-transform-exponentiation-operator": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.5", + "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-function-name": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.5", + "@babel/plugin-transform-literals": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", + "@babel/plugin-transform-member-expression-literals": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-modules-systemjs": "^7.22.5", + "@babel/plugin-transform-modules-umd": "^7.22.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", + "@babel/plugin-transform-numeric-separator": "^7.22.5", + "@babel/plugin-transform-object-rest-spread": "^7.22.5", + "@babel/plugin-transform-object-super": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.6", + "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-private-methods": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.5", + "@babel/plugin-transform-property-literals": "^7.22.5", + "@babel/plugin-transform-regenerator": "^7.22.5", + "@babel/plugin-transform-reserved-words": "^7.22.5", + "@babel/plugin-transform-shorthand-properties": "^7.22.5", + "@babel/plugin-transform-spread": "^7.22.5", + "@babel/plugin-transform-sticky-regex": "^7.22.5", + "@babel/plugin-transform-template-literals": "^7.22.5", + "@babel/plugin-transform-typeof-symbol": "^7.22.5", + "@babel/plugin-transform-unicode-escapes": "^7.22.5", + "@babel/plugin-transform-unicode-property-regex": "^7.22.5", + "@babel/plugin-transform-unicode-regex": "^7.22.5", + "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.22.5", + "babel-plugin-polyfill-corejs2": "^0.4.4", + "babel-plugin-polyfill-corejs3": "^0.8.2", + "babel-plugin-polyfill-regenerator": "^0.5.1", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6.tgz", + "integrity": "sha512-ID2yj6K/4lKfhuU3+EX4UvNbIt7eACFbHmNUjzA+ep+B5971CknnA/9DEWKbRokfbbtblxxxXFJJrH47UEAMVg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/preset-react": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.22.5.tgz", + "integrity": "sha512-M+Is3WikOpEJHgR385HbuCITPTaPRaNkibTEa9oiofmJvIsrceb4yp9RL9Kb+TE8LznmeyZqpP+Lopwcx59xPQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-transform-react-display-name": "^7.22.5", + "@babel/plugin-transform-react-jsx": "^7.22.5", + "@babel/plugin-transform-react-jsx-development": "^7.22.5", + "@babel/plugin-transform-react-pure-annotations": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz", + "integrity": "sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-typescript": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "license": "MIT" + }, + "node_modules/@babel/runtime": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz", + "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==", + "license": "MIT", + "dependencies": { + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", + "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.22.8", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.8.tgz", + "integrity": "sha512-y6LPR+wpM2I3qJrsheCTwhIinzkETbplIgPBbwvqPKc+uljeA5gP+3nP8irdYt1mjQaDnlIcG+dw8OjAco4GXw==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.22.5", + "@babel/generator": "^7.22.7", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.22.7", + "@babel/types": "^7.22.5", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz", + "integrity": "sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@emotion/babel-plugin": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz", + "integrity": "sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/runtime": "^7.18.3", + "@emotion/hash": "^0.9.1", + "@emotion/memoize": "^0.8.1", + "@emotion/serialize": "^1.1.2", + "babel-plugin-macros": "^3.1.0", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^4.0.0", + "find-root": "^1.1.0", + "source-map": "^0.5.7", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/cache": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz", + "integrity": "sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==", + "license": "MIT", + "dependencies": { + "@emotion/memoize": "^0.8.1", + "@emotion/sheet": "^1.2.2", + "@emotion/utils": "^1.2.1", + "@emotion/weak-memoize": "^0.3.1", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/hash": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz", + "integrity": "sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==", + "license": "MIT" + }, + "node_modules/@emotion/is-prop-valid": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz", + "integrity": "sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==", + "license": "MIT", + "dependencies": { + "@emotion/memoize": "^0.8.1" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz", + "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==", + "license": "MIT" + }, + "node_modules/@emotion/react": { + "version": "11.11.1", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.11.1.tgz", + "integrity": "sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.11.0", + "@emotion/cache": "^11.11.0", + "@emotion/serialize": "^1.1.2", + "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", + "@emotion/utils": "^1.2.1", + "@emotion/weak-memoize": "^0.3.1", + "hoist-non-react-statics": "^3.3.1" + }, + "peerDependencies": { + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/serialize": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.2.tgz", + "integrity": "sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA==", + "license": "MIT", + "dependencies": { + "@emotion/hash": "^0.9.1", + "@emotion/memoize": "^0.8.1", + "@emotion/unitless": "^0.8.1", + "@emotion/utils": "^1.2.1", + "csstype": "^3.0.2" + } + }, + "node_modules/@emotion/sheet": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz", + "integrity": "sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==", + "license": "MIT" + }, + "node_modules/@emotion/styled": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz", + "integrity": "sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.11.0", + "@emotion/is-prop-valid": "^1.2.1", + "@emotion/serialize": "^1.1.2", + "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", + "@emotion/utils": "^1.2.1" + }, + "peerDependencies": { + "@emotion/react": "^11.0.0-rc.0", + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/unitless": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz", + "integrity": "sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==", + "license": "MIT" + }, + "node_modules/@emotion/use-insertion-effect-with-fallbacks": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz", + "integrity": "sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==", + "license": "MIT", + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/@emotion/utils": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz", + "integrity": "sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==", + "license": "MIT" + }, + "node_modules/@emotion/weak-memoize": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz", + "integrity": "sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==", + "license": "MIT" + }, + "node_modules/@esbuild-plugins/node-globals-polyfill": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.2.3.tgz", + "integrity": "sha512-r3MIryXDeXDOZh7ih1l/yE9ZLORCd5e8vWg02azWRGj5SPTuoh69A2AIyn0Z31V/kHBfZ4HgWJ+OK3GTTwLmnw==", + "license": "ISC", + "peerDependencies": { + "esbuild": "*" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.16.tgz", + "integrity": "sha512-aBxruWCII+OtluORR/KvisEw0ALuw/qDQWvkoosA+c/ngC/Kwk0lLaZ+B++LLS481/VdydB2u6tYpWxUfnLAIw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.1.tgz", + "integrity": "sha512-O7x6dMstWLn2ktjcoiNLDkAGG2EjveHL+Vvc+n0fXumkJYAcSqcVYKtwDU+hDZ0uDUsnUagSYaZrOLAYE8un1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz", + "integrity": "sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz", + "integrity": "sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@hookform/resolvers": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-3.3.4.tgz", + "integrity": "sha512-o5cgpGOuJYrd+iMKvkttOclgwRW86EsWJZZRC23prf0uU2i48Htq4PuT73AVb9ionFyZrwYEITuOFGF+BydEtQ==", + "license": "MIT", + "peerDependencies": { + "react-hook-form": "^7.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", + "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.18", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", + "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "license": "MIT" + }, + "node_modules/@mui/base": { + "version": "5.0.0-beta.8", + "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.8.tgz", + "integrity": "sha512-b4vVjMZx5KzzEMf4arXKoeV5ZegAMOoPwoy1vfUBwhvXc2QtaaAyBp50U7OA2L06Leubc1A+lEp3eqwZoFn87g==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.22.6", + "@emotion/is-prop-valid": "^1.2.1", + "@mui/types": "^7.2.4", + "@mui/utils": "^5.14.1", + "@popperjs/core": "^2.11.8", + "clsx": "^1.2.1", + "prop-types": "^15.8.1", + "react-is": "^18.2.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/core-downloads-tracker": { + "version": "5.14.1", + "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.14.1.tgz", + "integrity": "sha512-mIa1WmDmNr1LoupV1Rbxt9bTFKMbIn10RHG1bnZ/FJCkAYpuU/D4n+R+ttiycgcZNngU++zyh/OQeJblzbQPzg==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + } + }, + "node_modules/@mui/material": { + "version": "5.14.1", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.14.1.tgz", + "integrity": "sha512-WtsgYuageTunLfxH3Ri+o1RuQTFImtRHxMcVNyD0Hhd2/znjW6KODNz0XfjvLRnNCAynBxZNiflcoIBW40h9PQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.22.6", + "@mui/base": "5.0.0-beta.8", + "@mui/core-downloads-tracker": "^5.14.1", + "@mui/system": "^5.14.1", + "@mui/types": "^7.2.4", + "@mui/utils": "^5.14.1", + "@types/react-transition-group": "^4.4.6", + "clsx": "^1.2.1", + "csstype": "^3.1.2", + "prop-types": "^15.8.1", + "react-is": "^18.2.0", + "react-transition-group": "^4.4.5" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/private-theming": { + "version": "5.13.7", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.13.7.tgz", + "integrity": "sha512-qbSr+udcij5F9dKhGX7fEdx2drXchq7htLNr2Qg2Ma+WJ6q0ERlEqGSBiPiVDJkptcjeVL4DGmcf1wl5+vD4EA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.22.5", + "@mui/utils": "^5.13.7", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/styled-engine": { + "version": "5.13.2", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.13.2.tgz", + "integrity": "sha512-VCYCU6xVtXOrIN8lcbuPmoG+u7FYuOERG++fpY74hPpEWkyFQG97F+/XfTQVYzlR2m7nPjnwVUgATcTCMEaMvw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.21.0", + "@emotion/cache": "^11.11.0", + "csstype": "^3.1.2", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@emotion/react": "^11.4.1", + "@emotion/styled": "^11.3.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + } + } + }, + "node_modules/@mui/system": { + "version": "5.14.1", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.14.1.tgz", + "integrity": "sha512-u+xlsU34Jdkgx1CxmBnIC4Y08uPdVX5iEd3S/1dggDFtOGp+Lj8xmKRJAQ8PJOOJLOh8pDwaZx4AwXikL4l1QA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.22.6", + "@mui/private-theming": "^5.13.7", + "@mui/styled-engine": "^5.13.2", + "@mui/types": "^7.2.4", + "@mui/utils": "^5.14.1", + "clsx": "^1.2.1", + "csstype": "^3.1.2", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/types": { + "version": "7.2.4", + "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.4.tgz", + "integrity": "sha512-LBcwa8rN84bKF+f5sDyku42w1NTxaPgPyYKODsh01U1fVstTClbUoSA96oyRBnSNyEiAVjKm6Gwx9vjR+xyqHA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/utils": { + "version": "5.14.1", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.14.1.tgz", + "integrity": "sha512-39KHKK2JeqRmuUcLDLwM+c2XfVC136C5/yUyQXmO2PVbOb2Bol4KxtkssEqCbTwg87PSCG3f1Tb0keRsK7cVGw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.22.6", + "@types/prop-types": "^15.7.5", + "@types/react-is": "^18.2.1", + "prop-types": "^15.8.1", + "react-is": "^18.2.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "react": "^17.0.0 || ^18.0.0" + } + }, + "node_modules/@nicolo-ribaudo/chokidar-2": { + "version": "2.1.8-no-fsevents.3", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.3.tgz", + "integrity": "sha512-s88O1aVtXftvp5bCPB7WnmXc5IwOZZ7YPuwNPt+GtOOXpPvad1LfbmjYv+qII7zP6RU2QGnqve27dnLycEnyEQ==", + "license": "MIT", + "optional": true + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@orbs-network/ton-access": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@orbs-network/ton-access/-/ton-access-2.3.3.tgz", + "integrity": "sha512-b1miCPts7wBG9JKYgzXIRZQm/LMy5Uk1mNK8NzlcXHL3HRHJkkFbuYJGuj3IkWCiIicW3Ipp4sYnn3Fwo4oB0g==", + "license": "MIT", + "dependencies": { + "isomorphic-fetch": "^3.0.0" + } + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@remix-run/router": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.7.2.tgz", + "integrity": "sha512-7Lcn7IqGMV+vizMPoEl5F0XDshcdDYtMI6uJLQdQz5CfZAwy3vvGKYSUk789qndt5dEC4HfSjviSYlSoHGL2+A==", + "license": "MIT", + "engines": { + "node": ">=14" + } + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz", + "integrity": "sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@sindresorhus/is": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@smithy/types": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-1.2.0.tgz", + "integrity": "sha512-z1r00TvBqF3dh4aHhya7nz1HhvCg4TRmw51fjMrh5do3h+ngSstt/yKlNbHeb9QxJmFbmN8KEVSWgb1bRvfEoA==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "license": "MIT", + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@ton/core": { + "version": "0.58.1", + "resolved": "https://registry.npmjs.org/@ton/core/-/core-0.58.1.tgz", + "integrity": "sha512-zydh42iT6E3U3Ky/DhTFqJMN/ycKKzbsHASY257Qr2sZn97G/MOcHFizPfMnbJJgx0H9iHX6mdyMvp1IKBVAFA==", + "license": "MIT", + "dependencies": { + "symbol.inspect": "1.0.1" + }, + "peerDependencies": { + "@ton/crypto": ">=3.2.0" + } + }, + "node_modules/@ton/crypto": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@ton/crypto/-/crypto-3.3.0.tgz", + "integrity": "sha512-/A6CYGgA/H36OZ9BbTaGerKtzWp50rg67ZCH2oIjV1NcrBaCK9Z343M+CxedvM7Haf3f/Ee9EhxyeTp0GKMUpA==", + "license": "MIT", + "dependencies": { + "@ton/crypto-primitives": "2.1.0", + "jssha": "3.2.0", + "tweetnacl": "1.0.3" + } + }, + "node_modules/@ton/crypto-primitives": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@ton/crypto-primitives/-/crypto-primitives-2.1.0.tgz", + "integrity": "sha512-PQesoyPgqyI6vzYtCXw4/ZzevePc4VGcJtFwf08v10OevVJHVfW238KBdpj1kEDQkxWLeuNHEpTECNFKnP6tow==", + "license": "MIT", + "dependencies": { + "jssha": "3.2.0" + } + }, + "node_modules/@ton/test-utils": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@ton/test-utils/-/test-utils-0.4.2.tgz", + "integrity": "sha512-fthY8Nrlmy8jnOl/vx6yjeKzzu62ZXMe7ej9Xg7rb4d3511V7dVQK+nw4YLSW5+dD/6WT03dFuNZXnuMYy5fHw==", + "dev": true, + "license": "MIT", + "dependencies": { + "node-inspect-extracted": "^2.0.0" + }, + "peerDependencies": { + "@jest/globals": "*", + "@ton/core": ">=0.49.2", + "chai": "*" + }, + "peerDependenciesMeta": { + "@jest/globals": { + "optional": true + }, + "chai": { + "optional": true + } + } + }, + "node_modules/@ton/ton": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/@ton/ton/-/ton-15.0.0.tgz", + "integrity": "sha512-0xBivkN0u0+vczt3mKJrx5yqkCxRR00wM8gXCmN/eOzzHKXRFWDEjJp8EEs5J/mq1Op/OhCOFExmOZkr58wgOA==", + "license": "MIT", + "dependencies": { + "axios": "^1.6.7", + "dataloader": "^2.0.0", + "symbol.inspect": "1.0.1", + "teslabot": "^1.3.0", + "zod": "^3.21.4" + }, + "peerDependencies": { + "@ton/core": ">=0.56.0", + "@ton/crypto": ">=3.2.0" + } + }, + "node_modules/@ton/ton/node_modules/axios": { + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", + "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/@ton/ton/node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/@tonconnect/isomorphic-eventsource": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@tonconnect/isomorphic-eventsource/-/isomorphic-eventsource-0.0.2.tgz", + "integrity": "sha512-B4UoIjPi0QkvIzZH5fV3BQLWrqSYABdrzZQSI9sJA9aA+iC0ohOzFwVVGXanlxeDAy1bcvPbb29f6sVUk0UnnQ==", + "license": "Apache-2.0", + "dependencies": { + "eventsource": "^2.0.2" + } + }, + "node_modules/@tonconnect/isomorphic-fetch": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/@tonconnect/isomorphic-fetch/-/isomorphic-fetch-0.0.3.tgz", + "integrity": "sha512-jIg5nTrDwnite4fXao3dD83eCpTvInTjZon/rZZrIftIegh4XxyVb5G2mpMqXrVGk1e8SVXm3Kj5OtfMplQs0w==", + "license": "Apache-2.0", + "dependencies": { + "node-fetch": "^2.6.9" + } + }, + "node_modules/@tonconnect/isomorphic-fetch/node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "license": "MIT", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/@tonconnect/protocol": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/@tonconnect/protocol/-/protocol-2.2.6.tgz", + "integrity": "sha512-kyoDz5EqgsycYP+A+JbVsAUYHNT059BCrK+m0pqxykMODwpziuSAXfwAZmHcg8v7NB9VKYbdFY55xKeXOuEd0w==", + "license": "Apache-2.0", + "dependencies": { + "tweetnacl": "^1.0.3", + "tweetnacl-util": "^0.15.1" + } + }, + "node_modules/@tonconnect/sdk": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@tonconnect/sdk/-/sdk-3.0.5.tgz", + "integrity": "sha512-ow0qnN4s3iQ/r2uXobZ7YzdQBtan/36CgCT9IP35G07g38UxsUXwzw8ANmJTDj/JPiQcIKuYBMfIwIX9zLM0wg==", + "license": "Apache-2.0", + "dependencies": { + "@tonconnect/isomorphic-eventsource": "^0.0.2", + "@tonconnect/isomorphic-fetch": "^0.0.3", + "@tonconnect/protocol": "^2.2.6" + } + }, + "node_modules/@tonconnect/ui": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@tonconnect/ui/-/ui-2.0.9.tgz", + "integrity": "sha512-ZxofTBf81NqrxyD0ybI8AuFHN11uKVg/00xTDFhP5FoPB8rYC7En9qE2VJ6IvwvtTpmh8jspi2ancOHUMBoCQA==", + "license": "Apache-2.0", + "dependencies": { + "@tonconnect/sdk": "3.0.5", + "classnames": "^2.3.2", + "deepmerge": "^4.2.2", + "ua-parser-js": "^1.0.35" + } + }, + "node_modules/@tonconnect/ui-react": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@tonconnect/ui-react/-/ui-react-2.0.9.tgz", + "integrity": "sha512-wN7tEZpQiRYSUcdNAxFsDkk5TYo8krIu00ZLE1R5kXyr+XpO120jOmTEweBSXvIzTgEVkD/PxDZbBQQxRTXsUw==", + "license": "Apache-2.0", + "dependencies": { + "@tonconnect/ui": "2.0.9" + }, + "peerDependencies": { + "react": ">=17.0.0", + "react-dom": ">=17.0.0" + } + }, + "node_modules/@types/cacheable-request": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", + "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==", + "license": "MIT", + "dependencies": { + "@types/http-cache-semantics": "*", + "@types/keyv": "^3.1.4", + "@types/node": "*", + "@types/responselike": "^1.0.0" + } + }, + "node_modules/@types/d3-array": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.2.1.tgz", + "integrity": "sha512-Y2Jn2idRrLzUfAKV2LyRImR+y4oa2AntrgID95SHJxuMUrkNXmanDSed71sRNZysveJVt1hLLemQZIady0FpEg==", + "license": "MIT" + }, + "node_modules/@types/d3-color": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.3.tgz", + "integrity": "sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A==", + "license": "MIT" + }, + "node_modules/@types/d3-ease": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.2.tgz", + "integrity": "sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA==", + "license": "MIT" + }, + "node_modules/@types/d3-interpolate": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz", + "integrity": "sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA==", + "license": "MIT", + "dependencies": { + "@types/d3-color": "*" + } + }, + "node_modules/@types/d3-path": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.1.0.tgz", + "integrity": "sha512-P2dlU/q51fkOc/Gfl3Ul9kicV7l+ra934qBFXCFhrZMOL6du1TM0pm1ThYvENukyOn5h9v+yMJ9Fn5JK4QozrQ==", + "license": "MIT" + }, + "node_modules/@types/d3-scale": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.8.tgz", + "integrity": "sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ==", + "license": "MIT", + "dependencies": { + "@types/d3-time": "*" + } + }, + "node_modules/@types/d3-shape": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.6.tgz", + "integrity": "sha512-5KKk5aKGu2I+O6SONMYSNflgiP0WfZIQvVUMan50wHsLG1G94JlxEVnCpQARfTtzytuY0p/9PXXZb3I7giofIA==", + "license": "MIT", + "dependencies": { + "@types/d3-path": "*" + } + }, + "node_modules/@types/d3-time": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.3.tgz", + "integrity": "sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw==", + "license": "MIT" + }, + "node_modules/@types/d3-timer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.2.tgz", + "integrity": "sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw==", + "license": "MIT" + }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/hoist-non-react-statics": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz", + "integrity": "sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/react": "*", + "hoist-non-react-statics": "^3.3.0" + } + }, + "node_modules/@types/http-cache-semantics": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", + "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==", + "license": "MIT" + }, + "node_modules/@types/json-schema": { + "version": "7.0.12", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz", + "integrity": "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/keyv": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", + "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/node": { + "version": "20.12.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.8.tgz", + "integrity": "sha512-NU0rJLJnshZWdE/097cdCBbyW1h4hEg0xpovcoAQYHl8dnEyp/NAOiE45pvc+Bd1Dt+2r94v2eGFpQJ4R7g+2w==", + "license": "MIT", + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "license": "MIT" + }, + "node_modules/@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==", + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "18.2.16", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.16.tgz", + "integrity": "sha512-LLFWr12ZhBJ4YVw7neWLe6Pk7Ey5R9OCydfuMsz1L8bZxzaawJj2p06Q8/EFEHDeTBQNFLF62X+CG7B2zIyu0Q==", + "license": "MIT", + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.2.7", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.7.tgz", + "integrity": "sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/react-is": { + "version": "18.2.1", + "resolved": "https://registry.npmjs.org/@types/react-is/-/react-is-18.2.1.tgz", + "integrity": "sha512-wyUkmaaSZEzFZivD8F2ftSyAfk6L+DfFliVj/mYdOXbVjRcS87fQJLTnhk6dRZPuJjI+9g6RZJO4PNCngUrmyw==", + "license": "MIT", + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/react-transition-group": { + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.6.tgz", + "integrity": "sha512-VnCdSxfcm08KjsJVQcfBmhEQAPnLB8G08hAxn39azX1qYBQ/5RVQuoHuKIcfKOdncuaUvEpFKFzEvbtIMsfVew==", + "license": "MIT", + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/responselike": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz", + "integrity": "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/scheduler": { + "version": "0.16.3", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz", + "integrity": "sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==", + "license": "MIT" + }, + "node_modules/@types/semver": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz", + "integrity": "sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/styled-components": { + "version": "5.1.26", + "resolved": "https://registry.npmjs.org/@types/styled-components/-/styled-components-5.1.26.tgz", + "integrity": "sha512-KuKJ9Z6xb93uJiIyxo/+ksS7yLjS1KzG6iv5i78dhVg/X3u5t1H7juRWqVmodIdz6wGVaIApo1u01kmFRdJHVw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/hoist-non-react-statics": "*", + "@types/react": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/stylis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@types/stylis/-/stylis-4.2.0.tgz", + "integrity": "sha512-n4sx2bqL0mW1tvDf/loQ+aMX7GQD3lc3fkCMC55VFNDu/vBOabO+LTIeXKM14xK0ppk5TUGcWRjiSpIlUpghKw==", + "license": "MIT" + }, + "node_modules/@types/yauzl": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz", + "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", + "license": "MIT", + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.2.0.tgz", + "integrity": "sha512-rClGrMuyS/3j0ETa1Ui7s6GkLhfZGKZL3ZrChLeAiACBE/tRc1wq8SNZESUuluxhLj9FkUefRs2l6bCIArWBiQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.2.0", + "@typescript-eslint/type-utils": "6.2.0", + "@typescript-eslint/utils": "6.2.0", + "@typescript-eslint/visitor-keys": "6.2.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "natural-compare-lite": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.2.0.tgz", + "integrity": "sha512-igVYOqtiK/UsvKAmmloQAruAdUHihsOCvplJpplPZ+3h4aDkC/UKZZNKgB6h93ayuYLuEymU3h8nF1xMRbh37g==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/scope-manager": "6.2.0", + "@typescript-eslint/types": "6.2.0", + "@typescript-eslint/typescript-estree": "6.2.0", + "@typescript-eslint/visitor-keys": "6.2.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.2.0.tgz", + "integrity": "sha512-1ZMNVgm5nnHURU8ZSJ3snsHzpFeNK84rdZjluEVBGNu7jDymfqceB3kdIZ6A4xCfEFFhRIB6rF8q/JIqJd2R0Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "6.2.0", + "@typescript-eslint/visitor-keys": "6.2.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.2.0.tgz", + "integrity": "sha512-DnGZuNU2JN3AYwddYIqrVkYW0uUQdv0AY+kz2M25euVNlujcN2u+rJgfJsBFlUEzBB6OQkUqSZPyuTLf2bP5mw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/typescript-estree": "6.2.0", + "@typescript-eslint/utils": "6.2.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.2.0.tgz", + "integrity": "sha512-1nRRaDlp/XYJQLvkQJG5F3uBTno5SHPT7XVcJ5n1/k2WfNI28nJsvLakxwZRNY5spuatEKO7d5nZWsQpkqXwBA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.2.0.tgz", + "integrity": "sha512-Mts6+3HQMSM+LZCglsc2yMIny37IhUgp1Qe8yJUYVyO6rHP7/vN0vajKu3JvHCBIy8TSiKddJ/Zwu80jhnGj1w==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/types": "6.2.0", + "@typescript-eslint/visitor-keys": "6.2.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.2.0.tgz", + "integrity": "sha512-RCFrC1lXiX1qEZN8LmLrxYRhOkElEsPKTVSNout8DMzf8PeWoQG7Rxz2SadpJa3VSh5oYKGwt7j7X/VRg+Y3OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.2.0", + "@typescript-eslint/types": "6.2.0", + "@typescript-eslint/typescript-estree": "6.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.2.0.tgz", + "integrity": "sha512-QbaYUQVKKo9bgCzpjz45llCfwakyoxHetIy8CAvYCtd16Zu1KrpzNHofwF8kGkpPOxZB2o6kz+0nqH8ZkIzuoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "6.2.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@vercel/analytics": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@vercel/analytics/-/analytics-1.3.1.tgz", + "integrity": "sha512-xhSlYgAuJ6Q4WQGkzYTLmXwhYl39sWjoMA3nHxfkvG+WdBT25c563a7QhwwKivEOZtPJXifYHR1m2ihoisbWyA==", + "license": "MPL-2.0", + "dependencies": { + "server-only": "^0.0.1" + }, + "peerDependencies": { + "next": ">= 13", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "next": { + "optional": true + }, + "react": { + "optional": true + } + } + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.0.3.tgz", + "integrity": "sha512-pwXDog5nwwvSIzwrvYYmA2Ljcd/ZNlcsSG2Q9CNDBwnsd55UGAyr2doXtB5j+2uymRCnCfExlznzzSFbBRcoCg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.22.5", + "@babel/plugin-transform-react-jsx-self": "^7.22.5", + "@babel/plugin-transform-react-jsx-source": "^7.22.5", + "react-refresh": "^0.14.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0" + } + }, + "node_modules/@vitest/expect": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-1.6.0.tgz", + "integrity": "sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/spy": "1.6.0", + "@vitest/utils": "1.6.0", + "chai": "^4.3.10" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/runner": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-1.6.0.tgz", + "integrity": "sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/utils": "1.6.0", + "p-limit": "^5.0.0", + "pathe": "^1.1.1" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/snapshot": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.6.0.tgz", + "integrity": "sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "magic-string": "^0.30.5", + "pathe": "^1.1.1", + "pretty-format": "^29.7.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/spy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-1.6.0.tgz", + "integrity": "sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "tinyspy": "^2.2.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/utils": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-1.6.0.tgz", + "integrity": "sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==", + "dev": true, + "license": "MIT", + "dependencies": { + "diff-sequences": "^29.6.3", + "estree-walker": "^3.0.3", + "loupe": "^2.3.7", + "pretty-format": "^29.7.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/utils/node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/@vkruglikov/react-telegram-web-app": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@vkruglikov/react-telegram-web-app/-/react-telegram-web-app-2.1.1.tgz", + "integrity": "sha512-rIDAPVVDiZ7ektbTkjWmP88+xokYuE2Gjt5NCMkthsqcv1vzc9fUQOjvfFXA7i6Kob+5308acv2S3E3TdHR43A==", + "license": "MIT", + "peerDependencies": { + "react": "^18", + "react-dom": "^18" + } + }, + "node_modules/acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", + "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk/node_modules/acorn": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz", + "integrity": "sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "license": "ISC", + "optional": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "license": "MIT" + }, + "node_modules/axios": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.0.tgz", + "integrity": "sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ==", + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">=10", + "npm": ">=6" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz", + "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==", + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.4.2", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz", + "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==", + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.2", + "core-js-compat": "^3.31.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz", + "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==", + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "license": "MIT" + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.21.9", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz", + "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001503", + "electron-to-chromium": "^1.4.431", + "node-releases": "^2.0.12", + "update-browserslist-db": "^1.0.11" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/cac": { + "version": "6.7.14", + "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-lookup": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", + "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", + "license": "MIT", + "engines": { + "node": ">=10.6.0" + } + }, + "node_modules/cacheable-request": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz", + "integrity": "sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==", + "license": "MIT", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", + "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001517", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001517.tgz", + "integrity": "sha512-Vdhm5S11DaFVLlyiKu4hiUTkpZu+y1KA/rZZqVQfOD5YdDT/eQKlkt7NaE0WGOFgX32diqt9MiP9CAiFeRklaA==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chai": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", + "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "assertion-error": "^1.1.0", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", + "pathval": "^1.1.1", + "type-detect": "^4.0.8" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/check-error": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-func-name": "^2.0.2" + }, + "engines": { + "node": "*" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "license": "MIT", + "optional": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/classnames": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==", + "license": "MIT" + }, + "node_modules/client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==", + "license": "MIT" + }, + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "license": "MIT", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clone-response/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "license": "MIT" + }, + "node_modules/confbox": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.7.tgz", + "integrity": "sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==", + "dev": true, + "license": "MIT" + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "license": "MIT" + }, + "node_modules/core-js-compat": { + "version": "3.31.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.31.1.tgz", + "integrity": "sha512-wIDWd2s5/5aJSdpOJHfSibxNODxoGoWOBHt8JSPB41NOE94M7kuTPZCYLOlTtuoXTsBPKobpJ6T+y0SSy5L9SA==", + "license": "MIT", + "dependencies": { + "browserslist": "^4.21.9" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "license": "MIT", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/cosmiconfig/node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "license": "ISC", + "engines": { + "node": ">= 6" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css-color-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", + "license": "ISC", + "engines": { + "node": ">=4" + } + }, + "node_modules/css-to-react-native": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", + "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", + "license": "MIT", + "dependencies": { + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" + } + }, + "node_modules/csstype": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", + "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==", + "license": "MIT" + }, + "node_modules/d3-array": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", + "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==", + "license": "ISC", + "dependencies": { + "internmap": "1 - 2" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-ease": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", + "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-format": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz", + "integrity": "sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "license": "ISC", + "dependencies": { + "d3-color": "1 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-path": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz", + "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-scale": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", + "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", + "license": "ISC", + "dependencies": { + "d3-array": "2.10.0 - 3", + "d3-format": "1 - 3", + "d3-interpolate": "1.2.0 - 3", + "d3-time": "2.1.1 - 3", + "d3-time-format": "2 - 4" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-shape": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", + "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==", + "license": "ISC", + "dependencies": { + "d3-path": "^3.1.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-time": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", + "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==", + "license": "ISC", + "dependencies": { + "d3-array": "2 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-time-format": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", + "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==", + "license": "ISC", + "dependencies": { + "d3-time": "1 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-timer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", + "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/dataloader": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/dataloader/-/dataloader-2.2.2.tgz", + "integrity": "sha512-8YnDaaf7N3k/q5HnTJVuzSyLETjoZjVmHc4AeKAzOvKHEFQKcn64OKBfzHYtE9zGjctNM7V9I0MfnUVLpi7M5g==", + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "license": "MIT", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js-light": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.1.tgz", + "integrity": "sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==", + "license": "MIT" + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "license": "MIT", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/deep-eql": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz", + "integrity": "sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-detect": "^4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-helpers": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", + "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.8.7", + "csstype": "^3.0.2" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.470", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.470.tgz", + "integrity": "sha512-zZM48Lmy2FKWgqyvsX9XK+J6FfP7aCDUFLmgooLJzA7v1agCs/sxSoBpTIwDLhmbhpx9yJIxj2INig/ncjJRqg==", + "license": "ISC" + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/esbuild": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.16.tgz", + "integrity": "sha512-1xLsOXrDqwdHxyXb/x/SOyg59jpf/SH7YMvU5RNSU7z3TInaASNJWNFJ6iRvLvLETZMasF3d1DdZLg7sgRimRQ==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.18.16", + "@esbuild/android-arm64": "0.18.16", + "@esbuild/android-x64": "0.18.16", + "@esbuild/darwin-arm64": "0.18.16", + "@esbuild/darwin-x64": "0.18.16", + "@esbuild/freebsd-arm64": "0.18.16", + "@esbuild/freebsd-x64": "0.18.16", + "@esbuild/linux-arm": "0.18.16", + "@esbuild/linux-arm64": "0.18.16", + "@esbuild/linux-ia32": "0.18.16", + "@esbuild/linux-loong64": "0.18.16", + "@esbuild/linux-mips64el": "0.18.16", + "@esbuild/linux-ppc64": "0.18.16", + "@esbuild/linux-riscv64": "0.18.16", + "@esbuild/linux-s390x": "0.18.16", + "@esbuild/linux-x64": "0.18.16", + "@esbuild/netbsd-x64": "0.18.16", + "@esbuild/openbsd-x64": "0.18.16", + "@esbuild/sunos-x64": "0.18.16", + "@esbuild/win32-arm64": "0.18.16", + "@esbuild/win32-ia32": "0.18.16", + "@esbuild/win32-x64": "0.18.16" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz", + "integrity": "sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.4.0", + "@eslint/eslintrc": "^2.1.0", + "@eslint/js": "8.44.0", + "@humanwhocodes/config-array": "^0.11.10", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.0", + "eslint-visitor-keys": "^3.4.1", + "espree": "^9.6.0", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" + } + }, + "node_modules/eslint-plugin-react-refresh": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.3.tgz", + "integrity": "sha512-Hh0wv8bUNY877+sI0BlCUlsS0TYYQqvzEwJsJJPM2WF4RnTStSnSR3zdJYa2nPOJgg3UghXi54lVyMSmpCalzA==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "eslint": ">=7" + } + }, + "node_modules/eslint-plugin-simple-import-sort": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-simple-import-sort/-/eslint-plugin-simple-import-sort-12.0.0.tgz", + "integrity": "sha512-8o0dVEdAkYap0Cn5kNeklaKcT1nUsa3LITWEuFk3nJifOoD+5JQGoyDUW2W/iPWwBsNBJpyJS9y4je/BgxLcyQ==", + "license": "MIT", + "peerDependencies": { + "eslint": ">=5.0.0" + } + }, + "node_modules/eslint-scope": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.1.tgz", + "integrity": "sha512-CvefSOsDdaYYvxChovdrPo/ZGt8d5lrJWleAc1diXRKhHGiTYEI26cvo8Kle/wGnsizoCJjK73FMg1/IkIwiNA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", + "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", + "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", + "license": "MIT" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "license": "MIT" + }, + "node_modules/eventsource": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-2.0.2.tgz", + "integrity": "sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA==", + "license": "MIT", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/execa/node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "license": "BSD-2-Clause", + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-equals": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-5.0.1.tgz", + "integrity": "sha512-WF1Wi8PwwSY7/6Kx0vKXtw8RwuSGoM1bvDaJbu7MxDlR1vovZjIAKrnzyrThgAjm6JDTu0fVgWXDlMGspodfoQ==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "license": "MIT", + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", + "license": "MIT" + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/framer-motion": { + "version": "10.16.4", + "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-10.16.4.tgz", + "integrity": "sha512-p9V9nGomS3m6/CALXqv6nFGMuFOxbWsmaOrdmhyQimMIlLl3LC7h7l86wge/Js/8cRu5ktutS/zlzgR7eBOtFA==", + "license": "MIT", + "dependencies": { + "tslib": "^2.4.0" + }, + "optionalDependencies": { + "@emotion/is-prop-valid": "^0.8.2" + }, + "peerDependencies": { + "react": "^18.0.0", + "react-dom": "^18.0.0" + }, + "peerDependenciesMeta": { + "react": { + "optional": true + }, + "react-dom": { + "optional": true + } + } + }, + "node_modules/framer-motion/node_modules/@emotion/is-prop-valid": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", + "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==", + "license": "MIT", + "optional": true, + "dependencies": { + "@emotion/memoize": "0.7.4" + } + }, + "node_modules/framer-motion/node_modules/@emotion/memoize": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", + "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==", + "license": "MIT", + "optional": true + }, + "node_modules/framer-motion/node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "license": "0BSD" + }, + "node_modules/fs-readdir-recursive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", + "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", + "license": "MIT" + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "license": "MIT" + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-func-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "license": "MIT", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "devOptional": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/goober": { + "version": "2.1.14", + "resolved": "https://registry.npmjs.org/goober/-/goober-2.1.14.tgz", + "integrity": "sha512-4UpC0NdGyAFqLNPnhCT2iHpza2q+RAY3GV85a/mRPdzyPQMsj0KmMMuetdIkzWRbJ+Hgau1EZztq8ImmiMGhsg==", + "license": "MIT", + "peerDependencies": { + "csstype": "^3.0.10" + } + }, + "node_modules/got": { + "version": "11.8.6", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", + "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", + "license": "MIT", + "dependencies": { + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.2", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=10.19.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true, + "license": "MIT" + }, + "node_modules/hamt_plus": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/hamt_plus/-/hamt_plus-1.0.2.tgz", + "integrity": "sha512-t2JXKaehnMb9paaYA7J0BX8QQAY8lwfQ9Gjf4pg/mk4krt+cmwmU652HOoWonf+7+EQV97ARPMhhVgU1ra2GhA==", + "license": "MIT" + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "license": "BSD-3-Clause", + "dependencies": { + "react-is": "^16.7.0" + } + }, + "node_modules/hoist-non-react-statics/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "license": "MIT" + }, + "node_modules/hpagent": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/hpagent/-/hpagent-0.1.2.tgz", + "integrity": "sha512-ePqFXHtSQWAFXYmj+JtOTHr84iNrII4/QRlAAPPE+zqnKy4xJo7Ie1Y4kC7AdB+LxLxSTTzBMASsEcy0q8YyvQ==", + "license": "MIT", + "optional": true + }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "license": "BSD-2-Clause" + }, + "node_modules/http2-wrapper": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", + "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "license": "MIT", + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=16.17.0" + } + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" + }, + "node_modules/internmap": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", + "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "license": "MIT" + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "license": "MIT", + "optional": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", + "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", + "license": "MIT", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/isomorphic-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", + "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", + "license": "MIT", + "dependencies": { + "node-fetch": "^2.6.1", + "whatwg-fetch": "^3.4.1" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "license": "MIT" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jssha": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jssha/-/jssha-3.2.0.tgz", + "integrity": "sha512-QuruyBENDWdN4tZwJbQq7/eAK85FqrI4oDbXjy5IBhYD+2pTJyBUWZe8ctWaCkrV0gy6AaelgOZZBMeswEa/6Q==", + "license": "BSD-3-Clause", + "engines": { + "node": "*" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "license": "MIT" + }, + "node_modules/local-pkg": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz", + "integrity": "sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mlly": "^1.4.2", + "pkg-types": "^1.0.3" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "license": "MIT" + }, + "node_modules/lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==", + "license": "MIT" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "license": "MIT" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/loupe": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", + "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-func-name": "^2.0.1" + } + }, + "node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/magic-string": { + "version": "0.30.10", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz", + "integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.15" + } + }, + "node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "license": "MIT", + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true, + "license": "MIT" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/mlly": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.1.tgz", + "integrity": "sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.11.3", + "pathe": "^1.1.2", + "pkg-types": "^1.1.1", + "ufo": "^1.5.3" + } + }, + "node_modules/mlly/node_modules/acorn": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz", + "integrity": "sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true, + "license": "MIT" + }, + "node_modules/ngrok": { + "version": "5.0.0-beta.2", + "resolved": "https://registry.npmjs.org/ngrok/-/ngrok-5.0.0-beta.2.tgz", + "integrity": "sha512-UzsyGiJ4yTTQLCQD11k1DQaMwq2/SsztBg2b34zAqcyjS25qjDpogMKPaCKHwe/APRTHeel3iDXcVctk5CNaCQ==", + "hasInstallScript": true, + "license": "BSD-2-Clause", + "dependencies": { + "extract-zip": "^2.0.1", + "got": "^11.8.5", + "lodash.clonedeep": "^4.5.0", + "uuid": "^7.0.0 || ^8.0.0", + "yaml": "^2.2.2" + }, + "bin": { + "ngrok": "bin/ngrok" + }, + "engines": { + "node": ">=14.2" + }, + "optionalDependencies": { + "hpagent": "^0.1.2" + } + }, + "node_modules/node-fetch": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz", + "integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==", + "license": "MIT", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-inspect-extracted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-inspect-extracted/-/node-inspect-extracted-2.0.2.tgz", + "integrity": "sha512-8qm9+tu/GmbA/uWQRs6ad8KstyhH94a0pXpRVGHaJ9wHlJbetCYoCwXbKILaaMcE+wgbgpOpzcCnipkL8vTqxA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + } + }, + "node_modules/node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-run-path": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", + "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-run-path/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/p-limit": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-5.0.0.tgz", + "integrity": "sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "license": "MIT" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/pathval": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-types": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.1.2.tgz", + "integrity": "sha512-VEGf1he2DR5yowYRl0XJhWJq5ktm9gYIsH+y8sNJpHlxch7JPDaufgrsl4vYjd9hMUY8QVjoNncKbow9I7exyA==", + "dev": true, + "license": "MIT", + "dependencies": { + "confbox": "^0.1.7", + "mlly": "^1.7.1", + "pathe": "^1.1.2" + } + }, + "node_modules/postcss": { + "version": "8.4.27", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.27.tgz", + "integrity": "sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "license": "MIT" + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.2.tgz", + "integrity": "sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA==", + "dev": true, + "license": "MIT", + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/pretty-format/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/prop-types/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "license": "MIT" + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "license": "MIT" + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.0" + }, + "peerDependencies": { + "react": "^18.2.0" + } + }, + "node_modules/react-dropdown": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/react-dropdown/-/react-dropdown-1.11.0.tgz", + "integrity": "sha512-E2UWetRPxNdIhQahXw6b984ME7WmcgDj9AEAjrtS/oyLCFVo+2qkCfcS06C22JR0Zj+YLnygwv0Ozf6VKKDq7g==", + "dependencies": { + "classnames": "^2.2.3" + }, + "peerDependencies": { + "react": "^0.14.7 || ^15.0.0-0 || ^16.0.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^0.14.7 || ^15.0.0-0 || ^16.0.0 || ^17.0.0|| ^18.0.0" + } + }, + "node_modules/react-hook-form": { + "version": "7.51.4", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.51.4.tgz", + "integrity": "sha512-V14i8SEkh+V1gs6YtD0hdHYnoL4tp/HX/A45wWQN15CYr9bFRmmRdYStSO5L65lCCZRF+kYiSKhm9alqbcdiVA==", + "license": "MIT", + "engines": { + "node": ">=12.22.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/react-hook-form" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17 || ^18" + } + }, + "node_modules/react-hot-toast": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/react-hot-toast/-/react-hot-toast-2.4.1.tgz", + "integrity": "sha512-j8z+cQbWIM5LY37pR6uZR6D4LfseplqnuAO4co4u8917hBUvXlEqyP1ZzqVLcqoyUesZZv/ImreoCeHVDpE5pQ==", + "license": "MIT", + "dependencies": { + "goober": "^2.1.10" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": ">=16", + "react-dom": ">=16" + } + }, + "node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "license": "MIT" + }, + "node_modules/react-loader-spinner": { + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/react-loader-spinner/-/react-loader-spinner-6.1.6.tgz", + "integrity": "sha512-x5h1Jcit7Qn03MuKlrWcMG9o12cp9SNDVHVJTNRi9TgtGPKcjKiXkou4NRfLAtXaFB3+Z8yZsVzONmPzhv2ErA==", + "license": "MIT", + "dependencies": { + "react-is": "^18.2.0", + "styled-components": "^6.1.2" + }, + "engines": { + "node": ">= 12" + }, + "peerDependencies": { + "react": "^16.0.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.0.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/react-loader-spinner/node_modules/@emotion/unitless": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.0.tgz", + "integrity": "sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw==", + "license": "MIT" + }, + "node_modules/react-loader-spinner/node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/react-loader-spinner/node_modules/styled-components": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-6.1.8.tgz", + "integrity": "sha512-PQ6Dn+QxlWyEGCKDS71NGsXoVLKfE1c3vApkvDYS5KAK+V8fNWGhbSUEo9Gg2iaID2tjLXegEW3bZDUGpofRWw==", + "license": "MIT", + "dependencies": { + "@emotion/is-prop-valid": "1.2.1", + "@emotion/unitless": "0.8.0", + "@types/stylis": "4.2.0", + "css-to-react-native": "3.2.0", + "csstype": "3.1.2", + "postcss": "8.4.31", + "shallowequal": "1.1.0", + "stylis": "4.3.1", + "tslib": "2.5.0" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/styled-components" + }, + "peerDependencies": { + "react": ">= 16.8.0", + "react-dom": ">= 16.8.0" + } + }, + "node_modules/react-loader-spinner/node_modules/stylis": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.1.tgz", + "integrity": "sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ==", + "license": "MIT" + }, + "node_modules/react-loader-spinner/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", + "license": "0BSD" + }, + "node_modules/react-number-format": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/react-number-format/-/react-number-format-5.3.4.tgz", + "integrity": "sha512-2hHN5mbLuCDUx19bv0Q8wet67QqYK6xmtLQeY5xx+h7UXiMmRtaCwqko4mMPoKXLc6xAzwRrutg8XbTRlsfjRg==", + "license": "MIT", + "dependencies": { + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "react": "^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/react-refresh": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz", + "integrity": "sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-router": { + "version": "6.14.2", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.14.2.tgz", + "integrity": "sha512-09Zss2dE2z+T1D03IheqAFtK4UzQyX8nFPWx6jkwdYzGLXd5ie06A6ezS2fO6zJfEb/SpG6UocN2O1hfD+2urQ==", + "license": "MIT", + "dependencies": { + "@remix-run/router": "1.7.2" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/react-router-dom": { + "version": "6.14.2", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.14.2.tgz", + "integrity": "sha512-5pWX0jdKR48XFZBuJqHosX3AAHjRAzygouMTyimnBPOLdY3WjzUSKhus2FVMihUFWzeLebDgr4r8UeQFAct7Bg==", + "license": "MIT", + "dependencies": { + "@remix-run/router": "1.7.2", + "react-router": "6.14.2" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/react-smooth": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/react-smooth/-/react-smooth-4.0.1.tgz", + "integrity": "sha512-OE4hm7XqR0jNOq3Qmk9mFLyd6p2+j6bvbPJ7qlB7+oo0eNcL2l7WQzG6MBnT3EXY6xzkLMUBec3AfewJdA0J8w==", + "license": "MIT", + "dependencies": { + "fast-equals": "^5.0.1", + "prop-types": "^15.8.1", + "react-transition-group": "^4.4.5" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/react-toastify": { + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/react-toastify/-/react-toastify-10.0.5.tgz", + "integrity": "sha512-mNKt2jBXJg4O7pSdbNUfDdTsK9FIdikfsIE/yUCxbAEXl4HMyJaivrVFcn3Elvt5xvCQYhUZm+hqTIu1UXM3Pw==", + "license": "MIT", + "dependencies": { + "clsx": "^2.1.0" + }, + "peerDependencies": { + "react": ">=18", + "react-dom": ">=18" + } + }, + "node_modules/react-toastify/node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", + "license": "BSD-3-Clause", + "dependencies": { + "@babel/runtime": "^7.5.5", + "dom-helpers": "^5.0.1", + "loose-envify": "^1.4.0", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": ">=16.6.0", + "react-dom": ">=16.6.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "license": "MIT", + "optional": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/recharts": { + "version": "2.12.7", + "resolved": "https://registry.npmjs.org/recharts/-/recharts-2.12.7.tgz", + "integrity": "sha512-hlLJMhPQfv4/3NBSAyq3gzGg4h2v69RJh6KU7b3pXYNNAELs9kEoXOjbkxdXpALqKBoVmVptGfLpxdaVYqjmXQ==", + "license": "MIT", + "dependencies": { + "clsx": "^2.0.0", + "eventemitter3": "^4.0.1", + "lodash": "^4.17.21", + "react-is": "^16.10.2", + "react-smooth": "^4.0.0", + "recharts-scale": "^0.4.4", + "tiny-invariant": "^1.3.1", + "victory-vendor": "^36.6.8" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": "^16.0.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.0.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/recharts-scale": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/recharts-scale/-/recharts-scale-0.4.5.tgz", + "integrity": "sha512-kivNFO+0OcUNu7jQquLXAxz1FIwZj8nrj+YkOKc5694NbjCvcT6aSZiIzNzd2Kul4o4rTto8QVR9lMNtxD4G1w==", + "license": "MIT", + "dependencies": { + "decimal.js-light": "^2.4.1" + } + }, + "node_modules/recharts/node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/recharts/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "license": "MIT" + }, + "node_modules/recoil": { + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/recoil/-/recoil-0.7.7.tgz", + "integrity": "sha512-8Og5KPQW9LwC577Vc7Ug2P0vQshkv1y3zG3tSSkWMqkWSwHmE+by06L8JtnGocjW6gcCvfwB3YtrJG6/tWivNQ==", + "license": "MIT", + "dependencies": { + "hamt_plus": "1.0.2" + }, + "peerDependencies": { + "react": ">=16.13.1" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + }, + "react-native": { + "optional": true + } + } + }, + "node_modules/recoil-persist": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/recoil-persist/-/recoil-persist-5.1.0.tgz", + "integrity": "sha512-sew4k3uBVJjRWKCSFuBw07Y1p1pBOb0UxLJPxn4G2bX/9xNj+r2xlqYy/BRfyofR/ANfqBU04MIvulppU4ZC0w==", + "license": "MIT", + "peerDependencies": { + "recoil": "^0.7.2" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "license": "MIT" + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "license": "MIT", + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "license": "MIT" + }, + "node_modules/regenerator-transform": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", + "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "license": "MIT", + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "license": "BSD-2-Clause", + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/resolve": { + "version": "1.22.2", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", + "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "license": "MIT", + "dependencies": { + "is-core-module": "^2.11.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-alpn": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", + "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", + "license": "MIT" + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/responselike": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", + "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", + "license": "MIT", + "dependencies": { + "lowercase-keys": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "3.26.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.26.3.tgz", + "integrity": "sha512-7Tin0C8l86TkpcMtXvQu6saWH93nhG3dGQ1/+l5V2TDMceTxO7kDiK6GzbfLWNNxqJXm591PcEZUozZm51ogwQ==", + "dev": true, + "license": "MIT", + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/rollup-plugin-inject": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rollup-plugin-inject/-/rollup-plugin-inject-3.0.2.tgz", + "integrity": "sha512-ptg9PQwzs3orn4jkgXJ74bfs5vYz1NCZlSQMBUA0wKcGp5i5pA1AO3fOUEte8enhGUC+iapTCzEWw2jEFFUO/w==", + "license": "MIT", + "dependencies": { + "estree-walker": "^0.6.1", + "magic-string": "^0.25.3", + "rollup-pluginutils": "^2.8.1" + } + }, + "node_modules/rollup-plugin-inject/node_modules/magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "license": "MIT", + "dependencies": { + "sourcemap-codec": "^1.4.8" + } + }, + "node_modules/rollup-plugin-node-polyfills": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-node-polyfills/-/rollup-plugin-node-polyfills-0.2.1.tgz", + "integrity": "sha512-4kCrKPTJ6sK4/gLL/U5QzVT8cxJcofO0OU74tnB19F40cmuAKSzH5/siithxlofFEjwvw1YAhPmbvGNA6jEroA==", + "license": "MIT", + "dependencies": { + "rollup-plugin-inject": "^3.0.0" + } + }, + "node_modules/rollup-pluginutils": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz", + "integrity": "sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==", + "license": "MIT", + "dependencies": { + "estree-walker": "^0.6.1" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/scheduler": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/server-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/server-only/-/server-only-0.0.1.tgz", + "integrity": "sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA==", + "license": "MIT" + }, + "node_modules/shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==", + "license": "MIT" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/siginfo": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", + "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", + "dev": true, + "license": "ISC" + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "license": "MIT" + }, + "node_modules/stackback": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", + "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", + "dev": true, + "license": "MIT" + }, + "node_modules/std-env": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", + "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==", + "dev": true, + "license": "MIT" + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-literal": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-2.1.0.tgz", + "integrity": "sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==", + "dev": true, + "license": "MIT", + "dependencies": { + "js-tokens": "^9.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/strip-literal/node_modules/js-tokens": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.0.tgz", + "integrity": "sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/styled-components": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-6.0.5.tgz", + "integrity": "sha512-308zi5o7LrA9cVaP4nPD0TaUpOjGPePkAUFb/OGB0xRI3I9ozpW5UyASvRVi9wJcYASG+Y3mLDLDUZC7nqzimw==", + "license": "MIT", + "dependencies": { + "@babel/cli": "^7.21.0", + "@babel/core": "^7.21.0", + "@babel/helper-module-imports": "^7.18.6", + "@babel/plugin-external-helpers": "^7.18.6", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.20.7", + "@babel/preset-env": "^7.20.2", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.21.0", + "@babel/traverse": "^7.21.2", + "@emotion/is-prop-valid": "^1.2.1", + "@emotion/unitless": "^0.8.0", + "@types/stylis": "^4.0.2", + "css-to-react-native": "^3.2.0", + "csstype": "^3.1.2", + "postcss": "^8.4.23", + "shallowequal": "^1.1.0", + "stylis": "^4.3.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/styled-components" + }, + "peerDependencies": { + "babel-plugin-styled-components": ">= 2", + "react": ">= 16.8.0", + "react-dom": ">= 16.8.0" + }, + "peerDependenciesMeta": { + "babel-plugin-styled-components": { + "optional": true + } + } + }, + "node_modules/styled-components/node_modules/stylis": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.0.tgz", + "integrity": "sha512-E87pIogpwUsUwXw7dNyU4QDjdgVMy52m+XEOPEKUn161cCzWjjhPSQhByfd1CcNvrOLnXQ6OnnZDwnJrz/Z4YQ==", + "license": "MIT" + }, + "node_modules/stylis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", + "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==", + "license": "MIT" + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/swr": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/swr/-/swr-2.2.5.tgz", + "integrity": "sha512-QtxqyclFeAsxEUeZIYmsaQ0UjimSq1RZ9Un7I68/0ClKK/U3LoyQunwkQfJZr2fc22DfIXLNDc2wFyTEikCUpg==", + "license": "MIT", + "dependencies": { + "client-only": "^0.0.1", + "use-sync-external-store": "^1.2.0" + }, + "peerDependencies": { + "react": "^16.11.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/symbol.inspect": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/symbol.inspect/-/symbol.inspect-1.0.1.tgz", + "integrity": "sha512-YQSL4duoHmLhsTD1Pw8RW6TZ5MaTX5rXJnqacJottr2P2LZBF/Yvrc3ku4NUpMOm8aM0KOCqM+UAkMA5HWQCzQ==", + "license": "ISC" + }, + "node_modules/teslabot": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/teslabot/-/teslabot-1.5.0.tgz", + "integrity": "sha512-e2MmELhCgrgZEGo7PQu/6bmYG36IDH+YrBI1iGm6jovXkeDIGa3pZ2WSqRjzkuw2vt1EqfkZoV5GpXgqL8QJVg==", + "license": "MIT" + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true, + "license": "MIT" + }, + "node_modules/tiny-invariant": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz", + "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==", + "license": "MIT" + }, + "node_modules/tinybench": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.8.0.tgz", + "integrity": "sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==", + "dev": true, + "license": "MIT" + }, + "node_modules/tinypool": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.8.4.tgz", + "integrity": "sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tinyspy": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-2.2.1.tgz", + "integrity": "sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "license": "MIT" + }, + "node_modules/ts-api-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.1.tgz", + "integrity": "sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=16.13.0" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, + "node_modules/tslib": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz", + "integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==", + "license": "0BSD" + }, + "node_modules/tweetnacl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==", + "license": "Unlicense" + }, + "node_modules/tweetnacl-util": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz", + "integrity": "sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==", + "license": "Unlicense" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/ua-parser-js": { + "version": "1.0.36", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.36.tgz", + "integrity": "sha512-znuyCIXzl8ciS3+y3fHJI/2OhQIXbXw9MWC/o3qwyR+RGppjZHrM27CGFSKCJXi2Kctiz537iOu2KnXs1lMQhw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + }, + { + "type": "github", + "url": "https://github.com/sponsors/faisalman" + } + ], + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/ufo": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.3.tgz", + "integrity": "sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==", + "dev": true, + "license": "MIT" + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "license": "MIT" + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "license": "MIT", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/use-sync-external-store": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", + "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/victory-vendor": { + "version": "36.9.2", + "resolved": "https://registry.npmjs.org/victory-vendor/-/victory-vendor-36.9.2.tgz", + "integrity": "sha512-PnpQQMuxlwYdocC8fIJqVXvkeViHYzotI+NJrCuav0ZYFoq912ZHBk3mCeuj+5/VpodOjPe1z0Fk2ihgzlXqjQ==", + "license": "MIT AND ISC", + "dependencies": { + "@types/d3-array": "^3.0.3", + "@types/d3-ease": "^3.0.0", + "@types/d3-interpolate": "^3.0.1", + "@types/d3-scale": "^4.0.2", + "@types/d3-shape": "^3.1.0", + "@types/d3-time": "^3.0.0", + "@types/d3-timer": "^3.0.0", + "d3-array": "^3.1.6", + "d3-ease": "^3.0.1", + "d3-interpolate": "^3.0.1", + "d3-scale": "^4.0.2", + "d3-shape": "^3.1.0", + "d3-time": "^3.0.0", + "d3-timer": "^3.0.1" + } + }, + "node_modules/vite": { + "version": "4.4.7", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.4.7.tgz", + "integrity": "sha512-6pYf9QJ1mHylfVh39HpuSfMPojPSKVxZvnclX1K1FyZ1PXDOcLBibdq5t1qxJSnL63ca8Wf4zts6mD8u8oc9Fw==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.18.10", + "postcss": "^8.4.26", + "rollup": "^3.25.2" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "peerDependencies": { + "@types/node": ">= 14", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-node": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-1.6.0.tgz", + "integrity": "sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "cac": "^6.7.14", + "debug": "^4.3.4", + "pathe": "^1.1.1", + "picocolors": "^1.0.0", + "vite": "^5.0.0" + }, + "bin": { + "vite-node": "vite-node.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/vite-node/node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/vite-node/node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/vite-node/node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/vite-node/node_modules/postcss": { + "version": "8.4.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.39.tgz", + "integrity": "sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.0.1", + "source-map-js": "^1.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/vite-node/node_modules/postcss/node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "dev": true, + "license": "ISC" + }, + "node_modules/vite-node/node_modules/rollup": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.0.tgz", + "integrity": "sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.5" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.18.0", + "@rollup/rollup-android-arm64": "4.18.0", + "@rollup/rollup-darwin-arm64": "4.18.0", + "@rollup/rollup-darwin-x64": "4.18.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.18.0", + "@rollup/rollup-linux-arm-musleabihf": "4.18.0", + "@rollup/rollup-linux-arm64-gnu": "4.18.0", + "@rollup/rollup-linux-arm64-musl": "4.18.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.18.0", + "@rollup/rollup-linux-riscv64-gnu": "4.18.0", + "@rollup/rollup-linux-s390x-gnu": "4.18.0", + "@rollup/rollup-linux-x64-gnu": "4.18.0", + "@rollup/rollup-linux-x64-musl": "4.18.0", + "@rollup/rollup-win32-arm64-msvc": "4.18.0", + "@rollup/rollup-win32-ia32-msvc": "4.18.0", + "@rollup/rollup-win32-x64-msvc": "4.18.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/vite-node/node_modules/rollup/node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/vite-node/node_modules/source-map-js": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/vite-node/node_modules/vite": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.3.2.tgz", + "integrity": "sha512-6lA7OBHBlXUxiJxbO5aAY2fsHHzDr1q7DvXYnyZycRs2Dz+dXBWuhpWHvmljTRTpQC2uvGmUFFkSHF2vGo90MA==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.38", + "rollup": "^4.13.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vitest": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-1.6.0.tgz", + "integrity": "sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/expect": "1.6.0", + "@vitest/runner": "1.6.0", + "@vitest/snapshot": "1.6.0", + "@vitest/spy": "1.6.0", + "@vitest/utils": "1.6.0", + "acorn-walk": "^8.3.2", + "chai": "^4.3.10", + "debug": "^4.3.4", + "execa": "^8.0.1", + "local-pkg": "^0.5.0", + "magic-string": "^0.30.5", + "pathe": "^1.1.1", + "picocolors": "^1.0.0", + "std-env": "^3.5.0", + "strip-literal": "^2.0.0", + "tinybench": "^2.5.1", + "tinypool": "^0.8.3", + "vite": "^5.0.0", + "vite-node": "1.6.0", + "why-is-node-running": "^2.2.2" + }, + "bin": { + "vitest": "vitest.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "@edge-runtime/vm": "*", + "@types/node": "^18.0.0 || >=20.0.0", + "@vitest/browser": "1.6.0", + "@vitest/ui": "1.6.0", + "happy-dom": "*", + "jsdom": "*" + }, + "peerDependenciesMeta": { + "@edge-runtime/vm": { + "optional": true + }, + "@types/node": { + "optional": true + }, + "@vitest/browser": { + "optional": true + }, + "@vitest/ui": { + "optional": true + }, + "happy-dom": { + "optional": true + }, + "jsdom": { + "optional": true + } + } + }, + "node_modules/vitest/node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/vitest/node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/vitest/node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/vitest/node_modules/postcss": { + "version": "8.4.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.39.tgz", + "integrity": "sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.0.1", + "source-map-js": "^1.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/vitest/node_modules/postcss/node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "dev": true, + "license": "ISC" + }, + "node_modules/vitest/node_modules/rollup": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.0.tgz", + "integrity": "sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.5" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.18.0", + "@rollup/rollup-android-arm64": "4.18.0", + "@rollup/rollup-darwin-arm64": "4.18.0", + "@rollup/rollup-darwin-x64": "4.18.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.18.0", + "@rollup/rollup-linux-arm-musleabihf": "4.18.0", + "@rollup/rollup-linux-arm64-gnu": "4.18.0", + "@rollup/rollup-linux-arm64-musl": "4.18.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.18.0", + "@rollup/rollup-linux-riscv64-gnu": "4.18.0", + "@rollup/rollup-linux-s390x-gnu": "4.18.0", + "@rollup/rollup-linux-x64-gnu": "4.18.0", + "@rollup/rollup-linux-x64-musl": "4.18.0", + "@rollup/rollup-win32-arm64-msvc": "4.18.0", + "@rollup/rollup-win32-ia32-msvc": "4.18.0", + "@rollup/rollup-win32-x64-msvc": "4.18.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/vitest/node_modules/rollup/node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/vitest/node_modules/source-map-js": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/vitest/node_modules/vite": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.3.2.tgz", + "integrity": "sha512-6lA7OBHBlXUxiJxbO5aAY2fsHHzDr1q7DvXYnyZycRs2Dz+dXBWuhpWHvmljTRTpQC2uvGmUFFkSHF2vGo90MA==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.38", + "rollup": "^4.13.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "license": "BSD-2-Clause" + }, + "node_modules/whatwg-fetch": { + "version": "3.6.17", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.17.tgz", + "integrity": "sha512-c4ghIvG6th0eudYwKZY5keb81wtFz9/WeAHAoy8+r18kcWlitUIrmGFQ2rWEl4UCKUilD3zCLHOIPheHx5ypRQ==", + "license": "MIT" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "license": "MIT", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/why-is-node-running": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.2.2.tgz", + "integrity": "sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==", + "dev": true, + "license": "MIT", + "dependencies": { + "siginfo": "^2.0.0", + "stackback": "0.0.2" + }, + "bin": { + "why-is-node-running": "cli.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "license": "ISC" + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/yaml": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.2.tgz", + "integrity": "sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA==", + "license": "ISC", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "license": "MIT", + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/yocto-queue": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", + "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zod": { + "version": "3.23.8", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz", + "integrity": "sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + } + } +} diff --git a/src/components/main/MainMyAssetInfo.tsx b/src/components/main/MainMyAssetInfo.tsx index 077c50c2..b199fbd3 100644 --- a/src/components/main/MainMyAssetInfo.tsx +++ b/src/components/main/MainMyAssetInfo.tsx @@ -14,6 +14,7 @@ import { AssetBottomBox, AssetBottomLeft, AssetBottomLeftItem, + AssetBottomLeftItemDivider, AssetBottomLeftItemTitle, AssetBottomLeftItemValue, AssetBottomNotConnected, diff --git a/src/pages/Loan/Borrow/BorrowDetails.tsx b/src/pages/Loan/Borrow/BorrowDetails.tsx index 9f5e75c6..0bb7846a 100644 --- a/src/pages/Loan/Borrow/BorrowDetails.tsx +++ b/src/pages/Loan/Borrow/BorrowDetails.tsx @@ -1,4 +1,4 @@ -import { useEffect, useState } from "react"; +import { useEffect, useMemo, useState } from "react"; import { useForm } from "react-hook-form"; import { useNavigate, useParams } from "react-router-dom"; import { zodResolver } from "@hookform/resolvers/zod"; @@ -9,20 +9,16 @@ import IcExclude from "@/assets/icons/Loan/ic_exclude.svg"; import ProgressBar from "@/components/loan/common/ProgressBar.tsx"; import StakingInfo from "@/components/loan/common/StakingInfo.tsx"; import TokenInput from "@/components/stake/common/TokensInput.tsx"; +import { useCoinPrice } from "@/hooks/api/useCoinPrice.ts"; import { useNFTDetail } from "@/hooks/api/useNFTDetail"; import useTonConnect from "@/hooks/contract/useTonConnect.ts"; import { isDevMode } from "@/utils/isDevMode.ts"; +import { limitDecimals } from "@/utils/limitDecimals.ts"; import { BorrowContentBox, BorrowHeaderBox, BorrowHeaderBoxTitle, - BorrowRateBox, - BorrowRateBoxBottom, - BorrowRateBoxDivider, - BorrowRateBoxHeader, - BorrowRateBoxHeaderLeft, - BorrowRateBoxHeaderRight, BorrowWrapper, ExcludeBox, } from "./BorrowDetails.styled.tsx"; @@ -30,12 +26,14 @@ import { const tele = (window as any).Telegram.WebApp; const BorrowDetails = () => { - const { connected } = useTonConnect(); + const { connected, balance } = useTonConnect(); const navigate = useNavigate(); const [alwaysVisibleInfo, setAlwaysVisibleInfo] = useState([]); const [stakingInfo, setStakingInfo] = useState([{ items: [] }]); const { id } = useParams(); + const { nftDetail } = useNFTDetail(Number(id)); + const { data: coinPrice } = useCoinPrice("TON", "USD"); const schema = z.object({ borrowAmount: z @@ -112,6 +110,16 @@ const BorrowDetails = () => { } }, [nftDetail]); + // Conversion function + const convertAmount = useMemo(() => { + return (amount: string | number) => { + if (coinPrice && amount) { + return `$${limitDecimals(coinPrice?.rates?.TON?.prices?.USD * Number(amount), 2)}`; + } + return "$0.00"; + }; + }, [coinPrice]); + const onSubmit = data => { console.log("form data", data); @@ -160,6 +168,8 @@ const BorrowDetails = () => { setValue={setValue} error={errors.borrowAmount?.message as string} disabled={!connected} + balance={balance} + convertAmount={convertAmount} tokenLabel="nxTON" placeholder="min 0.5" disableMax diff --git a/src/pages/Menu/Menu.styled.tsx b/src/pages/Menu/Menu.styled.tsx index b0d46bff..926f8866 100644 --- a/src/pages/Menu/Menu.styled.tsx +++ b/src/pages/Menu/Menu.styled.tsx @@ -111,6 +111,12 @@ export const AssetBottomLeftItem = styled.div` justify-content: space-between; `; +export const AssetBottomLeftItemDivider = styled.div` + width: 100%; + height: 1px; + background: rgba(255, 255, 255, 0.2); +`; + export const AssetBottomRight = styled.div` height: 100%; display: flex; diff --git a/yarn.lock b/yarn.lock index 2b733b2a..41c0d711 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4,12 +4,12 @@ "@aashutoshrathi/word-wrap@^1.2.3": version "1.2.6" - resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf" + resolved "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz" integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== "@ampproject/remapping@^2.2.0": version "2.2.1" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" + resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz" integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg== dependencies: "@jridgewell/gen-mapping" "^0.3.0" @@ -17,7 +17,7 @@ "@aws-crypto/sha256-js@^5.0.0": version "5.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha256-js/-/sha256-js-5.0.0.tgz#fec6d5a9a097e812207eacaaa707bfa9191b3ad8" + resolved "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.0.0.tgz" integrity sha512-g+u9iKkaQVp9Mjoxq1IJSHj9NHGZF441+R/GIH0dn7u4mix5QQ4VqgpppHrNm1LzjUzb0BpcFGsBXP6cOVf+ZQ== dependencies: "@aws-crypto/util" "^5.0.0" @@ -26,7 +26,7 @@ "@aws-crypto/util@^5.0.0": version "5.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/util/-/util-5.0.0.tgz#afa286af897ea2bd9fab194b4a6be9cc562db23a" + resolved "https://registry.npmjs.org/@aws-crypto/util/-/util-5.0.0.tgz" integrity sha512-1GYqLdYRe96idcCltlqxdJ68OWE6ADT8qGLmVi7PVHKl8AxD2EWSbJSSevPq2eTx6vaPZpkr1RoZ3lcw/uGoEA== dependencies: "@aws-sdk/types" "^3.222.0" @@ -35,7 +35,7 @@ "@aws-sdk/types@^3.222.0": version "3.370.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.370.0.tgz#79e0e4927529c957b5c5c2a00f7590a76784a5e4" + resolved "https://registry.npmjs.org/@aws-sdk/types/-/types-3.370.0.tgz" integrity sha512-8PGMKklSkRKjunFhzM2y5Jm0H2TBu7YRNISdYzXLUHKSP9zlMEYagseKVdmox0zKHf1LXVNuSlUV2b6SRrieCQ== dependencies: "@smithy/types" "^1.1.0" @@ -43,14 +43,14 @@ "@aws-sdk/util-utf8-browser@^3.0.0": version "3.259.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz#3275a6f5eb334f96ca76635b961d3c50259fd9ff" + resolved "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz" integrity sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw== dependencies: tslib "^2.3.1" "@babel/cli@^7.21.0": version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.22.9.tgz#501b3614aeda7399371f6d5991404f069b059986" + resolved "https://registry.npmjs.org/@babel/cli/-/cli-7.22.9.tgz" integrity sha512-nb2O7AThqRo7/E53EGiuAkMaRbb7J5Qp3RvN+dmua1U+kydm0oznkhqbTEG15yk26G/C3yL6OdZjzgl+DMXVVA== dependencies: "@jridgewell/trace-mapping" "^0.3.17" @@ -66,19 +66,19 @@ "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.5.tgz#234d98e1551960604f1246e6475891a570ad5658" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz" integrity sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ== dependencies: "@babel/highlight" "^7.22.5" "@babel/compat-data@^7.20.5", "@babel/compat-data@^7.22.5", "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9": version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.9.tgz#71cdb00a1ce3a329ce4cbec3a44f9fef35669730" + resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz" integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ== "@babel/core@^7.21.0", "@babel/core@^7.22.5": version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.22.9.tgz#bd96492c68822198f33e8a256061da3cf391f58f" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz" integrity sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w== dependencies: "@ampproject/remapping" "^2.2.0" @@ -99,7 +99,7 @@ "@babel/generator@^7.22.7", "@babel/generator@^7.22.9": version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.22.9.tgz#572ecfa7a31002fa1de2a9d91621fd895da8493d" + resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.22.9.tgz" integrity sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw== dependencies: "@babel/types" "^7.22.5" @@ -109,21 +109,21 @@ "@babel/helper-annotate-as-pure@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882" + resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz" integrity sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg== dependencies: "@babel/types" "^7.22.5" "@babel/helper-builder-binary-assignment-operator-visitor@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.5.tgz#a3f4758efdd0190d8927fcffd261755937c71878" + resolved "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.5.tgz" integrity sha512-m1EP3lVOPptR+2DwD125gziZNcmoNSHGmJROKoy87loWUQyJaVXDgpmruWqDARZSmtYQ+Dl25okU8+qhVzuykw== dependencies: "@babel/types" "^7.22.5" "@babel/helper-compilation-targets@^7.20.7", "@babel/helper-compilation-targets@^7.22.5", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.22.9": version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.9.tgz#f9d0a7aaaa7cd32a3f31c9316a69f5a9bcacb892" + resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.9.tgz" integrity sha512-7qYrNM6HjpnPHJbopxmb8hSPoZ0gsX8IvUS32JGVoy+pU9e5N0nLr1VjJoR6kA4d9dmGLxNYOjeB8sUDal2WMw== dependencies: "@babel/compat-data" "^7.22.9" @@ -134,7 +134,7 @@ "@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.22.5", "@babel/helper-create-class-features-plugin@^7.22.9": version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.9.tgz#c36ea240bb3348f942f08b0fbe28d6d979fab236" + resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.9.tgz" integrity sha512-Pwyi89uO4YrGKxL/eNJ8lfEH55DnRloGPOseaA8NFNL6jAUnn+KccaISiFazCj5IolPPDjGSdzQzXVzODVRqUQ== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" @@ -149,7 +149,7 @@ "@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.22.5": version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz#9d8e61a8d9366fe66198f57c40565663de0825f6" + resolved "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz" integrity sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" @@ -158,7 +158,7 @@ "@babel/helper-define-polyfill-provider@^0.4.2": version "0.4.2" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz#82c825cadeeeee7aad237618ebbe8fa1710015d7" + resolved "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz" integrity sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw== dependencies: "@babel/helper-compilation-targets" "^7.22.6" @@ -169,12 +169,12 @@ "@babel/helper-environment-visitor@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz#f06dd41b7c1f44e1f8da6c4055b41ab3a09a7e98" + resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz" integrity sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q== "@babel/helper-function-name@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz#ede300828905bb15e582c037162f99d5183af1be" + resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz" integrity sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ== dependencies: "@babel/template" "^7.22.5" @@ -182,28 +182,28 @@ "@babel/helper-hoist-variables@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" + resolved "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz" integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== dependencies: "@babel/types" "^7.22.5" "@babel/helper-member-expression-to-functions@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz#0a7c56117cad3372fbf8d2fb4bf8f8d64a1e76b2" + resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz" integrity sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ== dependencies: "@babel/types" "^7.22.5" "@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.18.6", "@babel/helper-module-imports@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz#1a8f4c9f4027d23f520bd76b364d44434a72660c" + resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz" integrity sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg== dependencies: "@babel/types" "^7.22.5" "@babel/helper-module-transforms@^7.22.5", "@babel/helper-module-transforms@^7.22.9": version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz#92dfcb1fbbb2bc62529024f72d942a8c97142129" + resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz" integrity sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ== dependencies: "@babel/helper-environment-visitor" "^7.22.5" @@ -214,19 +214,19 @@ "@babel/helper-optimise-call-expression@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz#f21531a9ccbff644fdd156b4077c16ff0c3f609e" + resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz" integrity sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw== dependencies: "@babel/types" "^7.22.5" "@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" + resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz" integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== "@babel/helper-remap-async-to-generator@^7.22.5": version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz#53a25b7484e722d7efb9c350c75c032d4628de82" + resolved "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz" integrity sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" @@ -235,7 +235,7 @@ "@babel/helper-replace-supers@^7.22.5", "@babel/helper-replace-supers@^7.22.9": version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz#cbdc27d6d8d18cd22c81ae4293765a5d9afd0779" + resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz" integrity sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg== dependencies: "@babel/helper-environment-visitor" "^7.22.5" @@ -244,43 +244,43 @@ "@babel/helper-simple-access@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" + resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz" integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w== dependencies: "@babel/types" "^7.22.5" "@babel/helper-skip-transparent-expression-wrappers@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz#007f15240b5751c537c40e77abb4e89eeaaa8847" + resolved "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz" integrity sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q== dependencies: "@babel/types" "^7.22.5" "@babel/helper-split-export-declaration@^7.22.6": version "7.22.6" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" + resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz" integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== dependencies: "@babel/types" "^7.22.5" "@babel/helper-string-parser@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" + resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz" integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== "@babel/helper-validator-identifier@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz#9544ef6a33999343c8740fa51350f30eeaaaf193" + resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz" integrity sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ== "@babel/helper-validator-option@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz#de52000a15a177413c8234fa3a8af4ee8102d0ac" + resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz" integrity sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw== "@babel/helper-wrap-function@^7.22.9": version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.22.9.tgz#189937248c45b0182c1dcf32f3444ca153944cb9" + resolved "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.9.tgz" integrity sha512-sZ+QzfauuUEfxSEjKFmi3qDSHgLsTPK/pEpoD/qonZKOtTPTLbf59oabPQ4rKekt9lFcj/hTZaOhWwFYrgjk+Q== dependencies: "@babel/helper-function-name" "^7.22.5" @@ -289,7 +289,7 @@ "@babel/helpers@^7.22.6": version "7.22.6" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.22.6.tgz#8e61d3395a4f0c5a8060f309fb008200969b5ecd" + resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.6.tgz" integrity sha512-YjDs6y/fVOYFV8hAf1rxd1QvR9wJe1pDBZ2AREKq/SDayfPzgk0PBnVuTCE5X1acEpMMNOVUqoe+OwiZGJ+OaA== dependencies: "@babel/template" "^7.22.5" @@ -298,7 +298,7 @@ "@babel/highlight@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.5.tgz#aa6c05c5407a67ebce408162b7ede789b4d22031" + resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz" integrity sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw== dependencies: "@babel/helper-validator-identifier" "^7.22.5" @@ -307,19 +307,19 @@ "@babel/parser@^7.22.5", "@babel/parser@^7.22.7": version "7.22.7" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.7.tgz#df8cf085ce92ddbdbf668a7f186ce848c9036cae" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.22.7.tgz" integrity sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q== "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz#87245a21cd69a73b0b81bcda98d443d6df08f05e" + resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz" integrity sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz#fef09f9499b1f1c930da8a0c419db42167d792ca" + resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz" integrity sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -328,14 +328,14 @@ "@babel/plugin-external-helpers@^7.18.6": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-external-helpers/-/plugin-external-helpers-7.22.5.tgz#92b0705b74756123f289388320e0e12c407fdf9a" + resolved "https://registry.npmjs.org/@babel/plugin-external-helpers/-/plugin-external-helpers-7.22.5.tgz" integrity sha512-ngnNEWxmykPk82mH4ajZT0qTztr3Je6hrMuKAslZVM8G1YZTENJSYwrIGtt6KOtznug3exmAtF4so/nPqJuA4A== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-proposal-class-properties@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz" integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== dependencies: "@babel/helper-create-class-features-plugin" "^7.18.6" @@ -343,7 +343,7 @@ "@babel/plugin-proposal-object-rest-spread@^7.20.7": version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz#aa662940ef425779c75534a5c41e9d936edc390a" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz" integrity sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg== dependencies: "@babel/compat-data" "^7.20.5" @@ -354,12 +354,12 @@ "@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": version "7.21.0-placeholder-for-preset-env.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz" integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w== "@babel/plugin-proposal-unicode-property-regex@^7.4.4": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz#af613d2cd5e643643b65cded64207b15c85cb78e" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz" integrity sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.18.6" @@ -367,140 +367,140 @@ "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz" integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-class-properties@^7.12.13": version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== dependencies: "@babel/helper-plugin-utils" "^7.12.13" "@babel/plugin-syntax-class-static-block@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz" integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-dynamic-import@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz" integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-export-namespace-from@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz" integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q== dependencies: "@babel/helper-plugin-utils" "^7.8.3" "@babel/plugin-syntax-import-assertions@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz#07d252e2aa0bc6125567f742cd58619cb14dce98" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz" integrity sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-import-attributes@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz#ab840248d834410b829f569f5262b9e517555ecb" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz" integrity sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-import-meta@^7.10.4": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz" integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-json-strings@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz" integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-jsx@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz#a6b68e84fb76e759fc3b93e901876ffabbe1d918" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz" integrity sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-logical-assignment-operators@^7.10.4": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz" integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz" integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-numeric-separator@^7.10.4": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz" integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-object-rest-spread@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz" integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-optional-catch-binding@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz" integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-optional-chaining@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz" integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-private-property-in-object@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz" integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg== dependencies: "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-top-level-await@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz" integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-typescript@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz#aac8d383b062c5072c647a31ef990c1d0af90272" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz" integrity sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-unicode-sets-regex@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz#d49a3b3e6b52e5be6740022317580234a6a47357" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz" integrity sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.18.6" @@ -508,14 +508,14 @@ "@babel/plugin-transform-arrow-functions@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz#e5ba566d0c58a5b2ba2a8b795450641950b71958" + resolved "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz" integrity sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-async-generator-functions@^7.22.7": version "7.22.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.7.tgz#053e76c0a903b72b573cb1ab7d6882174d460a1b" + resolved "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.7.tgz" integrity sha512-7HmE7pk/Fmke45TODvxvkxRMV9RazV+ZZzhOL9AG8G29TLrr3jkjwF7uJfxZ30EoXpO+LJkq4oA8NjO2DTnEDg== dependencies: "@babel/helper-environment-visitor" "^7.22.5" @@ -525,7 +525,7 @@ "@babel/plugin-transform-async-to-generator@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz#c7a85f44e46f8952f6d27fe57c2ed3cc084c3775" + resolved "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz" integrity sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ== dependencies: "@babel/helper-module-imports" "^7.22.5" @@ -534,21 +534,21 @@ "@babel/plugin-transform-block-scoped-functions@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz#27978075bfaeb9fa586d3cb63a3d30c1de580024" + resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz" integrity sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-block-scoping@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.5.tgz#8bfc793b3a4b2742c0983fadc1480d843ecea31b" + resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.5.tgz" integrity sha512-EcACl1i5fSQ6bt+YGuU/XGCeZKStLmyVGytWkpyhCLeQVA0eu6Wtiw92V+I1T/hnezUv7j74dA/Ro69gWcU+hg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-class-properties@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz#97a56e31ad8c9dc06a0b3710ce7803d5a48cca77" + resolved "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz" integrity sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ== dependencies: "@babel/helper-create-class-features-plugin" "^7.22.5" @@ -556,7 +556,7 @@ "@babel/plugin-transform-class-static-block@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz#3e40c46f048403472d6f4183116d5e46b1bff5ba" + resolved "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz" integrity sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA== dependencies: "@babel/helper-create-class-features-plugin" "^7.22.5" @@ -565,7 +565,7 @@ "@babel/plugin-transform-classes@^7.22.6": version "7.22.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz#e04d7d804ed5b8501311293d1a0e6d43e94c3363" + resolved "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz" integrity sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" @@ -580,7 +580,7 @@ "@babel/plugin-transform-computed-properties@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz#cd1e994bf9f316bd1c2dafcd02063ec261bb3869" + resolved "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz" integrity sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -588,14 +588,14 @@ "@babel/plugin-transform-destructuring@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.5.tgz#d3aca7438f6c26c78cdd0b0ba920a336001b27cc" + resolved "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.5.tgz" integrity sha512-GfqcFuGW8vnEqTUBM7UtPd5A4q797LTvvwKxXTgRsFjoqaJiEg9deBG6kWeQYkVEL569NpnmpC0Pkr/8BLKGnQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-dotall-regex@^7.22.5", "@babel/plugin-transform-dotall-regex@^7.4.4": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz#dbb4f0e45766eb544e193fb00e65a1dd3b2a4165" + resolved "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz" integrity sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.22.5" @@ -603,14 +603,14 @@ "@babel/plugin-transform-duplicate-keys@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz#b6e6428d9416f5f0bba19c70d1e6e7e0b88ab285" + resolved "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz" integrity sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-dynamic-import@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz#d6908a8916a810468c4edff73b5b75bda6ad393e" + resolved "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz" integrity sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -618,7 +618,7 @@ "@babel/plugin-transform-exponentiation-operator@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz#402432ad544a1f9a480da865fda26be653e48f6a" + resolved "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz" integrity sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g== dependencies: "@babel/helper-builder-binary-assignment-operator-visitor" "^7.22.5" @@ -626,7 +626,7 @@ "@babel/plugin-transform-export-namespace-from@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz#57c41cb1d0613d22f548fddd8b288eedb9973a5b" + resolved "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz" integrity sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -634,14 +634,14 @@ "@babel/plugin-transform-for-of@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz#ab1b8a200a8f990137aff9a084f8de4099ab173f" + resolved "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz" integrity sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-function-name@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz#935189af68b01898e0d6d99658db6b164205c143" + resolved "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz" integrity sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg== dependencies: "@babel/helper-compilation-targets" "^7.22.5" @@ -650,7 +650,7 @@ "@babel/plugin-transform-json-strings@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz#14b64352fdf7e1f737eed68de1a1468bd2a77ec0" + resolved "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz" integrity sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -658,14 +658,14 @@ "@babel/plugin-transform-literals@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz#e9341f4b5a167952576e23db8d435849b1dd7920" + resolved "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz" integrity sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-logical-assignment-operators@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz#66ae5f068fd5a9a5dc570df16f56c2a8462a9d6c" + resolved "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz" integrity sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -673,14 +673,14 @@ "@babel/plugin-transform-member-expression-literals@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz#4fcc9050eded981a468347dd374539ed3e058def" + resolved "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz" integrity sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-modules-amd@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz#4e045f55dcf98afd00f85691a68fc0780704f526" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz" integrity sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ== dependencies: "@babel/helper-module-transforms" "^7.22.5" @@ -688,7 +688,7 @@ "@babel/plugin-transform-modules-commonjs@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz#7d9875908d19b8c0536085af7b053fd5bd651bfa" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz" integrity sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA== dependencies: "@babel/helper-module-transforms" "^7.22.5" @@ -697,7 +697,7 @@ "@babel/plugin-transform-modules-systemjs@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz#18c31410b5e579a0092638f95c896c2a98a5d496" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz" integrity sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ== dependencies: "@babel/helper-hoist-variables" "^7.22.5" @@ -707,7 +707,7 @@ "@babel/plugin-transform-modules-umd@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz#4694ae40a87b1745e3775b6a7fe96400315d4f98" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz" integrity sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ== dependencies: "@babel/helper-module-transforms" "^7.22.5" @@ -715,7 +715,7 @@ "@babel/plugin-transform-named-capturing-groups-regex@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz#67fe18ee8ce02d57c855185e27e3dc959b2e991f" + resolved "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz" integrity sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.22.5" @@ -723,14 +723,14 @@ "@babel/plugin-transform-new-target@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz#1b248acea54ce44ea06dfd37247ba089fcf9758d" + resolved "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz" integrity sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-nullish-coalescing-operator@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz#f8872c65776e0b552e0849d7596cddd416c3e381" + resolved "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz" integrity sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -738,7 +738,7 @@ "@babel/plugin-transform-numeric-separator@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz#57226a2ed9e512b9b446517ab6fa2d17abb83f58" + resolved "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz" integrity sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -746,7 +746,7 @@ "@babel/plugin-transform-object-rest-spread@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz#9686dc3447df4753b0b2a2fae7e8bc33cdc1f2e1" + resolved "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz" integrity sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ== dependencies: "@babel/compat-data" "^7.22.5" @@ -757,7 +757,7 @@ "@babel/plugin-transform-object-super@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz#794a8d2fcb5d0835af722173c1a9d704f44e218c" + resolved "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz" integrity sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -765,7 +765,7 @@ "@babel/plugin-transform-optional-catch-binding@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz#842080be3076703be0eaf32ead6ac8174edee333" + resolved "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz" integrity sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -773,7 +773,7 @@ "@babel/plugin-transform-optional-chaining@^7.22.5", "@babel/plugin-transform-optional-chaining@^7.22.6": version "7.22.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.6.tgz#4bacfe37001fe1901117672875e931d439811564" + resolved "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.6.tgz" integrity sha512-Vd5HiWml0mDVtcLHIoEU5sw6HOUW/Zk0acLs/SAeuLzkGNOPc9DB4nkUajemhCmTIz3eiaKREZn2hQQqF79YTg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -782,14 +782,14 @@ "@babel/plugin-transform-parameters@^7.20.7", "@babel/plugin-transform-parameters@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz#c3542dd3c39b42c8069936e48717a8d179d63a18" + resolved "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz" integrity sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-private-methods@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz#21c8af791f76674420a147ae62e9935d790f8722" + resolved "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz" integrity sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA== dependencies: "@babel/helper-create-class-features-plugin" "^7.22.5" @@ -797,7 +797,7 @@ "@babel/plugin-transform-private-property-in-object@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz#07a77f28cbb251546a43d175a1dda4cf3ef83e32" + resolved "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz" integrity sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" @@ -807,42 +807,42 @@ "@babel/plugin-transform-property-literals@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz#b5ddabd73a4f7f26cd0e20f5db48290b88732766" + resolved "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz" integrity sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-react-display-name@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.22.5.tgz#3c4326f9fce31c7968d6cb9debcaf32d9e279a2b" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.22.5.tgz" integrity sha512-PVk3WPYudRF5z4GKMEYUrLjPl38fJSKNaEOkFuoprioowGuWN6w2RKznuFNSlJx7pzzXXStPUnNSOEO0jL5EVw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-react-jsx-development@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.22.5.tgz#e716b6edbef972a92165cd69d92f1255f7e73e87" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.22.5.tgz" integrity sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A== dependencies: "@babel/plugin-transform-react-jsx" "^7.22.5" "@babel/plugin-transform-react-jsx-self@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.22.5.tgz#ca2fdc11bc20d4d46de01137318b13d04e481d8e" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.22.5.tgz" integrity sha512-nTh2ogNUtxbiSbxaT4Ds6aXnXEipHweN9YRgOX/oNXdf0cCrGn/+2LozFa3lnPV5D90MkjhgckCPBrsoSc1a7g== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-react-jsx-source@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.22.5.tgz#49af1615bfdf6ed9d3e9e43e425e0b2b65d15b6c" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.22.5.tgz" integrity sha512-yIiRO6yobeEIaI0RTbIr8iAK9FcBHLtZq0S89ZPjDLQXBA4xvghaKqI0etp/tF3htTM0sazJKKLz9oEiGRtu7w== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-react-jsx@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.22.5.tgz#932c291eb6dd1153359e2a90cb5e557dcf068416" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.22.5.tgz" integrity sha512-rog5gZaVbUip5iWDMTYbVM15XQq+RkUKhET/IHR6oizR+JEoN6CAfTTuHcK4vwUyzca30qqHqEpzBOnaRMWYMA== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" @@ -853,7 +853,7 @@ "@babel/plugin-transform-react-pure-annotations@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.22.5.tgz#1f58363eef6626d6fa517b95ac66fe94685e32c0" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.22.5.tgz" integrity sha512-gP4k85wx09q+brArVinTXhWiyzLl9UpmGva0+mWyKxk6JZequ05x3eUcIUE+FyttPKJFRRVtAvQaJ6YF9h1ZpA== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" @@ -861,7 +861,7 @@ "@babel/plugin-transform-regenerator@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.5.tgz#cd8a68b228a5f75fa01420e8cc2fc400f0fc32aa" + resolved "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.5.tgz" integrity sha512-rR7KePOE7gfEtNTh9Qw+iO3Q/e4DEsoQ+hdvM6QUDH7JRJ5qxq5AA52ZzBWbI5i9lfNuvySgOGP8ZN7LAmaiPw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -869,21 +869,21 @@ "@babel/plugin-transform-reserved-words@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz#832cd35b81c287c4bcd09ce03e22199641f964fb" + resolved "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz" integrity sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-shorthand-properties@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz#6e277654be82b5559fc4b9f58088507c24f0c624" + resolved "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz" integrity sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-spread@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz#6487fd29f229c95e284ba6c98d65eafb893fea6b" + resolved "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz" integrity sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -891,28 +891,28 @@ "@babel/plugin-transform-sticky-regex@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz#295aba1595bfc8197abd02eae5fc288c0deb26aa" + resolved "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz" integrity sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-template-literals@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz#8f38cf291e5f7a8e60e9f733193f0bcc10909bff" + resolved "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz" integrity sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-typeof-symbol@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz#5e2ba478da4b603af8673ff7c54f75a97b716b34" + resolved "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz" integrity sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-typescript@^7.22.5": version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.9.tgz#91e08ad1eb1028ecc62662a842e93ecfbf3c7234" + resolved "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.9.tgz" integrity sha512-BnVR1CpKiuD0iobHPaM1iLvcwPYN2uVFAqoLVSpEDKWuOikoCv5HbKLxclhKYUXlWkX86DoZGtqI4XhbOsyrMg== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" @@ -922,14 +922,14 @@ "@babel/plugin-transform-unicode-escapes@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.5.tgz#ce0c248522b1cb22c7c992d88301a5ead70e806c" + resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.5.tgz" integrity sha512-biEmVg1IYB/raUO5wT1tgfacCef15Fbzhkx493D3urBI++6hpJ+RFG4SrWMn0NEZLfvilqKf3QDrRVZHo08FYg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-unicode-property-regex@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz#098898f74d5c1e86660dc112057b2d11227f1c81" + resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz" integrity sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.22.5" @@ -937,7 +937,7 @@ "@babel/plugin-transform-unicode-regex@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz#ce7e7bb3ef208c4ff67e02a22816656256d7a183" + resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz" integrity sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.22.5" @@ -945,7 +945,7 @@ "@babel/plugin-transform-unicode-sets-regex@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz#77788060e511b708ffc7d42fdfbc5b37c3004e91" + resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz" integrity sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.22.5" @@ -953,7 +953,7 @@ "@babel/preset-env@^7.20.2": version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.22.9.tgz#57f17108eb5dfd4c5c25a44c1977eba1df310ac7" + resolved "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.9.tgz" integrity sha512-wNi5H/Emkhll/bqPjsjQorSykrlfY5OWakd6AulLvMEytpKasMVUpVy8RL4qBIBs5Ac6/5i0/Rv0b/Fg6Eag/g== dependencies: "@babel/compat-data" "^7.22.9" @@ -1039,7 +1039,7 @@ "@babel/preset-modules@^0.1.5": version "0.1.6" - resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.6.tgz#31bcdd8f19538437339d17af00d177d854d9d458" + resolved "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6.tgz" integrity sha512-ID2yj6K/4lKfhuU3+EX4UvNbIt7eACFbHmNUjzA+ep+B5971CknnA/9DEWKbRokfbbtblxxxXFJJrH47UEAMVg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -1050,7 +1050,7 @@ "@babel/preset-react@^7.18.6": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.22.5.tgz#c4d6058fbf80bccad02dd8c313a9aaa67e3c3dd6" + resolved "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.22.5.tgz" integrity sha512-M+Is3WikOpEJHgR385HbuCITPTaPRaNkibTEa9oiofmJvIsrceb4yp9RL9Kb+TE8LznmeyZqpP+Lopwcx59xPQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -1062,7 +1062,7 @@ "@babel/preset-typescript@^7.21.0": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz#16367d8b01d640e9a507577ed4ee54e0101e51c8" + resolved "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz" integrity sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -1073,19 +1073,19 @@ "@babel/regjsgen@^0.8.0": version "0.8.0" - resolved "https://registry.yarnpkg.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310" + resolved "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz" integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime@^7.12.5", "@babel/runtime@^7.18.3", "@babel/runtime@^7.21.0", "@babel/runtime@^7.22.5", "@babel/runtime@^7.22.6", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7": version "7.22.6" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.22.6.tgz#57d64b9ae3cff1d67eb067ae117dac087f5bd438" + resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz" integrity sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ== dependencies: regenerator-runtime "^0.13.11" "@babel/template@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.5.tgz#0c8c4d944509875849bd0344ff0050756eefc6ec" + resolved "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz" integrity sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw== dependencies: "@babel/code-frame" "^7.22.5" @@ -1094,7 +1094,7 @@ "@babel/traverse@^7.21.2", "@babel/traverse@^7.22.6", "@babel/traverse@^7.22.8": version "7.22.8" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.22.8.tgz#4d4451d31bc34efeae01eac222b514a77aa4000e" + resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.8.tgz" integrity sha512-y6LPR+wpM2I3qJrsheCTwhIinzkETbplIgPBbwvqPKc+uljeA5gP+3nP8irdYt1mjQaDnlIcG+dw8OjAco4GXw== dependencies: "@babel/code-frame" "^7.22.5" @@ -1110,7 +1110,7 @@ "@babel/types@^7.22.5", "@babel/types@^7.4.4": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.5.tgz#cd93eeaab025880a3a47ec881f4b096a5b786fbe" + resolved "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz" integrity sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA== dependencies: "@babel/helper-string-parser" "^7.22.5" @@ -1119,7 +1119,7 @@ "@emotion/babel-plugin@^11.11.0": version "11.11.0" - resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz#c2d872b6a7767a9d176d007f5b31f7d504bb5d6c" + resolved "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz" integrity sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ== dependencies: "@babel/helper-module-imports" "^7.16.7" @@ -1136,7 +1136,7 @@ "@emotion/cache@^11.11.0": version "11.11.0" - resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.11.0.tgz#809b33ee6b1cb1a625fef7a45bc568ccd9b8f3ff" + resolved "https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz" integrity sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ== dependencies: "@emotion/memoize" "^0.8.1" @@ -1147,36 +1147,36 @@ "@emotion/hash@^0.9.1": version "0.9.1" - resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.1.tgz#4ffb0055f7ef676ebc3a5a91fb621393294e2f43" + resolved "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz" integrity sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ== -"@emotion/is-prop-valid@1.2.1", "@emotion/is-prop-valid@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz#23116cf1ed18bfeac910ec6436561ecb1a3885cc" - integrity sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw== - dependencies: - "@emotion/memoize" "^0.8.1" - "@emotion/is-prop-valid@^0.8.2": version "0.8.8" - resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz#db28b1c4368a259b60a97311d6a952d4fd01ac1a" + resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz" integrity sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA== dependencies: "@emotion/memoize" "0.7.4" -"@emotion/memoize@0.7.4": - version "0.7.4" - resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.4.tgz#19bf0f5af19149111c40d98bb0cf82119f5d9eeb" - integrity sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw== +"@emotion/is-prop-valid@^1.2.1", "@emotion/is-prop-valid@1.2.1": + version "1.2.1" + resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz" + integrity sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw== + dependencies: + "@emotion/memoize" "^0.8.1" "@emotion/memoize@^0.8.1": version "0.8.1" - resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.8.1.tgz#c1ddb040429c6d21d38cc945fe75c818cfb68e17" + resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz" integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA== +"@emotion/memoize@0.7.4": + version "0.7.4" + resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz" + integrity sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw== + "@emotion/react@^11.11.1": version "11.11.1" - resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.11.1.tgz#b2c36afac95b184f73b08da8c214fdf861fa4157" + resolved "https://registry.npmjs.org/@emotion/react/-/react-11.11.1.tgz" integrity sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA== dependencies: "@babel/runtime" "^7.18.3" @@ -1190,7 +1190,7 @@ "@emotion/serialize@^1.1.2": version "1.1.2" - resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.1.2.tgz#017a6e4c9b8a803bd576ff3d52a0ea6fa5a62b51" + resolved "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.2.tgz" integrity sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA== dependencies: "@emotion/hash" "^0.9.1" @@ -1201,12 +1201,12 @@ "@emotion/sheet@^1.2.2": version "1.2.2" - resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.2.2.tgz#d58e788ee27267a14342303e1abb3d508b6d0fec" + resolved "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz" integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA== "@emotion/styled@^11.11.0": version "11.11.0" - resolved "https://registry.yarnpkg.com/@emotion/styled/-/styled-11.11.0.tgz#26b75e1b5a1b7a629d7c0a8b708fbf5a9cdce346" + resolved "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz" integrity sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng== dependencies: "@babel/runtime" "^7.18.3" @@ -1216,276 +1216,61 @@ "@emotion/use-insertion-effect-with-fallbacks" "^1.0.1" "@emotion/utils" "^1.2.1" -"@emotion/unitless@0.8.0": - version "0.8.0" - resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.8.0.tgz#a4a36e9cbdc6903737cd20d38033241e1b8833db" - integrity sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw== - "@emotion/unitless@^0.8.0", "@emotion/unitless@^0.8.1": version "0.8.1" - resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.8.1.tgz#182b5a4704ef8ad91bde93f7a860a88fd92c79a3" + resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz" integrity sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ== +"@emotion/unitless@0.8.0": + version "0.8.0" + resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.0.tgz" + integrity sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw== + "@emotion/use-insertion-effect-with-fallbacks@^1.0.1": version "1.0.1" - resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz#08de79f54eb3406f9daaf77c76e35313da963963" + resolved "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz" integrity sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw== "@emotion/utils@^1.2.1": version "1.2.1" - resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.2.1.tgz#bbab58465738d31ae4cb3dbb6fc00a5991f755e4" + resolved "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz" integrity sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg== "@emotion/weak-memoize@^0.3.1": version "0.3.1" - resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz#d0fce5d07b0620caa282b5131c297bb60f9d87e6" + resolved "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz" integrity sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww== "@esbuild-plugins/node-globals-polyfill@^0.2.3": version "0.2.3" - resolved "https://registry.yarnpkg.com/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.2.3.tgz#0e4497a2b53c9e9485e149bc92ddb228438d6bcf" + resolved "https://registry.npmjs.org/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.2.3.tgz" integrity sha512-r3MIryXDeXDOZh7ih1l/yE9ZLORCd5e8vWg02azWRGj5SPTuoh69A2AIyn0Z31V/kHBfZ4HgWJ+OK3GTTwLmnw== -"@esbuild/aix-ppc64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz#c7184a326533fcdf1b8ee0733e21c713b975575f" - integrity sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ== - -"@esbuild/android-arm64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.18.16.tgz#34f562abc0015933aabd41b3d50d8d3359e30155" - integrity sha512-wsCqSPqLz+6Ov+OM4EthU43DyYVVyfn15S4j1bJzylDpc1r1jZFFfJQNfDuT8SlgwuqpmpJXK4uPlHGw6ve7eA== - -"@esbuild/android-arm64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz#09d9b4357780da9ea3a7dfb833a1f1ff439b4052" - integrity sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A== - -"@esbuild/android-arm@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.18.16.tgz#ef6f9aa59a79a9b9330a2e73f7eb402c6630c267" - integrity sha512-gCHjjQmA8L0soklKbLKA6pgsLk1byULuHe94lkZDzcO3/Ta+bbeewJioEn1Fr7kgy9NWNFy/C+MrBwC6I/WCug== - -"@esbuild/android-arm@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.21.5.tgz#9b04384fb771926dfa6d7ad04324ecb2ab9b2e28" - integrity sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg== - -"@esbuild/android-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.18.16.tgz#ed7444cb17542932c67b15e20528686853239cfd" - integrity sha512-ldsTXolyA3eTQ1//4DS+E15xl0H/3DTRJaRL0/0PgkqDsI0fV/FlOtD+h0u/AUJr+eOTlZv4aC9gvfppo3C4sw== - -"@esbuild/android-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.21.5.tgz#29918ec2db754cedcb6c1b04de8cd6547af6461e" - integrity sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA== - "@esbuild/darwin-arm64@0.18.16": version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.18.16.tgz#3c5a083e6e08a50f478fa243939989d86be1c6bf" + resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.16.tgz" integrity sha512-aBxruWCII+OtluORR/KvisEw0ALuw/qDQWvkoosA+c/ngC/Kwk0lLaZ+B++LLS481/VdydB2u6tYpWxUfnLAIw== "@esbuild/darwin-arm64@0.21.5": version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz#e495b539660e51690f3928af50a76fb0a6ccff2a" + resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz" integrity sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ== -"@esbuild/darwin-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.18.16.tgz#a8f3b61bee2807131cbe28eb164ad2b0333b59f5" - integrity sha512-6w4Dbue280+rp3LnkgmriS1icOUZDyPuZo/9VsuMUTns7SYEiOaJ7Ca1cbhu9KVObAWfmdjUl4gwy9TIgiO5eA== - -"@esbuild/darwin-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz#c13838fa57372839abdddc91d71542ceea2e1e22" - integrity sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw== - -"@esbuild/freebsd-arm64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.16.tgz#9bdbb3f0e5f0842b21c9b8602e70c106174ac24c" - integrity sha512-x35fCebhe9s979DGKbVAwXUOcTmCIE32AIqB9CB1GralMIvxdnMLAw5CnID17ipEw9/3MvDsusj/cspYt2ZLNQ== - -"@esbuild/freebsd-arm64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz#646b989aa20bf89fd071dd5dbfad69a3542e550e" - integrity sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g== - -"@esbuild/freebsd-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.18.16.tgz#24f73956436495cc7a5a4bf06be6b661aea6a2c1" - integrity sha512-YM98f+PeNXF3GbxIJlUsj+McUWG1irguBHkszCIwfr3BXtXZsXo0vqybjUDFfu9a8Wr7uUD/YSmHib+EeGAFlg== - -"@esbuild/freebsd-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz#aa615cfc80af954d3458906e38ca22c18cf5c261" - integrity sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ== - -"@esbuild/linux-arm64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.18.16.tgz#244569757f9cbd912f5a595a8ad8144f8c915f13" - integrity sha512-XIqhNUxJiuy+zsR77+H5Z2f7s4YRlriSJKtvx99nJuG5ATuJPjmZ9n0ANgnGlPCpXGSReFpgcJ7O3SMtzIFeiQ== - -"@esbuild/linux-arm64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz#70ac6fa14f5cb7e1f7f887bcffb680ad09922b5b" - integrity sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q== - -"@esbuild/linux-arm@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.18.16.tgz#d63923c63af534032cc5ea0b2a0b3de10f8357f5" - integrity sha512-b5ABb+5Ha2C9JkeZXV+b+OruR1tJ33ePmv9ZwMeETSEKlmu/WJ45XTTG+l6a2KDsQtJJ66qo/hbSGBtk0XVLHw== - -"@esbuild/linux-arm@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz#fc6fd11a8aca56c1f6f3894f2bea0479f8f626b9" - integrity sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA== - -"@esbuild/linux-ia32@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.18.16.tgz#a8825ccea6309f0bccfc5d87b43163ba804c2f20" - integrity sha512-no+pfEpwnRvIyH+txbBAWtjxPU9grslmTBfsmDndj7bnBmr55rOo/PfQmRfz7Qg9isswt1FP5hBbWb23fRWnow== - -"@esbuild/linux-ia32@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz#3271f53b3f93e3d093d518d1649d6d68d346ede2" - integrity sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg== - -"@esbuild/linux-loong64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.18.16.tgz#f530e820fc3c61cf2206155b994aeab53b6d25be" - integrity sha512-Zbnczs9ZXjmo0oZSS0zbNlJbcwKXa/fcNhYQjahDs4Xg18UumpXG/lwM2lcSvHS3mTrRyCYZvJbmzYc4laRI1g== - -"@esbuild/linux-loong64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz#ed62e04238c57026aea831c5a130b73c0f9f26df" - integrity sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg== - -"@esbuild/linux-mips64el@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.18.16.tgz#2d47ace539257896865d243641bd6716684a1e82" - integrity sha512-YMF7hih1HVR/hQVa/ot4UVffc5ZlrzEb3k2ip0nZr1w6fnYypll9td2qcoMLvd3o8j3y6EbJM3MyIcXIVzXvQQ== - -"@esbuild/linux-mips64el@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz#e79b8eb48bf3b106fadec1ac8240fb97b4e64cbe" - integrity sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg== - -"@esbuild/linux-ppc64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.18.16.tgz#d6913e7e9be9e242a6a20402800141bdbe7009f7" - integrity sha512-Wkz++LZ29lDwUyTSEnzDaaP5OveOgTU69q9IyIw9WqLRxM4BjTBjz9un4G6TOvehWpf/J3gYVFN96TjGHrbcNQ== - -"@esbuild/linux-ppc64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz#5f2203860a143b9919d383ef7573521fb154c3e4" - integrity sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w== - -"@esbuild/linux-riscv64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.18.16.tgz#8f33b627389c8234fe61f4636c134f17fb1d9b09" - integrity sha512-LFMKZ30tk78/mUv1ygvIP+568bwf4oN6reG/uczXnz6SvFn4e2QUFpUpZY9iSJT6Qpgstrhef/nMykIXZtZWGQ== - -"@esbuild/linux-riscv64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz#07bcafd99322d5af62f618cb9e6a9b7f4bb825dc" - integrity sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA== - -"@esbuild/linux-s390x@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.18.16.tgz#4d44c030f78962cf410f604f92fcc1505e4afdde" - integrity sha512-3ZC0BgyYHYKfZo3AV2/66TD/I9tlSBaW7eWTEIkrQQKfJIifKMMttXl9FrAg+UT0SGYsCRLI35Gwdmm96vlOjg== - -"@esbuild/linux-s390x@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz#b7ccf686751d6a3e44b8627ababc8be3ef62d8de" - integrity sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A== - -"@esbuild/linux-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.18.16.tgz#8846d00e16b1e93eb488c8b4dd51c946adfc236f" - integrity sha512-xu86B3647DihHJHv/wx3NCz2Dg1gjQ8bbf9cVYZzWKY+gsvxYmn/lnVlqDRazObc3UMwoHpUhNYaZset4X8IPA== - -"@esbuild/linux-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz#6d8f0c768e070e64309af8004bb94e68ab2bb3b0" - integrity sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ== - -"@esbuild/netbsd-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.18.16.tgz#6514a86bd07744f3100d2813ea2fb6520d53e72e" - integrity sha512-uVAgpimx9Ffw3xowtg/7qQPwHFx94yCje+DoBx+LNm2ePDpQXHrzE+Sb0Si2VBObYz+LcRps15cq+95YM7gkUw== - -"@esbuild/netbsd-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz#bbe430f60d378ecb88decb219c602667387a6047" - integrity sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg== - -"@esbuild/openbsd-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.18.16.tgz#ae67ce766d58aab6c0e6037f1a76f15df4a2a5fe" - integrity sha512-6OjCQM9wf7z8/MBi6BOWaTL2AS/SZudsZtBziXMtNI8r/U41AxS9x7jn0ATOwVy08OotwkPqGRMkpPR2wcTJXA== - -"@esbuild/openbsd-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz#99d1cf2937279560d2104821f5ccce220cb2af70" - integrity sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow== - -"@esbuild/sunos-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.18.16.tgz#998efe8a58374b7351ac710455051639a6ce6a05" - integrity sha512-ZoNkruFYJp9d1LbUYCh8awgQDvB9uOMZqlQ+gGEZR7v6C+N6u7vPr86c+Chih8niBR81Q/bHOSKGBK3brJyvkQ== - -"@esbuild/sunos-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz#08741512c10d529566baba837b4fe052c8f3487b" - integrity sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg== - -"@esbuild/win32-arm64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.18.16.tgz#8de33682243508eef8d4de1816df2c05adad2b21" - integrity sha512-+j4anzQ9hrs+iqO+/wa8UE6TVkKua1pXUb0XWFOx0FiAj6R9INJ+WE//1/Xo6FG1vB5EpH3ko+XcgwiDXTxcdw== - -"@esbuild/win32-arm64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz#675b7385398411240735016144ab2e99a60fc75d" - integrity sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A== - -"@esbuild/win32-ia32@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.18.16.tgz#95c9f4274fb3ef9e449d464ffe3e3b7fa091503b" - integrity sha512-5PFPmq3sSKTp9cT9dzvI67WNfRZGvEVctcZa1KGjDDu4n3H8k59Inbk0du1fz0KrAbKKNpJbdFXQMDUz7BG4rQ== - -"@esbuild/win32-ia32@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz#1bfc3ce98aa6ca9a0969e4d2af72144c59c1193b" - integrity sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA== - -"@esbuild/win32-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.18.16.tgz#5be58d31d0120c68af8e38b702e6937ce764cd68" - integrity sha512-sCIVrrtcWN5Ua7jYXNG1xD199IalrbfV2+0k/2Zf2OyV2FtnQnMgdzgpRAbi4AWlKJj1jkX+M+fEGPQj6BQB4w== - -"@esbuild/win32-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz#acad351d582d157bb145535db2a6ff53dd514b5c" - integrity sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw== - "@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0": version "4.4.0" - resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" + resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz" integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA== dependencies: eslint-visitor-keys "^3.3.0" "@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.5.1": version "4.6.1" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.6.1.tgz#0b371c118b8e4ebf9dbddb56120ab4befd791211" + resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.1.tgz" integrity sha512-O7x6dMstWLn2ktjcoiNLDkAGG2EjveHL+Vvc+n0fXumkJYAcSqcVYKtwDU+hDZ0uDUsnUagSYaZrOLAYE8un1A== "@eslint/eslintrc@^2.1.0": version "2.1.0" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.0.tgz#82256f164cc9e0b59669efc19d57f8092706841d" + resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz" integrity sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A== dependencies: ajv "^6.12.4" @@ -1500,17 +1285,17 @@ "@eslint/js@8.44.0": version "8.44.0" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.44.0.tgz#961a5903c74139390478bdc808bcde3fc45ab7af" + resolved "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz" integrity sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw== "@hookform/resolvers@^3.3.4": version "3.3.4" - resolved "https://registry.yarnpkg.com/@hookform/resolvers/-/resolvers-3.3.4.tgz#de9b668c2835eb06892290192de6e2a5c906229b" + resolved "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-3.3.4.tgz" integrity sha512-o5cgpGOuJYrd+iMKvkttOclgwRW86EsWJZZRC23prf0uU2i48Htq4PuT73AVb9ionFyZrwYEITuOFGF+BydEtQ== "@humanwhocodes/config-array@^0.11.10": version "0.11.10" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.10.tgz#5a3ffe32cc9306365fb3fd572596cd602d5e12d2" + resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz" integrity sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ== dependencies: "@humanwhocodes/object-schema" "^1.2.1" @@ -1519,24 +1304,24 @@ "@humanwhocodes/module-importer@^1.0.1": version "1.0.1" - resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" + resolved "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz" integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== "@humanwhocodes/object-schema@^1.2.1": version "1.2.1" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" + resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz" integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== "@jest/schemas@^29.6.3": version "29.6.3" - resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" + resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz" integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA== dependencies: "@sinclair/typebox" "^0.27.8" "@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": version "0.3.3" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" + resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz" integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== dependencies: "@jridgewell/set-array" "^1.0.1" @@ -1545,27 +1330,27 @@ "@jridgewell/resolve-uri@3.1.0": version "3.1.0" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" + resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz" integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== "@jridgewell/set-array@^1.0.1": version "1.1.2" - resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" + resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== -"@jridgewell/sourcemap-codec@1.4.14": - version "1.4.14" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" - integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== - "@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.15": version "1.4.15" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz" integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== +"@jridgewell/sourcemap-codec@1.4.14": + version "1.4.14" + resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz" + integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== + "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": version "0.3.18" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz#25783b2086daf6ff1dcb53c9249ae480e4dd4cd6" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz" integrity sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA== dependencies: "@jridgewell/resolve-uri" "3.1.0" @@ -1573,7 +1358,7 @@ "@mui/base@5.0.0-beta.8": version "5.0.0-beta.8" - resolved "https://registry.yarnpkg.com/@mui/base/-/base-5.0.0-beta.8.tgz#a0a9531ae9147be92d17e4f0e3b9accc57916841" + resolved "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.8.tgz" integrity sha512-b4vVjMZx5KzzEMf4arXKoeV5ZegAMOoPwoy1vfUBwhvXc2QtaaAyBp50U7OA2L06Leubc1A+lEp3eqwZoFn87g== dependencies: "@babel/runtime" "^7.22.6" @@ -1587,12 +1372,12 @@ "@mui/core-downloads-tracker@^5.14.1": version "5.14.1" - resolved "https://registry.yarnpkg.com/@mui/core-downloads-tracker/-/core-downloads-tracker-5.14.1.tgz#af156cb3e15b202f5c09f66e7d8b71ca86aef525" + resolved "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.14.1.tgz" integrity sha512-mIa1WmDmNr1LoupV1Rbxt9bTFKMbIn10RHG1bnZ/FJCkAYpuU/D4n+R+ttiycgcZNngU++zyh/OQeJblzbQPzg== "@mui/material@^5.14.1": version "5.14.1" - resolved "https://registry.yarnpkg.com/@mui/material/-/material-5.14.1.tgz#2711e4ca5c9bdc67b916d01faee650a7a5260bb8" + resolved "https://registry.npmjs.org/@mui/material/-/material-5.14.1.tgz" integrity sha512-WtsgYuageTunLfxH3Ri+o1RuQTFImtRHxMcVNyD0Hhd2/znjW6KODNz0XfjvLRnNCAynBxZNiflcoIBW40h9PQ== dependencies: "@babel/runtime" "^7.22.6" @@ -1610,7 +1395,7 @@ "@mui/private-theming@^5.13.7": version "5.13.7" - resolved "https://registry.yarnpkg.com/@mui/private-theming/-/private-theming-5.13.7.tgz#2f8ef5da066f3c6c6423bd4260d003a28d10b099" + resolved "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.13.7.tgz" integrity sha512-qbSr+udcij5F9dKhGX7fEdx2drXchq7htLNr2Qg2Ma+WJ6q0ERlEqGSBiPiVDJkptcjeVL4DGmcf1wl5+vD4EA== dependencies: "@babel/runtime" "^7.22.5" @@ -1619,7 +1404,7 @@ "@mui/styled-engine@^5.13.2": version "5.13.2" - resolved "https://registry.yarnpkg.com/@mui/styled-engine/-/styled-engine-5.13.2.tgz#c87bd61c0ab8086d34828b6defe97c02bcd642ef" + resolved "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.13.2.tgz" integrity sha512-VCYCU6xVtXOrIN8lcbuPmoG+u7FYuOERG++fpY74hPpEWkyFQG97F+/XfTQVYzlR2m7nPjnwVUgATcTCMEaMvw== dependencies: "@babel/runtime" "^7.21.0" @@ -1629,7 +1414,7 @@ "@mui/system@^5.14.1": version "5.14.1" - resolved "https://registry.yarnpkg.com/@mui/system/-/system-5.14.1.tgz#ec8ae69f63963b5916dad4bca2f8a86a001a2392" + resolved "https://registry.npmjs.org/@mui/system/-/system-5.14.1.tgz" integrity sha512-u+xlsU34Jdkgx1CxmBnIC4Y08uPdVX5iEd3S/1dggDFtOGp+Lj8xmKRJAQ8PJOOJLOh8pDwaZx4AwXikL4l1QA== dependencies: "@babel/runtime" "^7.22.6" @@ -1643,12 +1428,12 @@ "@mui/types@^7.2.4": version "7.2.4" - resolved "https://registry.yarnpkg.com/@mui/types/-/types-7.2.4.tgz#b6fade19323b754c5c6de679a38f068fd50b9328" + resolved "https://registry.npmjs.org/@mui/types/-/types-7.2.4.tgz" integrity sha512-LBcwa8rN84bKF+f5sDyku42w1NTxaPgPyYKODsh01U1fVstTClbUoSA96oyRBnSNyEiAVjKm6Gwx9vjR+xyqHA== "@mui/utils@^5.13.7", "@mui/utils@^5.14.1": version "5.14.1" - resolved "https://registry.yarnpkg.com/@mui/utils/-/utils-5.14.1.tgz#29696371016552a6eb3af975bc7af429ec88b29a" + resolved "https://registry.npmjs.org/@mui/utils/-/utils-5.14.1.tgz" integrity sha512-39KHKK2JeqRmuUcLDLwM+c2XfVC136C5/yUyQXmO2PVbOb2Bol4KxtkssEqCbTwg87PSCG3f1Tb0keRsK7cVGw== dependencies: "@babel/runtime" "^7.22.6" @@ -1659,25 +1444,25 @@ "@nicolo-ribaudo/chokidar-2@2.1.8-no-fsevents.3": version "2.1.8-no-fsevents.3" - resolved "https://registry.yarnpkg.com/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.3.tgz#323d72dd25103d0c4fbdce89dadf574a787b1f9b" + resolved "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.3.tgz" integrity sha512-s88O1aVtXftvp5bCPB7WnmXc5IwOZZ7YPuwNPt+GtOOXpPvad1LfbmjYv+qII7zP6RU2QGnqve27dnLycEnyEQ== "@nodelib/fs.scandir@2.1.5": version "2.1.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz" integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== dependencies: "@nodelib/fs.stat" "2.0.5" run-parallel "^1.1.9" -"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": +"@nodelib/fs.stat@^2.0.2", "@nodelib/fs.stat@2.0.5": version "2.0.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== "@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": version "1.2.8" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz" integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== dependencies: "@nodelib/fs.scandir" "2.1.5" @@ -1685,142 +1470,67 @@ "@orbs-network/ton-access@^2.3.3": version "2.3.3" - resolved "https://registry.yarnpkg.com/@orbs-network/ton-access/-/ton-access-2.3.3.tgz#20292f83b52a75f451f185821180a7d9b829bcd3" + resolved "https://registry.npmjs.org/@orbs-network/ton-access/-/ton-access-2.3.3.tgz" integrity sha512-b1miCPts7wBG9JKYgzXIRZQm/LMy5Uk1mNK8NzlcXHL3HRHJkkFbuYJGuj3IkWCiIicW3Ipp4sYnn3Fwo4oB0g== dependencies: isomorphic-fetch "^3.0.0" "@popperjs/core@^2.11.8": version "2.11.8" - resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f" + resolved "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz" integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A== "@remix-run/router@1.7.2": version "1.7.2" - resolved "https://registry.yarnpkg.com/@remix-run/router/-/router-1.7.2.tgz#cba1cf0a04bc04cb66027c51fa600e9cbc388bc8" + resolved "https://registry.npmjs.org/@remix-run/router/-/router-1.7.2.tgz" integrity sha512-7Lcn7IqGMV+vizMPoEl5F0XDshcdDYtMI6uJLQdQz5CfZAwy3vvGKYSUk789qndt5dEC4HfSjviSYlSoHGL2+A== -"@rollup/rollup-android-arm-eabi@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.0.tgz#bbd0e616b2078cd2d68afc9824d1fadb2f2ffd27" - integrity sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ== - -"@rollup/rollup-android-arm64@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.0.tgz#97255ef6384c5f73f4800c0de91f5f6518e21203" - integrity sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA== - "@rollup/rollup-darwin-arm64@4.18.0": version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz#b6dd74e117510dfe94541646067b0545b42ff096" + resolved "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz" integrity sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w== -"@rollup/rollup-darwin-x64@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.0.tgz#e07d76de1cec987673e7f3d48ccb8e106d42c05c" - integrity sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA== - -"@rollup/rollup-linux-arm-gnueabihf@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.0.tgz#9f1a6d218b560c9d75185af4b8bb42f9f24736b8" - integrity sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA== - -"@rollup/rollup-linux-arm-musleabihf@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.0.tgz#53618b92e6ffb642c7b620e6e528446511330549" - integrity sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A== - -"@rollup/rollup-linux-arm64-gnu@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.0.tgz#99a7ba5e719d4f053761a698f7b52291cefba577" - integrity sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw== - -"@rollup/rollup-linux-arm64-musl@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.0.tgz#f53db99a45d9bc00ce94db8a35efa7c3c144a58c" - integrity sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ== - -"@rollup/rollup-linux-powerpc64le-gnu@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.0.tgz#cbb0837408fe081ce3435cf3730e090febafc9bf" - integrity sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA== - -"@rollup/rollup-linux-riscv64-gnu@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.0.tgz#8ed09c1d1262ada4c38d791a28ae0fea28b80cc9" - integrity sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg== - -"@rollup/rollup-linux-s390x-gnu@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.0.tgz#938138d3c8e0c96f022252a28441dcfb17afd7ec" - integrity sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg== - -"@rollup/rollup-linux-x64-gnu@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.0.tgz#1a7481137a54740bee1ded4ae5752450f155d942" - integrity sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w== - -"@rollup/rollup-linux-x64-musl@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.0.tgz#f1186afc601ac4f4fc25fac4ca15ecbee3a1874d" - integrity sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg== - -"@rollup/rollup-win32-arm64-msvc@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.0.tgz#ed6603e93636a96203c6915be4117245c1bd2daf" - integrity sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA== - -"@rollup/rollup-win32-ia32-msvc@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.0.tgz#14e0b404b1c25ebe6157a15edb9c46959ba74c54" - integrity sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg== - -"@rollup/rollup-win32-x64-msvc@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.0.tgz#5d694d345ce36b6ecf657349e03eb87297e68da4" - integrity sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g== - "@sinclair/typebox@^0.27.8": version "0.27.8" - resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" + resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz" integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== "@sindresorhus/is@^4.0.0": version "4.6.0" - resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f" + resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz" integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw== "@smithy/types@^1.1.0": version "1.2.0" - resolved "https://registry.yarnpkg.com/@smithy/types/-/types-1.2.0.tgz#9dc65767b0ee3d6681704fcc67665d6fc9b6a34e" + resolved "https://registry.npmjs.org/@smithy/types/-/types-1.2.0.tgz" integrity sha512-z1r00TvBqF3dh4aHhya7nz1HhvCg4TRmw51fjMrh5do3h+ngSstt/yKlNbHeb9QxJmFbmN8KEVSWgb1bRvfEoA== dependencies: tslib "^2.5.0" "@szmarczak/http-timer@^4.0.5": version "4.0.6" - resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-4.0.6.tgz#b4a914bb62e7c272d4e5989fe4440f812ab1d807" + resolved "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz" integrity sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w== dependencies: defer-to-connect "^2.0.0" "@ton/core@^0.58.1": version "0.58.1" - resolved "https://registry.yarnpkg.com/@ton/core/-/core-0.58.1.tgz#f6f2ecef6a7149bcd23825bfbb454f116d54363f" + resolved "https://registry.npmjs.org/@ton/core/-/core-0.58.1.tgz" integrity sha512-zydh42iT6E3U3Ky/DhTFqJMN/ycKKzbsHASY257Qr2sZn97G/MOcHFizPfMnbJJgx0H9iHX6mdyMvp1IKBVAFA== dependencies: symbol.inspect "1.0.1" "@ton/crypto-primitives@2.1.0": version "2.1.0" - resolved "https://registry.yarnpkg.com/@ton/crypto-primitives/-/crypto-primitives-2.1.0.tgz#8c9277c250b59aae3c819e0d6bd61e44d998e9ca" + resolved "https://registry.npmjs.org/@ton/crypto-primitives/-/crypto-primitives-2.1.0.tgz" integrity sha512-PQesoyPgqyI6vzYtCXw4/ZzevePc4VGcJtFwf08v10OevVJHVfW238KBdpj1kEDQkxWLeuNHEpTECNFKnP6tow== dependencies: jssha "3.2.0" "@ton/crypto@^3.3.0": version "3.3.0" - resolved "https://registry.yarnpkg.com/@ton/crypto/-/crypto-3.3.0.tgz#019103df6540fbc1d8102979b4587bc85ff9779e" + resolved "https://registry.npmjs.org/@ton/crypto/-/crypto-3.3.0.tgz" integrity sha512-/A6CYGgA/H36OZ9BbTaGerKtzWp50rg67ZCH2oIjV1NcrBaCK9Z343M+CxedvM7Haf3f/Ee9EhxyeTp0GKMUpA== dependencies: "@ton/crypto-primitives" "2.1.0" @@ -1829,14 +1539,14 @@ "@ton/test-utils@^0.4.2": version "0.4.2" - resolved "https://registry.yarnpkg.com/@ton/test-utils/-/test-utils-0.4.2.tgz#965429aaf3258a49cc8ba0ef6623867f2c8b8e27" + resolved "https://registry.npmjs.org/@ton/test-utils/-/test-utils-0.4.2.tgz" integrity sha512-fthY8Nrlmy8jnOl/vx6yjeKzzu62ZXMe7ej9Xg7rb4d3511V7dVQK+nw4YLSW5+dD/6WT03dFuNZXnuMYy5fHw== dependencies: node-inspect-extracted "^2.0.0" "@ton/ton@^15.0.0": version "15.0.0" - resolved "https://registry.yarnpkg.com/@ton/ton/-/ton-15.0.0.tgz#03aab727d082db877ec6012f3b1b3fb6aa564b40" + resolved "https://registry.npmjs.org/@ton/ton/-/ton-15.0.0.tgz" integrity sha512-0xBivkN0u0+vczt3mKJrx5yqkCxRR00wM8gXCmN/eOzzHKXRFWDEjJp8EEs5J/mq1Op/OhCOFExmOZkr58wgOA== dependencies: axios "^1.6.7" @@ -1847,21 +1557,21 @@ "@tonconnect/isomorphic-eventsource@^0.0.2": version "0.0.2" - resolved "https://registry.yarnpkg.com/@tonconnect/isomorphic-eventsource/-/isomorphic-eventsource-0.0.2.tgz#e58c44cf9953e090f2c35da9a638946ddb614be5" + resolved "https://registry.npmjs.org/@tonconnect/isomorphic-eventsource/-/isomorphic-eventsource-0.0.2.tgz" integrity sha512-B4UoIjPi0QkvIzZH5fV3BQLWrqSYABdrzZQSI9sJA9aA+iC0ohOzFwVVGXanlxeDAy1bcvPbb29f6sVUk0UnnQ== dependencies: eventsource "^2.0.2" "@tonconnect/isomorphic-fetch@^0.0.3": version "0.0.3" - resolved "https://registry.yarnpkg.com/@tonconnect/isomorphic-fetch/-/isomorphic-fetch-0.0.3.tgz#31978e04ddc4428eff532c23d20229ed5ddb6417" + resolved "https://registry.npmjs.org/@tonconnect/isomorphic-fetch/-/isomorphic-fetch-0.0.3.tgz" integrity sha512-jIg5nTrDwnite4fXao3dD83eCpTvInTjZon/rZZrIftIegh4XxyVb5G2mpMqXrVGk1e8SVXm3Kj5OtfMplQs0w== dependencies: node-fetch "^2.6.9" "@tonconnect/protocol@^2.2.6": version "2.2.6" - resolved "https://registry.yarnpkg.com/@tonconnect/protocol/-/protocol-2.2.6.tgz#24b3fbcde6003e65fb5840a190072db5378699db" + resolved "https://registry.npmjs.org/@tonconnect/protocol/-/protocol-2.2.6.tgz" integrity sha512-kyoDz5EqgsycYP+A+JbVsAUYHNT059BCrK+m0pqxykMODwpziuSAXfwAZmHcg8v7NB9VKYbdFY55xKeXOuEd0w== dependencies: tweetnacl "^1.0.3" @@ -1869,7 +1579,7 @@ "@tonconnect/sdk@3.0.5": version "3.0.5" - resolved "https://registry.yarnpkg.com/@tonconnect/sdk/-/sdk-3.0.5.tgz#08a202bdc8ea897c37221fd69925c35cd2106323" + resolved "https://registry.npmjs.org/@tonconnect/sdk/-/sdk-3.0.5.tgz" integrity sha512-ow0qnN4s3iQ/r2uXobZ7YzdQBtan/36CgCT9IP35G07g38UxsUXwzw8ANmJTDj/JPiQcIKuYBMfIwIX9zLM0wg== dependencies: "@tonconnect/isomorphic-eventsource" "^0.0.2" @@ -1878,14 +1588,14 @@ "@tonconnect/ui-react@^2.0.9": version "2.0.9" - resolved "https://registry.yarnpkg.com/@tonconnect/ui-react/-/ui-react-2.0.9.tgz#c226b81110e05b7e259bbf965ad5da42318a5dd3" + resolved "https://registry.npmjs.org/@tonconnect/ui-react/-/ui-react-2.0.9.tgz" integrity sha512-wN7tEZpQiRYSUcdNAxFsDkk5TYo8krIu00ZLE1R5kXyr+XpO120jOmTEweBSXvIzTgEVkD/PxDZbBQQxRTXsUw== dependencies: "@tonconnect/ui" "2.0.9" "@tonconnect/ui@2.0.9": version "2.0.9" - resolved "https://registry.yarnpkg.com/@tonconnect/ui/-/ui-2.0.9.tgz#589285c9b8f4b0d94c10b3feadfae266bf086503" + resolved "https://registry.npmjs.org/@tonconnect/ui/-/ui-2.0.9.tgz" integrity sha512-ZxofTBf81NqrxyD0ybI8AuFHN11uKVg/00xTDFhP5FoPB8rYC7En9qE2VJ6IvwvtTpmh8jspi2ancOHUMBoCQA== dependencies: "@tonconnect/sdk" "3.0.5" @@ -1895,7 +1605,7 @@ "@types/cacheable-request@^6.0.1": version "6.0.3" - resolved "https://registry.yarnpkg.com/@types/cacheable-request/-/cacheable-request-6.0.3.tgz#a430b3260466ca7b5ca5bfd735693b36e7a9d183" + resolved "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz" integrity sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw== dependencies: "@types/http-cache-semantics" "*" @@ -1905,63 +1615,63 @@ "@types/d3-array@^3.0.3": version "3.2.1" - resolved "https://registry.yarnpkg.com/@types/d3-array/-/d3-array-3.2.1.tgz#1f6658e3d2006c4fceac53fde464166859f8b8c5" + resolved "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.2.1.tgz" integrity sha512-Y2Jn2idRrLzUfAKV2LyRImR+y4oa2AntrgID95SHJxuMUrkNXmanDSed71sRNZysveJVt1hLLemQZIady0FpEg== "@types/d3-color@*": version "3.1.3" - resolved "https://registry.yarnpkg.com/@types/d3-color/-/d3-color-3.1.3.tgz#368c961a18de721da8200e80bf3943fb53136af2" + resolved "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.3.tgz" integrity sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A== "@types/d3-ease@^3.0.0": version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/d3-ease/-/d3-ease-3.0.2.tgz#e28db1bfbfa617076f7770dd1d9a48eaa3b6c51b" + resolved "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.2.tgz" integrity sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA== "@types/d3-interpolate@^3.0.1": version "3.0.4" - resolved "https://registry.yarnpkg.com/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz#412b90e84870285f2ff8a846c6eb60344f12a41c" + resolved "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz" integrity sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA== dependencies: "@types/d3-color" "*" "@types/d3-path@*": version "3.1.0" - resolved "https://registry.yarnpkg.com/@types/d3-path/-/d3-path-3.1.0.tgz#2b907adce762a78e98828f0b438eaca339ae410a" + resolved "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.1.0.tgz" integrity sha512-P2dlU/q51fkOc/Gfl3Ul9kicV7l+ra934qBFXCFhrZMOL6du1TM0pm1ThYvENukyOn5h9v+yMJ9Fn5JK4QozrQ== "@types/d3-scale@^4.0.2": version "4.0.8" - resolved "https://registry.yarnpkg.com/@types/d3-scale/-/d3-scale-4.0.8.tgz#d409b5f9dcf63074464bf8ddfb8ee5a1f95945bb" + resolved "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.8.tgz" integrity sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ== dependencies: "@types/d3-time" "*" "@types/d3-shape@^3.1.0": version "3.1.6" - resolved "https://registry.yarnpkg.com/@types/d3-shape/-/d3-shape-3.1.6.tgz#65d40d5a548f0a023821773e39012805e6e31a72" + resolved "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.6.tgz" integrity sha512-5KKk5aKGu2I+O6SONMYSNflgiP0WfZIQvVUMan50wHsLG1G94JlxEVnCpQARfTtzytuY0p/9PXXZb3I7giofIA== dependencies: "@types/d3-path" "*" "@types/d3-time@*", "@types/d3-time@^3.0.0": version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/d3-time/-/d3-time-3.0.3.tgz#3c186bbd9d12b9d84253b6be6487ca56b54f88be" + resolved "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.3.tgz" integrity sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw== "@types/d3-timer@^3.0.0": version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/d3-timer/-/d3-timer-3.0.2.tgz#70bbda77dc23aa727413e22e214afa3f0e852f70" + resolved "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.2.tgz" integrity sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw== -"@types/estree@1.0.5", "@types/estree@^1.0.0": +"@types/estree@^1.0.0", "@types/estree@1.0.5": version "1.0.5" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" + resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz" integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== "@types/hoist-non-react-statics@*": version "3.3.1" - resolved "https://registry.yarnpkg.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz#1124aafe5118cb591977aeb1ceaaed1070eb039f" + resolved "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz" integrity sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA== dependencies: "@types/react" "*" @@ -1969,62 +1679,62 @@ "@types/http-cache-semantics@*": version "4.0.4" - resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz#b979ebad3919799c979b17c72621c0bc0a31c6c4" + resolved "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz" integrity sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA== "@types/json-schema@^7.0.12": version "7.0.12" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.12.tgz#d70faba7039d5fca54c83c7dbab41051d2b6f6cb" + resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz" integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA== "@types/keyv@^3.1.4": version "3.1.4" - resolved "https://registry.yarnpkg.com/@types/keyv/-/keyv-3.1.4.tgz#3ccdb1c6751b0c7e52300bcdacd5bcbf8faa75b6" + resolved "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz" integrity sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg== dependencies: "@types/node" "*" "@types/node@*": version "20.12.8" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.12.8.tgz#35897bf2bfe3469847ab04634636de09552e8256" + resolved "https://registry.npmjs.org/@types/node/-/node-20.12.8.tgz" integrity sha512-NU0rJLJnshZWdE/097cdCBbyW1h4hEg0xpovcoAQYHl8dnEyp/NAOiE45pvc+Bd1Dt+2r94v2eGFpQJ4R7g+2w== dependencies: undici-types "~5.26.4" "@types/parse-json@^4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" + resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== "@types/prop-types@*", "@types/prop-types@^15.7.5": version "15.7.5" - resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf" + resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz" integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w== "@types/react-dom@^18.2.7": version "18.2.7" - resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.2.7.tgz#67222a08c0a6ae0a0da33c3532348277c70abb63" + resolved "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.7.tgz" integrity sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA== dependencies: "@types/react" "*" "@types/react-is@^18.2.1": version "18.2.1" - resolved "https://registry.yarnpkg.com/@types/react-is/-/react-is-18.2.1.tgz#61d01c2a6fc089a53520c0b66996d458fdc46863" + resolved "https://registry.npmjs.org/@types/react-is/-/react-is-18.2.1.tgz" integrity sha512-wyUkmaaSZEzFZivD8F2ftSyAfk6L+DfFliVj/mYdOXbVjRcS87fQJLTnhk6dRZPuJjI+9g6RZJO4PNCngUrmyw== dependencies: "@types/react" "*" "@types/react-transition-group@^4.4.6": version "4.4.6" - resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.6.tgz#18187bcda5281f8e10dfc48f0943e2fdf4f75e2e" + resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.6.tgz" integrity sha512-VnCdSxfcm08KjsJVQcfBmhEQAPnLB8G08hAxn39azX1qYBQ/5RVQuoHuKIcfKOdncuaUvEpFKFzEvbtIMsfVew== dependencies: "@types/react" "*" "@types/react@*", "@types/react@^18.2.15": version "18.2.16" - resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.16.tgz#403dda0e933caccac9efde569923239ac426786c" + resolved "https://registry.npmjs.org/@types/react/-/react-18.2.16.tgz" integrity sha512-LLFWr12ZhBJ4YVw7neWLe6Pk7Ey5R9OCydfuMsz1L8bZxzaawJj2p06Q8/EFEHDeTBQNFLF62X+CG7B2zIyu0Q== dependencies: "@types/prop-types" "*" @@ -2033,45 +1743,45 @@ "@types/responselike@^1.0.0": version "1.0.3" - resolved "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.3.tgz#cc29706f0a397cfe6df89debfe4bf5cea159db50" + resolved "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz" integrity sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw== dependencies: "@types/node" "*" "@types/scheduler@*": version "0.16.3" - resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.3.tgz#cef09e3ec9af1d63d2a6cc5b383a737e24e6dcf5" + resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz" integrity sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ== "@types/semver@^7.5.0": version "7.5.0" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.0.tgz#591c1ce3a702c45ee15f47a42ade72c2fd78978a" + resolved "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz" integrity sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw== "@types/styled-components@^5.1.26": version "5.1.26" - resolved "https://registry.yarnpkg.com/@types/styled-components/-/styled-components-5.1.26.tgz#5627e6812ee96d755028a98dae61d28e57c233af" + resolved "https://registry.npmjs.org/@types/styled-components/-/styled-components-5.1.26.tgz" integrity sha512-KuKJ9Z6xb93uJiIyxo/+ksS7yLjS1KzG6iv5i78dhVg/X3u5t1H7juRWqVmodIdz6wGVaIApo1u01kmFRdJHVw== dependencies: "@types/hoist-non-react-statics" "*" "@types/react" "*" csstype "^3.0.2" -"@types/stylis@4.2.0", "@types/stylis@^4.0.2": +"@types/stylis@^4.0.2", "@types/stylis@4.2.0": version "4.2.0" - resolved "https://registry.yarnpkg.com/@types/stylis/-/stylis-4.2.0.tgz#199a3f473f0c3a6f6e4e1b17cdbc967f274bdc6b" + resolved "https://registry.npmjs.org/@types/stylis/-/stylis-4.2.0.tgz" integrity sha512-n4sx2bqL0mW1tvDf/loQ+aMX7GQD3lc3fkCMC55VFNDu/vBOabO+LTIeXKM14xK0ppk5TUGcWRjiSpIlUpghKw== "@types/yauzl@^2.9.1": version "2.10.3" - resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.10.3.tgz#e9b2808b4f109504a03cda958259876f61017999" + resolved "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz" integrity sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q== dependencies: "@types/node" "*" "@typescript-eslint/eslint-plugin@^6.0.0": version "6.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.2.0.tgz#57047c400be0632d4797ac081af8d399db3ebc3b" + resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.2.0.tgz" integrity sha512-rClGrMuyS/3j0ETa1Ui7s6GkLhfZGKZL3ZrChLeAiACBE/tRc1wq8SNZESUuluxhLj9FkUefRs2l6bCIArWBiQ== dependencies: "@eslint-community/regexpp" "^4.5.1" @@ -2089,7 +1799,7 @@ "@typescript-eslint/parser@^6.0.0": version "6.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.2.0.tgz#d37c30b0f459c6f39455335d8f4f085919a1c644" + resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.2.0.tgz" integrity sha512-igVYOqtiK/UsvKAmmloQAruAdUHihsOCvplJpplPZ+3h4aDkC/UKZZNKgB6h93ayuYLuEymU3h8nF1xMRbh37g== dependencies: "@typescript-eslint/scope-manager" "6.2.0" @@ -2100,7 +1810,7 @@ "@typescript-eslint/scope-manager@6.2.0": version "6.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.2.0.tgz#412a710d8fa20bc045533b3b19f423810b24f87a" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.2.0.tgz" integrity sha512-1ZMNVgm5nnHURU8ZSJ3snsHzpFeNK84rdZjluEVBGNu7jDymfqceB3kdIZ6A4xCfEFFhRIB6rF8q/JIqJd2R0Q== dependencies: "@typescript-eslint/types" "6.2.0" @@ -2108,7 +1818,7 @@ "@typescript-eslint/type-utils@6.2.0": version "6.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.2.0.tgz#02b27a3eeb41aa5460d6275d12cce5dd72e1c9fc" + resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.2.0.tgz" integrity sha512-DnGZuNU2JN3AYwddYIqrVkYW0uUQdv0AY+kz2M25euVNlujcN2u+rJgfJsBFlUEzBB6OQkUqSZPyuTLf2bP5mw== dependencies: "@typescript-eslint/typescript-estree" "6.2.0" @@ -2118,12 +1828,12 @@ "@typescript-eslint/types@6.2.0": version "6.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.2.0.tgz#b341a4e6d5f609267306b07afc6f62bcf92b1495" + resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.2.0.tgz" integrity sha512-1nRRaDlp/XYJQLvkQJG5F3uBTno5SHPT7XVcJ5n1/k2WfNI28nJsvLakxwZRNY5spuatEKO7d5nZWsQpkqXwBA== "@typescript-eslint/typescript-estree@6.2.0": version "6.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.2.0.tgz#4969944b831b481996aa4fbd73c7164ca683b8ef" + resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.2.0.tgz" integrity sha512-Mts6+3HQMSM+LZCglsc2yMIny37IhUgp1Qe8yJUYVyO6rHP7/vN0vajKu3JvHCBIy8TSiKddJ/Zwu80jhnGj1w== dependencies: "@typescript-eslint/types" "6.2.0" @@ -2136,7 +1846,7 @@ "@typescript-eslint/utils@6.2.0": version "6.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.2.0.tgz#606a20e5c13883c2d2bd0538ddc4b96b8d410979" + resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.2.0.tgz" integrity sha512-RCFrC1lXiX1qEZN8LmLrxYRhOkElEsPKTVSNout8DMzf8PeWoQG7Rxz2SadpJa3VSh5oYKGwt7j7X/VRg+Y3OQ== dependencies: "@eslint-community/eslint-utils" "^4.4.0" @@ -2149,7 +1859,7 @@ "@typescript-eslint/visitor-keys@6.2.0": version "6.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.2.0.tgz#71943f42fdaa2ec86dc3222091f41761a49ae71a" + resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.2.0.tgz" integrity sha512-QbaYUQVKKo9bgCzpjz45llCfwakyoxHetIy8CAvYCtd16Zu1KrpzNHofwF8kGkpPOxZB2o6kz+0nqH8ZkIzuoQ== dependencies: "@typescript-eslint/types" "6.2.0" @@ -2157,14 +1867,14 @@ "@vercel/analytics@^1.3.1": version "1.3.1" - resolved "https://registry.yarnpkg.com/@vercel/analytics/-/analytics-1.3.1.tgz#e2b1deac1b5d14fa2e4fe36186ac5054c6385ae4" + resolved "https://registry.npmjs.org/@vercel/analytics/-/analytics-1.3.1.tgz" integrity sha512-xhSlYgAuJ6Q4WQGkzYTLmXwhYl39sWjoMA3nHxfkvG+WdBT25c563a7QhwwKivEOZtPJXifYHR1m2ihoisbWyA== dependencies: server-only "^0.0.1" "@vitejs/plugin-react@^4.0.3": version "4.0.3" - resolved "https://registry.yarnpkg.com/@vitejs/plugin-react/-/plugin-react-4.0.3.tgz#007d27ad5ef1eac4bf8c29e168ba9be2203c371b" + resolved "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.0.3.tgz" integrity sha512-pwXDog5nwwvSIzwrvYYmA2Ljcd/ZNlcsSG2Q9CNDBwnsd55UGAyr2doXtB5j+2uymRCnCfExlznzzSFbBRcoCg== dependencies: "@babel/core" "^7.22.5" @@ -2174,7 +1884,7 @@ "@vitest/expect@1.6.0": version "1.6.0" - resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-1.6.0.tgz#0b3ba0914f738508464983f4d811bc122b51fb30" + resolved "https://registry.npmjs.org/@vitest/expect/-/expect-1.6.0.tgz" integrity sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ== dependencies: "@vitest/spy" "1.6.0" @@ -2183,7 +1893,7 @@ "@vitest/runner@1.6.0": version "1.6.0" - resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-1.6.0.tgz#a6de49a96cb33b0e3ba0d9064a3e8d6ce2f08825" + resolved "https://registry.npmjs.org/@vitest/runner/-/runner-1.6.0.tgz" integrity sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg== dependencies: "@vitest/utils" "1.6.0" @@ -2192,7 +1902,7 @@ "@vitest/snapshot@1.6.0": version "1.6.0" - resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-1.6.0.tgz#deb7e4498a5299c1198136f56e6e0f692e6af470" + resolved "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.6.0.tgz" integrity sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ== dependencies: magic-string "^0.30.5" @@ -2201,14 +1911,14 @@ "@vitest/spy@1.6.0": version "1.6.0" - resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-1.6.0.tgz#362cbd42ccdb03f1613798fde99799649516906d" + resolved "https://registry.npmjs.org/@vitest/spy/-/spy-1.6.0.tgz" integrity sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw== dependencies: tinyspy "^2.2.0" "@vitest/utils@1.6.0": version "1.6.0" - resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-1.6.0.tgz#5c5675ca7d6f546a7b4337de9ae882e6c57896a1" + resolved "https://registry.npmjs.org/@vitest/utils/-/utils-1.6.0.tgz" integrity sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw== dependencies: diff-sequences "^29.6.3" @@ -2218,34 +1928,39 @@ "@vkruglikov/react-telegram-web-app@^2.1.1": version "2.1.1" - resolved "https://registry.yarnpkg.com/@vkruglikov/react-telegram-web-app/-/react-telegram-web-app-2.1.1.tgz#56bd3a782135c7f3a2145eb98521bd355a4224e0" + resolved "https://registry.npmjs.org/@vkruglikov/react-telegram-web-app/-/react-telegram-web-app-2.1.1.tgz" integrity sha512-rIDAPVVDiZ7ektbTkjWmP88+xokYuE2Gjt5NCMkthsqcv1vzc9fUQOjvfFXA7i6Kob+5308acv2S3E3TdHR43A== acorn-jsx@^5.3.2: version "5.3.2" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== acorn-walk@^8.3.2: version "8.3.3" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.3.tgz#9caeac29eefaa0c41e3d4c65137de4d6f34df43e" + resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz" integrity sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw== dependencies: acorn "^8.11.0" -acorn@^8.11.0, acorn@^8.11.3: +acorn@^8.11.0: + version "8.12.0" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz" + integrity sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw== + +acorn@^8.11.3: version "8.12.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.12.0.tgz#1627bfa2e058148036133b8d9b51a700663c294c" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz" integrity sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw== acorn@^8.9.0: version "8.10.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz" integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== ajv@^6.10.0, ajv@^6.12.4: version "6.12.6" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== dependencies: fast-deep-equal "^3.1.1" @@ -2255,31 +1970,31 @@ ajv@^6.10.0, ajv@^6.12.4: ansi-regex@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-styles@^3.2.1: version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" ansi-styles@^4.1.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: color-convert "^2.0.1" ansi-styles@^5.0.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== anymatch@~3.1.2: version "3.1.3" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz" integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== dependencies: normalize-path "^3.0.0" @@ -2287,27 +2002,27 @@ anymatch@~3.1.2: argparse@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== array-union@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== assertion-error@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" + resolved "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz" integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== asynckit@^0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== axios@^1.5.0: version "1.5.0" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.5.0.tgz#f02e4af823e2e46a9768cfc74691fdd0517ea267" + resolved "https://registry.npmjs.org/axios/-/axios-1.5.0.tgz" integrity sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ== dependencies: follow-redirects "^1.15.0" @@ -2316,7 +2031,7 @@ axios@^1.5.0: axios@^1.6.7: version "1.7.7" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.7.7.tgz#2f554296f9892a72ac8d8e4c5b79c14a91d0a47f" + resolved "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz" integrity sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q== dependencies: follow-redirects "^1.15.6" @@ -2325,7 +2040,7 @@ axios@^1.6.7: babel-plugin-macros@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1" + resolved "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz" integrity sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg== dependencies: "@babel/runtime" "^7.12.5" @@ -2334,7 +2049,7 @@ babel-plugin-macros@^3.1.0: babel-plugin-polyfill-corejs2@^0.4.4: version "0.4.5" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz#8097b4cb4af5b64a1d11332b6fb72ef5e64a054c" + resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz" integrity sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg== dependencies: "@babel/compat-data" "^7.22.6" @@ -2343,7 +2058,7 @@ babel-plugin-polyfill-corejs2@^0.4.4: babel-plugin-polyfill-corejs3@^0.8.2: version "0.8.3" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz#b4f719d0ad9bb8e0c23e3e630c0c8ec6dd7a1c52" + resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz" integrity sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA== dependencies: "@babel/helper-define-polyfill-provider" "^0.4.2" @@ -2351,24 +2066,24 @@ babel-plugin-polyfill-corejs3@^0.8.2: babel-plugin-polyfill-regenerator@^0.5.1: version "0.5.2" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz#80d0f3e1098c080c8b5a65f41e9427af692dc326" + resolved "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz" integrity sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA== dependencies: "@babel/helper-define-polyfill-provider" "^0.4.2" balanced-match@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== binary-extensions@^2.0.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz" integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== brace-expansion@^1.1.7: version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: balanced-match "^1.0.0" @@ -2376,14 +2091,14 @@ brace-expansion@^1.1.7: braces@^3.0.2, braces@~3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== dependencies: fill-range "^7.0.1" browserslist@^4.21.9: version "4.21.9" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.9.tgz#e11bdd3c313d7e2a9e87e8b4b0c7872b13897635" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz" integrity sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg== dependencies: caniuse-lite "^1.0.30001503" @@ -2393,22 +2108,22 @@ browserslist@^4.21.9: buffer-crc32@~0.2.3: version "0.2.13" - resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + resolved "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz" integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== cac@^6.7.14: version "6.7.14" - resolved "https://registry.yarnpkg.com/cac/-/cac-6.7.14.tgz#804e1e6f506ee363cb0e3ccbb09cad5dd9870959" + resolved "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz" integrity sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ== cacheable-lookup@^5.0.3: version "5.0.4" - resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz#5a6b865b2c44357be3d5ebc2a467b032719a7005" + resolved "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz" integrity sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA== cacheable-request@^7.0.2: version "7.0.4" - resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-7.0.4.tgz#7a33ebf08613178b403635be7b899d3e69bbe817" + resolved "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz" integrity sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg== dependencies: clone-response "^1.0.2" @@ -2421,22 +2136,22 @@ cacheable-request@^7.0.2: callsites@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== camelize@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/camelize/-/camelize-1.0.1.tgz#89b7e16884056331a35d6b5ad064332c91daa6c3" + resolved "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz" integrity sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ== caniuse-lite@^1.0.30001503: version "1.0.30001517" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001517.tgz#90fabae294215c3495807eb24fc809e11dc2f0a8" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001517.tgz" integrity sha512-Vdhm5S11DaFVLlyiKu4hiUTkpZu+y1KA/rZZqVQfOD5YdDT/eQKlkt7NaE0WGOFgX32diqt9MiP9CAiFeRklaA== chai@^4.3.10: version "4.4.1" - resolved "https://registry.yarnpkg.com/chai/-/chai-4.4.1.tgz#3603fa6eba35425b0f2ac91a009fe924106e50d1" + resolved "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz" integrity sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g== dependencies: assertion-error "^1.1.0" @@ -2449,7 +2164,7 @@ chai@^4.3.10: chalk@^2.0.0: version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== dependencies: ansi-styles "^3.2.1" @@ -2458,7 +2173,7 @@ chalk@^2.0.0: chalk@^4.0.0: version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== dependencies: ansi-styles "^4.1.0" @@ -2466,14 +2181,14 @@ chalk@^4.0.0: check-error@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.3.tgz#a6502e4312a7ee969f646e83bb3ddd56281bd694" + resolved "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz" integrity sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg== dependencies: get-func-name "^2.0.2" chokidar@^3.4.0: version "3.5.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" + resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz" integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== dependencies: anymatch "~3.1.2" @@ -2486,99 +2201,99 @@ chokidar@^3.4.0: optionalDependencies: fsevents "~2.3.2" -classnames@^2.2.3: - version "2.5.1" - resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.5.1.tgz#ba774c614be0f016da105c858e7159eae8e7687b" - integrity sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow== - -classnames@^2.3.2: +classnames@^2.2.3, classnames@^2.3.2: version "2.3.2" - resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.3.2.tgz#351d813bf0137fcc6a76a16b88208d2560a0d924" + resolved "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz" integrity sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw== client-only@^0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/client-only/-/client-only-0.0.1.tgz#38bba5d403c41ab150bff64a95c85013cf73bca1" + resolved "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz" integrity sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA== clone-response@^1.0.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.3.tgz#af2032aa47816399cf5f0a1d0db902f517abb8c3" + resolved "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz" integrity sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA== dependencies: mimic-response "^1.0.0" clsx@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.2.1.tgz#0ddc4a20a549b59c93a4116bb26f5294ca17dc12" + resolved "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz" integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== -clsx@^2.0.0, clsx@^2.1.0: +clsx@^2.0.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.1.tgz#eed397c9fd8bd882bfb18deab7102049a2f32999" + resolved "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz" + integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== + +clsx@^2.1.0: + version "2.1.1" + resolved "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz" integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== color-convert@^1.9.0: version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: color-name "1.1.3" color-convert@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== dependencies: color-name "~1.1.4" -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== - color-name@~1.1.4: version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + combined-stream@^1.0.8: version "1.0.8" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== dependencies: delayed-stream "~1.0.0" commander@^4.0.1: version "4.1.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" + resolved "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz" integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== concat-map@0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== confbox@^0.1.7: version "0.1.7" - resolved "https://registry.yarnpkg.com/confbox/-/confbox-0.1.7.tgz#ccfc0a2bcae36a84838e83a3b7f770fb17d6c579" + resolved "https://registry.npmjs.org/confbox/-/confbox-0.1.7.tgz" integrity sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA== convert-source-map@^1.1.0, convert-source-map@^1.5.0, convert-source-map@^1.7.0: version "1.9.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz" integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== core-js-compat@^3.31.0: version "3.31.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.31.1.tgz#5084ad1a46858df50ff89ace152441a63ba7aae0" + resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.31.1.tgz" integrity sha512-wIDWd2s5/5aJSdpOJHfSibxNODxoGoWOBHt8JSPB41NOE94M7kuTPZCYLOlTtuoXTsBPKobpJ6T+y0SSy5L9SA== dependencies: browserslist "^4.21.9" cosmiconfig@^7.0.0: version "7.1.0" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" + resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz" integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA== dependencies: "@types/parse-json" "^4.0.0" @@ -2589,7 +2304,7 @@ cosmiconfig@^7.0.0: cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== dependencies: path-key "^3.1.0" @@ -2598,60 +2313,60 @@ cross-spawn@^7.0.2, cross-spawn@^7.0.3: css-color-keywords@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05" + resolved "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz" integrity sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg== -css-to-react-native@3.2.0, css-to-react-native@^3.2.0: +css-to-react-native@^3.2.0, css-to-react-native@3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-3.2.0.tgz#cdd8099f71024e149e4f6fe17a7d46ecd55f1e32" + resolved "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz" integrity sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ== dependencies: camelize "^1.0.0" css-color-keywords "^1.0.0" postcss-value-parser "^4.0.2" -csstype@3.1.2, csstype@^3.0.2, csstype@^3.1.2: +csstype@^3.0.2, csstype@^3.1.2, csstype@3.1.2: version "3.1.2" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" + resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz" integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== -"d3-array@2 - 3", "d3-array@2.10.0 - 3", d3-array@^3.1.6: +d3-array@^3.1.6, "d3-array@2 - 3", "d3-array@2.10.0 - 3": version "3.2.4" - resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-3.2.4.tgz#15fec33b237f97ac5d7c986dc77da273a8ed0bb5" + resolved "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz" integrity sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg== dependencies: internmap "1 - 2" "d3-color@1 - 3": version "3.1.0" - resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-3.1.0.tgz#395b2833dfac71507f12ac2f7af23bf819de24e2" + resolved "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz" integrity sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA== d3-ease@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-ease/-/d3-ease-3.0.1.tgz#9658ac38a2140d59d346160f1f6c30fda0bd12f4" + resolved "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz" integrity sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w== "d3-format@1 - 3": version "3.1.0" - resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-3.1.0.tgz#9260e23a28ea5cb109e93b21a06e24e2ebd55641" + resolved "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz" integrity sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA== -"d3-interpolate@1.2.0 - 3", d3-interpolate@^3.0.1: +d3-interpolate@^3.0.1, "d3-interpolate@1.2.0 - 3": version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-3.0.1.tgz#3c47aa5b32c5b3dfb56ef3fd4342078a632b400d" + resolved "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz" integrity sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g== dependencies: d3-color "1 - 3" d3-path@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-3.1.0.tgz#22df939032fb5a71ae8b1800d61ddb7851c42526" + resolved "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz" integrity sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ== d3-scale@^4.0.2: version "4.0.2" - resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-4.0.2.tgz#82b38e8e8ff7080764f8dcec77bd4be393689396" + resolved "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz" integrity sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ== dependencies: d3-array "2.10.0 - 3" @@ -2662,103 +2377,103 @@ d3-scale@^4.0.2: d3-shape@^3.1.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-3.2.0.tgz#a1a839cbd9ba45f28674c69d7f855bcf91dfc6a5" + resolved "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz" integrity sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA== dependencies: d3-path "^3.1.0" "d3-time-format@2 - 4": version "4.1.0" - resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-4.1.0.tgz#7ab5257a5041d11ecb4fe70a5c7d16a195bb408a" + resolved "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz" integrity sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg== dependencies: d3-time "1 - 3" -"d3-time@1 - 3", "d3-time@2.1.1 - 3", d3-time@^3.0.0: +d3-time@^3.0.0, "d3-time@1 - 3", "d3-time@2.1.1 - 3": version "3.1.0" - resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-3.1.0.tgz#9310db56e992e3c0175e1ef385e545e48a9bb5c7" + resolved "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz" integrity sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q== dependencies: d3-array "2 - 3" d3-timer@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-3.0.1.tgz#6284d2a2708285b1abb7e201eda4380af35e63b0" + resolved "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz" integrity sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA== dataloader@^2.0.0: version "2.2.2" - resolved "https://registry.yarnpkg.com/dataloader/-/dataloader-2.2.2.tgz#216dc509b5abe39d43a9b9d97e6e5e473dfbe3e0" + resolved "https://registry.npmjs.org/dataloader/-/dataloader-2.2.2.tgz" integrity sha512-8YnDaaf7N3k/q5HnTJVuzSyLETjoZjVmHc4AeKAzOvKHEFQKcn64OKBfzHYtE9zGjctNM7V9I0MfnUVLpi7M5g== debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4: version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: ms "2.1.2" decimal.js-light@^2.4.1: version "2.5.1" - resolved "https://registry.yarnpkg.com/decimal.js-light/-/decimal.js-light-2.5.1.tgz#134fd32508f19e208f4fb2f8dac0d2626a867934" + resolved "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.1.tgz" integrity sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg== decompress-response@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" + resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz" integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ== dependencies: mimic-response "^3.1.0" deep-eql@^4.1.3: version "4.1.4" - resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-4.1.4.tgz#d0d3912865911bb8fac5afb4e3acfa6a28dc72b7" + resolved "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz" integrity sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg== dependencies: type-detect "^4.0.0" deep-is@^0.1.3: version "0.1.4" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz" integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== deepmerge@^4.2.2: version "4.3.1" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" + resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz" integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== defer-to-connect@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587" + resolved "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz" integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg== delayed-stream@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== diff-sequences@^29.6.3: version "29.6.3" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.6.3.tgz#4deaf894d11407c51efc8418012f9e70b84ea921" + resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz" integrity sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q== dir-glob@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz" integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== dependencies: path-type "^4.0.0" doctrine@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== dependencies: esutils "^2.0.2" dom-helpers@^5.0.1: version "5.2.1" - resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902" + resolved "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz" integrity sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA== dependencies: "@babel/runtime" "^7.8.7" @@ -2766,26 +2481,26 @@ dom-helpers@^5.0.1: electron-to-chromium@^1.4.431: version "1.4.470" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.470.tgz#0e932816be8d5f2b491ad2aa449ea47db4785398" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.470.tgz" integrity sha512-zZM48Lmy2FKWgqyvsX9XK+J6FfP7aCDUFLmgooLJzA7v1agCs/sxSoBpTIwDLhmbhpx9yJIxj2INig/ncjJRqg== end-of-stream@^1.1.0: version "1.4.4" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz" integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== dependencies: once "^1.4.0" error-ex@^1.3.1: version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== dependencies: is-arrayish "^0.2.1" esbuild@^0.18.10: version "0.18.16" - resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.18.16.tgz#bbeb058c556152bcbff4e8168e7c93020ccf09c3" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.18.16.tgz" integrity sha512-1xLsOXrDqwdHxyXb/x/SOyg59jpf/SH7YMvU5RNSU7z3TInaASNJWNFJ6iRvLvLETZMasF3d1DdZLg7sgRimRQ== optionalDependencies: "@esbuild/android-arm" "0.18.16" @@ -2813,7 +2528,7 @@ esbuild@^0.18.10: esbuild@^0.21.3: version "0.21.5" - resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.21.5.tgz#9ca301b120922959b766360d8ac830da0d02997d" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz" integrity sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw== optionalDependencies: "@esbuild/aix-ppc64" "0.21.5" @@ -2842,37 +2557,37 @@ esbuild@^0.21.3: escalade@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== escape-string-regexp@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== escape-string-regexp@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== eslint-plugin-react-hooks@^4.6.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz#4c3e697ad95b77e93f8646aaa1630c1ba607edd3" + resolved "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz" integrity sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g== eslint-plugin-react-refresh@^0.4.3: version "0.4.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.3.tgz#59dae8c00a119f06ea16b1d3e6891df3775947c7" + resolved "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.3.tgz" integrity sha512-Hh0wv8bUNY877+sI0BlCUlsS0TYYQqvzEwJsJJPM2WF4RnTStSnSR3zdJYa2nPOJgg3UghXi54lVyMSmpCalzA== eslint-plugin-simple-import-sort@^12.0.0: version "12.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-simple-import-sort/-/eslint-plugin-simple-import-sort-12.0.0.tgz#3cfa05d74509bd4dc329a956938823812194dbb6" + resolved "https://registry.npmjs.org/eslint-plugin-simple-import-sort/-/eslint-plugin-simple-import-sort-12.0.0.tgz" integrity sha512-8o0dVEdAkYap0Cn5kNeklaKcT1nUsa3LITWEuFk3nJifOoD+5JQGoyDUW2W/iPWwBsNBJpyJS9y4je/BgxLcyQ== eslint-scope@^7.2.0: version "7.2.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.1.tgz#936821d3462675f25a18ac5fd88a67cc15b393bd" + resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.1.tgz" integrity sha512-CvefSOsDdaYYvxChovdrPo/ZGt8d5lrJWleAc1diXRKhHGiTYEI26cvo8Kle/wGnsizoCJjK73FMg1/IkIwiNA== dependencies: esrecurse "^4.3.0" @@ -2880,12 +2595,12 @@ eslint-scope@^7.2.0: eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1: version "3.4.1" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz#c22c48f48942d08ca824cc526211ae400478a994" + resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz" integrity sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA== eslint@^8.45.0: version "8.45.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.45.0.tgz#bab660f90d18e1364352c0a6b7c6db8edb458b78" + resolved "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz" integrity sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw== dependencies: "@eslint-community/eslint-utils" "^4.2.0" @@ -2928,7 +2643,7 @@ eslint@^8.45.0: espree@^9.6.0: version "9.6.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" + resolved "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz" integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ== dependencies: acorn "^8.9.0" @@ -2937,53 +2652,53 @@ espree@^9.6.0: esquery@^1.4.2: version "1.5.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b" + resolved "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz" integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== dependencies: estraverse "^5.1.0" esrecurse@^4.3.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== dependencies: estraverse "^5.2.0" estraverse@^5.1.0, estraverse@^5.2.0: version "5.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== estree-walker@^0.6.1: version "0.6.1" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.6.1.tgz#53049143f40c6eb918b23671d1fe3219f3a1b362" + resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz" integrity sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w== estree-walker@^3.0.3: version "3.0.3" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-3.0.3.tgz#67c3e549ec402a487b4fc193d1953a524752340d" + resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz" integrity sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g== dependencies: "@types/estree" "^1.0.0" esutils@^2.0.2: version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== eventemitter3@^4.0.1: version "4.0.7" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz" integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== eventsource@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-2.0.2.tgz#76dfcc02930fb2ff339520b6d290da573a9e8508" + resolved "https://registry.npmjs.org/eventsource/-/eventsource-2.0.2.tgz" integrity sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA== execa@^8.0.1: version "8.0.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-8.0.1.tgz#51f6a5943b580f963c3ca9c6321796db8cc39b8c" + resolved "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz" integrity sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg== dependencies: cross-spawn "^7.0.3" @@ -2998,7 +2713,7 @@ execa@^8.0.1: extract-zip@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" + resolved "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz" integrity sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg== dependencies: debug "^4.1.1" @@ -3009,17 +2724,17 @@ extract-zip@^2.0.1: fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== fast-equals@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/fast-equals/-/fast-equals-5.0.1.tgz#a4eefe3c5d1c0d021aeed0bc10ba5e0c12ee405d" + resolved "https://registry.npmjs.org/fast-equals/-/fast-equals-5.0.1.tgz" integrity sha512-WF1Wi8PwwSY7/6Kx0vKXtw8RwuSGoM1bvDaJbu7MxDlR1vovZjIAKrnzyrThgAjm6JDTu0fVgWXDlMGspodfoQ== fast-glob@^3.2.9: version "3.3.1" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.1.tgz#784b4e897340f3dbbef17413b3f11acf03c874c4" + resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz" integrity sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg== dependencies: "@nodelib/fs.stat" "^2.0.2" @@ -3030,50 +2745,50 @@ fast-glob@^3.2.9: fast-json-stable-stringify@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== fast-levenshtein@^2.0.6: version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== fastq@^1.6.0: version "1.15.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" + resolved "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz" integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== dependencies: reusify "^1.0.4" fd-slicer@~1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" + resolved "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz" integrity sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g== dependencies: pend "~1.2.0" file-entry-cache@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== dependencies: flat-cache "^3.0.4" fill-range@^7.0.1: version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== dependencies: to-regex-range "^5.0.1" find-root@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" + resolved "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz" integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== find-up@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== dependencies: locate-path "^6.0.0" @@ -3081,7 +2796,7 @@ find-up@^5.0.0: flat-cache@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" + resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== dependencies: flatted "^3.1.0" @@ -3089,22 +2804,22 @@ flat-cache@^3.0.4: flatted@^3.1.0: version "3.2.7" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" + resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz" integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== follow-redirects@^1.15.0: version "1.15.2" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" + resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz" integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== follow-redirects@^1.15.6: version "1.15.9" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.9.tgz#a604fa10e443bf98ca94228d9eebcc2e8a2c8ee1" + resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz" integrity sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ== form-data@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" + resolved "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz" integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== dependencies: asynckit "^0.4.0" @@ -3113,7 +2828,7 @@ form-data@^4.0.0: framer-motion@^10.16.4: version "10.16.4" - resolved "https://registry.yarnpkg.com/framer-motion/-/framer-motion-10.16.4.tgz#30279ef5499b8d85db3a298ee25c83429933e9f8" + resolved "https://registry.npmjs.org/framer-motion/-/framer-motion-10.16.4.tgz" integrity sha512-p9V9nGomS3m6/CALXqv6nFGMuFOxbWsmaOrdmhyQimMIlLl3LC7h7l86wge/Js/8cRu5ktutS/zlzgR7eBOtFA== dependencies: tslib "^2.4.0" @@ -3122,68 +2837,68 @@ framer-motion@^10.16.4: fs-readdir-recursive@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz#e32fc030a2ccee44a6b5371308da54be0b397d27" + resolved "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz" integrity sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA== fs.realpath@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== fsevents@~2.3.2: version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== fsevents@~2.3.3: version "2.3.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz" integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== function-bind@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== gensync@^1.0.0-beta.2: version "1.0.0-beta.2" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== get-func-name@^2.0.1, get-func-name@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.2.tgz#0d7cf20cd13fda808669ffa88f4ffc7a3943fc41" + resolved "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz" integrity sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ== get-stream@^5.1.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz" integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== dependencies: pump "^3.0.0" get-stream@^8.0.1: version "8.0.1" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-8.0.1.tgz#def9dfd71742cd7754a7761ed43749a27d02eca2" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz" integrity sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA== glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" glob-parent@^6.0.2: version "6.0.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz" integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== dependencies: is-glob "^4.0.3" glob@^7.1.3, glob@^7.2.0: version "7.2.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== dependencies: fs.realpath "^1.0.0" @@ -3195,19 +2910,19 @@ glob@^7.1.3, glob@^7.2.0: globals@^11.1.0: version "11.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== globals@^13.19.0: version "13.20.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.20.0.tgz#ea276a1e508ffd4f1612888f9d1bad1e2717bf82" + resolved "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz" integrity sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ== dependencies: type-fest "^0.20.2" globby@^11.1.0: version "11.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== dependencies: array-union "^2.1.0" @@ -3219,12 +2934,12 @@ globby@^11.1.0: goober@^2.1.10: version "2.1.14" - resolved "https://registry.yarnpkg.com/goober/-/goober-2.1.14.tgz#4a5c94fc34dc086a8e6035360ae1800005135acd" + resolved "https://registry.npmjs.org/goober/-/goober-2.1.14.tgz" integrity sha512-4UpC0NdGyAFqLNPnhCT2iHpza2q+RAY3GV85a/mRPdzyPQMsj0KmMMuetdIkzWRbJ+Hgau1EZztq8ImmiMGhsg== got@^11.8.5: version "11.8.6" - resolved "https://registry.yarnpkg.com/got/-/got-11.8.6.tgz#276e827ead8772eddbcfc97170590b841823233a" + resolved "https://registry.npmjs.org/got/-/got-11.8.6.tgz" integrity sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g== dependencies: "@sindresorhus/is" "^4.0.0" @@ -3241,51 +2956,51 @@ got@^11.8.5: graphemer@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" + resolved "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz" integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== hamt_plus@1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/hamt_plus/-/hamt_plus-1.0.2.tgz#e21c252968c7e33b20f6a1b094cd85787a265601" + resolved "https://registry.npmjs.org/hamt_plus/-/hamt_plus-1.0.2.tgz" integrity sha512-t2JXKaehnMb9paaYA7J0BX8QQAY8lwfQ9Gjf4pg/mk4krt+cmwmU652HOoWonf+7+EQV97ARPMhhVgU1ra2GhA== has-flag@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== has-flag@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== has@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz" integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== dependencies: function-bind "^1.1.1" hoist-non-react-statics@^3.3.0, hoist-non-react-statics@^3.3.1: version "3.3.2" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" + resolved "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz" integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== dependencies: react-is "^16.7.0" hpagent@^0.1.2: version "0.1.2" - resolved "https://registry.yarnpkg.com/hpagent/-/hpagent-0.1.2.tgz#cab39c66d4df2d4377dbd212295d878deb9bdaa9" + resolved "https://registry.npmjs.org/hpagent/-/hpagent-0.1.2.tgz" integrity sha512-ePqFXHtSQWAFXYmj+JtOTHr84iNrII4/QRlAAPPE+zqnKy4xJo7Ie1Y4kC7AdB+LxLxSTTzBMASsEcy0q8YyvQ== http-cache-semantics@^4.0.0: version "4.1.1" - resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a" + resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz" integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== http2-wrapper@^1.0.0-beta.5.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.3.tgz#b8f55e0c1f25d4ebd08b3b0c2c079f9590800b3d" + resolved "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz" integrity sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg== dependencies: quick-lru "^5.1.1" @@ -3293,17 +3008,17 @@ http2-wrapper@^1.0.0-beta.5.2: human-signals@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-5.0.0.tgz#42665a284f9ae0dade3ba41ebc37eb4b852f3a28" + resolved "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz" integrity sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ== ignore@^5.2.0, ignore@^5.2.4: version "5.2.4" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" + resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz" integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== import-fresh@^3.2.1: version "3.3.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== dependencies: parent-module "^1.0.0" @@ -3311,12 +3026,12 @@ import-fresh@^3.2.1: imurmurhash@^0.1.4: version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== inflight@^1.0.4: version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" @@ -3324,68 +3039,68 @@ inflight@^1.0.4: inherits@2: version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== "internmap@1 - 2": version "2.0.3" - resolved "https://registry.yarnpkg.com/internmap/-/internmap-2.0.3.tgz#6685f23755e43c524e251d29cbc97248e3061009" + resolved "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz" integrity sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg== is-arrayish@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== is-binary-path@~2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz" integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== dependencies: binary-extensions "^2.0.0" is-core-module@^2.11.0: version "2.12.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.12.1.tgz#0c0b6885b6f80011c71541ce15c8d66cf5a4f9fd" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz" integrity sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg== dependencies: has "^1.0.3" is-extglob@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: is-extglob "^2.1.1" is-number@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== is-path-inside@^3.0.3: version "3.0.3" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" + resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz" integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== is-stream@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-3.0.0.tgz#e6bfd7aa6bef69f4f472ce9bb681e3e57b4319ac" + resolved "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz" integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA== isexe@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== isomorphic-fetch@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz#0267b005049046d2421207215d45d6a262b8b8b4" + resolved "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz" integrity sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA== dependencies: node-fetch "^2.6.1" @@ -3393,71 +3108,71 @@ isomorphic-fetch@^3.0.0: "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== js-tokens@^9.0.0: version "9.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-9.0.0.tgz#0f893996d6f3ed46df7f0a3b12a03f5fd84223c1" + resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.0.tgz" integrity sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ== js-yaml@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz" integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: argparse "^2.0.1" jsesc@^2.5.1: version "2.5.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== jsesc@~0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz" integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== json-buffer@3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" + resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz" integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== json-parse-even-better-errors@^2.3.0: version "2.3.1" - resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== json-schema-traverse@^0.4.1: version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== json5@^2.2.2: version "2.2.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jssha@3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/jssha/-/jssha-3.2.0.tgz#88ec50b866dd1411deaddbe6b3e3692e4c710f16" + resolved "https://registry.npmjs.org/jssha/-/jssha-3.2.0.tgz" integrity sha512-QuruyBENDWdN4tZwJbQq7/eAK85FqrI4oDbXjy5IBhYD+2pTJyBUWZe8ctWaCkrV0gy6AaelgOZZBMeswEa/6Q== keyv@^4.0.0: version "4.5.4" - resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" + resolved "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz" integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== dependencies: json-buffer "3.0.1" levn@^0.4.1: version "0.4.1" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== dependencies: prelude-ls "^1.2.1" @@ -3465,12 +3180,12 @@ levn@^0.4.1: lines-and-columns@^1.1.6: version "1.2.4" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== local-pkg@^0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/local-pkg/-/local-pkg-0.5.0.tgz#093d25a346bae59a99f80e75f6e9d36d7e8c925c" + resolved "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz" integrity sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg== dependencies: mlly "^1.4.2" @@ -3478,81 +3193,81 @@ local-pkg@^0.5.0: locate-path@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== dependencies: p-locate "^5.0.0" lodash.clonedeep@^4.5.0: version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + resolved "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz" integrity sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ== lodash.debounce@^4.0.8: version "4.0.8" - resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + resolved "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz" integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== lodash.merge@^4.6.2: version "4.6.2" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== lodash@^4.17.21: version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== loose-envify@^1.1.0, loose-envify@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== dependencies: js-tokens "^3.0.0 || ^4.0.0" loupe@^2.3.6, loupe@^2.3.7: version "2.3.7" - resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.7.tgz#6e69b7d4db7d3ab436328013d37d1c8c3540c697" + resolved "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz" integrity sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA== dependencies: get-func-name "^2.0.1" lowercase-keys@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" + resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz" integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== lru-cache@^5.1.1: version "5.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz" integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== dependencies: yallist "^3.0.2" lru-cache@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== dependencies: yallist "^4.0.0" magic-string@^0.25.3: version "0.25.9" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c" + resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz" integrity sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ== dependencies: sourcemap-codec "^1.4.8" magic-string@^0.30.5: version "0.30.10" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.10.tgz#123d9c41a0cb5640c892b041d4cfb3bd0aa4b39e" + resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz" integrity sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ== dependencies: "@jridgewell/sourcemap-codec" "^1.4.15" make-dir@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" + resolved "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz" integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== dependencies: pify "^4.0.1" @@ -3560,17 +3275,17 @@ make-dir@^2.1.0: merge-stream@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== micromatch@^4.0.4: version "4.0.5" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz" integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== dependencies: braces "^3.0.2" @@ -3578,41 +3293,41 @@ micromatch@^4.0.4: mime-db@1.52.0: version "1.52.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== mime-types@^2.1.12: version "2.1.35" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== dependencies: mime-db "1.52.0" mimic-fn@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc" + resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz" integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw== mimic-response@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" + resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz" integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== mimic-response@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9" + resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz" integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ== minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" mlly@^1.4.2, mlly@^1.7.1: version "1.7.1" - resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.7.1.tgz#e0336429bb0731b6a8e887b438cbdae522c8f32f" + resolved "https://registry.npmjs.org/mlly/-/mlly-1.7.1.tgz" integrity sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA== dependencies: acorn "^8.11.3" @@ -3622,32 +3337,32 @@ mlly@^1.4.2, mlly@^1.7.1: ms@2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== nanoid@^3.3.6: version "3.3.6" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" + resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz" integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA== nanoid@^3.3.7: version "3.3.7" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" + resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz" integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== natural-compare-lite@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" + resolved "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz" integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== natural-compare@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== ngrok@^5.0.0-beta.2: version "5.0.0-beta.2" - resolved "https://registry.yarnpkg.com/ngrok/-/ngrok-5.0.0-beta.2.tgz#7976690a592b27de9a91ff93892cfabda24360ad" + resolved "https://registry.npmjs.org/ngrok/-/ngrok-5.0.0-beta.2.tgz" integrity sha512-UzsyGiJ4yTTQLCQD11k1DQaMwq2/SsztBg2b34zAqcyjS25qjDpogMKPaCKHwe/APRTHeel3iDXcVctk5CNaCQ== dependencies: extract-zip "^2.0.1" @@ -3660,67 +3375,67 @@ ngrok@^5.0.0-beta.2: node-fetch@^2.6.1: version "2.6.12" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.12.tgz#02eb8e22074018e3d5a83016649d04df0e348fba" + resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz" integrity sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g== dependencies: whatwg-url "^5.0.0" node-fetch@^2.6.9: version "2.7.0" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" + resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz" integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== dependencies: whatwg-url "^5.0.0" node-inspect-extracted@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/node-inspect-extracted/-/node-inspect-extracted-2.0.2.tgz#e5500e79f6bc03517175881c991f3bfaea67115a" + resolved "https://registry.npmjs.org/node-inspect-extracted/-/node-inspect-extracted-2.0.2.tgz" integrity sha512-8qm9+tu/GmbA/uWQRs6ad8KstyhH94a0pXpRVGHaJ9wHlJbetCYoCwXbKILaaMcE+wgbgpOpzcCnipkL8vTqxA== node-releases@^2.0.12: version "2.0.13" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" + resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz" integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== normalize-url@^6.0.1: version "6.1.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" + resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== npm-run-path@^5.1.0: version "5.3.0" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.3.0.tgz#e23353d0ebb9317f174e93417e4a4d82d0249e9f" + resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz" integrity sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ== dependencies: path-key "^4.0.0" object-assign@^4.1.1: version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== dependencies: wrappy "1" onetime@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-6.0.0.tgz#7c24c18ed1fd2e9bca4bd26806a33613c77d34b4" + resolved "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz" integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ== dependencies: mimic-fn "^4.0.0" optionator@^0.9.3: version "0.9.3" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.3.tgz#007397d44ed1872fdc6ed31360190f81814e2c64" + resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz" integrity sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg== dependencies: "@aashutoshrathi/word-wrap" "^1.2.3" @@ -3732,40 +3447,40 @@ optionator@^0.9.3: p-cancelable@^2.0.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.1.1.tgz#aab7fbd416582fa32a3db49859c122487c5ed2cf" + resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz" integrity sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg== p-limit@^3.0.2: version "3.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== dependencies: yocto-queue "^0.1.0" p-limit@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-5.0.0.tgz#6946d5b7140b649b7a33a027d89b4c625b3a5985" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-5.0.0.tgz" integrity sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ== dependencies: yocto-queue "^1.0.0" p-locate@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== dependencies: p-limit "^3.0.2" parent-module@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== dependencies: callsites "^3.0.0" parse-json@^5.0.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== dependencies: "@babel/code-frame" "^7.0.0" @@ -3775,72 +3490,72 @@ parse-json@^5.0.0: path-exists@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== path-is-absolute@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== path-key@^3.1.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== path-key@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18" + resolved "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz" integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== path-parse@^1.0.7: version "1.0.7" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== path-type@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== pathe@^1.1.1, pathe@^1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.1.2.tgz#6c4cb47a945692e48a1ddd6e4094d170516437ec" + resolved "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz" integrity sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ== pathval@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" + resolved "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz" integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ== pend@~1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" + resolved "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz" integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== picocolors@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== picocolors@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" + resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz" integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== pify@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== pkg-types@^1.0.3, pkg-types@^1.1.1: version "1.1.2" - resolved "https://registry.yarnpkg.com/pkg-types/-/pkg-types-1.1.2.tgz#3e211ecec23516f59323ba058ec21cbc533ff81a" + resolved "https://registry.npmjs.org/pkg-types/-/pkg-types-1.1.2.tgz" integrity sha512-VEGf1he2DR5yowYRl0XJhWJq5ktm9gYIsH+y8sNJpHlxch7JPDaufgrsl4vYjd9hMUY8QVjoNncKbow9I7exyA== dependencies: confbox "^0.1.7" @@ -3849,21 +3564,12 @@ pkg-types@^1.0.3, pkg-types@^1.1.1: postcss-value-parser@^4.0.2: version "4.2.0" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" + resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== -postcss@8.4.31: - version "8.4.31" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.31.tgz#92b451050a9f914da6755af352bdc0192508656d" - integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ== - dependencies: - nanoid "^3.3.6" - picocolors "^1.0.0" - source-map-js "^1.0.2" - postcss@^8.4.23, postcss@^8.4.26: version "8.4.27" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.27.tgz#234d7e4b72e34ba5a92c29636734349e0d9c3057" + resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.27.tgz" integrity sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ== dependencies: nanoid "^3.3.6" @@ -3872,26 +3578,35 @@ postcss@^8.4.23, postcss@^8.4.26: postcss@^8.4.38: version "8.4.39" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.39.tgz#aa3c94998b61d3a9c259efa51db4b392e1bde0e3" + resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.39.tgz" integrity sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw== dependencies: nanoid "^3.3.7" picocolors "^1.0.1" source-map-js "^1.2.0" +postcss@8.4.31: + version "8.4.31" + resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz" + integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ== + dependencies: + nanoid "^3.3.6" + picocolors "^1.0.0" + source-map-js "^1.0.2" + prelude-ls@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== prettier@^3.3.2: version "3.3.2" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.3.2.tgz#03ff86dc7c835f2d2559ee76876a3914cec4a90a" + resolved "https://registry.npmjs.org/prettier/-/prettier-3.3.2.tgz" integrity sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA== pretty-format@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812" + resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz" integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ== dependencies: "@jest/schemas" "^29.6.3" @@ -3900,7 +3615,7 @@ pretty-format@^29.7.0: prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: version "15.8.1" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" + resolved "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz" integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== dependencies: loose-envify "^1.4.0" @@ -3909,12 +3624,12 @@ prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: proxy-from-env@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + resolved "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz" integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== pump@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz" integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== dependencies: end-of-stream "^1.1.0" @@ -3922,22 +3637,22 @@ pump@^3.0.0: punycode@^2.1.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" + resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz" integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== queue-microtask@^1.2.2: version "1.2.3" - resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== quick-lru@^5.1.1: version "5.1.1" - resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" + resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz" integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== react-dom@^18.2.0: version "18.2.0" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.2.0.tgz#22aaf38708db2674ed9ada224ca4aa708d821e3d" + resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz" integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g== dependencies: loose-envify "^1.1.0" @@ -3945,41 +3660,51 @@ react-dom@^18.2.0: react-dropdown@^1.11.0: version "1.11.0" - resolved "https://registry.yarnpkg.com/react-dropdown/-/react-dropdown-1.11.0.tgz#b9576de17efd28e5684d101b3f58dfe784af242c" + resolved "https://registry.npmjs.org/react-dropdown/-/react-dropdown-1.11.0.tgz" integrity sha512-E2UWetRPxNdIhQahXw6b984ME7WmcgDj9AEAjrtS/oyLCFVo+2qkCfcS06C22JR0Zj+YLnygwv0Ozf6VKKDq7g== dependencies: classnames "^2.2.3" react-hook-form@^7.51.4: version "7.51.4" - resolved "https://registry.yarnpkg.com/react-hook-form/-/react-hook-form-7.51.4.tgz#c3a47aeb22b699c45de9fc12b58763606cb52f0c" + resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.51.4.tgz" integrity sha512-V14i8SEkh+V1gs6YtD0hdHYnoL4tp/HX/A45wWQN15CYr9bFRmmRdYStSO5L65lCCZRF+kYiSKhm9alqbcdiVA== react-hot-toast@^2.4.1: version "2.4.1" - resolved "https://registry.yarnpkg.com/react-hot-toast/-/react-hot-toast-2.4.1.tgz#df04295eda8a7b12c4f968e54a61c8d36f4c0994" + resolved "https://registry.npmjs.org/react-hot-toast/-/react-hot-toast-2.4.1.tgz" integrity sha512-j8z+cQbWIM5LY37pR6uZR6D4LfseplqnuAO4co4u8917hBUvXlEqyP1ZzqVLcqoyUesZZv/ImreoCeHVDpE5pQ== dependencies: goober "^2.1.10" -react-is@^16.10.2, react-is@^16.13.1, react-is@^16.7.0: +react-is@^16.10.2: version "16.13.1" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +react-is@^16.13.1: + version "16.13.1" + resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +react-is@^16.7.0: + version "16.13.1" + resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== react-is@^18.0.0: version "18.3.1" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.3.1.tgz#e83557dc12eae63a99e003a46388b1dcbb44db7e" + resolved "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz" integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg== react-is@^18.2.0: version "18.2.0" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" + resolved "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz" integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== react-loader-spinner@^6.1.6: version "6.1.6" - resolved "https://registry.yarnpkg.com/react-loader-spinner/-/react-loader-spinner-6.1.6.tgz#744d84a9763e963b565054f4f281dadfbd17e9e9" + resolved "https://registry.npmjs.org/react-loader-spinner/-/react-loader-spinner-6.1.6.tgz" integrity sha512-x5h1Jcit7Qn03MuKlrWcMG9o12cp9SNDVHVJTNRi9TgtGPKcjKiXkou4NRfLAtXaFB3+Z8yZsVzONmPzhv2ErA== dependencies: react-is "^18.2.0" @@ -3987,19 +3712,19 @@ react-loader-spinner@^6.1.6: react-number-format@^5.3.4: version "5.3.4" - resolved "https://registry.yarnpkg.com/react-number-format/-/react-number-format-5.3.4.tgz#4780522ba1fdaff20aaa0732716490c6758b8557" + resolved "https://registry.npmjs.org/react-number-format/-/react-number-format-5.3.4.tgz" integrity sha512-2hHN5mbLuCDUx19bv0Q8wet67QqYK6xmtLQeY5xx+h7UXiMmRtaCwqko4mMPoKXLc6xAzwRrutg8XbTRlsfjRg== dependencies: prop-types "^15.7.2" react-refresh@^0.14.0: version "0.14.0" - resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.14.0.tgz#4e02825378a5f227079554d4284889354e5f553e" + resolved "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz" integrity sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ== react-router-dom@^6.14.2: version "6.14.2" - resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-6.14.2.tgz#88f520118b91aa60233bd08dbd3fdcaea3a68488" + resolved "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.14.2.tgz" integrity sha512-5pWX0jdKR48XFZBuJqHosX3AAHjRAzygouMTyimnBPOLdY3WjzUSKhus2FVMihUFWzeLebDgr4r8UeQFAct7Bg== dependencies: "@remix-run/router" "1.7.2" @@ -4007,14 +3732,14 @@ react-router-dom@^6.14.2: react-router@6.14.2: version "6.14.2" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-6.14.2.tgz#1f60994d8c369de7b8ba7a78d8f7ec23df76b300" + resolved "https://registry.npmjs.org/react-router/-/react-router-6.14.2.tgz" integrity sha512-09Zss2dE2z+T1D03IheqAFtK4UzQyX8nFPWx6jkwdYzGLXd5ie06A6ezS2fO6zJfEb/SpG6UocN2O1hfD+2urQ== dependencies: "@remix-run/router" "1.7.2" react-smooth@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/react-smooth/-/react-smooth-4.0.1.tgz#6200d8699bfe051ae40ba187988323b1449eab1a" + resolved "https://registry.npmjs.org/react-smooth/-/react-smooth-4.0.1.tgz" integrity sha512-OE4hm7XqR0jNOq3Qmk9mFLyd6p2+j6bvbPJ7qlB7+oo0eNcL2l7WQzG6MBnT3EXY6xzkLMUBec3AfewJdA0J8w== dependencies: fast-equals "^5.0.1" @@ -4023,14 +3748,14 @@ react-smooth@^4.0.0: react-toastify@^10.0.5: version "10.0.5" - resolved "https://registry.yarnpkg.com/react-toastify/-/react-toastify-10.0.5.tgz#6b8f8386060c5c856239f3036d1e76874ce3bd1e" + resolved "https://registry.npmjs.org/react-toastify/-/react-toastify-10.0.5.tgz" integrity sha512-mNKt2jBXJg4O7pSdbNUfDdTsK9FIdikfsIE/yUCxbAEXl4HMyJaivrVFcn3Elvt5xvCQYhUZm+hqTIu1UXM3Pw== dependencies: clsx "^2.1.0" react-transition-group@^4.4.5: version "4.4.5" - resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.4.5.tgz#e53d4e3f3344da8521489fbef8f2581d42becdd1" + resolved "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz" integrity sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g== dependencies: "@babel/runtime" "^7.5.5" @@ -4040,28 +3765,28 @@ react-transition-group@^4.4.5: react@^18.2.0: version "18.2.0" - resolved "https://registry.yarnpkg.com/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5" + resolved "https://registry.npmjs.org/react/-/react-18.2.0.tgz" integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ== dependencies: loose-envify "^1.1.0" readdirp@~3.6.0: version "3.6.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz" integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== dependencies: picomatch "^2.2.1" recharts-scale@^0.4.4: version "0.4.5" - resolved "https://registry.yarnpkg.com/recharts-scale/-/recharts-scale-0.4.5.tgz#0969271f14e732e642fcc5bd4ab270d6e87dd1d9" + resolved "https://registry.npmjs.org/recharts-scale/-/recharts-scale-0.4.5.tgz" integrity sha512-kivNFO+0OcUNu7jQquLXAxz1FIwZj8nrj+YkOKc5694NbjCvcT6aSZiIzNzd2Kul4o4rTto8QVR9lMNtxD4G1w== dependencies: decimal.js-light "^2.4.1" recharts@^2.12.7: version "2.12.7" - resolved "https://registry.yarnpkg.com/recharts/-/recharts-2.12.7.tgz#c7f42f473a257ff88b43d88a92530930b5f9e773" + resolved "https://registry.npmjs.org/recharts/-/recharts-2.12.7.tgz" integrity sha512-hlLJMhPQfv4/3NBSAyq3gzGg4h2v69RJh6KU7b3pXYNNAELs9kEoXOjbkxdXpALqKBoVmVptGfLpxdaVYqjmXQ== dependencies: clsx "^2.0.0" @@ -4075,43 +3800,43 @@ recharts@^2.12.7: recoil-persist@^5.1.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/recoil-persist/-/recoil-persist-5.1.0.tgz#c4232fe04f2e4b6afcc815baff56f2521f6dcde1" + resolved "https://registry.npmjs.org/recoil-persist/-/recoil-persist-5.1.0.tgz" integrity sha512-sew4k3uBVJjRWKCSFuBw07Y1p1pBOb0UxLJPxn4G2bX/9xNj+r2xlqYy/BRfyofR/ANfqBU04MIvulppU4ZC0w== recoil@^0.7.7: version "0.7.7" - resolved "https://registry.yarnpkg.com/recoil/-/recoil-0.7.7.tgz#c5f2c843224384c9c09e4a62c060fb4c1454dc8e" + resolved "https://registry.npmjs.org/recoil/-/recoil-0.7.7.tgz" integrity sha512-8Og5KPQW9LwC577Vc7Ug2P0vQshkv1y3zG3tSSkWMqkWSwHmE+by06L8JtnGocjW6gcCvfwB3YtrJG6/tWivNQ== dependencies: hamt_plus "1.0.2" regenerate-unicode-properties@^10.1.0: version "10.1.0" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz#7c3192cab6dd24e21cb4461e5ddd7dd24fa8374c" + resolved "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz" integrity sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ== dependencies: regenerate "^1.4.2" regenerate@^1.4.2: version "1.4.2" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" + resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== regenerator-runtime@^0.13.11: version "0.13.11" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" + resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz" integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== regenerator-transform@^0.15.1: version "0.15.1" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.1.tgz#f6c4e99fc1b4591f780db2586328e4d9a9d8dc56" + resolved "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz" integrity sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg== dependencies: "@babel/runtime" "^7.8.4" regexpu-core@^5.3.1: version "5.3.2" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.3.2.tgz#11a2b06884f3527aec3e93dbbf4a3b958a95546b" + resolved "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz" integrity sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ== dependencies: "@babel/regjsgen" "^0.8.0" @@ -4123,24 +3848,24 @@ regexpu-core@^5.3.1: regjsparser@^0.9.1: version "0.9.1" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.9.1.tgz#272d05aa10c7c1f67095b1ff0addae8442fc5709" + resolved "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz" integrity sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ== dependencies: jsesc "~0.5.0" resolve-alpn@^1.0.0: version "1.2.1" - resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9" + resolved "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz" integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g== resolve-from@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== resolve@^1.14.2, resolve@^1.19.0: version "1.22.2" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.2.tgz#0ed0943d4e301867955766c9f3e1ae6d01c6845f" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz" integrity sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g== dependencies: is-core-module "^2.11.0" @@ -4149,26 +3874,26 @@ resolve@^1.14.2, resolve@^1.19.0: responselike@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/responselike/-/responselike-2.0.1.tgz#9a0bc8fdc252f3fb1cca68b016591059ba1422bc" + resolved "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz" integrity sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw== dependencies: lowercase-keys "^2.0.0" reusify@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== rimraf@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== dependencies: glob "^7.1.3" rollup-plugin-inject@^3.0.0: version "3.0.2" - resolved "https://registry.yarnpkg.com/rollup-plugin-inject/-/rollup-plugin-inject-3.0.2.tgz#e4233855bfba6c0c12a312fd6649dff9a13ee9f4" + resolved "https://registry.npmjs.org/rollup-plugin-inject/-/rollup-plugin-inject-3.0.2.tgz" integrity sha512-ptg9PQwzs3orn4jkgXJ74bfs5vYz1NCZlSQMBUA0wKcGp5i5pA1AO3fOUEte8enhGUC+iapTCzEWw2jEFFUO/w== dependencies: estree-walker "^0.6.1" @@ -4177,28 +3902,28 @@ rollup-plugin-inject@^3.0.0: rollup-plugin-node-polyfills@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/rollup-plugin-node-polyfills/-/rollup-plugin-node-polyfills-0.2.1.tgz#53092a2744837164d5b8a28812ba5f3ff61109fd" + resolved "https://registry.npmjs.org/rollup-plugin-node-polyfills/-/rollup-plugin-node-polyfills-0.2.1.tgz" integrity sha512-4kCrKPTJ6sK4/gLL/U5QzVT8cxJcofO0OU74tnB19F40cmuAKSzH5/siithxlofFEjwvw1YAhPmbvGNA6jEroA== dependencies: rollup-plugin-inject "^3.0.0" rollup-pluginutils@^2.8.1: version "2.8.2" - resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz#72f2af0748b592364dbd3389e600e5a9444a351e" + resolved "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz" integrity sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ== dependencies: estree-walker "^0.6.1" rollup@^3.25.2: version "3.26.3" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-3.26.3.tgz#bbc8818cadd0aebca348dbb3d68d296d220967b8" + resolved "https://registry.npmjs.org/rollup/-/rollup-3.26.3.tgz" integrity sha512-7Tin0C8l86TkpcMtXvQu6saWH93nhG3dGQ1/+l5V2TDMceTxO7kDiK6GzbfLWNNxqJXm591PcEZUozZm51ogwQ== optionalDependencies: fsevents "~2.3.2" rollup@^4.13.0: version "4.18.0" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.18.0.tgz#497f60f0c5308e4602cf41136339fbf87d5f5dda" + resolved "https://registry.npmjs.org/rollup/-/rollup-4.18.0.tgz" integrity sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg== dependencies: "@types/estree" "1.0.5" @@ -4223,134 +3948,134 @@ rollup@^4.13.0: run-parallel@^1.1.9: version "1.2.0" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz" integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== dependencies: queue-microtask "^1.2.2" scheduler@^0.23.0: version "0.23.0" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.0.tgz#ba8041afc3d30eb206a487b6b384002e4e61fdfe" + resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz" integrity sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw== dependencies: loose-envify "^1.1.0" semver@^5.6.0: version "5.7.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" + resolved "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== semver@^6.3.1: version "6.3.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + resolved "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== semver@^7.5.4: version "7.5.4" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" + resolved "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz" integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== dependencies: lru-cache "^6.0.0" server-only@^0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/server-only/-/server-only-0.0.1.tgz#0f366bb6afb618c37c9255a314535dc412cd1c9e" + resolved "https://registry.npmjs.org/server-only/-/server-only-0.0.1.tgz" integrity sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA== -shallowequal@1.1.0, shallowequal@^1.1.0: +shallowequal@^1.1.0, shallowequal@1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" + resolved "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz" integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== shebang-command@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: shebang-regex "^3.0.0" shebang-regex@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== siginfo@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/siginfo/-/siginfo-2.0.0.tgz#32e76c70b79724e3bb567cb9d543eb858ccfaf30" + resolved "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz" integrity sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g== signal-exit@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" + resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz" integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== slash@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" + resolved "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz" integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== slash@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== source-map-js@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" + resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz" integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== source-map-js@^1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.0.tgz#16b809c162517b5b8c3e7dcd315a2a5c2612b2af" + resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz" integrity sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg== source-map@^0.5.7: version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz" integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== sourcemap-codec@^1.4.8: version "1.4.8" - resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" + resolved "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz" integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== stackback@0.0.2: version "0.0.2" - resolved "https://registry.yarnpkg.com/stackback/-/stackback-0.0.2.tgz#1ac8a0d9483848d1695e418b6d031a3c3ce68e3b" + resolved "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz" integrity sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw== std-env@^3.5.0: version "3.7.0" - resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.7.0.tgz#c9f7386ced6ecf13360b6c6c55b8aaa4ef7481d2" + resolved "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz" integrity sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg== strip-ansi@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" strip-final-newline@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd" + resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz" integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== strip-json-comments@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== strip-literal@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/strip-literal/-/strip-literal-2.1.0.tgz#6d82ade5e2e74f5c7e8739b6c84692bd65f0bd2a" + resolved "https://registry.npmjs.org/strip-literal/-/strip-literal-2.1.0.tgz" integrity sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw== dependencies: js-tokens "^9.0.0" styled-components@^6.0.5: version "6.0.5" - resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-6.0.5.tgz#a2588432507a57d946bfb6feb2ebd13fce447bd9" + resolved "https://registry.npmjs.org/styled-components/-/styled-components-6.0.5.tgz" integrity sha512-308zi5o7LrA9cVaP4nPD0TaUpOjGPePkAUFb/OGB0xRI3I9ozpW5UyASvRVi9wJcYASG+Y3mLDLDUZC7nqzimw== dependencies: "@babel/cli" "^7.21.0" @@ -4375,7 +4100,7 @@ styled-components@^6.0.5: styled-components@^6.1.2: version "6.1.8" - resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-6.1.8.tgz#c109d36aeea52d8f049e12de2f3be39a6fc86201" + resolved "https://registry.npmjs.org/styled-components/-/styled-components-6.1.8.tgz" integrity sha512-PQ6Dn+QxlWyEGCKDS71NGsXoVLKfE1c3vApkvDYS5KAK+V8fNWGhbSUEo9Gg2iaID2tjLXegEW3bZDUGpofRWw== dependencies: "@emotion/is-prop-valid" "1.2.1" @@ -4388,43 +4113,43 @@ styled-components@^6.1.2: stylis "4.3.1" tslib "2.5.0" +stylis@^4.3.0: + version "4.3.0" + resolved "https://registry.npmjs.org/stylis/-/stylis-4.3.0.tgz" + integrity sha512-E87pIogpwUsUwXw7dNyU4QDjdgVMy52m+XEOPEKUn161cCzWjjhPSQhByfd1CcNvrOLnXQ6OnnZDwnJrz/Z4YQ== + stylis@4.2.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51" + resolved "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz" integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw== stylis@4.3.1: version "4.3.1" - resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.3.1.tgz#ed8a9ebf9f76fe1e12d462f5cc3c4c980b23a7eb" + resolved "https://registry.npmjs.org/stylis/-/stylis-4.3.1.tgz" integrity sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ== -stylis@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.3.0.tgz#abe305a669fc3d8777e10eefcfc73ad861c5588c" - integrity sha512-E87pIogpwUsUwXw7dNyU4QDjdgVMy52m+XEOPEKUn161cCzWjjhPSQhByfd1CcNvrOLnXQ6OnnZDwnJrz/Z4YQ== - supports-color@^5.3.0: version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: has-flag "^3.0.0" supports-color@^7.1.0: version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: has-flag "^4.0.0" supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== swr@^2.2.5: version "2.2.5" - resolved "https://registry.yarnpkg.com/swr/-/swr-2.2.5.tgz#063eea0e9939f947227d5ca760cc53696f46446b" + resolved "https://registry.npmjs.org/swr/-/swr-2.2.5.tgz" integrity sha512-QtxqyclFeAsxEUeZIYmsaQ0UjimSq1RZ9Un7I68/0ClKK/U3LoyQunwkQfJZr2fc22DfIXLNDc2wFyTEikCUpg== dependencies: client-only "^0.0.1" @@ -4432,136 +4157,136 @@ swr@^2.2.5: symbol.inspect@1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/symbol.inspect/-/symbol.inspect-1.0.1.tgz#e13125b8038c4996eb0dfa1567332ad4dcd0763f" + resolved "https://registry.npmjs.org/symbol.inspect/-/symbol.inspect-1.0.1.tgz" integrity sha512-YQSL4duoHmLhsTD1Pw8RW6TZ5MaTX5rXJnqacJottr2P2LZBF/Yvrc3ku4NUpMOm8aM0KOCqM+UAkMA5HWQCzQ== teslabot@^1.3.0: version "1.5.0" - resolved "https://registry.yarnpkg.com/teslabot/-/teslabot-1.5.0.tgz#70f544516699ca5f696d8ae94f3d12cd495d5cd6" + resolved "https://registry.npmjs.org/teslabot/-/teslabot-1.5.0.tgz" integrity sha512-e2MmELhCgrgZEGo7PQu/6bmYG36IDH+YrBI1iGm6jovXkeDIGa3pZ2WSqRjzkuw2vt1EqfkZoV5GpXgqL8QJVg== text-table@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== tiny-invariant@^1.3.1: version "1.3.3" - resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.3.tgz#46680b7a873a0d5d10005995eb90a70d74d60127" + resolved "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz" integrity sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg== tinybench@^2.5.1: version "2.8.0" - resolved "https://registry.yarnpkg.com/tinybench/-/tinybench-2.8.0.tgz#30e19ae3a27508ee18273ffed9ac7018949acd7b" + resolved "https://registry.npmjs.org/tinybench/-/tinybench-2.8.0.tgz" integrity sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw== tinypool@^0.8.3: version "0.8.4" - resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-0.8.4.tgz#e217fe1270d941b39e98c625dcecebb1408c9aa8" + resolved "https://registry.npmjs.org/tinypool/-/tinypool-0.8.4.tgz" integrity sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ== tinyspy@^2.2.0: version "2.2.1" - resolved "https://registry.yarnpkg.com/tinyspy/-/tinyspy-2.2.1.tgz#117b2342f1f38a0dbdcc73a50a454883adf861d1" + resolved "https://registry.npmjs.org/tinyspy/-/tinyspy-2.2.1.tgz" integrity sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A== to-fast-properties@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== to-regex-range@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== dependencies: is-number "^7.0.0" tr46@~0.0.3: version "0.0.3" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== ts-api-utils@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.0.1.tgz#8144e811d44c749cd65b2da305a032510774452d" + resolved "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.1.tgz" integrity sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A== -tslib@2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf" - integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== - tslib@^1.11.1: version "1.14.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== tslib@^2.3.1, tslib@^2.5.0: version "2.6.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.1.tgz#fd8c9a0ff42590b25703c0acb3de3d3f4ede0410" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz" integrity sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig== tslib@^2.4.0: version "2.6.2" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz" integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== +tslib@2.5.0: + version "2.5.0" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz" + integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== + tweetnacl-util@^0.15.1: version "0.15.1" - resolved "https://registry.yarnpkg.com/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz#b80fcdb5c97bcc508be18c44a4be50f022eea00b" + resolved "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz" integrity sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw== -tweetnacl@1.0.3, tweetnacl@^1.0.3: +tweetnacl@^1.0.3, tweetnacl@1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-1.0.3.tgz#ac0af71680458d8a6378d0d0d050ab1407d35596" + resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz" integrity sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw== type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== dependencies: prelude-ls "^1.2.1" type-detect@^4.0.0, type-detect@^4.0.8: version "4.0.8" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + resolved "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== type-fest@^0.20.2: version "0.20.2" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== typescript@^5.0.2: version "5.1.6" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.1.6.tgz#02f8ac202b6dad2c0dd5e0913745b47a37998274" + resolved "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz" integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA== ua-parser-js@^1.0.35: version "1.0.36" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-1.0.36.tgz#a9ab6b9bd3a8efb90bb0816674b412717b7c428c" + resolved "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.36.tgz" integrity sha512-znuyCIXzl8ciS3+y3fHJI/2OhQIXbXw9MWC/o3qwyR+RGppjZHrM27CGFSKCJXi2Kctiz537iOu2KnXs1lMQhw== ufo@^1.5.3: version "1.5.3" - resolved "https://registry.yarnpkg.com/ufo/-/ufo-1.5.3.tgz#3325bd3c977b6c6cd3160bf4ff52989adc9d3344" + resolved "https://registry.npmjs.org/ufo/-/ufo-1.5.3.tgz" integrity sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw== undici-types@~5.26.4: version "5.26.5" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" + resolved "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz" integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" + resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz" integrity sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ== unicode-match-property-ecmascript@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3" + resolved "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz" integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q== dependencies: unicode-canonical-property-names-ecmascript "^2.0.0" @@ -4569,17 +4294,17 @@ unicode-match-property-ecmascript@^2.0.0: unicode-match-property-value-ecmascript@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz#cb5fffdcd16a05124f5a4b0bf7c3770208acbbe0" + resolved "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz" integrity sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA== unicode-property-aliases-ecmascript@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd" + resolved "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz" integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== update-browserslist-db@^1.0.11: version "1.0.11" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz#9a2a641ad2907ae7b3616506f4b977851db5b940" + resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz" integrity sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA== dependencies: escalade "^3.1.1" @@ -4587,24 +4312,24 @@ update-browserslist-db@^1.0.11: uri-js@^4.2.2: version "4.4.1" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== dependencies: punycode "^2.1.0" use-sync-external-store@^1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz#7dbefd6ef3fe4e767a0cf5d7287aacfb5846928a" + resolved "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz" integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA== "uuid@^7.0.0 || ^8.0.0": version "8.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== victory-vendor@^36.6.8: version "36.9.2" - resolved "https://registry.yarnpkg.com/victory-vendor/-/victory-vendor-36.9.2.tgz#668b02a448fa4ea0f788dbf4228b7e64669ff801" + resolved "https://registry.npmjs.org/victory-vendor/-/victory-vendor-36.9.2.tgz" integrity sha512-PnpQQMuxlwYdocC8fIJqVXvkeViHYzotI+NJrCuav0ZYFoq912ZHBk3mCeuj+5/VpodOjPe1z0Fk2ihgzlXqjQ== dependencies: "@types/d3-array" "^3.0.3" @@ -4624,7 +4349,7 @@ victory-vendor@^36.6.8: vite-node@1.6.0: version "1.6.0" - resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-1.6.0.tgz#2c7e61129bfecc759478fa592754fd9704aaba7f" + resolved "https://registry.npmjs.org/vite-node/-/vite-node-1.6.0.tgz" integrity sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw== dependencies: cac "^6.7.14" @@ -4635,7 +4360,7 @@ vite-node@1.6.0: vite@^4.4.5: version "4.4.7" - resolved "https://registry.yarnpkg.com/vite/-/vite-4.4.7.tgz#71b8a37abaf8d50561aca084dbb77fa342824154" + resolved "https://registry.npmjs.org/vite/-/vite-4.4.7.tgz" integrity sha512-6pYf9QJ1mHylfVh39HpuSfMPojPSKVxZvnclX1K1FyZ1PXDOcLBibdq5t1qxJSnL63ca8Wf4zts6mD8u8oc9Fw== dependencies: esbuild "^0.18.10" @@ -4646,7 +4371,7 @@ vite@^4.4.5: vite@^5.0.0: version "5.3.2" - resolved "https://registry.yarnpkg.com/vite/-/vite-5.3.2.tgz#2f0a8531c71060467ed3e0a205a203f269b6d9c8" + resolved "https://registry.npmjs.org/vite/-/vite-5.3.2.tgz" integrity sha512-6lA7OBHBlXUxiJxbO5aAY2fsHHzDr1q7DvXYnyZycRs2Dz+dXBWuhpWHvmljTRTpQC2uvGmUFFkSHF2vGo90MA== dependencies: esbuild "^0.21.3" @@ -4657,7 +4382,7 @@ vite@^5.0.0: vitest@^1.6.0: version "1.6.0" - resolved "https://registry.yarnpkg.com/vitest/-/vitest-1.6.0.tgz#9d5ad4752a3c451be919e412c597126cffb9892f" + resolved "https://registry.npmjs.org/vitest/-/vitest-1.6.0.tgz" integrity sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA== dependencies: "@vitest/expect" "1.6.0" @@ -4683,17 +4408,17 @@ vitest@^1.6.0: webidl-conversions@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz" integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== whatwg-fetch@^3.4.1: version "3.6.17" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.17.tgz#009bbbfc122b227b74ba1ff31536b3a1a0e0e212" + resolved "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.17.tgz" integrity sha512-c4ghIvG6th0eudYwKZY5keb81wtFz9/WeAHAoy8+r18kcWlitUIrmGFQ2rWEl4UCKUilD3zCLHOIPheHx5ypRQ== whatwg-url@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz" integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== dependencies: tr46 "~0.0.3" @@ -4701,14 +4426,14 @@ whatwg-url@^5.0.0: which@^2.0.1: version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" why-is-node-running@^2.2.2: version "2.2.2" - resolved "https://registry.yarnpkg.com/why-is-node-running/-/why-is-node-running-2.2.2.tgz#4185b2b4699117819e7154594271e7e344c9973e" + resolved "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.2.2.tgz" integrity sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA== dependencies: siginfo "^2.0.0" @@ -4716,32 +4441,32 @@ why-is-node-running@^2.2.2: wrappy@1: version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== yallist@^3.0.2: version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== yallist@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== yaml@^1.10.0: version "1.10.2" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== yaml@^2.2.2: version "2.4.2" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.4.2.tgz#7a2b30f2243a5fc299e1f14ca58d475ed4bc5362" + resolved "https://registry.npmjs.org/yaml/-/yaml-2.4.2.tgz" integrity sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA== yauzl@^2.10.0: version "2.10.0" - resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" + resolved "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz" integrity sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g== dependencies: buffer-crc32 "~0.2.3" @@ -4749,20 +4474,15 @@ yauzl@^2.10.0: yocto-queue@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== yocto-queue@^1.0.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.1.1.tgz#fef65ce3ac9f8a32ceac5a634f74e17e5b232110" + resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz" integrity sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g== -zod@^3.21.4: - version "3.21.4" - resolved "https://registry.yarnpkg.com/zod/-/zod-3.21.4.tgz#10882231d992519f0a10b5dd58a38c9dabbb64db" - integrity sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw== - zod@^3.21.4, zod@^3.23.8: version "3.23.8" - resolved "https://registry.yarnpkg.com/zod/-/zod-3.23.8.tgz#e37b957b5d52079769fb8097099b592f0ef4067d" + resolved "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz" integrity sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g== From 9d6f71a7390c573bd728cfc4e51ce00d3b7dfcca Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 10 Oct 2024 13:15:25 +1000 Subject: [PATCH 083/105] wip: unstaking smart-contract wrapper init --- src/hooks/contract/transferNFT.js | 36 +++++++++++ src/hooks/contract/wrappers/NftItem.ts | 89 ++++++++++++++++++++++++++ 2 files changed, 125 insertions(+) create mode 100644 src/hooks/contract/transferNFT.js create mode 100644 src/hooks/contract/wrappers/NftItem.ts diff --git a/src/hooks/contract/transferNFT.js b/src/hooks/contract/transferNFT.js new file mode 100644 index 00000000..05067e99 --- /dev/null +++ b/src/hooks/contract/transferNFT.js @@ -0,0 +1,36 @@ +import { Address, toNano } from "@ton/core"; + +import { NftItem } from "./wrappers/NftItem"; +import { NexTon } from "./wrappers/tact_NexTon"; +import { useAsyncInitialize } from "./useAsyncInitialize"; +import { useTonClient } from "./useTonClient"; +import useTonConnect from "./useTonConnect"; + +function transferNft(nftItemAddress) { + const client = useTonClient(); + const { sender, address } = useTonConnect(); + + let nftItem = useAsyncInitialize(async () => { + if (!client) return; + const contract = new NftItem(Address.parse(nftItemAddress)); + return client.open(contract); + }, [client]); + + return { + sendMessage: async (data, value) => { + if (nftItem) { + return await nftItem.sendTransfer(sender, { + queryId: data.queryId, + value: value, + newOwner: data.newOwner, + responseAddress: data.responseAddress, + fwdAmount: data.fwdAmount, + }); + } else { + return () => {}; + } + }, + }; +} + +export { transferNft }; diff --git a/src/hooks/contract/wrappers/NftItem.ts b/src/hooks/contract/wrappers/NftItem.ts new file mode 100644 index 00000000..c7d48adc --- /dev/null +++ b/src/hooks/contract/wrappers/NftItem.ts @@ -0,0 +1,89 @@ +import { Address, + beginCell, + Cell, + Contract, + contractAddress, + ContractProvider, + Sender, + SendMode + } from '@ton/core'; + + +export const NFT_ITEM_CONTRACT_CODE = "b5ee9c72010213010002ef000114ff00f4a413f4bcf2c80b0102016202030202cd0405020120111202012006070025d0264659fa801e78b00e78b6600e78b64f6aa404f743221c700925f03e0d0d3030171b0925f03e0fa40fa4031fa003171d721fa0031fa003073a9b400f00305b38e165b6c22345232c705f2e19501fa40d4fa40301034f004e007d31fd33f82105fcc3d145230ba8e8c32104810371026104502db3ce082102fcb26a25230bae30282101c04412a5230bae30231363737808090a0b0201200f1001f65136c705f2e191fa4021f002fa40d20031fa00820afaf0801ca121945315a0a1de22d70b01c300209206a19136e220c2fff2e192218e3e821005138d91c8500acf16500ccf1671244a145446b0708010c8cb055007cf165005fa0215cb6a12cb1fcb3f226eb39458cf17019132e201c901fb00105894102b385be20c0080135f03333334347082108b77173504c8cbff58cf164430128040708010c8cb055007cf165005fa0215cb6a12cb1fcb3f226eb39458cf17019132e201c901fb00011832104810371026104502db3c0d003c82101a0b9d5116ba9e5131c705f2e19a01d4304400f004e05f06840ff2f00082028e3527f0028210d53276db103845006d71708010c8cb055007cf165005fa0215cb6a12cb1fcb3f226eb39458cf17019132e201c901fb0093303335e25503f00401f65134c705f2e191fa4021f002fa40d20031fa00820afaf0801ca121945315a0a1de22d70b01c300209206a19136e220c2fff2e192218e3e8210511a4463c85008cf16500ccf1671244814544690708010c8cb055007cf165005fa0215cb6a12cb1fcb3f226eb39458cf17019132e201c901fb00103894102b365be20e0082028e3527f0028210d53276db103848006d71708010c8cb055007cf165005fa0215cb6a12cb1fcb3f226eb39458cf17019132e201c901fb0093303630e25503f00400113e910c1c2ebcb8536000413b513434cffe900835d27080271fc07e90353e900c040d440d380c1c165b5b5b60000dbf03a7801b628c000bbc7e7f801984"; + +export const NFT_ITEM_CONTRACT_CODE_CELL = Cell.fromBoc(Buffer.from(NFT_ITEM_CONTRACT_CODE, 'hex'))[0]; + +export type NftItemConfig = { + index: number; + collectionAddress: Address; + ownerAddress: Address; + nextonAddress: Address; + itemContent: Cell; +}; + +export function nftItemConfigToCell(config: NftItemConfig): Cell { + return beginCell() + .storeUint(config.index, 64) + .storeAddress(config.collectionAddress) + .storeAddress(config.ownerAddress) + .storeAddress(config.nextonAddress) + .storeRef(config.itemContent) + .endCell(); +} + +export class NftItem implements Contract { + constructor(readonly address: Address, readonly init?: { code: Cell; data: Cell }) {} + + static createFromAddress(address: Address) { + return new NftItem(address); + } + + static createFromConfig(config: NftItemConfig, code: Cell, workchain = 0) { + const data = nftItemConfigToCell(config); + const init = { code, data }; + return new NftItem(contractAddress(workchain, init), init); + } + + async sendDeploy(provider: ContractProvider, via: Sender, value: bigint) { + await provider.internal(via, { + value, + sendMode: SendMode.PAY_GAS_SEPARATELY, + body: beginCell().endCell(), + }); + } + + async sendTransfer(provider: ContractProvider, via: Sender, + opts: { + queryId: number; + value: bigint; + newOwner: Address; + responseAddress?: Address; + fwdAmount?: bigint; + } + ) { + await provider.internal(via, { + value: opts.value, + sendMode: SendMode.PAY_GAS_SEPARATELY, + body: beginCell() + .storeUint(0x5fcc3d14, 32) + .storeUint(opts.queryId,64) + .storeAddress(opts.newOwner) + .storeAddress(opts.responseAddress || null) + .storeBit(false) // no custom payload + .storeCoins(opts.fwdAmount || 0) + .storeBit(false) + .endCell(), + }); + } + + async getItemData(provider: ContractProvider){ + const res = await provider.get("get_nft_data",[]); + res.stack.readBigNumberOpt(); + return { + index: res.stack.readBigNumber(), + collectionAddress: res.stack.readAddress(), + itemOwner: res.stack.readAddress(), + itemContent: res.stack.readCell() + }; + } +} From 80efc33bd5555f037c7449ce152a62b7e67ec230 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 10 Oct 2024 13:15:44 +1000 Subject: [PATCH 084/105] wip: unstaking smart-contract wrapper init --- src/pages/Unstaking/UnstakingNftDetail.tsx | 84 ++++++++++++++++------ 1 file changed, 61 insertions(+), 23 deletions(-) diff --git a/src/pages/Unstaking/UnstakingNftDetail.tsx b/src/pages/Unstaking/UnstakingNftDetail.tsx index 0adf4de3..77f2c001 100644 --- a/src/pages/Unstaking/UnstakingNftDetail.tsx +++ b/src/pages/Unstaking/UnstakingNftDetail.tsx @@ -1,8 +1,7 @@ -import { useEffect, useState } from "react"; +import { useCallback, useEffect, useState } from "react"; import { useLocation, useNavigate, useParams } from "react-router-dom"; -import { randomAddress } from "@ton/test-utils"; import { MainButton } from "@vkruglikov/react-telegram-web-app"; -import { useRecoilValue } from "recoil"; +import { useRecoilValue, useSetRecoilState } from "recoil"; import { styled } from "styled-components"; import { postUnstake } from "@/api/postUnstake"; @@ -12,10 +11,11 @@ import TransactionConfirmModal from "@/components/common/Modal/TransactionConfir import UnstakingPreview from "@/components/myAsset/NFT/Unstaking/UnstakingPreview"; import { ConfirmUnstakingModal } from "@/components/unstaking/ConfirmUnstakingModal"; import { useUnstakingDetail } from "@/hooks/api/unstaking/useUnstakingDetail"; -import { useNFTDetail } from "@/hooks/api/useNFTDetail"; +import * as Contract from "@/hooks/contract/transferNFT"; import useTonConnect from "@/hooks/contract/useTonConnect"; -import { Transfer } from "@/hooks/contract/wrappers/tact_FakeItem"; +import { globalError } from "@/lib/atom/globalError"; import { telegramAtom } from "@/lib/atom/telegram"; +import { UnstakingProps } from "@/types/staking"; import { isDevMode } from "@/utils/isDevMode"; import { limitDecimals } from "@/utils/limitDecimals"; @@ -35,14 +35,18 @@ interface ModalState { } const UnstakingNftDetail = ({ view }: { view?: boolean }) => { - // const telegramId = useRecoilValue(telegramAtom); - // const { address } = useTonConnect(); - // const { sendMessage } = Contract.useFakeItemContract(); + const { address, refreshTonData } = useTonConnect(); + const { sendMessage } = Contract.transferNFT(); const { id } = useParams(); const { data: unstakingDetail, isLoading: isLoadingUnstakingDetail, error } = useUnstakingDetail(Number(id)); + const location = useLocation(); const navigate = useNavigate(); - const [isLoadingUnstake, setIsLoadingUnstake] = useState(false); + + const setError = useSetRecoilState(globalError); + const telegramId = useRecoilValue(telegramAtom); + + const [isLoading, setIsLoading] = useState(false); const [modal, setModal] = useState({ type: "confirmUnstake", toggled: false, @@ -69,16 +73,10 @@ const UnstakingNftDetail = ({ view }: { view?: boolean }) => { })); }; - const postUnstaking = async () => { + /* const postUnstaking = async () => { setIsLoadingUnstake(true); - setTimeout(() => { - console.log("postUnstaking"); - setModal({ type: "unstake", toggled: true }); - setIsLoadingUnstake(false); - }, 1000); - // todo: connect contract & API - /* if (address && nftDetail) { + if (address && unstakingDetail) { const newUnstaking: UnstakingProps = { telegramId: Number(telegramId), nftId: Number(id), @@ -92,19 +90,52 @@ const UnstakingNftDetail = ({ view }: { view?: boolean }) => { }; }; - await sendMessage(data(), `${nftDetail.principal}`); + await sendMessage(data(), `${unstakingDetail.principal}`); const response = await postUnstake(newUnstaking); if (response === 200) { setModal({ type: "unstake", toggled: true }); navigate(`/unstaking/beta`); } - } */ - }; + } + }; */ + + const handleUnstaking = useCallback(async () => { + setIsLoading(true); + + try { + const newUnstaking: UnstakingProps = { + telegramId: Number(telegramId), + nftId: Number(id), + address, + }; + + const data = () => { + return { + queryId: BigInt(Date.now()), + newOwner: "UQD__________________________________________xYt", + responseAddress: null, + fwdAmount: null, + }; + }; + + // First, attempt to send the message to the contract + // await sendMessage(data(), unstakingDetail.principal); + + // If sendMessage is successful, then call postStakingInfo + await postUnstake(newUnstaking); + + setModal({ type: "unstake", toggled: true }); + } catch (error) { + setError(error); + } finally { + setIsLoading(false); + } + }, [setError, address, id, telegramId]); const handleUnstakeConfirm = () => { toggleModal(); - postUnstaking(); + handleUnstaking(); }; if (error) { @@ -175,12 +206,19 @@ const UnstakingNftDetail = ({ view }: { view?: boolean }) => { )}
- {isLoadingUnstake && } + {isLoading && } {modal.type === "confirmUnstake" && modal.toggled && ( )} {modal.type === "unstake" && modal.toggled && ( - console.log("Unstaked!")} /> + { + await refreshTonData(); + navigate(`/unstaking/beta`); + }} + /> )} ); From 9734f1588aed845552b2e503fe4c5d1971c52fb3 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Thu, 10 Oct 2024 13:23:57 +1000 Subject: [PATCH 085/105] update: lock-file updated --- yarn.lock | 833 ++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 680 insertions(+), 153 deletions(-) diff --git a/yarn.lock b/yarn.lock index 9173b9df..b51e0751 100644 --- a/yarn.lock +++ b/yarn.lock @@ -71,12 +71,46 @@ dependencies: "@babel/highlight" "^7.22.5" +"@babel/code-frame@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.25.7.tgz#438f2c524071531d643c6f0188e1e28f130cebc7" + integrity sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g== + dependencies: + "@babel/highlight" "^7.25.7" + picocolors "^1.0.0" + +"@babel/compat-data@^7.20.5", "@babel/compat-data@^7.22.5", "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.7.tgz#b8479fe0018ef0ac87b6b7a5c6916fcd67ae2c9c" + integrity sha512-9ickoLz+hcXCeh7jrcin+/SLWm+GkxE2kTvoYyp38p4WkdFXfQJxDFGWp/YHjiKLPx06z2A7W8XKuqbReXDzsw== + "@babel/compat-data@^7.22.9": version "7.22.9" resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz" integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ== -"@babel/core@^7.0.0", "@babel/core@^7.0.0-0", "@babel/core@^7.22.5": +"@babel/core@^7.21.0": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.25.7.tgz#1b3d144157575daf132a3bc80b2b18e6e3ca6ece" + integrity sha512-yJ474Zv3cwiSOO9nXJuqzvwEeM+chDuQ8GJirw+pZ91sCGCyOZ3dJkVE09fTV0VEVzXyLWhh3G/AolYTPX7Mow== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.25.7" + "@babel/generator" "^7.25.7" + "@babel/helper-compilation-targets" "^7.25.7" + "@babel/helper-module-transforms" "^7.25.7" + "@babel/helpers" "^7.25.7" + "@babel/parser" "^7.25.7" + "@babel/template" "^7.25.7" + "@babel/traverse" "^7.25.7" + "@babel/types" "^7.25.7" + convert-source-map "^2.0.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.3" + semver "^6.3.1" + +"@babel/core@^7.22.5": version "7.22.9" resolved "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz" integrity sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w== @@ -107,6 +141,16 @@ "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" +"@babel/generator@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.7.tgz#de86acbeb975a3e11ee92dd52223e6b03b479c56" + integrity sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA== + dependencies: + "@babel/types" "^7.25.7" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" + jsesc "^3.0.2" + "@babel/helper-annotate-as-pure@^7.22.5": version "7.22.5" resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz" @@ -132,6 +176,17 @@ lru-cache "^5.1.1" semver "^6.3.1" +"@babel/helper-compilation-targets@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.7.tgz#11260ac3322dda0ef53edfae6e97b961449f5fa4" + integrity sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A== + dependencies: + "@babel/compat-data" "^7.25.7" + "@babel/helper-validator-option" "^7.25.7" + browserslist "^4.24.0" + lru-cache "^5.1.1" + semver "^6.3.1" + "@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.22.5", "@babel/helper-create-class-features-plugin@^7.22.9": version "7.22.9" resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.9.tgz" @@ -187,12 +242,13 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.22.5": - version "7.22.5" - resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz" - integrity sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ== +"@babel/helper-member-expression-to-functions@^7.22.5": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.7.tgz#541a33b071f0355a63a0fa4bdf9ac360116b8574" + integrity sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA== dependencies: - "@babel/types" "^7.22.5" + "@babel/traverse" "^7.25.7" + "@babel/types" "^7.25.7" "@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.18.6", "@babel/helper-module-imports@^7.22.5": version "7.22.5" @@ -201,6 +257,24 @@ dependencies: "@babel/types" "^7.22.5" +"@babel/helper-module-imports@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz#dba00d9523539152906ba49263e36d7261040472" + integrity sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw== + dependencies: + "@babel/traverse" "^7.25.7" + "@babel/types" "^7.25.7" + +"@babel/helper-module-transforms@^7.22.5", "@babel/helper-module-transforms@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz#2ac9372c5e001b19bc62f1fe7d96a18cb0901d1a" + integrity sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ== + dependencies: + "@babel/helper-module-imports" "^7.25.7" + "@babel/helper-simple-access" "^7.25.7" + "@babel/helper-validator-identifier" "^7.25.7" + "@babel/traverse" "^7.25.7" + "@babel/helper-module-transforms@^7.22.9": version "7.22.9" resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz" @@ -212,12 +286,12 @@ "@babel/helper-split-export-declaration" "^7.22.6" "@babel/helper-validator-identifier" "^7.22.5" -"@babel/helper-plugin-utils@^7.22.5": - version "7.22.5" - resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz" - integrity sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw== +"@babel/helper-optimise-call-expression@^7.22.5": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.7.tgz#1de1b99688e987af723eed44fa7fc0ee7b97d77a" + integrity sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng== dependencies: - "@babel/types" "^7.22.5" + "@babel/types" "^7.25.7" "@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": version "7.22.5" @@ -249,6 +323,14 @@ dependencies: "@babel/types" "^7.22.5" +"@babel/helper-simple-access@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz#5eb9f6a60c5d6b2e0f76057004f8dacbddfae1c0" + integrity sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ== + dependencies: + "@babel/traverse" "^7.25.7" + "@babel/types" "^7.25.7" + "@babel/helper-skip-transparent-expression-wrappers@^7.22.5": version "7.22.5" resolved "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz" @@ -268,16 +350,31 @@ resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz" integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== +"@babel/helper-string-parser@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz#d50e8d37b1176207b4fe9acedec386c565a44a54" + integrity sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g== + "@babel/helper-validator-identifier@^7.22.5": version "7.22.5" resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz" integrity sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ== +"@babel/helper-validator-identifier@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz#77b7f60c40b15c97df735b38a66ba1d7c3e93da5" + integrity sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg== + "@babel/helper-validator-option@^7.22.5": version "7.22.5" resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz" integrity sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw== +"@babel/helper-validator-option@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz#97d1d684448228b30b506d90cace495d6f492729" + integrity sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ== + "@babel/helper-wrap-function@^7.22.9": version "7.22.9" resolved "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.9.tgz" @@ -296,6 +393,14 @@ "@babel/traverse" "^7.22.6" "@babel/types" "^7.22.5" +"@babel/helpers@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.25.7.tgz#091b52cb697a171fe0136ab62e54e407211f09c2" + integrity sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA== + dependencies: + "@babel/template" "^7.25.7" + "@babel/types" "^7.25.7" + "@babel/highlight@^7.22.5": version "7.22.5" resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz" @@ -305,11 +410,28 @@ chalk "^2.0.0" js-tokens "^4.0.0" +"@babel/highlight@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.25.7.tgz#20383b5f442aa606e7b5e3043b0b1aafe9f37de5" + integrity sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw== + dependencies: + "@babel/helper-validator-identifier" "^7.25.7" + chalk "^2.4.2" + js-tokens "^4.0.0" + picocolors "^1.0.0" + "@babel/parser@^7.22.5", "@babel/parser@^7.22.7": version "7.22.7" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.22.7.tgz" integrity sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q== +"@babel/parser@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.7.tgz#99b927720f4ddbfeb8cd195a363ed4532f87c590" + integrity sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw== + dependencies: + "@babel/types" "^7.25.7" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.5": version "7.22.5" resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz" @@ -1092,6 +1214,28 @@ "@babel/parser" "^7.22.5" "@babel/types" "^7.22.5" +"@babel/template@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.7.tgz#27f69ce382855d915b14ab0fe5fb4cbf88fa0769" + integrity sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA== + dependencies: + "@babel/code-frame" "^7.25.7" + "@babel/parser" "^7.25.7" + "@babel/types" "^7.25.7" + +"@babel/traverse@^7.21.2", "@babel/traverse@^7.25.7": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.7.tgz#83e367619be1cab8e4f2892ef30ba04c26a40fa8" + integrity sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg== + dependencies: + "@babel/code-frame" "^7.25.7" + "@babel/generator" "^7.25.7" + "@babel/parser" "^7.25.7" + "@babel/template" "^7.25.7" + "@babel/types" "^7.25.7" + debug "^4.3.1" + globals "^11.1.0" + "@babel/traverse@^7.22.6", "@babel/traverse@^7.22.8": version "7.22.8" resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.8.tgz" @@ -1117,6 +1261,15 @@ "@babel/helper-validator-identifier" "^7.22.5" to-fast-properties "^2.0.0" +"@babel/types@^7.25.7", "@babel/types@^7.4.4": + version "7.25.7" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.7.tgz#1b7725c1d3a59f328cb700ce704c46371e6eef9b" + integrity sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ== + dependencies: + "@babel/helper-string-parser" "^7.25.7" + "@babel/helper-validator-identifier" "^7.25.7" + to-fast-properties "^2.0.0" + "@emotion/babel-plugin@^11.11.0": version "11.11.0" resolved "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz" @@ -1150,6 +1303,13 @@ resolved "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz" integrity sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ== +"@emotion/is-prop-valid@1.2.1", "@emotion/is-prop-valid@^1.2.1": + version "1.2.1" + resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz" + integrity sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw== + dependencies: + "@emotion/memoize" "^0.8.1" + "@emotion/is-prop-valid@^0.8.2": version "0.8.8" resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz" @@ -1157,23 +1317,16 @@ dependencies: "@emotion/memoize" "0.7.4" -"@emotion/is-prop-valid@^1.2.1", "@emotion/is-prop-valid@1.2.1": - version "1.2.1" - resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz" - integrity sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw== - dependencies: - "@emotion/memoize" "^0.8.1" +"@emotion/memoize@0.7.4": + version "0.7.4" + resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz" + integrity sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw== "@emotion/memoize@^0.8.1": version "0.8.1" resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz" integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA== -"@emotion/memoize@0.7.4": - version "0.7.4" - resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz" - integrity sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw== - "@emotion/react@^11.11.1": version "11.11.1" resolved "https://registry.npmjs.org/@emotion/react/-/react-11.11.1.tgz" @@ -1204,7 +1357,7 @@ resolved "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz" integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA== -"@emotion/styled@^11.11.0", "@emotion/styled@^11.3.0": +"@emotion/styled@^11.11.0": version "11.11.0" resolved "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz" integrity sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng== @@ -1216,16 +1369,16 @@ "@emotion/use-insertion-effect-with-fallbacks" "^1.0.1" "@emotion/utils" "^1.2.1" -"@emotion/unitless@^0.8.0", "@emotion/unitless@^0.8.1": - version "0.8.1" - resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz" - integrity sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ== - "@emotion/unitless@0.8.0": version "0.8.0" resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.0.tgz" integrity sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw== +"@emotion/unitless@^0.8.0", "@emotion/unitless@^0.8.1": + version "0.8.1" + resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz" + integrity sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ== + "@emotion/use-insertion-effect-with-fallbacks@^1.0.1": version "1.0.1" resolved "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz" @@ -1246,6 +1399,41 @@ resolved "https://registry.npmjs.org/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.2.3.tgz" integrity sha512-r3MIryXDeXDOZh7ih1l/yE9ZLORCd5e8vWg02azWRGj5SPTuoh69A2AIyn0Z31V/kHBfZ4HgWJ+OK3GTTwLmnw== +"@esbuild/aix-ppc64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz#c7184a326533fcdf1b8ee0733e21c713b975575f" + integrity sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ== + +"@esbuild/android-arm64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.18.16.tgz#34f562abc0015933aabd41b3d50d8d3359e30155" + integrity sha512-wsCqSPqLz+6Ov+OM4EthU43DyYVVyfn15S4j1bJzylDpc1r1jZFFfJQNfDuT8SlgwuqpmpJXK4uPlHGw6ve7eA== + +"@esbuild/android-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz#09d9b4357780da9ea3a7dfb833a1f1ff439b4052" + integrity sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A== + +"@esbuild/android-arm@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.18.16.tgz#ef6f9aa59a79a9b9330a2e73f7eb402c6630c267" + integrity sha512-gCHjjQmA8L0soklKbLKA6pgsLk1byULuHe94lkZDzcO3/Ta+bbeewJioEn1Fr7kgy9NWNFy/C+MrBwC6I/WCug== + +"@esbuild/android-arm@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.21.5.tgz#9b04384fb771926dfa6d7ad04324ecb2ab9b2e28" + integrity sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg== + +"@esbuild/android-x64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.18.16.tgz#ed7444cb17542932c67b15e20528686853239cfd" + integrity sha512-ldsTXolyA3eTQ1//4DS+E15xl0H/3DTRJaRL0/0PgkqDsI0fV/FlOtD+h0u/AUJr+eOTlZv4aC9gvfppo3C4sw== + +"@esbuild/android-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.21.5.tgz#29918ec2db754cedcb6c1b04de8cd6547af6461e" + integrity sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA== + "@esbuild/darwin-arm64@0.18.16": version "0.18.16" resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.16.tgz" @@ -1256,6 +1444,186 @@ resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz" integrity sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ== +"@esbuild/darwin-x64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.18.16.tgz#a8f3b61bee2807131cbe28eb164ad2b0333b59f5" + integrity sha512-6w4Dbue280+rp3LnkgmriS1icOUZDyPuZo/9VsuMUTns7SYEiOaJ7Ca1cbhu9KVObAWfmdjUl4gwy9TIgiO5eA== + +"@esbuild/darwin-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz#c13838fa57372839abdddc91d71542ceea2e1e22" + integrity sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw== + +"@esbuild/freebsd-arm64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.16.tgz#9bdbb3f0e5f0842b21c9b8602e70c106174ac24c" + integrity sha512-x35fCebhe9s979DGKbVAwXUOcTmCIE32AIqB9CB1GralMIvxdnMLAw5CnID17ipEw9/3MvDsusj/cspYt2ZLNQ== + +"@esbuild/freebsd-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz#646b989aa20bf89fd071dd5dbfad69a3542e550e" + integrity sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g== + +"@esbuild/freebsd-x64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.18.16.tgz#24f73956436495cc7a5a4bf06be6b661aea6a2c1" + integrity sha512-YM98f+PeNXF3GbxIJlUsj+McUWG1irguBHkszCIwfr3BXtXZsXo0vqybjUDFfu9a8Wr7uUD/YSmHib+EeGAFlg== + +"@esbuild/freebsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz#aa615cfc80af954d3458906e38ca22c18cf5c261" + integrity sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ== + +"@esbuild/linux-arm64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.18.16.tgz#244569757f9cbd912f5a595a8ad8144f8c915f13" + integrity sha512-XIqhNUxJiuy+zsR77+H5Z2f7s4YRlriSJKtvx99nJuG5ATuJPjmZ9n0ANgnGlPCpXGSReFpgcJ7O3SMtzIFeiQ== + +"@esbuild/linux-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz#70ac6fa14f5cb7e1f7f887bcffb680ad09922b5b" + integrity sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q== + +"@esbuild/linux-arm@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.18.16.tgz#d63923c63af534032cc5ea0b2a0b3de10f8357f5" + integrity sha512-b5ABb+5Ha2C9JkeZXV+b+OruR1tJ33ePmv9ZwMeETSEKlmu/WJ45XTTG+l6a2KDsQtJJ66qo/hbSGBtk0XVLHw== + +"@esbuild/linux-arm@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz#fc6fd11a8aca56c1f6f3894f2bea0479f8f626b9" + integrity sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA== + +"@esbuild/linux-ia32@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.18.16.tgz#a8825ccea6309f0bccfc5d87b43163ba804c2f20" + integrity sha512-no+pfEpwnRvIyH+txbBAWtjxPU9grslmTBfsmDndj7bnBmr55rOo/PfQmRfz7Qg9isswt1FP5hBbWb23fRWnow== + +"@esbuild/linux-ia32@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz#3271f53b3f93e3d093d518d1649d6d68d346ede2" + integrity sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg== + +"@esbuild/linux-loong64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.18.16.tgz#f530e820fc3c61cf2206155b994aeab53b6d25be" + integrity sha512-Zbnczs9ZXjmo0oZSS0zbNlJbcwKXa/fcNhYQjahDs4Xg18UumpXG/lwM2lcSvHS3mTrRyCYZvJbmzYc4laRI1g== + +"@esbuild/linux-loong64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz#ed62e04238c57026aea831c5a130b73c0f9f26df" + integrity sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg== + +"@esbuild/linux-mips64el@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.18.16.tgz#2d47ace539257896865d243641bd6716684a1e82" + integrity sha512-YMF7hih1HVR/hQVa/ot4UVffc5ZlrzEb3k2ip0nZr1w6fnYypll9td2qcoMLvd3o8j3y6EbJM3MyIcXIVzXvQQ== + +"@esbuild/linux-mips64el@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz#e79b8eb48bf3b106fadec1ac8240fb97b4e64cbe" + integrity sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg== + +"@esbuild/linux-ppc64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.18.16.tgz#d6913e7e9be9e242a6a20402800141bdbe7009f7" + integrity sha512-Wkz++LZ29lDwUyTSEnzDaaP5OveOgTU69q9IyIw9WqLRxM4BjTBjz9un4G6TOvehWpf/J3gYVFN96TjGHrbcNQ== + +"@esbuild/linux-ppc64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz#5f2203860a143b9919d383ef7573521fb154c3e4" + integrity sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w== + +"@esbuild/linux-riscv64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.18.16.tgz#8f33b627389c8234fe61f4636c134f17fb1d9b09" + integrity sha512-LFMKZ30tk78/mUv1ygvIP+568bwf4oN6reG/uczXnz6SvFn4e2QUFpUpZY9iSJT6Qpgstrhef/nMykIXZtZWGQ== + +"@esbuild/linux-riscv64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz#07bcafd99322d5af62f618cb9e6a9b7f4bb825dc" + integrity sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA== + +"@esbuild/linux-s390x@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.18.16.tgz#4d44c030f78962cf410f604f92fcc1505e4afdde" + integrity sha512-3ZC0BgyYHYKfZo3AV2/66TD/I9tlSBaW7eWTEIkrQQKfJIifKMMttXl9FrAg+UT0SGYsCRLI35Gwdmm96vlOjg== + +"@esbuild/linux-s390x@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz#b7ccf686751d6a3e44b8627ababc8be3ef62d8de" + integrity sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A== + +"@esbuild/linux-x64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.18.16.tgz#8846d00e16b1e93eb488c8b4dd51c946adfc236f" + integrity sha512-xu86B3647DihHJHv/wx3NCz2Dg1gjQ8bbf9cVYZzWKY+gsvxYmn/lnVlqDRazObc3UMwoHpUhNYaZset4X8IPA== + +"@esbuild/linux-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz#6d8f0c768e070e64309af8004bb94e68ab2bb3b0" + integrity sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ== + +"@esbuild/netbsd-x64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.18.16.tgz#6514a86bd07744f3100d2813ea2fb6520d53e72e" + integrity sha512-uVAgpimx9Ffw3xowtg/7qQPwHFx94yCje+DoBx+LNm2ePDpQXHrzE+Sb0Si2VBObYz+LcRps15cq+95YM7gkUw== + +"@esbuild/netbsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz#bbe430f60d378ecb88decb219c602667387a6047" + integrity sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg== + +"@esbuild/openbsd-x64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.18.16.tgz#ae67ce766d58aab6c0e6037f1a76f15df4a2a5fe" + integrity sha512-6OjCQM9wf7z8/MBi6BOWaTL2AS/SZudsZtBziXMtNI8r/U41AxS9x7jn0ATOwVy08OotwkPqGRMkpPR2wcTJXA== + +"@esbuild/openbsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz#99d1cf2937279560d2104821f5ccce220cb2af70" + integrity sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow== + +"@esbuild/sunos-x64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.18.16.tgz#998efe8a58374b7351ac710455051639a6ce6a05" + integrity sha512-ZoNkruFYJp9d1LbUYCh8awgQDvB9uOMZqlQ+gGEZR7v6C+N6u7vPr86c+Chih8niBR81Q/bHOSKGBK3brJyvkQ== + +"@esbuild/sunos-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz#08741512c10d529566baba837b4fe052c8f3487b" + integrity sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg== + +"@esbuild/win32-arm64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.18.16.tgz#8de33682243508eef8d4de1816df2c05adad2b21" + integrity sha512-+j4anzQ9hrs+iqO+/wa8UE6TVkKua1pXUb0XWFOx0FiAj6R9INJ+WE//1/Xo6FG1vB5EpH3ko+XcgwiDXTxcdw== + +"@esbuild/win32-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz#675b7385398411240735016144ab2e99a60fc75d" + integrity sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A== + +"@esbuild/win32-ia32@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.18.16.tgz#95c9f4274fb3ef9e449d464ffe3e3b7fa091503b" + integrity sha512-5PFPmq3sSKTp9cT9dzvI67WNfRZGvEVctcZa1KGjDDu4n3H8k59Inbk0du1fz0KrAbKKNpJbdFXQMDUz7BG4rQ== + +"@esbuild/win32-ia32@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz#1bfc3ce98aa6ca9a0969e4d2af72144c59c1193b" + integrity sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA== + +"@esbuild/win32-x64@0.18.16": + version "0.18.16" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.18.16.tgz#5be58d31d0120c68af8e38b702e6937ce764cd68" + integrity sha512-sCIVrrtcWN5Ua7jYXNG1xD199IalrbfV2+0k/2Zf2OyV2FtnQnMgdzgpRAbi4AWlKJj1jkX+M+fEGPQj6BQB4w== + +"@esbuild/win32-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz#acad351d582d157bb145535db2a6ff53dd514b5c" + integrity sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw== + "@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0": version "4.4.0" resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz" @@ -1328,26 +1696,50 @@ "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.9" +"@jridgewell/gen-mapping@^0.3.5": + version "0.3.5" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" + integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== + dependencies: + "@jridgewell/set-array" "^1.2.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.24" + "@jridgewell/resolve-uri@3.1.0": version "3.1.0" resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz" integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== + "@jridgewell/set-array@^1.0.1": version "1.1.2" resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== -"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.15": - version "1.4.15" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz" - integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== +"@jridgewell/set-array@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" + integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== "@jridgewell/sourcemap-codec@1.4.14": version "1.4.14" resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz" integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.15": + version "1.4.15" + resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz" + integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== + +"@jridgewell/sourcemap-codec@^1.4.14": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a" + integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== + "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": version "0.3.18" resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz" @@ -1356,6 +1748,14 @@ "@jridgewell/resolve-uri" "3.1.0" "@jridgewell/sourcemap-codec" "1.4.14" +"@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": + version "0.3.25" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" + integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + "@mui/base@5.0.0-beta.8": version "5.0.0-beta.8" resolved "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.8.tgz" @@ -1455,7 +1855,7 @@ "@nodelib/fs.stat" "2.0.5" run-parallel "^1.1.9" -"@nodelib/fs.stat@^2.0.2", "@nodelib/fs.stat@2.0.5": +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": version "2.0.5" resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== @@ -1485,11 +1885,86 @@ resolved "https://registry.npmjs.org/@remix-run/router/-/router-1.7.2.tgz" integrity sha512-7Lcn7IqGMV+vizMPoEl5F0XDshcdDYtMI6uJLQdQz5CfZAwy3vvGKYSUk789qndt5dEC4HfSjviSYlSoHGL2+A== +"@rollup/rollup-android-arm-eabi@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.0.tgz#bbd0e616b2078cd2d68afc9824d1fadb2f2ffd27" + integrity sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ== + +"@rollup/rollup-android-arm64@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.0.tgz#97255ef6384c5f73f4800c0de91f5f6518e21203" + integrity sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA== + "@rollup/rollup-darwin-arm64@4.18.0": version "4.18.0" resolved "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz" integrity sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w== +"@rollup/rollup-darwin-x64@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.0.tgz#e07d76de1cec987673e7f3d48ccb8e106d42c05c" + integrity sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA== + +"@rollup/rollup-linux-arm-gnueabihf@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.0.tgz#9f1a6d218b560c9d75185af4b8bb42f9f24736b8" + integrity sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA== + +"@rollup/rollup-linux-arm-musleabihf@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.0.tgz#53618b92e6ffb642c7b620e6e528446511330549" + integrity sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A== + +"@rollup/rollup-linux-arm64-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.0.tgz#99a7ba5e719d4f053761a698f7b52291cefba577" + integrity sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw== + +"@rollup/rollup-linux-arm64-musl@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.0.tgz#f53db99a45d9bc00ce94db8a35efa7c3c144a58c" + integrity sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ== + +"@rollup/rollup-linux-powerpc64le-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.0.tgz#cbb0837408fe081ce3435cf3730e090febafc9bf" + integrity sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA== + +"@rollup/rollup-linux-riscv64-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.0.tgz#8ed09c1d1262ada4c38d791a28ae0fea28b80cc9" + integrity sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg== + +"@rollup/rollup-linux-s390x-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.0.tgz#938138d3c8e0c96f022252a28441dcfb17afd7ec" + integrity sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg== + +"@rollup/rollup-linux-x64-gnu@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.0.tgz#1a7481137a54740bee1ded4ae5752450f155d942" + integrity sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w== + +"@rollup/rollup-linux-x64-musl@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.0.tgz#f1186afc601ac4f4fc25fac4ca15ecbee3a1874d" + integrity sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg== + +"@rollup/rollup-win32-arm64-msvc@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.0.tgz#ed6603e93636a96203c6915be4117245c1bd2daf" + integrity sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA== + +"@rollup/rollup-win32-ia32-msvc@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.0.tgz#14e0b404b1c25ebe6157a15edb9c46959ba74c54" + integrity sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg== + +"@rollup/rollup-win32-x64-msvc@4.18.0": + version "4.18.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.0.tgz#5d694d345ce36b6ecf657349e03eb87297e68da4" + integrity sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g== + "@sinclair/typebox@^0.27.8": version "0.27.8" resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz" @@ -1514,7 +1989,7 @@ dependencies: defer-to-connect "^2.0.0" -"@ton/core@^0.58.1", "@ton/core@>=0.49.2", "@ton/core@>=0.56.0": +"@ton/core@^0.58.1": version "0.58.1" resolved "https://registry.npmjs.org/@ton/core/-/core-0.58.1.tgz" integrity sha512-zydh42iT6E3U3Ky/DhTFqJMN/ycKKzbsHASY257Qr2sZn97G/MOcHFizPfMnbJJgx0H9iHX6mdyMvp1IKBVAFA== @@ -1528,7 +2003,7 @@ dependencies: jssha "3.2.0" -"@ton/crypto@^3.3.0", "@ton/crypto@>=3.2.0": +"@ton/crypto@^3.3.0": version "3.3.0" resolved "https://registry.npmjs.org/@ton/crypto/-/crypto-3.3.0.tgz" integrity sha512-/A6CYGgA/H36OZ9BbTaGerKtzWp50rg67ZCH2oIjV1NcrBaCK9Z343M+CxedvM7Haf3f/Ee9EhxyeTp0GKMUpA== @@ -1664,7 +2139,7 @@ resolved "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.2.tgz" integrity sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw== -"@types/estree@^1.0.0", "@types/estree@1.0.5": +"@types/estree@1.0.5", "@types/estree@^1.0.0": version "1.0.5" resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz" integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== @@ -1694,7 +2169,7 @@ dependencies: "@types/node" "*" -"@types/node@*", "@types/node@^18.0.0 || >=20.0.0", "@types/node@>= 14": +"@types/node@*": version "20.12.8" resolved "https://registry.npmjs.org/@types/node/-/node-20.12.8.tgz" integrity sha512-NU0rJLJnshZWdE/097cdCBbyW1h4hEg0xpovcoAQYHl8dnEyp/NAOiE45pvc+Bd1Dt+2r94v2eGFpQJ4R7g+2w== @@ -1732,7 +2207,7 @@ dependencies: "@types/react" "*" -"@types/react@*", "@types/react@^17.0.0 || ^18.0.0", "@types/react@^18.2.15": +"@types/react@*", "@types/react@^18.2.15": version "18.2.16" resolved "https://registry.npmjs.org/@types/react/-/react-18.2.16.tgz" integrity sha512-LLFWr12ZhBJ4YVw7neWLe6Pk7Ey5R9OCydfuMsz1L8bZxzaawJj2p06Q8/EFEHDeTBQNFLF62X+CG7B2zIyu0Q== @@ -1767,7 +2242,7 @@ "@types/react" "*" csstype "^3.0.2" -"@types/stylis@^4.0.2", "@types/stylis@4.2.0": +"@types/stylis@4.2.0", "@types/stylis@^4.0.2": version "4.2.0" resolved "https://registry.npmjs.org/@types/stylis/-/stylis-4.2.0.tgz" integrity sha512-n4sx2bqL0mW1tvDf/loQ+aMX7GQD3lc3fkCMC55VFNDu/vBOabO+LTIeXKM14xK0ppk5TUGcWRjiSpIlUpghKw== @@ -1797,7 +2272,7 @@ semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/parser@^6.0.0", "@typescript-eslint/parser@^6.0.0 || ^6.0.0-alpha": +"@typescript-eslint/parser@^6.0.0": version "6.2.0" resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.2.0.tgz" integrity sha512-igVYOqtiK/UsvKAmmloQAruAdUHihsOCvplJpplPZ+3h4aDkC/UKZZNKgB6h93ayuYLuEymU3h8nF1xMRbh37g== @@ -1943,12 +2418,7 @@ acorn-walk@^8.3.2: dependencies: acorn "^8.11.0" -acorn@^8.11.0: - version "8.12.0" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz" - integrity sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw== - -acorn@^8.11.3: +acorn@^8.11.0, acorn@^8.11.3: version "8.12.0" resolved "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz" integrity sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw== @@ -2096,7 +2566,14 @@ braces@^3.0.2: dependencies: fill-range "^7.0.1" -browserslist@^4.21.9, "browserslist@>= 4.21.0": +braces@~3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== + dependencies: + fill-range "^7.1.1" + +browserslist@^4.21.9: version "4.21.9" resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz" integrity sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg== @@ -2106,6 +2583,16 @@ browserslist@^4.21.9, "browserslist@>= 4.21.0": node-releases "^2.0.12" update-browserslist-db "^1.0.11" +browserslist@^4.24.0: + version "4.24.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.0.tgz#a1325fe4bc80b64fda169629fc01b3d6cecd38d4" + integrity sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A== + dependencies: + caniuse-lite "^1.0.30001663" + electron-to-chromium "^1.5.28" + node-releases "^2.0.18" + update-browserslist-db "^1.1.0" + buffer-crc32@~0.2.3: version "0.2.13" resolved "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz" @@ -2149,7 +2636,12 @@ caniuse-lite@^1.0.30001503: resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001517.tgz" integrity sha512-Vdhm5S11DaFVLlyiKu4hiUTkpZu+y1KA/rZZqVQfOD5YdDT/eQKlkt7NaE0WGOFgX32diqt9MiP9CAiFeRklaA== -chai@*, chai@^4.3.10: +caniuse-lite@^1.0.30001663: + version "1.0.30001667" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001667.tgz#99fc5ea0d9c6e96897a104a8352604378377f949" + integrity sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw== + +chai@^4.3.10: version "4.4.1" resolved "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz" integrity sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g== @@ -2162,7 +2654,7 @@ chai@*, chai@^4.3.10: pathval "^1.1.1" type-detect "^4.0.8" -chalk@^2.0.0: +chalk@^2.0.0, chalk@^2.4.2: version "2.4.2" resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -2223,12 +2715,7 @@ clsx@^1.2.1: resolved "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz" integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== -clsx@^2.0.0: - version "2.1.1" - resolved "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz" - integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== - -clsx@^2.1.0: +clsx@^2.0.0, clsx@^2.1.0: version "2.1.1" resolved "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz" integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== @@ -2247,16 +2734,16 @@ color-convert@^2.0.1: dependencies: color-name "~1.1.4" -color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - color-name@1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + combined-stream@^1.0.8: version "1.0.8" resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" @@ -2279,11 +2766,16 @@ confbox@^0.1.7: resolved "https://registry.npmjs.org/confbox/-/confbox-0.1.7.tgz" integrity sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA== -convert-source-map@^1.5.0, convert-source-map@^1.7.0: +convert-source-map@^1.1.0, convert-source-map@^1.5.0, convert-source-map@^1.7.0: version "1.9.0" resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz" integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== +convert-source-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" + integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== + core-js-compat@^3.31.0: version "3.31.1" resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.31.1.tgz" @@ -2316,7 +2808,7 @@ css-color-keywords@^1.0.0: resolved "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz" integrity sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg== -css-to-react-native@^3.2.0, css-to-react-native@3.2.0: +css-to-react-native@3.2.0, css-to-react-native@^3.2.0: version "3.2.0" resolved "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz" integrity sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ== @@ -2325,12 +2817,12 @@ css-to-react-native@^3.2.0, css-to-react-native@3.2.0: css-color-keywords "^1.0.0" postcss-value-parser "^4.0.2" -csstype@^3.0.2, csstype@^3.1.2, csstype@3.1.2: +csstype@3.1.2, csstype@^3.0.2, csstype@^3.1.2: version "3.1.2" resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz" integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== -d3-array@^3.1.6, "d3-array@2 - 3", "d3-array@2.10.0 - 3": +"d3-array@2 - 3", "d3-array@2.10.0 - 3", d3-array@^3.1.6: version "3.2.4" resolved "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz" integrity sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg== @@ -2352,7 +2844,7 @@ d3-ease@^3.0.1: resolved "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz" integrity sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA== -d3-interpolate@^3.0.1, "d3-interpolate@1.2.0 - 3": +"d3-interpolate@1.2.0 - 3", d3-interpolate@^3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz" integrity sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g== @@ -2389,7 +2881,7 @@ d3-shape@^3.1.0: dependencies: d3-time "1 - 3" -d3-time@^3.0.0, "d3-time@1 - 3", "d3-time@2.1.1 - 3": +"d3-time@1 - 3", "d3-time@2.1.1 - 3", d3-time@^3.0.0: version "3.1.0" resolved "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz" integrity sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q== @@ -2413,6 +2905,13 @@ debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4: dependencies: ms "2.1.2" +debug@^4.3.1: + version "4.3.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.7.tgz#87945b4151a011d76d95a198d7111c865c360a52" + integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ== + dependencies: + ms "^2.1.3" + decimal.js-light@^2.4.1: version "2.5.1" resolved "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.1.tgz" @@ -2484,6 +2983,11 @@ electron-to-chromium@^1.4.431: resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.470.tgz" integrity sha512-zZM48Lmy2FKWgqyvsX9XK+J6FfP7aCDUFLmgooLJzA7v1agCs/sxSoBpTIwDLhmbhpx9yJIxj2INig/ncjJRqg== +electron-to-chromium@^1.5.28: + version "1.5.35" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.35.tgz#1d38d386186c72b1fa6e74c3a7de5f888b503100" + integrity sha512-hOSRInrIDm0Brzp4IHW2F/VM+638qOL2CzE0DgpnGzKW27C95IqqeqgKz/hxHGnvPxvQGpHUGD5qRVC9EZY2+A== + end-of-stream@^1.1.0: version "1.4.4" resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz" @@ -2498,36 +3002,6 @@ error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -esbuild@*: - version "0.24.0" - resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.24.0.tgz" - integrity sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ== - optionalDependencies: - "@esbuild/aix-ppc64" "0.24.0" - "@esbuild/android-arm" "0.24.0" - "@esbuild/android-arm64" "0.24.0" - "@esbuild/android-x64" "0.24.0" - "@esbuild/darwin-arm64" "0.24.0" - "@esbuild/darwin-x64" "0.24.0" - "@esbuild/freebsd-arm64" "0.24.0" - "@esbuild/freebsd-x64" "0.24.0" - "@esbuild/linux-arm" "0.24.0" - "@esbuild/linux-arm64" "0.24.0" - "@esbuild/linux-ia32" "0.24.0" - "@esbuild/linux-loong64" "0.24.0" - "@esbuild/linux-mips64el" "0.24.0" - "@esbuild/linux-ppc64" "0.24.0" - "@esbuild/linux-riscv64" "0.24.0" - "@esbuild/linux-s390x" "0.24.0" - "@esbuild/linux-x64" "0.24.0" - "@esbuild/netbsd-x64" "0.24.0" - "@esbuild/openbsd-arm64" "0.24.0" - "@esbuild/openbsd-x64" "0.24.0" - "@esbuild/sunos-x64" "0.24.0" - "@esbuild/win32-arm64" "0.24.0" - "@esbuild/win32-ia32" "0.24.0" - "@esbuild/win32-x64" "0.24.0" - esbuild@^0.18.10: version "0.18.16" resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.18.16.tgz" @@ -2590,6 +3064,11 @@ escalade@^3.1.1: resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== +escalade@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" + integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== + escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" @@ -2628,7 +3107,7 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1: resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz" integrity sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA== -"eslint@^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0", "eslint@^6.0.0 || ^7.0.0 || >=8.0.0", "eslint@^7.0.0 || ^8.0.0", eslint@^8.45.0, eslint@>=5.0.0, eslint@>=7: +eslint@^8.45.0: version "8.45.0" resolved "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz" integrity sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw== @@ -2811,6 +3290,13 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" +fill-range@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== + dependencies: + to-regex-range "^5.0.1" + find-root@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz" @@ -2890,6 +3376,11 @@ function-bind@^1.1.1: resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz" @@ -2912,9 +3403,9 @@ get-stream@^8.0.1: resolved "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz" integrity sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA== -glob-parent@^5.1.2: +glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" - resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" @@ -2926,9 +3417,9 @@ glob-parent@^6.0.2: dependencies: is-glob "^4.0.3" -glob@^7.1.3: +glob@^7.1.3, glob@^7.2.0: version "7.2.3" - resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== dependencies: fs.realpath "^1.0.0" @@ -3011,6 +3502,13 @@ has@^1.0.3: dependencies: function-bind "^1.1.1" +hasown@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== + dependencies: + function-bind "^1.1.2" + hoist-non-react-statics@^3.3.0, hoist-non-react-statics@^3.3.1: version "3.3.2" resolved "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz" @@ -3096,14 +3594,21 @@ is-core-module@^2.11.0: dependencies: has "^1.0.3" +is-core-module@^2.13.0: + version "2.15.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.1.tgz#a7363a25bee942fefab0de13bf6aa372c82dcc37" + integrity sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ== + dependencies: + hasown "^2.0.2" + is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== -is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3: +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" - resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: is-extglob "^2.1.1" @@ -3158,6 +3663,11 @@ jsesc@^2.5.1: resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== +jsesc@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.0.2.tgz#bb8b09a6597ba426425f2e4a07245c3d00b9343e" + integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g== + jsesc@~0.5.0: version "0.5.0" resolved "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz" @@ -3183,9 +3693,9 @@ json-stable-stringify-without-jsonify@^1.0.1: resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== -json5@^2.2.2: +json5@^2.2.2, json5@^2.2.3: version "2.2.3" - resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jssha@3.2.0: @@ -3370,6 +3880,11 @@ ms@2.1.2: resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== +ms@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + nanoid@^3.3.6: version "3.3.6" resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz" @@ -3427,6 +3942,11 @@ node-releases@^2.0.12: resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz" integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== +node-releases@^2.0.18: + version "2.0.18" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.18.tgz#f010e8d35e2fe8d6b2944f03f70213ecedc4ca3f" + integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g== + normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" @@ -3573,9 +4093,14 @@ picocolors@^1.0.1: resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz" integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== -picomatch@^2.3.1: +picocolors@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.0.tgz#5358b76a78cde483ba5cef6a9dc9671440b27d59" + integrity sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw== + +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: version "2.3.1" - resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== pify@^4.0.1: @@ -3597,6 +4122,15 @@ postcss-value-parser@^4.0.2: resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== +postcss@8.4.31: + version "8.4.31" + resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz" + integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ== + dependencies: + nanoid "^3.3.6" + picocolors "^1.0.0" + source-map-js "^1.0.2" + postcss@^8.4.23, postcss@^8.4.26: version "8.4.27" resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.27.tgz" @@ -3615,15 +4149,6 @@ postcss@^8.4.38: picocolors "^1.0.1" source-map-js "^1.2.0" -postcss@8.4.31: - version "8.4.31" - resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz" - integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ== - dependencies: - nanoid "^3.3.6" - picocolors "^1.0.0" - source-map-js "^1.0.2" - prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" @@ -3680,7 +4205,7 @@ quick-lru@^5.1.1: resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz" integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== -"react-dom@^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0", "react-dom@^16.0.0 || ^17.0.0 || ^18.0.0", "react-dom@^16.8.0 || ^17.0.0 || ^18.0.0", "react-dom@^17.0.0 || ^18.0.0", react-dom@^18, react-dom@^18.0.0, react-dom@^18.2.0, "react-dom@>= 16.8.0", react-dom@>=16, react-dom@>=16.6.0, react-dom@>=16.8, react-dom@>=17.0.0, react-dom@>=18: +react-dom@^18.2.0: version "18.2.0" resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz" integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g== @@ -3707,27 +4232,7 @@ react-hot-toast@^2.4.1: dependencies: goober "^2.1.10" -react-is@^16.10.2: - version "16.13.1" - resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" - integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== - -react-is@^16.13.1: - version "16.13.1" - resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" - integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== - -react-is@^16.7.0: - version "16.13.1" - resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" - integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== - -react-is@^18.0.0: - version "18.3.1" - resolved "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz" - integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg== - -react-is@^16.7.0: +react-is@^16.10.2, react-is@^16.13.1, react-is@^16.7.0: version "16.13.1" resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== @@ -3798,7 +4303,7 @@ react-transition-group@^4.4.5: loose-envify "^1.4.0" prop-types "^15.6.2" -"react@^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0", "react@^16.0.0 || ^17.0.0 || ^18.0.0", "react@^16.11.0 || ^17.0.0 || ^18.0.0", "react@^16.8.0 || ^17 || ^18", "react@^16.8.0 || ^17.0.0 || ^18.0.0", "react@^17.0.0 || ^18.0.0", react@^18, "react@^18 || ^19", react@^18.0.0, react@^18.2.0, "react@>= 16.8.0", react@>=16, react@>=16.13.1, react@>=16.6.0, react@>=16.8, react@>=16.8.0, react@>=17.0.0, react@>=18: +react@^18.2.0: version "18.2.0" resolved "https://registry.npmjs.org/react/-/react-18.2.0.tgz" integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ== @@ -3838,7 +4343,7 @@ recoil-persist@^5.1.0: resolved "https://registry.npmjs.org/recoil-persist/-/recoil-persist-5.1.0.tgz" integrity sha512-sew4k3uBVJjRWKCSFuBw07Y1p1pBOb0UxLJPxn4G2bX/9xNj+r2xlqYy/BRfyofR/ANfqBU04MIvulppU4ZC0w== -recoil@^0.7.2, recoil@^0.7.7: +recoil@^0.7.7: version "0.7.7" resolved "https://registry.npmjs.org/recoil/-/recoil-0.7.7.tgz" integrity sha512-8Og5KPQW9LwC577Vc7Ug2P0vQshkv1y3zG3tSSkWMqkWSwHmE+by06L8JtnGocjW6gcCvfwB3YtrJG6/tWivNQ== @@ -3898,6 +4403,15 @@ resolve-from@^4.0.0: resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== +resolve@^1.14.2: + version "1.22.8" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" + integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== + dependencies: + is-core-module "^2.13.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + resolve@^1.19.0: version "1.22.2" resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz" @@ -4017,7 +4531,7 @@ server-only@^0.0.1: resolved "https://registry.npmjs.org/server-only/-/server-only-0.0.1.tgz" integrity sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA== -shallowequal@^1.1.0, shallowequal@1.1.0: +shallowequal@1.1.0, shallowequal@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz" integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== @@ -4148,11 +4662,6 @@ styled-components@^6.1.2: stylis "4.3.1" tslib "2.5.0" -stylis@^4.3.0: - version "4.3.0" - resolved "https://registry.npmjs.org/stylis/-/stylis-4.3.0.tgz" - integrity sha512-E87pIogpwUsUwXw7dNyU4QDjdgVMy52m+XEOPEKUn161cCzWjjhPSQhByfd1CcNvrOLnXQ6OnnZDwnJrz/Z4YQ== - stylis@4.2.0: version "4.2.0" resolved "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz" @@ -4163,6 +4672,11 @@ stylis@4.3.1: resolved "https://registry.npmjs.org/stylis/-/stylis-4.3.1.tgz" integrity sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ== +stylis@^4.3.0: + version "4.3.0" + resolved "https://registry.npmjs.org/stylis/-/stylis-4.3.0.tgz" + integrity sha512-E87pIogpwUsUwXw7dNyU4QDjdgVMy52m+XEOPEKUn161cCzWjjhPSQhByfd1CcNvrOLnXQ6OnnZDwnJrz/Z4YQ== + supports-color@^5.3.0: version "5.5.0" resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" @@ -4247,6 +4761,11 @@ ts-api-utils@^1.0.1: resolved "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.1.tgz" integrity sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A== +tslib@2.5.0: + version "2.5.0" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz" + integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== + tslib@^1.11.1: version "1.14.1" resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" @@ -4262,17 +4781,17 @@ tslib@^2.4.0: resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz" integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== -tslib@2.5.0: - version "2.5.0" - resolved "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz" - integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== +tslib@^2.5.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.7.0.tgz#d9b40c5c40ab59e8738f297df3087bf1a2690c01" + integrity sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA== tweetnacl-util@^0.15.1: version "0.15.1" resolved "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz" integrity sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw== -tweetnacl@^1.0.3, tweetnacl@1.0.3: +tweetnacl@1.0.3, tweetnacl@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz" integrity sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw== @@ -4294,7 +4813,7 @@ type-fest@^0.20.2: resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== -typescript@^5.0.2, typescript@>=4.2.0: +typescript@^5.0.2: version "5.1.6" resolved "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz" integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA== @@ -4345,6 +4864,14 @@ update-browserslist-db@^1.0.11: escalade "^3.1.1" picocolors "^1.0.0" +update-browserslist-db@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz#80846fba1d79e82547fb661f8d141e0945755fe5" + integrity sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A== + dependencies: + escalade "^3.2.0" + picocolors "^1.1.0" + uri-js@^4.2.2: version "4.4.1" resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" @@ -4393,7 +4920,7 @@ vite-node@1.6.0: picocolors "^1.0.0" vite "^5.0.0" -vite@^4.2.0, vite@^4.4.5: +vite@^4.4.5: version "4.4.7" resolved "https://registry.npmjs.org/vite/-/vite-4.4.7.tgz" integrity sha512-6pYf9QJ1mHylfVh39HpuSfMPojPSKVxZvnclX1K1FyZ1PXDOcLBibdq5t1qxJSnL63ca8Wf4zts6mD8u8oc9Fw== From b1322576306f343ec45930477356e20a86f35fe7 Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 11 Oct 2024 18:09:11 +1000 Subject: [PATCH 086/105] feat: unstakableDate format unified --- src/pages/Unstaking/UnstakingNftDetail.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/Unstaking/UnstakingNftDetail.tsx b/src/pages/Unstaking/UnstakingNftDetail.tsx index 76bf87dc..f2d902e3 100644 --- a/src/pages/Unstaking/UnstakingNftDetail.tsx +++ b/src/pages/Unstaking/UnstakingNftDetail.tsx @@ -39,7 +39,7 @@ const UnstakingNftDetail = ({ view }: { view?: boolean }) => { const { address, refreshTonData } = useTonConnect(); const { id } = useParams(); const { data: unstakingDetail, isLoading: isLoadingUnstakingDetail, error } = useUnstakingDetail(Number(id)); - const { sendMessage } = Contract.transferNft(id); + const { sendMessage } = Contract.transferNft(id); // ! pass nftAddress instead of id const navigate = useNavigate(); @@ -163,7 +163,7 @@ const UnstakingNftDetail = ({ view }: { view?: boolean }) => { Date of Unstaking - {unstakingDetail?.unstakableDate} + {new Date(unstakingDetail?.unstakableDate).toLocaleDateString()} From da5ab98e263f49f3fb554a865c6dcf04a9973b3c Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Fri, 11 Oct 2024 18:15:17 +1000 Subject: [PATCH 087/105] fix: routing --- src/pages/MyAsset/NFTDetail/NFTDetail.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx index 35ed5338..8b57b6bf 100644 --- a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx +++ b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx @@ -41,7 +41,7 @@ const NFTDetail = () => { tele.ready(); tele.BackButton.show(); tele.onEvent("backButtonClicked", () => { - navigate("/loan"); + navigate("/myasset/nftlist"); }); } From b03d0d16d23f9896779e98d04ae14e8254d1671b Mon Sep 17 00:00:00 2001 From: Kirill Bondarenko Date: Mon, 14 Oct 2024 16:07:56 +1000 Subject: [PATCH 088/105] feat: NFT img-s updated --- src/assets/image/NftPreviewExpired.png | Bin 83019 -> 35325 bytes src/assets/image/NftPreviewExpiredNew.png | Bin 0 -> 83019 bytes src/components/myAsset/NFT/NftItem.tsx | 6 +-- src/components/unstaking/UnstakingPreview.tsx | 41 ++++++++++++++---- .../MyAsset/NFTDetail/NFTDetail.styled.tsx | 7 +-- src/pages/MyAsset/NFTDetail/NFTDetail.tsx | 6 +-- src/pages/Unstaking/UnstakingNftDetail.tsx | 19 ++++---- 7 files changed, 52 insertions(+), 27 deletions(-) create mode 100644 src/assets/image/NftPreviewExpiredNew.png diff --git a/src/assets/image/NftPreviewExpired.png b/src/assets/image/NftPreviewExpired.png index 6e9bff4a2abf8f97d0a06641441d5b919cd2f342..ecd8105a9ccba5ff33b0161d1c29f0ab1d359449 100644 GIT binary patch literal 35325 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 literal 83019 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
H@HnPn%^urU6K!p0__?3D?OC-+`#z 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 KMNUMnLSTX%DqBnd diff --git a/src/assets/image/NftPreviewExpiredNew.png b/src/assets/image/NftPreviewExpiredNew.png new file mode 100644 index 0000000000000000000000000000000000000000..6e9bff4a2abf8f97d0a06641441d5b919cd2f342 GIT binary patch literal 83019 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 KMNUMnLSTX%DqBnd literal 0 HcmV?d00001 diff --git a/src/components/myAsset/NFT/NftItem.tsx b/src/components/myAsset/NFT/NftItem.tsx index 6ce25c18..958e5034 100644 --- a/src/components/myAsset/NFT/NftItem.tsx +++ b/src/components/myAsset/NFT/NftItem.tsx @@ -3,9 +3,9 @@ import { useNavigate } from "react-router-dom"; import { useRecoilState, useSetRecoilState } from "recoil"; import { css, styled } from "styled-components"; -import NFTExpired from "@/assets/image/MainNftExpired.png"; -import NFTForthComing from "@/assets/image/MainNftForthComing.png"; -import NFTOngoing from "@/assets/image/MainNftOngoing.png"; +import NFTExpired from "@/assets/image/NftExpired.png"; +import NFTForthComing from "@/assets/image/NftForthComing.png"; +import NFTOngoing from "@/assets/image/NftOngoing.png"; import { globalError } from "@/lib/atom/globalError"; import { imageSizeAtom } from "@/lib/atom/imageSize"; import { nftInfo } from "@/types/Nft"; diff --git a/src/components/unstaking/UnstakingPreview.tsx b/src/components/unstaking/UnstakingPreview.tsx index 039ce733..2807295b 100644 --- a/src/components/unstaking/UnstakingPreview.tsx +++ b/src/components/unstaking/UnstakingPreview.tsx @@ -10,10 +10,16 @@ const UnstakingPreview = ({ unstakingDetail }: { unstakingDetail?: IUnstakingDet expired - NFT ID {String(unstakingDetail?.nftId).padStart(5, "0")} - Expired Date {unstakingDetail?.unstakableDate} + + + Expiry {new Date(unstakingDetail?.unstakableDate).toLocaleDateString()} + + + + NFT ID {String(unstakingDetail?.nftId).padStart(5, "0")} + When the contract receives unstaking transaction, This NFT will be burned. @@ -40,6 +46,7 @@ const UnstakingPreviewImageWrapper = styled.div` img { width: 100%; + border-radius: 2rem; } `; @@ -54,14 +61,32 @@ const UnstakingPreviewTop = styled.div` left: 3.5rem; `; -const UnstakingPreviewTopTitle = styled.span` - color: #fff; +const UnstakingPreviewBottomTitle = styled.span` + color: #1b1e1f; ${({ theme }) => theme.fonts.Nexton_Title_Medium_1}; + + margin-bottom: 2rem; +`; + +const UnstakingPreviewTopDateWrapper = styled.div` + position: relative; + left: -10px; + padding: 8px 18px 7px 14px; + align-items: center; + border-radius: 16px; + background: linear-gradient(180deg, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0) 100%), rgba(0, 0, 0, 0.1); + backdrop-filter: blur(25px); `; -const UnstakingPreviewTopDesc = styled.span` - color: #fff; - ${({ theme }) => theme.fonts.Nexton_Body_Text_Small}; +const UnstakingPreviewTopDate = styled.span` + color: #2f3038; + /* body text/small2 */ + font-family: Montserrat; + font-size: 13px; + font-style: normal; + font-weight: 600; + line-height: 21px; /* 161.538% */ + letter-spacing: -0.052px; `; const UnstakingPreviewBottom = styled.div` @@ -73,6 +98,6 @@ const UnstakingPreviewBottom = styled.div` `; const UnstakingPreviewBottomDesc = styled.p` width: 240px; - color: #fff; + color: #5d5e67; ${({ theme }) => theme.fonts.Nexton_Label_Small}; `; diff --git a/src/pages/MyAsset/NFTDetail/NFTDetail.styled.tsx b/src/pages/MyAsset/NFTDetail/NFTDetail.styled.tsx index 7a1649ad..777a4cb7 100644 --- a/src/pages/MyAsset/NFTDetail/NFTDetail.styled.tsx +++ b/src/pages/MyAsset/NFTDetail/NFTDetail.styled.tsx @@ -29,16 +29,17 @@ export const NFTDetailCardImageBox = styled.div` span { position: absolute; - top: 15%; - left: 27.5%; + top: 50%; + left: 50%; transform: translate(-50%, -50%); - color: #fff; + color: #f5f5f5; ${({ theme }) => theme.fonts.Nexton_Title_Large}; } img { width: 171px; height: auto; + border-radius: 2rem; } `; diff --git a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx index 8b57b6bf..bac81bdb 100644 --- a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx +++ b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx @@ -3,9 +3,9 @@ import { useNavigate, useParams } from "react-router-dom"; import IcTrendRight from "@/assets/icons/Loan/ic_trend_right.svg"; import IcTrendUp from "@/assets/icons/Loan/ic_trend_up.svg"; -import ExpiredNFTLarge from "@/assets/image/Loan/ExpiredNFTLarge.png"; -import ForthComingNFTLarge from "@/assets/image/Loan/ForthcomingNFTLarge.png"; -import OngoingNFTLarge from "@/assets/image/Loan/OngoingNFTLarge.png"; +import ExpiredNFTLarge from "@/assets/image/NftExpired.png"; +import ForthComingNFTLarge from "@/assets/image/NftForthComing.png"; +import OngoingNFTLarge from "@/assets/image/NftOngoing.png"; import StakingInfo from "@/components/loan/common/StakingInfo"; import { useNFTDetail } from "@/hooks/api/useNFTDetail"; import { nftInfo } from "@/types/Nft"; diff --git a/src/pages/Unstaking/UnstakingNftDetail.tsx b/src/pages/Unstaking/UnstakingNftDetail.tsx index f2d902e3..71dca95f 100644 --- a/src/pages/Unstaking/UnstakingNftDetail.tsx +++ b/src/pages/Unstaking/UnstakingNftDetail.tsx @@ -7,12 +7,9 @@ import { styled } from "styled-components"; import { postUnstake } from "@/api/postUnstake"; import Loader from "@/components/common/Loader"; -import BasicModal from "@/components/common/Modal/BasicModal"; -import TransactionConfirmModal from "@/components/common/Modal/TransactionConfirmModal"; import { ConfirmUnstakingModal } from "@/components/unstaking/ConfirmUnstakingModal"; import UnstakingPreview from "@/components/unstaking/UnstakingPreview"; import { useUnstakingDetail } from "@/hooks/api/unstaking/useUnstakingDetail"; -import * as Contract from "@/hooks/contract/transferNFT"; import useTonConnect from "@/hooks/contract/useTonConnect"; import { globalError } from "@/lib/atom/globalError"; import { telegramAtom } from "@/lib/atom/telegram"; @@ -36,10 +33,10 @@ interface ModalState { } const UnstakingNftDetail = ({ view }: { view?: boolean }) => { - const { address, refreshTonData } = useTonConnect(); + const { address } = useTonConnect(); const { id } = useParams(); const { data: unstakingDetail, isLoading: isLoadingUnstakingDetail, error } = useUnstakingDetail(Number(id)); - const { sendMessage } = Contract.transferNft(id); // ! pass nftAddress instead of id + // const { sendMessage } = Contract.transferNft(id); // ! pass nftAddress instead of id const navigate = useNavigate(); @@ -94,18 +91,19 @@ const UnstakingNftDetail = ({ view }: { view?: boolean }) => { }; // First, attempt to send the message to the contract - await sendMessage(data(), toNano("0.005")); + // !❗NOTE❗: Not used in the current contract version + // await sendMessage(data(), toNano("0.005")); // If sendMessage is successful, then call postStakingInfo await postUnstake(newUnstaking); - setModal({ type: "unstake", toggled: true }); + navigate("/unstaking/beta"); } catch (error) { setError(error); } finally { setIsLoading(false); } - }, [setError, address, id, telegramId, sendMessage]); + }, [setError, address, id, telegramId, navigate]); const handleUnstakeConfirm = () => { toggleModal(); @@ -189,7 +187,8 @@ const UnstakingNftDetail = ({ view }: { view?: boolean }) => { {modal.type === "confirmUnstake" && modal.toggled && ( )} - {modal.type === "unstake" && modal.toggled && ( + {/* // ! @deprecated */} + {/* {modal.type === "unstake" && modal.toggled && ( { await refreshTonData(); }} /> - )} + )} */} ); }; From 79b9e101abb6dcc37dcb261705e6c60aa1ea6b20 Mon Sep 17 00:00:00 2001 From: jymin99 Date: Thu, 17 Oct 2024 10:50:01 +0900 Subject: [PATCH 089/105] feat: successfully staked page add --- package-lock.json | 1 + src/assets/image/NavigateButton.png | Bin 0 -> 943 bytes src/assets/image/ReferralButton.png | Bin 0 -> 43309 bytes src/components/common/Router.tsx | 2 + src/components/referral/ReferralButtonBox.tsx | 52 ++++++++++ src/pages/Stake/NFTPreview.tsx | 2 +- src/pages/Stake/StakeSuccess.tsx | 94 ++++++++++++++++++ 7 files changed, 150 insertions(+), 1 deletion(-) create mode 100644 src/assets/image/NavigateButton.png create mode 100644 src/assets/image/ReferralButton.png create mode 100644 src/components/referral/ReferralButtonBox.tsx create mode 100644 src/pages/Stake/StakeSuccess.tsx diff --git a/package-lock.json b/package-lock.json index 63fdf126..7bfb867b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3131,6 +3131,7 @@ "version": "8.45.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz", "integrity": "sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.4.0", diff --git a/src/assets/image/NavigateButton.png b/src/assets/image/NavigateButton.png new file mode 100644 index 0000000000000000000000000000000000000000..893a3a4f115cd0c6d17c11e13ab9d17f235746a2 GIT binary patch literal 943 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 N002ovPDHLkV1jpjj+Oub literal 0 HcmV?d00001 diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index 23617ed0..0833918c 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -19,6 +19,7 @@ import NominatorList from "@/pages/Stake/NominatorList"; import Swap from "@/pages/Swap/Swap"; import UnstakingBetaInfo from "@/pages/Unstaking/UnstakingBetaInfo"; import UnstakingNftDetail from "@/pages/Unstaking/UnstakingNftDetail"; +import StakeSuccess from '@/pages/Stake/StakeSuccess'; const Router = () => { return ( @@ -32,6 +33,7 @@ const Router = () => { } /> } /> } /> + } /> } /> } /> } /> diff --git a/src/components/referral/ReferralButtonBox.tsx b/src/components/referral/ReferralButtonBox.tsx new file mode 100644 index 00000000..3be5eb83 --- /dev/null +++ b/src/components/referral/ReferralButtonBox.tsx @@ -0,0 +1,52 @@ +import styled from "styled-components"; +import { useNavigate } from "react-router-dom"; + +import NextonLogo from "@/assets/image/ReferralButtonLogo.png"; +import ReferralButton from "@/assets/image/ReferralButton.png"; +import NavigateButton from "@/assets/image/NavigateButton.png"; +const ReferralButtonBox = () => { + const navigate=useNavigate(); + return ( + <> + + + + You can refer NEXTON to
a friend and earn points! +
+ navigate('/referral')}> + + +
+
+ + ); +}; +export default ReferralButtonBox; + +const NavigateButtonContainer = styled.div``; +const ButtonText = styled.div` + color: #fff; + + /* body text/Large 2 */ + font-family: Montserrat; + font-size: 17px; + font-style: normal; + font-weight: 600; + line-height: 26px; /* 152.941% */ +`; + +const ReferralButtonContainer = styled.div` + width: 100%; + aspect-ratio: 17/6; + height: auto; + background-image: url(${ReferralButton}); + background-size: cover; + background-repeat: no-repeat; + display: flex; + flex-direction: row; + align-items: center; + justify-content: space-between; + padding: 0 26px; +`; + +const ReferralButtonWrapper = styled.div``; diff --git a/src/pages/Stake/NFTPreview.tsx b/src/pages/Stake/NFTPreview.tsx index a5e61402..83d0d1f0 100644 --- a/src/pages/Stake/NFTPreview.tsx +++ b/src/pages/Stake/NFTPreview.tsx @@ -162,7 +162,7 @@ const NFTPreview = () => { mutate(`/data/getAllStakeInfoByAddress?address=${stakingInfo.address}`); await refreshTonData(); - navigate("/", { state: { isStakeSuccess: true } }); + navigate("/stake/success", { state: { isStakeSuccess: true } }); }} /> )} diff --git a/src/pages/Stake/StakeSuccess.tsx b/src/pages/Stake/StakeSuccess.tsx new file mode 100644 index 00000000..8e14309d --- /dev/null +++ b/src/pages/Stake/StakeSuccess.tsx @@ -0,0 +1,94 @@ +import { useNavigate } from "react-router-dom"; +import styled from "styled-components"; +import { useRecoilValue } from "recoil"; + +import FooterButton from "@/components/common/FooterButton"; +import ReferralButtonBox from "@/components/referral/ReferralButtonBox"; +import { stakingAtom } from "@/lib/atom/staking"; +import NftPreviewImage from "@/components/stake/NFTPreview/NftPreviewImage"; +import NFTPreviewInfo from "@/components/stake/NFTPreview/NFTPreviewInfo"; +import { MainButton } from "@vkruglikov/react-telegram-web-app"; +import { isDevMode } from "@/utils/isDevMode"; +import IcAlertBlue from "@/assets/icons/Stake/ic_alert_blue.svg"; + + + + +const tele = (window as any).Telegram.WebApp; + +const StakeSuccess = () => { + const stakingInfo = useRecoilValue(stakingAtom); + const navigate=useNavigate(); + + return ( + <> + + +

Successfully Staked!

+
+ + + + + + + alertBlue +
+ You cannot cancel the transaction after pressing + Confirm. Please check the NFT information. +
+ + {!isDevMode ? ( + navigate("/")} /> + ) : ( + /* Used for testing */ + navigate("/")} /> + )} +
+
+ + ); +}; +export default StakeSuccess; + +const NFTPreviewConfirmText = styled.p` + color: #007aff; + ${({ theme }) => theme.fonts.Nexton_Label_Small}; +`; + +const NFTPreviewConfirmBox = styled.div` + display: flex; + justify-content: center; + align-items: flex-start; + gap: 1.4rem; + + width: 100%; + margin-bottom: 1.6rem; +`; + +const ReferralButtonContainer=styled.div` +padding: 0 2rem; +margin: 20px 0; + +width:100%; +height: auto; +` + +const StakeSuccessHeader = styled.div` +width: 100%; +margin-top: 40px; +margin-bottom: 6px; + p { + color: #333; + ${({ theme }) => theme.fonts.Nexton_Title_Large}; + text-align: center; + } +`; + +const StakeSuccessWrapper = styled.div` + display: flex; + flex-direction: column; + align-items: center; + width: 100%; + position: relative; +`; From 2dc787dbdae0568af988096e236215c359b5af03 Mon Sep 17 00:00:00 2001 From: jymin99 Date: Thu, 17 Oct 2024 11:46:24 +0900 Subject: [PATCH 090/105] fix:build error resolve --- src/types/Nft.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/types/Nft.ts b/src/types/Nft.ts index 41788faf..45760f12 100644 --- a/src/types/Nft.ts +++ b/src/types/Nft.ts @@ -3,6 +3,8 @@ export interface stakeInfo { } export interface nftInfo { nftId: number; + principal: number; + totalAmount: number; amount: number; leverage: number; lockPeriod: number; From 03fdc6dc9e3e8169da012c2434175e3673caaedc Mon Sep 17 00:00:00 2001 From: jymin99 Date: Thu, 17 Oct 2024 13:11:10 +0900 Subject: [PATCH 091/105] style:referral image change --- src/assets/image/ReferralButton.png | Bin 43309 -> 145866 bytes src/components/referral/ReferralButtonBox.tsx | 1 + 2 files changed, 1 insertion(+) diff --git a/src/assets/image/ReferralButton.png b/src/assets/image/ReferralButton.png index 65483df49c65b0c9a89ee3d4688a917116cde945..d4ca50a046dfbcd1e11064bbd4a3710352ee27d7 100644 GIT binary patch literal 145866 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
@@ -61,8 +55,21 @@ const StakeSuccess = () => { navigate("/")} /> ) : ( /* Used for testing */ - navigate("/")} /> + navigate("/")} /> )} + @@ -85,18 +92,18 @@ const NFTPreviewConfirmBox = styled.div` margin-bottom: 1.6rem; `; -const ReferralButtonContainer=styled.div` -padding: 0 2rem; -margin: 20px 0; +const ReferralButtonContainer = styled.div` + padding: 0 2rem; + margin: 20px 0; -width:100%; -height: auto; -` + width: 100%; + height: auto; +`; const StakeSuccessHeader = styled.div` -width: 100%; -margin-top: 40px; -margin-bottom: 6px; + width: 100%; + margin-top: 40px; + margin-bottom: 6px; p { color: #333; ${({ theme }) => theme.fonts.Nexton_Title_Large}; From e639216c7011429d62c9412fc4cc9b021ae5a2ac Mon Sep 17 00:00:00 2001 From: jymin99 Date: Fri, 18 Oct 2024 11:35:24 +0900 Subject: [PATCH 099/105] =?UTF-8?q?fix:=EC=A3=BC=EC=84=9D=20=ED=92=80?= =?UTF-8?q?=EC=96=B4=EC=84=9C=20nft=20=EC=9D=B4=EB=AF=B8=EC=A7=80=20?= =?UTF-8?q?=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/Stake/StakeSuccess.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/Stake/StakeSuccess.tsx b/src/pages/Stake/StakeSuccess.tsx index 98258593..8abe0577 100644 --- a/src/pages/Stake/StakeSuccess.tsx +++ b/src/pages/Stake/StakeSuccess.tsx @@ -42,8 +42,8 @@ const StakeSuccess = () => { - {/* - */} + + alertBlue
From 63064d283c067eb525a3de176435b042854a8b63 Mon Sep 17 00:00:00 2001 From: BWL Date: Mon, 28 Oct 2024 16:57:23 +0900 Subject: [PATCH 100/105] =?UTF-8?q?feat:dashboard=20page=20tvl=20tooltip?= =?UTF-8?q?=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/Dashboard/Dashboard.tsx | 81 ++++++++++++++++++++++++++++--- 1 file changed, 75 insertions(+), 6 deletions(-) diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index fb6f726b..fc223fe8 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -3,6 +3,9 @@ import { useLocation, useNavigate } from "react-router-dom"; import { CartesianGrid, Line, LineChart, ResponsiveContainer, Tooltip, XAxis, YAxis } from "recharts"; import { useSetRecoilState } from "recoil"; +import { ClickAwayListener } from "@mui/material"; +import { Tooltip as MuiTooltip, tooltipClasses } from "@mui/material"; +import { VscInfo } from "react-icons/vsc"; import IcNextonLogo from "@/assets/icons/Dashboard/ic_nexton_logo.svg"; import IcTonLogo from "@/assets/icons/Dashboard/ic_ton_logo.svg"; import Loader from "@/components/common/Loader"; @@ -46,6 +49,15 @@ const chartTimeFrameOptions: Record = { }; const Dashboard = () => { + const [open, setOpen] = useState(false); + + const handleTooltip = () => { + setOpen(!open); + }; + const handleTooltipClose = () => { + setOpen(false); + }; + const location = useLocation(); const navigate = useNavigate(); const setError = useSetRecoilState(globalError); @@ -67,8 +79,7 @@ const Dashboard = () => { tele.ready(); tele.BackButton.show(); tele.onEvent("backButtonClicked", () => { - const { prev } = location.state; - navigate(prev ? prev : "/"); + navigate("/"); }); } @@ -114,6 +125,8 @@ const Dashboard = () => { {performanceData?.apy ? `${performanceData?.apy.toFixed(2)}%` : "-"} + +
Daily PNL
@@ -176,11 +189,65 @@ const Dashboard = () => {

Stakers Win Rate

{performanceData?.pnlWinRate?.toFixed(2)}%

- + -

TVL

+

+ TVL + +
+ +
+
+

{limitDecimals(performanceData?.tvl, 3)} TON

+
+ @@ -198,7 +265,9 @@ const Dashboard = () => {

${tonPriceData?.rates?.TON?.prices?.USD.toFixed(2)}

- {tonPriceData?.rates?.TON?.diff_24h?.USD} + 0}> + {tonPriceData?.rates?.TON?.diff_24h?.USD} +
@@ -207,4 +276,4 @@ const Dashboard = () => { ); }; -export default Dashboard; +export default Dashboard; \ No newline at end of file From e2149f9823bef7edd5171304faaa6ec8eeb5c217 Mon Sep 17 00:00:00 2001 From: BWL Date: Mon, 28 Oct 2024 18:08:11 +0900 Subject: [PATCH 101/105] fix: module error resolve --- package-lock.json | 90 +---- package.json | 1 + yarn.lock | 819 ++++++++-------------------------------------- 3 files changed, 142 insertions(+), 768 deletions(-) diff --git a/package-lock.json b/package-lock.json index 0bb1c26d..9453c2fc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -30,6 +30,7 @@ "react-dropdown": "^1.11.0", "react-hook-form": "^7.51.4", "react-hot-toast": "^2.4.1", + "react-icons": "^5.3.0", "react-loader-spinner": "^6.1.6", "react-number-format": "^5.3.4", "react-router-dom": "^6.14.2", @@ -63,7 +64,6 @@ "version": "1.2.6", "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -2310,7 +2310,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2324,7 +2323,6 @@ "version": "4.4.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, "license": "MIT", "dependencies": { "eslint-visitor-keys": "^3.3.0" @@ -2340,7 +2338,6 @@ "version": "4.6.1", "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.1.tgz", "integrity": "sha512-O7x6dMstWLn2ktjcoiNLDkAGG2EjveHL+Vvc+n0fXumkJYAcSqcVYKtwDU+hDZ0uDUsnUagSYaZrOLAYE8un1A==", - "dev": true, "license": "MIT", "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -2350,7 +2347,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz", "integrity": "sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A==", - "dev": true, "license": "MIT", "dependencies": { "ajv": "^6.12.4", @@ -2374,7 +2370,6 @@ "version": "13.20.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "dev": true, "license": "MIT", "dependencies": { "type-fest": "^0.20.2" @@ -2390,7 +2385,6 @@ "version": "8.44.0", "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz", "integrity": "sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==", - "dev": true, "license": "MIT", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2409,7 +2403,6 @@ "version": "0.11.10", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==", - "dev": true, "license": "Apache-2.0", "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", @@ -2424,7 +2417,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, "license": "Apache-2.0", "engines": { "node": ">=12.22" @@ -2438,7 +2430,6 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true, "license": "BSD-3-Clause" }, "node_modules/@jest/schemas": { @@ -2743,7 +2734,6 @@ "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, "license": "MIT", "dependencies": { "@nodelib/fs.stat": "2.0.5", @@ -2757,7 +2747,6 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, "license": "MIT", "engines": { "node": ">= 8" @@ -2767,7 +2756,6 @@ "version": "1.2.8", "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, "license": "MIT", "dependencies": { "@nodelib/fs.scandir": "2.1.5", @@ -3658,7 +3646,6 @@ "version": "8.10.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", - "dev": true, "license": "MIT", "bin": { "acorn": "bin/acorn" @@ -3671,7 +3658,6 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, "license": "MIT", "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" @@ -3707,7 +3693,6 @@ "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", @@ -3724,7 +3709,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -3734,7 +3718,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, "license": "MIT", "dependencies": { "color-convert": "^2.0.1" @@ -3764,7 +3747,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, "license": "Python-2.0" }, "node_modules/array-union": { @@ -4036,7 +4018,6 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", @@ -4136,7 +4117,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "license": "MIT", "dependencies": { "color-name": "~1.1.4" @@ -4149,7 +4129,6 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, "license": "MIT" }, "node_modules/combined-stream": { @@ -4234,7 +4213,6 @@ "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, "license": "MIT", "dependencies": { "path-key": "^3.1.0", @@ -4453,7 +4431,6 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true, "license": "MIT" }, "node_modules/deepmerge": { @@ -4510,7 +4487,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" @@ -4557,7 +4533,6 @@ "version": "0.18.16", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.16.tgz", "integrity": "sha512-1xLsOXrDqwdHxyXb/x/SOyg59jpf/SH7YMvU5RNSU7z3TInaASNJWNFJ6iRvLvLETZMasF3d1DdZLg7sgRimRQ==", - "dev": true, "hasInstallScript": true, "license": "MIT", "bin": { @@ -4617,7 +4592,6 @@ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz", "integrity": "sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==", "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", - "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", @@ -4704,7 +4678,6 @@ "version": "7.2.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.1.tgz", "integrity": "sha512-CvefSOsDdaYYvxChovdrPo/ZGt8d5lrJWleAc1diXRKhHGiTYEI26cvo8Kle/wGnsizoCJjK73FMg1/IkIwiNA==", - "dev": true, "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", @@ -4721,7 +4694,6 @@ "version": "3.4.1", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", - "dev": true, "license": "Apache-2.0", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -4734,7 +4706,6 @@ "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, "license": "ISC", "dependencies": { "is-glob": "^4.0.3" @@ -4747,7 +4718,6 @@ "version": "13.20.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "dev": true, "license": "MIT", "dependencies": { "type-fest": "^0.20.2" @@ -4763,7 +4733,6 @@ "version": "9.6.1", "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, "license": "BSD-2-Clause", "dependencies": { "acorn": "^8.9.0", @@ -4781,7 +4750,6 @@ "version": "1.5.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "dev": true, "license": "BSD-3-Clause", "dependencies": { "estraverse": "^5.1.0" @@ -4794,7 +4762,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, "license": "BSD-2-Clause", "dependencies": { "estraverse": "^5.2.0" @@ -4807,7 +4774,6 @@ "version": "5.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, "license": "BSD-2-Clause", "engines": { "node": ">=4.0" @@ -4904,7 +4870,6 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true, "license": "MIT" }, "node_modules/fast-equals": { @@ -4937,21 +4902,18 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true, "license": "MIT" }, "node_modules/fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true, "license": "MIT" }, "node_modules/fastq": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "dev": true, "license": "ISC", "dependencies": { "reusify": "^1.0.4" @@ -4970,7 +4932,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, "license": "MIT", "dependencies": { "flat-cache": "^3.0.4" @@ -5002,7 +4963,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, "license": "MIT", "dependencies": { "locate-path": "^6.0.0", @@ -5019,7 +4979,6 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, "license": "MIT", "dependencies": { "flatted": "^3.1.0", @@ -5033,7 +4992,6 @@ "version": "3.2.7", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true, "license": "ISC" }, "node_modules/follow-redirects": { @@ -5293,7 +5251,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true, "license": "MIT" }, "node_modules/hamt_plus": { @@ -5318,7 +5275,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -5379,7 +5335,6 @@ "version": "5.2.4", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "dev": true, "license": "MIT", "engines": { "node": ">= 4" @@ -5405,7 +5360,6 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, "license": "MIT", "engines": { "node": ">=0.8.19" @@ -5471,7 +5425,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "devOptional": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -5481,7 +5434,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "devOptional": true, "license": "MIT", "dependencies": { "is-extglob": "^2.1.1" @@ -5504,7 +5456,6 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -5527,7 +5478,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true, "license": "ISC" }, "node_modules/isomorphic-fetch": { @@ -5550,7 +5500,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, "license": "MIT", "dependencies": { "argparse": "^2.0.1" @@ -5587,14 +5536,12 @@ "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true, "license": "MIT" }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true, "license": "MIT" }, "node_modules/json5": { @@ -5631,7 +5578,6 @@ "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1", @@ -5668,7 +5614,6 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, "license": "MIT", "dependencies": { "p-locate": "^5.0.0" @@ -5702,7 +5647,6 @@ "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true, "license": "MIT" }, "node_modules/loose-envify": { @@ -5924,7 +5868,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true, "license": "MIT" }, "node_modules/natural-compare-lite": { @@ -6082,7 +6025,6 @@ "version": "0.9.3", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", - "dev": true, "license": "MIT", "dependencies": { "@aashutoshrathi/word-wrap": "^1.2.3", @@ -6125,7 +6067,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, "license": "MIT", "dependencies": { "p-limit": "^3.0.2" @@ -6141,7 +6082,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, "license": "MIT", "dependencies": { "yocto-queue": "^0.1.0" @@ -6157,7 +6097,6 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, "license": "MIT", "engines": { "node": ">=10" @@ -6200,7 +6139,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -6219,7 +6157,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -6341,7 +6278,6 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, "license": "MIT", "engines": { "node": ">= 0.8.0" @@ -6435,7 +6371,6 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", - "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -6445,7 +6380,6 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, "funding": [ { "type": "github", @@ -6543,6 +6477,15 @@ "react-dom": ">=16" } }, + "node_modules/react-icons": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-5.3.0.tgz", + "integrity": "sha512-DnUk8aFbTyQPSkCfF8dbX6kQjXA9DktMeJqfjrg6cK9vwQVMxmcA3BfP4QoiztVmEHtwlTgLFsPuH2NskKT6eg==", + "license": "MIT", + "peerDependencies": { + "react": "*" + } + }, "node_modules/react-is": { "version": "18.2.0", "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", @@ -6955,7 +6898,6 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, "license": "MIT", "engines": { "iojs": ">=1.0.0", @@ -6966,7 +6908,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, "license": "ISC", "dependencies": { "glob": "^7.1.3" @@ -7037,7 +6978,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, "funding": [ { "type": "github", @@ -7091,7 +7031,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, "license": "MIT", "dependencies": { "shebang-regex": "^3.0.0" @@ -7104,7 +7043,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -7181,7 +7119,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" @@ -7207,7 +7144,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -7296,7 +7232,6 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, "license": "MIT", "dependencies": { "has-flag": "^4.0.0" @@ -7346,7 +7281,6 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true, "license": "MIT" }, "node_modules/tiny-invariant": { @@ -7445,7 +7379,6 @@ "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1" @@ -7468,7 +7401,6 @@ "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" @@ -7601,7 +7533,6 @@ "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, "license": "BSD-2-Clause", "dependencies": { "punycode": "^2.1.0" @@ -8300,7 +8231,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "license": "ISC", "dependencies": { "isexe": "^2.0.0" diff --git a/package.json b/package.json index 1ae6a895..3eeb2ae7 100644 --- a/package.json +++ b/package.json @@ -35,6 +35,7 @@ "react-dropdown": "^1.11.0", "react-hook-form": "^7.51.4", "react-hot-toast": "^2.4.1", + "react-icons": "^5.3.0", "react-loader-spinner": "^6.1.6", "react-number-format": "^5.3.4", "react-router-dom": "^6.14.2", diff --git a/yarn.lock b/yarn.lock index b51e0751..ac5f5892 100644 --- a/yarn.lock +++ b/yarn.lock @@ -71,46 +71,12 @@ dependencies: "@babel/highlight" "^7.22.5" -"@babel/code-frame@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.25.7.tgz#438f2c524071531d643c6f0188e1e28f130cebc7" - integrity sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g== - dependencies: - "@babel/highlight" "^7.25.7" - picocolors "^1.0.0" - -"@babel/compat-data@^7.20.5", "@babel/compat-data@^7.22.5", "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.7.tgz#b8479fe0018ef0ac87b6b7a5c6916fcd67ae2c9c" - integrity sha512-9ickoLz+hcXCeh7jrcin+/SLWm+GkxE2kTvoYyp38p4WkdFXfQJxDFGWp/YHjiKLPx06z2A7W8XKuqbReXDzsw== - -"@babel/compat-data@^7.22.9": +"@babel/compat-data@^7.20.5", "@babel/compat-data@^7.22.5", "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9": version "7.22.9" resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz" integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ== -"@babel/core@^7.21.0": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.25.7.tgz#1b3d144157575daf132a3bc80b2b18e6e3ca6ece" - integrity sha512-yJ474Zv3cwiSOO9nXJuqzvwEeM+chDuQ8GJirw+pZ91sCGCyOZ3dJkVE09fTV0VEVzXyLWhh3G/AolYTPX7Mow== - dependencies: - "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.25.7" - "@babel/generator" "^7.25.7" - "@babel/helper-compilation-targets" "^7.25.7" - "@babel/helper-module-transforms" "^7.25.7" - "@babel/helpers" "^7.25.7" - "@babel/parser" "^7.25.7" - "@babel/template" "^7.25.7" - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" - convert-source-map "^2.0.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.3" - semver "^6.3.1" - -"@babel/core@^7.22.5": +"@babel/core@^7.0.0", "@babel/core@^7.0.0-0", "@babel/core@^7.0.0-0 || ^8.0.0-0 <8.0.0", "@babel/core@^7.12.0", "@babel/core@^7.13.0", "@babel/core@^7.21.0", "@babel/core@^7.22.5", "@babel/core@^7.4.0 || ^8.0.0-0 <8.0.0": version "7.22.9" resolved "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz" integrity sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w== @@ -141,16 +107,6 @@ "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" -"@babel/generator@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.7.tgz#de86acbeb975a3e11ee92dd52223e6b03b479c56" - integrity sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA== - dependencies: - "@babel/types" "^7.25.7" - "@jridgewell/gen-mapping" "^0.3.5" - "@jridgewell/trace-mapping" "^0.3.25" - jsesc "^3.0.2" - "@babel/helper-annotate-as-pure@^7.22.5": version "7.22.5" resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz" @@ -176,17 +132,6 @@ lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-compilation-targets@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.7.tgz#11260ac3322dda0ef53edfae6e97b961449f5fa4" - integrity sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A== - dependencies: - "@babel/compat-data" "^7.25.7" - "@babel/helper-validator-option" "^7.25.7" - browserslist "^4.24.0" - lru-cache "^5.1.1" - semver "^6.3.1" - "@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.22.5", "@babel/helper-create-class-features-plugin@^7.22.9": version "7.22.9" resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.9.tgz" @@ -243,12 +188,11 @@ "@babel/types" "^7.22.5" "@babel/helper-member-expression-to-functions@^7.22.5": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.7.tgz#541a33b071f0355a63a0fa4bdf9ac360116b8574" - integrity sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA== + version "7.22.5" + resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz" + integrity sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ== dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/types" "^7.22.5" "@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.18.6", "@babel/helper-module-imports@^7.22.5": version "7.22.5" @@ -257,25 +201,7 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-module-imports@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz#dba00d9523539152906ba49263e36d7261040472" - integrity sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw== - dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" - -"@babel/helper-module-transforms@^7.22.5", "@babel/helper-module-transforms@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz#2ac9372c5e001b19bc62f1fe7d96a18cb0901d1a" - integrity sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ== - dependencies: - "@babel/helper-module-imports" "^7.25.7" - "@babel/helper-simple-access" "^7.25.7" - "@babel/helper-validator-identifier" "^7.25.7" - "@babel/traverse" "^7.25.7" - -"@babel/helper-module-transforms@^7.22.9": +"@babel/helper-module-transforms@^7.22.5", "@babel/helper-module-transforms@^7.22.9": version "7.22.9" resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz" integrity sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ== @@ -287,11 +213,11 @@ "@babel/helper-validator-identifier" "^7.22.5" "@babel/helper-optimise-call-expression@^7.22.5": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.7.tgz#1de1b99688e987af723eed44fa7fc0ee7b97d77a" - integrity sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng== + version "7.22.5" + resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz" + integrity sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw== dependencies: - "@babel/types" "^7.25.7" + "@babel/types" "^7.22.5" "@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": version "7.22.5" @@ -323,14 +249,6 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-simple-access@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz#5eb9f6a60c5d6b2e0f76057004f8dacbddfae1c0" - integrity sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ== - dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers@^7.22.5": version "7.22.5" resolved "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz" @@ -350,31 +268,16 @@ resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz" integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== -"@babel/helper-string-parser@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz#d50e8d37b1176207b4fe9acedec386c565a44a54" - integrity sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g== - "@babel/helper-validator-identifier@^7.22.5": version "7.22.5" resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz" integrity sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ== -"@babel/helper-validator-identifier@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz#77b7f60c40b15c97df735b38a66ba1d7c3e93da5" - integrity sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg== - "@babel/helper-validator-option@^7.22.5": version "7.22.5" resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz" integrity sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw== -"@babel/helper-validator-option@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz#97d1d684448228b30b506d90cace495d6f492729" - integrity sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ== - "@babel/helper-wrap-function@^7.22.9": version "7.22.9" resolved "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.9.tgz" @@ -393,14 +296,6 @@ "@babel/traverse" "^7.22.6" "@babel/types" "^7.22.5" -"@babel/helpers@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.25.7.tgz#091b52cb697a171fe0136ab62e54e407211f09c2" - integrity sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA== - dependencies: - "@babel/template" "^7.25.7" - "@babel/types" "^7.25.7" - "@babel/highlight@^7.22.5": version "7.22.5" resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz" @@ -410,28 +305,11 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/highlight@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.25.7.tgz#20383b5f442aa606e7b5e3043b0b1aafe9f37de5" - integrity sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw== - dependencies: - "@babel/helper-validator-identifier" "^7.25.7" - chalk "^2.4.2" - js-tokens "^4.0.0" - picocolors "^1.0.0" - "@babel/parser@^7.22.5", "@babel/parser@^7.22.7": version "7.22.7" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.22.7.tgz" integrity sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q== -"@babel/parser@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.7.tgz#99b927720f4ddbfeb8cd195a363ed4532f87c590" - integrity sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw== - dependencies: - "@babel/types" "^7.25.7" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.5": version "7.22.5" resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz" @@ -1214,29 +1092,7 @@ "@babel/parser" "^7.22.5" "@babel/types" "^7.22.5" -"@babel/template@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.7.tgz#27f69ce382855d915b14ab0fe5fb4cbf88fa0769" - integrity sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA== - dependencies: - "@babel/code-frame" "^7.25.7" - "@babel/parser" "^7.25.7" - "@babel/types" "^7.25.7" - -"@babel/traverse@^7.21.2", "@babel/traverse@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.7.tgz#83e367619be1cab8e4f2892ef30ba04c26a40fa8" - integrity sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg== - dependencies: - "@babel/code-frame" "^7.25.7" - "@babel/generator" "^7.25.7" - "@babel/parser" "^7.25.7" - "@babel/template" "^7.25.7" - "@babel/types" "^7.25.7" - debug "^4.3.1" - globals "^11.1.0" - -"@babel/traverse@^7.22.6", "@babel/traverse@^7.22.8": +"@babel/traverse@^7.21.2", "@babel/traverse@^7.22.6", "@babel/traverse@^7.22.8": version "7.22.8" resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.8.tgz" integrity sha512-y6LPR+wpM2I3qJrsheCTwhIinzkETbplIgPBbwvqPKc+uljeA5gP+3nP8irdYt1mjQaDnlIcG+dw8OjAco4GXw== @@ -1252,7 +1108,7 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.22.5": +"@babel/types@^7.22.5", "@babel/types@^7.4.4": version "7.22.5" resolved "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz" integrity sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA== @@ -1261,15 +1117,6 @@ "@babel/helper-validator-identifier" "^7.22.5" to-fast-properties "^2.0.0" -"@babel/types@^7.25.7", "@babel/types@^7.4.4": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.7.tgz#1b7725c1d3a59f328cb700ce704c46371e6eef9b" - integrity sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ== - dependencies: - "@babel/helper-string-parser" "^7.25.7" - "@babel/helper-validator-identifier" "^7.25.7" - to-fast-properties "^2.0.0" - "@emotion/babel-plugin@^11.11.0": version "11.11.0" resolved "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz" @@ -1303,13 +1150,6 @@ resolved "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz" integrity sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ== -"@emotion/is-prop-valid@1.2.1", "@emotion/is-prop-valid@^1.2.1": - version "1.2.1" - resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz" - integrity sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw== - dependencies: - "@emotion/memoize" "^0.8.1" - "@emotion/is-prop-valid@^0.8.2": version "0.8.8" resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz" @@ -1317,17 +1157,24 @@ dependencies: "@emotion/memoize" "0.7.4" -"@emotion/memoize@0.7.4": - version "0.7.4" - resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz" - integrity sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw== +"@emotion/is-prop-valid@^1.2.1", "@emotion/is-prop-valid@1.2.1": + version "1.2.1" + resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz" + integrity sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw== + dependencies: + "@emotion/memoize" "^0.8.1" "@emotion/memoize@^0.8.1": version "0.8.1" resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz" integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA== -"@emotion/react@^11.11.1": +"@emotion/memoize@0.7.4": + version "0.7.4" + resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz" + integrity sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw== + +"@emotion/react@^11.0.0-rc.0", "@emotion/react@^11.11.1", "@emotion/react@^11.4.1", "@emotion/react@^11.5.0": version "11.11.1" resolved "https://registry.npmjs.org/@emotion/react/-/react-11.11.1.tgz" integrity sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA== @@ -1357,7 +1204,7 @@ resolved "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz" integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA== -"@emotion/styled@^11.11.0": +"@emotion/styled@^11.11.0", "@emotion/styled@^11.3.0": version "11.11.0" resolved "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz" integrity sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng== @@ -1369,16 +1216,16 @@ "@emotion/use-insertion-effect-with-fallbacks" "^1.0.1" "@emotion/utils" "^1.2.1" -"@emotion/unitless@0.8.0": - version "0.8.0" - resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.0.tgz" - integrity sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw== - "@emotion/unitless@^0.8.0", "@emotion/unitless@^0.8.1": version "0.8.1" resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz" integrity sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ== +"@emotion/unitless@0.8.0": + version "0.8.0" + resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.0.tgz" + integrity sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw== + "@emotion/use-insertion-effect-with-fallbacks@^1.0.1": version "1.0.1" resolved "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz" @@ -1399,41 +1246,6 @@ resolved "https://registry.npmjs.org/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.2.3.tgz" integrity sha512-r3MIryXDeXDOZh7ih1l/yE9ZLORCd5e8vWg02azWRGj5SPTuoh69A2AIyn0Z31V/kHBfZ4HgWJ+OK3GTTwLmnw== -"@esbuild/aix-ppc64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz#c7184a326533fcdf1b8ee0733e21c713b975575f" - integrity sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ== - -"@esbuild/android-arm64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.18.16.tgz#34f562abc0015933aabd41b3d50d8d3359e30155" - integrity sha512-wsCqSPqLz+6Ov+OM4EthU43DyYVVyfn15S4j1bJzylDpc1r1jZFFfJQNfDuT8SlgwuqpmpJXK4uPlHGw6ve7eA== - -"@esbuild/android-arm64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz#09d9b4357780da9ea3a7dfb833a1f1ff439b4052" - integrity sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A== - -"@esbuild/android-arm@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.18.16.tgz#ef6f9aa59a79a9b9330a2e73f7eb402c6630c267" - integrity sha512-gCHjjQmA8L0soklKbLKA6pgsLk1byULuHe94lkZDzcO3/Ta+bbeewJioEn1Fr7kgy9NWNFy/C+MrBwC6I/WCug== - -"@esbuild/android-arm@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.21.5.tgz#9b04384fb771926dfa6d7ad04324ecb2ab9b2e28" - integrity sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg== - -"@esbuild/android-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.18.16.tgz#ed7444cb17542932c67b15e20528686853239cfd" - integrity sha512-ldsTXolyA3eTQ1//4DS+E15xl0H/3DTRJaRL0/0PgkqDsI0fV/FlOtD+h0u/AUJr+eOTlZv4aC9gvfppo3C4sw== - -"@esbuild/android-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.21.5.tgz#29918ec2db754cedcb6c1b04de8cd6547af6461e" - integrity sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA== - "@esbuild/darwin-arm64@0.18.16": version "0.18.16" resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.16.tgz" @@ -1444,186 +1256,6 @@ resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz" integrity sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ== -"@esbuild/darwin-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.18.16.tgz#a8f3b61bee2807131cbe28eb164ad2b0333b59f5" - integrity sha512-6w4Dbue280+rp3LnkgmriS1icOUZDyPuZo/9VsuMUTns7SYEiOaJ7Ca1cbhu9KVObAWfmdjUl4gwy9TIgiO5eA== - -"@esbuild/darwin-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz#c13838fa57372839abdddc91d71542ceea2e1e22" - integrity sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw== - -"@esbuild/freebsd-arm64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.16.tgz#9bdbb3f0e5f0842b21c9b8602e70c106174ac24c" - integrity sha512-x35fCebhe9s979DGKbVAwXUOcTmCIE32AIqB9CB1GralMIvxdnMLAw5CnID17ipEw9/3MvDsusj/cspYt2ZLNQ== - -"@esbuild/freebsd-arm64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz#646b989aa20bf89fd071dd5dbfad69a3542e550e" - integrity sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g== - -"@esbuild/freebsd-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.18.16.tgz#24f73956436495cc7a5a4bf06be6b661aea6a2c1" - integrity sha512-YM98f+PeNXF3GbxIJlUsj+McUWG1irguBHkszCIwfr3BXtXZsXo0vqybjUDFfu9a8Wr7uUD/YSmHib+EeGAFlg== - -"@esbuild/freebsd-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz#aa615cfc80af954d3458906e38ca22c18cf5c261" - integrity sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ== - -"@esbuild/linux-arm64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.18.16.tgz#244569757f9cbd912f5a595a8ad8144f8c915f13" - integrity sha512-XIqhNUxJiuy+zsR77+H5Z2f7s4YRlriSJKtvx99nJuG5ATuJPjmZ9n0ANgnGlPCpXGSReFpgcJ7O3SMtzIFeiQ== - -"@esbuild/linux-arm64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz#70ac6fa14f5cb7e1f7f887bcffb680ad09922b5b" - integrity sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q== - -"@esbuild/linux-arm@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.18.16.tgz#d63923c63af534032cc5ea0b2a0b3de10f8357f5" - integrity sha512-b5ABb+5Ha2C9JkeZXV+b+OruR1tJ33ePmv9ZwMeETSEKlmu/WJ45XTTG+l6a2KDsQtJJ66qo/hbSGBtk0XVLHw== - -"@esbuild/linux-arm@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz#fc6fd11a8aca56c1f6f3894f2bea0479f8f626b9" - integrity sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA== - -"@esbuild/linux-ia32@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.18.16.tgz#a8825ccea6309f0bccfc5d87b43163ba804c2f20" - integrity sha512-no+pfEpwnRvIyH+txbBAWtjxPU9grslmTBfsmDndj7bnBmr55rOo/PfQmRfz7Qg9isswt1FP5hBbWb23fRWnow== - -"@esbuild/linux-ia32@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz#3271f53b3f93e3d093d518d1649d6d68d346ede2" - integrity sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg== - -"@esbuild/linux-loong64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.18.16.tgz#f530e820fc3c61cf2206155b994aeab53b6d25be" - integrity sha512-Zbnczs9ZXjmo0oZSS0zbNlJbcwKXa/fcNhYQjahDs4Xg18UumpXG/lwM2lcSvHS3mTrRyCYZvJbmzYc4laRI1g== - -"@esbuild/linux-loong64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz#ed62e04238c57026aea831c5a130b73c0f9f26df" - integrity sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg== - -"@esbuild/linux-mips64el@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.18.16.tgz#2d47ace539257896865d243641bd6716684a1e82" - integrity sha512-YMF7hih1HVR/hQVa/ot4UVffc5ZlrzEb3k2ip0nZr1w6fnYypll9td2qcoMLvd3o8j3y6EbJM3MyIcXIVzXvQQ== - -"@esbuild/linux-mips64el@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz#e79b8eb48bf3b106fadec1ac8240fb97b4e64cbe" - integrity sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg== - -"@esbuild/linux-ppc64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.18.16.tgz#d6913e7e9be9e242a6a20402800141bdbe7009f7" - integrity sha512-Wkz++LZ29lDwUyTSEnzDaaP5OveOgTU69q9IyIw9WqLRxM4BjTBjz9un4G6TOvehWpf/J3gYVFN96TjGHrbcNQ== - -"@esbuild/linux-ppc64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz#5f2203860a143b9919d383ef7573521fb154c3e4" - integrity sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w== - -"@esbuild/linux-riscv64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.18.16.tgz#8f33b627389c8234fe61f4636c134f17fb1d9b09" - integrity sha512-LFMKZ30tk78/mUv1ygvIP+568bwf4oN6reG/uczXnz6SvFn4e2QUFpUpZY9iSJT6Qpgstrhef/nMykIXZtZWGQ== - -"@esbuild/linux-riscv64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz#07bcafd99322d5af62f618cb9e6a9b7f4bb825dc" - integrity sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA== - -"@esbuild/linux-s390x@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.18.16.tgz#4d44c030f78962cf410f604f92fcc1505e4afdde" - integrity sha512-3ZC0BgyYHYKfZo3AV2/66TD/I9tlSBaW7eWTEIkrQQKfJIifKMMttXl9FrAg+UT0SGYsCRLI35Gwdmm96vlOjg== - -"@esbuild/linux-s390x@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz#b7ccf686751d6a3e44b8627ababc8be3ef62d8de" - integrity sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A== - -"@esbuild/linux-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.18.16.tgz#8846d00e16b1e93eb488c8b4dd51c946adfc236f" - integrity sha512-xu86B3647DihHJHv/wx3NCz2Dg1gjQ8bbf9cVYZzWKY+gsvxYmn/lnVlqDRazObc3UMwoHpUhNYaZset4X8IPA== - -"@esbuild/linux-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz#6d8f0c768e070e64309af8004bb94e68ab2bb3b0" - integrity sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ== - -"@esbuild/netbsd-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.18.16.tgz#6514a86bd07744f3100d2813ea2fb6520d53e72e" - integrity sha512-uVAgpimx9Ffw3xowtg/7qQPwHFx94yCje+DoBx+LNm2ePDpQXHrzE+Sb0Si2VBObYz+LcRps15cq+95YM7gkUw== - -"@esbuild/netbsd-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz#bbe430f60d378ecb88decb219c602667387a6047" - integrity sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg== - -"@esbuild/openbsd-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.18.16.tgz#ae67ce766d58aab6c0e6037f1a76f15df4a2a5fe" - integrity sha512-6OjCQM9wf7z8/MBi6BOWaTL2AS/SZudsZtBziXMtNI8r/U41AxS9x7jn0ATOwVy08OotwkPqGRMkpPR2wcTJXA== - -"@esbuild/openbsd-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz#99d1cf2937279560d2104821f5ccce220cb2af70" - integrity sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow== - -"@esbuild/sunos-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.18.16.tgz#998efe8a58374b7351ac710455051639a6ce6a05" - integrity sha512-ZoNkruFYJp9d1LbUYCh8awgQDvB9uOMZqlQ+gGEZR7v6C+N6u7vPr86c+Chih8niBR81Q/bHOSKGBK3brJyvkQ== - -"@esbuild/sunos-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz#08741512c10d529566baba837b4fe052c8f3487b" - integrity sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg== - -"@esbuild/win32-arm64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.18.16.tgz#8de33682243508eef8d4de1816df2c05adad2b21" - integrity sha512-+j4anzQ9hrs+iqO+/wa8UE6TVkKua1pXUb0XWFOx0FiAj6R9INJ+WE//1/Xo6FG1vB5EpH3ko+XcgwiDXTxcdw== - -"@esbuild/win32-arm64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz#675b7385398411240735016144ab2e99a60fc75d" - integrity sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A== - -"@esbuild/win32-ia32@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.18.16.tgz#95c9f4274fb3ef9e449d464ffe3e3b7fa091503b" - integrity sha512-5PFPmq3sSKTp9cT9dzvI67WNfRZGvEVctcZa1KGjDDu4n3H8k59Inbk0du1fz0KrAbKKNpJbdFXQMDUz7BG4rQ== - -"@esbuild/win32-ia32@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz#1bfc3ce98aa6ca9a0969e4d2af72144c59c1193b" - integrity sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA== - -"@esbuild/win32-x64@0.18.16": - version "0.18.16" - resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.18.16.tgz#5be58d31d0120c68af8e38b702e6937ce764cd68" - integrity sha512-sCIVrrtcWN5Ua7jYXNG1xD199IalrbfV2+0k/2Zf2OyV2FtnQnMgdzgpRAbi4AWlKJj1jkX+M+fEGPQj6BQB4w== - -"@esbuild/win32-x64@0.21.5": - version "0.21.5" - resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz#acad351d582d157bb145535db2a6ff53dd514b5c" - integrity sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw== - "@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0": version "4.4.0" resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz" @@ -1696,49 +1328,25 @@ "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.9" -"@jridgewell/gen-mapping@^0.3.5": - version "0.3.5" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" - integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== - dependencies: - "@jridgewell/set-array" "^1.2.1" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.24" - "@jridgewell/resolve-uri@3.1.0": version "3.1.0" resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz" integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== -"@jridgewell/resolve-uri@^3.1.0": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" - integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== - "@jridgewell/set-array@^1.0.1": version "1.1.2" resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== -"@jridgewell/set-array@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" - integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== - -"@jridgewell/sourcemap-codec@1.4.14": - version "1.4.14" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz" - integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== - "@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.15": version "1.4.15" resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz" integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== -"@jridgewell/sourcemap-codec@^1.4.14": - version "1.5.0" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a" - integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== +"@jridgewell/sourcemap-codec@1.4.14": + version "1.4.14" + resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz" + integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": version "0.3.18" @@ -1748,14 +1356,6 @@ "@jridgewell/resolve-uri" "3.1.0" "@jridgewell/sourcemap-codec" "1.4.14" -"@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": - version "0.3.25" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" - integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== - dependencies: - "@jridgewell/resolve-uri" "^3.1.0" - "@jridgewell/sourcemap-codec" "^1.4.14" - "@mui/base@5.0.0-beta.8": version "5.0.0-beta.8" resolved "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.8.tgz" @@ -1855,7 +1455,7 @@ "@nodelib/fs.stat" "2.0.5" run-parallel "^1.1.9" -"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": +"@nodelib/fs.stat@^2.0.2", "@nodelib/fs.stat@2.0.5": version "2.0.5" resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== @@ -1885,86 +1485,11 @@ resolved "https://registry.npmjs.org/@remix-run/router/-/router-1.7.2.tgz" integrity sha512-7Lcn7IqGMV+vizMPoEl5F0XDshcdDYtMI6uJLQdQz5CfZAwy3vvGKYSUk789qndt5dEC4HfSjviSYlSoHGL2+A== -"@rollup/rollup-android-arm-eabi@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.0.tgz#bbd0e616b2078cd2d68afc9824d1fadb2f2ffd27" - integrity sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ== - -"@rollup/rollup-android-arm64@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.0.tgz#97255ef6384c5f73f4800c0de91f5f6518e21203" - integrity sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA== - "@rollup/rollup-darwin-arm64@4.18.0": version "4.18.0" resolved "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz" integrity sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w== -"@rollup/rollup-darwin-x64@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.0.tgz#e07d76de1cec987673e7f3d48ccb8e106d42c05c" - integrity sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA== - -"@rollup/rollup-linux-arm-gnueabihf@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.0.tgz#9f1a6d218b560c9d75185af4b8bb42f9f24736b8" - integrity sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA== - -"@rollup/rollup-linux-arm-musleabihf@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.0.tgz#53618b92e6ffb642c7b620e6e528446511330549" - integrity sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A== - -"@rollup/rollup-linux-arm64-gnu@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.0.tgz#99a7ba5e719d4f053761a698f7b52291cefba577" - integrity sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw== - -"@rollup/rollup-linux-arm64-musl@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.0.tgz#f53db99a45d9bc00ce94db8a35efa7c3c144a58c" - integrity sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ== - -"@rollup/rollup-linux-powerpc64le-gnu@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.0.tgz#cbb0837408fe081ce3435cf3730e090febafc9bf" - integrity sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA== - -"@rollup/rollup-linux-riscv64-gnu@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.0.tgz#8ed09c1d1262ada4c38d791a28ae0fea28b80cc9" - integrity sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg== - -"@rollup/rollup-linux-s390x-gnu@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.0.tgz#938138d3c8e0c96f022252a28441dcfb17afd7ec" - integrity sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg== - -"@rollup/rollup-linux-x64-gnu@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.0.tgz#1a7481137a54740bee1ded4ae5752450f155d942" - integrity sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w== - -"@rollup/rollup-linux-x64-musl@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.0.tgz#f1186afc601ac4f4fc25fac4ca15ecbee3a1874d" - integrity sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg== - -"@rollup/rollup-win32-arm64-msvc@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.0.tgz#ed6603e93636a96203c6915be4117245c1bd2daf" - integrity sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA== - -"@rollup/rollup-win32-ia32-msvc@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.0.tgz#14e0b404b1c25ebe6157a15edb9c46959ba74c54" - integrity sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg== - -"@rollup/rollup-win32-x64-msvc@4.18.0": - version "4.18.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.0.tgz#5d694d345ce36b6ecf657349e03eb87297e68da4" - integrity sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g== - "@sinclair/typebox@^0.27.8": version "0.27.8" resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz" @@ -1989,7 +1514,7 @@ dependencies: defer-to-connect "^2.0.0" -"@ton/core@^0.58.1": +"@ton/core@^0.58.1", "@ton/core@>=0.49.2", "@ton/core@>=0.56.0": version "0.58.1" resolved "https://registry.npmjs.org/@ton/core/-/core-0.58.1.tgz" integrity sha512-zydh42iT6E3U3Ky/DhTFqJMN/ycKKzbsHASY257Qr2sZn97G/MOcHFizPfMnbJJgx0H9iHX6mdyMvp1IKBVAFA== @@ -2003,7 +1528,7 @@ dependencies: jssha "3.2.0" -"@ton/crypto@^3.3.0": +"@ton/crypto@^3.3.0", "@ton/crypto@>=3.2.0": version "3.3.0" resolved "https://registry.npmjs.org/@ton/crypto/-/crypto-3.3.0.tgz" integrity sha512-/A6CYGgA/H36OZ9BbTaGerKtzWp50rg67ZCH2oIjV1NcrBaCK9Z343M+CxedvM7Haf3f/Ee9EhxyeTp0GKMUpA== @@ -2139,7 +1664,7 @@ resolved "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.2.tgz" integrity sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw== -"@types/estree@1.0.5", "@types/estree@^1.0.0": +"@types/estree@^1.0.0", "@types/estree@1.0.5": version "1.0.5" resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz" integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== @@ -2169,7 +1694,7 @@ dependencies: "@types/node" "*" -"@types/node@*": +"@types/node@*", "@types/node@^18.0.0 || >=20.0.0", "@types/node@>= 14": version "20.12.8" resolved "https://registry.npmjs.org/@types/node/-/node-20.12.8.tgz" integrity sha512-NU0rJLJnshZWdE/097cdCBbyW1h4hEg0xpovcoAQYHl8dnEyp/NAOiE45pvc+Bd1Dt+2r94v2eGFpQJ4R7g+2w== @@ -2207,7 +1732,7 @@ dependencies: "@types/react" "*" -"@types/react@*", "@types/react@^18.2.15": +"@types/react@*", "@types/react@^17.0.0 || ^18.0.0", "@types/react@^18.2.15": version "18.2.16" resolved "https://registry.npmjs.org/@types/react/-/react-18.2.16.tgz" integrity sha512-LLFWr12ZhBJ4YVw7neWLe6Pk7Ey5R9OCydfuMsz1L8bZxzaawJj2p06Q8/EFEHDeTBQNFLF62X+CG7B2zIyu0Q== @@ -2242,7 +1767,7 @@ "@types/react" "*" csstype "^3.0.2" -"@types/stylis@4.2.0", "@types/stylis@^4.0.2": +"@types/stylis@^4.0.2", "@types/stylis@4.2.0": version "4.2.0" resolved "https://registry.npmjs.org/@types/stylis/-/stylis-4.2.0.tgz" integrity sha512-n4sx2bqL0mW1tvDf/loQ+aMX7GQD3lc3fkCMC55VFNDu/vBOabO+LTIeXKM14xK0ppk5TUGcWRjiSpIlUpghKw== @@ -2272,7 +1797,7 @@ semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/parser@^6.0.0": +"@typescript-eslint/parser@^6.0.0", "@typescript-eslint/parser@^6.0.0 || ^6.0.0-alpha": version "6.2.0" resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.2.0.tgz" integrity sha512-igVYOqtiK/UsvKAmmloQAruAdUHihsOCvplJpplPZ+3h4aDkC/UKZZNKgB6h93ayuYLuEymU3h8nF1xMRbh37g== @@ -2418,15 +1943,20 @@ acorn-walk@^8.3.2: dependencies: acorn "^8.11.0" -acorn@^8.11.0, acorn@^8.11.3: +"acorn@^6.0.0 || ^7.0.0 || ^8.0.0", acorn@^8.9.0: + version "8.10.0" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz" + integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== + +acorn@^8.11.0: version "8.12.0" resolved "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz" integrity sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw== -acorn@^8.9.0: - version "8.10.0" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz" - integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== +acorn@^8.11.3: + version "8.12.0" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz" + integrity sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw== ajv@^6.10.0, ajv@^6.12.4: version "6.12.6" @@ -2559,21 +2089,14 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" -braces@^3.0.2: +braces@^3.0.2, braces@~3.0.2: version "3.0.2" resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== dependencies: fill-range "^7.0.1" -braces@~3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" - integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== - dependencies: - fill-range "^7.1.1" - -browserslist@^4.21.9: +browserslist@^4.21.9, "browserslist@>= 4.21.0": version "4.21.9" resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz" integrity sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg== @@ -2583,16 +2106,6 @@ browserslist@^4.21.9: node-releases "^2.0.12" update-browserslist-db "^1.0.11" -browserslist@^4.24.0: - version "4.24.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.0.tgz#a1325fe4bc80b64fda169629fc01b3d6cecd38d4" - integrity sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A== - dependencies: - caniuse-lite "^1.0.30001663" - electron-to-chromium "^1.5.28" - node-releases "^2.0.18" - update-browserslist-db "^1.1.0" - buffer-crc32@~0.2.3: version "0.2.13" resolved "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz" @@ -2636,12 +2149,7 @@ caniuse-lite@^1.0.30001503: resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001517.tgz" integrity sha512-Vdhm5S11DaFVLlyiKu4hiUTkpZu+y1KA/rZZqVQfOD5YdDT/eQKlkt7NaE0WGOFgX32diqt9MiP9CAiFeRklaA== -caniuse-lite@^1.0.30001663: - version "1.0.30001667" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001667.tgz#99fc5ea0d9c6e96897a104a8352604378377f949" - integrity sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw== - -chai@^4.3.10: +chai@*, chai@^4.3.10: version "4.4.1" resolved "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz" integrity sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g== @@ -2654,7 +2162,7 @@ chai@^4.3.10: pathval "^1.1.1" type-detect "^4.0.8" -chalk@^2.0.0, chalk@^2.4.2: +chalk@^2.0.0: version "2.4.2" resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -2715,7 +2223,12 @@ clsx@^1.2.1: resolved "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz" integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== -clsx@^2.0.0, clsx@^2.1.0: +clsx@^2.0.0: + version "2.1.1" + resolved "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz" + integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== + +clsx@^2.1.0: version "2.1.1" resolved "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz" integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== @@ -2734,16 +2247,16 @@ color-convert@^2.0.1: dependencies: color-name "~1.1.4" -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" - integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== - color-name@~1.1.4: version "1.1.4" resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + combined-stream@^1.0.8: version "1.0.8" resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" @@ -2771,11 +2284,6 @@ convert-source-map@^1.1.0, convert-source-map@^1.5.0, convert-source-map@^1.7.0: resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz" integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== -convert-source-map@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" - integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== - core-js-compat@^3.31.0: version "3.31.1" resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.31.1.tgz" @@ -2808,7 +2316,7 @@ css-color-keywords@^1.0.0: resolved "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz" integrity sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg== -css-to-react-native@3.2.0, css-to-react-native@^3.2.0: +css-to-react-native@^3.2.0, css-to-react-native@3.2.0: version "3.2.0" resolved "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz" integrity sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ== @@ -2817,12 +2325,12 @@ css-to-react-native@3.2.0, css-to-react-native@^3.2.0: css-color-keywords "^1.0.0" postcss-value-parser "^4.0.2" -csstype@3.1.2, csstype@^3.0.2, csstype@^3.1.2: +csstype@^3.0.10, csstype@^3.0.2, csstype@^3.1.2, csstype@3.1.2: version "3.1.2" resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz" integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== -"d3-array@2 - 3", "d3-array@2.10.0 - 3", d3-array@^3.1.6: +d3-array@^3.1.6, "d3-array@2 - 3", "d3-array@2.10.0 - 3": version "3.2.4" resolved "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz" integrity sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg== @@ -2844,7 +2352,7 @@ d3-ease@^3.0.1: resolved "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz" integrity sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA== -"d3-interpolate@1.2.0 - 3", d3-interpolate@^3.0.1: +d3-interpolate@^3.0.1, "d3-interpolate@1.2.0 - 3": version "3.0.1" resolved "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz" integrity sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g== @@ -2881,7 +2389,7 @@ d3-shape@^3.1.0: dependencies: d3-time "1 - 3" -"d3-time@1 - 3", "d3-time@2.1.1 - 3", d3-time@^3.0.0: +d3-time@^3.0.0, "d3-time@1 - 3", "d3-time@2.1.1 - 3": version "3.1.0" resolved "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz" integrity sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q== @@ -2905,13 +2413,6 @@ debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4: dependencies: ms "2.1.2" -debug@^4.3.1: - version "4.3.7" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.7.tgz#87945b4151a011d76d95a198d7111c865c360a52" - integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ== - dependencies: - ms "^2.1.3" - decimal.js-light@^2.4.1: version "2.5.1" resolved "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.1.tgz" @@ -2983,11 +2484,6 @@ electron-to-chromium@^1.4.431: resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.470.tgz" integrity sha512-zZM48Lmy2FKWgqyvsX9XK+J6FfP7aCDUFLmgooLJzA7v1agCs/sxSoBpTIwDLhmbhpx9yJIxj2INig/ncjJRqg== -electron-to-chromium@^1.5.28: - version "1.5.35" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.35.tgz#1d38d386186c72b1fa6e74c3a7de5f888b503100" - integrity sha512-hOSRInrIDm0Brzp4IHW2F/VM+638qOL2CzE0DgpnGzKW27C95IqqeqgKz/hxHGnvPxvQGpHUGD5qRVC9EZY2+A== - end-of-stream@^1.1.0: version "1.4.4" resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz" @@ -3002,7 +2498,7 @@ error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -esbuild@^0.18.10: +esbuild@*, esbuild@^0.18.10: version "0.18.16" resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.18.16.tgz" integrity sha512-1xLsOXrDqwdHxyXb/x/SOyg59jpf/SH7YMvU5RNSU7z3TInaASNJWNFJ6iRvLvLETZMasF3d1DdZLg7sgRimRQ== @@ -3064,11 +2560,6 @@ escalade@^3.1.1: resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== -escalade@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" - integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== - escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" @@ -3107,7 +2598,7 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1: resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz" integrity sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA== -eslint@^8.45.0: +"eslint@^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0", "eslint@^6.0.0 || ^7.0.0 || >=8.0.0", "eslint@^7.0.0 || ^8.0.0", eslint@^8.45.0, eslint@>=5.0.0, eslint@>=7: version "8.45.0" resolved "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz" integrity sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw== @@ -3290,13 +2781,6 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" -fill-range@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" - integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== - dependencies: - to-regex-range "^5.0.1" - find-root@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz" @@ -3376,11 +2860,6 @@ function-bind@^1.1.1: resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== -function-bind@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" - integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== - gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz" @@ -3405,7 +2884,7 @@ get-stream@^8.0.1: glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" @@ -3419,7 +2898,7 @@ glob-parent@^6.0.2: glob@^7.1.3, glob@^7.2.0: version "7.2.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== dependencies: fs.realpath "^1.0.0" @@ -3502,13 +2981,6 @@ has@^1.0.3: dependencies: function-bind "^1.1.1" -hasown@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" - integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== - dependencies: - function-bind "^1.1.2" - hoist-non-react-statics@^3.3.0, hoist-non-react-statics@^3.3.1: version "3.3.2" resolved "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz" @@ -3594,13 +3066,6 @@ is-core-module@^2.11.0: dependencies: has "^1.0.3" -is-core-module@^2.13.0: - version "2.15.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.1.tgz#a7363a25bee942fefab0de13bf6aa372c82dcc37" - integrity sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ== - dependencies: - hasown "^2.0.2" - is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" @@ -3608,7 +3073,7 @@ is-extglob@^2.1.1: is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: is-extglob "^2.1.1" @@ -3663,11 +3128,6 @@ jsesc@^2.5.1: resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== -jsesc@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.0.2.tgz#bb8b09a6597ba426425f2e4a07245c3d00b9343e" - integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g== - jsesc@~0.5.0: version "0.5.0" resolved "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz" @@ -3693,9 +3153,9 @@ json-stable-stringify-without-jsonify@^1.0.1: resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== -json5@^2.2.2, json5@^2.2.3: +json5@^2.2.2: version "2.2.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jssha@3.2.0: @@ -3880,11 +3340,6 @@ ms@2.1.2: resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@^2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== - nanoid@^3.3.6: version "3.3.6" resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz" @@ -3942,11 +3397,6 @@ node-releases@^2.0.12: resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz" integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== -node-releases@^2.0.18: - version "2.0.18" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.18.tgz#f010e8d35e2fe8d6b2944f03f70213ecedc4ca3f" - integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g== - normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" @@ -4093,14 +3543,9 @@ picocolors@^1.0.1: resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz" integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== -picocolors@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.0.tgz#5358b76a78cde483ba5cef6a9dc9671440b27d59" - integrity sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw== - picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== pify@^4.0.1: @@ -4122,15 +3567,6 @@ postcss-value-parser@^4.0.2: resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== -postcss@8.4.31: - version "8.4.31" - resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz" - integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ== - dependencies: - nanoid "^3.3.6" - picocolors "^1.0.0" - source-map-js "^1.0.2" - postcss@^8.4.23, postcss@^8.4.26: version "8.4.27" resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.27.tgz" @@ -4149,6 +3585,15 @@ postcss@^8.4.38: picocolors "^1.0.1" source-map-js "^1.2.0" +postcss@8.4.31: + version "8.4.31" + resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz" + integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ== + dependencies: + nanoid "^3.3.6" + picocolors "^1.0.0" + source-map-js "^1.0.2" + prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" @@ -4205,7 +3650,7 @@ quick-lru@^5.1.1: resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz" integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== -react-dom@^18.2.0: +"react-dom@^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0", "react-dom@^0.14.7 || ^15.0.0-0 || ^16.0.0 || ^17.0.0|| ^18.0.0", "react-dom@^16.0.0 || ^17.0.0 || ^18.0.0", "react-dom@^16.8.0 || ^17.0.0 || ^18.0.0", "react-dom@^17.0.0 || ^18.0.0", react-dom@^18, react-dom@^18.0.0, react-dom@^18.2.0, "react-dom@>= 16.8.0", react-dom@>=16, react-dom@>=16.6.0, react-dom@>=16.8, react-dom@>=17.0.0, react-dom@>=18: version "18.2.0" resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz" integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g== @@ -4220,7 +3665,7 @@ react-dropdown@^1.11.0: dependencies: classnames "^2.2.3" -react-hook-form@^7.51.4: +react-hook-form@^7.0.0, react-hook-form@^7.51.4: version "7.51.4" resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.51.4.tgz" integrity sha512-V14i8SEkh+V1gs6YtD0hdHYnoL4tp/HX/A45wWQN15CYr9bFRmmRdYStSO5L65lCCZRF+kYiSKhm9alqbcdiVA== @@ -4232,12 +3677,32 @@ react-hot-toast@^2.4.1: dependencies: goober "^2.1.10" -react-is@^16.10.2, react-is@^16.13.1, react-is@^16.7.0: +react-icons@^5.3.0: + version "5.3.0" + resolved "https://registry.npmjs.org/react-icons/-/react-icons-5.3.0.tgz" + integrity sha512-DnUk8aFbTyQPSkCfF8dbX6kQjXA9DktMeJqfjrg6cK9vwQVMxmcA3BfP4QoiztVmEHtwlTgLFsPuH2NskKT6eg== + +react-is@^16.10.2: + version "16.13.1" + resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +react-is@^16.13.1: + version "16.13.1" + resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +react-is@^16.7.0: version "16.13.1" resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== -react-is@^18.0.0, react-is@^18.2.0: +react-is@^18.0.0: + version "18.3.1" + resolved "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz" + integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg== + +react-is@^18.2.0: version "18.2.0" resolved "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz" integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== @@ -4303,7 +3768,7 @@ react-transition-group@^4.4.5: loose-envify "^1.4.0" prop-types "^15.6.2" -react@^18.2.0: +react@*, "react@^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0", "react@^0.14.7 || ^15.0.0-0 || ^16.0.0 || ^17.0.0 || ^18.0.0", "react@^16.0.0 || ^17.0.0 || ^18.0.0", "react@^16.11.0 || ^17.0.0 || ^18.0.0", "react@^16.8.0 || ^17 || ^18", "react@^16.8.0 || ^17.0.0 || ^18.0.0", "react@^17.0.0 || ^18.0.0", react@^18, "react@^18 || ^19", react@^18.0.0, react@^18.2.0, "react@>= 16.8.0", react@>=16, react@>=16.13.1, react@>=16.6.0, react@>=16.8, react@>=16.8.0, react@>=17.0.0, react@>=18: version "18.2.0" resolved "https://registry.npmjs.org/react/-/react-18.2.0.tgz" integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ== @@ -4343,7 +3808,7 @@ recoil-persist@^5.1.0: resolved "https://registry.npmjs.org/recoil-persist/-/recoil-persist-5.1.0.tgz" integrity sha512-sew4k3uBVJjRWKCSFuBw07Y1p1pBOb0UxLJPxn4G2bX/9xNj+r2xlqYy/BRfyofR/ANfqBU04MIvulppU4ZC0w== -recoil@^0.7.7: +recoil@^0.7.2, recoil@^0.7.7: version "0.7.7" resolved "https://registry.npmjs.org/recoil/-/recoil-0.7.7.tgz" integrity sha512-8Og5KPQW9LwC577Vc7Ug2P0vQshkv1y3zG3tSSkWMqkWSwHmE+by06L8JtnGocjW6gcCvfwB3YtrJG6/tWivNQ== @@ -4403,16 +3868,7 @@ resolve-from@^4.0.0: resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== -resolve@^1.14.2: - version "1.22.8" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" - integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== - dependencies: - is-core-module "^2.13.0" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -resolve@^1.19.0: +resolve@^1.14.2, resolve@^1.19.0: version "1.22.2" resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz" integrity sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g== @@ -4531,7 +3987,7 @@ server-only@^0.0.1: resolved "https://registry.npmjs.org/server-only/-/server-only-0.0.1.tgz" integrity sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA== -shallowequal@1.1.0, shallowequal@^1.1.0: +shallowequal@^1.1.0, shallowequal@1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz" integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== @@ -4662,6 +4118,11 @@ styled-components@^6.1.2: stylis "4.3.1" tslib "2.5.0" +stylis@^4.3.0: + version "4.3.0" + resolved "https://registry.npmjs.org/stylis/-/stylis-4.3.0.tgz" + integrity sha512-E87pIogpwUsUwXw7dNyU4QDjdgVMy52m+XEOPEKUn161cCzWjjhPSQhByfd1CcNvrOLnXQ6OnnZDwnJrz/Z4YQ== + stylis@4.2.0: version "4.2.0" resolved "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz" @@ -4672,11 +4133,6 @@ stylis@4.3.1: resolved "https://registry.npmjs.org/stylis/-/stylis-4.3.1.tgz" integrity sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ== -stylis@^4.3.0: - version "4.3.0" - resolved "https://registry.npmjs.org/stylis/-/stylis-4.3.0.tgz" - integrity sha512-E87pIogpwUsUwXw7dNyU4QDjdgVMy52m+XEOPEKUn161cCzWjjhPSQhByfd1CcNvrOLnXQ6OnnZDwnJrz/Z4YQ== - supports-color@^5.3.0: version "5.5.0" resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" @@ -4761,17 +4217,12 @@ ts-api-utils@^1.0.1: resolved "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.1.tgz" integrity sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A== -tslib@2.5.0: - version "2.5.0" - resolved "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz" - integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== - tslib@^1.11.1: version "1.14.1" resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.3.1: +tslib@^2.3.1, tslib@^2.5.0: version "2.6.1" resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz" integrity sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig== @@ -4781,17 +4232,17 @@ tslib@^2.4.0: resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz" integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== -tslib@^2.5.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.7.0.tgz#d9b40c5c40ab59e8738f297df3087bf1a2690c01" - integrity sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA== +tslib@2.5.0: + version "2.5.0" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz" + integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== tweetnacl-util@^0.15.1: version "0.15.1" resolved "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz" integrity sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw== -tweetnacl@1.0.3, tweetnacl@^1.0.3: +tweetnacl@^1.0.3, tweetnacl@1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz" integrity sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw== @@ -4813,7 +4264,7 @@ type-fest@^0.20.2: resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== -typescript@^5.0.2: +typescript@^5.0.2, typescript@>=4.2.0: version "5.1.6" resolved "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz" integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA== @@ -4864,14 +4315,6 @@ update-browserslist-db@^1.0.11: escalade "^3.1.1" picocolors "^1.0.0" -update-browserslist-db@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz#80846fba1d79e82547fb661f8d141e0945755fe5" - integrity sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A== - dependencies: - escalade "^3.2.0" - picocolors "^1.1.0" - uri-js@^4.2.2: version "4.4.1" resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" @@ -4920,7 +4363,7 @@ vite-node@1.6.0: picocolors "^1.0.0" vite "^5.0.0" -vite@^4.4.5: +vite@^4.2.0, vite@^4.4.5: version "4.4.7" resolved "https://registry.npmjs.org/vite/-/vite-4.4.7.tgz" integrity sha512-6pYf9QJ1mHylfVh39HpuSfMPojPSKVxZvnclX1K1FyZ1PXDOcLBibdq5t1qxJSnL63ca8Wf4zts6mD8u8oc9Fw== From 5d58af025a84c20fc7b61c4ca0e2c8c959a235f7 Mon Sep 17 00:00:00 2001 From: BWL Date: Tue, 29 Oct 2024 15:10:38 +0900 Subject: [PATCH 102/105] test: google analytics test --- index.html | 9 ++ src/pages/Dashboard/Dashboard.tsx | 143 +++++++++++++----------------- 2 files changed, 70 insertions(+), 82 deletions(-) diff --git a/index.html b/index.html index 99214031..32b97ca2 100644 --- a/index.html +++ b/index.html @@ -40,6 +40,15 @@ NEXTON + + +
diff --git a/src/pages/Dashboard/Dashboard.tsx b/src/pages/Dashboard/Dashboard.tsx index fc223fe8..18f3bce2 100644 --- a/src/pages/Dashboard/Dashboard.tsx +++ b/src/pages/Dashboard/Dashboard.tsx @@ -4,6 +4,7 @@ import { CartesianGrid, Line, LineChart, ResponsiveContainer, Tooltip, XAxis, YA import { useSetRecoilState } from "recoil"; import { ClickAwayListener } from "@mui/material"; +//tooltip name이 겹쳐서 변수명 설정해줌 import { Tooltip as MuiTooltip, tooltipClasses } from "@mui/material"; import { VscInfo } from "react-icons/vsc"; import IcNextonLogo from "@/assets/icons/Dashboard/ic_nexton_logo.svg"; @@ -117,32 +118,7 @@ const Dashboard = () => { nexton_logo

Arbitrage Bot

- - {/* // ! @deprecated */} - {/* - -
APY
- {performanceData?.apy ? `${performanceData?.apy.toFixed(2)}%` : "-"} -
- - - - -
Daily PNL
- - {chartData?.dailyPnlRate > 0 && "+"} {chartData?.dailyPnlRate}% - -
- - - - -
TVL
- {limitDecimals(performanceData?.tvl, 3)} TON -
-
*/} - {Object.keys(chartTimeFrameOptions).map(key => ( {

-

Stakers Win Rate

{performanceData?.pnlWinRate?.toFixed(2)}%

- -

- TVL - +

+ TVL + -
- -
-
-

-

{limitDecimals(performanceData?.tvl, 3)} TON

- + arrow: { sx: { color: "black", border: "none" } }, + }} + arrow + > +
+ +
+
+

+

{limitDecimals(performanceData?.tvl, 3)} TON

+
-
@@ -276,4 +255,4 @@ const Dashboard = () => { ); }; -export default Dashboard; \ No newline at end of file +export default Dashboard; From 7083f0d57cce16624ab1a0a8d99b6e3a2071ecd7 Mon Sep 17 00:00:00 2001 From: BWL Date: Tue, 29 Oct 2024 15:28:18 +0900 Subject: [PATCH 103/105] =?UTF-8?q?test:=20=EC=9B=90=EC=83=81=EB=B3=B5?= =?UTF-8?q?=EA=B5=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- index.html | 9 --------- 1 file changed, 9 deletions(-) diff --git a/index.html b/index.html index 32b97ca2..99214031 100644 --- a/index.html +++ b/index.html @@ -40,15 +40,6 @@ NEXTON - - -
From 67473f5e45a165d24be2ca27bce9b72b2c443f81 Mon Sep 17 00:00:00 2001 From: jymin99 Date: Mon, 2 Dec 2024 17:43:46 +0900 Subject: [PATCH 104/105] =?UTF-8?q?style:=20loan=20header=20=EB=B3=80?= =?UTF-8?q?=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/icons/Loan/ic_alert.svg | 4 ++-- src/components/common/Router.tsx | 4 ++-- src/pages/Loan/Loan.styled.tsx | 2 -- src/pages/Loan/Loan.tsx | 9 ++------- 4 files changed, 6 insertions(+), 13 deletions(-) diff --git a/src/assets/icons/Loan/ic_alert.svg b/src/assets/icons/Loan/ic_alert.svg index 7815087f..7c6889ad 100644 --- a/src/assets/icons/Loan/ic_alert.svg +++ b/src/assets/icons/Loan/ic_alert.svg @@ -1,3 +1,3 @@ - - + + \ No newline at end of file diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index f6cbca07..db949ab2 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -42,7 +42,7 @@ const Router = () => { } /> {/* // ! Paths under /loan are disabled until contract & API are ready */} - {/* + } /> } /> } /> @@ -51,7 +51,7 @@ const Router = () => { } /> } /> } /> - */} + }> } /> } /> diff --git a/src/pages/Loan/Loan.styled.tsx b/src/pages/Loan/Loan.styled.tsx index b43b4067..7f5a8bbc 100644 --- a/src/pages/Loan/Loan.styled.tsx +++ b/src/pages/Loan/Loan.styled.tsx @@ -42,8 +42,6 @@ export const LoanHeaderBoxButton = styled.div` padding: 1.2rem; border-radius: 1.8rem; - background: linear-gradient(160deg, #f3f6fc 11.73%, #e6e7f7 98.61%); - cursor: pointer; `; diff --git a/src/pages/Loan/Loan.tsx b/src/pages/Loan/Loan.tsx index 3e29f076..9350fd6d 100644 --- a/src/pages/Loan/Loan.tsx +++ b/src/pages/Loan/Loan.tsx @@ -2,7 +2,6 @@ import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; import IcAlert from "@/assets/icons/Loan/ic_alert.svg"; -import IcBars from "@/assets/icons/Loan/ic_bars.svg"; import DropdownMenu from "@/components/common/DropdownMenu"; import BorrowList from "@/components/loan/Borrow/BorrowList"; import RepayList from "@/components/loan/Repay/RepayList"; @@ -66,8 +65,8 @@ const Loan = () => {

Loan

- navigate("/loan/history")}> - loan_icon + navigate("/loan/risk-disclosure")}> + alert_icon @@ -78,10 +77,6 @@ const Loan = () => { handleViewChange("repay")}> Repay - - navigate("/loan/risk-disclosure")}> - alert_icon - From 2c31dacf4a0f5dd0d905e5846a49b5526d0e01e4 Mon Sep 17 00:00:00 2001 From: jymin99 Date: Tue, 3 Dec 2024 14:30:39 +0900 Subject: [PATCH 105/105] loan: button abled --- src/components/main/ActionCards.tsx | 2 +- src/pages/MyAsset/NFTDetail/NFTDetail.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/main/ActionCards.tsx b/src/components/main/ActionCards.tsx index 85735cae..cde50873 100644 --- a/src/components/main/ActionCards.tsx +++ b/src/components/main/ActionCards.tsx @@ -20,7 +20,7 @@ const ActionCards = () => { return ( - navigate("/loan")} */> + navigate("/loan")}> Borrow nxTON using your NFT as collateral Coming Soon diff --git a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx index bac81bdb..0cb96b25 100644 --- a/src/pages/MyAsset/NFTDetail/NFTDetail.tsx +++ b/src/pages/MyAsset/NFTDetail/NFTDetail.tsx @@ -90,7 +90,7 @@ const NFTDetail = () => { )} Staking NFT - navigate(`/loan/${id}/borrow/details`)} */> + navigate(`/loan/${id}/borrow/details`)}> Borrow nxTON trend_up

sj=oIy0-^Dh=EJdM(4_Z|Y2f6kjR>FIJ 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≪@2+#+|H`o{x9js^1rakk!9+^r>q4myzm=vW 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�DHC`%00AF- z3z8ZkOb?E816Qi6kLr=5YXqV*6qt<;44Lkag^E-;iD~N%1TxHfZT(OZ1A9q6p=eA< z|EMSA5lZ_aB}F%?0D-{3d_``?oXRSEb>OfI|HjF~2w4umhfF)g8|BWD6*ykMpFMx+ zW91vfsEiF9XNt*dEn~ipow()rzj*}DEj_EerU85|8*Jl8h#`$kG|jQ389#RN>s&LM$)14>vg&m|d)shCDg@`2*1s=}epl*r4TQx&rj zm$;$!1QN7pb&*8Z3SS11*JsUuY-U}2YK~_E%^fc|kl~y24EkarZIY5OVwX~KRPz^9M=&pUbh4{a#5qDpB08K!$zxw5uPZiXhLB})wMciR?AH<{M|5J{+ z_ml7VzV>$i`ro`CKmW-WTFE@|5VqdB0tFyS^j#KOe;&kFadgJNeJLgOnM+b~o}xi9?2-Uv8iAjSa+o_2&F=7M{yJPu(vi_zd0faa-}JveQT7U8!ia=)bxfIV@6TLMaOZrZCrtAN=hX38&l*BTSL^ zJ*Im%&;R=CrE?#B7q|EEpe;N1JAd|GeC3Hqe)7APCv|)Xw2_sh%q6ZZ7@z#^%-{X) zYN($>6+e9&Nf1)t$*`nvy%u@>;EA+;wf*gQmG%Dnkze^*u9bs}=)QWd;`M8g-Pe78 zR9?HRCH@JLeKmCZ|Ka@yS6XO=R`H08RG^e>#@G}u`JLT9Cg=W_7Aq)L6Mp7g0I>iF z2|AYrQ>SDMZHw6>IA%OZ9lJ&67Or@OZ4Kx`5e#p5H(=Zc)-)B{Q+0~c3fX01%)EF* z5p*gl>lmxfuulPe0brI&+Qwpr+kFM%5H0o5!tOxD`5hCc-QQ^oD*uEVz|1Lgk`Cb(hgLCT zrAf`kwlOqC`EYw7C`5`N=;Em2eZA6F@vOxrOh&yoYJu^vbZ4fQ>E#KPA`|23GZ^62 z5zM3z#}DCC+rSXO97Ts=Le6cwcwfoD+-Lzsrqjo`$zz0=;cE0inQ3f>m03zy<6R9{ zp_EBrdVI(s%x0f8dr1KwYL)0H-)tr5KD^NSF&M&DaOX~Wljfx|muv#b$w)f$c5&2H zR!hEVCcp~oQfllIj&NF)855bTjda_`q~ty+KHj1|XTP6x5HSgqx+};#drxwe7(MiF zk-%uCA&vcR=}<@p23Q(P$ciN(xIlOjb=k|JT_^3flCu;!ZOWiB;F%fP!;1MH`1>FJhtDHj#Qw65_1mMH^ZWZp-`(5tcJhUD z>Os2|&&K#ifA%`Q|GhW71h=Ky_8}h|ZV?JTtuNYGn)@hWWn!iH|HYf@Nl{s!{8oHr zR(sai)^6YAPl9omT8?bl;Fnl7>k=m5msnW8jed8;u0zB|If3! zMRcdSrlnhjBt?r*@=ywHdXPbwbPppU1nMx&>LQ=CfHEGSFo9d#hgU0u;qUXJhYi zTTCQT#1MweQ>>F;j1>;tnZbzERmMhq!(1(_3XJbNAi@;NOdn=3p-EYhO&Wo(RO2;d zVh9>Q)H;$6iaLy`)^iLh&_!5q=NK6|8%#1RsE6qYZOsK~F^zRV?+@b@Oui~Thgt#HFk*LEpo(b8o&6-+q@pd`Qe9i&+X0WeGrd6-+#LwS1%l& zvG=8zAxwXA1)!yof?$bdbT?bR-3p*##KaF@fC(}iY{ZPLnSRUV?Rn*tsbhh3x z-(}keN|@Zm&>62qnFq$XbXGncC=(Ds$V|7#H*t#y`cLWoHLLXRYAkCERXd8wpzLq$$y(bv6BEdHMy>yA7F1r> zeMqv}d3(whF9VuGd|Q>jsTI;Jh!-*p*jnwiTH{nbe+i4n(uNKK13-q)L6;v!xV^4lb8fBYxJ5AanSw{JX;lolZQI!VW#VF(zuUO@eXsz| zIJU&FL^Vr0dB*{Y{QCYh|G)mZe3BVGh$rM+F#@QSfcDr6#h?&-i!Q)&oM*4HQ&HKI zuD%GdJ@2|D)vSOxN$fsOWYf#k5d2Fs=^%T;gQqrdk?$)w9S~BkYUz<3u-5)=eA~AO zYeVjp(<3mVCZ((lz>$mh!3~d^eJ+1%on~M8&(F~po3+Z5_8N^x2Y?Od!1S)SzxeUF zJLpXN`G5Yjsr!Es&z=2Uzt`_^ZoJSBUVr)5?~BlLK9_0o4qx}<(I5#2Fk;zCDg3A) zg)mp6V-dp`a9NB0C_eN>^r6MJ6c4hB{uML0(7 z8mp(rTt!H~E5KBi0?YM>1^j7s5x(oOcBfS;BVsH1%>dAUH>vVR1_Ot-p9Mg&xBc*O ztwm#lh+Dje#wxQ#ma7YSI#g)d8L0XctR3zWd%%#U!AeBevRC{GBIoC{wsx~coRVZstsbFH5#Yc9aI*j@{dD&2@mJe1y zW`G#OVMHd%zyWGIBqI!m9jKZP)a(|-9@7p{U(P z54-EYrea3t1;=1W$hz??t3+<^%Z44(GD$VjImu}n5{4{Ff_I$wiJY$ zR9ClTCsmv7BfPzl_a?=JG{*nk+fB!7`5IV1NykAVIL6P(2dmNJn$*+wVs26+%wzGb zOxYS+H!9BWb@iZpei1R;KR3A1K+}MU6-$@p%kdH0Ezi(rSKb;mP-p4oYukf5_J?5- z!>O!ty9hv69wV;n|0hg8`e{y=Ada)+!K-CmxHD?AjuHZ@{NGhDIyAdyxMjf`P{5T6 z?0HQaJLfUr+2?m9_|yg-s<#c}tl8LuHd~+Ye?6s&i_k0pD*+7KotAw?=!p;ofK;eZ zpkLBWU9g5p<4Ia9x-Y$*vz(m5Un1gDrSOM;`+5B3e`dFu+E60KYZ!9x%l!4idGU_V z5zp@i;O(UK752Ly`}Esi{mb{da*2zBdQA@xd?<6z#G`534iQ1ymJcCiCkk}dYrpW@ z6UUwH|1_RUn!GuG`Pi}Nx5t>hO}TF)^R&c|btPn(3@WiLcMB|t3>{_*sNZCXmCxFo z3}_a^um{K(DMM8}emT~H!WPEPf8CSmJ<8HWf>$sjlj}B9ezN9WayRW$9plNgC6I)Z z%rqj6@9>`IUW`@h~8!D*$E@^Rgf>!;gq(z=5k}MP$d$C~&o1a|81rOMw1q&Q#$XQ#K@N zB;iss{v;VD5QpJ##Xj~1czG!!(B}W>NV%MyUlLIEp4oMtK$zudv6)bWH2;?jB7hy7 zx96r6JC!0q7n1tYsc94bAM}4Dn{0QLoMzc+vlr;C89+{G3v?$*l=&RBhAJ-r?Er4@ zwkd)Mdu2Gzb+xK-pX|j6PQl|U$6Ii|`9Thj!FkH!4u340c#U$($2O8rnk>0KVU#LE zNhJdJq>ac?%iOiXVAfhv2k`4L48)Z_D~WL2r{JfLu@rZ_7-6ig#25ABEF}g#R0hm2y0o)xc*>Ar)1Tb z)8E0PmV2HC;QU(?Ok4#ud%8eUuD|P+Sv5YC>&aBuGBEMK#|%zdDDHwR$p8uj>fCKR zG0XNBEY~l>i1iNWHpA-(Jr(t0J2PhJ)0K}M;#jXP}7}a9KKm6M_o&(WwXMV3((A3%+qLg*g@`WPmiKL`17 zSh26LwJrpZ#`38gMOXzCjSX~-jrnA2x-*$c^{!vZuWkeFoTCO`BhoTxP1E}!nYLl5 z6mw1-UgynzYX(n_Me{8L98MmCfqjk;R5fG;CH8h^lr_dBT?CUZ4T63rWsSdV0XvC5 zUSt9|<+_jUEm@)97+-25|8k<(=NpU_f|#%bwuf=*#{R&PLWH&Prp7N~y1unayM||U zDXgFaQ5`?08wl2HaTQ*)qt+;A2+d0vQ^;@n9MUNl<$#9T8e%sq&4iUU z+hZeLCAAc@-9R9*xIKZlavN`ee2&Hd=@yW;A?qUpDyuU#=~Q)zK-<-0Em1=WiLnV{ z5(NVzG9e=qJ+wEbjBbDv7B>R*i7>Yb1f-)Z`Y8r!xk>{_4oHe*%wl_owTpNW)_(+V zG~OXtt85SC$_Wh#-OVYDKhOtZ!VORwcn&2SH>3Y)N@#N8~Hh`>N`B{p@) z{~K^E%VX;}NsZvC6>Csrm~x$pM(94Qx1zpgvkwC=nv(g#u)xO z8pJJ!oJPmJ9^f^MQ(!}_mwDSs_r|h!(M_Q`ULzGv5rSJEn7ZJ$3S5o>g#q!D|BkTw z{-HIh?ORgm_B8;Sr7Et(AA^4_+UV;$?m3Z!wRfTzSYPY4yU0snMF zI#ZGrfi-YWD-t}tUMYL7?*Hke@Bhu)+Te{1%H-^ILr%W(_S+r9UV7=gBi{YW+ux8& zuVwz9{p5{et%kt(Utvip6R)xT=0w=02|*LNyQ00W$4Q>&wKBw4K~{OfT4iIxMS$7F zp)kN&v0zaPUEhfz7H6v;!;FK4=LjX1qY< zbY-UTmVnL(h_W{T<*`XHf^el30a;4m(&cq>s-gqghKLAscC_GBcS$stHdl<7LF*72 zTUOHsNy2MOU~DJ1_u~^;;cY+`=6f@-G~=SQ(tI-&A0R4A0FII9*58bhRI$u}YjlA` zktW&mWxp-jv$T$-;Bj+sh*FgXRb2qP_heqeV!Mc2z5pw;N-Zl~)XCTq$6WjrGkvH%c_HnnFlj{Ml+eG#tE6cG3i4azKalp4( z1u79-J%ElNZRTagI0IsgE>rUhFd1OSn7#j-IEEMW4(sLMOD=fiaM+{d(EgJ*K@*Vv7l3^IRhg1S}(@g^SQxb z_EPQDk7!@XrVzJM6(zNoO%6lGR-47DvWh^`$BvYafe$1sjPbA7+}d-boivz40Dq8*`w4yjNtQ6Dz8VLN)E@!<1U|P-}(3cdpq99m#Jtp_M2k9JHvJkS z!@u?@v|uDEto*Q=8e8TaA|8DKgQ^quZ#B-aimXuy?CJ9CxkTi{tu{g2l6(j?Lfjx+ zp3iK#$0J!HQ*1xU*!Kf_pl3;q*DO_Np1@f|*3f)Nr0AMoF$F`cu+EW)N zsq$7r9`qiOB04dJ8l-SwZ>9Lf;Dci)TWnb?xUUtAvidA^!@Ob2!K2Kc>rtbyskFza zi)R%Yq+Yn5RLbf@cIu0MeUV)fqqA(KCd20g!S=19!&bPOs4jC-wW)jRD%dHyW2V`2 zKn16H3M>vr>-IQ8fLuYAQgcH8IF8?O>@~hJe_Pq%o9rg5Esg>&D;Z#xL* z=e|tK-DWyV&L?ayH7D|-S>Z_8io^%Gj%{H|R%^Namd*iFGDA!APy>@ZLupQ+qXnhE z5BSi*`KTEp2h76!g|E3KTS8v2fyTqBSbC8!LXU>!`Q^SaF1*aZQZus=R;T)$TWNBg zykGlJkn23{tBl;Jcr|v1bA~(yd}9Maq7wZ-W@UpA@+Rz*L;@e6OGCPdagdDQ+6FA(`u=Q#5sf<~{$tc$z{FDV zFH0n$5IHmLwoYaCxCYxp9pEnc;t}-mzH%+GcdB4bwgo}sKGTU2UB1%op^}b%P`)Cd%5n@gnq2g)mO7AU*-jvsZpYc4#t*;uMSSN^Uzy)P zRmWx@+i%Za3V5*t(M!kW^Y4fJJUG7g&m7xd^_BdIE3KnqNNUEcbQ5K0dzAkfjCkON zQ&UiHm#7Y22o!z4+gFKgBnr-8Nz886rLKLuvaA2szM0(u5TI#DlqOzW&UIqK^*{!S z%D{dV9S`#(W?8669mn=E280-}&A2VFNOZ*|Vi=2-Xiamds1TC117{GGcNS>f9nO?# z3^h*UV~G%nTt8?hUrDbZ3Er<-wFwWv89^WzY(Wh_X-TOsf(mPw?cBZ?e*;bq3NN{k zK!zeQ#lRS=tJ1RuaH)$^Py>rmMUF%T>2RQcQ9<)@&RbJ{m@(1Nm0YykRa3Yvm^wO>`)k_|3?isfOW*K zi;%FpqbV?!&Vc>lJ#|!J{vWY>YAHL-N#rXgC#&5xsEd;DLdgPyS4*0;+g*KQJrd>I zhjL`>ceWU5rLs=$P_W$5JOg7p(g+#hV96B7oB08)yPr7aSaM91Yd&Ef+g*`gD`-^-jL`-TdHbMoL^-Xh?)V2-M zdfMtiQsRPRp`nzRj9_VNUcv-7Yw5{M%uR-5=h&7k2Fgf0i=JXB+CmPQTOYA@+TGEZ zI+3~ForvGby~J8xRfvE_GcB$j z!2pbE>yvq%eKU3w!D>{|d$s+v?7D85S`%lZ<~Cj+#RWIl&BI843kpb>mVmzKz$P(L z=IiT&M8$|GmyafkMU|YOz#7>t@E{5hUn49|Fi@{P5m0)GevW~y_u+~4BSV+V0&#_} z1rm&N?qvqKuw7fCjdERwFME|-NP&v*yY;o^0r_Cev)qRz>P{5lcy1KAizdh5OE!VO z2ix_zwEQX+Of!7n1DKQ{Nr#T44&5U=OBVlWEG5+|qDkEmA+3JONR-LU{@D^qcB#@Y_;Tj9}<$9|@O)Eh?%~)xRs`%L$cR_(lC2gfgf(yz5 z_<<;u3Rtrjbo4AgLHkHv%k-w`!fkSih(jl1LK})iL9Yx3vV%5f+8CUQ@qgMI{oj=x zy^}3uJInr_^Is> zVMMjUZ=TF}F#fO3bU@j?JIg(e_&EKI8gf$oBdzVthS=EnXd-$XlL!>;_4?mDPS|`< zU%~P5Q!%l?y0*Ku_flPB zW$ELfpUf5&p3Htd3$}f$Y&(PIph;=#M?LlsKTMt(;dZW&awL)ztqmwCeHceKYtw`e(hDY zOdx9@;=v^nz~KQRdK~m0nG)nwa*S>0D=~wr<^Le7=JP3@7?JKyaXsoZLSbT!LUNf+ z`mg#uPES;^cxYSSX%(-CsZzd5-Q{88!6BTAZ8V(qYW2X9*>Ys;*=DgVTp(@xa;MrG ztV*V59J>>2{vAd}-eiQU2ay4yC9)nq1<0j>xB3b1rF@uG$Q0NPY2A!@riu-PQ%niU zqK`#zgRaJOI+8&zMZ=)2l(ZxS3!f3p2+X0ITelNh57m3p=`ldGs)fNi3FU*UTnpSK zdz8NH+70s-MF*Ct6I!esyYELu4#koohm;EEQ)M?;1 zQw)*-HC$yOC}Z`eq|vEh$}XjgqzY)1sScMt^*tV$x9~oe>!D|~tX|2el3Qa!Rs}Ce zS~URatTe1LS@v7r$9VaFj{k?uH6~F=++Bnd3a;MNI+qo78)vrWyAfU9V~g1RgtuBZ z(QdMR;A-yDI3c697tWQhoD~Z>4y~rfeo6-Q9FM>lHHPb-*&fn*=kh@+o`qHLMm6j) z&B{uKOOqQhNm{g7dU&^EDAyA|yU+9tMfV_%qta2HCz<~@d4L4R9FUxFj@N$mxwB=T z==YEox@mibL{Hi30gD{mF?c$a!*bbV&dRXlq=AkWxT&<{wy5yhSWOpXpn>c*%KU%& z4jDt$Xt6se(<}?rVcv9vts;b4LaRM;RdyoNP_4!JokU!Rs7PvbI7HS!gDv4RiL9rtH!nO=eKT&17?@bA8e zn^dJIPi`_F{TBAyO*s)8Yv8#uo%vcZyke}L=T~h9q8(t*)1UAD>8t$y_mC}@;U4UX zp*uval>2b$q?2tNcdW;8B8eWqlObU&41PJ)_{A5LS!qQff@v64=@LT1SRE+ZB5P`M zscKd3SHS1GK$U8rcz5k02w)c$pApuQ~h(U{Wp2eLCM7IEu{I-_vmO5B~+zc(0$F^ z%d&D4b1*sJlCa3a1Q&)jc{BF}wCV+0>?jc^QjUiIRuIk5(xlz# zzzHJ!<){gQB(tzb0|4{Sa_Lja(=4i`kNn^4FlX4&gxbl-emtRw&V{|}ZT10sCcc&r zoP}prGI#$s|B5b+9%d7ALyW7PPu>BU#K{+WlPw_ znUq2RWDZ-wJO?8*5S)Ke4qQqTqwx&c<;*Kx{oCXrCmm4gPwlM&0PAv*j%_^`g!AIh zU3qoaFe@PTQ*-kF!F1Y!e6B(`vvx-4^WJs{7x`6%ItmeYDm8ciKTmQt;$|y{fr?CB zfj`XcjBpEu(~{U=x}kfoW~!3fmDhu=72M)f=5lOV)M{77_~^jt=t$XG(N?=r09I1{ zI4aiC@w%9a{x92R9L9xC>!+!ZWu|8oVfGz*#9CwW+E3XZ+y8&|<1;?_UB@j}mD#4+ ze(^W|FQ5IlpKr(cx%a;8oag7~v%aosOHq3Fbu3l-#pO<8(98xTi#yG zf(H~Lb>kyq(cKMXJC#xg4l{v^D&5F1gOV+yR>&_+`WWok0sT(? zCK-haB^B~RT2pOi$Vmo#M9aaJHw5j2V&oA)l2lvfwN0&vIgE6Dyh{qhC}w86bVA5D z^U*Jq13xn$?+W0HfSs2^xk(wU(_YT z&K-K)|Gm+ z(m73IpA6gdE-`1yl`L2J8jm77_QGhzhCjX%mqqd=d(?l>$NJ5laF+5l*bZhA$s*wr z;aL$?TY}sie?}i8?iBf{+jxs`Ux!SAVYlyH+O}(P1J@L(*-(3k_mYnjagK6uqv2RX z$stm}w&Q5x9I!I^u0ECCQcBj-%s(vd%|K`QE^#v$z}kA`=|9oeU;WGX*WVlpz!#!` z3;{ojcjUrxgp|IwY;3$~DgA87?Hx3E^Qz*h!kL07#X`>6Zh{|Dkj_Xa0933QZySa@ zSj^-GFeFE{$669pws`R7g&xRKYu49Mc%d9wDk1_|D|6e3CIfuwJ8p>bT(A(-wCAKPJk-P zvtnziXg|}Hd~*DMW=$t;|BsyN)BL9kmWZ1;9k=px-1GwwvpdSUY~Epm(>PF+%%P^A zjM?uywUjKfi3++r5rEfV3{=ol5o5vtfg~MlQWv!)CA_w~v^cmeW2Tmh!a>7JR>MO1 z%rUd1<6|OJ>ki}n7)&l>kMvOZm|z)9?#TL8IfWc^1{C%W2LXFKoI#uF5sMj4AeZm| z&3&2wpU&&A{`$JrRL<_XV(g1i%r*663sH!6Eo+H8LwOWWyW$1yQvA?BWqBOEaw!+d zO}o=FgQMaWkYWdl+A=-{T0kQ$jQW@HbGESqPu#NkeD1CHpjT-@KUBOTfXnZ!*k*$z zX%mBe9;$#pC+}Sm6ZiZO{sr*H^I#&-r4nJl_q3eJoo>x zx&AKoC#@Z{Z8M`OOK`4$;5ik8w+yr0{ti7Q|JTrJNP_UO`z~UoB{qzhI)5z6qGVg6rm>uKNZ zYBH%-V?Mh@p_E1WTI?*tR~umF-T$>36^7X@o^by!Nm4eO=C-7p=BH=HRPxYM%lO$2 zuMl25(68EsOa&4Ur*5s3$1^M|&vYZ~R0YN)R$}od33TV(Kyl!;Nt9Dbx9{ku3{5|S zTYckz8DEa7eU4K*tz2;$$V^y0}MjR!1eRmpO3|A>uPvpjI8j!ZhE4l81^llARf zf0bcC>;oVbQe3Gv@7h3lR(;U%y%sGZrHbnM zN(3FHpiR#dzGWSrEY~>G$a53=R&`SK)FT2NTXvFTYXx$dRiBOnng#B zDGYhiSXwTf{hBD$;~Pdk2xD?t8*Y z7*@Jak2)ZMzrLS`HB?TyRZcf?U+wna^)#wIEH<))@(I{f-4-Az2&&c8q_&PkApdgZYkWC}XQ4u?#9)ZL*uy{mr7?d=Y+CU`%ptFR| zel+f!`Lding_;UaP@^31pcfK060GTH4UtzEcdiQH^#3#u9K{HD{l#VCT`k3T1lNq* zL)Q=zlW*v6@tAc1LXfD{7WPbdHRpBRCq!u2ec0$p3ewb5B3BlaNnYb6V9Xf`^^+5) z9-an&lsFmbVW;Vp$_m{IY4im$!yy>_)uT}YfVUNk(Lv7*)#Aztd_jWcK`-VrE2U%h zU=|kUqv9T{$M*xeKOyvryI(TfR=xt+|3Bcaxy?X-&Hp28>3Lgr zzxn+$l6&`mjYolZTgJaBEN^X#7zDRQrS=5Ke#!!WgjM}9m$Dh!XW9DA|7$0yo{(&> zgkDr3Nnm+IdIc^Y_`iag`@hRATr4c7(EsDHkr&+v{!g1p22bc-@(IO~2+L;f{{N_> zN8c8G|O^@Rk9WkO~sA?)PB*A#x(ev*4!O2HHV&bOfp2-7V!`d*kz z_t-y?FwtXmeAE?-xbj1)h<_!$b^nQwtzinrBQJ9uo?d9Zc&Uizd{BFrc3* z)jB*3$p!tU%K?UIQ65EL>P=7s$aey%$W$Aq*pK~&PFYpYU<5ZqX5yYR9){DJJ>r3J zrwxVz&%N@Bp8`YN@e43m0?%L=U48KuKo2;8f@JxZUS()+A{JsQ;lV8xF(A}%$yI~a zfHImU32bz%0n^%+g9gz1iw0w?Y-Mf%rgc-mg*&-O++xbM{*-6&6V%J5vWqxEq$Oc0 zUCk)A5lS@B1P4>IzeO*pK3Fui>QaNM`ghXDEd*6YHd1qt9`8%R_5vaIn6TcTXA8Yr zMayMit~Ff1o7n?P6ZgZ!o;$|3QBaCaT1;86qw>h-jE9&X#BdX0+8ES7{eOh8`M>XF zrJV28c3F3M`>?fVPIapEO1%V4w$D(x5`%+`&;J~QDv_talI2qfP4N8A%e6C=B4I+%r{>4*4!OBjND(FzmhGV&-rYeeEs|7%o=w_9W z^Yw|-Z2-$I>O-z9(Bkvv`p)4>2*}?|&bUnlo>g=!;mkpXI;zqoP6pjdvV8#kH6dg3 z$pwO=RH{Vcs~YPU<gBT=m zbac1xbK7IOv}hx-U~A)FZ6Iuu?9uhks5@#ZFOS=PQ<@*3$bLu``Fv0NKpki8Z8!D= ze1VCDGMJM|uE*3Ctzk^wf20H;dQ%_iFZbP+uBt=fy#J3nqP)~zBCwjjoiIAUL?OY> zTe~E=mw<2l-vcw}mn6o`&lCQj<-`#HCvPJE9_pgEz9)GBmGBdquNgKgAl#cQU-E`E zIq_lNe6RiD6)F5_M5M0*P5ttxKjtq={ZVxg_vTMZp>c9xM(xkgBAGFMguJ8RA6>aU z?;cSiNf8^xu+?}n()96d2&TS$2^8(4I!2&zTm)(t+d|~7ok@JVM9TP1F^_k+KoJ7X z;l~`6`R2zLb6P-gXhg+y1)E8F=CeM#Vf(kvZiG>fpdxfQ6AxB*fHD`aFS$gA_Jv=I zsWt%4nN`ZMYyNoOmkn=4hiap2m^ohaina1sV@h_tMpeESOxqs1S^PWsCG9<&L-;eg zM5E;#bh+5UJO$-?37lR(A;Sv6apO*w6Uag6y$&X!*VGdL3BJ|k^qW4M3H0d9C?&4t zI*#tDelXY)<2D#{G7!p0_NGLtW!I!Jksq&VetU_@6a=xkrGvv9^FVkMpilvvAY>o< z-hC&DkN7VXn{|d+&XW%$k!Spq7@J5iSyaS7c}5O93Q+pML1w~drylVyUti5Nxp>w2 z95Sk9MKYp)9KVfl4AtBMtHb8b8jEh|vJNA;2rrvTZyjAV;y%~I6Odp|TTEFc!*eU= zq()8pidQ_#i z`XK$6SH<~XgYQSfn72l53f9t~ZavjTQNlIdw~3f{%s2i5hqbb6TqIGiRiV#Y@&2ZH zf#etwFX3(Titqj3>t(y|fR|!=xyVb~bcb+QyC;<&y(j%KcToTI-+s5g1;#NiV&=5= z5SQKTa*41SU4Xv#38S4SA5zzpL4|u@lcZdMFmr#|s)Eqkc9m5{1u0_yb*ZRoOn@Ok zUio~AmBoxwDV`sRqjcUbWMZ#ckcd~&|IU-EgZRW3N6K(S zQnFFCNL}@`i-tPKAk8|LUCd&Uz;a=oBjIwhHKzQM{jmG(my+PB^VLz#v_Pclk-(+6 zK8XkX>d16Yp_i2C8|o^cGmDzY!GGH}?j)FAPoEQus2NnPByo(v6LsWrE@ zmT(Ae^OY~7w3vwh2^*#kpT#q6yP4?dcH=GLVmcGP2YBalnUH?D}6B|8+iwNO$|%8nj8kH>x;JOfvnc8Z9Tf zD;5u2XM72(=NNa_&oW0_f~W=;Lm5W{MpoQLa2$cX01aZME|j`Q979D%V=w9^emai2 zqB!?~&MhOJeHuJ23uwuZVoYQ)_j`)~y1c-&7reMBX5&0`BF{;SR0+y1X=eJIu>XpIs+!J;jTykwY451}0nwW(~LI+^_c+ zWMdzGqjUX2V_?wu={}>B=mo;{iy!qj`Tq!aVEFtj)45)kp>g29@AI$21Of!a`6b_H z9=!LNzO{R;@7)`$6+;{c)?wR2@7CQ9;YT9?90&dcfjS6;K}UN-a?u}ppm)MiBT)ij zNUop(0?M3Y4ggq6n*N|-ICwhqR6o*YXyGGCq+H|V`~l27bgS?|!meWvXtQE{G}Go( zO(rrmDxQR6EE|(E$XK0LrSPgH4h<=zLes;ancz4td8ZQks?7dFV(uu`8Fi2mwJx{> zrP2W+Ye6i8S}a|thdjF&TC&>4NW+%!E&0Fn-qdzjI$vGKIoq0|~% z^6$7+M;8=QgqE$3DJ$7}3{s27EA#3cG@{ZU>skQ8^iiBc>7J zoL$h2Si8wpM|L>eXpZUIWelz_1Fd)6^qbFm@mM{t%Aq zZwNEtXPv`pnYRqrk$7V6Otwr9*#&BiQ6de(^Nqi&S~u)hp_dD3+Hp$RpmTjo5VJct z)O)ax^{G)WVdu9E)%hM2HtmAj{@A6I&-KK|+ZNq~3R;j7`|S!H4bLlL;l_VtEisZ? zKhEV{da6}!@j79Xf&QC87sNnzoVZ|NQi4nQ#ab-$>D1Ao;1!B28YfH`#DZoE9Mc)X z;QGRScivXXq3hGa+(-PEbZVDwP{Ldr)W38RJ|gucN$w z{J!h3F476E!y^Q_X4-yr@+eSn+I|Kw7zgvcTAW{KB1}|Hfw%YG*8P&!>eQ)pjA?^;_)cwq(t48eF z7&4R#9dthE)P1QU-Q)0f*@}`$6Pa=jQ8oim4MFgOI2um;Bkfb=7kml9PV3v?u7nAvyL$%fp; zt5aXH&xo+sap*Q>?|(YT!;p9?yAz==zM3d-N@;~Eq!%#J)VZ#Ez9N2%jsCRvKzCIZ z9whH$!P)^fH_6B|6z41X_oIAj4dr4$b-;*xP3RUnQRcH9`l*mD#6dc0gszYHDU+un-|4PsIN!jH0FQO0E|Q8_>sffnuk=u}SL0 z6#3T?{|`SX&CQ|9_%V8s$S+MB!dM?X_ubb+qGkxw;h5tQjQSt_fpKfu zDoO;l%;vFL*&hx_zpDTp7ITO1;~VEiD##By%Nry@oeNrS(ZdPw!xXR)7B4l>hWPZF zWZvYXF2X6JrPYdSfc#jE$e~E7e8A@t!&|Dd8}D^~_F($yQRDXz*hr}F`-AE}otW$W z`Z_E)anDoQ7kQ*@$1Yrd-JrNB_~xx^s~1Q94n}hm81CPh>PLwJJsD_6iUL-&c!zp0 z2?2JB(iM?z>ErgTHS=P+$i_{a3=-1F5~aKIT}WS2&-=rBKRxbd@E-dz5;hBt#fYD5 zyS0DJKY99Z{_ML}47~*K?s`hqd}llKquAc0T1sMUU+4Y3qHAo50B^)YMxr$E_NN8JCepj}icaR9U5s;nB zY6E`D;fj;a3&lOmi3A|+F#1F4}P6GE-ZAEvdRO~cuySACo1&a-V zWn0FlA9+fU+zI6<$?@`Ao-5-PiNRCq7-x>D7QDF^GvBVqs%xH_s>euN>k@#9B4>@! zK@?aC0KJ`l6>C#x9(g?atM^Ghn`tMO-RV$BWt+a0${nax(f6m)@!5wd_0EYK4g17^6Z`yCvn;% z{yiQ$hCau-ybno;Df--SPlV>c-CUx+dBrTWwI`ZDfa>ZK_nvfq>O{lQ+Y@2PIcb}k zigF{is6_n#fa($dZ)3fbgEqYG7Y*uEABLxvKEop3?1^<@Jk%reg^}rUj3}Pz@m6B2 znkmmgT#)?z`bCHCeGc<%@i%r#CO(fHT~UGD3oEeyFp3$j6ZL_PBHx3HH*yG*0d<7b zs7yqhM^VYt&Y9LRH^45m>tCu>?&B^hi(VO|RFjoM4L?(~?vU%mdCOyg7V4f|g-`Ai z_U?f_zxdgY_lEs{{I7pf-0G3*%{xX2un)Li9`OAoHNo!cm<1*G^Q7$x0I z3g1!>Kg;-^W+w7&fC}jML-7wW@3&xU?^$G0EXUZebIRFAW6=kiKBP;xWtk^qaugTO zn850RaijA>ZutO|Ggaa1c9WK682|I|2euF~j>9TqrYmgPz?(C+=qnMQd;#XVrIXew zknH-bH`>lanWI&s<-u>pbI~j0Gc6fAAZZ8O(;fe`?Mv8ApNirwZ1rC6RlF*A%HM7A zkIXWBujivPQ0F$})3);w{}pd|=4rEp@yGDa5+Qs4^KM|g;K%3y8Z;ONb z_m;-Sdg+VJFd=MErb`cLr@lcaqiQ2`SRZL*rB`D+;Xr zXOsv>_Nk8~c{Fi|EH*j$g%Tg9xP5<>vBhCyGsWoCa?!TspbH7l2^$A4bi0_`9P@g_ ze_0Q=g9CHhRk=L&%lMCuO{ud+wa{VOxJ*7hJOUK7>9>be_TzdyCJtmFQcp&cx(`oc z0YJCQ!hTc~3<_#kV=9S!9dgmPYkzw^(s3O*A>~KRh9A~AUJJt+R)^L$TU14> zPsn%R8{ds#TW%i3_N&jrK;DA5EY5{Iwa3h`Sb_@g#A{vToFs^wUZy8SYKFiz&&I48 zz6*SO``~NH^~)eX!j|4|G10IUg$A}1!1BdyI5>(P)0(as4C{!L^1idd-4{Z{x`>#- zd4~MAKd)k!V0LdNBKns<`@=^}|8qZn_xG>*`G5U={o-fe&(DAQegFJhm-pAd`hESw zZ?P)q;*5IwVLO-N7EpSmXA44JtwOAtR*a%-I^du@KXGH!Z1`pqcKz$SbH?aC43o$( z^p+V9y(v+>NW?^bL_ljo0}~4ajJMp1vQ`8UhNlwB$(G%KxK!H#3i4i_OS&@B>m%|i z5`ak2E$H+ChCZuFGR6|NEBjS=r(w^;UlZWej|9&Y&7kc^j?gO_xFct=dH@&{O;l>k zzVs>8(#|CA_%>|bs?gKQmCcfsYFwNMOdjB_ged@SgKY`K1+==XJVaEG-I=6(AO!a1 zBdO^|H>-$loX_)^0%^vH&K1p60a}r>lu-KcC9NCujI~Thr|cYlh4N?ZahX-$e|Yy6 zTY}{O)rTJm%&n7fkKksb&jebE{}(_$3QEz8c2BTMwxGR3!oX5;aspj9xsR1I>PR{pqzn^F>m=%6tDn zg=?Z!g)n+3!_6V4aYOzBIq9>-SvN642esU55q_&PT9qsDI@w*_DU}%^3NhcRU|*Nr z)%VA*@g>lWjdJnW1mLNE?hfj^6Z%)*x}rb-))oEDx99)uZ+<_&`S0I1iT4E0c)!Ii zC4I5mI9*5{uNSIW!~@qVyGg&WQSEWyBJdKBO@3Mo{>NF$(p)u-??ve4UDyj)u6gbc)1dNNvvA%Gnx!~?oWkR-}&Lb(6lXX>vUGG=d zsB1zN>gq?Tqr7oQ0`KTEXAL5JiG&ik!{4G?Vg0l6@{+5?ZGkrsOH-8abp;Zm=s7w) zW2%`6$R|f9DZ3b*moC&eT%e3(1uyhk0{Bz!hfhq{`?Q-cRbnkq|FEr99F}COBNr&8 z3?LRZ_WHw*%1xUQ7287^m*5v;hs`ajiSaLf0YrZp(8J58?4HXccuL$Cbsq7rxET3w zT%9qW!5M)7p`K^_E8a2ZNGC7lF^1th;@_aKO&0K~U^|_i+~pi+oW4L5Y&FFHp6hp^ zo(W%WY6HpTGVLSu8FIUBBZ_Mb!3uLY492U<)(uch;`8iODqV!b7((aHe<50B3rv9 z(vK7T&}r&GfF|B>WgWW7Ib|SPO&~r*1pr*56Z(FMJ*jQ^5BqYs3Po)WhVfH@r*G#L zKw(=))Q)|pidWl9KIttjdl8hQzfR{1oY-#uJ$AQciQe)m7;8zFr4zxtD_{(nB+cMEv$cm2grzptPF?EAYz`kP<< zp?>@K1OFzD-XK8kuXK8)>uA)4-|Jf4ya4J=a)vk=Bt~Kt1MDS&C9DK(42P(w%ZXnv zC{c$gkrJ}*4l1#ue0fxkTNTN<4njbq#U8QDAajN^JFat7+kV|AEXG6S;gR5&d{zCP z5hhvS{hO>?mj_FrMm@qPl8YhZMObbe03|gAt5C0HDHFcRYW~3GW5vhnjS;N`E_CPb zzOO*43GPXly@qFQ^9Jh}I}=oUDZ!;Q0VEcQ|L!k^$QE3DjQi*a(hF91nN;fr9qN44 zEuG^sTe;Ct53FBV(cn*}i}~0&d5~%5nW~&C2UQ1u&JLOnsQTi(jR}q6H#sS$1}4HU z-K`Jt<=>&oeKHSG?055wOH{vUOXiB0i8yT6Rzl-@&-fQk!6*|>u%~)WQRsBMuBzPL zVx`dLy5(w-luTuBz@%%JD6(D?S6Yr@XtO8_<3_f!K^`_edw~`b&$Do z!-u_^uv=nJyuD+(aARsQYFh=$SC2oMy37`a48L6TOO$E^e@ zjV@pWSQLHHaVf&VD_@i0!f92=QRdr`)3#}&zAwUy6h_m<>?19DxS@)RP6s9sOQ3rV z+^%{rn2z1_2#0dy^y zMh=lEPt+ghzkyAeeOxhyue`3igIfO=kKg@v>X+Zh=iM3o))9SoMt}XSEBX(*x2l=< zJwM87Ds@mOHWuV24R>nba{Z+OY_xzTTf}#?v0(c-Avtj1eq8SzAS;ahT>+?sMqs}J zX_eb(Kdoo_%yRc7eujsV0WbfAv2-0ms1I=KX*(<*nTv=hWZ}+91*FZhauC4L7Y}s- zlrUE*EG#TH#aGg|tR`@C5}5k(!L&H`T|7b8!g;#X!8&?ei&f9A0mb?tI0=5x#{>b6 zH50!TIdvSi&fRnd;JVV}4nikZiBSaDE8}E0M&*F?nrTfqqxmY5@UCCc!Dc7M z_T2qUY)PFsU_0wQNOSv&(8Qv`$3CrZ;&^uQwKDoYnK;gJVR~S3tZ&JbXSD670u#oC zQ4TaI@-s@3+`x0`2lsl{z&h8TZKH8J+#Vn4wzq71x%3uj( ztEqok|J38XKlHEu;vegmfBTwW|LXVs%Ws7A-6>TbsUcD5s;Fx>hjr!;Abvb(!~r$i zAc5dQpbp?~W9>SBbVT$xz^C%FkplyY@25(#_r@4fHC332CxQ_;3NLr%+-x?b+#$-G zng?w-$2o+-jtr8bd_fC39j9dLd zgsu1wC_Gjce%y~Fi!ep_`1m=8k{<87wrgGMvGcLAl0O~iS7qm~{gK`PR9ALWk9cX~ zQWRxOnd|>-hfOX6ZKvw9?v-Op$q=N4v-2Q-5l4><%TC!B@lTgHucAyDy{^%Atcd?N zYO4#**mSM#o*^a6LVEA5yOSmc<=NgxZ7|%OarO`QYr-`y8Je=4t zwmMldiG`IY1RT6!<^>hySH3`uE(i z!NdYNe`SjEn62~V@0C|Xnb`wWPiON(rN5w+uL7Ry=!A_sG4cBROw%Uz%&`z7-}8_! z68Pi%i0GJi^?K}!Y*Pz5ycR;k8b*8n$@BG;bVTd#>p-gKNE@MFALa-8GcTbk3hA} zbVyut5;UlDZ z&EfvB6v}_y->6Ou>A;*qw4^MtlKP_iD*t)JGzU7`T>t0s4|KxQKCmYX@=W+;yulbI z8)a4MV1<(9XZ&y4NyQ;3PX>0x|2Bkro-Q0|S>7qyq z5&zdnulKQ+{B;s1--jSJrLGDoY@&}<@hHY%(hXzeJTdY)i2Z5;S z|M;sVFaaa}O%^%=X*^{)SsyC#ypI0|=6t~Cc|P4(2cZBd{J&cF#HJjtGhXg-B#1P5 zV$V1EUg#FH$#~q-YBfN9sx!xt#&?4fsH=c?Xae0BKEii>>O#ty+Q+fdeC;>h(R!LmeBIY5DBjQi-M{~%`Rl*<{reVA?w8$vUmZ4C!BB*hHXpx0`i3M& zc2uR^)sy)BkptXC)|U`^RRRU508%|GlDWeP2%D-b>E)J>=W6(#DCbd`!2*}{{yzTt z3ESLqlvoQQ0Q*JW!dzw90?fIVsUR#iD23B=r4D$6Shzqtt|9>hbSkcoWaA?PZdi|c z@+}u8I~bJzRlMBx)#b1qyKe~^+O*Km<0fC`dh7XND{kvC?+d?^e3wOl>{+j+C(-on z)jnB_6HeI>(udYE(JgK_M_Mso1mu1!6~=($P}v-*1hB=zV9J(3tn%8=ugCNL)F5!wGCXJ@H2+&xe;8_r~k9!ytYn=UCALuW$H2-!JYO^=h1e&3h#<;3=x+cz5qR`0RDM>#LEtcqE?K0Bx3}9 z`Enk&Qj8W3=TJc>$V5F{O$XTjm?Rqi*IK7=10p#<(;hQ>RTO@_ikxsB|AV(%Vcf9Q z2hh&?!bG?RzOHoWu)dG^^Z)dHzsV`vpek zAKrvKIrZyh|8zqfp3(c|&0}i-5t*Di>GEU>$|mG@iOqM6bC z?>*U$+jNp)mo{7pi;EC{Adw!ttQZ@lNs!IU9=IBz-UiU2U5CgJjH7YI{SxYD;Zp{m zoCM11(Qs`{Dng4dt!zhuB(l>^$Vn?`%gYnI!)R4On8qDWch5t3R86gUH~^%ZuTojNgc?d;GUGQ)tkx3OjI-B#{{MhG97ZW z7Z^}yd>?^pP6QcdazF~FKhV3gW|i4$3)3l==XjNuaf})|=$OR1`Kr?BKrY4e$&dBg zo#@-{)6SnQKP_{weu~EUhw_Fk0VVk;a+?8OiDlBB<6k(+pz5f>rydB>baHgCR@fj3 z!ZpT!(WiDmUV%`GvYIFz0(Hl}=ZNA<2gpLL)^WxB0o$w++xQw2dXZ527U zh8U9-$)C1Xo~%Oa7_&@}X~y5}7_EkzM6ogz|I!qDj^o;M4iz>)u6(`~!{M93+1!L7 zOGq8t&cs?jVq3@a@yckI289)Mw4Yj1ljp3QVq%jm3W8Y$nH*8weNps#k<_T9t^3sR zl)1nq_g_M~+Z~-lE)c7U{C}?X+c7_Z)>Y@NZC}X$o6bfYVFb@0hyIQGv+ez||7{ob zmKf(>juDnGTFiD`?+-ynueQcl(PX6PvCQ7L7IUrckiPeldus~|b6X*suDDR|wKv~Q z-=P_=ukyc}I{54wlH3cI_oviXVxe%KbP}PF$b7T}&nO~sD5%f0{pn4=OabPBZzRn3t z&Z^4^EqNs+2xf&EpJNoqxWX88hheK~7(Fo*)(V380s&>zV|~Meo!yJ1;n{wthf4Hv zumWRB38_dK6km(vu-t zE>XpcK@-xKJ7xDczy+xhcD-N2Uz?5Ic#sGol_9LBqNro;p^k)CU5Dyawgka6%aZi1 zb$37fd0fzq-6&H}R~>bmz@n7|GyajNn_6^OQZJ}ehIzpq#54X{$-kZex(5#N$v|Di z!il_bCQ^C)OYy&!FalMkw0>?)LGYF1Zb{1;?)F_4Se{gcRMSuglz^Mi4$E+eVP(az zp)nEvh$#r;f_?KR0%ayv=UJ&r>3up@dyUsh-E~-D+X(X2zTiBg^#rsReMjMTeaNyt z+tns)#R6g9KrIJSt}mKlwRv@hO_Jj^W&%lm)^u;5V92yxvG*2BZ`mZ4(7^d z3`0G@1+32cz`S-*h?**bov=-=Mnbw|uZ7h6)2+GIg3nx|TYH55-!r{`y{W)vH=v`C z9=Po*>B)W)T=`xvzB@&{?Gjg9Jh^V24eCXb@(OZaNB+MGSf-7Vr>CBdE5Ly4lrjiM z2?y=`WJ~X(UvqTPIK2lhcM*@NThOYo5Qt5jem4TtEM`deb1_XpF%C0qYYpeJ(@m(V z{j539ks#*Omvj}wq|O))0&C4h+|2IigeeoeY`jK&MSf($9y0Orqj*bK?A@gO1oGT( zQcghGYiMhLKr#YJ69{*0i`{Z%~@ zp5q3t6-iDWw9T^WJVm5_!of1&J}2SweKh>t_5YFJvrSZqvST=^uO3sU{H3_!5RQT! zx7m4Q5VZCN4%2(YKQZCHf&Ug7*bmV#G#w7;KJ}Jfcs70LlRUC< zdNfc*owJTGo8$a_EdRPRe;>(`q_SbRkJ~AAMLI<)F@Ddh1D_o?_s~IlmPn4iZx)Ev zZr6pUcjP}gcJEyrwu_09q&tCTr5z}U>&npa%(?cKFBKc|gKp z1q7Ltzt7ty)D_j(NDTA+HzAeB?21Jw^Qr`h_OO%M)ou{dANv*?VO9G}VH2Iy686s( z+XjRt-9-1ilDWSUR#<2k`Q?4wtHN7u z(seMaI-|RtL$D}iYjH*-<6{z_*4{3{2`HuM=%iMZY6OU)lk^yHU(zAwSz6On3OZDi z(O+|{Y1X4K*{DO*y27VKF{Oc#fY~{9MGMi9fa@bEvNP&{39tk+3$2_=aylE*7VQ(L zNI+w?OOKk{AI3CD?&pNZCASVVZdWMsmt#JD;wJ=wIbv$1#@y`ys8T_K)w%s9UF5?F zf6vYMFC}#6TPLN=HX`Q8$j8{Ru(Bg4U5FSCuj!Gr5&HU+b}vmfe5_4KymrdPw@{FL zK+>d&QbI0$9+!kaR@4#y`t1+;YH|}{%ucnWIUT2?*y#|E5a!oD;gG6>y3CRADRoO$ z`F$a#h+u62!0h{6cb~e$^BEER6$6**2N%*fEd8hxyV7Tj#c~0#-3eI{#C7O}%Q^gS z7s45cc^zz&dPxKr#Wk^Kf@FuN0`ER8L9p!2z5AT|8yA3Z8>~D>&)wN@p(gQWh3FE4 zdxSIzNg+J?x zqK!!JZOx4tzgI;YUQ{Xb(JHBfI5Hjf{xmE=^xb{DnoT?g%N_p*0iM0gju_VQ-Z)s$ zkBvouUOf$$2)i_GfEa4=irp6A{106*)ffnxvSIyLxXEj^!7RE3t71>W#2W}+>>593~(>f=}3RIOrojGw?tHvZ=xe9u=n2I})#oc?fbO z7G@nNI45rDd{X9Hp$wXJUdXz1bnw}8pmldQ>XHm zEKp}k1aHwVMo|YLSUsQJ8L;u1r&Z;*SNRgQ0dRrp3tu_NN{25NbqwOdAUO+?7O)&G z2_n03vk20C)TFf}9?WB#ixb_iHaj}BaOguiRhG?EHe8x~9x@LX%Ip}vKKAj|MXs&o z!|N&?y3W;RH-6(k36A51yeS#KR^dyF(Zw1^$UFkyGOlddIpwr8I(=D*C5qix?mXLk z9Vu*L{kbk(wK=7mi|QtCuA!9=GRipU1EO542UG2O7IXAPBs+@L0SNL4#XllkB`6EQ zBDg>Wh>M7SICg1os@I#VSMy@m_EN@7g?_}pG!%JYp_gR z;ZS4jSi5Q_#D7=BF_Y#a{ug{_CS#v6==@S$$XgKYq&vA07N$W(_Hd}$X42YxPVl$A z3cag#e2AMU^wzOD5{Ag6wZ#Qwaf8?QrERda)$g^ggMo9+2b{eL+CK#$yNw}+GXHdC#nuQ1vVq1I&M(0va zPrvB3;D8XyP`lpu7nLsh0Dk*EbJ4`Ob8x5~a8!tbl-}D9)^;;3Uof6*o_US;&l&(O zH!G$RM2n1s$PFR=eqYAgh@9OWG-?)pUST%OqBA^)9s=7{sK}~7d z)*o?-e#Rg`;F;X+d3DTF(FK@zJ#};fEISv98awKEi%%h@w1Q&jdQ^=+*GNcPHe+)*tK*b0-07 zQ6j|Hdv9Ezq{pUw9dcrcX9up7@0EjWXC+{&)DG=VnZvN_cwtPNJUSNLPY;g*Dc*Z_Yw{!iJtuKr>&WYj6A z3trUS*cpc!{jizt>C+^=QIAXK8D%jymk>%AI=~UIM>hP>%Q$+od9dOBO$fpAHLs*mhzPV zp?Dd6f2Q-A@YzXqPakcFb>K5&3tURL30+SRv9{0NPhTAcMX40T4ZHwgZ@J#@T-0Ii z5p$q&ePm@Xt~BGn(RUEq^*uhSUflk*hkH@+9iMCUADU#Ba_xST*m3?h4;@m>u=uz0 zR^UDuLTCMlV@VN&KO^#x?&i3WC*0R#f+)#J;9BgmVGOhdWX<$RH*JQ=Kp&yUlCRl8 z(526Dpo~mKDWImoYXZ*kn8@X772K8fJF=a<%8Q7lv4XVcnqqm^=_)v(T4T}GuYF4 z)a*j!su_rZl=*zhrxS9nA9%^j?V=SJ*Tgq0qmJIH>rBwHm8$dA;ZQ2Xzpj`a^tVHW zT@nBFjQ{$Ge`Ra8B5F^bScli0(72bS=SxE?Ie}pBH(ayBH(aEIp(9PKN!CL%j+iyn z>2uQl@CN(Zge~G6Urv-P{@4pa3-t4bBN5XGFLCxhp=sn7 z^%-U{HtgtNd~4zQf%tE^sEf!i*9p5{9mtl^n5_a!SR5Uw>^Kc*O{wk)gG zuf2?iBg1=m(-eY?W9-%b($f2bS4KtQcOY2qv*Fp)JF)lDzQC z0_AjCBrrxJSnwi>+CfJzgkCQhq?K%iY`}Y_%&ODBzIZe;pEGYj^ssC996na#=mYm<+0d`~3F z{O0}nD_`-F@`R}`;~jk;K>|GA415AnfPv#5^s%YA151v0@_F+EK+r0BBetrKwHg-& zei6gh*YOWgfsgP^$=Yx{a*#1r)EW0<>(Rcb`HV}EjHUp z`09+P#sHf__gnqvI^8~8*+}7(=P1#%_7sy}zmI;*xapIaMQnFBN0=H~U}2fFkkOv4>z94fTmQ-VUlxc8m0gnt{xHZ0;_`+zV6|qg?Dr*VDjeo$d~_fVJu$mUAv zi!Y}Fw$^u^iPswU+#%MkQ;~!t+S=&FX`}#jw9Z9)T;kl=-i{suP^)9#rJo~>)m1A2 zN>k&0Xra@%C#r6poMem$?A%+QiS@BMGVhWLVEv23BIx3 z>k$#Efo8(kFRa<;{@5{Kb6r=&5M{&R+cH@N1}RxFC)bn~sfhmxT$nof69Uq5MUCMu zY_aYv#{W3}lc2%%GXCiWaY($9-9yHV+$j>&Z#~x?Y2R~B$ z=kivgb;kebGx3BugscPm+IoyuY8{Vx5{zB{edPU9$r1lm**OAFt4{xn?42%jJd`Oq z;~xfVI8Rsl8pFl}_9&*|Z&$fJZRCJMPZXu$oO2i>yO1P_xqWFA%kFy8x9~Y|TDM&8 z@n*((cuPNar@)_2($};S_1}>QxuR*=xaz16B%9aW93*gtXazz%%*vwO+%&oM5m1UF%1~jy3f^8f@ql;4K$glZ^ih`A0DkEYdJ&d+CM*!!=B_29tNM z@?Pkom#`LVn?A7yS8C|N@Bc3Bzbvvh)qPFEyX)Y-SpMc|q1$>ty-)%!$yNFs>e2dE zWpaPMzVWhe=(BrN`9v4>SM-0el}0Th862Rfpc*5d1@K!)FPdJ9(i5XOd%P&%}v)irz&8(FFi2smBfd&5# z7MI6ij9vL0LLp&1k{9(Q*^c)qGyYZLncWYFbqh6h8sVta=!VN})LHUW3E-6OPu`o-jbCUHdSRG+y;kv_y3 zk>BCkR!HCp96(hdyKi3*>v6Hv>04Z83vHf0cgmeQz*xnW$pG@0ylQId?5;7{u$cje zVLBstfBK};n5E>jtl_Ch6dJ>lS7nqm#HC_Y>%}cU?9>GFxOS-6b1&MU&W2L>P7@rI zRL`xSYBh-p0$|7CSTQEPswu=#cD^AQWB|Hzzuv_8($BwKwMJ>oF@_VQqzte$cl z7L?6|TI}R^JGOBqUnrau4;*jLJEfv++#4xVC;6WeH2x(yk_%GY<8Wj1bH>*Hf45qOwobMvLOT zN==?f=%N*3gzP8s7xZ!I=SA-fb>VMvG!JfHEd}0g-Mjb&={=X1^7$pNb?v6*dT=Q| zLzi0*R>Qlu_=3Kj&^xT$G!1+xidEV!a|H1X<6I^iw-8;CoS0;8fNSM|rs9C_=`_R6 zTi2N|(dO~BmBSZUQJ?U37m;vIzS~?a2d&6aLc6L=%oVl-q|!3X>;`VZRxy+D(9J`+ zDrBAsy)dT^*iEFNQymrJk#II>fN(!F(i8_EJ@QOuxPA;@E#@dZ4C3I+6O{>ccple4 zfC~A8;Iw^39@GNn;lAI;xrxtbylXktk;xt%_d}77W(MB76mWTk;OJ^tqW9xc?v?MV zGbtrLrp`(NASE)>&r^Cl6r-$9I}J30@fatqzX4#hL66ap$LSgHY07=HN`UC9AS;vF zg}S3N+A8{E0Q!=;+RW$st?P=Id|y8rCZY|TiP`oKp_|6I2YH1i12r;455AxNBg~WIQ;e?;(aQK`NE;AYcCa(G+tN>nJZg&#~W+8TIr-dmZK* zr!M(n%eCk`F9Yil|00nZqCR7oP!aKeCl)p?_LLXDT<3Ls`q4AIMrqFr;?6 zBA#1-mo|e>A+GE68_IRZzOKfUzJWXdPIZ`|lX1Ud0`n|iF3Y)Z$?dk9JRoxc@rrR7 zf*w+{5K}%6&FHD~oJm;tH$EZ?MK!>pX%mGmGr(0tq={Knvwl3%P&_OlCM0f*$7s2Kauhz4sPcuOqDbxV4gXp{e%%p{G~loO`M2fDoR$ zy0Q(?P}6;ne0-s)l8^NXw%EI=iftY7-4+hX-S+a^jrSd!YhAlfDU8do2afr zk_)SNb7gITpdW5R<~?1x6sWt}(1Zw|nt)F_5##@V0|0@l_1?2xSpWb407*qoM6N<$ Eg7u$stpET3 literal 43309 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 N002ovPDHLkV1jpjj+Oub diff --git a/src/components/referral/ReferralButtonBox.tsx b/src/components/referral/ReferralButtonBox.tsx index 3be5eb83..d3f11ea4 100644 --- a/src/components/referral/ReferralButtonBox.tsx +++ b/src/components/referral/ReferralButtonBox.tsx @@ -47,6 +47,7 @@ const ReferralButtonContainer = styled.div` align-items: center; justify-content: space-between; padding: 0 26px; + border-radius: 20px; `; const ReferralButtonWrapper = styled.div``; From 872f3921a49e5be5a6859f95ce010d53c41cbe90 Mon Sep 17 00:00:00 2001 From: jymin99 Date: Thu, 17 Oct 2024 14:28:37 +0900 Subject: [PATCH 092/105] fix:button change and nft information fix --- src/components/referral/ReferralButtonBox.tsx | 4 +- src/pages/Main/Main.tsx | 23 ----------- src/pages/Stake/NFTPreview.tsx | 2 +- src/pages/Stake/StakeSuccess.tsx | 38 +++++++++++++++---- 4 files changed, 33 insertions(+), 34 deletions(-) diff --git a/src/components/referral/ReferralButtonBox.tsx b/src/components/referral/ReferralButtonBox.tsx index d3f11ea4..e27228f9 100644 --- a/src/components/referral/ReferralButtonBox.tsx +++ b/src/components/referral/ReferralButtonBox.tsx @@ -9,11 +9,11 @@ const ReferralButtonBox = () => { return ( <> - + navigate('/referral')}> You can refer NEXTON to
a friend and earn points!
- navigate('/referral')}> +
diff --git a/src/pages/Main/Main.tsx b/src/pages/Main/Main.tsx index 15d0848c..0c242b87 100644 --- a/src/pages/Main/Main.tsx +++ b/src/pages/Main/Main.tsx @@ -9,7 +9,6 @@ import ActionCards from "@/components/main/ActionCards"; import MainMyAssetInfo from "@/components/main/MainMyAssetInfo"; import { WelcomeModal } from "@/components/main/Modal/WelcomeModal"; import MyTokens from "@/components/main/MyTokens"; -import StakeView from "@/components/main/StakeView/StakeView"; import { useManageReferral } from "@/hooks/api/referral/useManageReferral"; import { useTrackReferral } from "@/hooks/api/referral/useTrackReferral"; import { useStakeInfo } from "@/hooks/api/useStakeInfo"; @@ -20,7 +19,6 @@ import "react-toastify/dist/ReactToastify.css"; const tele = (window as any).Telegram.WebApp; const Main = () => { - const location = useLocation(); const { address, balance, refreshTonData, connected, tonConnectUI } = useTonConnect(); const { nftList, isLoading, isError } = useStakeInfo(address); @@ -121,27 +119,6 @@ const Main = () => { trackReferral(); }, [trigger, triggerManageReferral]); - // Show toast message when the user has successfully staked - useEffect(() => { - const { state } = location; - - if (state?.isStakeSuccess) { - toast(`Transaction approved! Your balance will be updated within the next 30 seconds.`, { - position: "top-center", - autoClose: 5000, - hideProgressBar: false, - closeOnClick: true, - pauseOnHover: true, - draggable: true, - progress: undefined, - theme: "light", - transition: Slide, - }); - - history.replaceState(null, ""); - } - }, [location]); - // Calculate the total amount staked const totalStaked = useMemo(() => { return nftList?.reduce((acc, nft) => acc + nft.principal, 0) || 0; diff --git a/src/pages/Stake/NFTPreview.tsx b/src/pages/Stake/NFTPreview.tsx index 83d0d1f0..756c0651 100644 --- a/src/pages/Stake/NFTPreview.tsx +++ b/src/pages/Stake/NFTPreview.tsx @@ -162,7 +162,7 @@ const NFTPreview = () => { mutate(`/data/getAllStakeInfoByAddress?address=${stakingInfo.address}`); await refreshTonData(); - navigate("/stake/success", { state: { isStakeSuccess: true } }); + navigate("/stake/success", { state: { isStakeSuccess: true, lockPeriod: stakingInfo.lockup.toString(), stakingInfo:stakingInfo } }); }} /> )} diff --git a/src/pages/Stake/StakeSuccess.tsx b/src/pages/Stake/StakeSuccess.tsx index 8e14309d..4f4d382d 100644 --- a/src/pages/Stake/StakeSuccess.tsx +++ b/src/pages/Stake/StakeSuccess.tsx @@ -1,24 +1,46 @@ -import { useNavigate } from "react-router-dom"; +import { useNavigate,useLocation } from "react-router-dom"; +import { useEffect } from "react"; import styled from "styled-components"; -import { useRecoilValue } from "recoil"; +import { Slide, toast } from "react-toastify"; import FooterButton from "@/components/common/FooterButton"; import ReferralButtonBox from "@/components/referral/ReferralButtonBox"; -import { stakingAtom } from "@/lib/atom/staking"; import NftPreviewImage from "@/components/stake/NFTPreview/NftPreviewImage"; import NFTPreviewInfo from "@/components/stake/NFTPreview/NFTPreviewInfo"; import { MainButton } from "@vkruglikov/react-telegram-web-app"; import { isDevMode } from "@/utils/isDevMode"; import IcAlertBlue from "@/assets/icons/Stake/ic_alert_blue.svg"; - - - const tele = (window as any).Telegram.WebApp; const StakeSuccess = () => { - const stakingInfo = useRecoilValue(stakingAtom); const navigate=useNavigate(); + const location = useLocation(); + const {lockPeriod, stakingInfo } = location.state || {}; + + + + // Show toast message when the user has successfully staked + useEffect(() => { + const { state } = location; + + if (state?.isStakeSuccess) { + toast(`Transaction approved! Your balance will be updated within the next 30 seconds.`, { + position: "top-center", + autoClose: 5000, + hideProgressBar: false, + closeOnClick: true, + pauseOnHover: true, + draggable: true, + progress: undefined, + theme: "light", + transition: Slide, + }); + + history.replaceState(null, ""); + } + }, [location]); + return ( <> @@ -29,7 +51,7 @@ const StakeSuccess = () => { - + alertBlue From eb650ffbb5c7ba45c11e55dbd0d5bac0bc3e12cf Mon Sep 17 00:00:00 2001 From: jymin99 Date: Thu, 17 Oct 2024 14:43:40 +0900 Subject: [PATCH 093/105] fix:nft info error fix --- src/components/common/Router.tsx | 2 +- src/pages/Stake/NFTPreview.tsx | 2 +- src/pages/Stake/StakeSuccess.tsx | 2 -- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/components/common/Router.tsx b/src/components/common/Router.tsx index e3c7fb49..f6cbca07 100644 --- a/src/components/common/Router.tsx +++ b/src/components/common/Router.tsx @@ -39,7 +39,7 @@ const Router = () => { } /> } /> } /> - } /> + } /> {/* // ! Paths under /loan are disabled until contract & API are ready */} {/* diff --git a/src/pages/Stake/NFTPreview.tsx b/src/pages/Stake/NFTPreview.tsx index 756c0651..18ca252e 100644 --- a/src/pages/Stake/NFTPreview.tsx +++ b/src/pages/Stake/NFTPreview.tsx @@ -162,7 +162,7 @@ const NFTPreview = () => { mutate(`/data/getAllStakeInfoByAddress?address=${stakingInfo.address}`); await refreshTonData(); - navigate("/stake/success", { state: { isStakeSuccess: true, lockPeriod: stakingInfo.lockup.toString(), stakingInfo:stakingInfo } }); + navigate("/stake/success", { state: { isStakeSuccess: true, lockPeriod: stakingInfo.lockup, stakingInfo:stakingInfo } }); }} /> )} diff --git a/src/pages/Stake/StakeSuccess.tsx b/src/pages/Stake/StakeSuccess.tsx index 4f4d382d..49ed7bad 100644 --- a/src/pages/Stake/StakeSuccess.tsx +++ b/src/pages/Stake/StakeSuccess.tsx @@ -18,8 +18,6 @@ const StakeSuccess = () => { const location = useLocation(); const {lockPeriod, stakingInfo } = location.state || {}; - - // Show toast message when the user has successfully staked useEffect(() => { const { state } = location; From d118dcd0b43d0ff970d1bfae281e8f8552334e67 Mon Sep 17 00:00:00 2001 From: jymin99 Date: Thu, 17 Oct 2024 14:47:27 +0900 Subject: [PATCH 094/105] fix:toastpopup-loacation-fix --- src/pages/Stake/StakeSuccess.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/Stake/StakeSuccess.tsx b/src/pages/Stake/StakeSuccess.tsx index 49ed7bad..be23104c 100644 --- a/src/pages/Stake/StakeSuccess.tsx +++ b/src/pages/Stake/StakeSuccess.tsx @@ -22,7 +22,7 @@ const StakeSuccess = () => { useEffect(() => { const { state } = location; - if (state?.isStakeSuccess) { + if (location.pathname === '/stake/success' && isStakeSuccess) { toast(`Transaction approved! Your balance will be updated within the next 30 seconds.`, { position: "top-center", autoClose: 5000, From 4e7a518d5c79da3593b6506a72e9c1d608cf5078 Mon Sep 17 00:00:00 2001 From: jymin99 Date: Thu, 17 Oct 2024 14:50:40 +0900 Subject: [PATCH 095/105] fix:toastpopup error fix --- src/pages/Stake/StakeSuccess.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/pages/Stake/StakeSuccess.tsx b/src/pages/Stake/StakeSuccess.tsx index be23104c..fd0df753 100644 --- a/src/pages/Stake/StakeSuccess.tsx +++ b/src/pages/Stake/StakeSuccess.tsx @@ -18,11 +18,12 @@ const StakeSuccess = () => { const location = useLocation(); const {lockPeriod, stakingInfo } = location.state || {}; + // Show toast message when the user has successfully staked useEffect(() => { const { state } = location; - if (location.pathname === '/stake/success' && isStakeSuccess) { + if (location.pathname === '/stake/success'&&state?.isStakeSuccess) { toast(`Transaction approved! Your balance will be updated within the next 30 seconds.`, { position: "top-center", autoClose: 5000, From ee7ef874bc08d6481b4da869cec4f5215d0ed560 Mon Sep 17 00:00:00 2001 From: jymin99 Date: Thu, 17 Oct 2024 14:54:10 +0900 Subject: [PATCH 096/105] fix:toastpopup location change --- src/pages/Stake/StakeSuccess.tsx | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/pages/Stake/StakeSuccess.tsx b/src/pages/Stake/StakeSuccess.tsx index fd0df753..b55ba876 100644 --- a/src/pages/Stake/StakeSuccess.tsx +++ b/src/pages/Stake/StakeSuccess.tsx @@ -35,8 +35,6 @@ const StakeSuccess = () => { theme: "light", transition: Slide, }); - - history.replaceState(null, ""); } }, [location]); From 1ce010842373c0d9657cd629ed30000936b75d3f Mon Sep 17 00:00:00 2001 From: jymin99 Date: Thu, 17 Oct 2024 15:07:11 +0900 Subject: [PATCH 097/105] fix:stake success popup initialize fix --- src/pages/Stake/StakeSuccess.tsx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/pages/Stake/StakeSuccess.tsx b/src/pages/Stake/StakeSuccess.tsx index b55ba876..fe64cf72 100644 --- a/src/pages/Stake/StakeSuccess.tsx +++ b/src/pages/Stake/StakeSuccess.tsx @@ -16,14 +16,11 @@ const tele = (window as any).Telegram.WebApp; const StakeSuccess = () => { const navigate=useNavigate(); const location = useLocation(); - const {lockPeriod, stakingInfo } = location.state || {}; - + const {isStakeSuccess,lockPeriod, stakingInfo } = location.state || {}; // Show toast message when the user has successfully staked useEffect(() => { - const { state } = location; - - if (location.pathname === '/stake/success'&&state?.isStakeSuccess) { + if (isStakeSuccess) { toast(`Transaction approved! Your balance will be updated within the next 30 seconds.`, { position: "top-center", autoClose: 5000, @@ -35,8 +32,11 @@ const StakeSuccess = () => { theme: "light", transition: Slide, }); + return()=>{ + navigate("/stake/success",{state:{isStakeSuccess:false}}); + } } - }, [location]); + }, [isStakeSuccess]); return ( From ab2fce47eadeb67ecbd34c66f7c86c171e4afde0 Mon Sep 17 00:00:00 2001 From: jymin99 Date: Thu, 17 Oct 2024 15:36:51 +0900 Subject: [PATCH 098/105] fix:toast pop up success --- src/pages/Stake/StakeSuccess.tsx | 75 +++++++++++++++++--------------- 1 file changed, 41 insertions(+), 34 deletions(-) diff --git a/src/pages/Stake/StakeSuccess.tsx b/src/pages/Stake/StakeSuccess.tsx index fe64cf72..98258593 100644 --- a/src/pages/Stake/StakeSuccess.tsx +++ b/src/pages/Stake/StakeSuccess.tsx @@ -1,7 +1,7 @@ -import { useNavigate,useLocation } from "react-router-dom"; +import { useNavigate, useLocation } from "react-router-dom"; import { useEffect } from "react"; import styled from "styled-components"; -import { Slide, toast } from "react-toastify"; +import { Slide, toast, ToastContainer } from "react-toastify"; import FooterButton from "@/components/common/FooterButton"; import ReferralButtonBox from "@/components/referral/ReferralButtonBox"; @@ -14,30 +14,24 @@ import IcAlertBlue from "@/assets/icons/Stake/ic_alert_blue.svg"; const tele = (window as any).Telegram.WebApp; const StakeSuccess = () => { - const navigate=useNavigate(); + const navigate = useNavigate(); const location = useLocation(); - const {isStakeSuccess,lockPeriod, stakingInfo } = location.state || {}; + const { isStakeSuccess, lockPeriod, stakingInfo } = location.state || {}; // Show toast message when the user has successfully staked useEffect(() => { - if (isStakeSuccess) { - toast(`Transaction approved! Your balance will be updated within the next 30 seconds.`, { - position: "top-center", - autoClose: 5000, - hideProgressBar: false, - closeOnClick: true, - pauseOnHover: true, - draggable: true, - progress: undefined, - theme: "light", - transition: Slide, - }); - return()=>{ - navigate("/stake/success",{state:{isStakeSuccess:false}}); - } - } - }, [isStakeSuccess]); - + toast(`Transaction approved! Your balance will be updated within the next 30 seconds.`, { + position: "top-center", + autoClose: 5000, + hideProgressBar: false, + closeOnClick: true, + pauseOnHover: true, + draggable: true, + progress: undefined, + theme: "light", + transition: Slide, + }); + }, []); return ( <> @@ -48,8 +42,8 @@ const StakeSuccess = () => { - - + {/* + */} alertBlue