From a7b9138f52b5702b2284701d8cedb2b892038976 Mon Sep 17 00:00:00 2001 From: Rishi Ghan Date: Thu, 21 Dec 2023 15:19:28 -0500 Subject: [PATCH] =?UTF-8?q?=F0=9F=8F=97=EF=B8=8F=20Fixed=20fonts,=20and=20?= =?UTF-8?q?comic=20detail=20page=20first=20draft?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- .../fonts/Hasklig-Regular.otf | Bin .../fonts/PPObjectSans-Heavy.otf | Bin .../fonts/PPObjectSans-HeavySlanted.otf | Bin .../fonts/PPObjectSans-Regular.otf | Bin .../fonts/PPObjectSans-Slanted.otf | Bin src/client/assets/scss/App.scss | 5 +- .../components/ComicDetail/ComicDetail.tsx | 79 ++++---- .../components/ComicDetail/RawFileDetails.tsx | 183 ++++++++++++------ .../components/ComicDetail/TabControls.tsx | 31 +-- src/client/components/Library/Library.tsx | 70 ++++--- src/client/components/shared/T2Table.tsx | 8 +- tailwind.config.js => tailwind.config.ts | 1 + yarn.lock | 166 +++++++++++++++- 14 files changed, 389 insertions(+), 156 deletions(-) rename {src/client/assets => public}/fonts/Hasklig-Regular.otf (100%) rename {src/client/assets => public}/fonts/PPObjectSans-Heavy.otf (100%) rename {src/client/assets => public}/fonts/PPObjectSans-HeavySlanted.otf (100%) rename {src/client/assets => public}/fonts/PPObjectSans-Regular.otf (100%) rename {src/client/assets => public}/fonts/PPObjectSans-Slanted.otf (100%) rename tailwind.config.js => tailwind.config.ts (99%) diff --git a/package.json b/package.json index 9afe757..c2f8fd5 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ "@tanstack/react-table": "^8.9.3", "@types/mime-types": "^2.1.0", "@types/react-router-dom": "^5.3.3", - "@vitejs/plugin-react": "^3.1.0", + "@vitejs/plugin-react": "^4.2.1", "airdcpp-apisocket": "^2.5.0-beta.2", "axios": "^1.3.4", "axios-cache-interceptor": "^1.0.1", diff --git a/src/client/assets/fonts/Hasklig-Regular.otf b/public/fonts/Hasklig-Regular.otf similarity index 100% rename from src/client/assets/fonts/Hasklig-Regular.otf rename to public/fonts/Hasklig-Regular.otf diff --git a/src/client/assets/fonts/PPObjectSans-Heavy.otf b/public/fonts/PPObjectSans-Heavy.otf similarity index 100% rename from src/client/assets/fonts/PPObjectSans-Heavy.otf rename to public/fonts/PPObjectSans-Heavy.otf diff --git a/src/client/assets/fonts/PPObjectSans-HeavySlanted.otf b/public/fonts/PPObjectSans-HeavySlanted.otf similarity index 100% rename from src/client/assets/fonts/PPObjectSans-HeavySlanted.otf rename to public/fonts/PPObjectSans-HeavySlanted.otf diff --git a/src/client/assets/fonts/PPObjectSans-Regular.otf b/public/fonts/PPObjectSans-Regular.otf similarity index 100% rename from src/client/assets/fonts/PPObjectSans-Regular.otf rename to public/fonts/PPObjectSans-Regular.otf diff --git a/src/client/assets/fonts/PPObjectSans-Slanted.otf b/public/fonts/PPObjectSans-Slanted.otf similarity index 100% rename from src/client/assets/fonts/PPObjectSans-Slanted.otf rename to public/fonts/PPObjectSans-Slanted.otf diff --git a/src/client/assets/scss/App.scss b/src/client/assets/scss/App.scss index 96f695f..a7b8ffa 100644 --- a/src/client/assets/scss/App.scss +++ b/src/client/assets/scss/App.scss @@ -5,12 +5,11 @@ @layer base { @font-face { font-family: "PP Object Sans Regular"; - src: url("./src/client/assets/fonts/PPObjectSans-Regular.otf") - format("opentype"); + src: url("/fonts/PPObjectSans-Regular.otf") format("opentype"); } @font-face { font-family: "Hasklig Regular"; - src: url("./src/client/assets/fonts/Hasklig-Regular.otf") format("opentype"); + src: url("/fonts/Hasklig-Regular.otf") format("opentype"); } } diff --git a/src/client/components/ComicDetail/ComicDetail.tsx b/src/client/components/ComicDetail/ComicDetail.tsx index 92b1ef4..b499fe7 100644 --- a/src/client/components/ComicDetail/ComicDetail.tsx +++ b/src/client/components/ComicDetail/ComicDetail.tsx @@ -47,6 +47,8 @@ export const ComicDetail = (data: ComicDetailProps): ReactElement => { inferredMetadata, sourcedMetadata: { comicvine, locg, comicInfo }, acquisition, + createdAt, + updatedAt, }, userSettings, } = data; @@ -246,67 +248,58 @@ export const ComicDetail = (data: ComicDetailProps): ReactElement => { // 2. from the CV-scraped version return ( -
+
{!isNil(data) && !isEmpty(data) && ( <> -

{issueName}

-
-
+
+
- {/* action dropdown */} -
- -
-
- {/* raw file details */} -
+ + {/* raw file details */} {!isUndefined(rawFileDetails) && !isEmpty(rawFileDetails.cover) && ( - <> +
- {/* Read comic button */} - {/* - - {extractedComicBook && ( - - )} - */} - + style={{ content: { marginTop: "2rem" } }} + isOpen={modalIsOpen} + onAfterOpen={afterOpenModal} + onRequestClose={closeModal} + contentLabel="Example Modal" + > + + {extractedComicBook && ( + + )} + */} +
)} + {/* action dropdown */} + {/*
+ +
*/}
diff --git a/src/client/components/ComicDetail/RawFileDetails.tsx b/src/client/components/ComicDetail/RawFileDetails.tsx index 26a2bfa..12f3574 100644 --- a/src/client/components/ComicDetail/RawFileDetails.tsx +++ b/src/client/components/ComicDetail/RawFileDetails.tsx @@ -2,78 +2,137 @@ import React, { ReactElement } from "react"; import PropTypes from "prop-types"; import prettyBytes from "pretty-bytes"; import { isEmpty } from "lodash"; +import { format, parseISO } from "date-fns"; export const RawFileDetails = (props): ReactElement => { - const { rawFileDetails, inferredMetadata } = props.data; + const { rawFileDetails, inferredMetadata, created_at, updated_at } = + props.data; + const PaperClipIcon = () => <>; return ( <> -
-
-
Raw File Details
-
- {rawFileDetails.containedIn + - "/" + - rawFileDetails.name + - rawFileDetails.extension} -
-
-
-
-
- Size - - {prettyBytes(rawFileDetails.fileSize)} - -
-
-
-
- Extension +
+
+

+ {rawFileDetails.name} +

+
+
+
+
+
+ Raw File Details +
+
+ {rawFileDetails.containedIn + + "/" + + rawFileDetails.name + + rawFileDetails.extension} +
+
+
+
+ Inferred Issue Metadata +
+
+ Series Name: {inferredMetadata.issue.name} + {!isEmpty(inferredMetadata.issue.number) ? ( - {rawFileDetails.extension} + {inferredMetadata.issue.number} -
-
-
-
- MIME type - + ) : null} +
+
+
+
MIMEType
+
+ {/* File extension */} + + + + + + {rawFileDetails.mimeType} -
-
+ + +
- - -
- -
-
- {/* inferred metadata */} -
Inferred Issue Metadata
-
-
-
-
- Name - - {inferredMetadata.issue.name} +
+
File Size
+
+ {/* size */} + + + -
- - {!isEmpty(inferredMetadata.issue.number) ? ( -
-
- Number - - {inferredMetadata.issue.number} - -
-
- ) : null} + + + {prettyBytes(rawFileDetails.fileSize)} + + + - - +
+
+ Import Details +
+
+ {format(parseISO(created_at), "dd MMMM, yyyy")},{" "} + {format(parseISO(created_at), "h aaaa")} +
+
+
+
Attachments
+
+
    +
  • +
    +
    + +
  • +
  • +
    + {/* Read comic button */} + +
    + +
  • +
+
+
+ + ); @@ -102,5 +161,7 @@ RawFileDetails.propTypes = { subtitle: PropTypes.string, }), }), + created_at: PropTypes.string, + updated_at: PropTypes.string, }), }; diff --git a/src/client/components/ComicDetail/TabControls.tsx b/src/client/components/ComicDetail/TabControls.tsx index 782a4c4..3228b44 100644 --- a/src/client/components/ComicDetail/TabControls.tsx +++ b/src/client/components/ComicDetail/TabControls.tsx @@ -11,19 +11,20 @@ export const TabControls = (props): ReactElement => { setActive(filteredTabs[0].id); }, [acquisition]); - console.log(filteredTabs); return ( <> -
- + ))} + +
{filteredTabs.map(({ id, content }) => { return active === id ? content : null; diff --git a/src/client/components/Library/Library.tsx b/src/client/components/Library/Library.tsx index 145b19a..4cca3c5 100644 --- a/src/client/components/Library/Library.tsx +++ b/src/client/components/Library/Library.tsx @@ -90,9 +90,6 @@ export const Library = (): ReactElement => { ) : null; }; - const WantedStatus = ({ value }) => { - return !value ? Wanted : null; - }; const columns = useMemo( () => [ { @@ -126,7 +123,7 @@ export const Library = (): ReactElement => { accessorKey: "_source.createdAt", cell: (info) => { return !isNil(info.getValue()) ? ( -
+

{format(parseISO(info.getValue()), "dd MMMM, yyyy")}

{format(parseISO(info.getValue()), "h aaaa")}
@@ -199,11 +196,23 @@ export const Library = (): ReactElement => { // value: PropTypes.bool.isRequired, // }; return ( -
-
-
-

Library

-
+
+
+
+
+
+
+

+ Library +

+ +

+ Browse your comic book collection. +

+
+
+
+
{!isUndefined(searchResults?.hits) ? (
@@ -220,29 +229,36 @@ export const Library = (): ReactElement => {
) : ( -
-
-
-
+ <> +
+
+

No comics were found in the library, Elasticsearch reports no indices. Try importing a few comics into the library and come back. -

-
- {!isUndefined(searchResults?.data?.meta?.body) ? ( -
-                  {JSON.stringify(
-                    searchResults.data.meta.body.error.root_cause,
-                    null,
-                    4,
-                  )}
-                
- ) : null} +

+
+
+
+
+                {!isUndefined(searchResults?.data?.meta?.body) ? (
+                  

+ {JSON.stringify( + searchResults.data.meta.body.error.root_cause, + null, + 4, + )} +

+ ) : null} +
-
+ )} -
-
+
+
); }; diff --git a/src/client/components/shared/T2Table.tsx b/src/client/components/shared/T2Table.tsx index 00a018e..bda11ff 100644 --- a/src/client/components/shared/T2Table.tsx +++ b/src/client/components/shared/T2Table.tsx @@ -70,10 +70,10 @@ export const T2Table = (tableOptions): ReactElement => { }); return ( - <> +
{/* Search bar */} -
+
{/* pagination controls */} @@ -100,7 +100,7 @@ export const T2Table = (tableOptions): ReactElement => {
- +
{table.getHeaderGroups().map((headerGroup, idx) => ( @@ -141,7 +141,7 @@ export const T2Table = (tableOptions): ReactElement => { })}
- +
); }; diff --git a/tailwind.config.js b/tailwind.config.ts similarity index 99% rename from tailwind.config.js rename to tailwind.config.ts index 2baa897..e533eb1 100644 --- a/tailwind.config.js +++ b/tailwind.config.ts @@ -20,5 +20,6 @@ module.exports = { }, }, }, + plugins: [addDynamicIconSelectors()], }; diff --git a/yarn.lock b/yarn.lock index ec631e4..1601c72 100644 --- a/yarn.lock +++ b/yarn.lock @@ -35,11 +35,24 @@ "@babel/highlight" "^7.22.13" chalk "^2.4.2" +"@babel/code-frame@^7.23.5": + version "7.23.5" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.23.5.tgz#9009b69a8c602293476ad598ff53e4562e15c244" + integrity sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA== + dependencies: + "@babel/highlight" "^7.23.4" + chalk "^2.4.2" + "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9", "@babel/compat-data@^7.23.2": version "7.23.2" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.2.tgz#6a12ced93455827037bfb5ed8492820d60fc32cc" integrity sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ== +"@babel/compat-data@^7.23.5": + version "7.23.5" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.5.tgz#ffb878728bb6bdcb6f4510aa51b1be9afb8cfd98" + integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== + "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.13.16", "@babel/core@^7.18.9", "@babel/core@^7.20.12", "@babel/core@^7.22.9": version "7.23.2" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.2.tgz#ed10df0d580fff67c5f3ee70fd22e2e4c90a9f94" @@ -61,6 +74,27 @@ json5 "^2.2.3" semver "^6.3.1" +"@babel/core@^7.23.5": + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.6.tgz#8be77cd77c55baadcc1eae1c33df90ab6d2151d4" + integrity sha512-FxpRyGjrMJXh7X3wGLGhNDCRiwpWEF74sKjTLDJSG5Kyvow3QZaG0Adbqzi9ZrVjTWpsX+2cxWXD71NMg93kdw== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.23.5" + "@babel/generator" "^7.23.6" + "@babel/helper-compilation-targets" "^7.23.6" + "@babel/helper-module-transforms" "^7.23.3" + "@babel/helpers" "^7.23.6" + "@babel/parser" "^7.23.6" + "@babel/template" "^7.22.15" + "@babel/traverse" "^7.23.6" + "@babel/types" "^7.23.6" + 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/generator@^7.22.9", "@babel/generator@^7.23.0", "@babel/generator@^7.7.2": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.0.tgz#df5c386e2218be505b34837acbcb874d7a983420" @@ -71,6 +105,16 @@ "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" +"@babel/generator@^7.23.6": + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.6.tgz#9e1fca4811c77a10580d17d26b57b036133f3c2e" + integrity sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw== + dependencies: + "@babel/types" "^7.23.6" + "@jridgewell/gen-mapping" "^0.3.2" + "@jridgewell/trace-mapping" "^0.3.17" + jsesc "^2.5.1" + "@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" @@ -96,6 +140,17 @@ lru-cache "^5.1.1" semver "^6.3.1" +"@babel/helper-compilation-targets@^7.23.6": + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" + integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== + dependencies: + "@babel/compat-data" "^7.23.5" + "@babel/helper-validator-option" "^7.23.5" + browserslist "^4.22.2" + 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.11", "@babel/helper-create-class-features-plugin@^7.22.15", "@babel/helper-create-class-features-plugin@^7.22.5": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz#97a61b385e57fe458496fad19f8e63b63c867de4" @@ -176,6 +231,17 @@ "@babel/helper-split-export-declaration" "^7.22.6" "@babel/helper-validator-identifier" "^7.22.20" +"@babel/helper-module-transforms@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz#d7d12c3c5d30af5b3c0fcab2a6d5217773e2d0f1" + integrity sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ== + dependencies: + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-module-imports" "^7.22.15" + "@babel/helper-simple-access" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/helper-validator-identifier" "^7.22.20" + "@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" @@ -232,6 +298,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== +"@babel/helper-string-parser@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" + integrity sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ== + "@babel/helper-validator-identifier@^7.22.20": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" @@ -242,6 +313,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA== +"@babel/helper-validator-option@^7.23.5": + version "7.23.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" + integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== + "@babel/helper-wrap-function@^7.22.20": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz#15352b0b9bfb10fc9c76f79f6342c00e3411a569" @@ -260,6 +336,15 @@ "@babel/traverse" "^7.23.2" "@babel/types" "^7.23.0" +"@babel/helpers@^7.23.6": + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.6.tgz#d03af2ee5fb34691eec0cda90f5ecbb4d4da145a" + integrity sha512-wCfsbN4nBidDRhpDhvcKlzHWCTlgJYUUdSJfzXb2NuBssDSIjc3xcb+znA7l+zYsFljAcGM0aFkN40cR3lXiGA== + dependencies: + "@babel/template" "^7.22.15" + "@babel/traverse" "^7.23.6" + "@babel/types" "^7.23.6" + "@babel/highlight@^7.22.13": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.20.tgz#4ca92b71d80554b01427815e06f2df965b9c1f54" @@ -269,11 +354,25 @@ chalk "^2.4.2" js-tokens "^4.0.0" +"@babel/highlight@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.23.4.tgz#edaadf4d8232e1a961432db785091207ead0621b" + integrity sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A== + dependencies: + "@babel/helper-validator-identifier" "^7.22.20" + chalk "^2.4.2" + js-tokens "^4.0.0" + "@babel/parser@^7.1.0", "@babel/parser@^7.13.16", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.22.15", "@babel/parser@^7.22.7", "@babel/parser@^7.23.0", "@babel/parser@^7.9.4": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719" integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw== +"@babel/parser@^7.23.6": + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.6.tgz#ba1c9e512bda72a47e285ae42aff9d2a635a9e3b" + integrity sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ== + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.15": version "7.22.15" 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.15.tgz#02dc8a03f613ed5fdc29fb2f728397c78146c962" @@ -796,6 +895,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" +"@babel/plugin-transform-react-jsx-self@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.23.3.tgz#ed3e7dadde046cce761a8e3cf003a13d1a7972d9" + integrity sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/plugin-transform-react-jsx-source@^7.19.6": 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" @@ -803,6 +909,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" +"@babel/plugin-transform-react-jsx-source@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.23.3.tgz#03527006bdc8775247a78643c51d4e715fe39a3e" + integrity sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/plugin-transform-regenerator@^7.22.10": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.10.tgz#8ceef3bd7375c4db7652878b0241b2be5d0c3cca" @@ -1066,6 +1179,22 @@ debug "^4.1.0" globals "^11.1.0" +"@babel/traverse@^7.23.6": + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.6.tgz#b53526a2367a0dd6edc423637f3d2d0f2521abc5" + integrity sha512-czastdK1e8YByZqezMPFiZ8ahwVMh/ESl9vPgvgdB9AmFMGP5jfpFax74AQgl5zj4XHzqeYAg2l8PuUeRS1MgQ== + dependencies: + "@babel/code-frame" "^7.23.5" + "@babel/generator" "^7.23.6" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-function-name" "^7.23.0" + "@babel/helper-hoist-variables" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/parser" "^7.23.6" + "@babel/types" "^7.23.6" + debug "^4.3.1" + globals "^11.1.0" + "@babel/types@^7.0.0", "@babel/types@^7.18.9", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb" @@ -1075,6 +1204,15 @@ "@babel/helper-validator-identifier" "^7.22.20" to-fast-properties "^2.0.0" +"@babel/types@^7.23.6": + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.6.tgz#be33fdb151e1f5a56877d704492c240fc71c7ccd" + integrity sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg== + dependencies: + "@babel/helper-string-parser" "^7.23.4" + "@babel/helper-validator-identifier" "^7.22.20" + to-fast-properties "^2.0.0" + "@base2/pretty-print-object@1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@base2/pretty-print-object/-/pretty-print-object-1.0.1.tgz#371ba8be66d556812dc7fb169ebc3c08378f69d4" @@ -3194,6 +3332,17 @@ "@types/babel__template" "*" "@types/babel__traverse" "*" +"@types/babel__core@^7.20.5": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.5.tgz#3df15f27ba85319caa07ba08d0721889bb39c017" + integrity sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA== + dependencies: + "@babel/parser" "^7.20.7" + "@babel/types" "^7.20.7" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + "@types/babel__generator@*": version "7.6.7" resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.7.tgz#a7aebf15c7bc0eb9abd638bdb5c0b8700399c9d0" @@ -3664,7 +3813,7 @@ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== -"@vitejs/plugin-react@^3.0.1", "@vitejs/plugin-react@^3.1.0": +"@vitejs/plugin-react@^3.0.1": version "3.1.0" resolved "https://registry.yarnpkg.com/@vitejs/plugin-react/-/plugin-react-3.1.0.tgz#d1091f535eab8b83d6e74034d01e27d73c773240" integrity sha512-AfgcRL8ZBhAlc3BFdigClmTUMISmmzHn7sB2h9U1odvc5U/MjWXsAaz18b/WoppUTDBzxOJwo2VdClfUcItu9g== @@ -3675,6 +3824,17 @@ magic-string "^0.27.0" react-refresh "^0.14.0" +"@vitejs/plugin-react@^4.2.1": + version "4.2.1" + resolved "https://registry.yarnpkg.com/@vitejs/plugin-react/-/plugin-react-4.2.1.tgz#744d8e4fcb120fc3dbaa471dadd3483f5a304bb9" + integrity sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ== + dependencies: + "@babel/core" "^7.23.5" + "@babel/plugin-transform-react-jsx-self" "^7.23.3" + "@babel/plugin-transform-react-jsx-source" "^7.23.3" + "@types/babel__core" "^7.20.5" + react-refresh "^0.14.0" + "@vtaits/use-lazy-ref@^0.1.0": version "0.1.0" resolved "https://registry.yarnpkg.com/@vtaits/use-lazy-ref/-/use-lazy-ref-0.1.0.tgz#0d5fb47a4334ff57f5d2abf00c9919696e382d86" @@ -4309,7 +4469,7 @@ browserify-zlib@^0.1.4: dependencies: pako "~0.2.0" -browserslist@^4.21.10: +browserslist@^4.21.10, browserslist@^4.22.2: version "4.22.2" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.2.tgz#704c4943072bd81ea18997f3bd2180e89c77874b" integrity sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A== @@ -4905,7 +5065,7 @@ debug@2.6.9, debug@^2.2.0, debug@^2.6.9: dependencies: ms "2.0.0" -debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4, debug@~4.3.1, debug@~4.3.2: +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@~4.3.1, debug@~4.3.2: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==