From 34a96a8445213a8e49d41c3adfa7e1d2373d0955 Mon Sep 17 00:00:00 2001 From: Wind-Explorer Date: Mon, 29 Jul 2024 17:59:04 +0800 Subject: [PATCH 01/16] Recover email from sign in --- client/assets/google-passkey.svg | 1 + client/src/App.tsx | 106 +++++++++++--------- client/src/components/SignInModule.tsx | 26 +++-- client/src/layouts/global.tsx | 21 ++++ client/src/layouts/restricted.tsx | 34 +++++++ client/src/pages/ForgotPasswordPage.tsx | 109 +++++++++++++++++++++ client/src/pages/ResetPasswordPage.tsx | 123 +++++++++--------------- 7 files changed, 290 insertions(+), 130 deletions(-) create mode 100644 client/assets/google-passkey.svg create mode 100644 client/src/layouts/global.tsx create mode 100644 client/src/layouts/restricted.tsx create mode 100644 client/src/pages/ForgotPasswordPage.tsx diff --git a/client/assets/google-passkey.svg b/client/assets/google-passkey.svg new file mode 100644 index 0000000..91e8659 --- /dev/null +++ b/client/assets/google-passkey.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/src/App.tsx b/client/src/App.tsx index 99b95ef..44e9f92 100644 --- a/client/src/App.tsx +++ b/client/src/App.tsx @@ -21,60 +21,72 @@ import DefaultLayout from "./layouts/default"; import AdministratorLayout from "./layouts/administrator"; import UsersManagement from "./pages/UsersManagement"; import ResetPasswordPage from "./pages/ResetPasswordPage"; +import ForgotPasswordPage from "./pages/ForgotPasswordPage"; +import RestrictedLayout from "./layouts/restricted"; function App() { return ( - {/* User Routes */} - - }> - {/* General Routes */} - } /> - } path="signup" /> - } path="signin" /> - } path="springboard" /> - } path="manage-account" /> + + {/* User Routes */} + + }> + {/* General Routes */} + } /> + } path="signup" /> + } path="signin" /> + } path="springboard" /> + } path="manage-account" /> - {/* Events Route */} + {/* Events Route */} + + } /> + + + {/* Karang Guni Schedules Route */} + + } /> + + + {/* Home Bill Contest Route */} + + } /> + } path="new-submission" /> + + + {/* Community Posts Route */} + + } /> + } path="create" /> + } path="post/:id" /> + } path="edit/:id" /> + + + + {/* Special (Restricted) Routes */} + }> + } path="forgot-password" /> + } + path="reset-password/:token" + /> + + + + {/* Admin Routes */} + }> + } /> + } /> + + } /> + + + {/* Events */} - } /> + } /> + } path="createEvent" /> + } path="editEvent/:id" /> - - {/* Karang Guni Schedules Route */} - - } /> - - - {/* Home Bill Contest Route */} - - } /> - } path="new-submission" /> - - - {/* Community Posts Route */} - - } /> - } path="create" /> - } path="post/:id" /> - } path="edit/:id" /> - - - } path="reset-password/:token" /> - - - {/* Admin Routes */} - }> - } /> - } /> - - } /> - - - {/* Events */} - - } /> - } path="createEvent" /> - } path="editEvent/:id" /> diff --git a/client/src/components/SignInModule.tsx b/client/src/components/SignInModule.tsx index ecc7bb1..3d810bc 100644 --- a/client/src/components/SignInModule.tsx +++ b/client/src/components/SignInModule.tsx @@ -1,7 +1,6 @@ import { Button, Link } from "@nextui-org/react"; import { Formik, Form } from "formik"; import * as Yup from "yup"; -import axios from "axios"; import config from "../config"; import NextUIFormikInput from "./NextUIFormikInput"; import { useNavigate } from "react-router-dom"; @@ -74,13 +73,24 @@ export default function SignInModule() { placeholder="johndoe@email.com" labelPlacement="outside" /> - +
+ + { + navigate("/forgot-password"); + }} + > + Forgot password? + +
+
+

·

+

+ © Copyright {new Date().getFullYear()}. All rights reserved. +

+
+ + + + + ); +} diff --git a/client/src/pages/ForgotPasswordPage.tsx b/client/src/pages/ForgotPasswordPage.tsx new file mode 100644 index 0000000..ed816c3 --- /dev/null +++ b/client/src/pages/ForgotPasswordPage.tsx @@ -0,0 +1,109 @@ +import { Button } from "@nextui-org/react"; +import { Formik, Form } from "formik"; +import * as Yup from "yup"; +import axios from "axios"; +import config from "../config"; +import NextUIFormikInput from "../components/NextUIFormikInput"; +import { popErrorToast, popToast } from "../utilities"; +import { ArrowUTurnLeftIcon } from "../icons"; +import { useNavigate } from "react-router-dom"; +import instance from "../security/http"; + +const validationSchema = Yup.object({ + email: Yup.string() + .trim() + .lowercase() + .min(5) + .max(69) + .email("Invalid email format") + .required("Email is required"), +}); + +export default function ForgotPasswordPage() { + const navigate = useNavigate(); + const initialValues = { + email: "", + }; + + const handleSubmit = (values: any): void => { + instance + .put( + `${ + config.serverAddress + }/users/request-reset-password/${encodeURIComponent(values.email)}` + ) + .then(() => { + console.log("Email sent successfully"); + popToast("Email sent to your mailbox!", 1); + setTimeout(() => { + navigate("/signin"); + }, 1500); + }) + .catch((error) => { + console.error("Failed to send email:", error); + popErrorToast("Failed to send email: " + error); + }); + }; + + return ( +
+
+ +
+ Google Passkey SVG +
+
+
+
+
+
+

Password Recovery

+

+ Enter your email address below, and we will send you a recovery + mail. +

+
+
+ + {({ isValid, dirty }) => ( +
+ + + + )} +
+
+
+ ); +} diff --git a/client/src/pages/ResetPasswordPage.tsx b/client/src/pages/ResetPasswordPage.tsx index 4a8ef7d..44afbdc 100644 --- a/client/src/pages/ResetPasswordPage.tsx +++ b/client/src/pages/ResetPasswordPage.tsx @@ -2,8 +2,7 @@ import { useParams, useNavigate } from "react-router-dom"; import instance from "../security/http"; import config from "../config"; import { useEffect, useState } from "react"; -import { Button, Card, CircularProgress } from "@nextui-org/react"; -import EcoconnectFullLogo from "../components/EcoconnectFullLogo"; +import { Button } from "@nextui-org/react"; import NextUIFormikInput from "../components/NextUIFormikInput"; import { Formik, Form } from "formik"; import * as Yup from "yup"; @@ -29,7 +28,6 @@ export default function ResetPasswordPage() { const navigate = useNavigate(); const [validationResult, setValidationResult] = useState(false); - const [pageLoading, setPageLoading] = useState(true); const validateToken = () => { instance @@ -39,9 +37,6 @@ export default function ResetPasswordPage() { }) .catch(() => { setValidationResult(false); - }) - .finally(() => { - setPageLoading(false); }); }; @@ -66,77 +61,55 @@ export default function ResetPasswordPage() { }; return ( -
-
- {pageLoading && ( -
- +
+ {validationResult && ( +
+
+

Password Reset

+

Enter a new password below.

- )} - {!pageLoading && ( -
- - {validationResult && ( -
-
-

Password Reset

-

Enter a new password below.

-
- - {({ isValid, dirty }) => ( -
- - - - - )} -
-
- )} - {!validationResult && ( -
-
-

- Reset portal has been closed. -

-

Please request for a password reset again.

-
-
- )} -
-
- -

·

-

- © Copyright {new Date().getFullYear()}. All rights reserved. -

-
+ + {({ isValid, dirty }) => ( +
+ + + + + )} +
+
+ )} + {!validationResult && ( +
+
+

Reset portal has been closed.

+

Please request for a password reset again.

- )} -
+
+ )}
); } From a76ec634cab56716ffa36172c51f73bd2f5934b6 Mon Sep 17 00:00:00 2001 From: ZacTohZY Date: Mon, 29 Jul 2024 21:26:34 +0800 Subject: [PATCH 02/16] Modified HBForm & HBContest Page --- client/src/components/InsertImage.tsx | 31 ++-- client/src/components/NextUIFormikInput.tsx | 14 ++ client/src/pages/HBContestPage.tsx | 103 +++++------ client/src/pages/HBFormPage.tsx | 178 ++++++++++++-------- server/models/HBCform.js | 4 + server/routes/hbcform.js | 2 + 6 files changed, 203 insertions(+), 129 deletions(-) diff --git a/client/src/components/InsertImage.tsx b/client/src/components/InsertImage.tsx index 4fe7a9c..629411f 100644 --- a/client/src/components/InsertImage.tsx +++ b/client/src/components/InsertImage.tsx @@ -1,7 +1,7 @@ import React, { useState } from 'react'; interface InsertImageProps { - onImageSelected: (file: File) => void; + onImageSelected: (file: File | null) => void; } const InsertImage: React.FC = ({ onImageSelected }) => { @@ -10,22 +10,31 @@ const InsertImage: React.FC = ({ onImageSelected }) => { const handleImageSelect = (event: React.ChangeEvent) => { const selectedFiles = event.target.files as FileList; - const file = selectedFiles?.[0]; - if (file) { - setSelectedFile(file); - setPreviewImage(URL.createObjectURL(file)); - onImageSelected(file); - } + const file = selectedFiles?.[0] || null; + setSelectedFile(file); + setPreviewImage(file ? URL.createObjectURL(file) : ''); + onImageSelected(file); }; return ( -
- +
+ {selectedFile && ( - Selected Image + Selected Image )}
); }; -export default InsertImage; \ No newline at end of file +export default InsertImage; diff --git a/client/src/components/NextUIFormikInput.tsx b/client/src/components/NextUIFormikInput.tsx index 97bd714..8c5cd33 100644 --- a/client/src/components/NextUIFormikInput.tsx +++ b/client/src/components/NextUIFormikInput.tsx @@ -10,16 +10,28 @@ interface NextUIFormikInputProps { placeholder: string; labelPlacement?: "inside" | "outside"; startContent?: JSX.Element; + readOnly?: boolean; + setFieldValue?: (field: string, value: any, shouldValidate?: boolean) => void; } const NextUIFormikInput = ({ label, startContent, + readOnly = false, + setFieldValue, ...props }: NextUIFormikInputProps) => { const [field, meta] = useField(props.name); const [inputType, setInputType] = useState(props.type); + const handleChange = (e: React.ChangeEvent) => { + const { value } = e.target; + field.onChange(e); + if (setFieldValue) { + setFieldValue(props.name, value); + } + }; + return ( ) : null } + readOnly={readOnly} + onChange={handleChange} /> ); }; diff --git a/client/src/pages/HBContestPage.tsx b/client/src/pages/HBContestPage.tsx index b62ce9b..cc97f09 100644 --- a/client/src/pages/HBContestPage.tsx +++ b/client/src/pages/HBContestPage.tsx @@ -1,64 +1,65 @@ -import { - Card, - CardHeader, - CardBody, - CardFooter, - Divider, - Button, -} from "@nextui-org/react"; +import { Button } from "@nextui-org/react"; import { useNavigate } from "react-router-dom"; export default function HBContestPage() { const navigate = useNavigate(); + const handleJoinClick = () => { + let accessToken = localStorage.getItem("accessToken"); + if (!accessToken) { + setTimeout(() => { + navigate("/signin"); + }, 1000); + } else { + navigate("new-submission"); + } + }; + return ( -
-
- - -
-

Home Bill Contest

-
-
- - -

+

+
+
+
+

+ Home Bill Contest +

+
+
+

This contest is to encourage residents to reduce the use of electricity and water usage. This contest would be won by the person with the lowest overall bill average. Join us in this - important effort to create a more sustainable future for everyone. - Participants would be required to input and upload their bills - into the form to ensure integrity and honesty.{" "} + important effort to create a more sustainable future for everyone.{" "} + + Participants would be required to input and upload their bills into the form to ensure integrity and honesty.{" "} +

- - - -
-
-

Winners

-

- There will 3 winners for each month. Each winner will receive - random food vouchers. -

-

1st: 3 vouchers

-

2nd: 2 vouchers

-

3rd: 1 voucher

-
-
- -
-
-
- +
+
+

+ Winners +

+
+
+

+ There will 3 winners for each month. Each winner will receive + random food vouchers. +

+

1st → 3 vouchers

+

2nd → 2 vouchers

+

3rd → 1 voucher

+
+
+ +
+
); -} +} \ No newline at end of file diff --git a/client/src/pages/HBFormPage.tsx b/client/src/pages/HBFormPage.tsx index 841d8a1..96ba4a5 100644 --- a/client/src/pages/HBFormPage.tsx +++ b/client/src/pages/HBFormPage.tsx @@ -1,3 +1,4 @@ +import { useEffect, useState } from 'react'; import { Button } from "@nextui-org/react"; import { ArrowUTurnLeftIcon } from "../icons"; import { useNavigate } from "react-router-dom"; @@ -8,29 +9,25 @@ import NextUIFormikInput from "../components/NextUIFormikInput"; import axios from "axios"; import InsertImage from "../components/InsertImage"; import { retrieveUserInformation } from "../security/users"; -import { useEffect, useState } from "react"; const validationSchema = Yup.object({ electricalBill: Yup.number() .typeError("Must be a number") .positive("Must be a positive value") .max(99999.99, "Value is too large") - .required(), + .required("Electrical bill is a required field"), waterBill: Yup.number() .typeError("Must be a number") .positive("Must be a positive value") .max(99999.99, "Value is too large") - .required(), - totalBill: Yup.number() - .typeError("Must be a number") - .positive("Must be a positive value") - .max(99999.99, "Value is too large") - .required(), + .required("Water bill is a required field"), noOfDependents: Yup.number() .typeError("Must be a number") .integer("Must be a whole number") .positive("Must be a positive value") - .required(), + .required("No. of dependents is a required field"), + ebPicture: Yup.mixed().required("Electrical bill picture is required"), + wbPicture: Yup.mixed().required("Water bill picture is required"), }); export default function HBFormPage() { @@ -41,11 +38,18 @@ export default function HBFormPage() { waterBill: "", totalBill: "", noOfDependents: "", + avgBill: "", ebPicture: null, wbPicture: null, userId: "", }); + // Add state for image selection + const [imagesSelected, setImagesSelected] = useState({ + ebPicture: false, + wbPicture: false, + }); + useEffect(() => { const getUserInformation = async () => { try { @@ -78,6 +82,7 @@ export default function HBFormPage() { formData.append("waterBill", values.waterBill); formData.append("totalBill", values.totalBill); formData.append("noOfDependents", values.noOfDependents); + formData.append("avgBill", values.avgBill); if (values.ebPicture) { formData.append("ebPicture", values.ebPicture); @@ -124,78 +129,117 @@ export default function HBFormPage() { } }; + // Handler for image selection + const handleImageSelection = (name: string, file: File | null) => { + setImagesSelected(prevState => ({ + ...prevState, + [name]: !!file, + })); + }; + return (
-
+
-
+
- {({ isValid, dirty, isSubmitting, setFieldValue }) => ( -
-
-
-
- - - - + {({ isValid, dirty, isSubmitting, setFieldValue, values }) => { + // Calculate the total bill + useEffect(() => { + const totalBill = Number(values.electricalBill) + Number(values.waterBill); + setFieldValue("totalBill", totalBill.toFixed(2)); + + const avgBill = Number(values.noOfDependents) > 0 + ? totalBill / Number(values.noOfDependents) + : 0; + setFieldValue("avgBill", avgBill.toFixed(2)); + + }, [values.electricalBill, values.waterBill, values.noOfDependents, setFieldValue]); + + // Disabled the submit button because the images field are not selected + const isSubmitDisabled = !imagesSelected.ebPicture || !imagesSelected.wbPicture; + + return ( + +
+
+
+ + + + + +
+
+ { + setFieldValue("ebPicture", file); + handleImageSelection("ebPicture", file); + }} + /> + { + setFieldValue("wbPicture", file); + handleImageSelection("wbPicture", file); + }} + /> +
-
- { - setFieldValue("ebPicture", file); - }} - /> - { - setFieldValue("wbPicture", file); - }} - /> +
+
-
- -
-
- - )} + + ); + }}
diff --git a/server/models/HBCform.js b/server/models/HBCform.js index 65e7aec..1d3bcb8 100644 --- a/server/models/HBCform.js +++ b/server/models/HBCform.js @@ -26,6 +26,10 @@ module.exports = (sequelize, DataTypes) => { type: DataTypes.INTEGER, allowNull: false }, + avgBill: { + type: DataTypes.DECIMAL(7, 2), + allowNull: false + }, ebPicture: { type: DataTypes.BLOB("long"), allowNull: true, diff --git a/server/routes/hbcform.js b/server/routes/hbcform.js index 85bd720..ba7de79 100644 --- a/server/routes/hbcform.js +++ b/server/routes/hbcform.js @@ -23,6 +23,7 @@ router.post("/", upload.fields([ waterBill: yup.number().positive().required(), totalBill: yup.number().positive().required(), noOfDependents: yup.number().integer().positive().required(), + avgBill: yup.number().positive().required(), }); try { data = await validationSchema.validate(data, { abortEarly: false }); @@ -48,6 +49,7 @@ router.get("/", async (req, res) => { { waterBill: { [Op.like]: `%${search}%` } }, { totalBill: { [Op.like]: `%${search}%` } }, { noOfDependents: { [Op.like]: `%${search}%` } }, + { avgBill: { [Op.like]: `%${search}%` } }, ]; } let list = await HBCform.findAll({ From 1edf63cc5b0a544568a72c0d35b1dd499affe6b9 Mon Sep 17 00:00:00 2001 From: Rykkel <220993G@mymail.nyp.edu.sg> Date: Tue, 30 Jul 2024 02:21:26 +0800 Subject: [PATCH 03/16] Retrieve username for post --- client/src/pages/CommunityPage.tsx | 78 +++++++++++++++++------------ client/src/pages/CreatePostPage.tsx | 21 +++++++- client/src/pages/PostPage.tsx | 35 +++++++++++-- client/src/security/usersbyid.ts | 17 +++++++ server/models/Post.js | 7 ++- server/routes/post.js | 13 +++-- 6 files changed, 126 insertions(+), 45 deletions(-) create mode 100644 client/src/security/usersbyid.ts diff --git a/client/src/pages/CommunityPage.tsx b/client/src/pages/CommunityPage.tsx index fffe686..56a8857 100644 --- a/client/src/pages/CommunityPage.tsx +++ b/client/src/pages/CommunityPage.tsx @@ -16,6 +16,7 @@ import { ModalFooter, useDisclosure, Spinner, + User, } from "@nextui-org/react"; import config from "../config"; import instance from "../security/http"; @@ -28,7 +29,8 @@ import { XMarkIcon, } from "../icons"; import { useNavigate } from "react-router-dom"; -// import { retrieveUserInformation } from "../security/users"; +import { retrieveUserInformationById } from "../security/usersbyid"; +import { number } from "yup"; // import UserPostImage from "../components/UserPostImage"; interface Post { @@ -37,17 +39,29 @@ interface Post { content: string; tags: string; id: number; + userId: number; } +type User = { + id: number; + firstName: string; + lastName: string; +}; + export default function CommunityPage() { const navigate = useNavigate(); - + const { isOpen, onOpen, onOpenChange } = useDisclosure(); + const [selectedPost, setSelectedPost] = useState(null); + const [communityList, setCommunityList] = useState([]); + const [search, setSearch] = useState(""); // Search Function + const [userInformation, setUserInformation] = useState>({}); + let accessToken = localStorage.getItem("accessToken"); if (!accessToken) { return ( setTimeout(() => { navigate("/signin"); - }, 1000) + }, 1000) &&
@@ -59,29 +73,40 @@ export default function CommunityPage() { ); } - const { isOpen, onOpen, onOpenChange } = useDisclosure(); - const [selectedPost, setSelectedPost] = useState(null); - - // const [userInformation, setUserInformation] = useState(null); - - // communityList is a state variable - // function setCommunityList is the setter function for the state variable - // e initial value of the state variable is an empty array [] - // After getting the api response, call setCommunityList() to set the value of CommunityList - const [communityList, setCommunityList] = useState([]); - - // Search Function - const [search, setSearch] = useState(""); - const onSearchChange = (e: { target: { value: SetStateAction } }) => { - setSearch(e.target.value); - }; - const getPosts = () => { instance.get(config.serverAddress + "/post").then((res) => { setCommunityList(res.data); }); }; + useEffect(() => { + getPosts(); + }, []); + + useEffect(() => { + const fetchUserInformation = async (userId: number) => { + try { + const user = await retrieveUserInformationById(userId); + setUserInformation((prevMap) => ({ + ...prevMap, + [userId]: user, + })); + } catch (error) { + console.error(error); + } + }; + + communityList.forEach((post) => { + if (!userInformation[post.userId]) { + fetchUserInformation(post.userId); + } + }); + }, [communityList]); + + const onSearchChange = (e: { target: { value: SetStateAction } }) => { + setSearch(e.target.value); + }; + const searchPosts = () => { instance .get(config.serverAddress + `/post?search=${search}`) @@ -90,10 +115,6 @@ export default function CommunityPage() { }); }; - useEffect(() => { - getPosts(); - }, []); - const onSearchKeyDown = (e: { key: string }) => { if (e.key === "Enter") { searchPosts(); @@ -108,13 +129,6 @@ export default function CommunityPage() { getPosts(); }; - useEffect(() => { - instance.get(config.serverAddress + "/post").then((res) => { - console.log(res.data); - setCommunityList(res.data); - }); - }, []); - const handleDeleteClick = (post: Post) => { setSelectedPost(post); onOpen(); @@ -168,7 +182,7 @@ export default function CommunityPage() {

{post.title}

-

Adam

+

{userInformation[post.userId]?.firstName} {userInformation[post.userId]?.lastName}

diff --git a/client/src/pages/CreatePostPage.tsx b/client/src/pages/CreatePostPage.tsx index b23593c..4d7a97e 100644 --- a/client/src/pages/CreatePostPage.tsx +++ b/client/src/pages/CreatePostPage.tsx @@ -7,6 +7,8 @@ import NextUIFormikInput from "../components/NextUIFormikInput"; import NextUIFormikTextarea from "../components/NextUIFormikTextarea"; import config from "../config"; import { ArrowUTurnLeftIcon } from "../icons"; +import { useEffect, useState } from "react"; +import { retrieveUserInformation } from "../security/users"; const validationSchema = Yup.object({ title: Yup.string() @@ -31,6 +33,7 @@ const validationSchema = Yup.object({ function CreatePostPage() { const navigate = useNavigate(); + const [userId, setUserId] = useState(null); const initialValues = { title: "", @@ -38,12 +41,28 @@ function CreatePostPage() { tags: "", }; + useEffect(() => { + const getUserInformation = async () => { + try { + const user = await retrieveUserInformation(); // Get the user ID + setUserId(user.id); // Set the user ID in the state + } catch (error) { + console.error(error); + } + }; + getUserInformation(); + }, []); + const handleSubmit = async ( values: any, { setSubmitting, resetForm, setFieldError }: any ) => { try { - const response = await axios.post(config.serverAddress + "/post", values); // Assuming an API route + const postData = { + ...values, + userId: userId + } + const response = await axios.post(config.serverAddress + "/post", postData); // Assuming an API route if (response.status === 200) { console.log("Post created successfully:", response.data); resetForm(); // Clear form after successful submit diff --git a/client/src/pages/PostPage.tsx b/client/src/pages/PostPage.tsx index bcc7079..152e358 100644 --- a/client/src/pages/PostPage.tsx +++ b/client/src/pages/PostPage.tsx @@ -24,6 +24,7 @@ import { HandThumbsUpIcon, ArrowUTurnLeftIcon, } from "../icons"; +import { retrieveUserInformationById } from "../security/usersbyid"; interface Post { title: string; @@ -31,23 +32,49 @@ interface Post { content: string; tags: string; id: number; + userId: number; } +type User = { + id: number; + firstName: string; + lastName: string; +}; + const PostPage: React.FC = () => { const navigate = useNavigate(); const { id } = useParams<{ id: string }>(); const [post, setPost] = useState(null); const { isOpen, onOpen, onOpenChange } = useDisclosure(); const [selectedPost, setSelectedPost] = useState(null); + const [userInformation, setUserInformation] = useState>({}); useEffect(() => { if (id) { - instance.get(`${config.serverAddress}/post/${id}`).then((res) => { - setPost(res.data); - }); + instance.get(`${config.serverAddress}/post/${id}`) + .then((res) => setPost(res.data)) + .catch((error) => console.error("Error fetching post:", error)); } }, [id]); + useEffect(() => { + if (post) { + const fetchUserInformation = async () => { + try { + const user = await retrieveUserInformationById(post.userId); + setUserInformation((prevMap) => ({ + ...prevMap, + [post.userId]: user, + })); + } catch (error) { + console.error(error); + } + }; + + fetchUserInformation(); + } + }, [post]); + if (!post) { return (
@@ -104,7 +131,7 @@ const PostPage: React.FC = () => {

{post.title}

-

Adam

+

{userInformation[post.userId]?.firstName} {userInformation[post.userId]?.lastName}

diff --git a/client/src/security/usersbyid.ts b/client/src/security/usersbyid.ts new file mode 100644 index 0000000..3ccd3d8 --- /dev/null +++ b/client/src/security/usersbyid.ts @@ -0,0 +1,17 @@ +import { AxiosError } from "axios"; +import config from "../config"; +import instance from "./http"; + +export async function retrieveUserInformationById(userId: number) { + if (!localStorage.getItem("accessToken")) { + throw "No access token"; + } + try { + let userInformation = await instance.get( + `${config.serverAddress}/users/individual/${userId}` + ); + return userInformation.data; + } catch (error) { + throw ((error as AxiosError).response?.data as any).message; + } +} \ No newline at end of file diff --git a/server/models/Post.js b/server/models/Post.js index 3f0df11..57712cc 100644 --- a/server/models/Post.js +++ b/server/models/Post.js @@ -17,9 +17,14 @@ module.exports = (sequelize, DataTypes) => { content: { type: DataTypes.TEXT, allowNull: false - } + }, + userId: { + type: DataTypes.UUID, + allowNull: false, + }, }, { tableName: 'posts' }); + return Post; } \ No newline at end of file diff --git a/server/routes/post.js b/server/routes/post.js index df5c495..fbe3efd 100644 --- a/server/routes/post.js +++ b/server/routes/post.js @@ -1,6 +1,6 @@ const express = require('express'); const router = express.Router(); -const { Post } = require('../models'); +const { Post, User } = require('../models'); const { Op, where } = require("sequelize"); const yup = require("yup"); const multer = require("multer"); @@ -56,7 +56,10 @@ router.post("/", async (req, res) => { // }); router.get("/", async (req, res) => { - let condition = {}; + let condition = { + order: [['createdAt', 'DESC']] + }; + let search = req.query.search; if (search) { condition[Op.or] = [ @@ -67,11 +70,7 @@ router.get("/", async (req, res) => { // You can add condition for other columns here // e.g. condition.columnName = value; - let list = await Post.findAll({ - where: condition, - // order option takes an array of items. These items are themselves in the form of [column, direction] - order: [['createdAt', 'DESC']] - }); + let list = await Post.findAll(condition); res.json(list); }); From a4d6af77823a17d6892831f297e93d1afe768cc8 Mon Sep 17 00:00:00 2001 From: Rykkel <220993G@mymail.nyp.edu.sg> Date: Tue, 30 Jul 2024 02:45:39 +0800 Subject: [PATCH 04/16] Fixed textvalue prop issue --- client/src/pages/CommunityPage.tsx | 2 ++ client/src/pages/PostPage.tsx | 2 ++ 2 files changed, 4 insertions(+) diff --git a/client/src/pages/CommunityPage.tsx b/client/src/pages/CommunityPage.tsx index 56a8857..f700dc1 100644 --- a/client/src/pages/CommunityPage.tsx +++ b/client/src/pages/CommunityPage.tsx @@ -199,6 +199,7 @@ export default function CommunityPage() { { navigate(`edit/${post.id}`); }} @@ -207,6 +208,7 @@ export default function CommunityPage() { handleDeleteClick(post)} diff --git a/client/src/pages/PostPage.tsx b/client/src/pages/PostPage.tsx index 152e358..453f4cf 100644 --- a/client/src/pages/PostPage.tsx +++ b/client/src/pages/PostPage.tsx @@ -143,6 +143,7 @@ const PostPage: React.FC = () => { { navigate(`edit/${post.id}`); }} @@ -151,6 +152,7 @@ const PostPage: React.FC = () => { handleDeleteClick(post)} From b9e0abe7d0f1e1732862c4a35c6913b06c6b81a8 Mon Sep 17 00:00:00 2001 From: Rykkel <220993G@mymail.nyp.edu.sg> Date: Tue, 30 Jul 2024 02:50:53 +0800 Subject: [PATCH 05/16] Fixed search function --- server/routes/post.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/server/routes/post.js b/server/routes/post.js index fbe3efd..9d7d692 100644 --- a/server/routes/post.js +++ b/server/routes/post.js @@ -57,12 +57,13 @@ router.post("/", async (req, res) => { router.get("/", async (req, res) => { let condition = { + where: {}, order: [['createdAt', 'DESC']] }; let search = req.query.search; if (search) { - condition[Op.or] = [ + condition.where[Op.or] = [ { title: { [Op.like]: `%${search}%` } }, { content: { [Op.like]: `%${search}%` } } ]; From 4627da2efb2047f18e66da4542c16e53853df1a9 Mon Sep 17 00:00:00 2001 From: Wind-Explorer Date: Tue, 30 Jul 2024 13:59:40 +0800 Subject: [PATCH 06/16] Scaffolding of Natural Language Search --- client/package.json | 1 + client/pnpm-lock.yaml | 5810 +++++++++----------- client/src/components/EcoconnectSearch.tsx | 146 + client/src/components/NavigationBar.tsx | 106 +- server/connections/apiKey.js | 18 + server/connections/mailersend.js | 15 +- server/connections/openai.js | 20 + server/index.js | 3 + server/package.json | 1 + server/pnpm-lock.yaml | 105 + server/routes/connections.js | 22 + 11 files changed, 3030 insertions(+), 3217 deletions(-) create mode 100644 client/src/components/EcoconnectSearch.tsx create mode 100644 server/connections/apiKey.js create mode 100644 server/connections/openai.js create mode 100644 server/routes/connections.js diff --git a/client/package.json b/client/package.json index 25c1b2a..dc9cc81 100644 --- a/client/package.json +++ b/client/package.json @@ -14,6 +14,7 @@ "axios": "^1.7.2", "formik": "^2.4.6", "framer-motion": "^11.2.10", + "openai": "^4.53.2", "react": "^18.2.0", "react-dom": "^18.2.0", "react-hot-toast": "^2.4.1", diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 2e3aa55..b0bd8ba 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -1,2649 +1,112 @@ -lockfileVersion: '9.0' +lockfileVersion: '6.0' settings: autoInstallPeers: true excludeLinksFromLockfile: false -importers: +dependencies: + '@nextui-org/react': + specifier: ^2.4.2 + version: 2.4.2(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)(tailwindcss@3.4.4) + axios: + specifier: ^1.7.2 + version: 1.7.2 + formik: + specifier: ^2.4.6 + version: 2.4.6(react@18.3.1) + framer-motion: + specifier: ^11.2.10 + version: 11.2.10(react-dom@18.3.1)(react@18.3.1) + openai: + specifier: ^4.53.2 + version: 4.53.2 + react: + specifier: ^18.2.0 + version: 18.3.1 + react-dom: + specifier: ^18.2.0 + version: 18.3.1(react@18.3.1) + react-hot-toast: + specifier: ^2.4.1 + version: 2.4.1(csstype@3.1.3)(react-dom@18.3.1)(react@18.3.1) + react-router-dom: + specifier: ^6.23.1 + version: 6.23.1(react-dom@18.3.1)(react@18.3.1) + yup: + specifier: ^1.4.0 + version: 1.4.0 - .: - dependencies: - '@nextui-org/react': - specifier: ^2.4.2 - version: 2.4.2(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)(tailwindcss@3.4.4) - axios: - specifier: ^1.7.2 - version: 1.7.2 - formik: - specifier: ^2.4.6 - version: 2.4.6(react@18.3.1) - framer-motion: - specifier: ^11.2.10 - version: 11.2.10(react-dom@18.3.1)(react@18.3.1) - react: - specifier: ^18.2.0 - version: 18.3.1 - react-dom: - specifier: ^18.2.0 - version: 18.3.1(react@18.3.1) - react-hot-toast: - specifier: ^2.4.1 - version: 2.4.1(csstype@3.1.3)(react-dom@18.3.1)(react@18.3.1) - react-router-dom: - specifier: ^6.23.1 - version: 6.23.1(react-dom@18.3.1)(react@18.3.1) - yup: - specifier: ^1.4.0 - version: 1.4.0 - devDependencies: - '@types/react': - specifier: ^18.2.66 - version: 18.3.3 - '@types/react-dom': - specifier: ^18.2.22 - version: 18.3.0 - '@typescript-eslint/eslint-plugin': - specifier: ^7.2.0 - version: 7.13.1(@typescript-eslint/parser@7.13.1)(eslint@8.57.0)(typescript@5.4.5) - '@typescript-eslint/parser': - specifier: ^7.2.0 - version: 7.13.1(eslint@8.57.0)(typescript@5.4.5) - '@vitejs/plugin-react': - specifier: ^4.2.1 - version: 4.3.1(vite@5.3.1) - autoprefixer: - specifier: ^10.4.19 - version: 10.4.19(postcss@8.4.38) - eslint: - specifier: ^8.57.0 - version: 8.57.0 - eslint-plugin-react-hooks: - specifier: ^4.6.0 - version: 4.6.2(eslint@8.57.0) - eslint-plugin-react-refresh: - specifier: ^0.4.6 - version: 0.4.7(eslint@8.57.0) - postcss: - specifier: ^8.4.38 - version: 8.4.38 - tailwindcss: - specifier: ^3.4.4 - version: 3.4.4 - typescript: - specifier: ^5.2.2 - version: 5.4.5 - vite: - specifier: ^5.2.0 - version: 5.3.1 +devDependencies: + '@types/react': + specifier: ^18.2.66 + version: 18.3.3 + '@types/react-dom': + specifier: ^18.2.22 + version: 18.3.0 + '@typescript-eslint/eslint-plugin': + specifier: ^7.2.0 + version: 7.13.1(@typescript-eslint/parser@7.13.1)(eslint@8.57.0)(typescript@5.4.5) + '@typescript-eslint/parser': + specifier: ^7.2.0 + version: 7.13.1(eslint@8.57.0)(typescript@5.4.5) + '@vitejs/plugin-react': + specifier: ^4.2.1 + version: 4.3.1(vite@5.3.1) + autoprefixer: + specifier: ^10.4.19 + version: 10.4.19(postcss@8.4.38) + eslint: + specifier: ^8.57.0 + version: 8.57.0 + eslint-plugin-react-hooks: + specifier: ^4.6.0 + version: 4.6.2(eslint@8.57.0) + eslint-plugin-react-refresh: + specifier: ^0.4.6 + version: 0.4.7(eslint@8.57.0) + postcss: + specifier: ^8.4.38 + version: 8.4.38 + tailwindcss: + specifier: ^3.4.4 + version: 3.4.4 + typescript: + specifier: ^5.2.2 + version: 5.4.5 + vite: + specifier: ^5.2.0 + version: 5.3.1 packages: - '@alloc/quick-lru@5.2.0': + /@alloc/quick-lru@5.2.0: resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} engines: {node: '>=10'} - '@ampproject/remapping@2.3.0': + /@ampproject/remapping@2.3.0: resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} - - '@babel/code-frame@7.24.7': - resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} - engines: {node: '>=6.9.0'} - - '@babel/compat-data@7.24.7': - resolution: {integrity: sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==} - engines: {node: '>=6.9.0'} - - '@babel/core@7.24.7': - resolution: {integrity: sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g==} - engines: {node: '>=6.9.0'} - - '@babel/generator@7.24.7': - resolution: {integrity: sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-compilation-targets@7.24.7': - resolution: {integrity: sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-environment-visitor@7.24.7': - resolution: {integrity: sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-function-name@7.24.7': - resolution: {integrity: sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-hoist-variables@7.24.7': - resolution: {integrity: sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-imports@7.24.7': - resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-transforms@7.24.7': - resolution: {integrity: sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-plugin-utils@7.24.7': - resolution: {integrity: sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-simple-access@7.24.7': - resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-split-export-declaration@7.24.7': - resolution: {integrity: sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-string-parser@7.24.7': - resolution: {integrity: sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-identifier@7.24.7': - resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-option@7.24.7': - resolution: {integrity: sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw==} - engines: {node: '>=6.9.0'} - - '@babel/helpers@7.24.7': - resolution: {integrity: sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==} - engines: {node: '>=6.9.0'} - - '@babel/highlight@7.24.7': - resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} - engines: {node: '>=6.9.0'} - - '@babel/parser@7.24.7': - resolution: {integrity: sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==} - engines: {node: '>=6.0.0'} - hasBin: true - - '@babel/plugin-transform-react-jsx-self@7.24.7': - resolution: {integrity: sha512-fOPQYbGSgH0HUp4UJO4sMBFjY6DuWq+2i8rixyUMb3CdGixs/gccURvYOAhajBdKDoGajFr3mUq5rH3phtkGzw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-jsx-source@7.24.7': - resolution: {integrity: sha512-J2z+MWzZHVOemyLweMqngXrgGC42jQ//R0KdxqkIz/OrbVIIlhFI3WigZ5fO+nwFvBlncr4MGapd8vTyc7RPNQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/runtime@7.24.7': - resolution: {integrity: sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw==} - engines: {node: '>=6.9.0'} - - '@babel/template@7.24.7': - resolution: {integrity: sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==} - engines: {node: '>=6.9.0'} - - '@babel/traverse@7.24.7': - resolution: {integrity: sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==} - engines: {node: '>=6.9.0'} - - '@babel/types@7.24.7': - resolution: {integrity: sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==} - engines: {node: '>=6.9.0'} - - '@esbuild/aix-ppc64@0.21.5': - resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [aix] - - '@esbuild/android-arm64@0.21.5': - resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - - '@esbuild/android-arm@0.21.5': - resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - - '@esbuild/android-x64@0.21.5': - resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - - '@esbuild/darwin-arm64@0.21.5': - resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - - '@esbuild/darwin-x64@0.21.5': - resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - - '@esbuild/freebsd-arm64@0.21.5': - resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - - '@esbuild/freebsd-x64@0.21.5': - resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - - '@esbuild/linux-arm64@0.21.5': - resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - - '@esbuild/linux-arm@0.21.5': - resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - - '@esbuild/linux-ia32@0.21.5': - resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - - '@esbuild/linux-loong64@0.21.5': - resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - - '@esbuild/linux-mips64el@0.21.5': - resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - - '@esbuild/linux-ppc64@0.21.5': - resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - - '@esbuild/linux-riscv64@0.21.5': - resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - - '@esbuild/linux-s390x@0.21.5': - resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - - '@esbuild/linux-x64@0.21.5': - resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - - '@esbuild/netbsd-x64@0.21.5': - resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - - '@esbuild/openbsd-x64@0.21.5': - resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - - '@esbuild/sunos-x64@0.21.5': - resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - - '@esbuild/win32-arm64@0.21.5': - resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - - '@esbuild/win32-ia32@0.21.5': - resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - - '@esbuild/win32-x64@0.21.5': - resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - - '@eslint-community/eslint-utils@4.4.0': - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - - '@eslint-community/regexpp@4.10.1': - resolution: {integrity: sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - - '@eslint/eslintrc@2.1.4': - resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@eslint/js@8.57.0': - resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@formatjs/ecma402-abstract@2.0.0': - resolution: {integrity: sha512-rRqXOqdFmk7RYvj4khklyqzcfQl9vEL/usogncBHRZfZBDOwMGuSRNFl02fu5KGHXdbinju+YXyuR+Nk8xlr/g==} - - '@formatjs/fast-memoize@2.2.0': - resolution: {integrity: sha512-hnk/nY8FyrL5YxwP9e4r9dqeM6cAbo8PeU9UjyXojZMNvVad2Z06FAVHyR3Ecw6fza+0GH7vdJgiKIVXTMbSBA==} - - '@formatjs/icu-messageformat-parser@2.7.8': - resolution: {integrity: sha512-nBZJYmhpcSX0WeJ5SDYUkZ42AgR3xiyhNCsQweFx3cz/ULJjym8bHAzWKvG5e2+1XO98dBYC0fWeeAECAVSwLA==} - - '@formatjs/icu-skeleton-parser@1.8.2': - resolution: {integrity: sha512-k4ERKgw7aKGWJZgTarIcNEmvyTVD9FYh0mTrrBMHZ1b8hUu6iOJ4SzsZlo3UNAvHYa+PnvntIwRPt1/vy4nA9Q==} - - '@formatjs/intl-localematcher@0.5.4': - resolution: {integrity: sha512-zTwEpWOzZ2CiKcB93BLngUX59hQkuZjT2+SAQEscSm52peDW/getsawMcWF1rGRpMCX6D7nSJA3CzJ8gn13N/g==} - - '@humanwhocodes/config-array@0.11.14': - resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} - engines: {node: '>=10.10.0'} - deprecated: Use @eslint/config-array instead - - '@humanwhocodes/module-importer@1.0.1': - resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} - engines: {node: '>=12.22'} - - '@humanwhocodes/object-schema@2.0.3': - resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} - deprecated: Use @eslint/object-schema instead - - '@internationalized/date@3.5.4': - resolution: {integrity: sha512-qoVJVro+O0rBaw+8HPjUB1iH8Ihf8oziEnqMnvhJUSuVIrHOuZ6eNLHNvzXJKUvAtaDiqMnRlg8Z2mgh09BlUw==} - - '@internationalized/message@3.1.4': - resolution: {integrity: sha512-Dygi9hH1s7V9nha07pggCkvmRfDd3q2lWnMGvrJyrOwYMe1yj4D2T9BoH9I6MGR7xz0biQrtLPsqUkqXzIrBOw==} - - '@internationalized/number@3.5.3': - resolution: {integrity: sha512-rd1wA3ebzlp0Mehj5YTuTI50AQEx80gWFyHcQu+u91/5NgdwBecO8BH6ipPfE+lmQ9d63vpB3H9SHoIUiupllw==} - - '@internationalized/string@3.2.3': - resolution: {integrity: sha512-9kpfLoA8HegiWTeCbR2livhdVeKobCnVv8tlJ6M2jF+4tcMqDo94ezwlnrUANBWPgd8U7OXIHCk2Ov2qhk4KXw==} - - '@isaacs/cliui@8.0.2': - resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} - engines: {node: '>=12'} - - '@jridgewell/gen-mapping@0.3.5': - resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} - engines: {node: '>=6.0.0'} - - '@jridgewell/resolve-uri@3.1.2': - resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} - engines: {node: '>=6.0.0'} - - '@jridgewell/set-array@1.2.1': - resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} - engines: {node: '>=6.0.0'} - - '@jridgewell/sourcemap-codec@1.4.15': - resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - - '@jridgewell/trace-mapping@0.3.25': - resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} - - '@nextui-org/accordion@2.0.35': - resolution: {integrity: sha512-42T8DAgpICKORry5h1UCgAQ71QJ3dCzvqrnnJQco3LICeIER2JT/wEdpxHUVT893MkL6z6CFsJmWNfFJPk59kA==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/aria-utils@2.0.21': - resolution: {integrity: sha512-aQXFVm4qNrXrUAHhRtr363BgRDX+zgN3Vm+7bW1qtMbnMGOqTWApCD48FP59bka5JArd3K+85tFEhkdD+UfKbQ==} - peerDependencies: - react: '>=18' - react-dom: '>=18' - - '@nextui-org/autocomplete@2.1.2': - resolution: {integrity: sha512-3mtYQDBbSRLG8wZ+gDMsOsGH/0m2VG/RcwIiXoteZMyX7yhGl2JPp7ZjX6XWyUpUbq0w2QVprZ6Ld4ck3cuMKg==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/avatar@2.0.30': - resolution: {integrity: sha512-FIrvdJE+dBkmU3YDR1AXTkcks/WXjbnQsojWBMAq+1oXDCcNiGMUvKBzsW0F5m5HVHhn+Edc+CbTzIZUTm78Bw==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/badge@2.0.29': - resolution: {integrity: sha512-kd6BJ1BWkX6UuHttmySUgQBPOBJCrG1+eKwWDd1HL4YuBLayuYoTZuE5Q01HYTbXjFMqzsFX3A+jcJ3RYc0X7w==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/breadcrumbs@2.0.10': - resolution: {integrity: sha512-TCrOHCH/gNrPwEQyd30mu6Y9x/ojJk3vUWZJSPuVhzG6WdpUFyqen4QCoDTUTvFJBL3TwqNYwOIxooizzFSK7g==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/button@2.0.34': - resolution: {integrity: sha512-VeFpOs7trX6u6FqeGr0XCpuNqPhXTLqsmt4iaygvheZCbzrTKvWHd4QMqSh2CPsNH8UFUBSFJjr3oaf3a0SYWQ==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/calendar@2.0.7': - resolution: {integrity: sha512-6mdgKJSl6tWo68FJQB1txSTRQ6/6+c3hipDYvzqDZRc+NbOJ3VevbFaPj5673JxeI2J5SyHLY2AEVw4q6HfaNw==} - peerDependencies: - '@nextui-org/system': '>=2.1.0' - '@nextui-org/theme': '>=2.2.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/card@2.0.31': - resolution: {integrity: sha512-KXeI4xu0HVOgC2sNBxv+OGbzYy+kA6HbsDB677j3R+MhyCrqCLsE5ahkn7FRWgIJAzoDkcHSunmc+q9ApoSWig==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/checkbox@2.1.2': - resolution: {integrity: sha512-0C5xcYcBMM/iAva3/fFYIvUiy91guV+mehUwRcPIxEFLA9bIOdOdGTkoAXlVcGCLIuYvlPiqSH0gShXvscOlNQ==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/chip@2.0.30': - resolution: {integrity: sha512-u/PbKFW8pGoPzBh8dDRvhBSdhX30lJbscQJvXzmCKHpSvK8rvBG1kHtOJEJ4fiuXbo/O0CYwZVAi03XloyOCdQ==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/code@2.0.29': - resolution: {integrity: sha512-+aevUjVJxSkJ4Un/O3rBdI1NfHikatzDK6iD6nqWDCDR/I+9a5m+s3N8yuNt/Mt8jGKg0KEklPh3deYfCVCXdg==} - peerDependencies: - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/date-input@2.1.1': - resolution: {integrity: sha512-fts8R058AVN8dhkBGaJ/7F68ZwM/E3Imu5uhauHoXVoJhaXNft5fA23HJYpNkFrG0k/Tk7vGcGSPistiERQuKg==} - peerDependencies: - '@nextui-org/system': '>=2.1.0' - '@nextui-org/theme': '>=2.2.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/date-picker@2.1.2': - resolution: {integrity: sha512-gNqhyA85SDtGNdr2CUBJ5FSy/wCtj2AKJGs2yEvKtA9A66khOH2H0tdfGALOWoAQdxGgOvP7c+9U5Oadogoygg==} - peerDependencies: - '@nextui-org/system': '>=2.1.0' - '@nextui-org/theme': '>=2.2.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/divider@2.0.28': - resolution: {integrity: sha512-IskKmDOO8qwmTO2WtDmrH8fZvnV2JebP3PFfwqpToAdDRbRUs78pls2e8/T9clbLLtNxjfCFAI/Yi9C+LPPEXw==} - peerDependencies: - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/dropdown@2.1.26': - resolution: {integrity: sha512-rPrn8hN7v2nLm9OJKagvf7AivsCAT0EWUcgWGaf5GVdwGJ65TZpjR18eAOyKBZRe5cdZ+FV6qqnavGVhD3458w==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/framer-utils@2.0.21': - resolution: {integrity: sha512-kZzkaAHbtuBl85mivZ1WKVCcwdk8Z2NDmJiIpaLy16yliLNV1tnhoDOzRrxhv+6cbkKftx21tRrpImB4AyeqLw==} - peerDependencies: - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/image@2.0.29': - resolution: {integrity: sha512-w8MneV/JNUTCJUcIZcxtUYw1ZEZqlpezcCgGLr0cH3vp5pa+BZ9SdptwAL2wFoJAG8xk+et9fMXTROvF4h5W1g==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/input@2.2.2': - resolution: {integrity: sha512-mCcFsObJdlCWMuSutKTRniFIDX5+z4BAAtt/XI1uzOtUO6WXgT97BwVzMihC1l14WQsw9TCwFKAl8JWdolkNCA==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/kbd@2.0.30': - resolution: {integrity: sha512-rQw71noVUIRPf8N/Z5hdIGCtjFEVZO9xs2JVkiusKDxbGXFWKxJ3sTFzEY4VyLtORt2mEOQEWh26wbTnNjJzMw==} - peerDependencies: - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/link@2.0.32': - resolution: {integrity: sha512-NIG8Ay/WfFxwMYKB11xg0iVAzJR1jy0QrtKFGaZscyJ522beM+aMBZuourC9u7kwjucTvt5fuGRm86KBVDBXCQ==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/listbox@2.1.22': - resolution: {integrity: sha512-VFULRE7BBpNnXulhySHlENRiRUP7KdpozJfKM3X2kIwWoFekO8DDUT8RiLj2PyDtGjKam74ghHhMuAFXFhVQ+g==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/menu@2.0.25': - resolution: {integrity: sha512-VkCaaq19JKNjIgg4bmGebzHkSV1A3C1CRV5w5qRPg5AI59pdWlbMLpllm5mPqz+U0R0P5saGfCfEfcC0LrCFdQ==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/modal@2.0.36': - resolution: {integrity: sha512-ucWBobeoM8BVLpgXrtZ/H5TD9eFS2YF4W7vntWC05Q13A34LSHgBjNHJkfwW/OebGjJoaDoRiIBohWaiyyliTA==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/navbar@2.0.33': - resolution: {integrity: sha512-WbPLEz6yE1vxKTqZDN85YPCWR/JSvpOO604xBpaaCf+OLfEsb+herz7+GDPnvHKaPDASoxU5WaSQJR9nrJ/YHg==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/pagination@2.0.33': - resolution: {integrity: sha512-LiDDTSTuC0Q9gSI1gc/b+lmKR8/zFiwSfYjLh7KDND3m+qE44waICWnK1U7P6Y999Nu1LwaGSGtqayd326aPrg==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/popover@2.1.24': - resolution: {integrity: sha512-PGbTxdcc06BMxEd/HYsL0sVa0fdGjHPYNSvcSSM0KA6Fh98pznO9DoQHjIEPAul87yEwl7cDDj7mANcdK9BVnA==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/progress@2.0.31': - resolution: {integrity: sha512-ZFjV4068gYPe9S4R1e/8oqwtPFKd9ag8RB0JoToq55AM5aLItOA/Q/uwBnDz7ait3C7viWawcN4leW1C8dSurQ==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/radio@2.1.2': - resolution: {integrity: sha512-JcWKRqXXRwQtz5ABzykuu+S4/8cO9GKa21Gget1fdo/iSDcUtGDHIf6wlpvWSNekpvIERZd9UdpwhaXWbD4pOg==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/react-rsc-utils@2.0.12': - resolution: {integrity: sha512-s2IG4pM1K+kbm6A2g3UpqrS592AExpGixtZNPJ2lV5+UQi1ld3vb4EiBIOViZMoSCNCoNdaeO5Yqo6cKghwCPA==} - - '@nextui-org/react-utils@2.0.14': - resolution: {integrity: sha512-fed97WSaHt8/sC5F4DFTVj25YQsepFGDyudommPGQsTksQ6GQkMITuHckzAyPiTTuWHSW/GZykvVVAlK9hS5Wg==} - peerDependencies: - react: '>=18' - - '@nextui-org/react@2.4.2': - resolution: {integrity: sha512-g7CqAX/x0DJsIUmD+Z6I4T1699uVmu5kbuY0n1PdA4IDjFSKzgkMCIogcIKu2iUV+LVlvfF1lDhs300OIpouig==} - peerDependencies: - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/ripple@2.0.30': - resolution: {integrity: sha512-GmHwC+F2JIYQAeFuwtFbdE6av8lzOJVdA5yops9vhhzeBPT33dMjgazCn0HZT5TvP0gX+xxT/74ONE0ik0Kayg==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/scroll-shadow@2.1.17': - resolution: {integrity: sha512-JOJc6nbdFHcMn/zpaf78AAZ8Vwo/iQO6iWJVHlN6ROjSKL7EImP/V78m14Y+kd0hkzU8CcHswdpmCefaioFlRA==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/select@2.2.2': - resolution: {integrity: sha512-bCk6/LJAhhSM5VXiny7rDTH5f7ri7mGKx4V+K83kY9uW01ioWWYId1EhbP6Crd9PSvmQL42mhId/5dLRxgUimA==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/shared-icons@2.0.8': - resolution: {integrity: sha512-siKuw+CN03cB2N1eUpIleP+lTpjM4gSmcco7RXTpXiwXJXlxjKo4N8gQYS04HCBXm9QMWgyngvUEt2II9NYyrw==} - peerDependencies: - react: '>=18' - - '@nextui-org/shared-utils@2.0.5': - resolution: {integrity: sha512-aFc/CUL8RVfBh0IotIpxkpKjyUPc/zJaMJd5pRCQA1kIpKLdSrlh3//MLYMaP/fo/NQtE3DPeXqfKhHRr1fkEw==} - - '@nextui-org/skeleton@2.0.29': - resolution: {integrity: sha512-s/oQdUc1Ao7XRmUP82V2/hI3B644ZQzIYuPIgp+A6DyDLfyRUx8PLWN/EhN5Ku2M/s6WYTkwulDrKeo4dlMsrw==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/slider@2.2.12': - resolution: {integrity: sha512-5+72YlWxV6bm9hGNpWN5G+6OeqU7S9N2ECwEdO4COQ1hvMiimiJ3lrTUHIS2AvKimEpw+MLkUoKIbqAV23zxuw==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/snippet@2.0.38': - resolution: {integrity: sha512-8lMqtB1KQtMkpZFb3x/T42zdZ+QqcGr6d/yVE+zKzyEd+xqzm2g/hDpPqy0Mf5JaC1Z+lXoRzF/6XbD99FCEbw==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/spacer@2.0.29': - resolution: {integrity: sha512-lcgzHIvTXXllnM6MMjti0ub8jEx9jmtzdd5+zgFAHLTeDS3pDffNZndmU+RkzpyGSyK20PCrMkV/sB4SCDN1KA==} - peerDependencies: - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/spinner@2.0.30': - resolution: {integrity: sha512-+oygL2dewHZzJiSUEIvzL0tIx+G+98mvO3ToFAMXaH0N3bOQNSiFDPwUHUx6PgAQ9pr9RKtdnb4ywstcG9j+Gg==} - peerDependencies: - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/switch@2.0.31': - resolution: {integrity: sha512-WPHqWQfyISA8nmQ8ihaO5rIHm/K9nyfrV0Fxm6EcnFilTMZhh4Kt+p7FfJrZw+MMyzIEGFfMDySk1KVrMubc1g==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/system-rsc@2.1.2': - resolution: {integrity: sha512-3F7pG68Ikh1JsMtRQqmyXAojAV4lMPCKCy0n8RiIxJkEJg11RGTXhnABHF2jP6uxMH/0q5zVzuFubQJfW++ISQ==} - peerDependencies: - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - - '@nextui-org/system@2.2.2': - resolution: {integrity: sha512-u30lWSIO4Q7DStiK5tJjDgKBQtmODeQZcC6llz973sJ9QlE4GeC1fgu0+/zXL8AZZ8o/iEXhHWXsZIJ26EquUQ==} - peerDependencies: - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/table@2.0.36': - resolution: {integrity: sha512-vpohZo5p3XmT6FLOKKwmm8SdCA/h2QPQz6Y66sAfHuoqAfkmfVfAeyKgYTe20pVJy3Whvyix6IA8e0eWETDTEw==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/tabs@2.0.32': - resolution: {integrity: sha512-TVCwm1GI7rkf/o7+eWpklRQBTg2Y/m3eNBLU1jA+Ppqs+Mr31y7BHoNLqTZ6jpj59DA1OcpwbJH5xhGk0pOvwA==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/theme@2.2.6': - resolution: {integrity: sha512-FyDp5edpmjbvPzRx+D2+Km1oZ73wQOzKMSBPomOgP0h9OFnnTHqKlmtbGhWSk2cEyYN9VsaGvqJTw8X35/aChQ==} - peerDependencies: - tailwindcss: '>=3.4.0' - - '@nextui-org/tooltip@2.0.36': - resolution: {integrity: sha512-tV3BefTvmYzSC4TX+UPV7p3F5fs52sFzQ1/Try/Bkz5B1F9yXviO9dV2/pqXSfOJVvLVJS2RMi5wZkaYh1xtNw==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - framer-motion: '>=10.17.0' - react: '>=18' - react-dom: '>=18' - - '@nextui-org/use-aria-accordion@2.0.6': - resolution: {integrity: sha512-47+/gO67YufQUtL0f2TIdaa8++5EBtIK7Ltq1GpUat2qjbMFvIb6Ao/Jf3KHU5NicLLRnWPSK1vNaupkYwN/ew==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-aria-button@2.0.9': - resolution: {integrity: sha512-5FjDl57/1Ey3MgJn+yB0/CPABsSVgXiE+jT7ZLnSqH9kmdXV/eMiuplF7fOOvaSMCA1cE3KCetaPVDIZoJI1/w==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-aria-link@2.0.18': - resolution: {integrity: sha512-6ZIIOfMMGbSOF9FcJTPrsVOm2LP7OV+QwF0vYelZeEK5zFXb5f8e2J/fEbCVWKLPFDB2VyoBUDWMzRfrizixzg==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-aria-menu@2.0.5': - resolution: {integrity: sha512-7bAwISb4vIGhAuvZEHpb/28u0k2/HxNhMJUcz/UxVJTMqSkbSJR2RKdm64WfhEq2A8ZtvED0BAJbDuPf4Q4avg==} - peerDependencies: - react: '>=18' - react-dom: '>=18' - - '@nextui-org/use-aria-modal-overlay@2.0.10': - resolution: {integrity: sha512-/VONX/beH4vu7SQjAtxcQoRhdAOro+QeBk9XOW+qcNvxZG4Em1vf1KFmpHRC40DtsrUk3I0cxaZezeIgfOZ41Q==} - peerDependencies: - react: '>=18' - react-dom: '>=18' - - '@nextui-org/use-aria-multiselect@2.2.2': - resolution: {integrity: sha512-iFw9CVRWTKBl+c1FbbHxp4K0B6aQTXSzXiIP09TJ1NQ10fk1GQXBIhFUIyvIwRJRGvYAL+vwkgj39Ac1p1esJQ==} - peerDependencies: - react: '>=18' - react-dom: '>=18' - - '@nextui-org/use-aria-toggle-button@2.0.9': - resolution: {integrity: sha512-JpPD97tYpPwyhgXgJbWYgMDp5ZysM1LyvvmyHmq6BtvSpyYqQKU7V3LDXuirBEN6NwHHZRfXy4/mUid/L6W0wA==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-callback-ref@2.0.5': - resolution: {integrity: sha512-lcjlV5yaDTiFSv06E5RtQNqy+O6XqH/Q/yz+ka1ZBlZF/FdzEPNRfJ0shN2D7Sh3DdbvV2lySbA2g/0d94geaw==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-clipboard@2.0.5': - resolution: {integrity: sha512-1ExwXM8ENmc/kVDqKoiPGrBP/0B7rZ43iSv2MoWD1Qpc8GHg71Rv7NTIlBDoD/pfUfqkab6x66iKC7AVR8rifA==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-data-scroll-overflow@2.1.4': - resolution: {integrity: sha512-0YqUAe/b9aZftUQOH7sWqBMJHGLyC2Q/ixFyjq8Q1TijrqEyGESGQ2tm0+FHytI04drV+mnsbf6+q2QIKyqGSg==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-disclosure@2.0.9': - resolution: {integrity: sha512-d1Pksmm6zleZAdNraD0s97E+sXHrzI0vZ8tLNzE9yGNOf/VRMBvjpfa9S4Zl7oR+StNbST3JofCqmSHtRNe7hg==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-image@2.0.5': - resolution: {integrity: sha512-FAMyvZS9XSNLqHEmU6xykMgwIFJj/V9/JpTiZAQziz2wqMiUONIBpYpGOlI+pPBNlhCkw62KHm/19vHW49FWhA==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-is-mobile@2.0.8': - resolution: {integrity: sha512-fp6UgfmYTkdri3fKeFUapr0TuJGRTskrTZixh+r1aqTcEWtaeef+Nli5VKRTJb9nqYKkgJDRhC39Z5s/rgq0mA==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-is-mounted@2.0.5': - resolution: {integrity: sha512-gk698Uwmj/XhchBsnI5Ups5uzEXuZvsPK45K6goi2/ADKXSYxHOcSgwoexytqJBb/7tpi+emi2CRTAjAFZDQqA==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-measure@2.0.1': - resolution: {integrity: sha512-uEtdrdBdFz4Fgbfk2vmQ+rEb+eFa5o4yI90udasvfpaIrMBfrFOlRW5+yn3uXKB8JThET4Gf2on/wlJpo567Dg==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-pagination@2.0.7': - resolution: {integrity: sha512-a05vLp8YSk4nI+LmDUdjjKj2U1/d3Z1ZALUUrjWJVnTUckaiglHGeoYEh8nqcjDXj4sPC4OcK3ZnW+AGUXDGwA==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-safe-layout-effect@2.0.5': - resolution: {integrity: sha512-YQQlqz82aYxMoEq23jQNG/JBPHF1x3opzyXRHAVxgBEFo9OJqBMZTm23ukpTXm2Ev98T6mpWiTHdfyHJ7IoRog==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-scroll-position@2.0.6': - resolution: {integrity: sha512-dRwew37XnJOh8d35BuyqzRfnrmKsOUHqi0Owhk0tIGyqifQ/jw65udWpBfa6rwXcd4cKOOqXXHuNGsYTclzc6w==} - peerDependencies: - react: '>=18' - - '@nextui-org/use-update-effect@2.0.5': - resolution: {integrity: sha512-4r2CXAD598xc2ifMu97kf8V/lj+NDct2oITbxgXeV4ezWaXHy5/26r1iyVnBzRN/VBz3fwHx3hHdftzcYSZxdA==} - peerDependencies: - react: '>=18' - - '@nextui-org/user@2.0.31': - resolution: {integrity: sha512-PXWVLB2igKi3MwjVeI5auoK6fhBgT3nizPzabBa95m0/3dg8aex/4oexCRpjef+V5cRD/2z37VHqfelQWqOHjQ==} - peerDependencies: - '@nextui-org/system': '>=2.0.0' - '@nextui-org/theme': '>=2.1.0' - react: '>=18' - react-dom: '>=18' - - '@nodelib/fs.scandir@2.1.5': - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} - - '@nodelib/fs.stat@2.0.5': - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} - - '@nodelib/fs.walk@1.2.8': - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} - - '@pkgjs/parseargs@0.11.0': - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} - engines: {node: '>=14'} - - '@react-aria/breadcrumbs@3.5.13': - resolution: {integrity: sha512-G1Gqf/P6kVdfs94ovwP18fTWuIxadIQgHsXS08JEVcFVYMjb9YjqnEBaohUxD1tq2WldMbYw53ahQblT4NTG+g==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/button@3.9.5': - resolution: {integrity: sha512-dgcYR6j8WDOMLKuVrtxzx4jIC05cVKDzc+HnPO8lNkBAOfjcuN5tkGRtIjLtqjMvpZHhQT5aDbgFpIaZzxgFIg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/calendar@3.5.8': - resolution: {integrity: sha512-Whlp4CeAA5/ZkzrAHUv73kgIRYjw088eYGSc+cvSOCxfrc/2XkBm9rNrnSBv0DvhJ8AG0Fjz3vYakTmF3BgZBw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/checkbox@3.14.3': - resolution: {integrity: sha512-EtBJL6iu0gvrw3A4R7UeVLR6diaVk/mh4kFBc7c8hQjpEJweRr4hmJT3hrNg3MBcTWLxFiMEXPGgWEwXDBygtA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/combobox@3.9.1': - resolution: {integrity: sha512-SpK92dCmT8qn8aEcUAihRQrBb5LZUhwIbDExFII8PvUvEFy/PoQHXIo3j1V29WkutDBDpMvBv/6XRCHGXPqrhQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/datepicker@3.10.1': - resolution: {integrity: sha512-4HZL593nrNMa1GjBmWEN/OTvNS6d3/16G1YJWlqiUlv11ADulSbqBIjMmkgwrJVFcjrgqtXFy+yyrTA/oq94Zw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/dialog@3.5.14': - resolution: {integrity: sha512-oqDCjQ8hxe3GStf48XWBf2CliEnxlR9GgSYPHJPUc69WBj68D9rVcCW3kogJnLAnwIyf3FnzbX4wSjvUa88sAQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/focus@3.17.1': - resolution: {integrity: sha512-FLTySoSNqX++u0nWZJPPN5etXY0WBxaIe/YuL/GTEeuqUIuC/2bJSaw5hlsM6T2yjy6Y/VAxBcKSdAFUlU6njQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/form@3.0.5': - resolution: {integrity: sha512-n290jRwrrRXO3fS82MyWR+OKN7yznVesy5Q10IclSTVYHHI3VI53xtAPr/WzNjJR1um8aLhOcDNFKwnNIUUCsQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/grid@3.9.1': - resolution: {integrity: sha512-fGEZqAEaS8mqzV/II3N4ndoNWegIcbh+L3PmKbXdpKKUP8VgMs/WY5rYl5WAF0f5RoFwXqx3ibDLeR9tKj/bOg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/i18n@3.11.1': - resolution: {integrity: sha512-vuiBHw1kZruNMYeKkTGGnmPyMnM5T+gT8bz97H1FqIq1hQ6OPzmtBZ6W6l6OIMjeHI5oJo4utTwfZl495GALFQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/interactions@3.21.3': - resolution: {integrity: sha512-BWIuf4qCs5FreDJ9AguawLVS0lV9UU+sK4CCnbCNNmYqOWY+1+gRXCsnOM32K+oMESBxilAjdHW5n1hsMqYMpA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/label@3.7.8': - resolution: {integrity: sha512-MzgTm5+suPA3KX7Ug6ZBK2NX9cin/RFLsv1BdafJ6CZpmUSpWnGE/yQfYUB7csN7j31OsZrD3/P56eShYWAQfg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/link@3.7.1': - resolution: {integrity: sha512-a4IaV50P3fXc7DQvEIPYkJJv26JknFbRzFT5MJOMgtzuhyJoQdILEUK6XHYjcSSNCA7uLgzpojArVk5Hz3lCpw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/listbox@3.12.1': - resolution: {integrity: sha512-7JiUp0NGykbv/HgSpmTY1wqhuf/RmjFxs1HZcNaTv8A+DlzgJYc7yQqFjP3ZA/z5RvJFuuIxggIYmgIFjaRYdA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/live-announcer@3.3.4': - resolution: {integrity: sha512-w8lxs35QrRrn6pBNzVfyGOeqWdxeVKf9U6bXIVwhq7rrTqRULL8jqy8RJIMfIs1s8G5FpwWYjyBOjl2g5Cu1iA==} - - '@react-aria/menu@3.14.1': - resolution: {integrity: sha512-BYliRb38uAzq05UOFcD5XkjA5foQoXRbcH3ZufBsc4kvh79BcP1PMW6KsXKGJ7dC/PJWUwCui6QL1kUg8PqMHA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/overlays@3.22.1': - resolution: {integrity: sha512-GHiFMWO4EQ6+j6b5QCnNoOYiyx1Gk8ZiwLzzglCI4q1NY5AG2EAmfU4Z1+Gtrf2S5Y0zHbumC7rs9GnPoGLUYg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/progress@3.4.13': - resolution: {integrity: sha512-YBV9bOO5JzKvG8QCI0IAA00o6FczMgIDiK8Q9p5gKorFMatFUdRayxlbIPoYHMi+PguLil0jHgC7eOyaUcrZ0g==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/radio@3.10.4': - resolution: {integrity: sha512-3fmoMcQtCpgjTwJReFjnvIE/C7zOZeCeWUn4JKDqz9s1ILYsC3Rk5zZ4q66tFn6v+IQnecrKT52wH6+hlVLwTA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/selection@3.18.1': - resolution: {integrity: sha512-GSqN2jX6lh7v+ldqhVjAXDcrWS3N4IsKXxO6L6Ygsye86Q9q9Mq9twWDWWu5IjHD6LoVZLUBCMO+ENGbOkyqeQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/slider@3.7.8': - resolution: {integrity: sha512-MYvPcM0K8jxEJJicUK2+WxUkBIM/mquBxOTOSSIL3CszA80nXIGVnLlCUnQV3LOUzpWtabbWaZokSPtGgOgQOw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/spinbutton@3.6.5': - resolution: {integrity: sha512-0aACBarF/Xr/7ixzjVBTQ0NBwwwsoGkf5v6AVFVMTC0uYMXHTALvRs+ULHjHMa5e/cX/aPlEvaVT7jfSs+Xy9Q==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/ssr@3.9.4': - resolution: {integrity: sha512-4jmAigVq409qcJvQyuorsmBR4+9r3+JEC60wC+Y0MZV0HCtTmm8D9guYXlJMdx0SSkgj0hHAyFm/HvPNFofCoQ==} - engines: {node: '>= 12'} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/switch@3.6.4': - resolution: {integrity: sha512-2nVqz4ZuJyof47IpGSt3oZRmp+EdS8wzeDYgf42WHQXrx4uEOk1mdLJ20+NnsYhj/2NHZsvXVrjBeKMjlMs+0w==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/table@3.14.1': - resolution: {integrity: sha512-WaPgQe4zQF5OaluO5rm+Y2nEoFR63vsLd4BT4yjK1uaFhKhDY2Zk+1SCVQvBLLKS4WK9dhP05nrNzT0vp/ZPOw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/tabs@3.9.1': - resolution: {integrity: sha512-S5v/0sRcOaSXaJYZuuy1ZVzYc7JD4sDyseG1133GjyuNjJOFHgoWMb+b4uxNIJbZxnLgynn/ZDBZSO+qU+fIxw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/textfield@3.14.5': - resolution: {integrity: sha512-hj7H+66BjB1iTKKaFXwSZBZg88YT+wZboEXZ0DNdQB2ytzoz/g045wBItUuNi4ZjXI3P+0AOZznVMYadWBAmiA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/toggle@3.10.4': - resolution: {integrity: sha512-bRk+CdB8QzrSyGNjENXiTWxfzYKRw753iwQXsEAU7agPCUdB8cZJyrhbaUoD0rwczzTp2zDbZ9rRbUPdsBE2YQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/tooltip@3.7.4': - resolution: {integrity: sha512-+XRx4HlLYqWY3fB8Z60bQi/rbWDIGlFUtXYbtoa1J+EyRWfhpvsYImP8qeeNO/vgjUtDy1j9oKa8p6App9mBMQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/utils@3.24.1': - resolution: {integrity: sha512-O3s9qhPMd6n42x9sKeJ3lhu5V1Tlnzhu6Yk8QOvDuXf7UGuUjXf9mzfHJt1dYzID4l9Fwm8toczBzPM9t0jc8Q==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-aria/visually-hidden@3.8.12': - resolution: {integrity: sha512-Bawm+2Cmw3Xrlr7ARzl2RLtKh0lNUdJ0eNqzWcyx4c0VHUAWtThmH5l+HRqFUGzzutFZVo89SAy40BAbd0gjVw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/calendar@3.5.1': - resolution: {integrity: sha512-7l7QhqGUJ5AzWHfvZzbTe3J4t72Ht5BmhW4hlVI7flQXtfrmYkVtl3ZdytEZkkHmWGYZRW9b4IQTQGZxhtlElA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/checkbox@3.6.5': - resolution: {integrity: sha512-IXV3f9k+LtmfQLE+DKIN41Q5QB/YBLDCB1YVx5PEdRp52S9+EACD5683rjVm8NVRDwjMi2SP6RnFRk7fVb5Azg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/collections@3.10.7': - resolution: {integrity: sha512-KRo5O2MWVL8n3aiqb+XR3vP6akmHLhLWYZEmPKjIv0ghQaEebBTrN3wiEjtd6dzllv0QqcWvDLM1LntNfJ2TsA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/combobox@3.8.4': - resolution: {integrity: sha512-iLVGvKRRz0TeJXZhZyK783hveHpYA6xovOSdzSD+WGYpiPXo1QrcrNoH3AE0Z2sHtorU+8nc0j58vh5PB+m2AA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/datepicker@3.9.4': - resolution: {integrity: sha512-yBdX01jn6gq4NIVvHIqdjBUPo+WN8Bujc4OnPw+ZnfA4jI0eIgq04pfZ84cp1LVXW0IB0VaCu1AlQ/kvtZjfGA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/flags@3.0.3': - resolution: {integrity: sha512-/ha7XFA0RZTQsbzSPwu3KkbNMgbvuM0GuMTYLTBWpgBrovBNTM+QqI/PfZTdHg8PwCYF4H5Y8gjdSpdulCvJFw==} - - '@react-stately/form@3.0.3': - resolution: {integrity: sha512-92YYBvlHEWUGUpXgIaQ48J50jU9XrxfjYIN8BTvvhBHdD63oWgm8DzQnyT/NIAMzdLnhkg7vP+fjG8LjHeyIAg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/grid@3.8.7': - resolution: {integrity: sha512-he3TXCLAhF5C5z1/G4ySzcwyt7PEiWcVIupxebJQqRyFrNWemSuv+7tolnStmG8maMVIyV3P/3j4eRBbdSlOIg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/list@3.10.5': - resolution: {integrity: sha512-fV9plO+6QDHiewsYIhboxcDhF17GO95xepC5ki0bKXo44gr14g/LSo/BMmsaMnV+1BuGdBunB05bO4QOIaigXA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/menu@3.7.1': - resolution: {integrity: sha512-mX1w9HHzt+xal1WIT2xGrTQsoLvDwuB2R1Er1MBABs//MsJzccycatcgV/J/28m6tO5M9iuFQQvLV+i1dCtodg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/overlays@3.6.7': - resolution: {integrity: sha512-6zp8v/iNUm6YQap0loaFx6PlvN8C0DgWHNlrlzMtMmNuvjhjR0wYXVaTfNoUZBWj25tlDM81ukXOjpRXg9rLrw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/radio@3.10.4': - resolution: {integrity: sha512-kCIc7tAl4L7Hu4Wt9l2jaa+MzYmAJm0qmC8G8yPMbExpWbLRu6J8Un80GZu+JxvzgDlqDyrVvyv9zFifwH/NkQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/select@3.6.4': - resolution: {integrity: sha512-whZgF1N53D0/dS8tOFdrswB0alsk5Q5620HC3z+5f2Hpi8gwgAZ8TYa+2IcmMYRiT+bxVuvEc/NirU9yPmqGbA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/selection@3.15.1': - resolution: {integrity: sha512-6TQnN9L0UY9w19B7xzb1P6mbUVBtW840Cw1SjgNXCB3NPaCf59SwqClYzoj8O2ZFzMe8F/nUJtfU1NS65/OLlw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/slider@3.5.4': - resolution: {integrity: sha512-Jsf7K17dr93lkNKL9ij8HUcoM1sPbq8TvmibD6DhrK9If2lje+OOL8y4n4qreUnfMT56HCAeS9wCO3fg3eMyrw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/table@3.11.8': - resolution: {integrity: sha512-EdyRW3lT1/kAVDp5FkEIi1BQ7tvmD2YgniGdLuW/l9LADo0T+oxZqruv60qpUS6sQap+59Riaxl91ClDxrJnpg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/tabs@3.6.6': - resolution: {integrity: sha512-sOLxorH2uqjAA+v1ppkMCc2YyjgqvSGeBDgtR/lyPSDd4CVMoTExszROX2dqG0c8il9RQvzFuufUtQWMY6PgSA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/toggle@3.7.4': - resolution: {integrity: sha512-CoYFe9WrhLkDP4HGDpJYQKwfiYCRBAeoBQHv+JWl5eyK61S8xSwoHsveYuEZ3bowx71zyCnNAqWRrmNOxJ4CKA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/tooltip@3.4.9': - resolution: {integrity: sha512-P7CDJsdoKarz32qFwf3VNS01lyC+63gXpDZG31pUu+EO5BeQd4WKN/AH1Beuswpr4GWzxzFc1aXQgERFGVzraA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/tree@3.8.1': - resolution: {integrity: sha512-LOdkkruJWch3W89h4B/bXhfr0t0t1aRfEp+IMrrwdRAl23NaPqwl5ILHs4Xu5XDHqqhg8co73pHrJwUyiTWEjw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/utils@3.10.1': - resolution: {integrity: sha512-VS/EHRyicef25zDZcM/ClpzYMC5i2YGN6uegOeQawmgfGjb02yaCX0F0zR69Pod9m2Hr3wunTbtpgVXvYbZItg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-stately/virtualizer@3.7.1': - resolution: {integrity: sha512-voHgE6EQ+oZaLv6u2umKxakvIKNkCQuUihqKACTjdslp7SJh4Mvs3oLBI0hf0JOh+rCcFIKDvQtFwy1fXFRYBA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/accordion@3.0.0-alpha.21': - resolution: {integrity: sha512-cbE06jH/ZoI+1898xd7ocQ/A/Rtkz8wTJAVOYgc8VRY1SYNQ/XZTGH5T6dD6aERAmiDwL/kjD7xhsE80DyaEKA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/breadcrumbs@3.7.5': - resolution: {integrity: sha512-lV9IDYsMiu2TgdMIjEmsOE0YWwjb3jhUNK1DCZZfq6uWuiHLgyx2EncazJBUWSjHJ4ta32j7xTuXch+8Ai6u/A==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/button@3.9.4': - resolution: {integrity: sha512-raeQBJUxBp0axNF74TXB8/H50GY8Q3eV6cEKMbZFP1+Dzr09Ngv0tJBeW0ewAxAguNH5DRoMUAUGIXtSXskVdA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/calendar@3.4.6': - resolution: {integrity: sha512-WSntZPwtvsIYWvBQRAPvuCn55UTJBZroTvX0vQvWykJRQnPAI20G1hMQ3dNsnAL+gLZUYxBXn66vphmjUuSYew==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/checkbox@3.8.1': - resolution: {integrity: sha512-5/oVByPw4MbR/8QSdHCaalmyWC71H/QGgd4aduTJSaNi825o+v/hsN2/CH7Fq9atkLKsC8fvKD00Bj2VGaKriQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/combobox@3.11.1': - resolution: {integrity: sha512-UNc3OHt5cUt5gCTHqhQIqhaWwKCpaNciD8R7eQazmHiA9fq8ROlV+7l3gdNgdhJbTf5Bu/V5ISnN7Y1xwL3zqQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/datepicker@3.7.4': - resolution: {integrity: sha512-ZfvgscvNzBJpYyVWg3nstJtA/VlWLwErwSkd1ivZYam859N30w8yH+4qoYLa6FzWLCFlrsRHyvtxlEM7lUAt5A==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/dialog@3.5.10': - resolution: {integrity: sha512-S9ga+edOLNLZw7/zVOnZdT5T40etpzUYBXEKdFPbxyPYnERvRxJAsC1/ASuBU9fQAXMRgLZzADWV+wJoGS/X9g==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/grid@3.2.6': - resolution: {integrity: sha512-XfHenL2jEBUYrhKiPdeM24mbLRXUn79wVzzMhrNYh24nBwhsPPpxF+gjFddT3Cy8dt6tRInfT6pMEu9nsXwaHw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/link@3.5.5': - resolution: {integrity: sha512-G6P5WagHDR87npN7sEuC5IIgL1GsoY4WFWKO4734i2CXRYx24G9P0Su3AX4GA3qpspz8sK1AWkaCzBMmvnunfw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/listbox@3.4.9': - resolution: {integrity: sha512-S5G+WmNKUIOPZxZ4svWwWQupP3C6LmVfnf8QQmPDvwYXGzVc0WovkqUWyhhjJirFDswTXRCO9p0yaTHHIlkdwQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/menu@3.9.9': - resolution: {integrity: sha512-FamUaPVs1Fxr4KOMI0YcR2rYZHoN7ypGtgiEiJ11v/tEPjPPGgeKDxii0McCrdOkjheatLN1yd2jmMwYj6hTDg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/overlays@3.8.7': - resolution: {integrity: sha512-zCOYvI4at2DkhVpviIClJ7bRrLXYhSg3Z3v9xymuPH3mkiuuP/dm8mUCtkyY4UhVeUTHmrQh1bzaOP00A+SSQA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/progress@3.5.4': - resolution: {integrity: sha512-JNc246sTjasPyx5Dp7/s0rp3Bz4qlu4LrZTulZlxWyb53WgBNL7axc26CCi+I20rWL9+c7JjhrRxnLl/1cLN5g==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/radio@3.8.1': - resolution: {integrity: sha512-bK0gio/qj1+0Ldu/3k/s9BaOZvnnRgvFtL3u5ky479+aLG5qf1CmYed3SKz8ErZ70JkpuCSrSwSCFf0t1IHovw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/select@3.9.4': - resolution: {integrity: sha512-xI7dnOW2st91fPPcv6hdtrTdcfetYiqZuuVPZ5TRobY7Q10/Zqqe/KqtOw1zFKUj9xqNJe4Ov3xP5GSdcO60Eg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/shared@3.22.1': - resolution: {integrity: sha512-PCpa+Vo6BKnRMuOEzy5zAZ3/H5tnQg1e80khMhK2xys0j6ZqzkgQC+fHMNZ7VDFNLqqNMj/o0eVeSBDh2POjkw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/shared@3.23.1': - resolution: {integrity: sha512-5d+3HbFDxGZjhbMBeFHRQhexMFt4pUce3okyRtUVKbbedQFUrtXSBg9VszgF2RTeQDKDkMCIQDtz5ccP/Lk1gw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/slider@3.7.3': - resolution: {integrity: sha512-F8qFQaD2mqug2D0XeWMmjGBikiwbdERFlhFzdvNGbypPLz3AZICBKp1ZLPWdl0DMuy03G/jy6Gl4mDobl7RT2g==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/switch@3.5.3': - resolution: {integrity: sha512-Nb6+J5MrPaFa8ZNFKGMzAsen/NNzl5UG/BbC65SLGPy7O0VDa/sUpn7dcu8V2xRpRwwIN/Oso4v63bt2sgdkgA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/table@3.9.5': - resolution: {integrity: sha512-fgM2j9F/UR4Anmd28CueghCgBwOZoCVyN8fjaIFPd2MN4gCwUUfANwxLav65gZk4BpwUXGoQdsW+X50L3555mg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/tabs@3.3.7': - resolution: {integrity: sha512-ZdLe5xOcFX6+/ni45Dl2jO0jFATpTnoSqj6kLIS/BYv8oh0n817OjJkLf+DS3CLfNjApJWrHqAk34xNh6nRnEg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/textfield@3.9.3': - resolution: {integrity: sha512-DoAY6cYOL0pJhgNGI1Rosni7g72GAt4OVr2ltEx2S9ARmFZ0DBvdhA9lL2nywcnKMf27PEJcKMXzXc10qaHsJw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@react-types/tooltip@3.4.9': - resolution: {integrity: sha512-wZ+uF1+Zc43qG+cOJzioBmLUNjRa7ApdcT0LI1VvaYvH5GdfjzUJOorLX9V/vAci0XMJ50UZ+qsh79aUlw2yqg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - - '@remix-run/router@1.16.1': - resolution: {integrity: sha512-es2g3dq6Nb07iFxGk5GuHN20RwBZOsuDQN7izWIisUcv9r+d2C5jQxqmgkdebXgReWfiyUabcki6Fg77mSNrig==} - engines: {node: '>=14.0.0'} - - '@rollup/rollup-android-arm-eabi@4.18.0': - resolution: {integrity: sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==} - cpu: [arm] - os: [android] - - '@rollup/rollup-android-arm64@4.18.0': - resolution: {integrity: sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==} - cpu: [arm64] - os: [android] - - '@rollup/rollup-darwin-arm64@4.18.0': - resolution: {integrity: sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==} - cpu: [arm64] - os: [darwin] - - '@rollup/rollup-darwin-x64@4.18.0': - resolution: {integrity: sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==} - cpu: [x64] - os: [darwin] - - '@rollup/rollup-linux-arm-gnueabihf@4.18.0': - resolution: {integrity: sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==} - cpu: [arm] - os: [linux] - - '@rollup/rollup-linux-arm-musleabihf@4.18.0': - resolution: {integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==} - cpu: [arm] - os: [linux] - - '@rollup/rollup-linux-arm64-gnu@4.18.0': - resolution: {integrity: sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==} - cpu: [arm64] - os: [linux] - - '@rollup/rollup-linux-arm64-musl@4.18.0': - resolution: {integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==} - cpu: [arm64] - os: [linux] - - '@rollup/rollup-linux-powerpc64le-gnu@4.18.0': - resolution: {integrity: sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==} - cpu: [ppc64] - os: [linux] - - '@rollup/rollup-linux-riscv64-gnu@4.18.0': - resolution: {integrity: sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==} - cpu: [riscv64] - os: [linux] - - '@rollup/rollup-linux-s390x-gnu@4.18.0': - resolution: {integrity: sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==} - cpu: [s390x] - os: [linux] - - '@rollup/rollup-linux-x64-gnu@4.18.0': - resolution: {integrity: sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==} - cpu: [x64] - os: [linux] - - '@rollup/rollup-linux-x64-musl@4.18.0': - resolution: {integrity: sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==} - cpu: [x64] - os: [linux] - - '@rollup/rollup-win32-arm64-msvc@4.18.0': - resolution: {integrity: sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==} - cpu: [arm64] - os: [win32] - - '@rollup/rollup-win32-ia32-msvc@4.18.0': - resolution: {integrity: sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==} - cpu: [ia32] - os: [win32] - - '@rollup/rollup-win32-x64-msvc@4.18.0': - resolution: {integrity: sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==} - cpu: [x64] - os: [win32] - - '@swc/helpers@0.5.11': - resolution: {integrity: sha512-YNlnKRWF2sVojTpIyzwou9XoTNbzbzONwRhOoniEioF1AtaitTvVZblaQRrAzChWQ1bLYyYSWzM18y4WwgzJ+A==} - - '@types/babel__core@7.20.5': - resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} - - '@types/babel__generator@7.6.8': - resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} - - '@types/babel__template@7.4.4': - resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} - - '@types/babel__traverse@7.20.6': - resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==} - - '@types/estree@1.0.5': - resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} - - '@types/hoist-non-react-statics@3.3.5': - resolution: {integrity: sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==} - - '@types/lodash.debounce@4.0.9': - resolution: {integrity: sha512-Ma5JcgTREwpLRwMM+XwBR7DaWe96nC38uCBDFKZWbNKD+osjVzdpnUSwBcqCptrp16sSOLBAUb50Car5I0TCsQ==} - - '@types/lodash@4.17.5': - resolution: {integrity: sha512-MBIOHVZqVqgfro1euRDWX7OO0fBVUUMrN6Pwm8LQsz8cWhEpihlvR70ENj3f40j58TNxZaWv2ndSkInykNBBJw==} - - '@types/prop-types@15.7.12': - resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==} - - '@types/react-dom@18.3.0': - resolution: {integrity: sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==} - - '@types/react@18.3.3': - resolution: {integrity: sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw==} - - '@typescript-eslint/eslint-plugin@7.13.1': - resolution: {integrity: sha512-kZqi+WZQaZfPKnsflLJQCz6Ze9FFSMfXrrIOcyargekQxG37ES7DJNpJUE9Q/X5n3yTIP/WPutVNzgknQ7biLg==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - '@typescript-eslint/parser': ^7.0.0 - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/parser@7.13.1': - resolution: {integrity: sha512-1ELDPlnLvDQ5ybTSrMhRTFDfOQEOXNM+eP+3HT/Yq7ruWpciQw+Avi73pdEbA4SooCawEWo3dtYbF68gN7Ed1A==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/scope-manager@7.13.1': - resolution: {integrity: sha512-adbXNVEs6GmbzaCpymHQ0MB6E4TqoiVbC0iqG3uijR8ZYfpAXMGttouQzF4Oat3P2GxDVIrg7bMI/P65LiQZdg==} - engines: {node: ^18.18.0 || >=20.0.0} - - '@typescript-eslint/type-utils@7.13.1': - resolution: {integrity: sha512-aWDbLu1s9bmgPGXSzNCxELu+0+HQOapV/y+60gPXafR8e2g1Bifxzevaa+4L2ytCWm+CHqpELq4CSoN9ELiwCg==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/types@7.13.1': - resolution: {integrity: sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw==} - engines: {node: ^18.18.0 || >=20.0.0} - - '@typescript-eslint/typescript-estree@7.13.1': - resolution: {integrity: sha512-uxNr51CMV7npU1BxZzYjoVz9iyjckBduFBP0S5sLlh1tXYzHzgZ3BR9SVsNed+LmwKrmnqN3Kdl5t7eZ5TS1Yw==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/utils@7.13.1': - resolution: {integrity: sha512-h5MzFBD5a/Gh/fvNdp9pTfqJAbuQC4sCN2WzuXme71lqFJsZtLbjxfSk4r3p02WIArOF9N94pdsLiGutpDbrXQ==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - eslint: ^8.56.0 - - '@typescript-eslint/visitor-keys@7.13.1': - resolution: {integrity: sha512-k/Bfne7lrP7hcb7m9zSsgcBmo+8eicqqfNAJ7uUY+jkTFpKeH2FSkWpFRtimBxgkyvqfu9jTPRbYOvud6isdXA==} - engines: {node: ^18.18.0 || >=20.0.0} - - '@ungap/structured-clone@1.2.0': - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - - '@vitejs/plugin-react@4.3.1': - resolution: {integrity: sha512-m/V2syj5CuVnaxcUJOQRel/Wr31FFXRFlnOoq1TVtkCxsY5veGMTEmpWHndrhB2U8ScHtCQB1e+4hWYExQc6Lg==} - engines: {node: ^14.18.0 || >=16.0.0} - peerDependencies: - vite: ^4.2.0 || ^5.0.0 - - acorn-jsx@5.3.2: - resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - - acorn@8.12.0: - resolution: {integrity: sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==} - engines: {node: '>=0.4.0'} - hasBin: true - - ajv@6.12.6: - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} - - ansi-regex@5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} - engines: {node: '>=8'} - - ansi-regex@6.0.1: - resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} - engines: {node: '>=12'} - - ansi-styles@3.2.1: - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} - engines: {node: '>=4'} - - ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} - - ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} - engines: {node: '>=12'} - - any-promise@1.3.0: - resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} - - anymatch@3.1.3: - resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} - engines: {node: '>= 8'} - - arg@5.0.2: - resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} - - argparse@2.0.1: - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - - array-union@2.1.0: - resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} - engines: {node: '>=8'} - - asynckit@0.4.0: - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - - autoprefixer@10.4.19: - resolution: {integrity: sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==} - engines: {node: ^10 || ^12 || >=14} - hasBin: true - peerDependencies: - postcss: ^8.1.0 - - axios@1.7.2: - resolution: {integrity: sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==} - - balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - - binary-extensions@2.3.0: - resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} - engines: {node: '>=8'} - - brace-expansion@1.1.11: - resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} - - brace-expansion@2.0.1: - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} - - braces@3.0.3: - resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} - engines: {node: '>=8'} - - browserslist@4.23.1: - resolution: {integrity: sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - - callsites@3.1.0: - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} - engines: {node: '>=6'} - - camelcase-css@2.0.1: - resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} - engines: {node: '>= 6'} - - caniuse-lite@1.0.30001636: - resolution: {integrity: sha512-bMg2vmr8XBsbL6Lr0UHXy/21m84FTxDLWn2FSqMd5PrlbMxwJlQnC2YWYxVgp66PZE+BBNF2jYQUBKCo1FDeZg==} - - chalk@2.4.2: - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} - engines: {node: '>=4'} - - chalk@4.1.2: - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} - engines: {node: '>=10'} - - chokidar@3.6.0: - resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} - engines: {node: '>= 8.10.0'} - - clsx@1.2.1: - resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} - engines: {node: '>=6'} - - clsx@2.1.1: - resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} - engines: {node: '>=6'} - - color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} - - color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} - engines: {node: '>=7.0.0'} - - color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - - color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - - color-string@1.9.1: - resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} - - color2k@2.0.3: - resolution: {integrity: sha512-zW190nQTIoXcGCaU08DvVNFTmQhUpnJfVuAKfWqUQkflXKpaDdpaYoM0iluLS9lgJNHyBF58KKA2FBEwkD7wog==} - - color@4.2.3: - resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} - engines: {node: '>=12.5.0'} - - combined-stream@1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} - engines: {node: '>= 0.8'} - - commander@4.1.1: - resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} - engines: {node: '>= 6'} - - compute-scroll-into-view@3.1.0: - resolution: {integrity: sha512-rj8l8pD4bJ1nx+dAkMhV1xB5RuZEyVysfxJqB1pRchh1KVvwOv9b7CGB8ZfjTImVv2oF+sYMUkMZq6Na5Ftmbg==} - - concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - - convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - - cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} - engines: {node: '>= 8'} - - cssesc@3.0.0: - resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} - engines: {node: '>=4'} - hasBin: true - - csstype@3.1.3: - resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - - debug@4.3.5: - resolution: {integrity: sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - deep-is@0.1.4: - resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} - - deepmerge@2.2.1: - resolution: {integrity: sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==} - engines: {node: '>=0.10.0'} - - deepmerge@4.3.1: - resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} - engines: {node: '>=0.10.0'} - - delayed-stream@1.0.0: - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} - engines: {node: '>=0.4.0'} - - detect-node-es@1.1.0: - resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} - - didyoumean@1.2.2: - resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} - - dir-glob@3.0.1: - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} - engines: {node: '>=8'} - - dlv@1.1.3: - resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} - - doctrine@3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} - - eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - - electron-to-chromium@1.4.806: - resolution: {integrity: sha512-nkoEX2QIB8kwCOtvtgwhXWy2IHVcOLQZu9Qo36uaGB835mdX/h8uLRlosL6QIhLVUnAiicXRW00PwaPZC74Nrg==} - - emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - - emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - - esbuild@0.21.5: - resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} - engines: {node: '>=12'} - hasBin: true - - escalade@3.1.2: - resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} - engines: {node: '>=6'} - - escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} - - escape-string-regexp@4.0.0: - resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} - engines: {node: '>=10'} - - eslint-plugin-react-hooks@4.6.2: - resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==} - engines: {node: '>=10'} - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - - eslint-plugin-react-refresh@0.4.7: - resolution: {integrity: sha512-yrj+KInFmwuQS2UQcg1SF83ha1tuHC1jMQbRNyuWtlEzzKRDgAl7L4Yp4NlDUZTZNlWvHEzOtJhMi40R7JxcSw==} - peerDependencies: - eslint: '>=7' - - eslint-scope@7.2.2: - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint-visitor-keys@3.4.3: - resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint@8.57.0: - resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - hasBin: true - - espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - esquery@1.5.0: - resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} - engines: {node: '>=0.10'} - - esrecurse@4.3.0: - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} - engines: {node: '>=4.0'} - - estraverse@5.3.0: - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} - engines: {node: '>=4.0'} - - esutils@2.0.3: - resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} - engines: {node: '>=0.10.0'} - - fast-deep-equal@3.1.3: - resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - - fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} - engines: {node: '>=8.6.0'} - - fast-json-stable-stringify@2.1.0: - resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - - fast-levenshtein@2.0.6: - resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} - - fastq@1.17.1: - resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} - - file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} - - fill-range@7.1.1: - resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} - engines: {node: '>=8'} - - find-up@5.0.0: - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} - engines: {node: '>=10'} - - flat-cache@3.2.0: - resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} - engines: {node: ^10.12.0 || >=12.0.0} - - flat@5.0.2: - resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} - hasBin: true - - flatted@3.3.1: - resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} - - follow-redirects@1.15.6: - resolution: {integrity: sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==} - engines: {node: '>=4.0'} - peerDependencies: - debug: '*' - peerDependenciesMeta: - debug: - optional: true - - foreground-child@3.2.1: - resolution: {integrity: sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==} - engines: {node: '>=14'} - - form-data@4.0.0: - resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} - engines: {node: '>= 6'} - - formik@2.4.6: - resolution: {integrity: sha512-A+2EI7U7aG296q2TLGvNapDNTZp1khVt5Vk0Q/fyfSROss0V/V6+txt2aJnwEos44IxTCW/LYAi/zgWzlevj+g==} - peerDependencies: - react: '>=16.8.0' - - fraction.js@4.3.7: - resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} - - framer-motion@11.2.10: - resolution: {integrity: sha512-/gr3PLZUVFCc86a9MqCUboVrALscrdluzTb3yew+2/qKBU8CX6nzs918/SRBRCqaPbx0TZP10CB6yFgK2C5cYQ==} - peerDependencies: - '@emotion/is-prop-valid': '*' - react: ^18.0.0 - react-dom: ^18.0.0 - peerDependenciesMeta: - '@emotion/is-prop-valid': - optional: true - react: - optional: true - react-dom: - optional: true - - fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - - fsevents@2.3.3: - resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - - function-bind@1.1.2: - resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - - gensync@1.0.0-beta.2: - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} - engines: {node: '>=6.9.0'} - - get-nonce@1.0.1: - resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==} - engines: {node: '>=6'} - - glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} - - glob-parent@6.0.2: - resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} - engines: {node: '>=10.13.0'} - - glob@10.4.2: - resolution: {integrity: sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==} - engines: {node: '>=16 || 14 >=14.18'} - hasBin: true - - glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} - deprecated: Glob versions prior to v9 are no longer supported - - globals@11.12.0: - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} - engines: {node: '>=4'} - - globals@13.24.0: - resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} - engines: {node: '>=8'} - - globby@11.1.0: - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} - engines: {node: '>=10'} - - goober@2.1.14: - resolution: {integrity: sha512-4UpC0NdGyAFqLNPnhCT2iHpza2q+RAY3GV85a/mRPdzyPQMsj0KmMMuetdIkzWRbJ+Hgau1EZztq8ImmiMGhsg==} - peerDependencies: - csstype: ^3.0.10 - - graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - - has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} - - has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} - - hasown@2.0.2: - resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} - engines: {node: '>= 0.4'} - - hoist-non-react-statics@3.3.2: - resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} - - ignore@5.3.1: - resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} - engines: {node: '>= 4'} - - import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} - engines: {node: '>=6'} - - imurmurhash@0.1.4: - resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} - engines: {node: '>=0.8.19'} - - inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} - deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. - - inherits@2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - - intl-messageformat@10.5.14: - resolution: {integrity: sha512-IjC6sI0X7YRjjyVH9aUgdftcmZK7WXdHeil4KwbjDnRWjnVitKpAx3rr6t6di1joFp5188VqKcobOPA6mCLG/w==} - - invariant@2.2.4: - resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} - - is-arrayish@0.3.2: - resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} - - is-binary-path@2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} - - is-core-module@2.13.1: - resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} - - is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} - - is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} - - is-glob@4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} - engines: {node: '>=0.10.0'} - - is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} - - is-path-inside@3.0.3: - resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} - engines: {node: '>=8'} - - isexe@2.0.0: - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - - jackspeak@3.4.0: - resolution: {integrity: sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==} - engines: {node: '>=14'} - - jiti@1.21.6: - resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} - hasBin: true - - js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - - js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} - hasBin: true - - jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} - hasBin: true - - json-buffer@3.0.1: - resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} - - json-schema-traverse@0.4.1: - resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} - - json-stable-stringify-without-jsonify@1.0.1: - resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} - - json5@2.2.3: - resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} - engines: {node: '>=6'} - hasBin: true - - keyv@4.5.4: - resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} - - levn@0.4.1: - resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} - engines: {node: '>= 0.8.0'} - - lilconfig@2.1.0: - resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} - engines: {node: '>=10'} - - lilconfig@3.1.2: - resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==} - engines: {node: '>=14'} - - lines-and-columns@1.2.4: - resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - - locate-path@6.0.0: - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} - engines: {node: '>=10'} - - lodash-es@4.17.21: - resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} - - lodash.debounce@4.0.8: - resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} - - lodash.foreach@4.5.0: - resolution: {integrity: sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ==} - - lodash.get@4.4.2: - resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==} - - lodash.kebabcase@4.1.1: - resolution: {integrity: sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==} - - lodash.mapkeys@4.6.0: - resolution: {integrity: sha512-0Al+hxpYvONWtg+ZqHpa/GaVzxuN3V7Xeo2p+bY06EaK/n+Y9R7nBePPN2o1LxmL0TWQSwP8LYZ008/hc9JzhA==} - - lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - - lodash.omit@4.5.0: - resolution: {integrity: sha512-XeqSp49hNGmlkj2EJlfrQFIzQ6lXdNro9sddtQzcJY8QaoC2GO0DT7xaIokHeyM+mIT0mPMlPvkYzg2xCuHdZg==} - - lodash@4.17.21: - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - - loose-envify@1.4.0: - resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} - hasBin: true - - lru-cache@10.2.2: - resolution: {integrity: sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==} - engines: {node: 14 || >=16.14} - - lru-cache@5.1.1: - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} - - merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - - micromatch@4.0.7: - resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} - engines: {node: '>=8.6'} - - mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} - - mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} - - minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} - - minimatch@9.0.4: - resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} - engines: {node: '>=16 || 14 >=14.17'} - - minipass@7.1.2: - resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} - engines: {node: '>=16 || 14 >=14.17'} - - ms@2.1.2: - resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} - - mz@2.7.0: - resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - - nanoid@3.3.7: - resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - - natural-compare@1.4.0: - resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - - node-releases@2.0.14: - resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} - - normalize-path@3.0.0: - resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} - engines: {node: '>=0.10.0'} - - normalize-range@0.1.2: - resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} - engines: {node: '>=0.10.0'} - - object-assign@4.1.1: - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} - engines: {node: '>=0.10.0'} - - object-hash@3.0.0: - resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} - engines: {node: '>= 6'} - - once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - - optionator@0.9.4: - resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} - engines: {node: '>= 0.8.0'} - - p-limit@3.1.0: - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} - engines: {node: '>=10'} - - p-locate@5.0.0: - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} - engines: {node: '>=10'} - - package-json-from-dist@1.0.0: - resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} - - parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} - - path-exists@4.0.0: - resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} - engines: {node: '>=8'} - - path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} - engines: {node: '>=0.10.0'} - - path-key@3.1.1: - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} - engines: {node: '>=8'} - - path-parse@1.0.7: - resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - - path-scurry@1.11.1: - resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} - engines: {node: '>=16 || 14 >=14.18'} - - path-type@4.0.0: - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} - engines: {node: '>=8'} - - picocolors@1.0.1: - resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} - - picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} - engines: {node: '>=8.6'} - - pify@2.3.0: - resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} - engines: {node: '>=0.10.0'} - - pirates@4.0.6: - resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} - engines: {node: '>= 6'} - - postcss-import@15.1.0: - resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} - engines: {node: '>=14.0.0'} - peerDependencies: - postcss: ^8.0.0 - - postcss-js@4.0.1: - resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} - engines: {node: ^12 || ^14 || >= 16} - peerDependencies: - postcss: ^8.4.21 - - postcss-load-config@4.0.2: - resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} - engines: {node: '>= 14'} - peerDependencies: - postcss: '>=8.0.9' - ts-node: '>=9.0.0' - peerDependenciesMeta: - postcss: - optional: true - ts-node: - optional: true - - postcss-nested@6.0.1: - resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} - engines: {node: '>=12.0'} - peerDependencies: - postcss: ^8.2.14 - - postcss-selector-parser@6.1.0: - resolution: {integrity: sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==} - engines: {node: '>=4'} - - postcss-value-parser@4.2.0: - resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - - postcss@8.4.38: - resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} - engines: {node: ^10 || ^12 || >=14} - - prelude-ls@1.2.1: - resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} - engines: {node: '>= 0.8.0'} - - property-expr@2.0.6: - resolution: {integrity: sha512-SVtmxhRE/CGkn3eZY1T6pC8Nln6Fr/lu1mKSgRud0eC73whjGfoAogbn78LkD8aFL0zz3bAFerKSnOl7NlErBA==} - - proxy-from-env@1.1.0: - resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} - - punycode@2.3.1: - resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} - engines: {node: '>=6'} - - queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - - react-dom@18.3.1: - resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} - peerDependencies: - react: ^18.3.1 - - react-fast-compare@2.0.4: - resolution: {integrity: sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw==} - - react-hot-toast@2.4.1: - resolution: {integrity: sha512-j8z+cQbWIM5LY37pR6uZR6D4LfseplqnuAO4co4u8917hBUvXlEqyP1ZzqVLcqoyUesZZv/ImreoCeHVDpE5pQ==} - engines: {node: '>=10'} - peerDependencies: - react: '>=16' - react-dom: '>=16' - - react-is@16.13.1: - resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - - react-refresh@0.14.2: - resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==} - engines: {node: '>=0.10.0'} - - react-remove-scroll-bar@2.3.6: - resolution: {integrity: sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - react-remove-scroll@2.5.10: - resolution: {integrity: sha512-m3zvBRANPBw3qxVVjEIPEQinkcwlFZ4qyomuWVpNJdv4c6MvHfXV0C3L9Jx5rr3HeBHKNRX+1jreB5QloDIJjA==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - react-router-dom@6.23.1: - resolution: {integrity: sha512-utP+K+aSTtEdbWpC+4gxhdlPFwuEfDKq8ZrPFU65bbRJY+l706qjR7yaidBpo3MSeA/fzwbXWbKBI6ftOnP3OQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - react: '>=16.8' - react-dom: '>=16.8' - - react-router@6.23.1: - resolution: {integrity: sha512-fzcOaRF69uvqbbM7OhvQyBTFDVrrGlsFdS3AL+1KfIBtGETibHzi3FkoTRyiDJnWNc2VxrfvR+657ROHjaNjqQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - react: '>=16.8' - - react-style-singleton@2.2.1: - resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - react-textarea-autosize@8.5.3: - resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} - engines: {node: '>=10'} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - - react@18.3.1: - resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} - engines: {node: '>=0.10.0'} - - read-cache@1.0.0: - resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} - - readdirp@3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} - engines: {node: '>=8.10.0'} - - regenerator-runtime@0.14.1: - resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} - - resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} - - resolve@1.22.8: - resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} - hasBin: true - - reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - - rimraf@3.0.2: - resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} - deprecated: Rimraf versions prior to v4 are no longer supported - hasBin: true - - rollup@4.18.0: - resolution: {integrity: sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - - run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} - - scheduler@0.23.2: - resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} - - scroll-into-view-if-needed@3.0.10: - resolution: {integrity: sha512-t44QCeDKAPf1mtQH3fYpWz8IM/DyvHLjs8wUvvwMYxk5moOqCzrMSxK6HQVD0QVmVjXFavoFIPRVrMuJPKAvtg==} - - semver@6.3.1: - resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} - hasBin: true - - semver@7.6.2: - resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==} - engines: {node: '>=10'} - hasBin: true - - shebang-command@2.0.0: - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} - engines: {node: '>=8'} - - shebang-regex@3.0.0: - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} - engines: {node: '>=8'} - - signal-exit@4.1.0: - resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} - engines: {node: '>=14'} - - simple-swizzle@0.2.2: - resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} - - slash@3.0.0: - resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} - engines: {node: '>=8'} - - source-map-js@1.2.0: - resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} - engines: {node: '>=0.10.0'} - - string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} - - string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} - - strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} - - strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} - - strip-json-comments@3.1.1: - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} - engines: {node: '>=8'} - - sucrase@3.35.0: - resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} - engines: {node: '>=16 || 14 >=14.17'} - hasBin: true - - supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} - - supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} - - supports-preserve-symlinks-flag@1.0.0: - resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} - engines: {node: '>= 0.4'} - - tailwind-merge@1.14.0: - resolution: {integrity: sha512-3mFKyCo/MBcgyOTlrY8T7odzZFx+w+qKSMAmdFzRvqBfLlSigU6TZnlFHK0lkMwj9Bj8OYU+9yW9lmGuS0QEnQ==} - - tailwind-variants@0.1.20: - resolution: {integrity: sha512-AMh7x313t/V+eTySKB0Dal08RHY7ggYK0MSn/ad8wKWOrDUIzyiWNayRUm2PIJ4VRkvRnfNuyRuKbLV3EN+ewQ==} - engines: {node: '>=16.x', pnpm: '>=7.x'} - peerDependencies: - tailwindcss: '*' - - tailwindcss@3.4.4: - resolution: {integrity: sha512-ZoyXOdJjISB7/BcLTR6SEsLgKtDStYyYZVLsUtWChO4Ps20CBad7lfJKVDiejocV4ME1hLmyY0WJE3hSDcmQ2A==} - engines: {node: '>=14.0.0'} - hasBin: true - - text-table@0.2.0: - resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} - - thenify-all@1.6.0: - resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} - engines: {node: '>=0.8'} - - thenify@3.3.1: - resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} - - tiny-case@1.0.3: - resolution: {integrity: sha512-Eet/eeMhkO6TX8mnUteS9zgPbUMQa4I6Kkp5ORiBD5476/m+PIRiumP5tmh5ioJpH7k51Kehawy2UDfsnxxY8Q==} - - tiny-warning@1.0.3: - resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==} - - to-fast-properties@2.0.0: - resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} - engines: {node: '>=4'} - - to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} - - toposort@2.0.2: - resolution: {integrity: sha512-0a5EOkAUp8D4moMi2W8ZF8jcga7BgZd91O/yabJCFY8az+XSzeGyTKs0Aoo897iV1Nj6guFq8orWDS96z91oGg==} - - ts-api-utils@1.3.0: - resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} - engines: {node: '>=16'} - peerDependencies: - typescript: '>=4.2.0' - - ts-interface-checker@0.1.13: - resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - - tslib@2.6.3: - resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} - - type-check@0.4.0: - resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} - engines: {node: '>= 0.8.0'} - - type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} - - type-fest@2.19.0: - resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} - engines: {node: '>=12.20'} - - typescript@5.4.5: - resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} - engines: {node: '>=14.17'} - hasBin: true - - update-browserslist-db@1.0.16: - resolution: {integrity: sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - - uri-js@4.4.1: - resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} - - use-callback-ref@1.3.2: - resolution: {integrity: sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - use-composed-ref@1.3.0: - resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - - use-isomorphic-layout-effect@1.1.2: - resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} - peerDependencies: - '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - use-latest@1.2.1: - resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} - peerDependencies: - '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - use-sidecar@1.1.2: - resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - util-deprecate@1.0.2: - resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - - vite@5.3.1: - resolution: {integrity: sha512-XBmSKRLXLxiaPYamLv3/hnP/KXDai1NDexN0FpkTaZXTfycHvkRHoenpgl/fvuK/kPbB6xAgoyiryAhQNxYmAQ==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - 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 - - which@2.0.2: - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} - engines: {node: '>= 8'} - hasBin: true - - word-wrap@1.2.5: - resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} - engines: {node: '>=0.10.0'} - - wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - - wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} - - wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - - yallist@3.1.1: - resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - - yaml@2.4.5: - resolution: {integrity: sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg==} - engines: {node: '>= 14'} - hasBin: true - - yocto-queue@0.1.0: - resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} - engines: {node: '>=10'} - - yup@1.4.0: - resolution: {integrity: sha512-wPbgkJRCqIf+OHyiTBQoJiP5PFuAXaWiJK6AmYkzQAh5/c2K9hzSApBZG5wV9KoKSePF7sAxmNSvh/13YHkFDg==} - -snapshots: - - '@alloc/quick-lru@5.2.0': {} - - '@ampproject/remapping@2.3.0': dependencies: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 + dev: true - '@babel/code-frame@7.24.7': + /@babel/code-frame@7.24.7: + resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} + engines: {node: '>=6.9.0'} dependencies: '@babel/highlight': 7.24.7 picocolors: 1.0.1 + dev: true - '@babel/compat-data@7.24.7': {} + /@babel/compat-data@7.24.7: + resolution: {integrity: sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==} + engines: {node: '>=6.9.0'} + dev: true - '@babel/core@7.24.7': + /@babel/core@7.24.7: + resolution: {integrity: sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g==} + engines: {node: '>=6.9.0'} dependencies: '@ampproject/remapping': 2.3.0 '@babel/code-frame': 7.24.7 @@ -2662,43 +125,66 @@ snapshots: semver: 6.3.1 transitivePeerDependencies: - supports-color + dev: true - '@babel/generator@7.24.7': + /@babel/generator@7.24.7: + resolution: {integrity: sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==} + engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.7 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 jsesc: 2.5.2 + dev: true - '@babel/helper-compilation-targets@7.24.7': + /@babel/helper-compilation-targets@7.24.7: + resolution: {integrity: sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==} + engines: {node: '>=6.9.0'} dependencies: '@babel/compat-data': 7.24.7 '@babel/helper-validator-option': 7.24.7 browserslist: 4.23.1 lru-cache: 5.1.1 semver: 6.3.1 + dev: true - '@babel/helper-environment-visitor@7.24.7': + /@babel/helper-environment-visitor@7.24.7: + resolution: {integrity: sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==} + engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.7 + dev: true - '@babel/helper-function-name@7.24.7': + /@babel/helper-function-name@7.24.7: + resolution: {integrity: sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==} + engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.24.7 '@babel/types': 7.24.7 + dev: true - '@babel/helper-hoist-variables@7.24.7': + /@babel/helper-hoist-variables@7.24.7: + resolution: {integrity: sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==} + engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.7 + dev: true - '@babel/helper-module-imports@7.24.7': + /@babel/helper-module-imports@7.24.7: + resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} + engines: {node: '>=6.9.0'} dependencies: '@babel/traverse': 7.24.7 '@babel/types': 7.24.7 transitivePeerDependencies: - supports-color + dev: true - '@babel/helper-module-transforms@7.24.7(@babel/core@7.24.7)': + /@babel/helper-module-transforms@7.24.7(@babel/core@7.24.7): + resolution: {integrity: sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 dependencies: '@babel/core': 7.24.7 '@babel/helper-environment-visitor': 7.24.7 @@ -2708,63 +194,110 @@ snapshots: '@babel/helper-validator-identifier': 7.24.7 transitivePeerDependencies: - supports-color + dev: true - '@babel/helper-plugin-utils@7.24.7': {} + /@babel/helper-plugin-utils@7.24.7: + resolution: {integrity: sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg==} + engines: {node: '>=6.9.0'} + dev: true - '@babel/helper-simple-access@7.24.7': + /@babel/helper-simple-access@7.24.7: + resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} + engines: {node: '>=6.9.0'} dependencies: '@babel/traverse': 7.24.7 '@babel/types': 7.24.7 transitivePeerDependencies: - supports-color + dev: true - '@babel/helper-split-export-declaration@7.24.7': + /@babel/helper-split-export-declaration@7.24.7: + resolution: {integrity: sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==} + engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.7 + dev: true - '@babel/helper-string-parser@7.24.7': {} + /@babel/helper-string-parser@7.24.7: + resolution: {integrity: sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==} + engines: {node: '>=6.9.0'} + dev: true - '@babel/helper-validator-identifier@7.24.7': {} + /@babel/helper-validator-identifier@7.24.7: + resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} + engines: {node: '>=6.9.0'} + dev: true - '@babel/helper-validator-option@7.24.7': {} + /@babel/helper-validator-option@7.24.7: + resolution: {integrity: sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw==} + engines: {node: '>=6.9.0'} + dev: true - '@babel/helpers@7.24.7': + /@babel/helpers@7.24.7: + resolution: {integrity: sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==} + engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.24.7 '@babel/types': 7.24.7 + dev: true - '@babel/highlight@7.24.7': + /@babel/highlight@7.24.7: + resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} + engines: {node: '>=6.9.0'} dependencies: '@babel/helper-validator-identifier': 7.24.7 chalk: 2.4.2 js-tokens: 4.0.0 picocolors: 1.0.1 + dev: true - '@babel/parser@7.24.7': + /@babel/parser@7.24.7: + resolution: {integrity: sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==} + engines: {node: '>=6.0.0'} + hasBin: true dependencies: '@babel/types': 7.24.7 + dev: true - '@babel/plugin-transform-react-jsx-self@7.24.7(@babel/core@7.24.7)': + /@babel/plugin-transform-react-jsx-self@7.24.7(@babel/core@7.24.7): + resolution: {integrity: sha512-fOPQYbGSgH0HUp4UJO4sMBFjY6DuWq+2i8rixyUMb3CdGixs/gccURvYOAhajBdKDoGajFr3mUq5rH3phtkGzw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: true - '@babel/plugin-transform-react-jsx-source@7.24.7(@babel/core@7.24.7)': + /@babel/plugin-transform-react-jsx-source@7.24.7(@babel/core@7.24.7): + resolution: {integrity: sha512-J2z+MWzZHVOemyLweMqngXrgGC42jQ//R0KdxqkIz/OrbVIIlhFI3WigZ5fO+nwFvBlncr4MGapd8vTyc7RPNQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: true - '@babel/runtime@7.24.7': + /@babel/runtime@7.24.7: + resolution: {integrity: sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw==} + engines: {node: '>=6.9.0'} dependencies: regenerator-runtime: 0.14.1 + dev: false - '@babel/template@7.24.7': + /@babel/template@7.24.7: + resolution: {integrity: sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==} + engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.24.7 '@babel/parser': 7.24.7 '@babel/types': 7.24.7 + dev: true - '@babel/traverse@7.24.7': + /@babel/traverse@7.24.7: + resolution: {integrity: sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==} + engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.24.7 '@babel/generator': 7.24.7 @@ -2778,90 +311,242 @@ snapshots: globals: 11.12.0 transitivePeerDependencies: - supports-color + dev: true - '@babel/types@7.24.7': + /@babel/types@7.24.7: + resolution: {integrity: sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==} + engines: {node: '>=6.9.0'} dependencies: '@babel/helper-string-parser': 7.24.7 '@babel/helper-validator-identifier': 7.24.7 to-fast-properties: 2.0.0 + dev: true - '@esbuild/aix-ppc64@0.21.5': + /@esbuild/aix-ppc64@0.21.5: + resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + requiresBuild: true + dev: true optional: true - '@esbuild/android-arm64@0.21.5': + /@esbuild/android-arm64@0.21.5: + resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true optional: true - '@esbuild/android-arm@0.21.5': + /@esbuild/android-arm@0.21.5: + resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true optional: true - '@esbuild/android-x64@0.21.5': + /@esbuild/android-x64@0.21.5: + resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: true optional: true - '@esbuild/darwin-arm64@0.21.5': + /@esbuild/darwin-arm64@0.21.5: + resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true optional: true - '@esbuild/darwin-x64@0.21.5': + /@esbuild/darwin-x64@0.21.5: + resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true optional: true - '@esbuild/freebsd-arm64@0.21.5': + /@esbuild/freebsd-arm64@0.21.5: + resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true optional: true - '@esbuild/freebsd-x64@0.21.5': + /@esbuild/freebsd-x64@0.21.5: + resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true optional: true - '@esbuild/linux-arm64@0.21.5': + /@esbuild/linux-arm64@0.21.5: + resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@esbuild/linux-arm@0.21.5': + /@esbuild/linux-arm@0.21.5: + resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true optional: true - '@esbuild/linux-ia32@0.21.5': + /@esbuild/linux-ia32@0.21.5: + resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true optional: true - '@esbuild/linux-loong64@0.21.5': + /@esbuild/linux-loong64@0.21.5: + resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@esbuild/linux-mips64el@0.21.5': + /@esbuild/linux-mips64el@0.21.5: + resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true optional: true - '@esbuild/linux-ppc64@0.21.5': + /@esbuild/linux-ppc64@0.21.5: + resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@esbuild/linux-riscv64@0.21.5': + /@esbuild/linux-riscv64@0.21.5: + resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@esbuild/linux-s390x@0.21.5': + /@esbuild/linux-s390x@0.21.5: + resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true optional: true - '@esbuild/linux-x64@0.21.5': + /@esbuild/linux-x64@0.21.5: + resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@esbuild/netbsd-x64@0.21.5': + /@esbuild/netbsd-x64@0.21.5: + resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true optional: true - '@esbuild/openbsd-x64@0.21.5': + /@esbuild/openbsd-x64@0.21.5: + resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true optional: true - '@esbuild/sunos-x64@0.21.5': + /@esbuild/sunos-x64@0.21.5: + resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true optional: true - '@esbuild/win32-arm64@0.21.5': + /@esbuild/win32-arm64@0.21.5: + resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true optional: true - '@esbuild/win32-ia32@0.21.5': + /@esbuild/win32-ia32@0.21.5: + resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true optional: true - '@esbuild/win32-x64@0.21.5': + /@esbuild/win32-x64@0.21.5: + resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true optional: true - '@eslint-community/eslint-utils@4.4.0(eslint@8.57.0)': + /@eslint-community/eslint-utils@4.4.0(eslint@8.57.0): + resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 dependencies: eslint: 8.57.0 eslint-visitor-keys: 3.4.3 + dev: true - '@eslint-community/regexpp@4.10.1': {} + /@eslint-community/regexpp@4.10.1: + resolution: {integrity: sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + dev: true - '@eslint/eslintrc@2.1.4': + /@eslint/eslintrc@2.1.4: + resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: ajv: 6.12.6 debug: 4.3.5 @@ -2874,89 +559,138 @@ snapshots: strip-json-comments: 3.1.1 transitivePeerDependencies: - supports-color + dev: true - '@eslint/js@8.57.0': {} + /@eslint/js@8.57.0: + resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true - '@formatjs/ecma402-abstract@2.0.0': + /@formatjs/ecma402-abstract@2.0.0: + resolution: {integrity: sha512-rRqXOqdFmk7RYvj4khklyqzcfQl9vEL/usogncBHRZfZBDOwMGuSRNFl02fu5KGHXdbinju+YXyuR+Nk8xlr/g==} dependencies: '@formatjs/intl-localematcher': 0.5.4 tslib: 2.6.3 + dev: false - '@formatjs/fast-memoize@2.2.0': + /@formatjs/fast-memoize@2.2.0: + resolution: {integrity: sha512-hnk/nY8FyrL5YxwP9e4r9dqeM6cAbo8PeU9UjyXojZMNvVad2Z06FAVHyR3Ecw6fza+0GH7vdJgiKIVXTMbSBA==} dependencies: tslib: 2.6.3 + dev: false - '@formatjs/icu-messageformat-parser@2.7.8': + /@formatjs/icu-messageformat-parser@2.7.8: + resolution: {integrity: sha512-nBZJYmhpcSX0WeJ5SDYUkZ42AgR3xiyhNCsQweFx3cz/ULJjym8bHAzWKvG5e2+1XO98dBYC0fWeeAECAVSwLA==} dependencies: '@formatjs/ecma402-abstract': 2.0.0 '@formatjs/icu-skeleton-parser': 1.8.2 tslib: 2.6.3 + dev: false - '@formatjs/icu-skeleton-parser@1.8.2': + /@formatjs/icu-skeleton-parser@1.8.2: + resolution: {integrity: sha512-k4ERKgw7aKGWJZgTarIcNEmvyTVD9FYh0mTrrBMHZ1b8hUu6iOJ4SzsZlo3UNAvHYa+PnvntIwRPt1/vy4nA9Q==} dependencies: '@formatjs/ecma402-abstract': 2.0.0 tslib: 2.6.3 + dev: false - '@formatjs/intl-localematcher@0.5.4': + /@formatjs/intl-localematcher@0.5.4: + resolution: {integrity: sha512-zTwEpWOzZ2CiKcB93BLngUX59hQkuZjT2+SAQEscSm52peDW/getsawMcWF1rGRpMCX6D7nSJA3CzJ8gn13N/g==} dependencies: tslib: 2.6.3 + dev: false - '@humanwhocodes/config-array@0.11.14': + /@humanwhocodes/config-array@0.11.14: + resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} + engines: {node: '>=10.10.0'} + deprecated: Use @eslint/config-array instead dependencies: '@humanwhocodes/object-schema': 2.0.3 debug: 4.3.5 minimatch: 3.1.2 transitivePeerDependencies: - supports-color + dev: true - '@humanwhocodes/module-importer@1.0.1': {} + /@humanwhocodes/module-importer@1.0.1: + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + dev: true - '@humanwhocodes/object-schema@2.0.3': {} + /@humanwhocodes/object-schema@2.0.3: + resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} + deprecated: Use @eslint/object-schema instead + dev: true - '@internationalized/date@3.5.4': + /@internationalized/date@3.5.4: + resolution: {integrity: sha512-qoVJVro+O0rBaw+8HPjUB1iH8Ihf8oziEnqMnvhJUSuVIrHOuZ6eNLHNvzXJKUvAtaDiqMnRlg8Z2mgh09BlUw==} dependencies: '@swc/helpers': 0.5.11 + dev: false - '@internationalized/message@3.1.4': + /@internationalized/message@3.1.4: + resolution: {integrity: sha512-Dygi9hH1s7V9nha07pggCkvmRfDd3q2lWnMGvrJyrOwYMe1yj4D2T9BoH9I6MGR7xz0biQrtLPsqUkqXzIrBOw==} dependencies: '@swc/helpers': 0.5.11 intl-messageformat: 10.5.14 + dev: false - '@internationalized/number@3.5.3': + /@internationalized/number@3.5.3: + resolution: {integrity: sha512-rd1wA3ebzlp0Mehj5YTuTI50AQEx80gWFyHcQu+u91/5NgdwBecO8BH6ipPfE+lmQ9d63vpB3H9SHoIUiupllw==} dependencies: '@swc/helpers': 0.5.11 + dev: false - '@internationalized/string@3.2.3': + /@internationalized/string@3.2.3: + resolution: {integrity: sha512-9kpfLoA8HegiWTeCbR2livhdVeKobCnVv8tlJ6M2jF+4tcMqDo94ezwlnrUANBWPgd8U7OXIHCk2Ov2qhk4KXw==} dependencies: '@swc/helpers': 0.5.11 + dev: false - '@isaacs/cliui@8.0.2': + /@isaacs/cliui@8.0.2: + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} dependencies: string-width: 5.1.2 - string-width-cjs: string-width@4.2.3 + string-width-cjs: /string-width@4.2.3 strip-ansi: 7.1.0 - strip-ansi-cjs: strip-ansi@6.0.1 + strip-ansi-cjs: /strip-ansi@6.0.1 wrap-ansi: 8.1.0 - wrap-ansi-cjs: wrap-ansi@7.0.0 + wrap-ansi-cjs: /wrap-ansi@7.0.0 - '@jridgewell/gen-mapping@0.3.5': + /@jridgewell/gen-mapping@0.3.5: + resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} + engines: {node: '>=6.0.0'} dependencies: '@jridgewell/set-array': 1.2.1 '@jridgewell/sourcemap-codec': 1.4.15 '@jridgewell/trace-mapping': 0.3.25 - '@jridgewell/resolve-uri@3.1.2': {} + /@jridgewell/resolve-uri@3.1.2: + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} - '@jridgewell/set-array@1.2.1': {} + /@jridgewell/set-array@1.2.1: + resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} + engines: {node: '>=6.0.0'} - '@jridgewell/sourcemap-codec@1.4.15': {} + /@jridgewell/sourcemap-codec@1.4.15: + resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - '@jridgewell/trace-mapping@0.3.25': + /@jridgewell/trace-mapping@0.3.25: + resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} dependencies: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.4.15 - '@nextui-org/accordion@2.0.35(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/accordion@2.0.35(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-42T8DAgpICKORry5h1UCgAQ71QJ3dCzvqrnnJQco3LICeIER2JT/wEdpxHUVT893MkL6z6CFsJmWNfFJPk59kA==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/aria-utils': 2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/divider': 2.0.28(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1) @@ -2977,8 +711,13 @@ snapshots: framer-motion: 11.2.10(react-dom@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/aria-utils@2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/aria-utils@2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-aQXFVm4qNrXrUAHhRtr363BgRDX+zgN3Vm+7bW1qtMbnMGOqTWApCD48FP59bka5JArd3K+85tFEhkdD+UfKbQ==} + peerDependencies: + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-rsc-utils': 2.0.12 '@nextui-org/shared-utils': 2.0.5 @@ -2993,8 +732,16 @@ snapshots: transitivePeerDependencies: - '@nextui-org/theme' - framer-motion + dev: false - '@nextui-org/autocomplete@2.1.2(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/autocomplete@2.1.2(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-3mtYQDBbSRLG8wZ+gDMsOsGH/0m2VG/RcwIiXoteZMyX7yhGl2JPp7ZjX6XWyUpUbq0w2QVprZ6Ld4ck3cuMKg==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/aria-utils': 2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/button': 2.0.34(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) @@ -3024,8 +771,15 @@ snapshots: react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: - '@types/react' + dev: false - '@nextui-org/avatar@2.0.30(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/avatar@2.0.30(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-FIrvdJE+dBkmU3YDR1AXTkcks/WXjbnQsojWBMAq+1oXDCcNiGMUvKBzsW0F5m5HVHhn+Edc+CbTzIZUTm78Bw==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3037,8 +791,15 @@ snapshots: '@react-aria/utils': 3.24.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/badge@2.0.29(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/badge@2.0.29(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-kd6BJ1BWkX6UuHttmySUgQBPOBJCrG1+eKwWDd1HL4YuBLayuYoTZuE5Q01HYTbXjFMqzsFX3A+jcJ3RYc0X7w==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3046,8 +807,15 @@ snapshots: '@nextui-org/theme': 2.2.6(tailwindcss@3.4.4) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/breadcrumbs@2.0.10(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/breadcrumbs@2.0.10(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-TCrOHCH/gNrPwEQyd30mu6Y9x/ojJk3vUWZJSPuVhzG6WdpUFyqen4QCoDTUTvFJBL3TwqNYwOIxooizzFSK7g==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-icons': 2.0.8(react@18.3.1) @@ -3061,8 +829,16 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/button@2.0.34(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/button@2.0.34(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-VeFpOs7trX6u6FqeGr0XCpuNqPhXTLqsmt4iaygvheZCbzrTKvWHd4QMqSh2CPsNH8UFUBSFJjr3oaf3a0SYWQ==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/ripple': 2.0.30(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) @@ -3080,8 +856,15 @@ snapshots: framer-motion: 11.2.10(react-dom@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/calendar@2.0.7(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/calendar@2.0.7(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-6mdgKJSl6tWo68FJQB1txSTRQ6/6+c3hipDYvzqDZRc+NbOJ3VevbFaPj5673JxeI2J5SyHLY2AEVw4q6HfaNw==} + peerDependencies: + '@nextui-org/system': '>=2.1.0' + '@nextui-org/theme': '>=2.2.0' + react: '>=18' + react-dom: '>=18' dependencies: '@internationalized/date': 3.5.4 '@nextui-org/button': 2.0.34(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) @@ -3110,8 +893,16 @@ snapshots: scroll-into-view-if-needed: 3.0.10 transitivePeerDependencies: - framer-motion + dev: false - '@nextui-org/card@2.0.31(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/card@2.0.31(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-KXeI4xu0HVOgC2sNBxv+OGbzYy+kA6HbsDB677j3R+MhyCrqCLsE5ahkn7FRWgIJAzoDkcHSunmc+q9ApoSWig==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/ripple': 2.0.30(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) @@ -3127,8 +918,15 @@ snapshots: framer-motion: 11.2.10(react-dom@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/checkbox@2.1.2(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/checkbox@2.1.2(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-0C5xcYcBMM/iAva3/fFYIvUiy91guV+mehUwRcPIxEFLA9bIOdOdGTkoAXlVcGCLIuYvlPiqSH0gShXvscOlNQ==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3147,8 +945,15 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/chip@2.0.30(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/chip@2.0.30(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-u/PbKFW8pGoPzBh8dDRvhBSdhX30lJbscQJvXzmCKHpSvK8rvBG1kHtOJEJ4fiuXbo/O0CYwZVAi03XloyOCdQ==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-icons': 2.0.8(react@18.3.1) @@ -3161,8 +966,14 @@ snapshots: '@react-types/checkbox': 3.8.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/code@2.0.29(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/code@2.0.29(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-+aevUjVJxSkJ4Un/O3rBdI1NfHikatzDK6iD6nqWDCDR/I+9a5m+s3N8yuNt/Mt8jGKg0KEklPh3deYfCVCXdg==} + peerDependencies: + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3170,8 +981,15 @@ snapshots: '@nextui-org/theme': 2.2.6(tailwindcss@3.4.4) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/date-input@2.1.1(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/date-input@2.1.1(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-fts8R058AVN8dhkBGaJ/7F68ZwM/E3Imu5uhauHoXVoJhaXNft5fA23HJYpNkFrG0k/Tk7vGcGSPistiERQuKg==} + peerDependencies: + '@nextui-org/system': '>=2.1.0' + '@nextui-org/theme': '>=2.2.0' + react: '>=18' + react-dom: '>=18' dependencies: '@internationalized/date': 3.5.4 '@nextui-org/react-utils': 2.0.14(react@18.3.1) @@ -3186,8 +1004,15 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/date-picker@2.1.2(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/date-picker@2.1.2(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-gNqhyA85SDtGNdr2CUBJ5FSy/wCtj2AKJGs2yEvKtA9A66khOH2H0tdfGALOWoAQdxGgOvP7c+9U5Oadogoygg==} + peerDependencies: + '@nextui-org/system': '>=2.1.0' + '@nextui-org/theme': '>=2.2.0' + react: '>=18' + react-dom: '>=18' dependencies: '@internationalized/date': 3.5.4 '@nextui-org/aria-utils': 2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) @@ -3213,8 +1038,14 @@ snapshots: transitivePeerDependencies: - '@types/react' - framer-motion + dev: false - '@nextui-org/divider@2.0.28(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/divider@2.0.28(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-IskKmDOO8qwmTO2WtDmrH8fZvnV2JebP3PFfwqpToAdDRbRUs78pls2e8/T9clbLLtNxjfCFAI/Yi9C+LPPEXw==} + peerDependencies: + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-rsc-utils': 2.0.12 '@nextui-org/shared-utils': 2.0.5 @@ -3223,8 +1054,16 @@ snapshots: '@react-types/shared': 3.22.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/dropdown@2.1.26(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/dropdown@2.1.26(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-rPrn8hN7v2nLm9OJKagvf7AivsCAT0EWUcgWGaf5GVdwGJ65TZpjR18eAOyKBZRe5cdZ+FV6qqnavGVhD3458w==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/aria-utils': 2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/menu': 2.0.25(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) @@ -3243,8 +1082,14 @@ snapshots: react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: - '@types/react' + dev: false - '@nextui-org/framer-utils@2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/framer-utils@2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-kZzkaAHbtuBl85mivZ1WKVCcwdk8Z2NDmJiIpaLy16yliLNV1tnhoDOzRrxhv+6cbkKftx21tRrpImB4AyeqLw==} + peerDependencies: + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/shared-utils': 2.0.5 '@nextui-org/system': 2.2.2(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) @@ -3254,8 +1099,15 @@ snapshots: react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: - '@nextui-org/theme' + dev: false - '@nextui-org/image@2.0.29(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/image@2.0.29(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-w8MneV/JNUTCJUcIZcxtUYw1ZEZqlpezcCgGLr0cH3vp5pa+BZ9SdptwAL2wFoJAG8xk+et9fMXTROvF4h5W1g==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3264,8 +1116,15 @@ snapshots: '@nextui-org/use-image': 2.0.5(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/input@2.2.2(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/input@2.2.2(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-mCcFsObJdlCWMuSutKTRniFIDX5+z4BAAtt/XI1uzOtUO6WXgT97BwVzMihC1l14WQsw9TCwFKAl8JWdolkNCA==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-icons': 2.0.8(react@18.3.1) @@ -3285,8 +1144,14 @@ snapshots: react-textarea-autosize: 8.5.3(@types/react@18.3.3)(react@18.3.1) transitivePeerDependencies: - '@types/react' + dev: false - '@nextui-org/kbd@2.0.30(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/kbd@2.0.30(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-rQw71noVUIRPf8N/Z5hdIGCtjFEVZO9xs2JVkiusKDxbGXFWKxJ3sTFzEY4VyLtORt2mEOQEWh26wbTnNjJzMw==} + peerDependencies: + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3295,8 +1160,15 @@ snapshots: '@react-aria/utils': 3.24.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/link@2.0.32(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/link@2.0.32(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-NIG8Ay/WfFxwMYKB11xg0iVAzJR1jy0QrtKFGaZscyJ522beM+aMBZuourC9u7kwjucTvt5fuGRm86KBVDBXCQ==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-icons': 2.0.8(react@18.3.1) @@ -3310,8 +1182,15 @@ snapshots: '@react-types/link': 3.5.5(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/listbox@2.1.22(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/listbox@2.1.22(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-VFULRE7BBpNnXulhySHlENRiRUP7KdpozJfKM3X2kIwWoFekO8DDUT8RiLj2PyDtGjKam74ghHhMuAFXFhVQ+g==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/aria-utils': 2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/divider': 2.0.28(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1) @@ -3331,8 +1210,15 @@ snapshots: react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: - framer-motion + dev: false - '@nextui-org/menu@2.0.25(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/menu@2.0.25(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-VkCaaq19JKNjIgg4bmGebzHkSV1A3C1CRV5w5qRPg5AI59pdWlbMLpllm5mPqz+U0R0P5saGfCfEfcC0LrCFdQ==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/aria-utils': 2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/divider': 2.0.28(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1) @@ -3354,8 +1240,16 @@ snapshots: react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: - framer-motion + dev: false - '@nextui-org/modal@2.0.36(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/modal@2.0.36(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-ucWBobeoM8BVLpgXrtZ/H5TD9eFS2YF4W7vntWC05Q13A34LSHgBjNHJkfwW/OebGjJoaDoRiIBohWaiyyliTA==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/framer-utils': 2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/react-utils': 2.0.14(react@18.3.1) @@ -3376,8 +1270,16 @@ snapshots: framer-motion: 11.2.10(react-dom@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/navbar@2.0.33(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/navbar@2.0.33(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-WbPLEz6yE1vxKTqZDN85YPCWR/JSvpOO604xBpaaCf+OLfEsb+herz7+GDPnvHKaPDASoxU5WaSQJR9nrJ/YHg==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/framer-utils': 2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/react-utils': 2.0.14(react@18.3.1) @@ -3398,8 +1300,15 @@ snapshots: react-remove-scroll: 2.5.10(@types/react@18.3.3)(react@18.3.1) transitivePeerDependencies: - '@types/react' + dev: false - '@nextui-org/pagination@2.0.33(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/pagination@2.0.33(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-LiDDTSTuC0Q9gSI1gc/b+lmKR8/zFiwSfYjLh7KDND3m+qE44waICWnK1U7P6Y999Nu1LwaGSGtqayd326aPrg==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-icons': 2.0.8(react@18.3.1) @@ -3414,8 +1323,16 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) scroll-into-view-if-needed: 3.0.10 + dev: false - '@nextui-org/popover@2.1.24(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/popover@2.1.24(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-PGbTxdcc06BMxEd/HYsL0sVa0fdGjHPYNSvcSSM0KA6Fh98pznO9DoQHjIEPAul87yEwl7cDDj7mANcdK9BVnA==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/aria-utils': 2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/button': 2.0.34(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) @@ -3440,8 +1357,15 @@ snapshots: react-remove-scroll: 2.5.10(@types/react@18.3.3)(react@18.3.1) transitivePeerDependencies: - '@types/react' + dev: false - '@nextui-org/progress@2.0.31(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/progress@2.0.31(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-ZFjV4068gYPe9S4R1e/8oqwtPFKd9ag8RB0JoToq55AM5aLItOA/Q/uwBnDz7ait3C7viWawcN4leW1C8dSurQ==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3454,8 +1378,15 @@ snapshots: '@react-types/progress': 3.5.4(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/radio@2.1.2(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/radio@2.1.2(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-JcWKRqXXRwQtz5ABzykuu+S4/8cO9GKa21Gget1fdo/iSDcUtGDHIf6wlpvWSNekpvIERZd9UdpwhaXWbD4pOg==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3471,16 +1402,28 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/react-rsc-utils@2.0.12': {} + /@nextui-org/react-rsc-utils@2.0.12: + resolution: {integrity: sha512-s2IG4pM1K+kbm6A2g3UpqrS592AExpGixtZNPJ2lV5+UQi1ld3vb4EiBIOViZMoSCNCoNdaeO5Yqo6cKghwCPA==} + dev: false - '@nextui-org/react-utils@2.0.14(react@18.3.1)': + /@nextui-org/react-utils@2.0.14(react@18.3.1): + resolution: {integrity: sha512-fed97WSaHt8/sC5F4DFTVj25YQsepFGDyudommPGQsTksQ6GQkMITuHckzAyPiTTuWHSW/GZykvVVAlK9hS5Wg==} + peerDependencies: + react: '>=18' dependencies: '@nextui-org/react-rsc-utils': 2.0.12 '@nextui-org/shared-utils': 2.0.5 react: 18.3.1 + dev: false - '@nextui-org/react@2.4.2(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)(tailwindcss@3.4.4)': + /@nextui-org/react@2.4.2(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)(tailwindcss@3.4.4): + resolution: {integrity: sha512-g7CqAX/x0DJsIUmD+Z6I4T1699uVmu5kbuY0n1PdA4IDjFSKzgkMCIogcIKu2iUV+LVlvfF1lDhs300OIpouig==} + peerDependencies: + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/accordion': 2.0.35(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/autocomplete': 2.1.2(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) @@ -3532,8 +1475,16 @@ snapshots: transitivePeerDependencies: - '@types/react' - tailwindcss + dev: false - '@nextui-org/ripple@2.0.30(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/ripple@2.0.30(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-GmHwC+F2JIYQAeFuwtFbdE6av8lzOJVdA5yops9vhhzeBPT33dMjgazCn0HZT5TvP0gX+xxT/74ONE0ik0Kayg==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3542,8 +1493,15 @@ snapshots: framer-motion: 11.2.10(react-dom@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/scroll-shadow@2.1.17(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/scroll-shadow@2.1.17(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-JOJc6nbdFHcMn/zpaf78AAZ8Vwo/iQO6iWJVHlN6ROjSKL7EImP/V78m14Y+kd0hkzU8CcHswdpmCefaioFlRA==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3552,8 +1510,16 @@ snapshots: '@nextui-org/use-data-scroll-overflow': 2.1.4(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/select@2.2.2(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/select@2.2.2(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(@types/react@18.3.3)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-bCk6/LJAhhSM5VXiny7rDTH5f7ri7mGKx4V+K83kY9uW01ioWWYId1EhbP6Crd9PSvmQL42mhId/5dLRxgUimA==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/aria-utils': 2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/listbox': 2.1.22(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) @@ -3579,14 +1545,27 @@ snapshots: react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: - '@types/react' + dev: false - '@nextui-org/shared-icons@2.0.8(react@18.3.1)': + /@nextui-org/shared-icons@2.0.8(react@18.3.1): + resolution: {integrity: sha512-siKuw+CN03cB2N1eUpIleP+lTpjM4gSmcco7RXTpXiwXJXlxjKo4N8gQYS04HCBXm9QMWgyngvUEt2II9NYyrw==} + peerDependencies: + react: '>=18' dependencies: react: 18.3.1 + dev: false - '@nextui-org/shared-utils@2.0.5': {} + /@nextui-org/shared-utils@2.0.5: + resolution: {integrity: sha512-aFc/CUL8RVfBh0IotIpxkpKjyUPc/zJaMJd5pRCQA1kIpKLdSrlh3//MLYMaP/fo/NQtE3DPeXqfKhHRr1fkEw==} + dev: false - '@nextui-org/skeleton@2.0.29(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/skeleton@2.0.29(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-s/oQdUc1Ao7XRmUP82V2/hI3B644ZQzIYuPIgp+A6DyDLfyRUx8PLWN/EhN5Ku2M/s6WYTkwulDrKeo4dlMsrw==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3594,8 +1573,15 @@ snapshots: '@nextui-org/theme': 2.2.6(tailwindcss@3.4.4) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/slider@2.2.12(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/slider@2.2.12(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-5+72YlWxV6bm9hGNpWN5G+6OeqU7S9N2ECwEdO4COQ1hvMiimiJ3lrTUHIS2AvKimEpw+MLkUoKIbqAV23zxuw==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3613,8 +1599,16 @@ snapshots: react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: - framer-motion + dev: false - '@nextui-org/snippet@2.0.38(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/snippet@2.0.38(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-8lMqtB1KQtMkpZFb3x/T42zdZ+QqcGr6d/yVE+zKzyEd+xqzm2g/hDpPqy0Mf5JaC1Z+lXoRzF/6XbD99FCEbw==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/button': 2.0.34(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/react-utils': 2.0.14(react@18.3.1) @@ -3629,8 +1623,14 @@ snapshots: framer-motion: 11.2.10(react-dom@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/spacer@2.0.29(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/spacer@2.0.29(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-lcgzHIvTXXllnM6MMjti0ub8jEx9jmtzdd5+zgFAHLTeDS3pDffNZndmU+RkzpyGSyK20PCrMkV/sB4SCDN1KA==} + peerDependencies: + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3638,8 +1638,14 @@ snapshots: '@nextui-org/theme': 2.2.6(tailwindcss@3.4.4) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/spinner@2.0.30(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/spinner@2.0.30(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-+oygL2dewHZzJiSUEIvzL0tIx+G+98mvO3ToFAMXaH0N3bOQNSiFDPwUHUx6PgAQ9pr9RKtdnb4ywstcG9j+Gg==} + peerDependencies: + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3647,8 +1653,15 @@ snapshots: '@nextui-org/theme': 2.2.6(tailwindcss@3.4.4) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/switch@2.0.31(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/switch@2.0.31(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-WPHqWQfyISA8nmQ8ihaO5rIHm/K9nyfrV0Fxm6EcnFilTMZhh4Kt+p7FfJrZw+MMyzIEGFfMDySk1KVrMubc1g==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/react-utils': 2.0.14(react@18.3.1) '@nextui-org/shared-utils': 2.0.5 @@ -3664,14 +1677,25 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/system-rsc@2.1.2(@nextui-org/theme@2.2.6)(react@18.3.1)': + /@nextui-org/system-rsc@2.1.2(@nextui-org/theme@2.2.6)(react@18.3.1): + resolution: {integrity: sha512-3F7pG68Ikh1JsMtRQqmyXAojAV4lMPCKCy0n8RiIxJkEJg11RGTXhnABHF2jP6uxMH/0q5zVzuFubQJfW++ISQ==} + peerDependencies: + '@nextui-org/theme': '>=2.1.0' + react: '>=18' dependencies: '@nextui-org/theme': 2.2.6(tailwindcss@3.4.4) clsx: 1.2.1 react: 18.3.1 + dev: false - '@nextui-org/system@2.2.2(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/system@2.2.2(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-u30lWSIO4Q7DStiK5tJjDgKBQtmODeQZcC6llz973sJ9QlE4GeC1fgu0+/zXL8AZZ8o/iEXhHWXsZIJ26EquUQ==} + peerDependencies: + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@internationalized/date': 3.5.4 '@nextui-org/react-utils': 2.0.14(react@18.3.1) @@ -3685,8 +1709,15 @@ snapshots: react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: - '@nextui-org/theme' + dev: false - '@nextui-org/table@2.0.36(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/table@2.0.36(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-vpohZo5p3XmT6FLOKKwmm8SdCA/h2QPQz6Y66sAfHuoqAfkmfVfAeyKgYTe20pVJy3Whvyix6IA8e0eWETDTEw==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/checkbox': 2.1.2(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/react-utils': 2.0.14(react@18.3.1) @@ -3706,8 +1737,16 @@ snapshots: '@react-types/table': 3.9.5(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/tabs@2.0.32(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/tabs@2.0.32(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-TVCwm1GI7rkf/o7+eWpklRQBTg2Y/m3eNBLU1jA+Ppqs+Mr31y7BHoNLqTZ6jpj59DA1OcpwbJH5xhGk0pOvwA==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/aria-utils': 2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/framer-utils': 2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) @@ -3728,8 +1767,12 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) scroll-into-view-if-needed: 3.0.10 + dev: false - '@nextui-org/theme@2.2.6(tailwindcss@3.4.4)': + /@nextui-org/theme@2.2.6(tailwindcss@3.4.4): + resolution: {integrity: sha512-FyDp5edpmjbvPzRx+D2+Km1oZ73wQOzKMSBPomOgP0h9OFnnTHqKlmtbGhWSk2cEyYN9VsaGvqJTw8X35/aChQ==} + peerDependencies: + tailwindcss: '>=3.4.0' dependencies: clsx: 1.2.1 color: 4.2.3 @@ -3744,8 +1787,16 @@ snapshots: tailwind-merge: 1.14.0 tailwind-variants: 0.1.20(tailwindcss@3.4.4) tailwindcss: 3.4.4 + dev: false - '@nextui-org/tooltip@2.0.36(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/tooltip@2.0.36(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-tV3BefTvmYzSC4TX+UPV7p3F5fs52sFzQ1/Try/Bkz5B1F9yXviO9dV2/pqXSfOJVvLVJS2RMi5wZkaYh1xtNw==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + framer-motion: '>=10.17.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/aria-utils': 2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/framer-utils': 2.0.21(@nextui-org/theme@2.2.6)(framer-motion@11.2.10)(react-dom@18.3.1)(react@18.3.1) @@ -3764,8 +1815,12 @@ snapshots: framer-motion: 11.2.10(react-dom@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/use-aria-accordion@2.0.6(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/use-aria-accordion@2.0.6(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-47+/gO67YufQUtL0f2TIdaa8++5EBtIK7Ltq1GpUat2qjbMFvIb6Ao/Jf3KHU5NicLLRnWPSK1vNaupkYwN/ew==} + peerDependencies: + react: '>=18' dependencies: '@react-aria/button': 3.9.5(react@18.3.1) '@react-aria/focus': 3.17.1(react@18.3.1) @@ -3777,8 +1832,12 @@ snapshots: react: 18.3.1 transitivePeerDependencies: - react-dom + dev: false - '@nextui-org/use-aria-button@2.0.9(react@18.3.1)': + /@nextui-org/use-aria-button@2.0.9(react@18.3.1): + resolution: {integrity: sha512-5FjDl57/1Ey3MgJn+yB0/CPABsSVgXiE+jT7ZLnSqH9kmdXV/eMiuplF7fOOvaSMCA1cE3KCetaPVDIZoJI1/w==} + peerDependencies: + react: '>=18' dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/interactions': 3.21.3(react@18.3.1) @@ -3786,8 +1845,12 @@ snapshots: '@react-types/button': 3.9.4(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@nextui-org/use-aria-link@2.0.18(react@18.3.1)': + /@nextui-org/use-aria-link@2.0.18(react@18.3.1): + resolution: {integrity: sha512-6ZIIOfMMGbSOF9FcJTPrsVOm2LP7OV+QwF0vYelZeEK5zFXb5f8e2J/fEbCVWKLPFDB2VyoBUDWMzRfrizixzg==} + peerDependencies: + react: '>=18' dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/interactions': 3.21.3(react@18.3.1) @@ -3795,8 +1858,13 @@ snapshots: '@react-types/link': 3.5.5(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@nextui-org/use-aria-menu@2.0.5(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/use-aria-menu@2.0.5(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-7bAwISb4vIGhAuvZEHpb/28u0k2/HxNhMJUcz/UxVJTMqSkbSJR2RKdm64WfhEq2A8ZtvED0BAJbDuPf4Q4avg==} + peerDependencies: + react: '>=18' + react-dom: '>=18' dependencies: '@react-aria/i18n': 3.11.1(react@18.3.1) '@react-aria/interactions': 3.21.3(react@18.3.1) @@ -3809,8 +1877,13 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/use-aria-modal-overlay@2.0.10(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/use-aria-modal-overlay@2.0.10(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-/VONX/beH4vu7SQjAtxcQoRhdAOro+QeBk9XOW+qcNvxZG4Em1vf1KFmpHRC40DtsrUk3I0cxaZezeIgfOZ41Q==} + peerDependencies: + react: '>=18' + react-dom: '>=18' dependencies: '@react-aria/overlays': 3.22.1(react-dom@18.3.1)(react@18.3.1) '@react-aria/utils': 3.24.1(react@18.3.1) @@ -3818,8 +1891,13 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/use-aria-multiselect@2.2.2(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/use-aria-multiselect@2.2.2(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-iFw9CVRWTKBl+c1FbbHxp4K0B6aQTXSzXiIP09TJ1NQ10fk1GQXBIhFUIyvIwRJRGvYAL+vwkgj39Ac1p1esJQ==} + peerDependencies: + react: '>=18' + react-dom: '>=18' dependencies: '@react-aria/i18n': 3.11.1(react@18.3.1) '@react-aria/interactions': 3.21.3(react@18.3.1) @@ -3837,8 +1915,12 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nextui-org/use-aria-toggle-button@2.0.9(react@18.3.1)': + /@nextui-org/use-aria-toggle-button@2.0.9(react@18.3.1): + resolution: {integrity: sha512-JpPD97tYpPwyhgXgJbWYgMDp5ZysM1LyvvmyHmq6BtvSpyYqQKU7V3LDXuirBEN6NwHHZRfXy4/mUid/L6W0wA==} + peerDependencies: + react: '>=18' dependencies: '@nextui-org/use-aria-button': 2.0.9(react@18.3.1) '@react-aria/utils': 3.24.1(react@18.3.1) @@ -3846,65 +1928,120 @@ snapshots: '@react-types/button': 3.9.4(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@nextui-org/use-callback-ref@2.0.5(react@18.3.1)': + /@nextui-org/use-callback-ref@2.0.5(react@18.3.1): + resolution: {integrity: sha512-lcjlV5yaDTiFSv06E5RtQNqy+O6XqH/Q/yz+ka1ZBlZF/FdzEPNRfJ0shN2D7Sh3DdbvV2lySbA2g/0d94geaw==} + peerDependencies: + react: '>=18' dependencies: '@nextui-org/use-safe-layout-effect': 2.0.5(react@18.3.1) react: 18.3.1 + dev: false - '@nextui-org/use-clipboard@2.0.5(react@18.3.1)': + /@nextui-org/use-clipboard@2.0.5(react@18.3.1): + resolution: {integrity: sha512-1ExwXM8ENmc/kVDqKoiPGrBP/0B7rZ43iSv2MoWD1Qpc8GHg71Rv7NTIlBDoD/pfUfqkab6x66iKC7AVR8rifA==} + peerDependencies: + react: '>=18' dependencies: react: 18.3.1 + dev: false - '@nextui-org/use-data-scroll-overflow@2.1.4(react@18.3.1)': + /@nextui-org/use-data-scroll-overflow@2.1.4(react@18.3.1): + resolution: {integrity: sha512-0YqUAe/b9aZftUQOH7sWqBMJHGLyC2Q/ixFyjq8Q1TijrqEyGESGQ2tm0+FHytI04drV+mnsbf6+q2QIKyqGSg==} + peerDependencies: + react: '>=18' dependencies: '@nextui-org/shared-utils': 2.0.5 react: 18.3.1 + dev: false - '@nextui-org/use-disclosure@2.0.9(react@18.3.1)': + /@nextui-org/use-disclosure@2.0.9(react@18.3.1): + resolution: {integrity: sha512-d1Pksmm6zleZAdNraD0s97E+sXHrzI0vZ8tLNzE9yGNOf/VRMBvjpfa9S4Zl7oR+StNbST3JofCqmSHtRNe7hg==} + peerDependencies: + react: '>=18' dependencies: '@nextui-org/use-callback-ref': 2.0.5(react@18.3.1) '@react-aria/utils': 3.24.1(react@18.3.1) '@react-stately/utils': 3.10.1(react@18.3.1) react: 18.3.1 + dev: false - '@nextui-org/use-image@2.0.5(react@18.3.1)': + /@nextui-org/use-image@2.0.5(react@18.3.1): + resolution: {integrity: sha512-FAMyvZS9XSNLqHEmU6xykMgwIFJj/V9/JpTiZAQziz2wqMiUONIBpYpGOlI+pPBNlhCkw62KHm/19vHW49FWhA==} + peerDependencies: + react: '>=18' dependencies: '@nextui-org/use-safe-layout-effect': 2.0.5(react@18.3.1) react: 18.3.1 + dev: false - '@nextui-org/use-is-mobile@2.0.8(react@18.3.1)': + /@nextui-org/use-is-mobile@2.0.8(react@18.3.1): + resolution: {integrity: sha512-fp6UgfmYTkdri3fKeFUapr0TuJGRTskrTZixh+r1aqTcEWtaeef+Nli5VKRTJb9nqYKkgJDRhC39Z5s/rgq0mA==} + peerDependencies: + react: '>=18' dependencies: '@react-aria/ssr': 3.9.4(react@18.3.1) react: 18.3.1 + dev: false - '@nextui-org/use-is-mounted@2.0.5(react@18.3.1)': + /@nextui-org/use-is-mounted@2.0.5(react@18.3.1): + resolution: {integrity: sha512-gk698Uwmj/XhchBsnI5Ups5uzEXuZvsPK45K6goi2/ADKXSYxHOcSgwoexytqJBb/7tpi+emi2CRTAjAFZDQqA==} + peerDependencies: + react: '>=18' dependencies: react: 18.3.1 + dev: false - '@nextui-org/use-measure@2.0.1(react@18.3.1)': + /@nextui-org/use-measure@2.0.1(react@18.3.1): + resolution: {integrity: sha512-uEtdrdBdFz4Fgbfk2vmQ+rEb+eFa5o4yI90udasvfpaIrMBfrFOlRW5+yn3uXKB8JThET4Gf2on/wlJpo567Dg==} + peerDependencies: + react: '>=18' dependencies: react: 18.3.1 + dev: false - '@nextui-org/use-pagination@2.0.7(react@18.3.1)': + /@nextui-org/use-pagination@2.0.7(react@18.3.1): + resolution: {integrity: sha512-a05vLp8YSk4nI+LmDUdjjKj2U1/d3Z1ZALUUrjWJVnTUckaiglHGeoYEh8nqcjDXj4sPC4OcK3ZnW+AGUXDGwA==} + peerDependencies: + react: '>=18' dependencies: '@nextui-org/shared-utils': 2.0.5 '@react-aria/i18n': 3.11.1(react@18.3.1) react: 18.3.1 + dev: false - '@nextui-org/use-safe-layout-effect@2.0.5(react@18.3.1)': + /@nextui-org/use-safe-layout-effect@2.0.5(react@18.3.1): + resolution: {integrity: sha512-YQQlqz82aYxMoEq23jQNG/JBPHF1x3opzyXRHAVxgBEFo9OJqBMZTm23ukpTXm2Ev98T6mpWiTHdfyHJ7IoRog==} + peerDependencies: + react: '>=18' dependencies: react: 18.3.1 + dev: false - '@nextui-org/use-scroll-position@2.0.6(react@18.3.1)': + /@nextui-org/use-scroll-position@2.0.6(react@18.3.1): + resolution: {integrity: sha512-dRwew37XnJOh8d35BuyqzRfnrmKsOUHqi0Owhk0tIGyqifQ/jw65udWpBfa6rwXcd4cKOOqXXHuNGsYTclzc6w==} + peerDependencies: + react: '>=18' dependencies: react: 18.3.1 + dev: false - '@nextui-org/use-update-effect@2.0.5(react@18.3.1)': + /@nextui-org/use-update-effect@2.0.5(react@18.3.1): + resolution: {integrity: sha512-4r2CXAD598xc2ifMu97kf8V/lj+NDct2oITbxgXeV4ezWaXHy5/26r1iyVnBzRN/VBz3fwHx3hHdftzcYSZxdA==} + peerDependencies: + react: '>=18' dependencies: react: 18.3.1 + dev: false - '@nextui-org/user@2.0.31(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1)': + /@nextui-org/user@2.0.31(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-PXWVLB2igKi3MwjVeI5auoK6fhBgT3nizPzabBa95m0/3dg8aex/4oexCRpjef+V5cRD/2z37VHqfelQWqOHjQ==} + peerDependencies: + '@nextui-org/system': '>=2.0.0' + '@nextui-org/theme': '>=2.1.0' + react: '>=18' + react-dom: '>=18' dependencies: '@nextui-org/avatar': 2.0.30(@nextui-org/system@2.2.2)(@nextui-org/theme@2.2.6)(react-dom@18.3.1)(react@18.3.1) '@nextui-org/react-utils': 2.0.14(react@18.3.1) @@ -3915,23 +2052,36 @@ snapshots: '@react-aria/utils': 3.24.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@nodelib/fs.scandir@2.1.5': + /@nodelib/fs.scandir@2.1.5: + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} dependencies: '@nodelib/fs.stat': 2.0.5 run-parallel: 1.2.0 - '@nodelib/fs.stat@2.0.5': {} + /@nodelib/fs.stat@2.0.5: + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} - '@nodelib/fs.walk@1.2.8': + /@nodelib/fs.walk@1.2.8: + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} dependencies: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 - '@pkgjs/parseargs@0.11.0': + /@pkgjs/parseargs@0.11.0: + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} + requiresBuild: true optional: true - '@react-aria/breadcrumbs@3.5.13(react@18.3.1)': + /@react-aria/breadcrumbs@3.5.13(react@18.3.1): + resolution: {integrity: sha512-G1Gqf/P6kVdfs94ovwP18fTWuIxadIQgHsXS08JEVcFVYMjb9YjqnEBaohUxD1tq2WldMbYw53ahQblT4NTG+g==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/i18n': 3.11.1(react@18.3.1) '@react-aria/link': 3.7.1(react@18.3.1) @@ -3940,8 +2090,12 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/button@3.9.5(react@18.3.1)': + /@react-aria/button@3.9.5(react@18.3.1): + resolution: {integrity: sha512-dgcYR6j8WDOMLKuVrtxzx4jIC05cVKDzc+HnPO8lNkBAOfjcuN5tkGRtIjLtqjMvpZHhQT5aDbgFpIaZzxgFIg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/interactions': 3.21.3(react@18.3.1) @@ -3951,8 +2105,13 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/calendar@3.5.8(react-dom@18.3.1)(react@18.3.1)': + /@react-aria/calendar@3.5.8(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-Whlp4CeAA5/ZkzrAHUv73kgIRYjw088eYGSc+cvSOCxfrc/2XkBm9rNrnSBv0DvhJ8AG0Fjz3vYakTmF3BgZBw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@internationalized/date': 3.5.4 '@react-aria/i18n': 3.11.1(react@18.3.1) @@ -3966,8 +2125,12 @@ snapshots: '@swc/helpers': 0.5.11 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@react-aria/checkbox@3.14.3(react@18.3.1)': + /@react-aria/checkbox@3.14.3(react@18.3.1): + resolution: {integrity: sha512-EtBJL6iu0gvrw3A4R7UeVLR6diaVk/mh4kFBc7c8hQjpEJweRr4hmJT3hrNg3MBcTWLxFiMEXPGgWEwXDBygtA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/form': 3.0.5(react@18.3.1) '@react-aria/interactions': 3.21.3(react@18.3.1) @@ -3981,8 +2144,13 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/combobox@3.9.1(react-dom@18.3.1)(react@18.3.1)': + /@react-aria/combobox@3.9.1(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-SpK92dCmT8qn8aEcUAihRQrBb5LZUhwIbDExFII8PvUvEFy/PoQHXIo3j1V29WkutDBDpMvBv/6XRCHGXPqrhQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/i18n': 3.11.1(react@18.3.1) '@react-aria/listbox': 3.12.1(react-dom@18.3.1)(react@18.3.1) @@ -4001,8 +2169,13 @@ snapshots: '@swc/helpers': 0.5.11 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@react-aria/datepicker@3.10.1(react-dom@18.3.1)(react@18.3.1)': + /@react-aria/datepicker@3.10.1(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-4HZL593nrNMa1GjBmWEN/OTvNS6d3/16G1YJWlqiUlv11ADulSbqBIjMmkgwrJVFcjrgqtXFy+yyrTA/oq94Zw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@internationalized/date': 3.5.4 '@internationalized/number': 3.5.3 @@ -4024,8 +2197,13 @@ snapshots: '@swc/helpers': 0.5.11 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@react-aria/dialog@3.5.14(react-dom@18.3.1)(react@18.3.1)': + /@react-aria/dialog@3.5.14(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-oqDCjQ8hxe3GStf48XWBf2CliEnxlR9GgSYPHJPUc69WBj68D9rVcCW3kogJnLAnwIyf3FnzbX4wSjvUa88sAQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/overlays': 3.22.1(react-dom@18.3.1)(react@18.3.1) @@ -4035,8 +2213,12 @@ snapshots: '@swc/helpers': 0.5.11 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@react-aria/focus@3.17.1(react@18.3.1)': + /@react-aria/focus@3.17.1(react@18.3.1): + resolution: {integrity: sha512-FLTySoSNqX++u0nWZJPPN5etXY0WBxaIe/YuL/GTEeuqUIuC/2bJSaw5hlsM6T2yjy6Y/VAxBcKSdAFUlU6njQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/interactions': 3.21.3(react@18.3.1) '@react-aria/utils': 3.24.1(react@18.3.1) @@ -4044,8 +2226,12 @@ snapshots: '@swc/helpers': 0.5.11 clsx: 2.1.1 react: 18.3.1 + dev: false - '@react-aria/form@3.0.5(react@18.3.1)': + /@react-aria/form@3.0.5(react@18.3.1): + resolution: {integrity: sha512-n290jRwrrRXO3fS82MyWR+OKN7yznVesy5Q10IclSTVYHHI3VI53xtAPr/WzNjJR1um8aLhOcDNFKwnNIUUCsQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/interactions': 3.21.3(react@18.3.1) '@react-aria/utils': 3.24.1(react@18.3.1) @@ -4053,8 +2239,13 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/grid@3.9.1(react-dom@18.3.1)(react@18.3.1)': + /@react-aria/grid@3.9.1(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-fGEZqAEaS8mqzV/II3N4ndoNWegIcbh+L3PmKbXdpKKUP8VgMs/WY5rYl5WAF0f5RoFwXqx3ibDLeR9tKj/bOg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/i18n': 3.11.1(react@18.3.1) @@ -4072,8 +2263,12 @@ snapshots: '@swc/helpers': 0.5.11 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@react-aria/i18n@3.11.1(react@18.3.1)': + /@react-aria/i18n@3.11.1(react@18.3.1): + resolution: {integrity: sha512-vuiBHw1kZruNMYeKkTGGnmPyMnM5T+gT8bz97H1FqIq1hQ6OPzmtBZ6W6l6OIMjeHI5oJo4utTwfZl495GALFQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@internationalized/date': 3.5.4 '@internationalized/message': 3.1.4 @@ -4084,23 +2279,35 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/interactions@3.21.3(react@18.3.1)': + /@react-aria/interactions@3.21.3(react@18.3.1): + resolution: {integrity: sha512-BWIuf4qCs5FreDJ9AguawLVS0lV9UU+sK4CCnbCNNmYqOWY+1+gRXCsnOM32K+oMESBxilAjdHW5n1hsMqYMpA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/ssr': 3.9.4(react@18.3.1) '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/label@3.7.8(react@18.3.1)': + /@react-aria/label@3.7.8(react@18.3.1): + resolution: {integrity: sha512-MzgTm5+suPA3KX7Ug6ZBK2NX9cin/RFLsv1BdafJ6CZpmUSpWnGE/yQfYUB7csN7j31OsZrD3/P56eShYWAQfg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/link@3.7.1(react@18.3.1)': + /@react-aria/link@3.7.1(react@18.3.1): + resolution: {integrity: sha512-a4IaV50P3fXc7DQvEIPYkJJv26JknFbRzFT5MJOMgtzuhyJoQdILEUK6XHYjcSSNCA7uLgzpojArVk5Hz3lCpw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/interactions': 3.21.3(react@18.3.1) @@ -4109,8 +2316,13 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/listbox@3.12.1(react-dom@18.3.1)(react@18.3.1)': + /@react-aria/listbox@3.12.1(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-7JiUp0NGykbv/HgSpmTY1wqhuf/RmjFxs1HZcNaTv8A+DlzgJYc7yQqFjP3ZA/z5RvJFuuIxggIYmgIFjaRYdA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/interactions': 3.21.3(react@18.3.1) '@react-aria/label': 3.7.8(react@18.3.1) @@ -4123,12 +2335,19 @@ snapshots: '@swc/helpers': 0.5.11 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@react-aria/live-announcer@3.3.4': + /@react-aria/live-announcer@3.3.4: + resolution: {integrity: sha512-w8lxs35QrRrn6pBNzVfyGOeqWdxeVKf9U6bXIVwhq7rrTqRULL8jqy8RJIMfIs1s8G5FpwWYjyBOjl2g5Cu1iA==} dependencies: '@swc/helpers': 0.5.11 + dev: false - '@react-aria/menu@3.14.1(react-dom@18.3.1)(react@18.3.1)': + /@react-aria/menu@3.14.1(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-BYliRb38uAzq05UOFcD5XkjA5foQoXRbcH3ZufBsc4kvh79BcP1PMW6KsXKGJ7dC/PJWUwCui6QL1kUg8PqMHA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/i18n': 3.11.1(react@18.3.1) @@ -4145,8 +2364,13 @@ snapshots: '@swc/helpers': 0.5.11 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@react-aria/overlays@3.22.1(react-dom@18.3.1)(react@18.3.1)': + /@react-aria/overlays@3.22.1(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-GHiFMWO4EQ6+j6b5QCnNoOYiyx1Gk8ZiwLzzglCI4q1NY5AG2EAmfU4Z1+Gtrf2S5Y0zHbumC7rs9GnPoGLUYg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/i18n': 3.11.1(react@18.3.1) @@ -4161,8 +2385,12 @@ snapshots: '@swc/helpers': 0.5.11 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@react-aria/progress@3.4.13(react@18.3.1)': + /@react-aria/progress@3.4.13(react@18.3.1): + resolution: {integrity: sha512-YBV9bOO5JzKvG8QCI0IAA00o6FczMgIDiK8Q9p5gKorFMatFUdRayxlbIPoYHMi+PguLil0jHgC7eOyaUcrZ0g==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/i18n': 3.11.1(react@18.3.1) '@react-aria/label': 3.7.8(react@18.3.1) @@ -4171,8 +2399,12 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/radio@3.10.4(react@18.3.1)': + /@react-aria/radio@3.10.4(react@18.3.1): + resolution: {integrity: sha512-3fmoMcQtCpgjTwJReFjnvIE/C7zOZeCeWUn4JKDqz9s1ILYsC3Rk5zZ4q66tFn6v+IQnecrKT52wH6+hlVLwTA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/form': 3.0.5(react@18.3.1) @@ -4185,8 +2417,13 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/selection@3.18.1(react-dom@18.3.1)(react@18.3.1)': + /@react-aria/selection@3.18.1(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-GSqN2jX6lh7v+ldqhVjAXDcrWS3N4IsKXxO6L6Ygsye86Q9q9Mq9twWDWWu5IjHD6LoVZLUBCMO+ENGbOkyqeQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/i18n': 3.11.1(react@18.3.1) @@ -4197,8 +2434,12 @@ snapshots: '@swc/helpers': 0.5.11 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@react-aria/slider@3.7.8(react@18.3.1)': + /@react-aria/slider@3.7.8(react@18.3.1): + resolution: {integrity: sha512-MYvPcM0K8jxEJJicUK2+WxUkBIM/mquBxOTOSSIL3CszA80nXIGVnLlCUnQV3LOUzpWtabbWaZokSPtGgOgQOw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/i18n': 3.11.1(react@18.3.1) @@ -4210,8 +2451,13 @@ snapshots: '@react-types/slider': 3.7.3(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/spinbutton@3.6.5(react-dom@18.3.1)(react@18.3.1)': + /@react-aria/spinbutton@3.6.5(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-0aACBarF/Xr/7ixzjVBTQ0NBwwwsoGkf5v6AVFVMTC0uYMXHTALvRs+ULHjHMa5e/cX/aPlEvaVT7jfSs+Xy9Q==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/i18n': 3.11.1(react@18.3.1) '@react-aria/live-announcer': 3.3.4 @@ -4221,21 +2467,35 @@ snapshots: '@swc/helpers': 0.5.11 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@react-aria/ssr@3.9.4(react@18.3.1)': + /@react-aria/ssr@3.9.4(react@18.3.1): + resolution: {integrity: sha512-4jmAigVq409qcJvQyuorsmBR4+9r3+JEC60wC+Y0MZV0HCtTmm8D9guYXlJMdx0SSkgj0hHAyFm/HvPNFofCoQ==} + engines: {node: '>= 12'} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/switch@3.6.4(react@18.3.1)': + /@react-aria/switch@3.6.4(react@18.3.1): + resolution: {integrity: sha512-2nVqz4ZuJyof47IpGSt3oZRmp+EdS8wzeDYgf42WHQXrx4uEOk1mdLJ20+NnsYhj/2NHZsvXVrjBeKMjlMs+0w==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/toggle': 3.10.4(react@18.3.1) '@react-stately/toggle': 3.7.4(react@18.3.1) '@react-types/switch': 3.5.3(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/table@3.14.1(react-dom@18.3.1)(react@18.3.1)': + /@react-aria/table@3.14.1(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-WaPgQe4zQF5OaluO5rm+Y2nEoFR63vsLd4BT4yjK1uaFhKhDY2Zk+1SCVQvBLLKS4WK9dhP05nrNzT0vp/ZPOw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/grid': 3.9.1(react-dom@18.3.1)(react@18.3.1) @@ -4255,8 +2515,13 @@ snapshots: '@swc/helpers': 0.5.11 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@react-aria/tabs@3.9.1(react-dom@18.3.1)(react@18.3.1)': + /@react-aria/tabs@3.9.1(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-S5v/0sRcOaSXaJYZuuy1ZVzYc7JD4sDyseG1133GjyuNjJOFHgoWMb+b4uxNIJbZxnLgynn/ZDBZSO+qU+fIxw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/i18n': 3.11.1(react@18.3.1) @@ -4268,8 +2533,12 @@ snapshots: '@swc/helpers': 0.5.11 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: false - '@react-aria/textfield@3.14.5(react@18.3.1)': + /@react-aria/textfield@3.14.5(react@18.3.1): + resolution: {integrity: sha512-hj7H+66BjB1iTKKaFXwSZBZg88YT+wZboEXZ0DNdQB2ytzoz/g045wBItUuNi4ZjXI3P+0AOZznVMYadWBAmiA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/form': 3.0.5(react@18.3.1) @@ -4281,8 +2550,12 @@ snapshots: '@react-types/textfield': 3.9.3(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/toggle@3.10.4(react@18.3.1)': + /@react-aria/toggle@3.10.4(react@18.3.1): + resolution: {integrity: sha512-bRk+CdB8QzrSyGNjENXiTWxfzYKRw753iwQXsEAU7agPCUdB8cZJyrhbaUoD0rwczzTp2zDbZ9rRbUPdsBE2YQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/interactions': 3.21.3(react@18.3.1) @@ -4291,8 +2564,12 @@ snapshots: '@react-types/checkbox': 3.8.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/tooltip@3.7.4(react@18.3.1)': + /@react-aria/tooltip@3.7.4(react@18.3.1): + resolution: {integrity: sha512-+XRx4HlLYqWY3fB8Z60bQi/rbWDIGlFUtXYbtoa1J+EyRWfhpvsYImP8qeeNO/vgjUtDy1j9oKa8p6App9mBMQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/focus': 3.17.1(react@18.3.1) '@react-aria/interactions': 3.21.3(react@18.3.1) @@ -4302,8 +2579,12 @@ snapshots: '@react-types/tooltip': 3.4.9(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-aria/utils@3.24.1(react@18.3.1)': + /@react-aria/utils@3.24.1(react@18.3.1): + resolution: {integrity: sha512-O3s9qhPMd6n42x9sKeJ3lhu5V1Tlnzhu6Yk8QOvDuXf7UGuUjXf9mzfHJt1dYzID4l9Fwm8toczBzPM9t0jc8Q==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/ssr': 3.9.4(react@18.3.1) '@react-stately/utils': 3.10.1(react@18.3.1) @@ -4311,16 +2592,24 @@ snapshots: '@swc/helpers': 0.5.11 clsx: 2.1.1 react: 18.3.1 + dev: false - '@react-aria/visually-hidden@3.8.12(react@18.3.1)': + /@react-aria/visually-hidden@3.8.12(react@18.3.1): + resolution: {integrity: sha512-Bawm+2Cmw3Xrlr7ARzl2RLtKh0lNUdJ0eNqzWcyx4c0VHUAWtThmH5l+HRqFUGzzutFZVo89SAy40BAbd0gjVw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/interactions': 3.21.3(react@18.3.1) '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/calendar@3.5.1(react@18.3.1)': + /@react-stately/calendar@3.5.1(react@18.3.1): + resolution: {integrity: sha512-7l7QhqGUJ5AzWHfvZzbTe3J4t72Ht5BmhW4hlVI7flQXtfrmYkVtl3ZdytEZkkHmWGYZRW9b4IQTQGZxhtlElA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@internationalized/date': 3.5.4 '@react-stately/utils': 3.10.1(react@18.3.1) @@ -4328,8 +2617,12 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/checkbox@3.6.5(react@18.3.1)': + /@react-stately/checkbox@3.6.5(react@18.3.1): + resolution: {integrity: sha512-IXV3f9k+LtmfQLE+DKIN41Q5QB/YBLDCB1YVx5PEdRp52S9+EACD5683rjVm8NVRDwjMi2SP6RnFRk7fVb5Azg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/form': 3.0.3(react@18.3.1) '@react-stately/utils': 3.10.1(react@18.3.1) @@ -4337,14 +2630,22 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/collections@3.10.7(react@18.3.1)': + /@react-stately/collections@3.10.7(react@18.3.1): + resolution: {integrity: sha512-KRo5O2MWVL8n3aiqb+XR3vP6akmHLhLWYZEmPKjIv0ghQaEebBTrN3wiEjtd6dzllv0QqcWvDLM1LntNfJ2TsA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/combobox@3.8.4(react@18.3.1)': + /@react-stately/combobox@3.8.4(react@18.3.1): + resolution: {integrity: sha512-iLVGvKRRz0TeJXZhZyK783hveHpYA6xovOSdzSD+WGYpiPXo1QrcrNoH3AE0Z2sHtorU+8nc0j58vh5PB+m2AA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/collections': 3.10.7(react@18.3.1) '@react-stately/form': 3.0.3(react@18.3.1) @@ -4356,8 +2657,12 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/datepicker@3.9.4(react@18.3.1)': + /@react-stately/datepicker@3.9.4(react@18.3.1): + resolution: {integrity: sha512-yBdX01jn6gq4NIVvHIqdjBUPo+WN8Bujc4OnPw+ZnfA4jI0eIgq04pfZ84cp1LVXW0IB0VaCu1AlQ/kvtZjfGA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@internationalized/date': 3.5.4 '@internationalized/string': 3.2.3 @@ -4368,18 +2673,28 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/flags@3.0.3': + /@react-stately/flags@3.0.3: + resolution: {integrity: sha512-/ha7XFA0RZTQsbzSPwu3KkbNMgbvuM0GuMTYLTBWpgBrovBNTM+QqI/PfZTdHg8PwCYF4H5Y8gjdSpdulCvJFw==} dependencies: '@swc/helpers': 0.5.11 + dev: false - '@react-stately/form@3.0.3(react@18.3.1)': + /@react-stately/form@3.0.3(react@18.3.1): + resolution: {integrity: sha512-92YYBvlHEWUGUpXgIaQ48J50jU9XrxfjYIN8BTvvhBHdD63oWgm8DzQnyT/NIAMzdLnhkg7vP+fjG8LjHeyIAg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/grid@3.8.7(react@18.3.1)': + /@react-stately/grid@3.8.7(react@18.3.1): + resolution: {integrity: sha512-he3TXCLAhF5C5z1/G4ySzcwyt7PEiWcVIupxebJQqRyFrNWemSuv+7tolnStmG8maMVIyV3P/3j4eRBbdSlOIg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/collections': 3.10.7(react@18.3.1) '@react-stately/selection': 3.15.1(react@18.3.1) @@ -4387,8 +2702,12 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/list@3.10.5(react@18.3.1)': + /@react-stately/list@3.10.5(react@18.3.1): + resolution: {integrity: sha512-fV9plO+6QDHiewsYIhboxcDhF17GO95xepC5ki0bKXo44gr14g/LSo/BMmsaMnV+1BuGdBunB05bO4QOIaigXA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/collections': 3.10.7(react@18.3.1) '@react-stately/selection': 3.15.1(react@18.3.1) @@ -4396,23 +2715,35 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/menu@3.7.1(react@18.3.1)': + /@react-stately/menu@3.7.1(react@18.3.1): + resolution: {integrity: sha512-mX1w9HHzt+xal1WIT2xGrTQsoLvDwuB2R1Er1MBABs//MsJzccycatcgV/J/28m6tO5M9iuFQQvLV+i1dCtodg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/overlays': 3.6.7(react@18.3.1) '@react-types/menu': 3.9.9(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/overlays@3.6.7(react@18.3.1)': + /@react-stately/overlays@3.6.7(react@18.3.1): + resolution: {integrity: sha512-6zp8v/iNUm6YQap0loaFx6PlvN8C0DgWHNlrlzMtMmNuvjhjR0wYXVaTfNoUZBWj25tlDM81ukXOjpRXg9rLrw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/overlays': 3.8.7(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/radio@3.10.4(react@18.3.1)': + /@react-stately/radio@3.10.4(react@18.3.1): + resolution: {integrity: sha512-kCIc7tAl4L7Hu4Wt9l2jaa+MzYmAJm0qmC8G8yPMbExpWbLRu6J8Un80GZu+JxvzgDlqDyrVvyv9zFifwH/NkQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/form': 3.0.3(react@18.3.1) '@react-stately/utils': 3.10.1(react@18.3.1) @@ -4420,8 +2751,12 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/select@3.6.4(react@18.3.1)': + /@react-stately/select@3.6.4(react@18.3.1): + resolution: {integrity: sha512-whZgF1N53D0/dS8tOFdrswB0alsk5Q5620HC3z+5f2Hpi8gwgAZ8TYa+2IcmMYRiT+bxVuvEc/NirU9yPmqGbA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/form': 3.0.3(react@18.3.1) '@react-stately/list': 3.10.5(react@18.3.1) @@ -4430,24 +2765,36 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/selection@3.15.1(react@18.3.1)': + /@react-stately/selection@3.15.1(react@18.3.1): + resolution: {integrity: sha512-6TQnN9L0UY9w19B7xzb1P6mbUVBtW840Cw1SjgNXCB3NPaCf59SwqClYzoj8O2ZFzMe8F/nUJtfU1NS65/OLlw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/collections': 3.10.7(react@18.3.1) '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/slider@3.5.4(react@18.3.1)': + /@react-stately/slider@3.5.4(react@18.3.1): + resolution: {integrity: sha512-Jsf7K17dr93lkNKL9ij8HUcoM1sPbq8TvmibD6DhrK9If2lje+OOL8y4n4qreUnfMT56HCAeS9wCO3fg3eMyrw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@react-types/slider': 3.7.3(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/table@3.11.8(react@18.3.1)': + /@react-stately/table@3.11.8(react@18.3.1): + resolution: {integrity: sha512-EdyRW3lT1/kAVDp5FkEIi1BQ7tvmD2YgniGdLuW/l9LADo0T+oxZqruv60qpUS6sQap+59Riaxl91ClDxrJnpg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/collections': 3.10.7(react@18.3.1) '@react-stately/flags': 3.0.3 @@ -4459,30 +2806,46 @@ snapshots: '@react-types/table': 3.9.5(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/tabs@3.6.6(react@18.3.1)': + /@react-stately/tabs@3.6.6(react@18.3.1): + resolution: {integrity: sha512-sOLxorH2uqjAA+v1ppkMCc2YyjgqvSGeBDgtR/lyPSDd4CVMoTExszROX2dqG0c8il9RQvzFuufUtQWMY6PgSA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/list': 3.10.5(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@react-types/tabs': 3.3.7(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/toggle@3.7.4(react@18.3.1)': + /@react-stately/toggle@3.7.4(react@18.3.1): + resolution: {integrity: sha512-CoYFe9WrhLkDP4HGDpJYQKwfiYCRBAeoBQHv+JWl5eyK61S8xSwoHsveYuEZ3bowx71zyCnNAqWRrmNOxJ4CKA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/checkbox': 3.8.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/tooltip@3.4.9(react@18.3.1)': + /@react-stately/tooltip@3.4.9(react@18.3.1): + resolution: {integrity: sha512-P7CDJsdoKarz32qFwf3VNS01lyC+63gXpDZG31pUu+EO5BeQd4WKN/AH1Beuswpr4GWzxzFc1aXQgERFGVzraA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/overlays': 3.6.7(react@18.3.1) '@react-types/tooltip': 3.4.9(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/tree@3.8.1(react@18.3.1)': + /@react-stately/tree@3.8.1(react@18.3.1): + resolution: {integrity: sha512-LOdkkruJWch3W89h4B/bXhfr0t0t1aRfEp+IMrrwdRAl23NaPqwl5ILHs4Xu5XDHqqhg8co73pHrJwUyiTWEjw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-stately/collections': 3.10.7(react@18.3.1) '@react-stately/selection': 3.15.1(react@18.3.1) @@ -4490,246 +2853,478 @@ snapshots: '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/utils@3.10.1(react@18.3.1)': + /@react-stately/utils@3.10.1(react@18.3.1): + resolution: {integrity: sha512-VS/EHRyicef25zDZcM/ClpzYMC5i2YGN6uegOeQawmgfGjb02yaCX0F0zR69Pod9m2Hr3wunTbtpgVXvYbZItg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-stately/virtualizer@3.7.1(react@18.3.1)': + /@react-stately/virtualizer@3.7.1(react@18.3.1): + resolution: {integrity: sha512-voHgE6EQ+oZaLv6u2umKxakvIKNkCQuUihqKACTjdslp7SJh4Mvs3oLBI0hf0JOh+rCcFIKDvQtFwy1fXFRYBA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@swc/helpers': 0.5.11 react: 18.3.1 + dev: false - '@react-types/accordion@3.0.0-alpha.21(react@18.3.1)': + /@react-types/accordion@3.0.0-alpha.21(react@18.3.1): + resolution: {integrity: sha512-cbE06jH/ZoI+1898xd7ocQ/A/Rtkz8wTJAVOYgc8VRY1SYNQ/XZTGH5T6dD6aERAmiDwL/kjD7xhsE80DyaEKA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/breadcrumbs@3.7.5(react@18.3.1)': + /@react-types/breadcrumbs@3.7.5(react@18.3.1): + resolution: {integrity: sha512-lV9IDYsMiu2TgdMIjEmsOE0YWwjb3jhUNK1DCZZfq6uWuiHLgyx2EncazJBUWSjHJ4ta32j7xTuXch+8Ai6u/A==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/link': 3.5.5(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/button@3.9.4(react@18.3.1)': + /@react-types/button@3.9.4(react@18.3.1): + resolution: {integrity: sha512-raeQBJUxBp0axNF74TXB8/H50GY8Q3eV6cEKMbZFP1+Dzr09Ngv0tJBeW0ewAxAguNH5DRoMUAUGIXtSXskVdA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/calendar@3.4.6(react@18.3.1)': + /@react-types/calendar@3.4.6(react@18.3.1): + resolution: {integrity: sha512-WSntZPwtvsIYWvBQRAPvuCn55UTJBZroTvX0vQvWykJRQnPAI20G1hMQ3dNsnAL+gLZUYxBXn66vphmjUuSYew==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@internationalized/date': 3.5.4 '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/checkbox@3.8.1(react@18.3.1)': + /@react-types/checkbox@3.8.1(react@18.3.1): + resolution: {integrity: sha512-5/oVByPw4MbR/8QSdHCaalmyWC71H/QGgd4aduTJSaNi825o+v/hsN2/CH7Fq9atkLKsC8fvKD00Bj2VGaKriQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/combobox@3.11.1(react@18.3.1)': + /@react-types/combobox@3.11.1(react@18.3.1): + resolution: {integrity: sha512-UNc3OHt5cUt5gCTHqhQIqhaWwKCpaNciD8R7eQazmHiA9fq8ROlV+7l3gdNgdhJbTf5Bu/V5ISnN7Y1xwL3zqQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/datepicker@3.7.4(react@18.3.1)': + /@react-types/datepicker@3.7.4(react@18.3.1): + resolution: {integrity: sha512-ZfvgscvNzBJpYyVWg3nstJtA/VlWLwErwSkd1ivZYam859N30w8yH+4qoYLa6FzWLCFlrsRHyvtxlEM7lUAt5A==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@internationalized/date': 3.5.4 '@react-types/calendar': 3.4.6(react@18.3.1) '@react-types/overlays': 3.8.7(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/dialog@3.5.10(react@18.3.1)': + /@react-types/dialog@3.5.10(react@18.3.1): + resolution: {integrity: sha512-S9ga+edOLNLZw7/zVOnZdT5T40etpzUYBXEKdFPbxyPYnERvRxJAsC1/ASuBU9fQAXMRgLZzADWV+wJoGS/X9g==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/overlays': 3.8.7(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/grid@3.2.6(react@18.3.1)': + /@react-types/grid@3.2.6(react@18.3.1): + resolution: {integrity: sha512-XfHenL2jEBUYrhKiPdeM24mbLRXUn79wVzzMhrNYh24nBwhsPPpxF+gjFddT3Cy8dt6tRInfT6pMEu9nsXwaHw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/link@3.5.5(react@18.3.1)': + /@react-types/link@3.5.5(react@18.3.1): + resolution: {integrity: sha512-G6P5WagHDR87npN7sEuC5IIgL1GsoY4WFWKO4734i2CXRYx24G9P0Su3AX4GA3qpspz8sK1AWkaCzBMmvnunfw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/listbox@3.4.9(react@18.3.1)': + /@react-types/listbox@3.4.9(react@18.3.1): + resolution: {integrity: sha512-S5G+WmNKUIOPZxZ4svWwWQupP3C6LmVfnf8QQmPDvwYXGzVc0WovkqUWyhhjJirFDswTXRCO9p0yaTHHIlkdwQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/menu@3.9.9(react@18.3.1)': + /@react-types/menu@3.9.9(react@18.3.1): + resolution: {integrity: sha512-FamUaPVs1Fxr4KOMI0YcR2rYZHoN7ypGtgiEiJ11v/tEPjPPGgeKDxii0McCrdOkjheatLN1yd2jmMwYj6hTDg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/overlays': 3.8.7(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/overlays@3.8.7(react@18.3.1)': + /@react-types/overlays@3.8.7(react@18.3.1): + resolution: {integrity: sha512-zCOYvI4at2DkhVpviIClJ7bRrLXYhSg3Z3v9xymuPH3mkiuuP/dm8mUCtkyY4UhVeUTHmrQh1bzaOP00A+SSQA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/progress@3.5.4(react@18.3.1)': + /@react-types/progress@3.5.4(react@18.3.1): + resolution: {integrity: sha512-JNc246sTjasPyx5Dp7/s0rp3Bz4qlu4LrZTulZlxWyb53WgBNL7axc26CCi+I20rWL9+c7JjhrRxnLl/1cLN5g==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/radio@3.8.1(react@18.3.1)': + /@react-types/radio@3.8.1(react@18.3.1): + resolution: {integrity: sha512-bK0gio/qj1+0Ldu/3k/s9BaOZvnnRgvFtL3u5ky479+aLG5qf1CmYed3SKz8ErZ70JkpuCSrSwSCFf0t1IHovw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/select@3.9.4(react@18.3.1)': + /@react-types/select@3.9.4(react@18.3.1): + resolution: {integrity: sha512-xI7dnOW2st91fPPcv6hdtrTdcfetYiqZuuVPZ5TRobY7Q10/Zqqe/KqtOw1zFKUj9xqNJe4Ov3xP5GSdcO60Eg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/shared@3.22.1(react@18.3.1)': + /@react-types/shared@3.22.1(react@18.3.1): + resolution: {integrity: sha512-PCpa+Vo6BKnRMuOEzy5zAZ3/H5tnQg1e80khMhK2xys0j6ZqzkgQC+fHMNZ7VDFNLqqNMj/o0eVeSBDh2POjkw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: react: 18.3.1 + dev: false - '@react-types/shared@3.23.1(react@18.3.1)': + /@react-types/shared@3.23.1(react@18.3.1): + resolution: {integrity: sha512-5d+3HbFDxGZjhbMBeFHRQhexMFt4pUce3okyRtUVKbbedQFUrtXSBg9VszgF2RTeQDKDkMCIQDtz5ccP/Lk1gw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: react: 18.3.1 + dev: false - '@react-types/slider@3.7.3(react@18.3.1)': + /@react-types/slider@3.7.3(react@18.3.1): + resolution: {integrity: sha512-F8qFQaD2mqug2D0XeWMmjGBikiwbdERFlhFzdvNGbypPLz3AZICBKp1ZLPWdl0DMuy03G/jy6Gl4mDobl7RT2g==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/switch@3.5.3(react@18.3.1)': + /@react-types/switch@3.5.3(react@18.3.1): + resolution: {integrity: sha512-Nb6+J5MrPaFa8ZNFKGMzAsen/NNzl5UG/BbC65SLGPy7O0VDa/sUpn7dcu8V2xRpRwwIN/Oso4v63bt2sgdkgA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/table@3.9.5(react@18.3.1)': + /@react-types/table@3.9.5(react@18.3.1): + resolution: {integrity: sha512-fgM2j9F/UR4Anmd28CueghCgBwOZoCVyN8fjaIFPd2MN4gCwUUfANwxLav65gZk4BpwUXGoQdsW+X50L3555mg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/grid': 3.2.6(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/tabs@3.3.7(react@18.3.1)': + /@react-types/tabs@3.3.7(react@18.3.1): + resolution: {integrity: sha512-ZdLe5xOcFX6+/ni45Dl2jO0jFATpTnoSqj6kLIS/BYv8oh0n817OjJkLf+DS3CLfNjApJWrHqAk34xNh6nRnEg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/textfield@3.9.3(react@18.3.1)': + /@react-types/textfield@3.9.3(react@18.3.1): + resolution: {integrity: sha512-DoAY6cYOL0pJhgNGI1Rosni7g72GAt4OVr2ltEx2S9ARmFZ0DBvdhA9lL2nywcnKMf27PEJcKMXzXc10qaHsJw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@react-types/tooltip@3.4.9(react@18.3.1)': + /@react-types/tooltip@3.4.9(react@18.3.1): + resolution: {integrity: sha512-wZ+uF1+Zc43qG+cOJzioBmLUNjRa7ApdcT0LI1VvaYvH5GdfjzUJOorLX9V/vAci0XMJ50UZ+qsh79aUlw2yqg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/overlays': 3.8.7(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) react: 18.3.1 + dev: false - '@remix-run/router@1.16.1': {} + /@remix-run/router@1.16.1: + resolution: {integrity: sha512-es2g3dq6Nb07iFxGk5GuHN20RwBZOsuDQN7izWIisUcv9r+d2C5jQxqmgkdebXgReWfiyUabcki6Fg77mSNrig==} + engines: {node: '>=14.0.0'} + dev: false - '@rollup/rollup-android-arm-eabi@4.18.0': + /@rollup/rollup-android-arm-eabi@4.18.0: + resolution: {integrity: sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-android-arm64@4.18.0': + /@rollup/rollup-android-arm64@4.18.0: + resolution: {integrity: sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-darwin-arm64@4.18.0': + /@rollup/rollup-darwin-arm64@4.18.0: + resolution: {integrity: sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-darwin-x64@4.18.0': + /@rollup/rollup-darwin-x64@4.18.0: + resolution: {integrity: sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.18.0': + /@rollup/rollup-linux-arm-gnueabihf@4.18.0: + resolution: {integrity: sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-arm-musleabihf@4.18.0': + /@rollup/rollup-linux-arm-musleabihf@4.18.0: + resolution: {integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-arm64-gnu@4.18.0': + /@rollup/rollup-linux-arm64-gnu@4.18.0: + resolution: {integrity: sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-arm64-musl@4.18.0': + /@rollup/rollup-linux-arm64-musl@4.18.0: + resolution: {integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.18.0': + /@rollup/rollup-linux-powerpc64le-gnu@4.18.0: + resolution: {integrity: sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-riscv64-gnu@4.18.0': + /@rollup/rollup-linux-riscv64-gnu@4.18.0: + resolution: {integrity: sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-s390x-gnu@4.18.0': + /@rollup/rollup-linux-s390x-gnu@4.18.0: + resolution: {integrity: sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-x64-gnu@4.18.0': + /@rollup/rollup-linux-x64-gnu@4.18.0: + resolution: {integrity: sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-x64-musl@4.18.0': + /@rollup/rollup-linux-x64-musl@4.18.0: + resolution: {integrity: sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-win32-arm64-msvc@4.18.0': + /@rollup/rollup-win32-arm64-msvc@4.18.0: + resolution: {integrity: sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-win32-ia32-msvc@4.18.0': + /@rollup/rollup-win32-ia32-msvc@4.18.0: + resolution: {integrity: sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-win32-x64-msvc@4.18.0': + /@rollup/rollup-win32-x64-msvc@4.18.0: + resolution: {integrity: sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true optional: true - '@swc/helpers@0.5.11': + /@swc/helpers@0.5.11: + resolution: {integrity: sha512-YNlnKRWF2sVojTpIyzwou9XoTNbzbzONwRhOoniEioF1AtaitTvVZblaQRrAzChWQ1bLYyYSWzM18y4WwgzJ+A==} dependencies: tslib: 2.6.3 + dev: false - '@types/babel__core@7.20.5': + /@types/babel__core@7.20.5: + resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} dependencies: '@babel/parser': 7.24.7 '@babel/types': 7.24.7 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.6 + dev: true - '@types/babel__generator@7.6.8': + /@types/babel__generator@7.6.8: + resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} dependencies: '@babel/types': 7.24.7 + dev: true - '@types/babel__template@7.4.4': + /@types/babel__template@7.4.4: + resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} dependencies: '@babel/parser': 7.24.7 '@babel/types': 7.24.7 + dev: true - '@types/babel__traverse@7.20.6': + /@types/babel__traverse@7.20.6: + resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==} dependencies: '@babel/types': 7.24.7 + dev: true - '@types/estree@1.0.5': {} + /@types/estree@1.0.5: + resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + dev: true - '@types/hoist-non-react-statics@3.3.5': + /@types/hoist-non-react-statics@3.3.5: + resolution: {integrity: sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==} dependencies: '@types/react': 18.3.3 hoist-non-react-statics: 3.3.2 + dev: false - '@types/lodash.debounce@4.0.9': + /@types/lodash.debounce@4.0.9: + resolution: {integrity: sha512-Ma5JcgTREwpLRwMM+XwBR7DaWe96nC38uCBDFKZWbNKD+osjVzdpnUSwBcqCptrp16sSOLBAUb50Car5I0TCsQ==} dependencies: '@types/lodash': 4.17.5 + dev: false - '@types/lodash@4.17.5': {} + /@types/lodash@4.17.5: + resolution: {integrity: sha512-MBIOHVZqVqgfro1euRDWX7OO0fBVUUMrN6Pwm8LQsz8cWhEpihlvR70ENj3f40j58TNxZaWv2ndSkInykNBBJw==} + dev: false - '@types/prop-types@15.7.12': {} + /@types/node-fetch@2.6.11: + resolution: {integrity: sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==} + dependencies: + '@types/node': 18.19.42 + form-data: 4.0.0 + dev: false - '@types/react-dom@18.3.0': + /@types/node@18.19.42: + resolution: {integrity: sha512-d2ZFc/3lnK2YCYhos8iaNIYu9Vfhr92nHiyJHRltXWjXUBjEE+A4I58Tdbnw4VhggSW+2j5y5gTrLs4biNnubg==} + dependencies: + undici-types: 5.26.5 + dev: false + + /@types/prop-types@15.7.12: + resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==} + + /@types/react-dom@18.3.0: + resolution: {integrity: sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==} dependencies: '@types/react': 18.3.3 + dev: true - '@types/react@18.3.3': + /@types/react@18.3.3: + resolution: {integrity: sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw==} dependencies: '@types/prop-types': 15.7.12 csstype: 3.1.3 - '@typescript-eslint/eslint-plugin@7.13.1(@typescript-eslint/parser@7.13.1)(eslint@8.57.0)(typescript@5.4.5)': + /@typescript-eslint/eslint-plugin@7.13.1(@typescript-eslint/parser@7.13.1)(eslint@8.57.0)(typescript@5.4.5): + resolution: {integrity: sha512-kZqi+WZQaZfPKnsflLJQCz6Ze9FFSMfXrrIOcyargekQxG37ES7DJNpJUE9Q/X5n3yTIP/WPutVNzgknQ7biLg==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + '@typescript-eslint/parser': ^7.0.0 + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: '@eslint-community/regexpp': 4.10.1 '@typescript-eslint/parser': 7.13.1(eslint@8.57.0)(typescript@5.4.5) @@ -4745,8 +3340,17 @@ snapshots: typescript: 5.4.5 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/parser@7.13.1(eslint@8.57.0)(typescript@5.4.5)': + /@typescript-eslint/parser@7.13.1(eslint@8.57.0)(typescript@5.4.5): + resolution: {integrity: sha512-1ELDPlnLvDQ5ybTSrMhRTFDfOQEOXNM+eP+3HT/Yq7ruWpciQw+Avi73pdEbA4SooCawEWo3dtYbF68gN7Ed1A==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: '@typescript-eslint/scope-manager': 7.13.1 '@typescript-eslint/types': 7.13.1 @@ -4757,13 +3361,25 @@ snapshots: typescript: 5.4.5 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/scope-manager@7.13.1': + /@typescript-eslint/scope-manager@7.13.1: + resolution: {integrity: sha512-adbXNVEs6GmbzaCpymHQ0MB6E4TqoiVbC0iqG3uijR8ZYfpAXMGttouQzF4Oat3P2GxDVIrg7bMI/P65LiQZdg==} + engines: {node: ^18.18.0 || >=20.0.0} dependencies: '@typescript-eslint/types': 7.13.1 '@typescript-eslint/visitor-keys': 7.13.1 + dev: true - '@typescript-eslint/type-utils@7.13.1(eslint@8.57.0)(typescript@5.4.5)': + /@typescript-eslint/type-utils@7.13.1(eslint@8.57.0)(typescript@5.4.5): + resolution: {integrity: sha512-aWDbLu1s9bmgPGXSzNCxELu+0+HQOapV/y+60gPXafR8e2g1Bifxzevaa+4L2ytCWm+CHqpELq4CSoN9ELiwCg==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: '@typescript-eslint/typescript-estree': 7.13.1(typescript@5.4.5) '@typescript-eslint/utils': 7.13.1(eslint@8.57.0)(typescript@5.4.5) @@ -4773,10 +3389,21 @@ snapshots: typescript: 5.4.5 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/types@7.13.1': {} + /@typescript-eslint/types@7.13.1: + resolution: {integrity: sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw==} + engines: {node: ^18.18.0 || >=20.0.0} + dev: true - '@typescript-eslint/typescript-estree@7.13.1(typescript@5.4.5)': + /@typescript-eslint/typescript-estree@7.13.1(typescript@5.4.5): + resolution: {integrity: sha512-uxNr51CMV7npU1BxZzYjoVz9iyjckBduFBP0S5sLlh1tXYzHzgZ3BR9SVsNed+LmwKrmnqN3Kdl5t7eZ5TS1Yw==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: '@typescript-eslint/types': 7.13.1 '@typescript-eslint/visitor-keys': 7.13.1 @@ -4789,8 +3416,13 @@ snapshots: typescript: 5.4.5 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/utils@7.13.1(eslint@8.57.0)(typescript@5.4.5)': + /@typescript-eslint/utils@7.13.1(eslint@8.57.0)(typescript@5.4.5): + resolution: {integrity: sha512-h5MzFBD5a/Gh/fvNdp9pTfqJAbuQC4sCN2WzuXme71lqFJsZtLbjxfSk4r3p02WIArOF9N94pdsLiGutpDbrXQ==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) '@typescript-eslint/scope-manager': 7.13.1 @@ -4800,15 +3432,25 @@ snapshots: transitivePeerDependencies: - supports-color - typescript + dev: true - '@typescript-eslint/visitor-keys@7.13.1': + /@typescript-eslint/visitor-keys@7.13.1: + resolution: {integrity: sha512-k/Bfne7lrP7hcb7m9zSsgcBmo+8eicqqfNAJ7uUY+jkTFpKeH2FSkWpFRtimBxgkyvqfu9jTPRbYOvud6isdXA==} + engines: {node: ^18.18.0 || >=20.0.0} dependencies: '@typescript-eslint/types': 7.13.1 eslint-visitor-keys: 3.4.3 + dev: true - '@ungap/structured-clone@1.2.0': {} + /@ungap/structured-clone@1.2.0: + resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} + dev: true - '@vitejs/plugin-react@4.3.1(vite@5.3.1)': + /@vitejs/plugin-react@4.3.1(vite@5.3.1): + resolution: {integrity: sha512-m/V2syj5CuVnaxcUJOQRel/Wr31FFXRFlnOoq1TVtkCxsY5veGMTEmpWHndrhB2U8ScHtCQB1e+4hWYExQc6Lg==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + vite: ^4.2.0 || ^5.0.0 dependencies: '@babel/core': 7.24.7 '@babel/plugin-transform-react-jsx-self': 7.24.7(@babel/core@7.24.7) @@ -4818,50 +3460,102 @@ snapshots: vite: 5.3.1 transitivePeerDependencies: - supports-color + dev: true - acorn-jsx@5.3.2(acorn@8.12.0): + /abort-controller@3.0.0: + resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} + engines: {node: '>=6.5'} + dependencies: + event-target-shim: 5.0.1 + dev: false + + /acorn-jsx@5.3.2(acorn@8.12.0): + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: acorn: 8.12.0 + dev: true - acorn@8.12.0: {} + /acorn@8.12.0: + resolution: {integrity: sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==} + engines: {node: '>=0.4.0'} + hasBin: true + dev: true - ajv@6.12.6: + /agentkeepalive@4.5.0: + resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==} + engines: {node: '>= 8.0.0'} + dependencies: + humanize-ms: 1.2.1 + dev: false + + /ajv@6.12.6: + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} dependencies: fast-deep-equal: 3.1.3 fast-json-stable-stringify: 2.1.0 json-schema-traverse: 0.4.1 uri-js: 4.4.1 + dev: true - ansi-regex@5.0.1: {} + /ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} - ansi-regex@6.0.1: {} + /ansi-regex@6.0.1: + resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} + engines: {node: '>=12'} - ansi-styles@3.2.1: + /ansi-styles@3.2.1: + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} + engines: {node: '>=4'} dependencies: color-convert: 1.9.3 + dev: true - ansi-styles@4.3.0: + /ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} dependencies: color-convert: 2.0.1 - ansi-styles@6.2.1: {} + /ansi-styles@6.2.1: + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + engines: {node: '>=12'} - any-promise@1.3.0: {} + /any-promise@1.3.0: + resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} - anymatch@3.1.3: + /anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} dependencies: normalize-path: 3.0.0 picomatch: 2.3.1 - arg@5.0.2: {} + /arg@5.0.2: + resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} - argparse@2.0.1: {} + /argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + dev: true - array-union@2.1.0: {} + /array-union@2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + dev: true - asynckit@0.4.0: {} + /asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + dev: false - autoprefixer@10.4.19(postcss@8.4.38): + /autoprefixer@10.4.19(postcss@8.4.38): + resolution: {integrity: sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==} + engines: {node: ^10 || ^12 || >=14} + hasBin: true + peerDependencies: + postcss: ^8.1.0 dependencies: browserslist: 4.23.1 caniuse-lite: 1.0.30001636 @@ -4870,57 +3564,87 @@ snapshots: picocolors: 1.0.1 postcss: 8.4.38 postcss-value-parser: 4.2.0 + dev: true - axios@1.7.2: + /axios@1.7.2: + resolution: {integrity: sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==} dependencies: follow-redirects: 1.15.6 form-data: 4.0.0 proxy-from-env: 1.1.0 transitivePeerDependencies: - debug + dev: false - balanced-match@1.0.2: {} + /balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - binary-extensions@2.3.0: {} + /binary-extensions@2.3.0: + resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} + engines: {node: '>=8'} - brace-expansion@1.1.11: + /brace-expansion@1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 + dev: true - brace-expansion@2.0.1: + /brace-expansion@2.0.1: + resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} dependencies: balanced-match: 1.0.2 - braces@3.0.3: + /braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} dependencies: fill-range: 7.1.1 - browserslist@4.23.1: + /browserslist@4.23.1: + resolution: {integrity: sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true dependencies: caniuse-lite: 1.0.30001636 electron-to-chromium: 1.4.806 node-releases: 2.0.14 update-browserslist-db: 1.0.16(browserslist@4.23.1) + dev: true - callsites@3.1.0: {} + /callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + dev: true - camelcase-css@2.0.1: {} + /camelcase-css@2.0.1: + resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} + engines: {node: '>= 6'} - caniuse-lite@1.0.30001636: {} + /caniuse-lite@1.0.30001636: + resolution: {integrity: sha512-bMg2vmr8XBsbL6Lr0UHXy/21m84FTxDLWn2FSqMd5PrlbMxwJlQnC2YWYxVgp66PZE+BBNF2jYQUBKCo1FDeZg==} + dev: true - chalk@2.4.2: + /chalk@2.4.2: + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} + engines: {node: '>=4'} dependencies: ansi-styles: 3.2.1 escape-string-regexp: 1.0.5 supports-color: 5.5.0 + dev: true - chalk@4.1.2: + /chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 + dev: true - chokidar@3.6.0: + /chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} dependencies: anymatch: 3.1.3 braces: 3.0.3 @@ -4932,91 +3656,166 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - clsx@1.2.1: {} + /clsx@1.2.1: + resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} + engines: {node: '>=6'} + dev: false - clsx@2.1.1: {} + /clsx@2.1.1: + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} + engines: {node: '>=6'} + dev: false - color-convert@1.9.3: + /color-convert@1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} dependencies: color-name: 1.1.3 + dev: true - color-convert@2.0.1: + /color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} dependencies: color-name: 1.1.4 - color-name@1.1.3: {} + /color-name@1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + dev: true - color-name@1.1.4: {} + /color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - color-string@1.9.1: + /color-string@1.9.1: + resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} dependencies: color-name: 1.1.4 simple-swizzle: 0.2.2 + dev: false - color2k@2.0.3: {} + /color2k@2.0.3: + resolution: {integrity: sha512-zW190nQTIoXcGCaU08DvVNFTmQhUpnJfVuAKfWqUQkflXKpaDdpaYoM0iluLS9lgJNHyBF58KKA2FBEwkD7wog==} + dev: false - color@4.2.3: + /color@4.2.3: + resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} + engines: {node: '>=12.5.0'} dependencies: color-convert: 2.0.1 color-string: 1.9.1 + dev: false - combined-stream@1.0.8: + /combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} dependencies: delayed-stream: 1.0.0 + dev: false - commander@4.1.1: {} + /commander@4.1.1: + resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} + engines: {node: '>= 6'} - compute-scroll-into-view@3.1.0: {} + /compute-scroll-into-view@3.1.0: + resolution: {integrity: sha512-rj8l8pD4bJ1nx+dAkMhV1xB5RuZEyVysfxJqB1pRchh1KVvwOv9b7CGB8ZfjTImVv2oF+sYMUkMZq6Na5Ftmbg==} + dev: false - concat-map@0.0.1: {} + /concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + dev: true - convert-source-map@2.0.0: {} + /convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + dev: true - cross-spawn@7.0.3: + /cross-spawn@7.0.3: + resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} + engines: {node: '>= 8'} dependencies: path-key: 3.1.1 shebang-command: 2.0.0 which: 2.0.2 - cssesc@3.0.0: {} + /cssesc@3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true - csstype@3.1.3: {} + /csstype@3.1.3: + resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - debug@4.3.5: + /debug@4.3.5: + resolution: {integrity: sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true dependencies: ms: 2.1.2 + dev: true - deep-is@0.1.4: {} + /deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + dev: true - deepmerge@2.2.1: {} + /deepmerge@2.2.1: + resolution: {integrity: sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==} + engines: {node: '>=0.10.0'} + dev: false - deepmerge@4.3.1: {} + /deepmerge@4.3.1: + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} + engines: {node: '>=0.10.0'} + dev: false - delayed-stream@1.0.0: {} + /delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + dev: false - detect-node-es@1.1.0: {} + /detect-node-es@1.1.0: + resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} + dev: false - didyoumean@1.2.2: {} + /didyoumean@1.2.2: + resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} - dir-glob@3.0.1: + /dir-glob@3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} dependencies: path-type: 4.0.0 + dev: true - dlv@1.1.3: {} + /dlv@1.1.3: + resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} - doctrine@3.0.0: + /doctrine@3.0.0: + resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} + engines: {node: '>=6.0.0'} dependencies: esutils: 2.0.3 + dev: true - eastasianwidth@0.2.0: {} + /eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - electron-to-chromium@1.4.806: {} + /electron-to-chromium@1.4.806: + resolution: {integrity: sha512-nkoEX2QIB8kwCOtvtgwhXWy2IHVcOLQZu9Qo36uaGB835mdX/h8uLRlosL6QIhLVUnAiicXRW00PwaPZC74Nrg==} + dev: true - emoji-regex@8.0.0: {} + /emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - emoji-regex@9.2.2: {} + /emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - esbuild@0.21.5: + /esbuild@0.21.5: + resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true optionalDependencies: '@esbuild/aix-ppc64': 0.21.5 '@esbuild/android-arm': 0.21.5 @@ -5041,29 +3840,57 @@ snapshots: '@esbuild/win32-arm64': 0.21.5 '@esbuild/win32-ia32': 0.21.5 '@esbuild/win32-x64': 0.21.5 + dev: true - escalade@3.1.2: {} + /escalade@3.1.2: + resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} + engines: {node: '>=6'} + dev: true - escape-string-regexp@1.0.5: {} + /escape-string-regexp@1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + dev: true - escape-string-regexp@4.0.0: {} + /escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + dev: true - eslint-plugin-react-hooks@4.6.2(eslint@8.57.0): + /eslint-plugin-react-hooks@4.6.2(eslint@8.57.0): + resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==} + engines: {node: '>=10'} + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 dependencies: eslint: 8.57.0 + dev: true - eslint-plugin-react-refresh@0.4.7(eslint@8.57.0): + /eslint-plugin-react-refresh@0.4.7(eslint@8.57.0): + resolution: {integrity: sha512-yrj+KInFmwuQS2UQcg1SF83ha1tuHC1jMQbRNyuWtlEzzKRDgAl7L4Yp4NlDUZTZNlWvHEzOtJhMi40R7JxcSw==} + peerDependencies: + eslint: '>=7' dependencies: eslint: 8.57.0 + dev: true - eslint-scope@7.2.2: + /eslint-scope@7.2.2: + resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 + dev: true - eslint-visitor-keys@3.4.3: {} + /eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true - eslint@8.57.0: + /eslint@8.57.0: + resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + hasBin: true dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) '@eslint-community/regexpp': 4.10.1 @@ -5105,28 +3932,53 @@ snapshots: text-table: 0.2.0 transitivePeerDependencies: - supports-color + dev: true - espree@9.6.1: + /espree@9.6.1: + resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: acorn: 8.12.0 acorn-jsx: 5.3.2(acorn@8.12.0) eslint-visitor-keys: 3.4.3 + dev: true - esquery@1.5.0: + /esquery@1.5.0: + resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} + engines: {node: '>=0.10'} dependencies: estraverse: 5.3.0 + dev: true - esrecurse@4.3.0: + /esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} dependencies: estraverse: 5.3.0 + dev: true - estraverse@5.3.0: {} + /estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + dev: true - esutils@2.0.3: {} + /esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + dev: true - fast-deep-equal@3.1.3: {} + /event-target-shim@5.0.1: + resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} + engines: {node: '>=6'} + dev: false - fast-glob@3.3.2: + /fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + dev: true + + /fast-glob@3.3.2: + resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} + engines: {node: '>=8.6.0'} dependencies: '@nodelib/fs.stat': 2.0.5 '@nodelib/fs.walk': 1.2.8 @@ -5134,51 +3986,100 @@ snapshots: merge2: 1.4.1 micromatch: 4.0.7 - fast-json-stable-stringify@2.1.0: {} + /fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + dev: true - fast-levenshtein@2.0.6: {} + /fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + dev: true - fastq@1.17.1: + /fastq@1.17.1: + resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} dependencies: reusify: 1.0.4 - file-entry-cache@6.0.1: + /file-entry-cache@6.0.1: + resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} + engines: {node: ^10.12.0 || >=12.0.0} dependencies: flat-cache: 3.2.0 + dev: true - fill-range@7.1.1: + /fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} dependencies: to-regex-range: 5.0.1 - find-up@5.0.0: + /find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} dependencies: locate-path: 6.0.0 path-exists: 4.0.0 + dev: true - flat-cache@3.2.0: + /flat-cache@3.2.0: + resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} + engines: {node: ^10.12.0 || >=12.0.0} dependencies: flatted: 3.3.1 keyv: 4.5.4 rimraf: 3.0.2 + dev: true - flat@5.0.2: {} + /flat@5.0.2: + resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} + hasBin: true + dev: false - flatted@3.3.1: {} + /flatted@3.3.1: + resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} + dev: true - follow-redirects@1.15.6: {} + /follow-redirects@1.15.6: + resolution: {integrity: sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + dev: false - foreground-child@3.2.1: + /foreground-child@3.2.1: + resolution: {integrity: sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==} + engines: {node: '>=14'} dependencies: cross-spawn: 7.0.3 signal-exit: 4.1.0 - form-data@4.0.0: + /form-data-encoder@1.7.2: + resolution: {integrity: sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==} + dev: false + + /form-data@4.0.0: + resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} + engines: {node: '>= 6'} dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 mime-types: 2.1.35 + dev: false - formik@2.4.6(react@18.3.1): + /formdata-node@4.4.1: + resolution: {integrity: sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==} + engines: {node: '>= 12.20'} + dependencies: + node-domexception: 1.0.0 + web-streams-polyfill: 4.0.0-beta.3 + dev: false + + /formik@2.4.6(react@18.3.1): + resolution: {integrity: sha512-A+2EI7U7aG296q2TLGvNapDNTZp1khVt5Vk0Q/fyfSROss0V/V6+txt2aJnwEos44IxTCW/LYAi/zgWzlevj+g==} + peerDependencies: + react: '>=16.8.0' dependencies: '@types/hoist-non-react-statics': 3.3.5 deepmerge: 2.2.1 @@ -5189,35 +4090,71 @@ snapshots: react-fast-compare: 2.0.4 tiny-warning: 1.0.3 tslib: 2.6.3 + dev: false - fraction.js@4.3.7: {} + /fraction.js@4.3.7: + resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} + dev: true - framer-motion@11.2.10(react-dom@18.3.1)(react@18.3.1): + /framer-motion@11.2.10(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-/gr3PLZUVFCc86a9MqCUboVrALscrdluzTb3yew+2/qKBU8CX6nzs918/SRBRCqaPbx0TZP10CB6yFgK2C5cYQ==} + peerDependencies: + '@emotion/is-prop-valid': '*' + react: ^18.0.0 + react-dom: ^18.0.0 + peerDependenciesMeta: + '@emotion/is-prop-valid': + optional: true + react: + optional: true + react-dom: + optional: true dependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) tslib: 2.6.3 + dev: false - fs.realpath@1.0.0: {} + /fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + dev: true - fsevents@2.3.3: + /fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true optional: true - function-bind@1.1.2: {} + /function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - gensync@1.0.0-beta.2: {} + /gensync@1.0.0-beta.2: + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} + dev: true - get-nonce@1.0.1: {} + /get-nonce@1.0.1: + resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==} + engines: {node: '>=6'} + dev: false - glob-parent@5.1.2: + /glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} dependencies: is-glob: 4.0.3 - glob-parent@6.0.2: + /glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} dependencies: is-glob: 4.0.3 - glob@10.4.2: + /glob@10.4.2: + resolution: {integrity: sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==} + engines: {node: '>=16 || 14 >=14.18'} + hasBin: true dependencies: foreground-child: 3.2.1 jackspeak: 3.4.0 @@ -5226,7 +4163,9 @@ snapshots: package-json-from-dist: 1.0.0 path-scurry: 1.11.1 - glob@7.2.3: + /glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -5234,14 +4173,23 @@ snapshots: minimatch: 3.1.2 once: 1.4.0 path-is-absolute: 1.0.1 + dev: true - globals@11.12.0: {} + /globals@11.12.0: + resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} + engines: {node: '>=4'} + dev: true - globals@13.24.0: + /globals@13.24.0: + resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} + engines: {node: '>=8'} dependencies: type-fest: 0.20.2 + dev: true - globby@11.1.0: + /globby@11.1.0: + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} dependencies: array-union: 2.1.0 dir-glob: 3.0.1 @@ -5249,197 +4197,385 @@ snapshots: ignore: 5.3.1 merge2: 1.4.1 slash: 3.0.0 + dev: true - goober@2.1.14(csstype@3.1.3): + /goober@2.1.14(csstype@3.1.3): + resolution: {integrity: sha512-4UpC0NdGyAFqLNPnhCT2iHpza2q+RAY3GV85a/mRPdzyPQMsj0KmMMuetdIkzWRbJ+Hgau1EZztq8ImmiMGhsg==} + peerDependencies: + csstype: ^3.0.10 dependencies: csstype: 3.1.3 + dev: false - graphemer@1.4.0: {} + /graphemer@1.4.0: + resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + dev: true - has-flag@3.0.0: {} + /has-flag@3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} + dev: true - has-flag@4.0.0: {} + /has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + dev: true - hasown@2.0.2: + /hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} dependencies: function-bind: 1.1.2 - hoist-non-react-statics@3.3.2: + /hoist-non-react-statics@3.3.2: + resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} dependencies: react-is: 16.13.1 + dev: false - ignore@5.3.1: {} + /humanize-ms@1.2.1: + resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} + dependencies: + ms: 2.1.2 + dev: false - import-fresh@3.3.0: + /ignore@5.3.1: + resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} + engines: {node: '>= 4'} + dev: true + + /import-fresh@3.3.0: + resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + engines: {node: '>=6'} dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 + dev: true - imurmurhash@0.1.4: {} + /imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + dev: true - inflight@1.0.6: + /inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. dependencies: once: 1.4.0 wrappy: 1.0.2 + dev: true - inherits@2.0.4: {} + /inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + dev: true - intl-messageformat@10.5.14: + /intl-messageformat@10.5.14: + resolution: {integrity: sha512-IjC6sI0X7YRjjyVH9aUgdftcmZK7WXdHeil4KwbjDnRWjnVitKpAx3rr6t6di1joFp5188VqKcobOPA6mCLG/w==} dependencies: '@formatjs/ecma402-abstract': 2.0.0 '@formatjs/fast-memoize': 2.2.0 '@formatjs/icu-messageformat-parser': 2.7.8 tslib: 2.6.3 + dev: false - invariant@2.2.4: + /invariant@2.2.4: + resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} dependencies: loose-envify: 1.4.0 + dev: false - is-arrayish@0.3.2: {} + /is-arrayish@0.3.2: + resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} + dev: false - is-binary-path@2.1.0: + /is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} dependencies: binary-extensions: 2.3.0 - is-core-module@2.13.1: + /is-core-module@2.13.1: + resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} dependencies: hasown: 2.0.2 - is-extglob@2.1.1: {} + /is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} - is-fullwidth-code-point@3.0.0: {} + /is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} - is-glob@4.0.3: + /is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} dependencies: is-extglob: 2.1.1 - is-number@7.0.0: {} + /is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} - is-path-inside@3.0.3: {} + /is-path-inside@3.0.3: + resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} + engines: {node: '>=8'} + dev: true - isexe@2.0.0: {} + /isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - jackspeak@3.4.0: + /jackspeak@3.4.0: + resolution: {integrity: sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==} + engines: {node: '>=14'} dependencies: '@isaacs/cliui': 8.0.2 optionalDependencies: '@pkgjs/parseargs': 0.11.0 - jiti@1.21.6: {} + /jiti@1.21.6: + resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} + hasBin: true - js-tokens@4.0.0: {} + /js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - js-yaml@4.1.0: + /js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true dependencies: argparse: 2.0.1 + dev: true - jsesc@2.5.2: {} + /jsesc@2.5.2: + resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} + engines: {node: '>=4'} + hasBin: true + dev: true - json-buffer@3.0.1: {} + /json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + dev: true - json-schema-traverse@0.4.1: {} + /json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + dev: true - json-stable-stringify-without-jsonify@1.0.1: {} + /json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + dev: true - json5@2.2.3: {} + /json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true + dev: true - keyv@4.5.4: + /keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} dependencies: json-buffer: 3.0.1 + dev: true - levn@0.4.1: + /levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} dependencies: prelude-ls: 1.2.1 type-check: 0.4.0 + dev: true - lilconfig@2.1.0: {} + /lilconfig@2.1.0: + resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} + engines: {node: '>=10'} - lilconfig@3.1.2: {} + /lilconfig@3.1.2: + resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==} + engines: {node: '>=14'} - lines-and-columns@1.2.4: {} + /lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - locate-path@6.0.0: + /locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} dependencies: p-locate: 5.0.0 + dev: true - lodash-es@4.17.21: {} + /lodash-es@4.17.21: + resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} + dev: false - lodash.debounce@4.0.8: {} + /lodash.debounce@4.0.8: + resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} + dev: false - lodash.foreach@4.5.0: {} + /lodash.foreach@4.5.0: + resolution: {integrity: sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ==} + dev: false - lodash.get@4.4.2: {} + /lodash.get@4.4.2: + resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==} + dev: false - lodash.kebabcase@4.1.1: {} + /lodash.kebabcase@4.1.1: + resolution: {integrity: sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==} + dev: false - lodash.mapkeys@4.6.0: {} + /lodash.mapkeys@4.6.0: + resolution: {integrity: sha512-0Al+hxpYvONWtg+ZqHpa/GaVzxuN3V7Xeo2p+bY06EaK/n+Y9R7nBePPN2o1LxmL0TWQSwP8LYZ008/hc9JzhA==} + dev: false - lodash.merge@4.6.2: {} + /lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + dev: true - lodash.omit@4.5.0: {} + /lodash.omit@4.5.0: + resolution: {integrity: sha512-XeqSp49hNGmlkj2EJlfrQFIzQ6lXdNro9sddtQzcJY8QaoC2GO0DT7xaIokHeyM+mIT0mPMlPvkYzg2xCuHdZg==} + dev: false - lodash@4.17.21: {} + /lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + dev: false - loose-envify@1.4.0: + /loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true dependencies: js-tokens: 4.0.0 + dev: false - lru-cache@10.2.2: {} + /lru-cache@10.2.2: + resolution: {integrity: sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==} + engines: {node: 14 || >=16.14} - lru-cache@5.1.1: + /lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: yallist: 3.1.1 + dev: true - merge2@1.4.1: {} + /merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} - micromatch@4.0.7: + /micromatch@4.0.7: + resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} + engines: {node: '>=8.6'} dependencies: braces: 3.0.3 picomatch: 2.3.1 - mime-db@1.52.0: {} + /mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + dev: false - mime-types@2.1.35: + /mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} dependencies: mime-db: 1.52.0 + dev: false - minimatch@3.1.2: + /minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: brace-expansion: 1.1.11 + dev: true - minimatch@9.0.4: + /minimatch@9.0.4: + resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} + engines: {node: '>=16 || 14 >=14.17'} dependencies: brace-expansion: 2.0.1 - minipass@7.1.2: {} + /minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} - ms@2.1.2: {} + /ms@2.1.2: + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} - mz@2.7.0: + /mz@2.7.0: + resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} dependencies: any-promise: 1.3.0 object-assign: 4.1.1 thenify-all: 1.6.0 - nanoid@3.3.7: {} + /nanoid@3.3.7: + resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true - natural-compare@1.4.0: {} + /natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + dev: true - node-releases@2.0.14: {} + /node-domexception@1.0.0: + resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} + engines: {node: '>=10.5.0'} + dev: false - normalize-path@3.0.0: {} + /node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} + engines: {node: 4.x || >=6.0.0} + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + dependencies: + whatwg-url: 5.0.0 + dev: false - normalize-range@0.1.2: {} + /node-releases@2.0.14: + resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} + dev: true - object-assign@4.1.1: {} + /normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} - object-hash@3.0.0: {} + /normalize-range@0.1.2: + resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} + engines: {node: '>=0.10.0'} + dev: true - once@1.4.0: + /object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + /object-hash@3.0.0: + resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} + engines: {node: '>= 6'} + + /once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} dependencies: wrappy: 1.0.2 + dev: true - optionator@0.9.4: + /openai@4.53.2: + resolution: {integrity: sha512-ohYEv6OV3jsFGqNrgolDDWN6Ssx1nFg6JDJQuaBFo4SL2i+MBoOQ16n2Pq1iBF5lH1PKnfCIOfqAGkmzPvdB9g==} + hasBin: true + dependencies: + '@types/node': 18.19.42 + '@types/node-fetch': 2.6.11 + abort-controller: 3.0.0 + agentkeepalive: 4.5.0 + form-data-encoder: 1.7.2 + formdata-node: 4.4.1 + node-fetch: 2.7.0 + transitivePeerDependencies: + - encoding + dev: false + + /optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} dependencies: deep-is: 0.1.4 fast-levenshtein: 2.0.6 @@ -5447,118 +4583,222 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 word-wrap: 1.2.5 + dev: true - p-limit@3.1.0: + /p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} dependencies: yocto-queue: 0.1.0 + dev: true - p-locate@5.0.0: + /p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} dependencies: p-limit: 3.1.0 + dev: true - package-json-from-dist@1.0.0: {} + /package-json-from-dist@1.0.0: + resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} - parent-module@1.0.1: + /parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} dependencies: callsites: 3.1.0 + dev: true - path-exists@4.0.0: {} + /path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + dev: true - path-is-absolute@1.0.1: {} + /path-is-absolute@1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + dev: true - path-key@3.1.1: {} + /path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} - path-parse@1.0.7: {} + /path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - path-scurry@1.11.1: + /path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} dependencies: lru-cache: 10.2.2 minipass: 7.1.2 - path-type@4.0.0: {} + /path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + dev: true - picocolors@1.0.1: {} + /picocolors@1.0.1: + resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} - picomatch@2.3.1: {} + /picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} - pify@2.3.0: {} + /pify@2.3.0: + resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} + engines: {node: '>=0.10.0'} - pirates@4.0.6: {} + /pirates@4.0.6: + resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} + engines: {node: '>= 6'} - postcss-import@15.1.0(postcss@8.4.38): + /postcss-import@15.1.0(postcss@8.4.38): + resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} + engines: {node: '>=14.0.0'} + peerDependencies: + postcss: ^8.0.0 dependencies: postcss: 8.4.38 postcss-value-parser: 4.2.0 read-cache: 1.0.0 resolve: 1.22.8 - postcss-js@4.0.1(postcss@8.4.38): + /postcss-js@4.0.1(postcss@8.4.38): + resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} + engines: {node: ^12 || ^14 || >= 16} + peerDependencies: + postcss: ^8.4.21 dependencies: camelcase-css: 2.0.1 postcss: 8.4.38 - postcss-load-config@4.0.2(postcss@8.4.38): + /postcss-load-config@4.0.2(postcss@8.4.38): + resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} + engines: {node: '>= 14'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true dependencies: lilconfig: 3.1.2 postcss: 8.4.38 yaml: 2.4.5 - postcss-nested@6.0.1(postcss@8.4.38): + /postcss-nested@6.0.1(postcss@8.4.38): + resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.2.14 dependencies: postcss: 8.4.38 postcss-selector-parser: 6.1.0 - postcss-selector-parser@6.1.0: + /postcss-selector-parser@6.1.0: + resolution: {integrity: sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==} + engines: {node: '>=4'} dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 - postcss-value-parser@4.2.0: {} + /postcss-value-parser@4.2.0: + resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - postcss@8.4.38: + /postcss@8.4.38: + resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} + engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.7 picocolors: 1.0.1 source-map-js: 1.2.0 - prelude-ls@1.2.1: {} + /prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + dev: true - property-expr@2.0.6: {} + /property-expr@2.0.6: + resolution: {integrity: sha512-SVtmxhRE/CGkn3eZY1T6pC8Nln6Fr/lu1mKSgRud0eC73whjGfoAogbn78LkD8aFL0zz3bAFerKSnOl7NlErBA==} + dev: false - proxy-from-env@1.1.0: {} + /proxy-from-env@1.1.0: + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + dev: false - punycode@2.3.1: {} + /punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + dev: true - queue-microtask@1.2.3: {} + /queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - react-dom@18.3.1(react@18.3.1): + /react-dom@18.3.1(react@18.3.1): + resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} + peerDependencies: + react: ^18.3.1 dependencies: loose-envify: 1.4.0 react: 18.3.1 scheduler: 0.23.2 + dev: false - react-fast-compare@2.0.4: {} + /react-fast-compare@2.0.4: + resolution: {integrity: sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw==} + dev: false - react-hot-toast@2.4.1(csstype@3.1.3)(react-dom@18.3.1)(react@18.3.1): + /react-hot-toast@2.4.1(csstype@3.1.3)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-j8z+cQbWIM5LY37pR6uZR6D4LfseplqnuAO4co4u8917hBUvXlEqyP1ZzqVLcqoyUesZZv/ImreoCeHVDpE5pQ==} + engines: {node: '>=10'} + peerDependencies: + react: '>=16' + react-dom: '>=16' dependencies: goober: 2.1.14(csstype@3.1.3) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: - csstype + dev: false - react-is@16.13.1: {} + /react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + dev: false - react-refresh@0.14.2: {} + /react-refresh@0.14.2: + resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==} + engines: {node: '>=0.10.0'} + dev: true - react-remove-scroll-bar@2.3.6(@types/react@18.3.3)(react@18.3.1): + /react-remove-scroll-bar@2.3.6(@types/react@18.3.3)(react@18.3.1): + resolution: {integrity: sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true dependencies: '@types/react': 18.3.3 react: 18.3.1 react-style-singleton: 2.2.1(@types/react@18.3.3)(react@18.3.1) tslib: 2.6.3 + dev: false - react-remove-scroll@2.5.10(@types/react@18.3.3)(react@18.3.1): + /react-remove-scroll@2.5.10(@types/react@18.3.3)(react@18.3.1): + resolution: {integrity: sha512-m3zvBRANPBw3qxVVjEIPEQinkcwlFZ4qyomuWVpNJdv4c6MvHfXV0C3L9Jx5rr3HeBHKNRX+1jreB5QloDIJjA==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true dependencies: '@types/react': 18.3.3 react: 18.3.1 @@ -5567,28 +4807,53 @@ snapshots: tslib: 2.6.3 use-callback-ref: 1.3.2(@types/react@18.3.3)(react@18.3.1) use-sidecar: 1.1.2(@types/react@18.3.3)(react@18.3.1) + dev: false - react-router-dom@6.23.1(react-dom@18.3.1)(react@18.3.1): + /react-router-dom@6.23.1(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-utP+K+aSTtEdbWpC+4gxhdlPFwuEfDKq8ZrPFU65bbRJY+l706qjR7yaidBpo3MSeA/fzwbXWbKBI6ftOnP3OQ==} + engines: {node: '>=14.0.0'} + peerDependencies: + react: '>=16.8' + react-dom: '>=16.8' dependencies: '@remix-run/router': 1.16.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) react-router: 6.23.1(react@18.3.1) + dev: false - react-router@6.23.1(react@18.3.1): + /react-router@6.23.1(react@18.3.1): + resolution: {integrity: sha512-fzcOaRF69uvqbbM7OhvQyBTFDVrrGlsFdS3AL+1KfIBtGETibHzi3FkoTRyiDJnWNc2VxrfvR+657ROHjaNjqQ==} + engines: {node: '>=14.0.0'} + peerDependencies: + react: '>=16.8' dependencies: '@remix-run/router': 1.16.1 react: 18.3.1 + dev: false - react-style-singleton@2.2.1(@types/react@18.3.3)(react@18.3.1): + /react-style-singleton@2.2.1(@types/react@18.3.3)(react@18.3.1): + resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true dependencies: '@types/react': 18.3.3 get-nonce: 1.0.1 invariant: 2.2.4 react: 18.3.1 tslib: 2.6.3 + dev: false - react-textarea-autosize@8.5.3(@types/react@18.3.3)(react@18.3.1): + /react-textarea-autosize@8.5.3(@types/react@18.3.3)(react@18.3.1): + resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} + engines: {node: '>=10'} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: '@babel/runtime': 7.24.7 react: 18.3.1 @@ -5596,36 +4861,59 @@ snapshots: use-latest: 1.2.1(@types/react@18.3.3)(react@18.3.1) transitivePeerDependencies: - '@types/react' + dev: false - react@18.3.1: + /react@18.3.1: + resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} + engines: {node: '>=0.10.0'} dependencies: loose-envify: 1.4.0 + dev: false - read-cache@1.0.0: + /read-cache@1.0.0: + resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} dependencies: pify: 2.3.0 - readdirp@3.6.0: + /readdirp@3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} dependencies: picomatch: 2.3.1 - regenerator-runtime@0.14.1: {} + /regenerator-runtime@0.14.1: + resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} + dev: false - resolve-from@4.0.0: {} + /resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + dev: true - resolve@1.22.8: + /resolve@1.22.8: + resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} + hasBin: true dependencies: is-core-module: 2.13.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - reusify@1.0.4: {} + /reusify@1.0.4: + resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rimraf@3.0.2: + /rimraf@3.0.2: + resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + deprecated: Rimraf versions prior to v4 are no longer supported + hasBin: true dependencies: glob: 7.2.3 + dev: true - rollup@4.18.0: + /rollup@4.18.0: + resolution: {integrity: sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true dependencies: '@types/estree': 1.0.5 optionalDependencies: @@ -5646,62 +4934,102 @@ snapshots: '@rollup/rollup-win32-ia32-msvc': 4.18.0 '@rollup/rollup-win32-x64-msvc': 4.18.0 fsevents: 2.3.3 + dev: true - run-parallel@1.2.0: + /run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} dependencies: queue-microtask: 1.2.3 - scheduler@0.23.2: + /scheduler@0.23.2: + resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} dependencies: loose-envify: 1.4.0 + dev: false - scroll-into-view-if-needed@3.0.10: + /scroll-into-view-if-needed@3.0.10: + resolution: {integrity: sha512-t44QCeDKAPf1mtQH3fYpWz8IM/DyvHLjs8wUvvwMYxk5moOqCzrMSxK6HQVD0QVmVjXFavoFIPRVrMuJPKAvtg==} dependencies: compute-scroll-into-view: 3.1.0 + dev: false - semver@6.3.1: {} + /semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + dev: true - semver@7.6.2: {} + /semver@7.6.2: + resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==} + engines: {node: '>=10'} + hasBin: true + dev: true - shebang-command@2.0.0: + /shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} dependencies: shebang-regex: 3.0.0 - shebang-regex@3.0.0: {} + /shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} - signal-exit@4.1.0: {} + /signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} - simple-swizzle@0.2.2: + /simple-swizzle@0.2.2: + resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} dependencies: is-arrayish: 0.3.2 + dev: false - slash@3.0.0: {} + /slash@3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + dev: true - source-map-js@1.2.0: {} + /source-map-js@1.2.0: + resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} + engines: {node: '>=0.10.0'} - string-width@4.2.3: + /string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} dependencies: emoji-regex: 8.0.0 is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 - string-width@5.1.2: + /string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} dependencies: eastasianwidth: 0.2.0 emoji-regex: 9.2.2 strip-ansi: 7.1.0 - strip-ansi@6.0.1: + /strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} dependencies: ansi-regex: 5.0.1 - strip-ansi@7.1.0: + /strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} dependencies: ansi-regex: 6.0.1 - strip-json-comments@3.1.1: {} + /strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + dev: true - sucrase@3.35.0: + /sucrase@3.35.0: + resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} + engines: {node: '>=16 || 14 >=14.17'} + hasBin: true dependencies: '@jridgewell/gen-mapping': 0.3.5 commander: 4.1.1 @@ -5711,24 +5039,42 @@ snapshots: pirates: 4.0.6 ts-interface-checker: 0.1.13 - supports-color@5.5.0: + /supports-color@5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} dependencies: has-flag: 3.0.0 + dev: true - supports-color@7.2.0: + /supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} dependencies: has-flag: 4.0.0 + dev: true - supports-preserve-symlinks-flag@1.0.0: {} + /supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} - tailwind-merge@1.14.0: {} + /tailwind-merge@1.14.0: + resolution: {integrity: sha512-3mFKyCo/MBcgyOTlrY8T7odzZFx+w+qKSMAmdFzRvqBfLlSigU6TZnlFHK0lkMwj9Bj8OYU+9yW9lmGuS0QEnQ==} + dev: false - tailwind-variants@0.1.20(tailwindcss@3.4.4): + /tailwind-variants@0.1.20(tailwindcss@3.4.4): + resolution: {integrity: sha512-AMh7x313t/V+eTySKB0Dal08RHY7ggYK0MSn/ad8wKWOrDUIzyiWNayRUm2PIJ4VRkvRnfNuyRuKbLV3EN+ewQ==} + engines: {node: '>=16.x', pnpm: '>=7.x'} + peerDependencies: + tailwindcss: '*' dependencies: tailwind-merge: 1.14.0 tailwindcss: 3.4.4 + dev: false - tailwindcss@3.4.4: + /tailwindcss@3.4.4: + resolution: {integrity: sha512-ZoyXOdJjISB7/BcLTR6SEsLgKtDStYyYZVLsUtWChO4Ps20CBad7lfJKVDiejocV4ME1hLmyY0WJE3hSDcmQ2A==} + engines: {node: '>=14.0.0'} + hasBin: true dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -5755,123 +5101,279 @@ snapshots: transitivePeerDependencies: - ts-node - text-table@0.2.0: {} + /text-table@0.2.0: + resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} + dev: true - thenify-all@1.6.0: + /thenify-all@1.6.0: + resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} + engines: {node: '>=0.8'} dependencies: thenify: 3.3.1 - thenify@3.3.1: + /thenify@3.3.1: + resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} dependencies: any-promise: 1.3.0 - tiny-case@1.0.3: {} + /tiny-case@1.0.3: + resolution: {integrity: sha512-Eet/eeMhkO6TX8mnUteS9zgPbUMQa4I6Kkp5ORiBD5476/m+PIRiumP5tmh5ioJpH7k51Kehawy2UDfsnxxY8Q==} + dev: false - tiny-warning@1.0.3: {} + /tiny-warning@1.0.3: + resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==} + dev: false - to-fast-properties@2.0.0: {} + /to-fast-properties@2.0.0: + resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} + engines: {node: '>=4'} + dev: true - to-regex-range@5.0.1: + /to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} dependencies: is-number: 7.0.0 - toposort@2.0.2: {} + /toposort@2.0.2: + resolution: {integrity: sha512-0a5EOkAUp8D4moMi2W8ZF8jcga7BgZd91O/yabJCFY8az+XSzeGyTKs0Aoo897iV1Nj6guFq8orWDS96z91oGg==} + dev: false - ts-api-utils@1.3.0(typescript@5.4.5): + /tr46@0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + dev: false + + /ts-api-utils@1.3.0(typescript@5.4.5): + resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} + engines: {node: '>=16'} + peerDependencies: + typescript: '>=4.2.0' dependencies: typescript: 5.4.5 + dev: true - ts-interface-checker@0.1.13: {} + /ts-interface-checker@0.1.13: + resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - tslib@2.6.3: {} + /tslib@2.6.3: + resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} + dev: false - type-check@0.4.0: + /type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} dependencies: prelude-ls: 1.2.1 + dev: true - type-fest@0.20.2: {} + /type-fest@0.20.2: + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} + dev: true - type-fest@2.19.0: {} + /type-fest@2.19.0: + resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} + engines: {node: '>=12.20'} + dev: false - typescript@5.4.5: {} + /typescript@5.4.5: + resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} + engines: {node: '>=14.17'} + hasBin: true + dev: true - update-browserslist-db@1.0.16(browserslist@4.23.1): + /undici-types@5.26.5: + resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + dev: false + + /update-browserslist-db@1.0.16(browserslist@4.23.1): + resolution: {integrity: sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' dependencies: browserslist: 4.23.1 escalade: 3.1.2 picocolors: 1.0.1 + dev: true - uri-js@4.4.1: + /uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: punycode: 2.3.1 + dev: true - use-callback-ref@1.3.2(@types/react@18.3.3)(react@18.3.1): + /use-callback-ref@1.3.2(@types/react@18.3.3)(react@18.3.1): + resolution: {integrity: sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true dependencies: '@types/react': 18.3.3 react: 18.3.1 tslib: 2.6.3 + dev: false - use-composed-ref@1.3.0(react@18.3.1): + /use-composed-ref@1.3.0(react@18.3.1): + resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: react: 18.3.1 + dev: false - use-isomorphic-layout-effect@1.1.2(@types/react@18.3.3)(react@18.3.1): + /use-isomorphic-layout-effect@1.1.2(@types/react@18.3.3)(react@18.3.1): + resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} + peerDependencies: + '@types/react': '*' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true dependencies: '@types/react': 18.3.3 react: 18.3.1 + dev: false - use-latest@1.2.1(@types/react@18.3.3)(react@18.3.1): + /use-latest@1.2.1(@types/react@18.3.3)(react@18.3.1): + resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} + peerDependencies: + '@types/react': '*' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true dependencies: '@types/react': 18.3.3 react: 18.3.1 use-isomorphic-layout-effect: 1.1.2(@types/react@18.3.3)(react@18.3.1) + dev: false - use-sidecar@1.1.2(@types/react@18.3.3)(react@18.3.1): + /use-sidecar@1.1.2(@types/react@18.3.3)(react@18.3.1): + resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true dependencies: '@types/react': 18.3.3 detect-node-es: 1.1.0 react: 18.3.1 tslib: 2.6.3 + dev: false - util-deprecate@1.0.2: {} + /util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - vite@5.3.1: + /vite@5.3.1: + resolution: {integrity: sha512-XBmSKRLXLxiaPYamLv3/hnP/KXDai1NDexN0FpkTaZXTfycHvkRHoenpgl/fvuK/kPbB6xAgoyiryAhQNxYmAQ==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + 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 dependencies: esbuild: 0.21.5 postcss: 8.4.38 rollup: 4.18.0 optionalDependencies: fsevents: 2.3.3 + dev: true - which@2.0.2: + /web-streams-polyfill@4.0.0-beta.3: + resolution: {integrity: sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==} + engines: {node: '>= 14'} + dev: false + + /webidl-conversions@3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + dev: false + + /whatwg-url@5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + dependencies: + tr46: 0.0.3 + webidl-conversions: 3.0.1 + dev: false + + /which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true dependencies: isexe: 2.0.0 - word-wrap@1.2.5: {} + /word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + dev: true - wrap-ansi@7.0.0: + /wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} dependencies: ansi-styles: 4.3.0 string-width: 4.2.3 strip-ansi: 6.0.1 - wrap-ansi@8.1.0: + /wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} dependencies: ansi-styles: 6.2.1 string-width: 5.1.2 strip-ansi: 7.1.0 - wrappy@1.0.2: {} + /wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + dev: true - yallist@3.1.1: {} + /yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + dev: true - yaml@2.4.5: {} + /yaml@2.4.5: + resolution: {integrity: sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg==} + engines: {node: '>= 14'} + hasBin: true - yocto-queue@0.1.0: {} + /yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + dev: true - yup@1.4.0: + /yup@1.4.0: + resolution: {integrity: sha512-wPbgkJRCqIf+OHyiTBQoJiP5PFuAXaWiJK6AmYkzQAh5/c2K9hzSApBZG5wV9KoKSePF7sAxmNSvh/13YHkFDg==} dependencies: property-expr: 2.0.6 tiny-case: 1.0.3 toposort: 2.0.2 type-fest: 2.19.0 + dev: false diff --git a/client/src/components/EcoconnectSearch.tsx b/client/src/components/EcoconnectSearch.tsx new file mode 100644 index 0000000..8c52ca0 --- /dev/null +++ b/client/src/components/EcoconnectSearch.tsx @@ -0,0 +1,146 @@ +import { + Button, + Input, + Kbd, + Modal, + ModalBody, + ModalContent, + ModalFooter, + useDisclosure, +} from "@nextui-org/react"; +import { useEffect, useState } from "react"; +import { MagnifyingGlassIcon } from "../icons"; +import config from "../config"; +import instance from "../security/http"; +import EcoconnectFullLogo from "./EcoconnectFullLogo"; + +export default function EcoconnectSearch() { + const [searchQuery, setSearchQuery] = useState(""); + const [aiResponse, setAiResponse] = useState(""); + const [isQueryLoading, setIsQueryLoading] = useState(false); + + const { + isOpen: isAiDialogOpen, + onOpen: onAiDialogOpen, + onOpenChange: onAiDialogOpenChange, + } = useDisclosure(); + + const dialogOpenChange = () => { + onAiDialogOpenChange(); + setSearchQuery(""); + setAiResponse(""); + }; + + const handleKeyPress = (event: KeyboardEvent) => { + if (event.ctrlKey && event.key === "s") { + event.preventDefault(); + onAiDialogOpen(); + } + }; + + const executeSearch = async () => { + if (searchQuery.length <= 0) return; + setIsQueryLoading(true); + instance + .get( + `${config.serverAddress}/connections/openai-chat-completion/${searchQuery}` + ) + .then((response) => { + console.log(response.data.response); + setAiResponse(response.data.response); + }) + .finally(() => { + setIsQueryLoading(false); + }); + }; + + useEffect(() => { + window.addEventListener("keydown", handleKeyPress); + + return () => { + window.removeEventListener("keydown", handleKeyPress); + }; + }, []); + + return ( +
+ + } + placement="top" + > + + {() => { + return ( + <> + +
+ { + if (keyEvent.key == "Enter") { + executeSearch(); + } + }} + endContent={ + + } + /> + {aiResponse.length > 0 && ( +

+ {aiResponse} +

+ )} +
+
+ +
+ +

+ Natural Language Search +

+
+
+ + ); + }} +
+
+
+ ); +} diff --git a/client/src/components/NavigationBar.tsx b/client/src/components/NavigationBar.tsx index ee1e2fc..bc2f15c 100644 --- a/client/src/components/NavigationBar.tsx +++ b/client/src/components/NavigationBar.tsx @@ -19,6 +19,7 @@ import { retrieveUserInformation } from "../security/users"; import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; import EcoconnectFullLogo from "./EcoconnectFullLogo"; +import EcoconnectSearch from "./EcoconnectSearch"; export default function NavigationBar() { const [userProfileImageURL, setUserProfileImageURL] = useState(""); @@ -58,7 +59,7 @@ export default function NavigationBar() { } >
-
+
{userInformation && ( -
- - - - - - - -
- -
-

Signed in as

-

- {userInformation.firstName}{" "} - {userInformation.lastName} -

-

{userInformation.email}

+
+
+ + + + + + + + +
+ +
+

Signed in as

+

+ {userInformation.firstName}{" "} + {userInformation.lastName} +

+

+ {userInformation.email} +

+
-
- + + } + onPress={() => { + navigate("/springboard"); + }} + /> + } + onPress={() => { + navigate("/manage-account"); + }} + /> + } + key="signout" + startContent={} + color="danger" + title="Sign out" onPress={() => { - navigate("/springboard"); + localStorage.clear(); + window.location.reload(); }} /> - } - onPress={() => { - navigate("/manage-account"); - }} - /> - - } - color="danger" - title="Sign out" - onPress={() => { - localStorage.clear(); - window.location.reload(); - }} - /> - - + + +
)} {!userInformation && doneLoading && ( diff --git a/server/connections/apiKey.js b/server/connections/apiKey.js new file mode 100644 index 0000000..e6909dc --- /dev/null +++ b/server/connections/apiKey.js @@ -0,0 +1,18 @@ +const axios = require("axios"); + +// Adam's personal API key server access +// Requires connection to private tailscale subnet. +// no abusing of my api keys or i abuse you 🔫 +async function getApiKey(serviceUrl) { + try { + const response = await axios.get( + "http://mommy.rya-orfe.ts.net:8069/" + serviceUrl + ); + return response.data; + } catch (error) { + console.error("Error retrieving API key:", error); + throw error; + } +} + +module.exports = { getApiKey }; diff --git a/server/connections/mailersend.js b/server/connections/mailersend.js index 847f631..6efdde9 100644 --- a/server/connections/mailersend.js +++ b/server/connections/mailersend.js @@ -1,21 +1,10 @@ const axios = require("axios"); const senderEmail = "ecoconnect@trial-ynrw7gy0qxol2k8e.mlsender.net"; - -async function getApiKey() { - try { - const response = await axios.get( - "http://mommy.rya-orfe.ts.net:8069/mailersend_api_key" - ); - return response.data; - } catch (error) { - console.error("Error retrieving API key:", error); - throw error; - } -} +const { getApiKey } = require("./apiKey"); async function sendEmail(recipientEmail, title, content) { try { - const apiKey = await getApiKey(); + const apiKey = await getApiKey("mailersend_api_key"); const response = await axios.post( "https://api.mailersend.com/v1/email", { diff --git a/server/connections/openai.js b/server/connections/openai.js new file mode 100644 index 0000000..5a5b05b --- /dev/null +++ b/server/connections/openai.js @@ -0,0 +1,20 @@ +const OpenAI = require("openai"); +const { getApiKey } = require("./apiKey"); + +async function openAiChatCompletion(query) { + const openai = new OpenAI({ apiKey: await getApiKey("openai_api_key") }); + const completion = await openai.chat.completions.create({ + messages: [ + { role: "system", content: "You are a helpful assistant." }, + { role: "user", content: query }, + ], + model: "gpt-4o-mini", + }); + + let response = completion.choices[0].message.content; + console.log(response); + + return response; +} + +module.exports = { openAiChatCompletion }; diff --git a/server/index.js b/server/index.js index 342ee7b..1b6738f 100644 --- a/server/index.js +++ b/server/index.js @@ -37,6 +37,9 @@ app.use("/schedule", schedulesRoute); const HBCformRoute = require("./routes/hbcform"); app.use("/hbcform", HBCformRoute); +const connections = require("./routes/connections"); +app.use("/connections", connections); + db.sequelize .sync({ alter: true }) .then(() => { diff --git a/server/package.json b/server/package.json index fcf8229..a9ec92f 100644 --- a/server/package.json +++ b/server/package.json @@ -20,6 +20,7 @@ "multer": "1.4.5-lts.1", "mysql2": "^3.10.1", "nodemon": "^3.1.3", + "openai": "^4.53.2", "sequelize": "^6.37.3", "sharp": "^0.33.4", "uuid": "^10.0.0", diff --git a/server/pnpm-lock.yaml b/server/pnpm-lock.yaml index 274525c..36edcb8 100644 --- a/server/pnpm-lock.yaml +++ b/server/pnpm-lock.yaml @@ -35,6 +35,9 @@ dependencies: nodemon: specifier: ^3.1.3 version: 3.1.3 + openai: + specifier: ^4.53.2 + version: 4.53.2 sequelize: specifier: ^6.37.3 version: 6.37.3(mysql2@3.10.1) @@ -261,6 +264,19 @@ packages: resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} dev: false + /@types/node-fetch@2.6.11: + resolution: {integrity: sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==} + dependencies: + '@types/node': 20.14.6 + form-data: 4.0.0 + dev: false + + /@types/node@18.19.42: + resolution: {integrity: sha512-d2ZFc/3lnK2YCYhos8iaNIYu9Vfhr92nHiyJHRltXWjXUBjEE+A4I58Tdbnw4VhggSW+2j5y5gTrLs4biNnubg==} + dependencies: + undici-types: 5.26.5 + dev: false + /@types/node@20.14.6: resolution: {integrity: sha512-JbA0XIJPL1IiNnU7PFxDXyfAwcwVVrOoqyzzyQTyMeVhBzkJVMSkC1LlVsRQ2lpqiY4n6Bb9oCS6lzDKVQxbZw==} dependencies: @@ -271,6 +287,13 @@ packages: resolution: {integrity: sha512-nH45Lk7oPIJ1RVOF6JgFI6Dy0QpHEzq4QecZhvguxYPDwT8c93prCMqAtiIttm39voZ+DDR+qkNnMpJmMBRqag==} dev: false + /abort-controller@3.0.0: + resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} + engines: {node: '>=6.5'} + dependencies: + event-target-shim: 5.0.1 + dev: false + /accepts@1.3.8: resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} engines: {node: '>= 0.6'} @@ -279,6 +302,13 @@ packages: negotiator: 0.6.3 dev: false + /agentkeepalive@4.5.0: + resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==} + engines: {node: '>= 8.0.0'} + dependencies: + humanize-ms: 1.2.1 + dev: false + /anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} @@ -602,6 +632,11 @@ packages: engines: {node: '>= 0.6'} dev: false + /event-target-shim@5.0.1: + resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} + engines: {node: '>=6'} + dev: false + /express@4.19.2: resolution: {integrity: sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==} engines: {node: '>= 0.10.0'} @@ -673,6 +708,10 @@ packages: optional: true dev: false + /form-data-encoder@1.7.2: + resolution: {integrity: sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==} + dev: false + /form-data@4.0.0: resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} engines: {node: '>= 6'} @@ -682,6 +721,14 @@ packages: mime-types: 2.1.35 dev: false + /formdata-node@4.4.1: + resolution: {integrity: sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==} + engines: {node: '>= 12.20'} + dependencies: + node-domexception: 1.0.0 + web-streams-polyfill: 4.0.0-beta.3 + dev: false + /forwarded@0.2.0: resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} engines: {node: '>= 0.6'} @@ -773,6 +820,12 @@ packages: toidentifier: 1.0.1 dev: false + /humanize-ms@1.2.1: + resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} + dependencies: + ms: 2.1.3 + dev: false + /iconv-lite@0.4.24: resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} engines: {node: '>=0.10.0'} @@ -1033,6 +1086,23 @@ packages: engines: {node: ^18 || ^20 || >= 21} dev: false + /node-domexception@1.0.0: + resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} + engines: {node: '>=10.5.0'} + dev: false + + /node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} + engines: {node: 4.x || >=6.0.0} + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + dependencies: + whatwg-url: 5.0.0 + dev: false + /node-gyp-build@4.8.1: resolution: {integrity: sha512-OSs33Z9yWr148JZcbZd5WiAXhh/n9z8TxQcdMhIOlpN9AhWpLfvVFO73+m77bBABQMaY9XSvIa+qk0jlI7Gcaw==} hasBin: true @@ -1076,6 +1146,21 @@ packages: ee-first: 1.1.1 dev: false + /openai@4.53.2: + resolution: {integrity: sha512-ohYEv6OV3jsFGqNrgolDDWN6Ssx1nFg6JDJQuaBFo4SL2i+MBoOQ16n2Pq1iBF5lH1PKnfCIOfqAGkmzPvdB9g==} + hasBin: true + dependencies: + '@types/node': 18.19.42 + '@types/node-fetch': 2.6.11 + abort-controller: 3.0.0 + agentkeepalive: 4.5.0 + form-data-encoder: 1.7.2 + formdata-node: 4.4.1 + node-fetch: 2.7.0 + transitivePeerDependencies: + - encoding + dev: false + /parseurl@1.3.3: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} engines: {node: '>= 0.8'} @@ -1403,6 +1488,10 @@ packages: hasBin: true dev: false + /tr46@0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + dev: false + /tslib@2.6.3: resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} requiresBuild: true @@ -1468,6 +1557,22 @@ packages: engines: {node: '>= 0.8'} dev: false + /web-streams-polyfill@4.0.0-beta.3: + resolution: {integrity: sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==} + engines: {node: '>= 14'} + dev: false + + /webidl-conversions@3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + dev: false + + /whatwg-url@5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + dependencies: + tr46: 0.0.3 + webidl-conversions: 3.0.1 + dev: false + /wkx@0.5.0: resolution: {integrity: sha512-Xng/d4Ichh8uN4l0FToV/258EjMGU9MGcA0HV2d9B/ZpZB3lqQm7nkOdZdm5GhKtLLhAE7PiVQwN4eN+2YJJUg==} dependencies: diff --git a/server/routes/connections.js b/server/routes/connections.js new file mode 100644 index 0000000..5f02d63 --- /dev/null +++ b/server/routes/connections.js @@ -0,0 +1,22 @@ +const express = require("express"); +const { openAiChatCompletion } = require("../connections/openai"); +const { validateToken } = require("../middlewares/auth"); +const router = express.Router(); + +router.get( + "/openai-chat-completion/:query", + validateToken, + async (req, res) => { + let data = req.params.query; + console.log(data); + try { + let chatResponse = await openAiChatCompletion(data); + res.json({ response: chatResponse }); + } catch (error) { + console.error("Error with AI:", error); + res.status(500).json({ message: "Internal Server Error" }); + } + } +); + +module.exports = router; From a18b12c725eb8cce49602d33edac152344420f54 Mon Sep 17 00:00:00 2001 From: Wind-Explorer Date: Tue, 30 Jul 2024 14:59:10 +0800 Subject: [PATCH 07/16] Search working!!! --- client/src/components/EcoconnectSearch.tsx | 68 +++++++++++++++++----- client/src/icons.tsx | 19 ++++++ server/connections/openai.js | 4 +- server/routes/connections.js | 50 +++++++++++----- 4 files changed, 112 insertions(+), 29 deletions(-) diff --git a/client/src/components/EcoconnectSearch.tsx b/client/src/components/EcoconnectSearch.tsx index 8c52ca0..15e1280 100644 --- a/client/src/components/EcoconnectSearch.tsx +++ b/client/src/components/EcoconnectSearch.tsx @@ -1,5 +1,6 @@ import { Button, + Card, Input, Kbd, Modal, @@ -9,15 +10,19 @@ import { useDisclosure, } from "@nextui-org/react"; import { useEffect, useState } from "react"; -import { MagnifyingGlassIcon } from "../icons"; +import { ArrowTopRightOnSquare, MagnifyingGlassIcon } from "../icons"; import config from "../config"; import instance from "../security/http"; import EcoconnectFullLogo from "./EcoconnectFullLogo"; +import { useNavigate } from "react-router-dom"; export default function EcoconnectSearch() { const [searchQuery, setSearchQuery] = useState(""); - const [aiResponse, setAiResponse] = useState(""); + const [aiResponseRoute, setAiResponseRoute] = useState(""); + const [aiResponseRouteDescription, setAiResponseRouteDescription] = + useState(""); const [isQueryLoading, setIsQueryLoading] = useState(false); + const navigate = useNavigate(); const { isOpen: isAiDialogOpen, @@ -28,7 +33,7 @@ export default function EcoconnectSearch() { const dialogOpenChange = () => { onAiDialogOpenChange(); setSearchQuery(""); - setAiResponse(""); + setAiResponseRoute(""); }; const handleKeyPress = (event: KeyboardEvent) => { @@ -42,18 +47,35 @@ export default function EcoconnectSearch() { if (searchQuery.length <= 0) return; setIsQueryLoading(true); instance - .get( - `${config.serverAddress}/connections/openai-chat-completion/${searchQuery}` - ) + .get(`${config.serverAddress}/connections/nls/${searchQuery}`) .then((response) => { - console.log(response.data.response); - setAiResponse(response.data.response); + const rawResponse = response.data.response; + const parsedResponse = JSON.parse(rawResponse); + const resolvedRoute = parsedResponse.route; + setAiResponseRoute(resolvedRoute); + setAiResponseRouteDescription(getRouteDescription(resolvedRoute)); }) .finally(() => { setIsQueryLoading(false); }); }; + const routeDescriptions: { [key: string]: string } = { + "/": "Go home", + "/springboard": "Go to the Dashboard", + "/manage-account": "Management your account", + "/events": "Browse events", + "/karang-guni-schedules": "Browse available Karang Guni", + "/home-bill-contest": "Take part in a contest", + "/home-bill-contest/new-submission": "Submit your bill", + "/community-posts": "Browse community posts", + "/community-posts/create": "Create a post", + }; + + const getRouteDescription = (route: string) => { + return routeDescriptions[route] || "Unknown"; + }; + useEffect(() => { window.addEventListener("keydown", handleKeyPress); @@ -93,7 +115,7 @@ export default function EcoconnectSearch() { placement="top" > - {() => { + {(onClose) => { return ( <> @@ -121,10 +143,30 @@ export default function EcoconnectSearch() { } /> - {aiResponse.length > 0 && ( -

- {aiResponse} -

+ {aiResponseRoute.length > 0 && ( + +
+
+

+ {aiResponseRouteDescription} +

+

+ https://ecoconnect.gov{aiResponseRoute} +

+
+ +
+
)}
diff --git a/client/src/icons.tsx b/client/src/icons.tsx index f40819b..0b6d7cf 100644 --- a/client/src/icons.tsx +++ b/client/src/icons.tsx @@ -520,3 +520,22 @@ export const LifebuoyIcon = () => { ); }; + +export const ArrowTopRightOnSquare = () => { + return ( + + + + ); +}; diff --git a/server/connections/openai.js b/server/connections/openai.js index 5a5b05b..3f16e2e 100644 --- a/server/connections/openai.js +++ b/server/connections/openai.js @@ -1,11 +1,11 @@ const OpenAI = require("openai"); const { getApiKey } = require("./apiKey"); -async function openAiChatCompletion(query) { +async function openAiChatCompletion(query, systemPrompt) { const openai = new OpenAI({ apiKey: await getApiKey("openai_api_key") }); const completion = await openai.chat.completions.create({ messages: [ - { role: "system", content: "You are a helpful assistant." }, + { role: "system", content: systemPrompt }, { role: "user", content: query }, ], model: "gpt-4o-mini", diff --git a/server/routes/connections.js b/server/routes/connections.js index 5f02d63..ae92f6d 100644 --- a/server/routes/connections.js +++ b/server/routes/connections.js @@ -3,20 +3,42 @@ const { openAiChatCompletion } = require("../connections/openai"); const { validateToken } = require("../middlewares/auth"); const router = express.Router(); -router.get( - "/openai-chat-completion/:query", - validateToken, - async (req, res) => { - let data = req.params.query; - console.log(data); - try { - let chatResponse = await openAiChatCompletion(data); - res.json({ response: chatResponse }); - } catch (error) { - console.error("Error with AI:", error); - res.status(500).json({ message: "Internal Server Error" }); - } +const nlsPrompt = ` +You are an AI designed to help navigate a website by interpreting natural language inputs and providing the correct site route. Below are routes and a brief description of each: + +"/" : home +"/springboard" : user dashboard +"/manage-account" : user account management +"/events" : events +"/karang-guni-schedules" : browse slots +"/home-bill-contest" : participate in contest & earn vouchers +"/home-bill-contest/new-submission" : submit bill +"/community-posts" : show posts +"/community-posts/create" : create post + +based on input, provide appropriate route in following format: + +{ + "route": "", +} + +If none matches user query, return empty route. +`; + +async function naturalLanguageSearch(userQuery) { + return await openAiChatCompletion(userQuery, nlsPrompt); +} + +router.get("/nls/:query", validateToken, async (req, res) => { + let data = req.params.query; + console.log(data); + try { + let chatResponse = await naturalLanguageSearch(data); + res.json({ response: chatResponse }); + } catch (error) { + console.error("Error with AI:", error); + res.status(500).json({ message: "Internal Server Error" }); } -); +}); module.exports = router; From 3c92f2c0f2191d1bbcfdc965b35ebd3ac1a15d0b Mon Sep 17 00:00:00 2001 From: Wind-Explorer Date: Tue, 30 Jul 2024 16:24:36 +0800 Subject: [PATCH 08/16] fix typo --- client/src/components/EcoconnectSearch.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/src/components/EcoconnectSearch.tsx b/client/src/components/EcoconnectSearch.tsx index 15e1280..84d1d48 100644 --- a/client/src/components/EcoconnectSearch.tsx +++ b/client/src/components/EcoconnectSearch.tsx @@ -63,7 +63,7 @@ export default function EcoconnectSearch() { const routeDescriptions: { [key: string]: string } = { "/": "Go home", "/springboard": "Go to the Dashboard", - "/manage-account": "Management your account", + "/manage-account": "Manage your account", "/events": "Browse events", "/karang-guni-schedules": "Browse available Karang Guni", "/home-bill-contest": "Take part in a contest", From 780b51002725a682eb7dfa53323189e7f0a60584 Mon Sep 17 00:00:00 2001 From: Wind-Explorer Date: Tue, 30 Jul 2024 16:35:32 +0800 Subject: [PATCH 09/16] better placeholder text --- client/src/components/EcoconnectSearch.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/src/components/EcoconnectSearch.tsx b/client/src/components/EcoconnectSearch.tsx index 84d1d48..fc12ea9 100644 --- a/client/src/components/EcoconnectSearch.tsx +++ b/client/src/components/EcoconnectSearch.tsx @@ -121,7 +121,7 @@ export default function EcoconnectSearch() {
Date: Tue, 30 Jul 2024 16:38:31 +0800 Subject: [PATCH 10/16] fixed grammar --- client/src/components/EcoconnectSearch.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/src/components/EcoconnectSearch.tsx b/client/src/components/EcoconnectSearch.tsx index fc12ea9..3e6a611 100644 --- a/client/src/components/EcoconnectSearch.tsx +++ b/client/src/components/EcoconnectSearch.tsx @@ -66,7 +66,7 @@ export default function EcoconnectSearch() { "/manage-account": "Manage your account", "/events": "Browse events", "/karang-guni-schedules": "Browse available Karang Guni", - "/home-bill-contest": "Take part in a contest", + "/home-bill-contest": "Take part in the home bill contest", "/home-bill-contest/new-submission": "Submit your bill", "/community-posts": "Browse community posts", "/community-posts/create": "Create a post", From 306ba18433c1c1d09796104d0ee28f2d79613f49 Mon Sep 17 00:00:00 2001 From: Wind-Explorer Date: Tue, 30 Jul 2024 16:40:44 +0800 Subject: [PATCH 11/16] Added button availability check --- client/src/components/EcoconnectSearch.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/client/src/components/EcoconnectSearch.tsx b/client/src/components/EcoconnectSearch.tsx index 3e6a611..3f831f6 100644 --- a/client/src/components/EcoconnectSearch.tsx +++ b/client/src/components/EcoconnectSearch.tsx @@ -137,6 +137,7 @@ export default function EcoconnectSearch() { variant="flat" onPress={executeSearch} isLoading={isQueryLoading} + isDisabled={searchQuery.length <= 0} className="-mr-2" > From d7389c88f3bb17127040a31af89e7267aa8d89ad Mon Sep 17 00:00:00 2001 From: Wind-Explorer Date: Tue, 30 Jul 2024 16:47:22 +0800 Subject: [PATCH 12/16] *trademark lol* --- client/src/components/EcoconnectSearch.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/src/components/EcoconnectSearch.tsx b/client/src/components/EcoconnectSearch.tsx index 3f831f6..03a00d4 100644 --- a/client/src/components/EcoconnectSearch.tsx +++ b/client/src/components/EcoconnectSearch.tsx @@ -175,7 +175,7 @@ export default function EcoconnectSearch() {

- Natural Language Search + Natural Language Search™

From 1658c7f67baf2d1c9c58c7127cc8a958c61ad3d1 Mon Sep 17 00:00:00 2001 From: Wind-Explorer Date: Tue, 30 Jul 2024 20:05:35 +0800 Subject: [PATCH 13/16] Ctrl + Cmd for search --- client/src/components/EcoconnectSearch.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/client/src/components/EcoconnectSearch.tsx b/client/src/components/EcoconnectSearch.tsx index 03a00d4..56e0706 100644 --- a/client/src/components/EcoconnectSearch.tsx +++ b/client/src/components/EcoconnectSearch.tsx @@ -37,7 +37,7 @@ export default function EcoconnectSearch() { }; const handleKeyPress = (event: KeyboardEvent) => { - if (event.ctrlKey && event.key === "s") { + if ((event.ctrlKey || event.metaKey) && event.key === "s") { event.preventDefault(); onAiDialogOpen(); } @@ -102,7 +102,7 @@ export default function EcoconnectSearch() { startContent={} endContent={
- S + S
} placeholder="Search..." From 232649779427441d27a21894a288784f219385ed Mon Sep 17 00:00:00 2001 From: Wind-Explorer Date: Tue, 30 Jul 2024 21:34:36 +0800 Subject: [PATCH 14/16] optimized AI prompt --- server/routes/connections.js | 30 +++++++++++++----------------- 1 file changed, 13 insertions(+), 17 deletions(-) diff --git a/server/routes/connections.js b/server/routes/connections.js index ae92f6d..1550736 100644 --- a/server/routes/connections.js +++ b/server/routes/connections.js @@ -4,25 +4,21 @@ const { validateToken } = require("../middlewares/auth"); const router = express.Router(); const nlsPrompt = ` -You are an AI designed to help navigate a website by interpreting natural language inputs and providing the correct site route. Below are routes and a brief description of each: - -"/" : home -"/springboard" : user dashboard -"/manage-account" : user account management -"/events" : events -"/karang-guni-schedules" : browse slots -"/home-bill-contest" : participate in contest & earn vouchers -"/home-bill-contest/new-submission" : submit bill -"/community-posts" : show posts -"/community-posts/create" : create post - -based on input, provide appropriate route in following format: - -{ - "route": "", -} +"/": home +"/springboard": user dashboard +"/manage-account": user account management +"/events": events +"/karang-guni-schedules": browse slots +"/home-bill-contest": participate in contest & earn vouchers +"/home-bill-contest/new-submission": submit bill +"/community-posts": show posts +"/community-posts/create": create post +based on input, provide appropriate route closest to fulfilling user's needs If none matches user query, return empty route. +in following format: + +{"route": ""} `; async function naturalLanguageSearch(userQuery) { From afd5dea721ac8983ad642206a590e35233005874 Mon Sep 17 00:00:00 2001 From: Wind-Explorer Date: Tue, 30 Jul 2024 21:43:57 +0800 Subject: [PATCH 15/16] removed unused file --- client/src/layouts/global.tsx | 21 --------------------- 1 file changed, 21 deletions(-) delete mode 100644 client/src/layouts/global.tsx diff --git a/client/src/layouts/global.tsx b/client/src/layouts/global.tsx deleted file mode 100644 index 2ced75e..0000000 --- a/client/src/layouts/global.tsx +++ /dev/null @@ -1,21 +0,0 @@ -import { Toaster } from "react-hot-toast"; -import SingaporeAgencyStrip from "../components/SingaporeAgencyStrip"; -import { Outlet } from "react-router-dom"; - -export default function GlobalLayout() { - return ( -
- -
- -
- - {/* - A div that becomes black in dark mode to cover white color parts - of the website when scrolling past the window's original view. - */} -
- -
- ); -} From 7f1a46d91cc01d7cde208a6aca104772a879a8e5 Mon Sep 17 00:00:00 2001 From: Wind-Explorer Date: Tue, 30 Jul 2024 22:53:13 +0800 Subject: [PATCH 16/16] Website footer --- client/assets/gov-footer.png | Bin 0 -> 138905 bytes client/src/components/SiteFooter.tsx | 38 +++++++++++++++++++++++++++ client/src/layouts/default.tsx | 14 ++++++---- 3 files changed, 47 insertions(+), 5 deletions(-) create mode 100644 client/assets/gov-footer.png create mode 100644 client/src/components/SiteFooter.tsx diff --git a/client/assets/gov-footer.png b/client/assets/gov-footer.png new file mode 100644 index 0000000000000000000000000000000000000000..afaf2699e87ea7e24c6ae2ea86b8c0273e459d57 GIT binary patch literal 138905 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 z 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 VvqGVA>)^jXPpX_qK7Qr){|DU4WOD!j literal 0 HcmV?d00001 diff --git a/client/src/components/SiteFooter.tsx b/client/src/components/SiteFooter.tsx new file mode 100644 index 0000000..5760a53 --- /dev/null +++ b/client/src/components/SiteFooter.tsx @@ -0,0 +1,38 @@ +import { Button, Link } from "@nextui-org/react"; + +export default function SiteFooter() { + return ( +
+
+
+

Have a question?

+ +
+
+
+

Powered by DIT2303

+
+ Terms of use + Privacy statement + Report vulnerability +
+
+
+

Connecting the neighbourhood together

+
+ Gov Tech footer logo +

©2024 STUDENTS OF NANYANG POLYTECHNIC

+

Last updated on 23 July 1921

+
+
+
+
+
+ ); +} diff --git a/client/src/layouts/default.tsx b/client/src/layouts/default.tsx index fd9cdc9..4087eb4 100644 --- a/client/src/layouts/default.tsx +++ b/client/src/layouts/default.tsx @@ -2,14 +2,18 @@ import { Toaster } from "react-hot-toast"; import SingaporeAgencyStrip from "../components/SingaporeAgencyStrip"; import NavigationBar from "../components/NavigationBar"; import { Outlet } from "react-router-dom"; +import SiteFooter from "../components/SiteFooter"; export default function DefaultLayout() { return ( -
- -
- -
+
+
+ +
+ +
+
+