heartwood every commit a ring

Implement code changes to enhance functionality and improve performance

3c22af30 by Isaac Bythewood · 7 months ago

modified components/entry.js
@@ -1,4 +1,4 @@import React, { useContext, useRef, useEffect } from "react";import React, { useContext, useRef, useEffect, useCallback } from "react";import { useForm } from "react-hook-form";import PropTypes from "prop-types";
@@ -7,11 +7,24 @@ import { Context } from "../components/context";import styles from "../styles/components/entry.module.css";const Entry = ({ entry, removeEntry, isSelected }) => {const Entry = React.forwardRef(  ({ entry, removeEntry, isSelected, style }, forwardedRef) => {  const { state, dispatch } = useContext(Context);  const { register, handleSubmit } = useForm();  const focusedEntry = useRef(null);  const setRefs = useCallback(    (node) => {      focusedEntry.current = node;      if (typeof forwardedRef === "function") {        forwardedRef(node);      } else if (forwardedRef && "current" in forwardedRef) {        forwardedRef.current = node;      }    },    [forwardedRef]  );  const onSubmit = (data) => {    dispatch({      type: "EDIT_LOG",
@@ -37,14 +50,15 @@ const Entry = ({ entry, removeEntry, isSelected }) => {  });  const highlight = isSelected == entry.id ? { filter: "invert(1)" } : {};  const combinedStyle = { ...(style || {}), ...highlight };  const containerClasses = [styles.entryContainer];  if (state.edit) containerClasses.push(styles.zoom);  return (    <div      style={highlight}  style={combinedStyle}      className={containerClasses.join(" ")}      ref={focusedEntry}      ref={setRefs}      tabIndex={-1}    >      {state.edit && isSelected == entry.id ? (
@@ -133,12 +147,16 @@ const Entry = ({ entry, removeEntry, isSelected }) => {      )}    </div>  );};  });Entry.propTypes = {  entry: PropTypes.object,  removeEntry: PropTypes.func,  isSelected: PropTypes.string,  style: PropTypes.object,};Entry.displayName = "Entry";export default Entry;
modified package.json
@@ -6,18 +6,18 @@    "next:build": "next build"  },  "dependencies": {    "chart.js": "^3.0.2",    "chart.js": "^4.5.0",    "localforage": "^1.9.0",    "next": "^12.1.6",    "react": "^18.2.0",    "next": "^15.5.4",    "react": "^19.2.0",    "react-csv": "^2.0.3",    "react-dom": "^18.2.0",    "react-hook-form": "^7.32.1",    "react-dom": "^19.2.0",    "react-hook-form": "^7.64.0",    "react-hotkeys": "^2.0.0",    "react-is": "^18.2.0",    "react-localization": "^1.0.16",    "react-toastify": "^9.0.4",    "react-is": "^19.2.0",    "react-localization": "^2.0.6",    "react-toastify": "^11.0.5",    "react-transition-group": "^4.2.1",    "uuid": "^9.0.1"    "uuid": "^13.0.0"  }}
modified pages/_app.js
@@ -12,10 +12,12 @@ import Sidebar from "../components/sidebar";import "../styles/globals.css";const MyApp = ({ Component, pageProps, router }) => {  const pageNodeRef = React.useMemo(() => React.createRef(), [router.route]);  return (    <ContextProvider>      <HotKeysMapping>        <ToastContainer position={toast.POSITION.TOP_RIGHT} />  <ToastContainer position="top-right" />        <L10n />        <TransitionGroup component={null}>          <CSSTransition
@@ -27,8 +29,9 @@ const MyApp = ({ Component, pageProps, router }) => {              exit: 250,            }}            classNames="page-transition"            nodeRef={pageNodeRef}          >            <div className="page-transition">            <div className="page-transition" ref={pageNodeRef}>              <Component {...pageProps} />            </div>          </CSSTransition>
modified pages/log.js
@@ -1,4 +1,4 @@import React, { useContext, useState } from "react";import React, { useContext, useState, useRef } from "react";import { TransitionGroup, CSSTransition } from "react-transition-group";import { CSVLink } from "react-csv";import { toast } from "react-toastify";
@@ -15,6 +15,7 @@ import styles from "../styles/pages/log.module.css";const Log = () => {  const { state, dispatch } = useContext(Context);  const [filter, setFilter] = useState({ type: "SHOW_ALL" });  const nodeRefs = useRef(new Map());  strings.setLanguage(state.language);
@@ -56,6 +57,8 @@ const Log = () => {    toast.error(contextStrings.deletedEntry);  };  const visibleEntries = getVisibleEntries(state.log, filter);  return (    <Page title="Log">      <div className={styles.grid}>
@@ -138,20 +141,27 @@ const Log = () => {              )}            </div>          )}          {getVisibleEntries(state.log, filter).length > 0 ? (          {visibleEntries.length > 0 ? (            <>              <TransitionGroup component={null}>                {getVisibleEntries(state.log, filter).map((entry, index) => {                {visibleEntries.map((entry, index) => {                  const timeout = (index + 1) * 250;                  const transitionDelay = index * 125;                  let nodeRef = nodeRefs.current.get(entry.id);                  if (!nodeRef) {                    nodeRef = React.createRef();                    nodeRefs.current.set(entry.id, nodeRef);                  }                  return (                    <CSSTransition                      key={entry.id}                      appear                      timeout={{ appear: timeout, enter: 250, exit: 250 }}                      classNames="fade"                      nodeRef={nodeRef}                    >                      <Entry                        ref={nodeRef}                        style={{ transitionDelay: `${transitionDelay}ms` }}                        entry={entry}                        removeEntry={removeEntry}
modified yarn.lock
@@ -7,103 +7,237 @@  resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.27.4.tgz#a91ec580e6c00c67118127777c316dfd5a5a6abf"  integrity sha512-t3yaEOuGu9NlIZ+hIeGbBjFtZT7j2cb2tg0fuaJKeGotchRjjLfrBA9Kwf8quhpP1EUuxModQg04q/mBwyg8uA=="@next/env@12.3.7":  version "12.3.7"  resolved "https://registry.yarnpkg.com/@next/env/-/env-12.3.7.tgz#e706fbf66cdee012abe73aaa500d9df0b66a2db5"  integrity sha512-gCw4sTeHoNr0EUO+Nk9Ll21OzF3PnmM0GlHaKgsY2AWQSqQlMgECvB0YI4k21M9iGy+tQ5RMyXQuoIMpzhtxww=="@next/swc-android-arm-eabi@12.3.4":  version "12.3.4"  resolved "https://registry.yarnpkg.com/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.3.4.tgz#fd1c2dafe92066c6120761c6a39d19e666dc5dd0"  integrity sha512-cM42Cw6V4Bz/2+j/xIzO8nK/Q3Ly+VSlZJTa1vHzsocJRYz8KT6MrreXaci2++SIZCF1rVRCDgAg5PpqRibdIA=="@next/swc-android-arm64@12.3.4":  version "12.3.4"  resolved "https://registry.yarnpkg.com/@next/swc-android-arm64/-/swc-android-arm64-12.3.4.tgz#11a146dae7b8bca007239b21c616e83f77b19ed4"  integrity sha512-5jf0dTBjL+rabWjGj3eghpLUxCukRhBcEJgwLedewEA/LJk2HyqCvGIwj5rH+iwmq1llCWbOky2dO3pVljrapg=="@next/swc-darwin-arm64@12.3.4":  version "12.3.4"  resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.3.4.tgz#14ac8357010c95e67327f47082af9c9d75d5be79"  integrity sha512-DqsSTd3FRjQUR6ao0E1e2OlOcrF5br+uegcEGPVonKYJpcr0MJrtYmPxd4v5T6UCJZ+XzydF7eQo5wdGvSZAyA=="@next/swc-darwin-x64@12.3.4":  version "12.3.4"  resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-12.3.4.tgz#e7dc63cd2ac26d15fb84d4d2997207fb9ba7da0f"  integrity sha512-PPF7tbWD4k0dJ2EcUSnOsaOJ5rhT3rlEt/3LhZUGiYNL8KvoqczFrETlUx0cUYaXe11dRA3F80Hpt727QIwByQ=="@next/swc-freebsd-x64@12.3.4":  version "12.3.4"  resolved "https://registry.yarnpkg.com/@next/swc-freebsd-x64/-/swc-freebsd-x64-12.3.4.tgz#fe7ceec58746fdf03f1fcb37ec1331c28e76af93"  integrity sha512-KM9JXRXi/U2PUM928z7l4tnfQ9u8bTco/jb939pdFUHqc28V43Ohd31MmZD1QzEK4aFlMRaIBQOWQZh4D/E5lQ=="@next/swc-linux-arm-gnueabihf@12.3.4":  version "12.3.4"  resolved "https://registry.yarnpkg.com/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.3.4.tgz#d7016934d02bfc8bd69818ffb0ae364b77b17af7"  integrity sha512-3zqD3pO+z5CZyxtKDTnOJ2XgFFRUBciOox6EWkoZvJfc9zcidNAQxuwonUeNts6Xbm8Wtm5YGIRC0x+12YH7kw=="@next/swc-linux-arm64-gnu@12.3.4":  version "12.3.4"  resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.3.4.tgz#43a7bc409b03487bff5beb99479cacdc7bd29af5"  integrity sha512-kiX0vgJGMZVv+oo1QuObaYulXNvdH/IINmvdZnVzMO/jic/B8EEIGlZ8Bgvw8LCjH3zNVPO3mGrdMvnEEPEhKA=="@next/swc-linux-arm64-musl@12.3.4":  version "12.3.4"  resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.3.4.tgz#4d1db6de6dc982b974cd1c52937111e3e4a34bd3"  integrity sha512-EETZPa1juczrKLWk5okoW2hv7D7WvonU+Cf2CgsSoxgsYbUCZ1voOpL4JZTOb6IbKMDo6ja+SbY0vzXZBUMvkQ=="@next/swc-linux-x64-gnu@12.3.4":  version "12.3.4"  resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.3.4.tgz#c3b414d77bab08b35f7dd8943d5586f0adb15e38"  integrity sha512-4csPbRbfZbuWOk3ATyWcvVFdD9/Rsdq5YHKvRuEni68OCLkfy4f+4I9OBpyK1SKJ00Cih16NJbHE+k+ljPPpag=="@next/swc-linux-x64-musl@12.3.4":  version "12.3.4"  resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.3.4.tgz#187a883ec09eb2442a5ebf126826e19037313c61"  integrity sha512-YeBmI+63Ro75SUiL/QXEVXQ19T++58aI/IINOyhpsRL1LKdyfK/35iilraZEFz9bLQrwy1LYAR5lK200A9Gjbg=="@next/swc-win32-arm64-msvc@12.3.4":  version "12.3.4"  resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.3.4.tgz#89befa84e453ed2ef9a888f375eba565a0fde80b"  integrity sha512-Sd0qFUJv8Tj0PukAYbCCDbmXcMkbIuhnTeHm9m4ZGjCf6kt7E/RMs55Pd3R5ePjOkN7dJEuxYBehawTR/aPDSQ=="@next/swc-win32-ia32-msvc@12.3.4":  version "12.3.4"  resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.3.4.tgz#cb50c08f0e40ead63642a7f269f0c8254261f17c"  integrity sha512-rt/vv/vg/ZGGkrkKcuJ0LyliRdbskQU+91bje+PgoYmxTZf/tYs6IfbmgudBJk6gH3QnjHWbkphDdRQrseRefQ=="@next/swc-win32-x64-msvc@12.3.4":  version "12.3.4"  resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.3.4.tgz#d28ea15a72cdcf96201c60a43e9630cd7fda168f"  integrity sha512-DQ20JEfTBZAgF8QCjYfJhv2/279M6onxFjdG/+5B0Cyj00/EdBxiWb2eGGFgQhrBbNv/lsvzFbbi0Ptf8Vw/bg=="@swc/helpers@0.4.11":  version "0.4.11"  resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.11.tgz#db23a376761b3d31c26502122f349a21b592c8de"  integrity sha512-rEUrBSGIoSFuYxwBYtlUFMlE2CwGhmW+w9355/5oduSw8e5h2+Tj4UrAGNNgP9915++wj5vkQo0UuOBqOAq4nw=="@emnapi/runtime@^1.5.0":  version "1.5.0"  resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.5.0.tgz#9aebfcb9b17195dce3ab53c86787a6b7d058db73"  integrity sha512-97/BJ3iXHww3djw6hYIfErCZFee7qCtrneuLa20UXFCOTCfBM2cvQHjWJ2EG0s0MtdNwInarqCTz35i4wWXHsQ==  dependencies:    tslib "^2.4.0"caniuse-lite@^1.0.30001406:  version "1.0.30001720"  resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001720.tgz#c138cb6026d362be9d8d7b0e4bcd0183a850edfd"  integrity sha512-Ec/2yV2nNPwb4DnTANEV99ZWwm3ZWfdlfkQbWSDDt+PsXEVYwlhPH8tdMaPunYTKKmz7AnHi2oNEi1GcmKCD8g=="@img/colour@^1.0.0":  version "1.0.0"  resolved "https://registry.yarnpkg.com/@img/colour/-/colour-1.0.0.tgz#d2fabb223455a793bf3bf9c70de3d28526aa8311"  integrity sha512-A5P/LfWGFSl6nsckYtjw9da+19jB8hkJ6ACTGcDfEJ0aE+l2n2El7dsVM7UVHZQ9s2lmYMWlrS21YLy2IR1LUw==chart.js@^3.0.2:  version "3.9.1"  resolved "https://registry.yarnpkg.com/chart.js/-/chart.js-3.9.1.tgz#3abf2c775169c4c71217a107163ac708515924b8"  integrity sha512-Ro2JbLmvg83gXF5F4sniaQ+lTbSv18E+TIf2cOeiH1Iqd2PGFOtem+DUufMZsCJwFE7ywPOpfXFBwRTGq7dh6w=="@img/sharp-darwin-arm64@0.34.4":  version "0.34.4"  resolved "https://registry.yarnpkg.com/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.4.tgz#8a0dcac9e621ff533fbf2e830f6a977b38d67a0c"  integrity sha512-sitdlPzDVyvmINUdJle3TNHl+AG9QcwiAMsXmccqsCOMZNIdW2/7S26w0LyU8euiLVzFBL3dXPwVCq/ODnf2vA==  optionalDependencies:    "@img/sharp-libvips-darwin-arm64" "1.2.3"clsx@^1.1.1:  version "1.2.1"  resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.2.1.tgz#0ddc4a20a549b59c93a4116bb26f5294ca17dc12"  integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg=="@img/sharp-darwin-x64@0.34.4":  version "0.34.4"  resolved "https://registry.yarnpkg.com/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.4.tgz#0ba2bd9dbf07f7300fab73305b787e66156f7752"  integrity sha512-rZheupWIoa3+SOdF/IcUe1ah4ZDpKBGWcsPX6MT0lYniH9micvIU7HQkYTfrx5Xi8u+YqwLtxC/3vl8TQN6rMg==  optionalDependencies:    "@img/sharp-libvips-darwin-x64" "1.2.3""@img/sharp-libvips-darwin-arm64@1.2.3":  version "1.2.3"  resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.3.tgz#f43c9aa3b74fd307e4318da63ebbe0ed4c34e744"  integrity sha512-QzWAKo7kpHxbuHqUC28DZ9pIKpSi2ts2OJnoIGI26+HMgq92ZZ4vk8iJd4XsxN+tYfNJxzH6W62X5eTcsBymHw=="@img/sharp-libvips-darwin-x64@1.2.3":  version "1.2.3"  resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.3.tgz#c42ff786d4a1f42ef8929dba4a989dd5df6417f0"  integrity sha512-Ju+g2xn1E2AKO6YBhxjj+ACcsPQRHT0bhpglxcEf+3uyPY+/gL8veniKoo96335ZaPo03bdDXMv0t+BBFAbmRA=="@img/sharp-libvips-linux-arm64@1.2.3":  version "1.2.3"  resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.3.tgz#c9073e5c4b629ee417f777db21c552910d84ed77"  integrity sha512-I4RxkXU90cpufazhGPyVujYwfIm9Nk1QDEmiIsaPwdnm013F7RIceaCc87kAH+oUB1ezqEvC6ga4m7MSlqsJvQ=="@img/sharp-libvips-linux-arm@1.2.3":  version "1.2.3"  resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.3.tgz#3cbc333fd6b8f224a14d69b03a1dd11df897c799"  integrity sha512-x1uE93lyP6wEwGvgAIV0gP6zmaL/a0tGzJs/BIDDG0zeBhMnuUPm7ptxGhUbcGs4okDJrk4nxgrmxpib9g6HpA=="@img/sharp-libvips-linux-ppc64@1.2.3":  version "1.2.3"  resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.3.tgz#68e0e0076299f43d838468675674fabcc7161d16"  integrity sha512-Y2T7IsQvJLMCBM+pmPbM3bKT/yYJvVtLJGfCs4Sp95SjvnFIjynbjzsa7dY1fRJX45FTSfDksbTp6AGWudiyCg=="@img/sharp-libvips-linux-s390x@1.2.3":  version "1.2.3"  resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.3.tgz#7da9ab11a50c0ca905979f0aae14a4ccffab27b2"  integrity sha512-RgWrs/gVU7f+K7P+KeHFaBAJlNkD1nIZuVXdQv6S+fNA6syCcoboNjsV2Pou7zNlVdNQoQUpQTk8SWDHUA3y/w=="@img/sharp-libvips-linux-x64@1.2.3":  version "1.2.3"  resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.3.tgz#3b162d6b190cf77926819040e09fb15eec42135e"  integrity sha512-3JU7LmR85K6bBiRzSUc/Ff9JBVIFVvq6bomKE0e63UXGeRw2HPVEjoJke1Yx+iU4rL7/7kUjES4dZ/81Qjhyxg=="@img/sharp-libvips-linuxmusl-arm64@1.2.3":  version "1.2.3"  resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.3.tgz#ac99576630dd8e33cb598d7c4586f6e0655912ea"  integrity sha512-F9q83RZ8yaCwENw1GieztSfj5msz7GGykG/BA+MOUefvER69K/ubgFHNeSyUu64amHIYKGDs4sRCMzXVj8sEyw=="@img/sharp-libvips-linuxmusl-x64@1.2.3":  version "1.2.3"  resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.3.tgz#93e9495af7bf6c4e0d41dd71d0196c35c3753a1c"  integrity sha512-U5PUY5jbc45ANM6tSJpsgqmBF/VsL6LnxJmIf11kB7J5DctHgqm0SkuXzVWtIY90GnJxKnC/JT251TDnk1fu/g=="@img/sharp-linux-arm64@0.34.4":  version "0.34.4"  resolved "https://registry.yarnpkg.com/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.4.tgz#0570ff1a4fa6e1d6779456fca8b5e8c18a6a9cf2"  integrity sha512-YXU1F/mN/Wu786tl72CyJjP/Ngl8mGHN1hST4BGl+hiW5jhCnV2uRVTNOcaYPs73NeT/H8Upm3y9582JVuZHrQ==  optionalDependencies:    "@img/sharp-libvips-linux-arm64" "1.2.3""@img/sharp-linux-arm@0.34.4":  version "0.34.4"  resolved "https://registry.yarnpkg.com/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.4.tgz#5f020d933f54f3fc49203d32c3b7dd0ec11ffcdb"  integrity sha512-Xyam4mlqM0KkTHYVSuc6wXRmM7LGN0P12li03jAnZ3EJWZqj83+hi8Y9UxZUbxsgsK1qOEwg7O0Bc0LjqQVtxA==  optionalDependencies:    "@img/sharp-libvips-linux-arm" "1.2.3""@img/sharp-linux-ppc64@0.34.4":  version "0.34.4"  resolved "https://registry.yarnpkg.com/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.4.tgz#8d5775f6dc7e30ea3a1efa43798b7690bb5cb344"  integrity sha512-F4PDtF4Cy8L8hXA2p3TO6s4aDt93v+LKmpcYFLAVdkkD3hSxZzee0rh6/+94FpAynsuMpLX5h+LRsSG3rIciUQ==  optionalDependencies:    "@img/sharp-libvips-linux-ppc64" "1.2.3""@img/sharp-linux-s390x@0.34.4":  version "0.34.4"  resolved "https://registry.yarnpkg.com/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.4.tgz#740aa5b369188ee2c1913b1015e7f830f4dfdb50"  integrity sha512-qVrZKE9Bsnzy+myf7lFKvng6bQzhNUAYcVORq2P7bDlvmF6u2sCmK2KyEQEBdYk+u3T01pVsPrkj943T1aJAsw==  optionalDependencies:    "@img/sharp-libvips-linux-s390x" "1.2.3""@img/sharp-linux-x64@0.34.4":  version "0.34.4"  resolved "https://registry.yarnpkg.com/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.4.tgz#573ce4196b2d0771bba32acc13a37b7adc9b6212"  integrity sha512-ZfGtcp2xS51iG79c6Vhw9CWqQC8l2Ot8dygxoDoIQPTat/Ov3qAa8qpxSrtAEAJW+UjTXc4yxCjNfxm4h6Xm2A==  optionalDependencies:    "@img/sharp-libvips-linux-x64" "1.2.3""@img/sharp-linuxmusl-arm64@0.34.4":  version "0.34.4"  resolved "https://registry.yarnpkg.com/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.4.tgz#3c91bc8348cc3b42b43c6fca14f9dbb5cb47bd0d"  integrity sha512-8hDVvW9eu4yHWnjaOOR8kHVrew1iIX+MUgwxSuH2XyYeNRtLUe4VNioSqbNkB7ZYQJj9rUTT4PyRscyk2PXFKA==  optionalDependencies:    "@img/sharp-libvips-linuxmusl-arm64" "1.2.3""@img/sharp-linuxmusl-x64@0.34.4":  version "0.34.4"  resolved "https://registry.yarnpkg.com/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.4.tgz#33de7d476ac9e2db7ef654331b54cc679b806bda"  integrity sha512-lU0aA5L8QTlfKjpDCEFOZsTYGn3AEiO6db8W5aQDxj0nQkVrZWmN3ZP9sYKWJdtq3PWPhUNlqehWyXpYDcI9Sg==  optionalDependencies:    "@img/sharp-libvips-linuxmusl-x64" "1.2.3""@img/sharp-wasm32@0.34.4":  version "0.34.4"  resolved "https://registry.yarnpkg.com/@img/sharp-wasm32/-/sharp-wasm32-0.34.4.tgz#d617f7b3f851f899802298f360667c20605c0198"  integrity sha512-33QL6ZO/qpRyG7woB/HUALz28WnTMI2W1jgX3Nu2bypqLIKx/QKMILLJzJjI+SIbvXdG9fUnmrxR7vbi1sTBeA==  dependencies:    "@emnapi/runtime" "^1.5.0""@img/sharp-win32-arm64@0.34.4":  version "0.34.4"  resolved "https://registry.yarnpkg.com/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.4.tgz#38e2c8a88826eac647f7c3f99efefb39897a8f5c"  integrity sha512-2Q250do/5WXTwxW3zjsEuMSv5sUU4Tq9VThWKlU2EYLm4MB7ZeMwF+SFJutldYODXF6jzc6YEOC+VfX0SZQPqA=="@img/sharp-win32-ia32@0.34.4":  version "0.34.4"  resolved "https://registry.yarnpkg.com/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.4.tgz#003a7eb0fdaba600790c3007cfd756e41a9cf749"  integrity sha512-3ZeLue5V82dT92CNL6rsal6I2weKw1cYu+rGKm8fOCCtJTR2gYeUfY3FqUnIJsMUPIH68oS5jmZ0NiJ508YpEw=="@img/sharp-win32-x64@0.34.4":  version "0.34.4"  resolved "https://registry.yarnpkg.com/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.4.tgz#b19f1f88ace8bfc20784a0ad31767f3438e025d1"  integrity sha512-xIyj4wpYs8J18sVN3mSQjwrw7fKUqRw+Z5rnHNCy5fYTxigBz81u5mOMPmFumwjcn8+ld1ppptMBCLic1nz6ig=="@kurkle/color@^0.3.0":  version "0.3.4"  resolved "https://registry.yarnpkg.com/@kurkle/color/-/color-0.3.4.tgz#4d4ff677e1609214fc71c580125ddddd86abcabf"  integrity sha512-M5UknZPHRu3DEDWoipU6sE8PdkZ6Z/S+v4dD+Ke8IaNlpdSQah50lz1KtcFBa2vsdOnwbbnxJwVM4wty6udA5w=="@next/env@15.5.4":  version "15.5.4"  resolved "https://registry.yarnpkg.com/@next/env/-/env-15.5.4.tgz#1d4aa6b238662d9cd95aea356b149b6f73061f95"  integrity sha512-27SQhYp5QryzIT5uO8hq99C69eLQ7qkzkDPsk3N+GuS2XgOgoYEeOav7Pf8Tn4drECOVDsDg8oj+/DVy8qQL2A=="@next/swc-darwin-arm64@15.5.4":  version "15.5.4"  resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.5.4.tgz#80cba1bec831d4b01fd03cbc48dfb7050775e5ee"  integrity sha512-nopqz+Ov6uvorej8ndRX6HlxCYWCO3AHLfKK2TYvxoSB2scETOcfm/HSS3piPqc3A+MUgyHoqE6je4wnkjfrOA=="@next/swc-darwin-x64@15.5.4":  version "15.5.4"  resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-15.5.4.tgz#d5408b19298f40da2b3dc9c2f9d1063ad98bd626"  integrity sha512-QOTCFq8b09ghfjRJKfb68kU9k2K+2wsC4A67psOiMn849K9ZXgCSRQr0oVHfmKnoqCbEmQWG1f2h1T2vtJJ9mA=="@next/swc-linux-arm64-gnu@15.5.4":  version "15.5.4"  resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.5.4.tgz#3b6b389bb4a1c9728a14afbbd59d2366ccd80b55"  integrity sha512-eRD5zkts6jS3VfE/J0Kt1VxdFqTnMc3QgO5lFE5GKN3KDI/uUpSyK3CjQHmfEkYR4wCOl0R0XrsjpxfWEA++XA=="@next/swc-linux-arm64-musl@15.5.4":  version "15.5.4"  resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.5.4.tgz#956127ecdfd56cda535af4651eed72a3b7270971"  integrity sha512-TOK7iTxmXFc45UrtKqWdZ1shfxuL4tnVAOuuJK4S88rX3oyVV4ZkLjtMT85wQkfBrOOvU55aLty+MV8xmcJR8A=="@next/swc-linux-x64-gnu@15.5.4":  version "15.5.4"  resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.5.4.tgz#9386de65e86c0b34ef19e14f0ffbd4328a08d5e6"  integrity sha512-7HKolaj+481FSW/5lL0BcTkA4Ueam9SPYWyN/ib/WGAFZf0DGAN8frNpNZYFHtM4ZstrHZS3LY3vrwlIQfsiMA=="@next/swc-linux-x64-musl@15.5.4":  version "15.5.4"  resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.5.4.tgz#c9094e5479b58c89d35b465f165b69be68de5a75"  integrity sha512-nlQQ6nfgN0nCO/KuyEUwwOdwQIGjOs4WNMjEUtpIQJPR2NUfmGpW2wkJln1d4nJ7oUzd1g4GivH5GoEPBgfsdw=="@next/swc-win32-arm64-msvc@15.5.4":  version "15.5.4"  resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.5.4.tgz#e83ca6b5ce9499bde5a4f3351cf74dc9e92cc83e"  integrity sha512-PcR2bN7FlM32XM6eumklmyWLLbu2vs+D7nJX8OAIoWy69Kef8mfiN4e8TUv2KohprwifdpFKPzIP1njuCjD0YA=="@next/swc-win32-x64-msvc@15.5.4":  version "15.5.4"  resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.5.4.tgz#5b5baf1bcb0ecba70d1768a0c8be59dfdcb2f111"  integrity sha512-1ur2tSHZj8Px/KMAthmuI9FMp/YFusMMGoRNJaRZMOlSkgvLjzosSdQI0cJAKogdHl3qXUQKL9MGaYvKwA7DXg=="@swc/helpers@0.5.15":  version "0.5.15"  resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.5.15.tgz#79efab344c5819ecf83a43f3f9f811fc84b516d7"  integrity sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==  dependencies:    tslib "^2.8.0"caniuse-lite@^1.0.30001579:  version "1.0.30001747"  resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001747.tgz#2cfbbb7f1f046439ebaf34bba337ee3d3474c7e5"  integrity sha512-mzFa2DGIhuc5490Nd/G31xN1pnBnYMadtkyTjefPI7wzypqgCEpeWu9bJr0OnDsyKrW75zA9ZAt7pbQFmwLsQg==chart.js@^4.5.0:  version "4.5.0"  resolved "https://registry.yarnpkg.com/chart.js/-/chart.js-4.5.0.tgz#11a1ef6c4befc514b1b0b613ebac226c4ad2740b"  integrity sha512-aYeC/jDgSEx8SHWZvANYMioYMZ2KX02W6f6uVfyteuCGcadDLcYVHdfdygsTQkQ4TKn5lghoojAsPj5pu0SnvQ==  dependencies:    "@kurkle/color" "^0.3.0"client-only@0.0.1:  version "0.0.1"  resolved "https://registry.yarnpkg.com/client-only/-/client-only-0.0.1.tgz#38bba5d403c41ab150bff64a95c85013cf73bca1"  integrity sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==clsx@^2.1.1:  version "2.1.1"  resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.1.tgz#eed397c9fd8bd882bfb18deab7102049a2f32999"  integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==csstype@^3.0.2:  version "3.1.3"  resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81"  integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==detect-libc@^2.1.0:  version "2.1.1"  resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.1.1.tgz#9f1e511ace6bb525efea4651345beac424dac7b9"  integrity sha512-ecqj/sy1jcK1uWrwpR67UhYrIFQ+5WlGxth34WquCbamhFA6hkkwiu37o6J5xCHdo1oixJRfVRw+ywV+Hq/0Aw==dom-helpers@^5.0.1:  version "5.2.1"  resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902"
@@ -136,48 +270,43 @@ localforage@^1.9.0:  dependencies:    lie "3.1.1"localized-strings@^0.2.0:  version "0.2.4"  resolved "https://registry.yarnpkg.com/localized-strings/-/localized-strings-0.2.4.tgz#9d61c06b60cc7b5edf7c46e6c7f2d1ecb84aeb2c"  integrity sha512-TKDhqFPkIIN/if2FSvVVZTaM/GP9TzfgdQ2uY65mr32xgFu5nqkKXprXbzy5rfx32DF5LDvS/y1UqYF/mAscYA==localized-strings@^2.0.3:  version "2.0.3"  resolved "https://registry.yarnpkg.com/localized-strings/-/localized-strings-2.0.3.tgz#93478eca4d8a3d3dc8732a85efb6e3be23b93204"  integrity sha512-eCSC9qK+dRrU9f9xA2glwooQCM5alK//Zj0DyKswZCBAbeefyrdplp6KQiKFeeuFu9K3QbfCQ+0Kdo0cABP6Ww==loose-envify@^1.1.0, loose-envify@^1.4.0:loose-envify@^1.4.0:  version "1.4.0"  resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"  integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==  dependencies:    js-tokens "^3.0.0 || ^4.0.0"nanoid@^3.3.4:nanoid@^3.3.6:  version "3.3.11"  resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b"  integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==next@^12.1.6:  version "12.3.7"  resolved "https://registry.yarnpkg.com/next/-/next-12.3.7.tgz#4a53921cdffe08e6c56d8ef19e81ffc00a60cb1a"  integrity sha512-3PDn+u77s5WpbkUrslBP6SKLMeUj9cSx251LOt+yP9fgnqXV/ydny81xQsclz9R6RzCLONMCtwK2RvDdLa/mJQ==next@^15.5.4:  version "15.5.4"  resolved "https://registry.yarnpkg.com/next/-/next-15.5.4.tgz#e7412c805c0b686ceaf294de703b7c9be59a4081"  integrity sha512-xH4Yjhb82sFYQfY3vbkJfgSDgXvBB6a8xPs9i35k6oZJRoQRihZH+4s9Yo2qsWpzBmZ3lPXaJ2KPXLfkvW4LnA==  dependencies:    "@next/env" "12.3.7"    "@swc/helpers" "0.4.11"    caniuse-lite "^1.0.30001406"    postcss "8.4.14"    styled-jsx "5.0.7"    use-sync-external-store "1.2.0"    "@next/env" "15.5.4"    "@swc/helpers" "0.5.15"    caniuse-lite "^1.0.30001579"    postcss "8.4.31"    styled-jsx "5.1.6"  optionalDependencies:    "@next/swc-android-arm-eabi" "12.3.4"    "@next/swc-android-arm64" "12.3.4"    "@next/swc-darwin-arm64" "12.3.4"    "@next/swc-darwin-x64" "12.3.4"    "@next/swc-freebsd-x64" "12.3.4"    "@next/swc-linux-arm-gnueabihf" "12.3.4"    "@next/swc-linux-arm64-gnu" "12.3.4"    "@next/swc-linux-arm64-musl" "12.3.4"    "@next/swc-linux-x64-gnu" "12.3.4"    "@next/swc-linux-x64-musl" "12.3.4"    "@next/swc-win32-arm64-msvc" "12.3.4"    "@next/swc-win32-ia32-msvc" "12.3.4"    "@next/swc-win32-x64-msvc" "12.3.4"    "@next/swc-darwin-arm64" "15.5.4"    "@next/swc-darwin-x64" "15.5.4"    "@next/swc-linux-arm64-gnu" "15.5.4"    "@next/swc-linux-arm64-musl" "15.5.4"    "@next/swc-linux-x64-gnu" "15.5.4"    "@next/swc-linux-x64-musl" "15.5.4"    "@next/swc-win32-arm64-msvc" "15.5.4"    "@next/swc-win32-x64-msvc" "15.5.4"    sharp "^0.34.3"object-assign@^4.1.1:  version "4.1.1"
@@ -189,12 +318,12 @@ picocolors@^1.0.0:  resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b"  integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==postcss@8.4.14:  version "8.4.14"  resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.14.tgz#ee9274d5622b4858c1007a74d76e42e56fd21caf"  integrity sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==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.4"    nanoid "^3.3.6"    picocolors "^1.0.0"    source-map-js "^1.0.2"
@@ -212,18 +341,17 @@ react-csv@^2.0.3:  resolved "https://registry.yarnpkg.com/react-csv/-/react-csv-2.2.2.tgz#5bbf0d72a846412221a14880f294da9d6def9bfb"  integrity sha512-RG5hOcZKZFigIGE8LxIEV/OgS1vigFQT4EkaHeKgyuCbUAu9Nbd/1RYq++bJcJJ9VOqO/n9TZRADsXNDR4VEpw==react-dom@^18.2.0:  version "18.3.1"  resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.3.1.tgz#c2265d79511b57d479b3dd3fdfa51536494c5cb4"  integrity sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==react-dom@^19.2.0:  version "19.2.0"  resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-19.2.0.tgz#00ed1e959c365e9a9d48f8918377465466ec3af8"  integrity sha512-UlbRu4cAiGaIewkPyiRGJk0imDN2T3JjieT6spoL2UeSf5od4n5LB/mQ4ejmxhCFT1tYe8IvaFulzynWovsEFQ==  dependencies:    loose-envify "^1.1.0"    scheduler "^0.23.2"    scheduler "^0.27.0"react-hook-form@^7.32.1:  version "7.56.4"  resolved "https://registry.yarnpkg.com/react-hook-form/-/react-hook-form-7.56.4.tgz#273f55d43fb24ace3e2b9409d0d5326306d7905e"  integrity sha512-Rob7Ftz2vyZ/ZGsQZPaRdIefkgOSrQSPXfqBdvOPwJfoGnjwRJUs7EM7Kc1mcoDv3NOtqBzPGbcMB8CGn9CKgw==react-hook-form@^7.64.0:  version "7.64.0"  resolved "https://registry.yarnpkg.com/react-hook-form/-/react-hook-form-7.64.0.tgz#7820961b773d0b4706baa506e8aa53a0e904b6f7"  integrity sha512-fnN+vvTiMLnRqKNTVhDysdrUay0kUUAymQnFIznmgDvapjveUWOOPqMNzPg+A+0yf9DuE2h6xzBjN1s+Qx8wcg==react-hotkeys@^2.0.0:  version "2.0.0"
@@ -237,24 +365,24 @@ react-is@^16.13.1:  resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"  integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==react-is@^18.2.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@^19.2.0:  version "19.2.0"  resolved "https://registry.yarnpkg.com/react-is/-/react-is-19.2.0.tgz#ddc3b4a4e0f3336c3847f18b806506388d7b9973"  integrity sha512-x3Ax3kNSMIIkyVYhWPyO09bu0uttcAIoecO/um/rKGQ4EltYWVYtyiGkS/3xMynrbVQdS69Jhlv8FXUEZehlzA==react-localization@^1.0.16:  version "1.0.19"  resolved "https://registry.yarnpkg.com/react-localization/-/react-localization-1.0.19.tgz#b65a7fa58096cff6aa38bc3a0c4817ec97469ef0"  integrity sha512-f4E6T8xRis19K8qMOnnhjGV2quy1YH2lrSsnAiytvgt7uOSp6WgDhrZH6XZEaEFqupTOCFSf8uagIoIAkjl4JA==react-localization@^2.0.6:  version "2.0.6"  resolved "https://registry.yarnpkg.com/react-localization/-/react-localization-2.0.6.tgz#fc7189a758196e75c8856382632d71c3f587331d"  integrity sha512-+UIJ8Dm/Bfdrz38u4d6rgW2Ip9TP9uetUp1WgTrWibgPoJXnclAgPafWL26NbBzuxmOxo9UIRqOKWY/MBJmNdQ==  dependencies:    localized-strings "^0.2.0"    localized-strings "^2.0.3"react-toastify@^9.0.4:  version "9.1.3"  resolved "https://registry.yarnpkg.com/react-toastify/-/react-toastify-9.1.3.tgz#1e798d260d606f50e0fab5ee31daaae1d628c5ff"  integrity sha512-fPfb8ghtn/XMxw3LkxQBk3IyagNpF/LIKjOBflbexr2AWxAH1MJgvnESwEwBn9liLFXgTKWgBSdZpw9m4OTHTg==react-toastify@^11.0.5:  version "11.0.5"  resolved "https://registry.yarnpkg.com/react-toastify/-/react-toastify-11.0.5.tgz#ce4c42d10eeb433988ab2264d3e445c4e9d13313"  integrity sha512-EpqHBGvnSTtHYhCPLxML05NLY2ZX0JURbAdNYa6BUkk+amz4wbKBQvoKQAB0ardvSarUBuY4Q4s1sluAzZwkmA==  dependencies:    clsx "^1.1.1"    clsx "^2.1.1"react-transition-group@^4.2.1:  version "4.4.5"
@@ -266,41 +394,71 @@ react-transition-group@^4.2.1:    loose-envify "^1.4.0"    prop-types "^15.6.2"react@^18.2.0:  version "18.3.1"  resolved "https://registry.yarnpkg.com/react/-/react-18.3.1.tgz#49ab892009c53933625bd16b2533fc754cab2891"  integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==  dependencies:    loose-envify "^1.1.0"scheduler@^0.23.2:  version "0.23.2"  resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.2.tgz#414ba64a3b282892e944cf2108ecc078d115cdc3"  integrity sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==react@^19.2.0:  version "19.2.0"  resolved "https://registry.yarnpkg.com/react/-/react-19.2.0.tgz#d33dd1721698f4376ae57a54098cb47fc75d93a5"  integrity sha512-tmbWg6W31tQLeB5cdIBOicJDJRR2KzXsV7uSK9iNfLWQ5bIZfxuPEHp7M8wiHyHnn0DD1i7w3Zmin0FtkrwoCQ==scheduler@^0.27.0:  version "0.27.0"  resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.27.0.tgz#0c4ef82d67d1e5c1e359e8fc76d3a87f045fe5bd"  integrity sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==semver@^7.7.2:  version "7.7.2"  resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.2.tgz#67d99fdcd35cec21e6f8b87a7fd515a33f982b58"  integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==sharp@^0.34.3:  version "0.34.4"  resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.34.4.tgz#73c2c5a425e98250b8b927e5537f711da8966e38"  integrity sha512-FUH39xp3SBPnxWvd5iib1X8XY7J0K0X7d93sie9CJg2PO8/7gmg89Nve6OjItK53/MlAushNNxteBYfM6DEuoA==  dependencies:    loose-envify "^1.1.0"    "@img/colour" "^1.0.0"    detect-libc "^2.1.0"    semver "^7.7.2"  optionalDependencies:    "@img/sharp-darwin-arm64" "0.34.4"    "@img/sharp-darwin-x64" "0.34.4"    "@img/sharp-libvips-darwin-arm64" "1.2.3"    "@img/sharp-libvips-darwin-x64" "1.2.3"    "@img/sharp-libvips-linux-arm" "1.2.3"    "@img/sharp-libvips-linux-arm64" "1.2.3"    "@img/sharp-libvips-linux-ppc64" "1.2.3"    "@img/sharp-libvips-linux-s390x" "1.2.3"    "@img/sharp-libvips-linux-x64" "1.2.3"    "@img/sharp-libvips-linuxmusl-arm64" "1.2.3"    "@img/sharp-libvips-linuxmusl-x64" "1.2.3"    "@img/sharp-linux-arm" "0.34.4"    "@img/sharp-linux-arm64" "0.34.4"    "@img/sharp-linux-ppc64" "0.34.4"    "@img/sharp-linux-s390x" "0.34.4"    "@img/sharp-linux-x64" "0.34.4"    "@img/sharp-linuxmusl-arm64" "0.34.4"    "@img/sharp-linuxmusl-x64" "0.34.4"    "@img/sharp-wasm32" "0.34.4"    "@img/sharp-win32-arm64" "0.34.4"    "@img/sharp-win32-ia32" "0.34.4"    "@img/sharp-win32-x64" "0.34.4"source-map-js@^1.0.2:  version "1.2.1"  resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46"  integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==styled-jsx@5.0.7:  version "5.0.7"  resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.0.7.tgz#be44afc53771b983769ac654d355ca8d019dff48"  integrity sha512-b3sUzamS086YLRuvnaDigdAewz1/EFYlHpYBP5mZovKEdQQOIIYq8lApylub3HHZ6xFjV051kkGU7cudJmrXEA==styled-jsx@5.1.6:  version "5.1.6"  resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.1.6.tgz#83b90c077e6c6a80f7f5e8781d0f311b2fe41499"  integrity sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==  dependencies:    client-only "0.0.1"tslib@^2.4.0:tslib@^2.4.0, tslib@^2.8.0:  version "2.8.1"  resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f"  integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==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"  integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==uuid@^9.0.1:  version "9.0.1"  resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.1.tgz#e188d4c8853cc722220392c424cd637f32293f30"  integrity sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==uuid@^13.0.0:  version "13.0.0"  resolved "https://registry.yarnpkg.com/uuid/-/uuid-13.0.0.tgz#263dc341b19b4d755eb8fe36b78d95a6b65707e8"  integrity sha512-XQegIaBTVUjSHliKqcnFqYypAd4S+WCYt5NIeRs6w/UAry7z8Y9j5ZwRRL4kzq9U3sD6v+85er9FvkEaBpji2w==