From bee5ae73652562248cf1679a48d7a1cb31d0c1ae Mon Sep 17 00:00:00 2001 From: EdwardLinS Date: Sun, 19 Jan 2025 16:24:02 -0800 Subject: [PATCH 01/17] Add tailwind setup --- frontend/src/global.css | 3 +++ frontend/src/pages/_app.tsx | 1 + 2 files changed, 4 insertions(+) create mode 100644 frontend/src/global.css diff --git a/frontend/src/global.css b/frontend/src/global.css new file mode 100644 index 0000000..bd6213e --- /dev/null +++ b/frontend/src/global.css @@ -0,0 +1,3 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; \ No newline at end of file diff --git a/frontend/src/pages/_app.tsx b/frontend/src/pages/_app.tsx index 44e9eb7..a87a052 100644 --- a/frontend/src/pages/_app.tsx +++ b/frontend/src/pages/_app.tsx @@ -1,4 +1,5 @@ import type { AppProps } from "next/app"; +import "../global.css" export default function MyApp({ Component, pageProps }: AppProps) { return ; From 8aecd0cc39958f9b62a0caa727e7274367500504 Mon Sep 17 00:00:00 2001 From: EdwardLinS Date: Sun, 19 Jan 2025 16:25:35 -0800 Subject: [PATCH 02/17] Add custom GolosText and Manrope fonts to config --- .../fonts/GolosText-VariableFont_wght.ttf | Bin 0 -> 177824 bytes .../public/fonts/Manrope-VariableFont_wght.ttf | Bin 0 -> 164936 bytes frontend/src/global.css | 16 +++++++++++++++- frontend/tailwind.config.ts | 6 +++++- 4 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 frontend/public/fonts/GolosText-VariableFont_wght.ttf create mode 100644 frontend/public/fonts/Manrope-VariableFont_wght.ttf diff --git a/frontend/public/fonts/GolosText-VariableFont_wght.ttf b/frontend/public/fonts/GolosText-VariableFont_wght.ttf new file mode 100644 index 0000000000000000000000000000000000000000..b68ea02663d8be3a0230c8caea7a366ee1c1d8b2 GIT binary patch literal 177824 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 W)KW6=2B8Y`2ZPUuANTTQAN_w|$by#u literal 0 HcmV?d00001 diff --git a/frontend/public/fonts/Manrope-VariableFont_wght.ttf b/frontend/public/fonts/Manrope-VariableFont_wght.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f39ca39c968c9d921b9c9e6e737ebdd2c1447a15 GIT binary patch literal 164936 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 M1-! literal 0 HcmV?d00001 diff --git a/frontend/src/global.css b/frontend/src/global.css index bd6213e..34e8a5d 100644 --- a/frontend/src/global.css +++ b/frontend/src/global.css @@ -1,3 +1,17 @@ @tailwind base; @tailwind components; -@tailwind utilities; \ No newline at end of file +@tailwind utilities; + +@font-face { + font-family: 'GolosText'; + src: url('../public/fonts/GolosText-VariableFont_wght.ttf') format('truetype'); + font-weight: 100 900; + font-style: normal; +} + +@font-face { + font-family: 'Manrope'; + src: url('../public/fonts/Manrope-VariableFont_wght.ttf') format('truetype'); + font-weight: 100 900; + font-style: normal; +} \ No newline at end of file diff --git a/frontend/tailwind.config.ts b/frontend/tailwind.config.ts index 109807b..2c1d1b7 100644 --- a/frontend/tailwind.config.ts +++ b/frontend/tailwind.config.ts @@ -4,7 +4,7 @@ export default { content: [ "./src/pages/**/*.{js,ts,jsx,tsx,mdx}", "./src/components/**/*.{js,ts,jsx,tsx,mdx}", - "./src/app/**/*.{js,ts,jsx,tsx,mdx}", + "./src/api/**/*.{js,ts,jsx,tsx,mdx}", ], theme: { extend: { @@ -12,6 +12,10 @@ export default { background: "var(--background)", foreground: "var(--foreground)", }, + fontFamily: { + golos: ['"GolosText"', 'sans-serif'], + manrope: ['"Manrope"', 'sans-serif'], + }, }, }, plugins: [], From 56186021107ba27c21116418f8a70c1748aae0df Mon Sep 17 00:00:00 2001 From: EdwardLinS Date: Sun, 19 Jan 2025 16:57:09 -0800 Subject: [PATCH 03/17] Create carousel card component --- frontend/public/icons/learn-more.svg | 3 ++ .../EventsCarousel/EventsCarouselCard.tsx | 40 +++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 frontend/public/icons/learn-more.svg create mode 100644 frontend/src/components/EventsCarousel/EventsCarouselCard.tsx diff --git a/frontend/public/icons/learn-more.svg b/frontend/public/icons/learn-more.svg new file mode 100644 index 0000000..b1e14bb --- /dev/null +++ b/frontend/public/icons/learn-more.svg @@ -0,0 +1,3 @@ + + + diff --git a/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx b/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx new file mode 100644 index 0000000..585f20e --- /dev/null +++ b/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx @@ -0,0 +1,40 @@ +import { StaticImport } from "next/dist/shared/lib/get-img-props"; +import Image from "next/image"; + +import learnMoreIcon from "@/../public/icons/learn-more.svg"; + +type Event = { + header: string; + dateCreated: string; + body: string; + thumbnail: string; + thumbnailAlt?: string; + learnMoreUrl: string; +}; + +type EventProps = { + event: Event; +}; + +export const EventsCarouselCard: React.FC = ({ event }) => { + return ( +

+ ); +}; From 8e95ddedf74a0c2932c060d9ad840a9c9efa5018 Mon Sep 17 00:00:00 2001 From: EdwardLinS Date: Sun, 19 Jan 2025 16:57:50 -0800 Subject: [PATCH 04/17] Create carousel container --- frontend/public/icons/left-arrow.svg | 3 + frontend/public/icons/right-arrow.svg | 3 + .../EventsCarousel/EventsCarousel.tsx | 95 +++++++++++++++++++ 3 files changed, 101 insertions(+) create mode 100644 frontend/public/icons/left-arrow.svg create mode 100644 frontend/public/icons/right-arrow.svg create mode 100644 frontend/src/components/EventsCarousel/EventsCarousel.tsx diff --git a/frontend/public/icons/left-arrow.svg b/frontend/public/icons/left-arrow.svg new file mode 100644 index 0000000..370b5d3 --- /dev/null +++ b/frontend/public/icons/left-arrow.svg @@ -0,0 +1,3 @@ + + + diff --git a/frontend/public/icons/right-arrow.svg b/frontend/public/icons/right-arrow.svg new file mode 100644 index 0000000..25bd78d --- /dev/null +++ b/frontend/public/icons/right-arrow.svg @@ -0,0 +1,3 @@ + + + diff --git a/frontend/src/components/EventsCarousel/EventsCarousel.tsx b/frontend/src/components/EventsCarousel/EventsCarousel.tsx new file mode 100644 index 0000000..85c673b --- /dev/null +++ b/frontend/src/components/EventsCarousel/EventsCarousel.tsx @@ -0,0 +1,95 @@ +import { StaticImport } from "next/dist/shared/lib/get-img-props"; +import Image from "next/image"; +import React, { useEffect, useRef, useState } from "react"; + +import { EventsCarouselCard } from "./EventsCarouselCard"; + +import leftArrow from "@/../public/icons/left-arrow.svg"; +import rightArrow from "@/../public/icons/right-arrow.svg"; + +type EventsCarouselProps = { + children?: + | React.ReactElement + | React.ReactElement[]; +}; + +export const EventsCarousel: React.FC = ({ children }) => { + const carouselRef = useRef(null); + + // Calculates amount for carousel to scroll + const [scrollAmount, setScrollAmount] = useState(0); + const updateScrollAmount = () => { + const carouselCard = carouselRef.current?.firstChild as HTMLElement; + if (carouselRef.current && carouselCard) { + const cardWidth = carouselCard.offsetWidth; + const carouselStlye = window.getComputedStyle(carouselRef.current); + + // parseInt removes the 'px' from the style values + const carouselGap = parseInt(carouselStlye.gap); + const carouselWidth = parseInt(carouselStlye.width); + + const totalCardWidth = cardWidth + carouselGap; + const numDisplayedCards = Math.floor(carouselWidth / totalCardWidth); + setScrollAmount(totalCardWidth * numDisplayedCards); + } + }; + + const numChildren = React.Children.count(children); + + // Get the scroll amount using the card width on mount and when the window changes size + useEffect(() => { + if (numChildren > 0) { + updateScrollAmount(); + window.addEventListener("resize", updateScrollAmount); + + return () => { + window.removeEventListener("resize", updateScrollAmount); + }; + } + }, []); + + // Scrolls the carousel a set amount + const scrollCarousel = (amount: number) => { + if (carouselRef.current) { + carouselRef.current.scrollBy({ + left: amount, + behavior: "smooth", + }); + } + }; + + const scrollleft = () => { + scrollCarousel(scrollAmount !== 0 ? -scrollAmount : -200); + }; + const scrollRight = () => { + scrollCarousel(scrollAmount !== 0 ? scrollAmount : 200); + }; + + const carouselFormat = numChildren > 0 ? "justify-center gap-1" : "justify-between h-96"; + + return ( +
+ Event carousel left arrow +
+ {children} +
+ Event carousel right arrow +
+ ); +}; From deb9a9c1afe78d451a3cf87edcf77cdfe80ce46f Mon Sep 17 00:00:00 2001 From: EdwardLinS Date: Sun, 19 Jan 2025 17:02:12 -0800 Subject: [PATCH 05/17] Add mobile responsiveness --- frontend/src/components/EventsCarousel/EventsCarouselCard.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx b/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx index 585f20e..081c4c4 100644 --- a/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx +++ b/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx @@ -20,7 +20,7 @@ export const EventsCarouselCard: React.FC = ({ event }) => { return (
From c5b63cfacb3955a2f7357dd15d3b71fa7d490835 Mon Sep 17 00:00:00 2001 From: EdwardLinS Date: Sun, 19 Jan 2025 17:20:41 -0800 Subject: [PATCH 06/17] Change img to Image to optimize loading --- frontend/src/components/EventsCarousel/EventsCarouselCard.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx b/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx index 081c4c4..713154f 100644 --- a/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx +++ b/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx @@ -25,7 +25,7 @@ export const EventsCarouselCard: React.FC = ({ event }) => { snap-normal snap-start" >
- {event.thumbnailAlt + {event.thumbnailAlt

{event.header}

{event.dateCreated}

{event.body}

From 7586aa5bc8e89e94aee5345ea071d8df083be1e9 Mon Sep 17 00:00:00 2001 From: EdwardLinS Date: Sun, 19 Jan 2025 17:21:22 -0800 Subject: [PATCH 07/17] Clean code format with formatter --- .../EventsCarousel/EventsCarousel.tsx | 132 +++++++++--------- frontend/src/global.css | 18 +-- frontend/src/pages/_app.tsx | 2 +- frontend/tailwind.config.ts | 4 +- 4 files changed, 78 insertions(+), 78 deletions(-) diff --git a/frontend/src/components/EventsCarousel/EventsCarousel.tsx b/frontend/src/components/EventsCarousel/EventsCarousel.tsx index 85c673b..7822eb6 100644 --- a/frontend/src/components/EventsCarousel/EventsCarousel.tsx +++ b/frontend/src/components/EventsCarousel/EventsCarousel.tsx @@ -8,88 +8,88 @@ import leftArrow from "@/../public/icons/left-arrow.svg"; import rightArrow from "@/../public/icons/right-arrow.svg"; type EventsCarouselProps = { - children?: + children?: | React.ReactElement | React.ReactElement[]; }; export const EventsCarousel: React.FC = ({ children }) => { - const carouselRef = useRef(null); + const carouselRef = useRef(null); - // Calculates amount for carousel to scroll - const [scrollAmount, setScrollAmount] = useState(0); - const updateScrollAmount = () => { - const carouselCard = carouselRef.current?.firstChild as HTMLElement; - if (carouselRef.current && carouselCard) { - const cardWidth = carouselCard.offsetWidth; - const carouselStlye = window.getComputedStyle(carouselRef.current); + // Calculates amount for carousel to scroll + const [scrollAmount, setScrollAmount] = useState(0); + const updateScrollAmount = () => { + const carouselCard = carouselRef.current?.firstChild as HTMLElement; + if (carouselRef.current && carouselCard) { + const cardWidth = carouselCard.offsetWidth; + const carouselStlye = window.getComputedStyle(carouselRef.current); - // parseInt removes the 'px' from the style values - const carouselGap = parseInt(carouselStlye.gap); - const carouselWidth = parseInt(carouselStlye.width); + // parseInt removes the 'px' from the style values + const carouselGap = parseInt(carouselStlye.gap); + const carouselWidth = parseInt(carouselStlye.width); - const totalCardWidth = cardWidth + carouselGap; - const numDisplayedCards = Math.floor(carouselWidth / totalCardWidth); - setScrollAmount(totalCardWidth * numDisplayedCards); - } - }; + const totalCardWidth = cardWidth + carouselGap; + const numDisplayedCards = Math.floor(carouselWidth / totalCardWidth); + setScrollAmount(totalCardWidth * numDisplayedCards); + } + }; - const numChildren = React.Children.count(children); + const numChildren = React.Children.count(children); - // Get the scroll amount using the card width on mount and when the window changes size - useEffect(() => { - if (numChildren > 0) { - updateScrollAmount(); - window.addEventListener("resize", updateScrollAmount); + // Get the scroll amount using the card width on mount and when the window changes size + useEffect(() => { + if (numChildren > 0) { + updateScrollAmount(); + window.addEventListener("resize", updateScrollAmount); - return () => { - window.removeEventListener("resize", updateScrollAmount); - }; - } - }, []); + return () => { + window.removeEventListener("resize", updateScrollAmount); + }; + } + }, []); - // Scrolls the carousel a set amount - const scrollCarousel = (amount: number) => { - if (carouselRef.current) { - carouselRef.current.scrollBy({ - left: amount, - behavior: "smooth", - }); - } - }; + // Scrolls the carousel a set amount + const scrollCarousel = (amount: number) => { + if (carouselRef.current) { + carouselRef.current.scrollBy({ + left: amount, + behavior: "smooth", + }); + } + }; - const scrollleft = () => { - scrollCarousel(scrollAmount !== 0 ? -scrollAmount : -200); - }; - const scrollRight = () => { - scrollCarousel(scrollAmount !== 0 ? scrollAmount : 200); - }; + const scrollleft = () => { + scrollCarousel(scrollAmount !== 0 ? -scrollAmount : -200); + }; + const scrollRight = () => { + scrollCarousel(scrollAmount !== 0 ? scrollAmount : 200); + }; - const carouselFormat = numChildren > 0 ? "justify-center gap-1" : "justify-between h-96"; + const carouselFormat = numChildren > 0 ? "justify-center gap-1" : "justify-between h-96"; - return ( -
- Event carousel left arrow -
+
- {children} -
- Event carousel right arrow -
- ); + > + {children} +
+ Event carousel right arrow +
+ ); }; diff --git a/frontend/src/global.css b/frontend/src/global.css index 34e8a5d..4e0655d 100644 --- a/frontend/src/global.css +++ b/frontend/src/global.css @@ -3,15 +3,15 @@ @tailwind utilities; @font-face { - font-family: 'GolosText'; - src: url('../public/fonts/GolosText-VariableFont_wght.ttf') format('truetype'); - font-weight: 100 900; - font-style: normal; + font-family: "GolosText"; + src: url("../public/fonts/GolosText-VariableFont_wght.ttf") format("truetype"); + font-weight: 100 900; + font-style: normal; } @font-face { - font-family: 'Manrope'; - src: url('../public/fonts/Manrope-VariableFont_wght.ttf') format('truetype'); - font-weight: 100 900; - font-style: normal; -} \ No newline at end of file + font-family: "Manrope"; + src: url("../public/fonts/Manrope-VariableFont_wght.ttf") format("truetype"); + font-weight: 100 900; + font-style: normal; +} diff --git a/frontend/src/pages/_app.tsx b/frontend/src/pages/_app.tsx index a87a052..19b0a81 100644 --- a/frontend/src/pages/_app.tsx +++ b/frontend/src/pages/_app.tsx @@ -1,5 +1,5 @@ import type { AppProps } from "next/app"; -import "../global.css" +import "../global.css"; export default function MyApp({ Component, pageProps }: AppProps) { return ; diff --git a/frontend/tailwind.config.ts b/frontend/tailwind.config.ts index 2c1d1b7..543f994 100644 --- a/frontend/tailwind.config.ts +++ b/frontend/tailwind.config.ts @@ -13,8 +13,8 @@ export default { foreground: "var(--foreground)", }, fontFamily: { - golos: ['"GolosText"', 'sans-serif'], - manrope: ['"Manrope"', 'sans-serif'], + golos: ['"GolosText"', "sans-serif"], + manrope: ['"Manrope"', "sans-serif"], }, }, }, From e1bc888c30357e680025579a429f671809d6c0ca Mon Sep 17 00:00:00 2001 From: EdwardLinS Date: Sun, 19 Jan 2025 17:29:46 -0800 Subject: [PATCH 08/17] Add comments to improve component readability --- .../src/components/EventsCarousel/EventsCarousel.tsx | 11 +++++++++++ .../components/EventsCarousel/EventsCarouselCard.tsx | 11 ++++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/frontend/src/components/EventsCarousel/EventsCarousel.tsx b/frontend/src/components/EventsCarousel/EventsCarousel.tsx index 7822eb6..250c151 100644 --- a/frontend/src/components/EventsCarousel/EventsCarousel.tsx +++ b/frontend/src/components/EventsCarousel/EventsCarousel.tsx @@ -13,6 +13,17 @@ type EventsCarouselProps = { | React.ReactElement[]; }; +/** + * Carousel to house news and events cards + * + * Example usage: + * + + + + + + */ export const EventsCarousel: React.FC = ({ children }) => { const carouselRef = useRef(null); diff --git a/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx b/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx index 713154f..60a290e 100644 --- a/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx +++ b/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx @@ -16,6 +16,9 @@ type EventProps = { event: Event; }; +/** + * Card to display event information in the EventsCarousel component + */ export const EventsCarouselCard: React.FC = ({ event }) => { return (
= ({ event }) => { snap-normal snap-start" >
- {event.thumbnailAlt + {event.thumbnailAlt

{event.header}

{event.dateCreated}

{event.body}

From a8eca02254cb3038cb067e74ddb8fd705e17ad74 Mon Sep 17 00:00:00 2001 From: EdwardLinS Date: Sun, 19 Jan 2025 17:39:42 -0800 Subject: [PATCH 09/17] Fix carousel button sizing on mobile --- .../EventsCarousel/EventsCarousel.tsx | 28 +++++++++++-------- 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/frontend/src/components/EventsCarousel/EventsCarousel.tsx b/frontend/src/components/EventsCarousel/EventsCarousel.tsx index 250c151..d56f327 100644 --- a/frontend/src/components/EventsCarousel/EventsCarousel.tsx +++ b/frontend/src/components/EventsCarousel/EventsCarousel.tsx @@ -80,12 +80,14 @@ export const EventsCarousel: React.FC = ({ children }) => { return (
- Event carousel left arrow +
+ Event carousel left arrow +
+
+ Event carousel right arrow +
); }; From af30aec57cd3685f1e98b6a9dea2346ad646709a Mon Sep 17 00:00:00 2001 From: EdwardLinS Date: Sun, 19 Jan 2025 18:02:32 -0800 Subject: [PATCH 10/17] Fix carousel button wrong position issue --- frontend/src/components/EventsCarousel/EventsCarousel.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/src/components/EventsCarousel/EventsCarousel.tsx b/frontend/src/components/EventsCarousel/EventsCarousel.tsx index d56f327..fd5c555 100644 --- a/frontend/src/components/EventsCarousel/EventsCarousel.tsx +++ b/frontend/src/components/EventsCarousel/EventsCarousel.tsx @@ -80,7 +80,7 @@ export const EventsCarousel: React.FC = ({ children }) => { return (
-
+
Event carousel left arrow = ({ children }) => { > {children}
-
+
Event carousel right arrow Date: Wed, 22 Jan 2025 16:23:05 -0800 Subject: [PATCH 11/17] Remove scrollbar from carousel --- .../src/components/EventsCarousel/EventsCarousel.tsx | 2 +- frontend/src/global.css | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/frontend/src/components/EventsCarousel/EventsCarousel.tsx b/frontend/src/components/EventsCarousel/EventsCarousel.tsx index fd5c555..ce4faa5 100644 --- a/frontend/src/components/EventsCarousel/EventsCarousel.tsx +++ b/frontend/src/components/EventsCarousel/EventsCarousel.tsx @@ -93,7 +93,7 @@ export const EventsCarousel: React.FC = ({ children }) => { className=" flex flex-row gap-5 mr-5 ml-5 - overflow-x-auto scroll-smooth snap-x snap-mandatory" + overflow-x-auto scroll-smooth snap-x snap-mandatory scrollbar-hidden" > {children}
diff --git a/frontend/src/global.css b/frontend/src/global.css index 4e0655d..f75e007 100644 --- a/frontend/src/global.css +++ b/frontend/src/global.css @@ -15,3 +15,14 @@ font-weight: 100 900; font-style: normal; } + +@layer utilities { + .scrollbar-hidden::-webkit-scrollbar { + display: none; + } + + .scrollbar-hidden { + scrollbar-width: none; + -ms-overflow-style: none; + } +} \ No newline at end of file From db985e3ac267f8791b7d0ab1a2f0390e769abb6c Mon Sep 17 00:00:00 2001 From: EdwardLinS Date: Wed, 22 Jan 2025 17:45:23 -0800 Subject: [PATCH 12/17] Make mobile size carousel arrows larger --- frontend/src/components/EventsCarousel/EventsCarousel.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/src/components/EventsCarousel/EventsCarousel.tsx b/frontend/src/components/EventsCarousel/EventsCarousel.tsx index ce4faa5..6358c1a 100644 --- a/frontend/src/components/EventsCarousel/EventsCarousel.tsx +++ b/frontend/src/components/EventsCarousel/EventsCarousel.tsx @@ -80,7 +80,7 @@ export const EventsCarousel: React.FC = ({ children }) => { return (
-
+
Event carousel left arrow = ({ children }) => { > {children}
-
+
Event carousel right arrow Date: Wed, 22 Jan 2025 17:46:17 -0800 Subject: [PATCH 13/17] Change viewbox size of card image to static --- .../EventsCarousel/EventsCarouselCard.tsx | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx b/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx index 60a290e..341b6c4 100644 --- a/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx +++ b/frontend/src/components/EventsCarousel/EventsCarouselCard.tsx @@ -27,14 +27,15 @@ export const EventsCarouselCard: React.FC = ({ event }) => { rounded-lg border border-gray-400 shadow-md snap-normal snap-start" > -
- {event.thumbnailAlt +
+
+ {event.thumbnailAlt +

{event.header}

{event.dateCreated}

{event.body}

From 204b0a2ec8a5155933fce927200e76a7f9f6193b Mon Sep 17 00:00:00 2001 From: EdwardLinS Date: Wed, 22 Jan 2025 17:54:22 -0800 Subject: [PATCH 14/17] Fix format of global css --- frontend/src/global.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/global.css b/frontend/src/global.css index f75e007..b942ae4 100644 --- a/frontend/src/global.css +++ b/frontend/src/global.css @@ -25,4 +25,4 @@ scrollbar-width: none; -ms-overflow-style: none; } -} \ No newline at end of file +} From 12a5dc97b44130dcf4427dba165e61c9e3ac7ffe Mon Sep 17 00:00:00 2001 From: EdwardLinS Date: Wed, 22 Jan 2025 18:23:52 -0800 Subject: [PATCH 15/17] Change arrow size to match design --- .../EventsCarousel/EventsCarousel.tsx | 34 ++++++++++--------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/frontend/src/components/EventsCarousel/EventsCarousel.tsx b/frontend/src/components/EventsCarousel/EventsCarousel.tsx index 6358c1a..a0d28b1 100644 --- a/frontend/src/components/EventsCarousel/EventsCarousel.tsx +++ b/frontend/src/components/EventsCarousel/EventsCarousel.tsx @@ -80,14 +80,15 @@ export const EventsCarousel: React.FC = ({ children }) => { return (
-
- Event carousel left arrow -
+ Event carousel left arrow
- Event carousel right arrow -
+ Event carousel right arrow
); }; From 6c709b48713fc838c643632087df14ec3332b577 Mon Sep 17 00:00:00 2001 From: NumaanFormoli Date: Wed, 29 Jan 2025 05:23:59 -0800 Subject: [PATCH 16/17] Added tse-constellations --- frontend/package-lock.json | 2767 ++++++++++++++++--- frontend/package.json | 1 + frontend/src/globals.css | 27 - frontend/src/pages/generalComponentTest.tsx | 229 +- 4 files changed, 2461 insertions(+), 563 deletions(-) delete mode 100644 frontend/src/globals.css diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 3c071ed..9293241 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -13,6 +13,7 @@ "react-dom": "^19.0.0" }, "devDependencies": { + "@tritonse/tse-constellation": "^0.0.8", "@types/node": "^20", "@types/react": "^18", "@types/react-dom": "^18", @@ -42,794 +43,2155 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@emnapi/runtime": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.3.1.tgz", - "integrity": "sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==", + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "dev": true, "license": "MIT", - "optional": true, "dependencies": { - "tslib": "^2.4.0" + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz", - "integrity": "sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==", + "node_modules/@babel/compat-data": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.5.tgz", + "integrity": "sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.26.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.7.tgz", + "integrity": "sha512-SRijHmF0PSPgLIBYlWnG0hyeJLwXE2CgpsXaMOrtt2yp9/86ALw6oUlj9KYuZ0JN07T4eBMVIW4li/9S1j2BGA==", "dev": true, "license": "MIT", "dependencies": { - "eslint-visitor-keys": "^3.4.3" + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.5", + "@babel/helper-compilation-targets": "^7.26.5", + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helpers": "^7.26.7", + "@babel/parser": "^7.26.7", + "@babel/template": "^7.25.9", + "@babel/traverse": "^7.26.7", + "@babel/types": "^7.26.7", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=6.9.0" }, "funding": { - "url": "https://opencollective.com/eslint" + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.5.tgz", + "integrity": "sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.26.5", + "@babel/types": "^7.26.5", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.26.5.tgz", + "integrity": "sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.26.5", + "@babel/helper-validator-option": "^7.25.9", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + "@babel/core": "^7.0.0" } }, - "node_modules/@eslint-community/regexpp": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", - "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", "dev": true, "license": "MIT", "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", - "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.26.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.7.tgz", + "integrity": "sha512-8NHiL98vsi0mbPQmYAGWwfcFaOy4j2HY49fXJCfuDcdE7fMIsH9a7GdaeXpIBsbT7307WU8KCMp5pUVDNL4f9A==", "dev": true, "license": "MIT", "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" + "@babel/template": "^7.25.9", + "@babel/types": "^7.26.7" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.26.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.7.tgz", + "integrity": "sha512-kEvgGGgEjRUutvdVvZhbn/BxVt+5VSpwXz1j3WYXQbXDo8KzFOPNG2GQbdAiNq8g6wn1yKk7C/qrke03a84V+w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.26.7" }, - "funding": { - "url": "https://opencollective.com/eslint" + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/@eslint/js": { - "version": "8.57.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", - "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", + "node_modules/@babel/template": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.9.tgz", + "integrity": "sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==", "dev": true, "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.25.9", + "@babel/parser": "^7.25.9", + "@babel/types": "^7.25.9" + }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", - "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", - "deprecated": "Use @eslint/config-array instead", + "node_modules/@babel/traverse": { + "version": "7.26.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.7.tgz", + "integrity": "sha512-1x1sgeyRLC3r5fQOM0/xtQKsYjyxmFjaOrLJNtZ81inNjyJHGIolTULPiSc/2qe1/qfpFLisLQYFnnZl7QoedA==", "dev": true, - "license": "Apache-2.0", + "license": "MIT", "dependencies": { - "@humanwhocodes/object-schema": "^2.0.3", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.5", + "@babel/parser": "^7.26.7", + "@babel/template": "^7.25.9", + "@babel/types": "^7.26.7", "debug": "^4.3.1", - "minimatch": "^3.0.5" + "globals": "^11.1.0" }, "engines": { - "node": ">=10.10.0" + "node": ">=6.9.0" } }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true, - "license": "Apache-2.0", + "license": "MIT", "engines": { - "node": ">=12.22" + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.26.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.7.tgz", + "integrity": "sha512-t8kDRGrKXyp6+tjUh7hw2RLyclsW4TRoRvRHtSyAX9Bb5ldlFh+90YAYY6awRXrlB4G5G2izNeGySpATlFzmOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", - "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", - "deprecated": "Use @eslint/object-schema instead", + "node_modules/@cubedoodl/react-simple-scheduler": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@cubedoodl/react-simple-scheduler/-/react-simple-scheduler-1.3.3.tgz", + "integrity": "sha512-OD9dzF96vJIQGef/7mqfxfIGArALskGpLkLg7BCqWwJ97P+mpnPnznxCRPbFf2bZt3sTwt1c9v5rvuQ/iMZ1dw==", "dev": true, - "license": "BSD-3-Clause" + "license": "MIT", + "peerDependencies": { + "react": "^18.2.0" + } }, - "node_modules/@img/sharp-darwin-arm64": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.5.tgz", - "integrity": "sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==", + "node_modules/@emnapi/runtime": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.3.1.tgz", + "integrity": "sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==", + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz", + "integrity": "sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==", "cpu": [ - "arm64" + "ppc64" ], - "license": "Apache-2.0", + "dev": true, + "license": "MIT", "optional": true, "os": [ - "darwin" + "aix" ], + "peer": true, "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-darwin-arm64": "1.0.4" + "node": ">=18" } }, - "node_modules/@img/sharp-darwin-x64": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.5.tgz", - "integrity": "sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==", + "node_modules/@esbuild/android-arm": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.2.tgz", + "integrity": "sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==", "cpu": [ - "x64" + "arm" ], - "license": "Apache-2.0", + "dev": true, + "license": "MIT", "optional": true, "os": [ - "darwin" + "android" ], + "peer": true, "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-darwin-x64": "1.0.4" + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-darwin-arm64": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.4.tgz", - "integrity": "sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==", + "node_modules/@esbuild/android-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.2.tgz", + "integrity": "sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==", "cpu": [ "arm64" ], - "license": "LGPL-3.0-or-later", + "dev": true, + "license": "MIT", "optional": true, "os": [ - "darwin" + "android" ], - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "engines": { + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-darwin-x64": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.4.tgz", - "integrity": "sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==", + "node_modules/@esbuild/android-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.2.tgz", + "integrity": "sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==", "cpu": [ "x64" ], - "license": "LGPL-3.0-or-later", + "dev": true, + "license": "MIT", "optional": true, "os": [ - "darwin" + "android" ], - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "engines": { + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-linux-arm": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.5.tgz", - "integrity": "sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==", + "node_modules/@esbuild/darwin-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.2.tgz", + "integrity": "sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==", "cpu": [ - "arm" + "arm64" ], - "license": "LGPL-3.0-or-later", + "dev": true, + "license": "MIT", "optional": true, "os": [ - "linux" + "darwin" ], - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "engines": { + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-linux-arm64": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.4.tgz", - "integrity": "sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==", + "node_modules/@esbuild/darwin-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.2.tgz", + "integrity": "sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==", "cpu": [ - "arm64" + "x64" ], - "license": "LGPL-3.0-or-later", + "dev": true, + "license": "MIT", "optional": true, "os": [ - "linux" + "darwin" ], - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "engines": { + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-linux-s390x": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.4.tgz", - "integrity": "sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==", + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.2.tgz", + "integrity": "sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==", "cpu": [ - "s390x" + "arm64" ], - "license": "LGPL-3.0-or-later", + "dev": true, + "license": "MIT", "optional": true, "os": [ - "linux" + "freebsd" ], - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "engines": { + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-linux-x64": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.4.tgz", - "integrity": "sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==", + "node_modules/@esbuild/freebsd-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.2.tgz", + "integrity": "sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==", "cpu": [ "x64" ], - "license": "LGPL-3.0-or-later", + "dev": true, + "license": "MIT", "optional": true, "os": [ - "linux" + "freebsd" ], - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "engines": { + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-linuxmusl-arm64": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.4.tgz", - "integrity": "sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==", + "node_modules/@esbuild/linux-arm": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.2.tgz", + "integrity": "sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==", "cpu": [ - "arm64" + "arm" ], - "license": "LGPL-3.0-or-later", + "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ], - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "engines": { + "node": ">=18" } }, - "node_modules/@img/sharp-libvips-linuxmusl-x64": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.4.tgz", - "integrity": "sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==", + "node_modules/@esbuild/linux-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.2.tgz", + "integrity": "sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==", "cpu": [ - "x64" + "arm64" ], - "license": "LGPL-3.0-or-later", + "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ], - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "engines": { + "node": ">=18" } }, - "node_modules/@img/sharp-linux-arm": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.5.tgz", - "integrity": "sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==", + "node_modules/@esbuild/linux-ia32": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.2.tgz", + "integrity": "sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==", "cpu": [ - "arm" + "ia32" ], - "license": "Apache-2.0", + "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ], + "peer": true, "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-arm": "1.0.5" + "node": ">=18" } }, - "node_modules/@img/sharp-linux-arm64": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.5.tgz", - "integrity": "sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==", + "node_modules/@esbuild/linux-loong64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.2.tgz", + "integrity": "sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==", "cpu": [ - "arm64" + "loong64" ], - "license": "Apache-2.0", + "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ], + "peer": true, "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-arm64": "1.0.4" + "node": ">=18" } }, - "node_modules/@img/sharp-linux-s390x": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.5.tgz", - "integrity": "sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==", + "node_modules/@esbuild/linux-mips64el": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.2.tgz", + "integrity": "sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==", "cpu": [ - "s390x" + "mips64el" ], - "license": "Apache-2.0", + "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ], + "peer": true, "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-s390x": "1.0.4" + "node": ">=18" } }, - "node_modules/@img/sharp-linux-x64": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.5.tgz", - "integrity": "sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==", + "node_modules/@esbuild/linux-ppc64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.2.tgz", + "integrity": "sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==", "cpu": [ - "x64" + "ppc64" ], - "license": "Apache-2.0", + "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ], + "peer": true, "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-x64": "1.0.4" + "node": ">=18" } }, - "node_modules/@img/sharp-linuxmusl-arm64": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.5.tgz", - "integrity": "sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==", + "node_modules/@esbuild/linux-riscv64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.2.tgz", + "integrity": "sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==", "cpu": [ - "arm64" + "riscv64" ], - "license": "Apache-2.0", + "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ], + "peer": true, "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-arm64": "1.0.4" + "node": ">=18" } }, - "node_modules/@img/sharp-linuxmusl-x64": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.5.tgz", - "integrity": "sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==", + "node_modules/@esbuild/linux-s390x": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.2.tgz", + "integrity": "sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==", "cpu": [ - "x64" + "s390x" ], - "license": "Apache-2.0", + "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ], + "peer": true, "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-x64": "1.0.4" + "node": ">=18" } }, - "node_modules/@img/sharp-wasm32": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.5.tgz", - "integrity": "sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==", + "node_modules/@esbuild/linux-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.2.tgz", + "integrity": "sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==", "cpu": [ - "wasm32" + "x64" ], - "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT", + "dev": true, + "license": "MIT", "optional": true, - "dependencies": { - "@emnapi/runtime": "^1.2.0" - }, + "os": [ + "linux" + ], + "peer": true, "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=18" } }, - "node_modules/@img/sharp-win32-ia32": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.5.tgz", - "integrity": "sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==", + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.24.2.tgz", + "integrity": "sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==", "cpu": [ - "ia32" + "arm64" ], - "license": "Apache-2.0 AND LGPL-3.0-or-later", + "dev": true, + "license": "MIT", "optional": true, "os": [ - "win32" + "netbsd" ], + "peer": true, "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=18" } }, - "node_modules/@img/sharp-win32-x64": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.5.tgz", - "integrity": "sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==", + "node_modules/@esbuild/netbsd-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.2.tgz", + "integrity": "sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==", "cpu": [ "x64" ], - "license": "Apache-2.0 AND LGPL-3.0-or-later", + "dev": true, + "license": "MIT", "optional": true, "os": [ - "win32" + "netbsd" ], + "peer": true, "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=18" } }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.2.tgz", + "integrity": "sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==", + "cpu": [ + "arm64" + ], "dev": true, - "license": "ISC", - "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "peer": true, "engines": { - "node": ">=12" + "node": ">=18" } }, - "node_modules/@isaacs/cliui/node_modules/ansi-regex": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", - "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "node_modules/@esbuild/openbsd-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.2.tgz", + "integrity": "sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "peer": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" + "node": ">=18" } }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "node_modules/@esbuild/sunos-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.2.tgz", + "integrity": "sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.2.tgz", + "integrity": "sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.2.tgz", + "integrity": "sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.2.tgz", + "integrity": "sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz", + "integrity": "sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==", "dev": true, "license": "MIT", "dependencies": { - "ansi-regex": "^6.0.1" + "eslint-visitor-keys": "^3.4.3" }, "engines": { - "node": ">=12" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "node_modules/@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, "license": "MIT", "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": ">=6.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "node_modules/@eslint/js": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", "dev": true, "license": "MIT", "engines": { - "node": ">=6.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "node_modules/@floating-ui/core": { + "version": "1.6.9", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.9.tgz", + "integrity": "sha512-uMXCuQ3BItDUbAMhIXw7UPXRfAlOAvZzdK9BWpE60MCn+Svt3aLn9jsPTi/WNGlRUu2uI0v5S7JiIUsbsvh3fw==", "dev": true, "license": "MIT", - "engines": { - "node": ">=6.0.0" + "dependencies": { + "@floating-ui/utils": "^0.2.9" } }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", - "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "node_modules/@floating-ui/dom": { + "version": "1.6.13", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.13.tgz", + "integrity": "sha512-umqzocjDgNRGTuO7Q8CU32dkHkECqI8ZdMZ5Swb6QAM0t5rnlrN3lGo1hdpscRd3WS8T6DKYK4ephgIH9iRh3w==", "dev": true, - "license": "MIT" + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.6.0", + "@floating-ui/utils": "^0.2.9" + } }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "node_modules/@floating-ui/react": { + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@floating-ui/react/-/react-0.27.3.tgz", + "integrity": "sha512-CLHnes3ixIFFKVQDdICjel8muhFLOBdQH7fgtHNPY8UbCNqbeKZ262G7K66lGQOUQWWnYocf7ZbUsLJgGfsLHg==", "dev": true, "license": "MIT", "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" + "@floating-ui/react-dom": "^2.1.2", + "@floating-ui/utils": "^0.2.9", + "tabbable": "^6.0.0" + }, + "peerDependencies": { + "react": ">=17.0.0", + "react-dom": ">=17.0.0" } }, - "node_modules/@next/env": { - "version": "15.1.6", - "resolved": "https://registry.npmjs.org/@next/env/-/env-15.1.6.tgz", - "integrity": "sha512-d9AFQVPEYNr+aqokIiPLNK/MTyt3DWa/dpKveiAaVccUadFbhFEvY6FXYX2LJO2Hv7PHnLBu2oWwB4uBuHjr/w==", + "node_modules/@floating-ui/react-dom": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.2.tgz", + "integrity": "sha512-06okr5cgPzMNBy+Ycse2A6udMi4bqwW/zgBF/rwjcNqWkyr82Mcg8b0vjX8OJpZFy/FKjJmw6wV7t44kK6kW7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "^1.0.0" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.9.tgz", + "integrity": "sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==", + "dev": true, "license": "MIT" }, - "node_modules/@next/eslint-plugin-next": { - "version": "15.0.3", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-15.0.3.tgz", - "integrity": "sha512-3Ln/nHq2V+v8uIaxCR6YfYo7ceRgZNXfTd3yW1ukTaFbO+/I8jNakrjYWODvG9BuR2v5kgVtH/C8r0i11quOgw==", + "node_modules/@humanwhocodes/config-array": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", + "deprecated": "Use @eslint/config-array instead", "dev": true, - "license": "MIT", + "license": "Apache-2.0", "dependencies": { - "fast-glob": "3.3.1" + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" } }, - "node_modules/@next/swc-darwin-arm64": { - "version": "15.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.1.6.tgz", - "integrity": "sha512-u7lg4Mpl9qWpKgy6NzEkz/w0/keEHtOybmIl0ykgItBxEM5mYotS5PmqTpo+Rhg8FiOiWgwr8USxmKQkqLBCrw==", + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@img/sharp-darwin-arm64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.5.tgz", + "integrity": "sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==", "cpu": [ "arm64" ], - "license": "MIT", + "license": "Apache-2.0", "optional": true, "os": [ "darwin" ], "engines": { - "node": ">= 10" + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-arm64": "1.0.4" } }, - "node_modules/@next/swc-darwin-x64": { - "version": "15.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-15.1.6.tgz", - "integrity": "sha512-x1jGpbHbZoZ69nRuogGL2MYPLqohlhnT9OCU6E6QFewwup+z+M6r8oU47BTeJcWsF2sdBahp5cKiAcDbwwK/lg==", + "node_modules/@img/sharp-darwin-x64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.5.tgz", + "integrity": "sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==", "cpu": [ "x64" ], - "license": "MIT", + "license": "Apache-2.0", "optional": true, "os": [ "darwin" ], "engines": { - "node": ">= 10" + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-x64": "1.0.4" } }, - "node_modules/@next/swc-linux-arm64-gnu": { - "version": "15.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.1.6.tgz", - "integrity": "sha512-jar9sFw0XewXsBzPf9runGzoivajeWJUc/JkfbLTC4it9EhU8v7tCRLH7l5Y1ReTMN6zKJO0kKAGqDk8YSO2bg==", + "node_modules/@img/sharp-libvips-darwin-arm64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.4.tgz", + "integrity": "sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==", "cpu": [ "arm64" ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-darwin-x64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.4.tgz", + "integrity": "sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==", + "cpu": [ + "x64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.5.tgz", + "integrity": "sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==", + "cpu": [ + "arm" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.4.tgz", + "integrity": "sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==", + "cpu": [ + "arm64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-s390x": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.4.tgz", + "integrity": "sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==", + "cpu": [ + "s390x" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-x64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.4.tgz", + "integrity": "sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==", + "cpu": [ + "x64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-arm64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.4.tgz", + "integrity": "sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==", + "cpu": [ + "arm64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-x64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.4.tgz", + "integrity": "sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==", + "cpu": [ + "x64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-linux-arm": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.5.tgz", + "integrity": "sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==", + "cpu": [ + "arm" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm": "1.0.5" + } + }, + "node_modules/@img/sharp-linux-arm64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.5.tgz", + "integrity": "sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm64": "1.0.4" + } + }, + "node_modules/@img/sharp-linux-s390x": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.5.tgz", + "integrity": "sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==", + "cpu": [ + "s390x" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-s390x": "1.0.4" + } + }, + "node_modules/@img/sharp-linux-x64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.5.tgz", + "integrity": "sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-x64": "1.0.4" + } + }, + "node_modules/@img/sharp-linuxmusl-arm64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.5.tgz", + "integrity": "sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-arm64": "1.0.4" + } + }, + "node_modules/@img/sharp-linuxmusl-x64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.5.tgz", + "integrity": "sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-x64": "1.0.4" + } + }, + "node_modules/@img/sharp-wasm32": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.5.tgz", + "integrity": "sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==", + "cpu": [ + "wasm32" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT", + "optional": true, + "dependencies": { + "@emnapi/runtime": "^1.2.0" + }, + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-ia32": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.5.tgz", + "integrity": "sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==", + "cpu": [ + "ia32" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-x64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.5.tgz", + "integrity": "sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@next/env": { + "version": "15.1.6", + "resolved": "https://registry.npmjs.org/@next/env/-/env-15.1.6.tgz", + "integrity": "sha512-d9AFQVPEYNr+aqokIiPLNK/MTyt3DWa/dpKveiAaVccUadFbhFEvY6FXYX2LJO2Hv7PHnLBu2oWwB4uBuHjr/w==", + "license": "MIT" + }, + "node_modules/@next/eslint-plugin-next": { + "version": "15.0.3", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-15.0.3.tgz", + "integrity": "sha512-3Ln/nHq2V+v8uIaxCR6YfYo7ceRgZNXfTd3yW1ukTaFbO+/I8jNakrjYWODvG9BuR2v5kgVtH/C8r0i11quOgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-glob": "3.3.1" + } + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "15.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.1.6.tgz", + "integrity": "sha512-u7lg4Mpl9qWpKgy6NzEkz/w0/keEHtOybmIl0ykgItBxEM5mYotS5PmqTpo+Rhg8FiOiWgwr8USxmKQkqLBCrw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "15.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-15.1.6.tgz", + "integrity": "sha512-x1jGpbHbZoZ69nRuogGL2MYPLqohlhnT9OCU6E6QFewwup+z+M6r8oU47BTeJcWsF2sdBahp5cKiAcDbwwK/lg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "15.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.1.6.tgz", + "integrity": "sha512-jar9sFw0XewXsBzPf9runGzoivajeWJUc/JkfbLTC4it9EhU8v7tCRLH7l5Y1ReTMN6zKJO0kKAGqDk8YSO2bg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "15.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.1.6.tgz", + "integrity": "sha512-+n3u//bfsrIaZch4cgOJ3tXCTbSxz0s6brJtU3SzLOvkJlPQMJ+eHVRi6qM2kKKKLuMY+tcau8XD9CJ1OjeSQQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "15.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.1.6.tgz", + "integrity": "sha512-SpuDEXixM3PycniL4iVCLyUyvcl6Lt0mtv3am08sucskpG0tYkW1KlRhTgj4LI5ehyxriVVcfdoxuuP8csi3kQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "15.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.1.6.tgz", + "integrity": "sha512-L4druWmdFSZIIRhF+G60API5sFB7suTbDRhYWSjiw0RbE+15igQvE2g2+S973pMGvwN3guw7cJUjA/TmbPWTHQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "15.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.1.6.tgz", + "integrity": "sha512-s8w6EeqNmi6gdvM19tqKKWbCyOBvXFbndkGHl+c9YrzsLARRdCHsD9S1fMj8gsXm9v8vhC8s3N8rjuC/XrtkEg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-x64-msvc": { + "version": "15.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.1.6.tgz", + "integrity": "sha512-6xomMuu54FAFxttYr5PJbEfu96godcxBTRk1OhAvJq0/EnmFU/Ybiax30Snis4vdWZ9LGpf7Roy5fSs7v/5ROQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nolyfill/is-core-module": { + "version": "1.0.39", + "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz", + "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.4.0" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz", + "integrity": "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils/node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.32.0.tgz", + "integrity": "sha512-G2fUQQANtBPsNwiVFg4zKiPQyjVKZCUdQUol53R8E71J7AsheRMV/Yv/nB8giOcOVqP7//eB5xPqieBYZe9bGg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "peer": true + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.32.0.tgz", + "integrity": "sha512-qhFwQ+ljoymC+j5lXRv8DlaJYY/+8vyvYmVx074zrLsu5ZGWYsJNLjPPVJJjhZQpyAKUGPydOq9hRLLNvh1s3A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "peer": true + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.32.0.tgz", + "integrity": "sha512-44n/X3lAlWsEY6vF8CzgCx+LQaoqWGN7TzUfbJDiTIOjJm4+L2Yq+r5a8ytQRGyPqgJDs3Rgyo8eVL7n9iW6AQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "peer": true + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.32.0.tgz", + "integrity": "sha512-F9ct0+ZX5Np6+ZDztxiGCIvlCaW87HBdHcozUfsHnj1WCUTBUubAoanhHUfnUHZABlElyRikI0mgcw/qdEm2VQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "peer": true + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.32.0.tgz", + "integrity": "sha512-JpsGxLBB2EFXBsTLHfkZDsXSpSmKD3VxXCgBQtlPcuAqB8TlqtLcbeMhxXQkCDv1avgwNjF8uEIbq5p+Cee0PA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "peer": true + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.32.0.tgz", + "integrity": "sha512-wegiyBT6rawdpvnD9lmbOpx5Sph+yVZKHbhnSP9MqUEDX08G4UzMU+D87jrazGE7lRSyTRs6NEYHtzfkJ3FjjQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.32.0.tgz", + "integrity": "sha512-3pA7xecItbgOs1A5H58dDvOUEboG5UfpTq3WzAdF54acBbUM+olDJAPkgj1GRJ4ZqE12DZ9/hNS2QZk166v92A==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.32.0.tgz", + "integrity": "sha512-Y7XUZEVISGyge51QbYyYAEHwpGgmRrAxQXO3siyYo2kmaj72USSG8LtlQQgAtlGfxYiOwu+2BdbPjzEpcOpRmQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.32.0.tgz", + "integrity": "sha512-r7/OTF5MqeBrZo5omPXcTnjvv1GsrdH8a8RerARvDFiDwFpDVDnJyByYM/nX+mvks8XXsgPUxkwe/ltaX2VH7w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.32.0.tgz", + "integrity": "sha512-HJbifC9vex9NqnlodV2BHVFNuzKL5OnsV2dvTw6e1dpZKkNjPG6WUq+nhEYV6Hv2Bv++BXkwcyoGlXnPrjAKXw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.32.0.tgz", + "integrity": "sha512-VAEzZTD63YglFlWwRj3taofmkV1V3xhebDXffon7msNz4b14xKsz7utO6F8F4cqt8K/ktTl9rm88yryvDpsfOw==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.32.0.tgz", + "integrity": "sha512-Sts5DST1jXAc9YH/iik1C9QRsLcCoOScf3dfbY5i4kH9RJpKxiTBXqm7qU5O6zTXBTEZry69bGszr3SMgYmMcQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.32.0.tgz", + "integrity": "sha512-qhlXeV9AqxIyY9/R1h1hBD6eMvQCO34ZmdYvry/K+/MBs6d1nRFLm6BOiITLVI+nFAAB9kUB6sdJRKyVHXnqZw==", + "cpu": [ + "riscv64" + ], + "dev": true, "license": "MIT", "optional": true, "os": [ "linux" ], - "engines": { - "node": ">= 10" - } + "peer": true }, - "node_modules/@next/swc-linux-arm64-musl": { - "version": "15.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.1.6.tgz", - "integrity": "sha512-+n3u//bfsrIaZch4cgOJ3tXCTbSxz0s6brJtU3SzLOvkJlPQMJ+eHVRi6qM2kKKKLuMY+tcau8XD9CJ1OjeSQQ==", + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.32.0.tgz", + "integrity": "sha512-8ZGN7ExnV0qjXa155Rsfi6H8M4iBBwNLBM9lcVS+4NcSzOFaNqmt7djlox8pN1lWrRPMRRQ8NeDlozIGx3Omsw==", "cpu": [ - "arm64" + "s390x" ], + "dev": true, "license": "MIT", "optional": true, "os": [ "linux" ], - "engines": { - "node": ">= 10" - } + "peer": true }, - "node_modules/@next/swc-linux-x64-gnu": { - "version": "15.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.1.6.tgz", - "integrity": "sha512-SpuDEXixM3PycniL4iVCLyUyvcl6Lt0mtv3am08sucskpG0tYkW1KlRhTgj4LI5ehyxriVVcfdoxuuP8csi3kQ==", + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.32.0.tgz", + "integrity": "sha512-VDzNHtLLI5s7xd/VubyS10mq6TxvZBp+4NRWoW+Hi3tgV05RtVm4qK99+dClwTN1McA6PHwob6DEJ6PlXbY83A==", "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ "linux" ], - "engines": { - "node": ">= 10" - } + "peer": true }, - "node_modules/@next/swc-linux-x64-musl": { - "version": "15.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.1.6.tgz", - "integrity": "sha512-L4druWmdFSZIIRhF+G60API5sFB7suTbDRhYWSjiw0RbE+15igQvE2g2+S973pMGvwN3guw7cJUjA/TmbPWTHQ==", + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.32.0.tgz", + "integrity": "sha512-qcb9qYDlkxz9DxJo7SDhWxTWV1gFuwznjbTiov289pASxlfGbaOD54mgbs9+z94VwrXtKTu+2RqwlSTbiOqxGg==", "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ "linux" ], - "engines": { - "node": ">= 10" - } + "peer": true }, - "node_modules/@next/swc-win32-arm64-msvc": { - "version": "15.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.1.6.tgz", - "integrity": "sha512-s8w6EeqNmi6gdvM19tqKKWbCyOBvXFbndkGHl+c9YrzsLARRdCHsD9S1fMj8gsXm9v8vhC8s3N8rjuC/XrtkEg==", + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.32.0.tgz", + "integrity": "sha512-pFDdotFDMXW2AXVbfdUEfidPAk/OtwE/Hd4eYMTNVVaCQ6Yl8et0meDaKNL63L44Haxv4UExpv9ydSf3aSayDg==", "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ "win32" ], - "engines": { - "node": ">= 10" - } + "peer": true }, - "node_modules/@next/swc-win32-x64-msvc": { - "version": "15.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.1.6.tgz", - "integrity": "sha512-6xomMuu54FAFxttYr5PJbEfu96godcxBTRk1OhAvJq0/EnmFU/Ybiax30Snis4vdWZ9LGpf7Roy5fSs7v/5ROQ==", + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.32.0.tgz", + "integrity": "sha512-/TG7WfrCAjeRNDvI4+0AAMoHxea/USWhAzf9PVDFHbcqrQ7hMMKp4jZIy4VEjk72AAfN5k4TiSMRXRKf/0akSw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.32.0.tgz", + "integrity": "sha512-5hqO5S3PTEO2E5VjCePxv40gIgyS2KvO7E7/vvC/NbIW4SIRamkMr1hqj+5Y67fbBWv/bQLB6KelBQmXlyCjWA==", "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ "win32" ], + "peer": true + }, + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.4.tgz", + "integrity": "sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@svgr/babel-plugin-add-jsx-attribute": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz", + "integrity": "sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==", + "dev": true, + "license": "MIT", "engines": { - "node": ">= 10" + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "node_modules/@svgr/babel-plugin-remove-jsx-attribute": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-8.0.0.tgz", + "integrity": "sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==", "dev": true, "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" + "engines": { + "node": ">=14" }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-8.0.0.tgz", + "integrity": "sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==", + "dev": true, + "license": "MIT", "engines": { - "node": ">= 8" + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-8.0.0.tgz", + "integrity": "sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==", "dev": true, "license": "MIT", "engines": { - "node": ">= 8" + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "node_modules/@svgr/babel-plugin-svg-dynamic-title": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-8.0.0.tgz", + "integrity": "sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==", "dev": true, "license": "MIT", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-svg-em-dimensions": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-8.0.0.tgz", + "integrity": "sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==", + "dev": true, + "license": "MIT", "engines": { - "node": ">= 8" + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@nolyfill/is-core-module": { - "version": "1.0.39", - "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz", - "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==", + "node_modules/@svgr/babel-plugin-transform-react-native-svg": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-8.1.0.tgz", + "integrity": "sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==", "dev": true, "license": "MIT", "engines": { - "node": ">=12.4.0" + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "node_modules/@svgr/babel-plugin-transform-svg-component": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-8.0.0.tgz", + "integrity": "sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==", "dev": true, "license": "MIT", - "optional": true, + "engines": { + "node": ">=12" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-preset": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-8.1.0.tgz", + "integrity": "sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@svgr/babel-plugin-add-jsx-attribute": "8.0.0", + "@svgr/babel-plugin-remove-jsx-attribute": "8.0.0", + "@svgr/babel-plugin-remove-jsx-empty-expression": "8.0.0", + "@svgr/babel-plugin-replace-jsx-attribute-value": "8.0.0", + "@svgr/babel-plugin-svg-dynamic-title": "8.0.0", + "@svgr/babel-plugin-svg-em-dimensions": "8.0.0", + "@svgr/babel-plugin-transform-react-native-svg": "8.1.0", + "@svgr/babel-plugin-transform-svg-component": "8.0.0" + }, "engines": { "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@rtsao/scc": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", - "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "node_modules/@svgr/core": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/core/-/core-8.1.0.tgz", + "integrity": "sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==", "dev": true, - "license": "MIT" + "license": "MIT", + "dependencies": { + "@babel/core": "^7.21.3", + "@svgr/babel-preset": "8.1.0", + "camelcase": "^6.2.0", + "cosmiconfig": "^8.1.3", + "snake-case": "^3.0.4" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } }, - "node_modules/@rushstack/eslint-patch": { - "version": "1.10.4", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.4.tgz", - "integrity": "sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==", + "node_modules/@svgr/hast-util-to-babel-ast": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-8.0.0.tgz", + "integrity": "sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==", "dev": true, - "license": "MIT" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.21.3", + "entities": "^4.4.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/plugin-jsx": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-8.1.0.tgz", + "integrity": "sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.21.3", + "@svgr/babel-preset": "8.1.0", + "@svgr/hast-util-to-babel-ast": "8.0.0", + "svg-parser": "^2.0.4" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@svgr/core": "*" + } }, "node_modules/@swc/counter": { "version": "0.1.3", @@ -846,6 +2208,65 @@ "tslib": "^2.8.0" } }, + "node_modules/@tanstack/react-table": { + "version": "8.20.6", + "resolved": "https://registry.npmjs.org/@tanstack/react-table/-/react-table-8.20.6.tgz", + "integrity": "sha512-w0jluT718MrOKthRcr2xsjqzx+oEM7B7s/XXyfs19ll++hlId3fjTm+B2zrR3ijpANpkzBAr15j1XGVOMxpggQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@tanstack/table-core": "8.20.5" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/@tanstack/table-core": { + "version": "8.20.5", + "resolved": "https://registry.npmjs.org/@tanstack/table-core/-/table-core-8.20.5.tgz", + "integrity": "sha512-P9dF7XbibHph2PFRz8gfBKEXEY/HJPOhym8CHmjF8y3q5mWpKx9xtZapXQUWCgkqvsK0R46Azuz+VaxD4Xl+Tg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tritonse/tse-constellation": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/@tritonse/tse-constellation/-/tse-constellation-0.0.8.tgz", + "integrity": "sha512-twD2MlsoLxJHAxfnUgNG8fNMSVNiBQ4nBp1H7B/XIbw9xRS4PjZW+dPCKrbalOEIhjRJtd5ZGxyxtfcF0PvsWw==", + "dev": true, + "dependencies": { + "@cubedoodl/react-simple-scheduler": "^1.3.3", + "@floating-ui/react": "^0.27.0", + "@tanstack/react-table": "^8.20.5", + "classnames": "^2.5.1", + "vite-plugin-svgr": "^4.3.0" + }, + "peerDependencies": { + "react": "^19.0.0", + "react-dom": "^19.0.0" + } + }, + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", @@ -1503,6 +2924,39 @@ "node": ">=8" } }, + "node_modules/browserslist": { + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, "node_modules/busboy": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", @@ -1544,6 +2998,19 @@ "node": ">=6" } }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/camelcase-css": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", @@ -1555,9 +3022,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001686", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001686.tgz", - "integrity": "sha512-Y7deg0Aergpa24M3qLC5xjNklnKnhsmSyR/V89dLZ1n0ucJIFNs7PgR2Yfa/Zf6W79SbBicgtGxZr2juHkEUIA==", + "version": "1.0.30001695", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001695.tgz", + "integrity": "sha512-vHyLade6wTgI2u1ec3WQBxv+2BrTERV28UXQu9LO6lZ9pYeMk34vjXFLOxo1A4UBA8XTL4njRQZdno/yYaSmWw==", "funding": [ { "type": "opencollective", @@ -1629,6 +3096,13 @@ "node": ">= 6" } }, + "node_modules/classnames": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz", + "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==", + "dev": true, + "license": "MIT" + }, "node_modules/client-only": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", @@ -1697,6 +3171,40 @@ "dev": true, "license": "MIT" }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "dev": true, + "license": "MIT", + "dependencies": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, "node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", @@ -1891,6 +3399,17 @@ "node": ">=6.0.0" } }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dev": true, + "license": "MIT", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", @@ -1898,6 +3417,13 @@ "dev": true, "license": "MIT" }, + "node_modules/electron-to-chromium": { + "version": "1.5.88", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.88.tgz", + "integrity": "sha512-K3C2qf1o+bGzbilTDCTBhTQcMS9KW60yTAaTeeXsfvQuTDDwlokLam/AdqlqcSy9u4UainDgsHV23ksXAOgamw==", + "dev": true, + "license": "ISC" + }, "node_modules/emoji-regex": { "version": "9.2.2", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", @@ -1919,6 +3445,36 @@ "node": ">=10.13.0" } }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/error-ex/node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true, + "license": "MIT" + }, "node_modules/es-abstract": { "version": "1.23.5", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.5.tgz", @@ -2086,6 +3642,58 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/esbuild": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.2.tgz", + "integrity": "sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "peer": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.24.2", + "@esbuild/android-arm": "0.24.2", + "@esbuild/android-arm64": "0.24.2", + "@esbuild/android-x64": "0.24.2", + "@esbuild/darwin-arm64": "0.24.2", + "@esbuild/darwin-x64": "0.24.2", + "@esbuild/freebsd-arm64": "0.24.2", + "@esbuild/freebsd-x64": "0.24.2", + "@esbuild/linux-arm": "0.24.2", + "@esbuild/linux-arm64": "0.24.2", + "@esbuild/linux-ia32": "0.24.2", + "@esbuild/linux-loong64": "0.24.2", + "@esbuild/linux-mips64el": "0.24.2", + "@esbuild/linux-ppc64": "0.24.2", + "@esbuild/linux-riscv64": "0.24.2", + "@esbuild/linux-s390x": "0.24.2", + "@esbuild/linux-x64": "0.24.2", + "@esbuild/netbsd-arm64": "0.24.2", + "@esbuild/netbsd-x64": "0.24.2", + "@esbuild/openbsd-arm64": "0.24.2", + "@esbuild/openbsd-x64": "0.24.2", + "@esbuild/sunos-x64": "0.24.2", + "@esbuild/win32-arm64": "0.24.2", + "@esbuild/win32-ia32": "0.24.2", + "@esbuild/win32-x64": "0.24.2" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -2581,6 +4189,13 @@ "node": ">=4.0" } }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, + "license": "MIT" + }, "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", @@ -2805,6 +4420,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/get-intrinsic": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", @@ -3633,6 +5258,19 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/json-buffer": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", @@ -3640,6 +5278,13 @@ "dev": true, "license": "MIT" }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "license": "MIT" + }, "node_modules/json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", @@ -3783,6 +5428,16 @@ "loose-envify": "cli.js" } }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dev": true, + "license": "MIT", + "dependencies": { + "tslib": "^2.0.3" + } + }, "node_modules/lru-cache": { "version": "10.4.3", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", @@ -3973,6 +5628,24 @@ "node": "^10 || ^12 || >=14" } }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dev": true, + "license": "MIT", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true, + "license": "MIT" + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -4192,6 +5865,25 @@ "node": ">=6" } }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -4246,6 +5938,16 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/picocolors": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", @@ -4672,6 +6374,46 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rollup": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.32.0.tgz", + "integrity": "sha512-JmrhfQR31Q4AuNBjjAX4s+a/Pu/Q8Q9iwjWBsjRH1q52SPFE2NqRMK6fUZKKnvKO6id+h7JIRf0oYsph53eATg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/estree": "1.0.6" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.32.0", + "@rollup/rollup-android-arm64": "4.32.0", + "@rollup/rollup-darwin-arm64": "4.32.0", + "@rollup/rollup-darwin-x64": "4.32.0", + "@rollup/rollup-freebsd-arm64": "4.32.0", + "@rollup/rollup-freebsd-x64": "4.32.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.32.0", + "@rollup/rollup-linux-arm-musleabihf": "4.32.0", + "@rollup/rollup-linux-arm64-gnu": "4.32.0", + "@rollup/rollup-linux-arm64-musl": "4.32.0", + "@rollup/rollup-linux-loongarch64-gnu": "4.32.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.32.0", + "@rollup/rollup-linux-riscv64-gnu": "4.32.0", + "@rollup/rollup-linux-s390x-gnu": "4.32.0", + "@rollup/rollup-linux-x64-gnu": "4.32.0", + "@rollup/rollup-linux-x64-musl": "4.32.0", + "@rollup/rollup-win32-arm64-msvc": "4.32.0", + "@rollup/rollup-win32-ia32-msvc": "4.32.0", + "@rollup/rollup-win32-x64-msvc": "4.32.0", + "fsevents": "~2.3.2" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -4891,6 +6633,17 @@ "is-arrayish": "^0.3.1" } }, + "node_modules/snake-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", + "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", + "dev": true, + "license": "MIT", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, "node_modules/source-map-js": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", @@ -5259,6 +7012,20 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/svg-parser": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", + "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/tabbable": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==", + "dev": true, + "license": "MIT" + }, "node_modules/tailwindcss": { "version": "3.4.16", "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.16.tgz", @@ -5560,6 +7327,37 @@ "dev": true, "license": "MIT" }, + "node_modules/update-browserslist-db": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.2.tgz", + "integrity": "sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -5577,6 +7375,94 @@ "dev": true, "license": "MIT" }, + "node_modules/vite": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.0.11.tgz", + "integrity": "sha512-4VL9mQPKoHy4+FE0NnRE/kbY51TOfaknxAjt3fJbGJxhIpBZiqVzlZDEesWWsuREXHwNdAoOFZ9MkPEVXczHwg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "esbuild": "^0.24.2", + "postcss": "^8.4.49", + "rollup": "^4.23.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "jiti": ">=1.21.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/vite-plugin-svgr": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/vite-plugin-svgr/-/vite-plugin-svgr-4.3.0.tgz", + "integrity": "sha512-Jy9qLB2/PyWklpYy0xk0UU3TlU0t2UMpJXZvf+hWII1lAmRHrOUKi11Uw8N3rxoNk7atZNYO3pR3vI1f7oi+6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.1.3", + "@svgr/core": "^8.1.0", + "@svgr/plugin-jsx": "^8.1.0" + }, + "peerDependencies": { + "vite": ">=2.6.0" + } + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -5798,6 +7684,13 @@ "dev": true, "license": "ISC" }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, "node_modules/yaml": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.1.tgz", diff --git a/frontend/package.json b/frontend/package.json index 7a2f3e4..fdc1b01 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -19,6 +19,7 @@ "react-dom": "^19.0.0" }, "devDependencies": { + "@tritonse/tse-constellation": "^0.0.8", "@types/node": "^20", "@types/react": "^18", "@types/react-dom": "^18", diff --git a/frontend/src/globals.css b/frontend/src/globals.css deleted file mode 100644 index 7bea2cd..0000000 --- a/frontend/src/globals.css +++ /dev/null @@ -1,27 +0,0 @@ -@font-face { - font-family: "Golos Text"; - src: url("/fonts/GolosText-Regular.woff2") format("woff2"); - font-weight: 400; - font-style: normal; -} - -@font-face { - font-family: "Golos Text"; - src: url("/fonts/GolosText-Bold.woff2") format("woff2"); - font-weight: 700; - font-style: normal; -} - -@font-face { - font-family: "Golos Text"; - src: url("/fonts/GolosText-Italic.woff2") format("woff2"); - font-weight: 400; - font-style: italic; -} - -@font-face { - font-family: "Golos Text"; - src: url("/fonts/GolosText-BoldItalic.woff2") format("woff2"); - font-weight: 700; - font-style: italic; -} diff --git a/frontend/src/pages/generalComponentTest.tsx b/frontend/src/pages/generalComponentTest.tsx index dacbc87..0cbee3e 100644 --- a/frontend/src/pages/generalComponentTest.tsx +++ b/frontend/src/pages/generalComponentTest.tsx @@ -1,118 +1,149 @@ +import { ThemeProvider } from "@tritonse/tse-constellation"; + import { Button } from "../components/Button"; -// import { Checkbox } from "../components/Checkbox"; import { TextField } from "../components/TextField"; export default function generalComponentTest() { return ( -
-

Buttons

- {/* Default button */} -
-

Default:

- Default -
- - {/* Default small */} -
-

Default Small:

- Default -
- - {/* Secondary */} -
-

Secondary:

- Default -
+ +
+

+ {" "} + Buttons{" "} +

+ {/* Default button */} +
+

Default:

+ Default +
- {/* Secondary small */} -
-

Secondary Small:

- Default -
+ {/* Default small */} +
+

Default Small:

+ Default +
- {/* Destructive */} -
-

Destructive:

- Default -
+ {/* Secondary */} +
+

Secondary:

+ Default +
- {/* Destructive small */} -
-

Destructive Small:

- Default -
+ {/* Secondary small */} +
+

Secondary Small:

+ Default +
- {/* Secondary Destructive */} -
-

Secondary Destructive:

- Default -
+ {/* Destructive */} +
+

Destructive:

+ Default +
- {/* Secondary Destructive small */} -
-

Secondary Destructive Small:

- Default -
+ {/* Destructive small */} +
+

Destructive Small:

+ Default +
- {/* Text Fields */} -

- Text Fields -

-
- {/* Normal Input */} -
- + {/* Secondary Destructive */} +
+

Secondary Destructive:

+ Default +
- {/* Input with Caption */} -
- + {/* Secondary Destructive small */} +
+

Secondary Destructive Small:

+ Default +
- {/* Error Input */} -
- + {/* Text Fields */} +

+ Text Fields +

+
+ {/* Normal Input */} +
+ +
+ + {/* Input with Caption */} +
+ +
+ + {/* Error Input */} +
+ +
+ {/* Text Fields */} +

+ Checkboxes and Radios +

- {/* Text Fields */} -

- Checkboxes and Radios -

-
+ ); } From 37a49506d365656d70736cc768660fd3567e80be Mon Sep 17 00:00:00 2001 From: NumaanFormoli Date: Wed, 29 Jan 2025 13:01:47 -0800 Subject: [PATCH 17/17] Added all general components from TSE constellation --- frontend/package-lock.json | 120 ++++++++- .../src/app/generalComponentTest/page.tsx | 239 ++++++++++++++++++ frontend/src/app/layout.tsx | 6 + frontend/src/components/Button.module.css | 214 ---------------- frontend/src/components/Button.tsx | 28 -- frontend/src/components/Checkbox.module.css | 37 --- frontend/src/components/Checkbox.tsx | 101 -------- frontend/src/components/TextArea.tsx | 45 ++++ frontend/src/components/TextField.module.css | 88 ------- frontend/src/components/TextField.tsx | 46 ---- frontend/src/pages/_app.tsx | 6 - frontend/src/pages/generalComponentTest.tsx | 149 ----------- frontend/tailwind.config.ts | 3 + 13 files changed, 408 insertions(+), 674 deletions(-) create mode 100644 frontend/src/app/generalComponentTest/page.tsx delete mode 100644 frontend/src/components/Button.module.css delete mode 100644 frontend/src/components/Button.tsx delete mode 100644 frontend/src/components/Checkbox.module.css delete mode 100644 frontend/src/components/Checkbox.tsx create mode 100644 frontend/src/components/TextArea.tsx delete mode 100644 frontend/src/components/TextField.module.css delete mode 100644 frontend/src/components/TextField.tsx delete mode 100644 frontend/src/pages/_app.tsx delete mode 100644 frontend/src/pages/generalComponentTest.tsx diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 7e03236..c2df2fb 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -50,6 +50,7 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, "license": "Apache-2.0", "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", @@ -63,6 +64,7 @@ "version": "7.26.2", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-validator-identifier": "^7.25.9", @@ -77,6 +79,7 @@ "version": "7.26.5", "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.5.tgz", "integrity": "sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -86,6 +89,7 @@ "version": "7.26.7", "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.7.tgz", "integrity": "sha512-SRijHmF0PSPgLIBYlWnG0hyeJLwXE2CgpsXaMOrtt2yp9/86ALw6oUlj9KYuZ0JN07T4eBMVIW4li/9S1j2BGA==", + "dev": true, "license": "MIT", "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -116,6 +120,7 @@ "version": "2.2.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, "license": "MIT", "bin": { "json5": "lib/cli.js" @@ -128,6 +133,7 @@ "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, "license": "ISC", "bin": { "semver": "bin/semver.js" @@ -137,6 +143,7 @@ "version": "7.26.5", "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.5.tgz", "integrity": "sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==", + "dev": true, "license": "MIT", "dependencies": { "@babel/parser": "^7.26.5", @@ -153,6 +160,7 @@ "version": "7.26.5", "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.26.5.tgz", "integrity": "sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==", + "dev": true, "license": "MIT", "dependencies": { "@babel/compat-data": "^7.26.5", @@ -169,6 +177,7 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, "license": "ISC", "dependencies": { "yallist": "^3.0.2" @@ -178,6 +187,7 @@ "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, "license": "ISC", "bin": { "semver": "bin/semver.js" @@ -187,6 +197,7 @@ "version": "7.25.9", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "dev": true, "license": "MIT", "dependencies": { "@babel/traverse": "^7.25.9", @@ -200,6 +211,7 @@ "version": "7.26.0", "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-module-imports": "^7.25.9", @@ -217,6 +229,7 @@ "version": "7.25.9", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -226,6 +239,7 @@ "version": "7.25.9", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -235,6 +249,7 @@ "version": "7.25.9", "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -244,6 +259,7 @@ "version": "7.26.7", "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.7.tgz", "integrity": "sha512-8NHiL98vsi0mbPQmYAGWwfcFaOy4j2HY49fXJCfuDcdE7fMIsH9a7GdaeXpIBsbT7307WU8KCMp5pUVDNL4f9A==", + "dev": true, "license": "MIT", "dependencies": { "@babel/template": "^7.25.9", @@ -257,6 +273,7 @@ "version": "7.26.7", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.7.tgz", "integrity": "sha512-kEvgGGgEjRUutvdVvZhbn/BxVt+5VSpwXz1j3WYXQbXDo8KzFOPNG2GQbdAiNq8g6wn1yKk7C/qrke03a84V+w==", + "dev": true, "license": "MIT", "dependencies": { "@babel/types": "^7.26.7" @@ -272,6 +289,7 @@ "version": "7.25.9", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.9.tgz", "integrity": "sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==", + "dev": true, "license": "MIT", "dependencies": { "@babel/code-frame": "^7.25.9", @@ -286,6 +304,7 @@ "version": "7.26.7", "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.7.tgz", "integrity": "sha512-1x1sgeyRLC3r5fQOM0/xtQKsYjyxmFjaOrLJNtZ81inNjyJHGIolTULPiSc/2qe1/qfpFLisLQYFnnZl7QoedA==", + "dev": true, "license": "MIT", "dependencies": { "@babel/code-frame": "^7.26.2", @@ -304,6 +323,7 @@ "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, "license": "MIT", "engines": { "node": ">=4" @@ -313,6 +333,7 @@ "version": "7.26.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.7.tgz", "integrity": "sha512-t8kDRGrKXyp6+tjUh7hw2RLyclsW4TRoRvRHtSyAX9Bb5ldlFh+90YAYY6awRXrlB4G5G2izNeGySpATlFzmOg==", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-string-parser": "^7.25.9", @@ -326,6 +347,7 @@ "version": "1.3.3", "resolved": "https://registry.npmjs.org/@cubedoodl/react-simple-scheduler/-/react-simple-scheduler-1.3.3.tgz", "integrity": "sha512-OD9dzF96vJIQGef/7mqfxfIGArALskGpLkLg7BCqWwJ97P+mpnPnznxCRPbFf2bZt3sTwt1c9v5rvuQ/iMZ1dw==", + "dev": true, "license": "MIT", "peerDependencies": { "react": "^18.2.0" @@ -848,6 +870,7 @@ "version": "1.6.9", "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.9.tgz", "integrity": "sha512-uMXCuQ3BItDUbAMhIXw7UPXRfAlOAvZzdK9BWpE60MCn+Svt3aLn9jsPTi/WNGlRUu2uI0v5S7JiIUsbsvh3fw==", + "dev": true, "license": "MIT", "dependencies": { "@floating-ui/utils": "^0.2.9" @@ -857,6 +880,7 @@ "version": "1.6.13", "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.13.tgz", "integrity": "sha512-umqzocjDgNRGTuO7Q8CU32dkHkECqI8ZdMZ5Swb6QAM0t5rnlrN3lGo1hdpscRd3WS8T6DKYK4ephgIH9iRh3w==", + "dev": true, "license": "MIT", "dependencies": { "@floating-ui/core": "^1.6.0", @@ -867,6 +891,7 @@ "version": "0.27.3", "resolved": "https://registry.npmjs.org/@floating-ui/react/-/react-0.27.3.tgz", "integrity": "sha512-CLHnes3ixIFFKVQDdICjel8muhFLOBdQH7fgtHNPY8UbCNqbeKZ262G7K66lGQOUQWWnYocf7ZbUsLJgGfsLHg==", + "dev": true, "license": "MIT", "dependencies": { "@floating-ui/react-dom": "^2.1.2", @@ -882,6 +907,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.2.tgz", "integrity": "sha512-06okr5cgPzMNBy+Ycse2A6udMi4bqwW/zgBF/rwjcNqWkyr82Mcg8b0vjX8OJpZFy/FKjJmw6wV7t44kK6kW7A==", + "dev": true, "license": "MIT", "dependencies": { "@floating-ui/dom": "^1.0.0" @@ -895,6 +921,7 @@ "version": "0.2.9", "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.9.tgz", "integrity": "sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==", + "dev": true, "license": "MIT" }, "node_modules/@humanwhocodes/config-array": { @@ -986,6 +1013,7 @@ "version": "0.3.8", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dev": true, "license": "MIT", "dependencies": { "@jridgewell/set-array": "^1.2.1", @@ -1000,6 +1028,7 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.0.0" @@ -1009,6 +1038,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.0.0" @@ -1018,12 +1048,14 @@ "version": "1.5.0", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true, "license": "MIT" }, "node_modules/@jridgewell/trace-mapping": { "version": "0.3.25", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, "license": "MIT", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -1267,6 +1299,7 @@ "version": "5.1.4", "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz", "integrity": "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==", + "dev": true, "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", @@ -1289,6 +1322,7 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true, "license": "MIT", "engines": { "node": ">=12" @@ -1304,6 +1338,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1318,6 +1353,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1332,6 +1368,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1346,6 +1383,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1360,6 +1398,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1374,6 +1413,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1388,6 +1428,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1402,6 +1443,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1416,6 +1458,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1430,6 +1473,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1444,6 +1488,7 @@ "cpu": [ "loong64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1458,6 +1503,7 @@ "cpu": [ "ppc64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1472,6 +1518,7 @@ "cpu": [ "riscv64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1486,6 +1533,7 @@ "cpu": [ "s390x" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1500,6 +1548,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1514,6 +1563,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1528,6 +1578,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1542,6 +1593,7 @@ "cpu": [ "ia32" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1556,6 +1608,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1581,6 +1634,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz", "integrity": "sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==", + "dev": true, "license": "MIT", "engines": { "node": ">=14" @@ -1597,6 +1651,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-8.0.0.tgz", "integrity": "sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==", + "dev": true, "license": "MIT", "engines": { "node": ">=14" @@ -1613,6 +1668,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-8.0.0.tgz", "integrity": "sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==", + "dev": true, "license": "MIT", "engines": { "node": ">=14" @@ -1629,6 +1685,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-8.0.0.tgz", "integrity": "sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==", + "dev": true, "license": "MIT", "engines": { "node": ">=14" @@ -1645,6 +1702,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-8.0.0.tgz", "integrity": "sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==", + "dev": true, "license": "MIT", "engines": { "node": ">=14" @@ -1661,6 +1719,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-8.0.0.tgz", "integrity": "sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==", + "dev": true, "license": "MIT", "engines": { "node": ">=14" @@ -1677,6 +1736,7 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-8.1.0.tgz", "integrity": "sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==", + "dev": true, "license": "MIT", "engines": { "node": ">=14" @@ -1693,6 +1753,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-8.0.0.tgz", "integrity": "sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==", + "dev": true, "license": "MIT", "engines": { "node": ">=12" @@ -1709,6 +1770,7 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-8.1.0.tgz", "integrity": "sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==", + "dev": true, "license": "MIT", "dependencies": { "@svgr/babel-plugin-add-jsx-attribute": "8.0.0", @@ -1735,6 +1797,7 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/@svgr/core/-/core-8.1.0.tgz", "integrity": "sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==", + "dev": true, "license": "MIT", "dependencies": { "@babel/core": "^7.21.3", @@ -1755,6 +1818,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-8.0.0.tgz", "integrity": "sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==", + "dev": true, "license": "MIT", "dependencies": { "@babel/types": "^7.21.3", @@ -1772,6 +1836,7 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-8.1.0.tgz", "integrity": "sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==", + "dev": true, "license": "MIT", "dependencies": { "@babel/core": "^7.21.3", @@ -1809,6 +1874,7 @@ "version": "8.20.6", "resolved": "https://registry.npmjs.org/@tanstack/react-table/-/react-table-8.20.6.tgz", "integrity": "sha512-w0jluT718MrOKthRcr2xsjqzx+oEM7B7s/XXyfs19ll++hlId3fjTm+B2zrR3ijpANpkzBAr15j1XGVOMxpggQ==", + "dev": true, "license": "MIT", "dependencies": { "@tanstack/table-core": "8.20.5" @@ -1829,6 +1895,7 @@ "version": "8.20.5", "resolved": "https://registry.npmjs.org/@tanstack/table-core/-/table-core-8.20.5.tgz", "integrity": "sha512-P9dF7XbibHph2PFRz8gfBKEXEY/HJPOhym8CHmjF8y3q5mWpKx9xtZapXQUWCgkqvsK0R46Azuz+VaxD4Xl+Tg==", + "dev": true, "license": "MIT", "engines": { "node": ">=12" @@ -1842,6 +1909,7 @@ "version": "0.0.8", "resolved": "https://registry.npmjs.org/@tritonse/tse-constellation/-/tse-constellation-0.0.8.tgz", "integrity": "sha512-twD2MlsoLxJHAxfnUgNG8fNMSVNiBQ4nBp1H7B/XIbw9xRS4PjZW+dPCKrbalOEIhjRJtd5ZGxyxtfcF0PvsWw==", + "dev": true, "dependencies": { "@cubedoodl/react-simple-scheduler": "^1.3.3", "@floating-ui/react": "^0.27.0", @@ -1858,6 +1926,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true, "license": "MIT" }, "node_modules/@types/json5": { @@ -1871,7 +1940,7 @@ "version": "20.17.16", "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.16.tgz", "integrity": "sha512-vOTpLduLkZXePLxHiHsBLp98mHGnl8RptV4YAO3HfKO5UHjDvySGbxKtpYfy8Sx5+WKcgc45qNreJJRVM3L6mw==", - "devOptional": true, + "dev": true, "license": "MIT", "dependencies": { "undici-types": "~6.19.2" @@ -2229,6 +2298,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, "license": "Python-2.0" }, "node_modules/aria-query": { @@ -2489,6 +2559,7 @@ "version": "4.24.4", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "dev": true, "funding": [ { "type": "opencollective", @@ -2582,6 +2653,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -2591,6 +2663,7 @@ "version": "6.3.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, "license": "MIT", "engines": { "node": ">=10" @@ -2678,6 +2751,7 @@ }, "node_modules/classnames": { "version": "2.5.1", + "dev": true, "license": "MIT" }, "node_modules/client-only": { @@ -2738,12 +2812,14 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, "license": "MIT" }, "node_modules/cosmiconfig": { "version": "8.3.6", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "dev": true, "license": "MIT", "dependencies": { "import-fresh": "^3.3.0", @@ -2850,6 +2926,7 @@ }, "node_modules/debug": { "version": "4.3.7", + "dev": true, "license": "MIT", "dependencies": { "ms": "^2.1.3" @@ -2933,6 +3010,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dev": true, "license": "MIT", "dependencies": { "no-case": "^3.0.4", @@ -2963,6 +3041,7 @@ "version": "1.5.88", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.88.tgz", "integrity": "sha512-K3C2qf1o+bGzbilTDCTBhTQcMS9KW60yTAaTeeXsfvQuTDDwlokLam/AdqlqcSy9u4UainDgsHV23ksXAOgamw==", + "dev": true, "license": "ISC" }, "node_modules/email-validator": { @@ -2992,6 +3071,7 @@ "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, "license": "BSD-2-Clause", "engines": { "node": ">=0.12" @@ -3004,6 +3084,7 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, "license": "MIT", "dependencies": { "is-arrayish": "^0.2.1" @@ -3013,6 +3094,7 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true, "license": "MIT" }, "node_modules/es-abstract": { @@ -3167,6 +3249,7 @@ }, "node_modules/esbuild": { "version": "0.24.2", + "dev": true, "hasInstallScript": true, "license": "MIT", "peer": true, @@ -3208,6 +3291,7 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -3631,6 +3715,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, "license": "MIT" }, "node_modules/esutils": { @@ -3779,6 +3864,7 @@ "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, "hasInstallScript": true, "license": "MIT", "optional": true, @@ -3826,6 +3912,7 @@ "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -4078,6 +4165,7 @@ }, "node_modules/import-fresh": { "version": "3.3.0", + "dev": true, "license": "MIT", "dependencies": { "parent-module": "^1.0.0", @@ -4536,7 +4624,7 @@ }, "node_modules/jiti": { "version": "1.21.6", - "devOptional": true, + "dev": true, "license": "MIT", "bin": { "jiti": "bin/jiti.js" @@ -4544,10 +4632,12 @@ }, "node_modules/js-tokens": { "version": "4.0.0", + "dev": true, "license": "MIT" }, "node_modules/js-yaml": { "version": "4.1.0", + "dev": true, "license": "MIT", "dependencies": { "argparse": "^2.0.1" @@ -4560,6 +4650,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, "license": "MIT", "bin": { "jsesc": "bin/jsesc" @@ -4577,6 +4668,7 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, "license": "MIT" }, "node_modules/json-schema-traverse": { @@ -4663,6 +4755,7 @@ }, "node_modules/lines-and-columns": { "version": "1.2.4", + "dev": true, "license": "MIT" }, "node_modules/locate-path": { @@ -4699,6 +4792,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dev": true, "license": "MIT", "dependencies": { "tslib": "^2.0.3" @@ -4768,6 +4862,7 @@ }, "node_modules/ms": { "version": "2.1.3", + "dev": true, "license": "MIT" }, "node_modules/mz": { @@ -4885,6 +4980,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dev": true, "license": "MIT", "dependencies": { "lower-case": "^2.0.2", @@ -4895,6 +4991,7 @@ "version": "2.0.19", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true, "license": "MIT" }, "node_modules/normalize-path": { @@ -5075,6 +5172,7 @@ }, "node_modules/parent-module": { "version": "1.0.1", + "dev": true, "license": "MIT", "dependencies": { "callsites": "^3.0.0" @@ -5087,6 +5185,7 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, "license": "MIT", "dependencies": { "@babel/code-frame": "^7.0.0", @@ -5149,6 +5248,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -5204,6 +5304,7 @@ }, "node_modules/postcss": { "version": "8.4.49", + "dev": true, "funding": [ { "type": "opencollective", @@ -5492,6 +5593,7 @@ }, "node_modules/resolve-from": { "version": "4.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=4" @@ -5530,6 +5632,7 @@ }, "node_modules/rollup": { "version": "4.31.0", + "dev": true, "license": "MIT", "peer": true, "dependencies": { @@ -5762,6 +5865,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", + "dev": true, "license": "MIT", "dependencies": { "dot-case": "^3.0.4", @@ -6090,10 +6194,12 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==", + "dev": true, "license": "MIT" }, "node_modules/tabbable": { "version": "6.2.0", + "dev": true, "license": "MIT" }, "node_modules/tailwindcss": { @@ -6302,7 +6408,7 @@ }, "node_modules/typescript": { "version": "5.7.2", - "devOptional": true, + "dev": true, "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", @@ -6328,13 +6434,14 @@ }, "node_modules/undici-types": { "version": "6.19.8", - "devOptional": true, + "dev": true, "license": "MIT" }, "node_modules/update-browserslist-db": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.2.tgz", "integrity": "sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==", + "dev": true, "funding": [ { "type": "opencollective", @@ -6376,6 +6483,7 @@ }, "node_modules/vite": { "version": "6.0.11", + "dev": true, "license": "MIT", "peer": true, "dependencies": { @@ -6446,6 +6554,7 @@ }, "node_modules/vite-plugin-svgr": { "version": "4.3.0", + "dev": true, "license": "MIT", "dependencies": { "@rollup/pluginutils": "^5.1.3", @@ -6653,11 +6762,12 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, "license": "ISC" }, "node_modules/yaml": { "version": "2.6.1", - "devOptional": true, + "dev": true, "license": "ISC", "bin": { "yaml": "bin.mjs" diff --git a/frontend/src/app/generalComponentTest/page.tsx b/frontend/src/app/generalComponentTest/page.tsx new file mode 100644 index 0000000..916061d --- /dev/null +++ b/frontend/src/app/generalComponentTest/page.tsx @@ -0,0 +1,239 @@ +"use client"; + +import { Button, Checkbox, Radio, TextField } from "@tritonse/tse-constellation"; + +import TextArea from "../../components/TextArea"; + +export default function GeneralComponentTest() { + return ( +
+

Buttons

+ +
+ {/* Default button */} +
+

Default:

+ Default + + + Deactivated + +
+ + {/* Default small */} +
+

Default Small:

+ Default + + Deactivated + +
+ + {/* Secondary */} +
+

Secondary:

+ Default + + Deactivated + +
+ + {/* Secondary Small*/} +
+

Secondary Small:

+ Default + + Deactivated + +
+ + {/* Secondary Destructive*/} +
+

Secondary Destructive:

+ Default + + Deactivated + +
+ + {/* Secondary Small Destructive*/} +
+

Secondary Small Destructive:

+ Default + + Deactivated + +
+ + {/* Destructive*/} +
+

Destructive:

+ Default + + Deactivated + +
+ + {/* Destructive small*/} +
+

Destructive small:

+ Default + + Deactivated + +
+
+ + {/* Text Fields */} +

+ Text Fields +

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