From f07607f334993ddb305c6433c5b59c5dde39f96d Mon Sep 17 00:00:00 2001 From: Abhishekfm Date: Fri, 27 Mar 2026 18:14:37 +0530 Subject: [PATCH] New card design configured overall the platform --- .../[modelId]/components/Versions/index.tsx | 2 +- .../CollaborativesListingClient.tsx | 14 +- .../CollaborativeDetailsClient.tsx | 35 +- app/[locale]/(user)/components/Datasets.tsx | 22 +- .../(user)/components/ListingComponent.tsx | 44 +- app/[locale]/(user)/components/UseCases.tsx | 28 +- .../components/Metadata/index.tsx | 11 +- .../components/SimilarDatasets/index.tsx | 20 +- .../(user)/publishers/components/Datasets.tsx | 30 +- .../publishers/components/ProfileDetails.tsx | 4 +- .../(user)/publishers/components/UseCases.tsx | 28 +- .../components/UnifiedListingComponent.tsx | 83 +- .../[useCaseSlug]/UsecaseDetailsClient.tsx | 18 +- .../[entitySlug]/aimodels/page.tsx | 4 +- .../collaboratives/edit/[id]/assign/page.tsx | 4 +- .../edit/[id]/publish/Assign.tsx | 2 +- .../edit/[id]/usecases/page.tsx | 4 +- .../[entitySlug]/collaboratives/page.tsx | 4 +- .../[id]/edit/components/AccessModelList.tsx | 2 +- .../dataset/[id]/edit/publish/page.tsx | 4 +- .../resources/components/ResourceListView.tsx | 6 +- .../[entitySlug]/dataset/page.tsx | 4 +- .../usecases/edit/[id]/assign/page.tsx | 4 +- .../usecases/edit/[id]/publish/Assign.tsx | 2 +- .../[entitySlug]/usecases/page.tsx | 4 +- components/Tour/TourGuide.tsx | 47 +- components/icons.tsx | 6 + config/tours.ts | 38 +- lib/utils.ts | 4 +- package-lock.json | 1052 ++++++----------- package.json | 2 +- 31 files changed, 633 insertions(+), 899 deletions(-) diff --git a/app/[locale]/(user)/aimodels/[modelId]/components/Versions/index.tsx b/app/[locale]/(user)/aimodels/[modelId]/components/Versions/index.tsx index 585549c7..5b2c9c01 100644 --- a/app/[locale]/(user)/aimodels/[modelId]/components/Versions/index.tsx +++ b/app/[locale]/(user)/aimodels/[modelId]/components/Versions/index.tsx @@ -72,7 +72,7 @@ export default function Versions({ data }: VersionsProps) { header: 'Last Updated', cell: ({ row }: any) => ( - {formatDate(row.original.updatedAt || row.original.createdAt)} + {formatDate(row.original.updatedAt || row.original.createdAt) || ''} ), }, diff --git a/app/[locale]/(user)/collaboratives/CollaborativesListingClient.tsx b/app/[locale]/(user)/collaboratives/CollaborativesListingClient.tsx index 525172dc..3e5c4904 100644 --- a/app/[locale]/(user)/collaboratives/CollaborativesListingClient.tsx +++ b/app/[locale]/(user)/collaboratives/CollaborativesListingClient.tsx @@ -218,7 +218,7 @@ const CollaborativesListingClient = () => { {/* Search and Filter Section */} -
+
{ // imageUrl={`${process.env.NEXT_PUBLIC_BACKEND_URL}/${collaborative.logo?.path.replace('/code/files/', '')}`} metadataContent={[ { - icon: Icons.calendar as any, + icon: Icons.calendarEvent as any, label: 'Started', - value: formatDate(collaborative.startedOn) || 'N/A', + value: formatDate(collaborative.startedOn) || '', + stroke: 1.2, }, { icon: Icons.dataset as any, @@ -323,7 +324,7 @@ const CollaborativesListingClient = () => { collaborative.datasetCount?.toString() || '0', }, { - icon: Icons.globe as ComponentType, + icon: Icons.worldPin as ComponentType, label: 'Geography', value: collaborative.geographies && @@ -332,16 +333,19 @@ const CollaborativesListingClient = () => { .map((geo: any) => geo.name) .join(', ') : 'N/A', + stroke: 1.2, }, ]} href={`/collaboratives/${collaborative.slug}`} - footerContent={[ + leftFooterChips={[ { icon: collaborative.sectors?.[0]?.name ? `/Sectors/${collaborative.sectors[0].name}.svg` : '/Sectors/default.svg', label: 'Sectors', }, + ]} + rightFooterChips={[ { icon: collaborative.isIndividualCollaborative ? collaborative?.user?.profilePicture diff --git a/app/[locale]/(user)/collaboratives/[collaborativeSlug]/CollaborativeDetailsClient.tsx b/app/[locale]/(user)/collaboratives/[collaborativeSlug]/CollaborativeDetailsClient.tsx index 1d7c1d9e..5112b762 100644 --- a/app/[locale]/(user)/collaboratives/[collaborativeSlug]/CollaborativeDetailsClient.tsx +++ b/app/[locale]/(user)/collaboratives/[collaborativeSlug]/CollaborativeDetailsClient.tsx @@ -441,23 +441,25 @@ const CollaborativeDetailClient = () => { const MetadataContent = [ { - icon: Icons.calendar as any, + icon: Icons.calendarEvent as any, label: 'Date', - value: formatDate(useCase.modified), + value: formatDate(useCase.modified) || '', tooltip: 'Date', + stroke: 1.2, }, ]; if (Geography) { MetadataContent.push({ - icon: Icons.globe as any, + icon: Icons.worldPin as any, label: 'Geography', value: Geography, tooltip: 'Geography', + stroke: 1.2, }); } - const FooterContent = [ + const LeftFooterChips = [ { icon: useCase.sectors && useCase.sectors[0]?.name @@ -466,6 +468,8 @@ const CollaborativeDetailClient = () => { label: 'Sectors', tooltip: useCase.sectors?.[0]?.name || 'Sector', }, + ]; + const RightFooterChips = [ { icon: image, label: 'Published by', @@ -478,9 +482,10 @@ const CollaborativeDetailClient = () => { const commonProps = { title: useCase.title || '', description: stripMarkdown(useCase.summary || ''), - metadataContent: MetadataContent, + metadataContent: MetadataContent as any, tag: useCase.tags?.map((t: any) => t.value) || [], - footerContent: FooterContent, + leftFooterChips: LeftFooterChips, + rightFooterChips: RightFooterChips, imageUrl: '', }; @@ -511,7 +516,7 @@ const CollaborativeDetailClient = () => { Explore datasets related to this collaborative{' '}
-
+
{datasets.length > 0 && datasets.map((dataset: TypeDataset) => ( { iconColor={'warning'} metadataContent={[ { - icon: Icons.calendar as any, + icon: Icons.calendarEvent as any, label: 'Date', - value: formatDate(dataset.modified), + value: formatDate(dataset.modified) || '', + stroke: 1.2, }, { - icon: Icons.download as any, + icon: Icons.fileDownload as any, label: 'Download', value: dataset.downloadCount.toString(), + stroke: 1.2, }, { - icon: Icons.globe as any, + icon: Icons.worldPin as any, label: 'Geography', value: dataset.geographies && @@ -540,14 +547,17 @@ const CollaborativeDetailClient = () => { .map((geo: any) => geo.name) .join(', ') : '', + stroke: 1.2, }, ]} href={`/datasets/${dataset.id}`} - footerContent={[ + leftFooterChips={[ { icon: `/Sectors/${dataset.sectors[0]?.name}.svg`, label: 'Sectors', }, + ]} + rightFooterChips={[ { icon: dataset.isIndividualDataset ? dataset?.user?.profilePicture @@ -560,6 +570,7 @@ const CollaborativeDetailClient = () => { }, ]} description={stripMarkdown(dataset.description || '')} + withViewButton={false} /> ))}
diff --git a/app/[locale]/(user)/components/Datasets.tsx b/app/[locale]/(user)/components/Datasets.tsx index 8fe06185..340b7ad4 100644 --- a/app/[locale]/(user)/components/Datasets.tsx +++ b/app/[locale]/(user)/components/Datasets.tsx @@ -86,7 +86,7 @@ const Datasets = () => { {isLoading ? ( - + ) : ( facets?.results?.map((item: any) => { const geographies = @@ -102,7 +102,7 @@ const Datasets = () => { @@ -112,7 +112,7 @@ const Datasets = () => { description={stripMarkdown(item.description)} metadataContent={[ { - icon: Icons.calendar as any, + icon: Icons.calendarEvent as any, label: 'Date', value: new Date(item.modified).toLocaleDateString( 'en-US', @@ -122,28 +122,33 @@ const Datasets = () => { year: 'numeric', } ), + stroke: 1.2, }, { - icon: Icons.download as any, + icon: Icons.fileDownload as any, label: 'Download', - value: item.download_count.toString(), + value: item.download_count || 0, + stroke: 1.2, }, { - icon: Icons.globe, + icon: Icons.worldPin, label: 'Geography', value: geographies.length > 0 ? geographies.join(', ') - : 'Not specified', + : '', + stroke: 1.2, }, ]} tag={item.tags} formats={item.formats} - footerContent={[ + leftFooterChips={[ { icon: `/Sectors/${item.sectors[0]}.svg`, label: 'Sectors', }, + ]} + rightFooterChips={[ { icon: item.is_individual_dataset ? item?.user?.profile_picture @@ -158,6 +163,7 @@ const Datasets = () => { variation={'collapsed'} iconColor="metadata" href={`/datasets/${item.id}`} + withViewButton={false} // type={[ // { // label: 'Dataset', diff --git a/app/[locale]/(user)/components/ListingComponent.tsx b/app/[locale]/(user)/components/ListingComponent.tsx index 72dc5f55..a00c125c 100644 --- a/app/[locale]/(user)/components/ListingComponent.tsx +++ b/app/[locale]/(user)/components/ListingComponent.tsx @@ -548,19 +548,21 @@ const ListingComponent: React.FC = ({ const MetadataContent = [ { - icon: Icons.calendar as any, + icon: Icons.calendarEvent as any, label: 'Date', - value: formatDate(item.modified), + value: formatDate(item.modified) || '', tooltip: 'Date', + stroke: 1.2, }, ]; if (item.download_count > 0) { MetadataContent.push({ - icon: Icons.download as any, + icon: Icons.fileDownload as any, label: 'Download', - value: item.download_count?.toString() || '0', + value: item.download_count || 0, tooltip: 'Download', + stroke: 1.2, }); } @@ -569,10 +571,11 @@ const ListingComponent: React.FC = ({ const geoDisplay = geographies.join(', '); MetadataContent.push({ - icon: Icons.globe as any, + icon: Icons.worldPin as any, label: 'Geography', value: geoDisplay, tooltip: geoDisplay, + stroke: 1.2, }); } @@ -587,6 +590,7 @@ const ListingComponent: React.FC = ({ label: 'SDG Goals', value: sdgDisplay, tooltip: sdgDisplay, + stroke: 1.2, }); } @@ -596,10 +600,11 @@ const ListingComponent: React.FC = ({ label: '', value: 'With Charts', tooltip: 'Charts', + stroke: 1.2, }); } - const FooterContent = [ + const LeftFooterChips = [ { icon: `/Sectors/${item.sectors?.[0]}.svg` as any, label: 'Sectors', @@ -614,6 +619,9 @@ const ListingComponent: React.FC = ({ }, ] : []), + ]; + + const RightFooterChips = [ { icon: image as any, label: 'Published by', @@ -624,10 +632,11 @@ const ListingComponent: React.FC = ({ const commonProps = { title: item.title, description: stripMarkdown(item.description || ''), - metadataContent: MetadataContent, + metadataContent: MetadataContent as any, tag: item.tags, formats: item.formats, - footerContent: FooterContent, + leftFooterChips: LeftFooterChips, + rightFooterChips: RightFooterChips, imageUrl: '', }; @@ -651,14 +660,17 @@ const ListingComponent: React.FC = ({ ? 'usecase-card' : undefined } - {...(type === 'usecase' && { - type: [ - { - label: 'Use Case', - fillColor: '#fff', - borderColor: '#000', - }, - ], + // {...(type === 'usecase' && { + // type: [ + // { + // label: 'Use Case', + // fillColor: '#fff', + // borderColor: '#000', + // }, + // ], + // })} + {...(type === 'dataset' && { + withViewButton: false, })} /> ); diff --git a/app/[locale]/(user)/components/UseCases.tsx b/app/[locale]/(user)/components/UseCases.tsx index 02203ad3..e664724b 100644 --- a/app/[locale]/(user)/components/UseCases.tsx +++ b/app/[locale]/(user)/components/UseCases.tsx @@ -150,26 +150,30 @@ const UseCasesListingPage = () => { href={`/usecases/${item.id}`} metadataContent={[ { - icon: Icons.calendar as any, + icon: Icons.calendarEvent as any, label: 'Date', - value: formatDate(item.modified), + value: formatDate(item.modified) || '', + stroke: 1.2, }, { - icon: Icons.globe as any, + icon: Icons.worldPin as any, label: 'Geography', value: item.geographies?.length > 0 ? item.geographies .map((geo: any) => geo.name) .join(', ') - : 'Not specified', + : '', + stroke: 1.2, }, ]} - footerContent={[ + leftFooterChips={[ { icon: `/Sectors/${item?.sectors[0]?.name}.svg` as any, label: 'Sectors', }, + ]} + rightFooterChips={[ { icon: item.isIndividualUsecase ? (item?.user?.profilePicture as any) @@ -185,13 +189,13 @@ const UseCasesListingPage = () => { description={stripMarkdown(item.summary)} iconColor="metadata" variation={'collapsed'} - type={[ - { - label: 'Use Case', - fillColor: '#fff', - borderColor: '#000', - }, - ]} + // type={[ + // { + // label: 'Use Case', + // fillColor: '#fff', + // borderColor: '#000', + // }, + // ]} /> ) diff --git a/app/[locale]/(user)/datasets/[datasetIdentifier]/components/Metadata/index.tsx b/app/[locale]/(user)/datasets/[datasetIdentifier]/components/Metadata/index.tsx index 2643c3f2..9c9dd583 100644 --- a/app/[locale]/(user)/datasets/[datasetIdentifier]/components/Metadata/index.tsx +++ b/app/[locale]/(user)/datasets/[datasetIdentifier]/components/Metadata/index.tsx @@ -1,11 +1,11 @@ +import React, { useEffect, useState } from 'react'; import Image from 'next/image'; import Link from 'next/link'; import { Button, Divider, Icon, Tag, Text, Tooltip } from 'opub-ui'; -import React, { useEffect, useState } from 'react'; +import { cn, formatDate, getWebsiteTitle } from '@/lib/utils'; import { Icons } from '@/components/icons'; import { RichTextRenderer } from '@/components/RichTextRenderer'; -import { cn, formatDate, getWebsiteTitle } from '@/lib/utils'; import Styles from '../../../dataset.module.scss'; interface MetadataProps { @@ -180,7 +180,10 @@ const MetadataComponent: React.FC = ({ data, setOpen }) => {
{data.geographies && data.geographies.length > 0 && (
- + Geography
@@ -213,7 +216,7 @@ const MetadataComponent: React.FC = ({ data, setOpen }) => { ) : item.type === 'DATE' ? ( - {formatDate(item.value)} + {formatDate(item.value) || ''} ) : item.type === 'MULTISELECT' ? (
diff --git a/app/[locale]/(user)/datasets/[datasetIdentifier]/components/SimilarDatasets/index.tsx b/app/[locale]/(user)/datasets/[datasetIdentifier]/components/SimilarDatasets/index.tsx index cd6b3cbf..343e0398 100644 --- a/app/[locale]/(user)/datasets/[datasetIdentifier]/components/SimilarDatasets/index.tsx +++ b/app/[locale]/(user)/datasets/[datasetIdentifier]/components/SimilarDatasets/index.tsx @@ -126,22 +126,25 @@ const SimilarDatasets: React.FC = () => { const metadataContent: any[] = [ { - icon: Icons.calendar as any, + icon: Icons.calendarEvent as any, label: 'Date', value: '19 July 2024', + stroke: 1.2, }, { - icon: Icons.download as any, + icon: Icons.fileDownload as any, label: 'Download', value: item.downloadCount.toString(), + stroke: 1.2, }, ]; if (geographies && geographies.length > 0) { metadataContent.push({ - icon: Icons.globe as any, + icon: Icons.worldPin as any, label: 'Geography', value: geographies.join(', '), + stroke: 1.2, }); } @@ -149,22 +152,24 @@ const SimilarDatasets: React.FC = () => { {' '} { variation={'collapsed'} iconColor="warning" href={`/datasets/${item.id}`} + withViewButton={false} /> ); diff --git a/app/[locale]/(user)/publishers/components/Datasets.tsx b/app/[locale]/(user)/publishers/components/Datasets.tsx index a3d9fc2b..889a6ab5 100644 --- a/app/[locale]/(user)/publishers/components/Datasets.tsx +++ b/app/[locale]/(user)/publishers/components/Datasets.tsx @@ -134,7 +134,7 @@ const Datasets = ({ type }: { type: 'organization' | 'Publisher' }) => {
{PublishedDatasetsList.isLoading ? ( @@ -144,40 +144,45 @@ const Datasets = ({ type }: { type: 'organization' | 'Publisher' }) => { ) : DatasetData?.length > 0 ? ( DatasetData?.map((item: any, index: any) => ( { variation={'collapsed'} iconColor="warning" href={`/datasets/${item.id}`} + withViewButton={false} /> )) ) : ( diff --git a/app/[locale]/(user)/publishers/components/ProfileDetails.tsx b/app/[locale]/(user)/publishers/components/ProfileDetails.tsx index 497d100a..a52c38a0 100644 --- a/app/[locale]/(user)/publishers/components/ProfileDetails.tsx +++ b/app/[locale]/(user)/publishers/components/ProfileDetails.tsx @@ -44,8 +44,8 @@ const ProfileDetails: React.FC = ({ data, type }) => { Joined on:{' '} {type === 'organization' - ? formatDate(data?.created) - : formatDate(data?.dateJoined)} + ? formatDate(data?.created) || '' + : formatDate(data?.dateJoined) || ''}
diff --git a/app/[locale]/(user)/publishers/components/UseCases.tsx b/app/[locale]/(user)/publishers/components/UseCases.tsx index e07ffbe6..5ae25e9c 100644 --- a/app/[locale]/(user)/publishers/components/UseCases.tsx +++ b/app/[locale]/(user)/publishers/components/UseCases.tsx @@ -131,7 +131,7 @@ const UseCases = ({ type }: { type: 'organization' | 'Publisher' }) => {
{PublishedUseCasesList.isLoading ? ( @@ -141,35 +141,39 @@ const UseCases = ({ type }: { type: 'organization' | 'Publisher' }) => { ) : UseCaseData?.length > 0 ? ( UseCaseData?.map((item: any, index: any) => ( meta.metadataItem?.label === 'Geography' )?.value, + stroke: 1.2, }, ]} - footerContent={[ + leftFooterChips={[ { icon: `/Sectors/${item?.sectors[0]?.name}.svg` as any, label: 'Sectors', }, + ]} + rightFooterChips={[ { icon: item.isIndividualUsecase ? item?.user?.profilePicture diff --git a/app/[locale]/(user)/search/components/UnifiedListingComponent.tsx b/app/[locale]/(user)/search/components/UnifiedListingComponent.tsx index abd1e0c3..644b1a9e 100644 --- a/app/[locale]/(user)/search/components/UnifiedListingComponent.tsx +++ b/app/[locale]/(user)/search/components/UnifiedListingComponent.tsx @@ -549,10 +549,11 @@ const UnifiedListingComponent: React.FC = ({ if (item.type === 'publisher') { MetadataContent.push({ - icon: Icons.calendar as any, + icon: Icons.calendarEvent as any, label: 'Joined', - value: formatDate(item.created), + value: formatDate(item.created) || '', tooltip: 'Date joined', + stroke: 1.2, }); MetadataContent.push({ icon: Icons.dataset as any, @@ -576,9 +577,10 @@ const UnifiedListingComponent: React.FC = ({ } } else if (item.type === 'collaborative') { MetadataContent.push({ - icon: Icons.calendar as any, + icon: Icons.calendarEvent as any, label: 'Started', - value: formatDate(item.started_on || item.created), + value: formatDate(item.started_on || item.created) || '', + stroke: 1.2, }); MetadataContent.push({ icon: Icons.dataset as any, @@ -588,42 +590,47 @@ const UnifiedListingComponent: React.FC = ({ if (geographies && geographies.length > 0) { const geoDisplay = geographies.join(', '); MetadataContent.push({ - icon: Icons.globe as any, + icon: Icons.worldPin as any, label: 'Geography', value: geoDisplay, + stroke: 1.2, }); } else { MetadataContent.push({ - icon: Icons.globe as any, + icon: Icons.worldPin as any, label: 'Geography', value: 'N/A', + stroke: 1.2, }); } } else { MetadataContent.push({ - icon: Icons.calendar as any, + icon: Icons.calendarEvent as any, label: 'Date', - value: formatDate(item.modified || item.updated_at), + value: formatDate(item.modified || item.updated_at) || '', tooltip: 'Date', + stroke: 1.2, }); if (geographies && geographies.length > 0) { const geoDisplay = geographies.join(', '); MetadataContent.push({ - icon: Icons.globe as any, + icon: Icons.worldPin as any, label: 'Geography', value: geoDisplay, tooltip: geoDisplay, + stroke: 1.2, }); } } if (item.type === 'dataset' && item.download_count > 0) { MetadataContent.push({ - icon: Icons.download as any, + icon: Icons.fileDownload as any, label: 'Download', - value: item.download_count?.toString() || '0', + value: item.download_count || 0, tooltip: 'Download', + stroke: 1.2, }); } @@ -648,10 +655,11 @@ const UnifiedListingComponent: React.FC = ({ }); } - const FooterContent = []; + const LeftFooterChips = []; + const RightFooterChips = []; if (item.type === 'publisher') { - FooterContent.push({ + LeftFooterChips.push({ icon: item.publisher_type === 'organization' ? '/org.png' : '/profile.png', label: @@ -669,20 +677,20 @@ const UnifiedListingComponent: React.FC = ({ typeof item.sectors[0] === 'string' ? item.sectors[0] : item.sectors[0]?.name; - FooterContent.push({ + LeftFooterChips.push({ icon: sectorName ? `/Sectors/${sectorName}.svg` : '/Sectors/default.svg', label: 'Sectors', }); } else { - FooterContent.push({ + LeftFooterChips.push({ icon: '/Sectors/default.svg', label: 'Sectors', }); } } else if (item.sectors && item.sectors.length > 0) { - FooterContent.push({ + LeftFooterChips.push({ icon: `/Sectors/${item.sectors?.[0]}.svg` as any, label: 'Sectors', tooltip: `${item.sectors?.[0]}`, @@ -690,7 +698,7 @@ const UnifiedListingComponent: React.FC = ({ } if (item.type === 'dataset' && item.has_charts && view !== 'expanded') { - FooterContent.push({ + LeftFooterChips.push({ icon: `/chart-bar.svg` as any, label: 'Charts', tooltip: 'Charts', @@ -698,7 +706,7 @@ const UnifiedListingComponent: React.FC = ({ } if (item.type !== 'publisher') { - FooterContent.push({ + RightFooterChips.push({ icon: image as any, label: 'Published by', tooltip: `${isIndividual ? item.user?.name : item.organization?.name}`, @@ -708,14 +716,29 @@ const UnifiedListingComponent: React.FC = ({ const commonProps = { title: item.title || item.name || '', description: stripMarkdown(item.description || item.bio || ''), - // ...(item.type === 'usecase' && { + // ...((item.type === 'usecase' || item.type === 'dataset') && { // description: stripMarkdown(item.description || item.bio || ''), // }), - metadataContent: MetadataContent, + metadataContent: MetadataContent as any, tag: item.tags || [], formats: item.type === 'dataset' ? item.formats || [] : [], - footerContent: FooterContent, + leftFooterChips: LeftFooterChips, + rightFooterChips: RightFooterChips, imageUrl: '', + ...(item.type === 'usecase' + ? { + withViewButton: true, + } + : { + withViewButton: false, + }), + ...(item.type === 'usecase' + ? { + reserveDescriptionSpace: true, + } + : { + reserveDescriptionSpace: false, + }), }; if (item.type === 'publisher') { @@ -804,15 +827,15 @@ const UnifiedListingComponent: React.FC = ({ variation={view === 'expanded' ? 'expanded' : 'collapsed'} iconColor="metadata" href={getRedirectUrl(item)} - {...(item.type === 'usecase' && { - type: [ - { - label: 'Use Case', - fillColor: '#fff', - borderColor: '#000', - }, - ], - })} + // {...(item.type === 'usecase' && { + // type: [ + // { + // label: 'Use Case', + // fillColor: '#fff', + // borderColor: '#000', + // }, + // ], + // })} /> ); }; diff --git a/app/[locale]/(user)/usecases/[useCaseSlug]/UsecaseDetailsClient.tsx b/app/[locale]/(user)/usecases/[useCaseSlug]/UsecaseDetailsClient.tsx index 64853dde..4732a6f1 100644 --- a/app/[locale]/(user)/usecases/[useCaseSlug]/UsecaseDetailsClient.tsx +++ b/app/[locale]/(user)/usecases/[useCaseSlug]/UsecaseDetailsClient.tsx @@ -286,7 +286,7 @@ const UseCaseDetailClient = () => { Explore datasets related to this use case{' '}
-
+
{/*
*/} {datasets.length > 0 && datasets.map((dataset: TypeDataset) => ( @@ -297,17 +297,19 @@ const UseCaseDetailClient = () => { iconColor={'warning'} metadataContent={[ { - icon: Icons.calendar as any, + icon: Icons.calendarEvent as any, label: 'Date', - value: formatDate(dataset.modified), + value: formatDate(dataset.modified) || '', + stroke: 1.2, }, { - icon: Icons.download as any, + icon: Icons.fileDownload as any, label: 'Download', value: dataset.downloadCount.toString(), + stroke: 1.2, }, { - icon: Icons.globe as any, + icon: Icons.worldPin as any, label: 'Geography', value: dataset.geographies && @@ -316,14 +318,17 @@ const UseCaseDetailClient = () => { .map((geo: any) => geo.name) .join(', ') : '', + stroke: 1.2, }, ]} href={`/datasets/${dataset.id}`} - footerContent={[ + leftFooterChips={[ { icon: `/Sectors/${dataset.sectors[0]?.name}.svg` as any, label: 'Sectors', }, + ]} + rightFooterChips={[ { icon: dataset.isIndividualDataset ? dataset?.user?.profilePicture @@ -336,6 +341,7 @@ const UseCaseDetailClient = () => { }, ]} description={stripMarkdown(dataset.description || '')} + withViewButton={false} /> ))}
diff --git a/app/[locale]/dashboard/[entityType]/[entitySlug]/aimodels/page.tsx b/app/[locale]/dashboard/[entityType]/[entitySlug]/aimodels/page.tsx index b1efbb62..ab081821 100644 --- a/app/[locale]/dashboard/[entityType]/[entitySlug]/aimodels/page.tsx +++ b/app/[locale]/dashboard/[entityType]/[entitySlug]/aimodels/page.tsx @@ -248,8 +248,8 @@ export default function AIModelsPage({ modelType: item.modelType, provider: item.provider, status: item.status, - createdAt: formatDate(item.createdAt), - updatedAt: formatDate(item.updatedAt), + createdAt: formatDate(item.createdAt) || '', + updatedAt: formatDate(item.updatedAt) || '', }; }); }; diff --git a/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/edit/[id]/assign/page.tsx b/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/edit/[id]/assign/page.tsx index d3c4db01..4d31e0d8 100644 --- a/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/edit/[id]/assign/page.tsx +++ b/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/edit/[id]/assign/page.tsx @@ -80,7 +80,7 @@ const Assign = () => { title: item.title, id: item.id, category: item.sectors[0]?.name || 'N/A', // Safeguard in case of missing category - modified: formatDate(item.modified), + modified: formatDate(item.modified) || '', }; }); @@ -106,7 +106,7 @@ const Assign = () => { title: item.title, id: item.id, category: item.sectors[0], - modified: formatDate(item.modified), + modified: formatDate(item.modified) || '', }; }); }; diff --git a/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/edit/[id]/publish/Assign.tsx b/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/edit/[id]/publish/Assign.tsx index 2866668f..2dd8ded8 100644 --- a/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/edit/[id]/publish/Assign.tsx +++ b/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/edit/[id]/publish/Assign.tsx @@ -15,7 +15,7 @@ const Assign = ({ data }: { data: any }) => { title: item.title, id: item.id, sector: item.sectors[0]?.name, - modified: formatDate(item.modified), + modified: formatDate(item.modified) || '', }; }); }; diff --git a/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/edit/[id]/usecases/page.tsx b/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/edit/[id]/usecases/page.tsx index 760785ce..f271e6a0 100644 --- a/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/edit/[id]/usecases/page.tsx +++ b/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/edit/[id]/usecases/page.tsx @@ -82,7 +82,7 @@ const UseCases = () => { title: item.title, id: item.id, category: item.sectors[0]?.name || 'N/A', // Safeguard in case of missing category - modified: formatDate(item.modified), + modified: formatDate(item.modified) || '', }; }); @@ -108,7 +108,7 @@ const UseCases = () => { title: item.title, id: item.id, category: item.sectors[0], - modified: formatDate(item.modified), + modified: formatDate(item.modified) || '', }; }); }; diff --git a/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/page.tsx b/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/page.tsx index 8cfa98f2..532006bd 100644 --- a/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/page.tsx +++ b/app/[locale]/dashboard/[entityType]/[entitySlug]/collaboratives/page.tsx @@ -254,8 +254,8 @@ export default function CollaborativePage() { return { title: item.title, id: item.id, - created: formatDate(item.created), - modified: formatDate(item.modified), + created: formatDate(item.created) || '', + modified: formatDate(item.modified) || '', }; }); }; diff --git a/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/[id]/edit/components/AccessModelList.tsx b/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/[id]/edit/components/AccessModelList.tsx index dca7ebdd..a58a7c0c 100644 --- a/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/[id]/edit/components/AccessModelList.tsx +++ b/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/[id]/edit/components/AccessModelList.tsx @@ -136,7 +136,7 @@ const AccessModelList: React.FC = ({ accessorKey: 'date', header: 'Date Added', cell: ({ row }: any) => { - return {formatDate(row.original.date)}; + return {formatDate(row.original.date) || ''}; }, }, { diff --git a/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/[id]/edit/publish/page.tsx b/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/[id]/edit/publish/page.tsx index 670b2a1d..ecc39844 100644 --- a/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/[id]/edit/publish/page.tsx +++ b/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/[id]/edit/publish/page.tsx @@ -257,11 +257,11 @@ const Page = () => { }, { label: 'Date of Creation', - value: formatDate(getDatasetsSummary.data?.datasets[0].created), + value: formatDate(getDatasetsSummary.data?.datasets[0].created) || '', }, { label: 'Date of Last Update', - value: formatDate(getDatasetsSummary.data?.datasets[0].modified), + value: formatDate(getDatasetsSummary.data?.datasets[0].modified) || '', }, ]; const router = useRouter(); diff --git a/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/[id]/edit/resources/components/ResourceListView.tsx b/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/[id]/edit/resources/components/ResourceListView.tsx index b95a7227..0c62a0af 100644 --- a/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/[id]/edit/resources/components/ResourceListView.tsx +++ b/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/[id]/edit/resources/components/ResourceListView.tsx @@ -104,7 +104,7 @@ export const ResourceListView = ({ data, refetch, isPromptDataset = false }: Res const updatedRows = data.createFileResources.map((item: any) => ({ name_of_resource: item.name, type: item.type, - date_added: formatDate(item.created), + date_added: formatDate(item.created) || '', id: item.id, })); @@ -196,7 +196,7 @@ export const ResourceListView = ({ data, refetch, isPromptDataset = false }: Res data.map((item: any) => ({ name_of_resource: item.name, type: item.type, - date_added: formatDate(item.created), + date_added: formatDate(item.created) || '', id: item.id, })) || [], }; @@ -210,7 +210,7 @@ export const ResourceListView = ({ data, refetch, isPromptDataset = false }: Res data.map((item: any) => ({ name_of_resource: item.name, type: item.type, - date_added: formatDate(item.created), + date_added: formatDate(item.created) || '', id: item.id, })) || []; diff --git a/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/page.tsx b/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/page.tsx index 9cccfb68..42d13e26 100644 --- a/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/page.tsx +++ b/app/[locale]/dashboard/[entityType]/[entitySlug]/dataset/page.tsx @@ -260,8 +260,8 @@ export default function DatasetPage() { title: item.title, id: item.id, datasetType: item.datasetType, - created: formatDate(item.created), - modified: formatDate(item.modified), + created: formatDate(item.created) || '', + modified: formatDate(item.modified) || '', }; }); }; diff --git a/app/[locale]/dashboard/[entityType]/[entitySlug]/usecases/edit/[id]/assign/page.tsx b/app/[locale]/dashboard/[entityType]/[entitySlug]/usecases/edit/[id]/assign/page.tsx index 5f47c842..25351dcc 100644 --- a/app/[locale]/dashboard/[entityType]/[entitySlug]/usecases/edit/[id]/assign/page.tsx +++ b/app/[locale]/dashboard/[entityType]/[entitySlug]/usecases/edit/[id]/assign/page.tsx @@ -85,7 +85,7 @@ const Assign = () => { title: item.title, id: item.id, category: item.sectors[0]?.name || 'N/A', // Safeguard in case of missing category - modified: formatDate(item.modified), + modified: formatDate(item.modified) || '', }; }); @@ -111,7 +111,7 @@ const Assign = () => { title: item.title, id: item.id, category: item.sectors[0], - modified: formatDate(item.modified), + modified: formatDate(item.modified) || '', }; }); }; diff --git a/app/[locale]/dashboard/[entityType]/[entitySlug]/usecases/edit/[id]/publish/Assign.tsx b/app/[locale]/dashboard/[entityType]/[entitySlug]/usecases/edit/[id]/publish/Assign.tsx index 2866668f..2dd8ded8 100644 --- a/app/[locale]/dashboard/[entityType]/[entitySlug]/usecases/edit/[id]/publish/Assign.tsx +++ b/app/[locale]/dashboard/[entityType]/[entitySlug]/usecases/edit/[id]/publish/Assign.tsx @@ -15,7 +15,7 @@ const Assign = ({ data }: { data: any }) => { title: item.title, id: item.id, sector: item.sectors[0]?.name, - modified: formatDate(item.modified), + modified: formatDate(item.modified) || '', }; }); }; diff --git a/app/[locale]/dashboard/[entityType]/[entitySlug]/usecases/page.tsx b/app/[locale]/dashboard/[entityType]/[entitySlug]/usecases/page.tsx index c2b967fc..750cc743 100644 --- a/app/[locale]/dashboard/[entityType]/[entitySlug]/usecases/page.tsx +++ b/app/[locale]/dashboard/[entityType]/[entitySlug]/usecases/page.tsx @@ -249,8 +249,8 @@ export default function DatasetPage() { return { title: item.title, id: item.id, - created: formatDate(item.created), - modified: formatDate(item.modified), + created: formatDate(item.created) || '', + modified: formatDate(item.modified) || '', }; }); }; diff --git a/components/Tour/TourGuide.tsx b/components/Tour/TourGuide.tsx index 428c801f..37818dd5 100644 --- a/components/Tour/TourGuide.tsx +++ b/components/Tour/TourGuide.tsx @@ -1,7 +1,7 @@ 'use client'; import React, { useEffect } from 'react'; -import Joyride, { CallBackProps, STATUS, EVENTS, ACTIONS } from 'react-joyride'; +import { Joyride, EventData, STATUS, EVENTS, ACTIONS } from 'react-joyride'; import { useTour } from '@/contexts/TourContext'; /** @@ -12,7 +12,7 @@ export function TourGuide() { const { activeTour, isTourRunning, stepIndex, nextStep, prevStep, stopTour, isMobile } = useTour(); // Handle Joyride callbacks - const handleJoyrideCallback = (data: CallBackProps) => { + const handleJoyrideCallback = (data: EventData) => { const { status, type, action } = data; // Tour finished or skipped @@ -59,32 +59,36 @@ export function TourGuide() { run={isTourRunning} stepIndex={stepIndex} continuous={activeTour.continuous ?? true} - showProgress={activeTour.showProgress ?? true} - showSkipButton={activeTour.showSkipButton ?? true} - callback={handleJoyrideCallback} - disableScrolling={activeTour.disableScrolling ?? false} - disableOverlayClose={false} - hideCloseButton={false} + onEvent={handleJoyrideCallback} scrollToFirstStep={true} - scrollOffset={100} - spotlightClicks={false} + options={{ + showProgress: activeTour.showProgress ?? true, + scrollOffset: 100, + overlayClickAction: false, + blockTargetInteraction: true, + ...(activeTour.showSkipButton ? { buttons: ['back', 'close', 'primary', 'skip'] } : {}), + }} // Custom styles matching platform design styles={{ - options: { - arrowColor: 'var(--base-pure-white)', - backgroundColor: 'var(--base-pure-white)', - overlayColor: 'rgba(0, 0, 0, 0.5)', - primaryColor: 'var(--base-violet-solid-9)', - textColor: 'var(--text-default)', - width: isMobile ? 300 : 400, + arrow: { + color: 'var(--base-pure-white)', + }, + overlay: { + backgroundColor: 'rgba(0, 0, 0, 0.5)', + zIndex: 10000, + }, + floater: { zIndex: 10000, }, tooltip: { + backgroundColor: 'var(--base-pure-white)', + color: 'var(--text-default)', + width: isMobile ? 300 : 400, borderRadius: 'var(--border-radius-md, 8px)', padding: isMobile ? 16 : 20, boxShadow: '0 8px 24px rgba(0, 0, 0, 0.15)', - maxHeight: '100vh', - overflowY: 'auto', + maxHeight: '100vh', + overflowY: 'auto', }, tooltipContainer: { textAlign: 'left', @@ -101,7 +105,7 @@ export function TourGuide() { color: 'var(--text-medium)', padding: '8px 0', }, - buttonNext: { + buttonPrimary: { backgroundColor: 'var(--action-primary-basic-default)', borderRadius: 'var(--border-radius-sm, 6px)', color: 'var(--text-on-bg-default)', @@ -146,9 +150,6 @@ export function TourGuide() { cursor: 'pointer', transition: 'color 0.2s ease', }, - spotlight: { - borderRadius: 'var(--border-radius-md, 8px)', - }, beacon: { backgroundColor: 'var(--action-primary-basic-default)', borderRadius: '50%', diff --git a/components/icons.tsx b/components/icons.tsx index 6905421d..2929071d 100644 --- a/components/icons.tsx +++ b/components/icons.tsx @@ -12,6 +12,7 @@ import { IconBrandTwitter, IconBulb, IconCalendar, + IconCalendarEvent, IconChartBar, IconChartLine, IconChartTreemap, @@ -28,6 +29,7 @@ import { IconDatabasePlus, IconDotsVertical, IconDownload, + IconFileDownload, IconFilePlus, IconFileUpload, IconFolder, @@ -58,6 +60,7 @@ import { IconUsers, IconUsersGroup, IconWorld, + IconWorldPin, IconX, // TablerIconsProps, } from '@tabler/icons-react'; @@ -129,4 +132,7 @@ export const Icons: { chartMapPolygon: IconTopologyStarRing3, chartMap: IconWorld, chevronDown: IconChevronDown, + calendarEvent: IconCalendarEvent, + fileDownload: IconFileDownload, + worldPin: IconWorldPin, }; diff --git a/config/tours.ts b/config/tours.ts index 85c438f2..28b219e7 100644 --- a/config/tours.ts +++ b/config/tours.ts @@ -27,31 +27,31 @@ export const homeTour: TourConfig = { target: 'body', content: 'Welcome to CivicDataSpace! Let\'s take a quick tour to help you get started.', placement: 'center', - disableBeacon: true, + skipBeacon: true, }, { target: '[data-tour="search-bar"]', content: 'Use the search bar to quickly find datasets, use cases, and other resources.', placement: 'bottom', - disableBeacon: true, + skipBeacon: true, }, { target: '[data-tour="datasets-link"]', content: 'Browse all available datasets organized by categories and sectors.', placement: 'bottom', - disableBeacon: true, + skipBeacon: true, }, { target: '[data-tour="usecases-link"]', content: 'Explore real-world use cases and applications of our data.', placement: 'bottom', - disableBeacon: true, + skipBeacon: true, }, { target: '[data-tour="publishers-link"]', content: 'View all data publishers and organizations contributing to the platform.', placement: 'bottom', - disableBeacon: true, + skipBeacon: true, }, ], }; @@ -70,25 +70,25 @@ export const datasetsListingTour: TourConfig = { target: '[data-tour="filters"]', content: 'Use filters to narrow down datasets by sector, organization, tags, and more.', placement: 'right', - disableBeacon: true, + skipBeacon: true, }, { target: '[data-tour="search"]', content: 'Search for specific datasets using keywords.', placement: 'bottom', - disableBeacon: true, + skipBeacon: true, }, { target: '[data-tour="sort"]', content: 'Sort datasets by relevance, date, or alphabetically.', placement: 'bottom', - disableBeacon: true, + skipBeacon: true, }, { target: '[data-tour="dataset-card"]', content: 'Click on any dataset card to view detailed information and download options.', placement: 'top', - disableBeacon: true, + skipBeacon: true, }, ], }; @@ -107,25 +107,25 @@ export const datasetDetailTour: TourConfig = { target: '[data-tour="dataset-info"]', content: 'View comprehensive information about the dataset including description, metadata, and publisher details.', placement: 'bottom', - disableBeacon: true, + skipBeacon: true, }, { target: '[data-tour="download-button"]', content: 'Download the dataset in various formats.', placement: 'left', - disableBeacon: true, + skipBeacon: true, }, { target: '[data-tour="preview"]', content: 'Preview the dataset structure and sample data.', placement: 'top', - disableBeacon: true, + skipBeacon: true, }, { target: '[data-tour="related-datasets"]', content: 'Discover related datasets that might be useful for your work.', placement: 'top', - disableBeacon: true, + skipBeacon: true, }, ], }; @@ -144,25 +144,25 @@ export const dashboardTour: TourConfig = { target: '[data-tour="sidebar"]', content: 'Navigate between different sections of your dashboard using the sidebar.', placement: 'right', - disableBeacon: true, + skipBeacon: true, }, { target: '[data-tour="create-dataset"]', content: 'Create and publish new datasets to share with the community.', placement: 'bottom', - disableBeacon: true, + skipBeacon: true, }, { target: '[data-tour="my-datasets"]', content: 'Manage all your published datasets here.', placement: 'bottom', - disableBeacon: true, + skipBeacon: true, }, { target: '[data-tour="analytics"]', content: 'View analytics and insights about your datasets\' usage and impact.', placement: 'left', - disableBeacon: true, + skipBeacon: true, }, ], }; @@ -181,13 +181,13 @@ export const useCasesListingTour: TourConfig = { target: '[data-tour="filters"]', content: 'Filter use cases by sector, status, and related datasets.', placement: 'right', - disableBeacon: true, + skipBeacon: true, }, { target: '[data-tour="usecase-card"]', content: 'Click on any use case to learn more about real-world applications.', placement: 'top', - disableBeacon: true, + skipBeacon: true, }, ], }; diff --git a/lib/utils.ts b/lib/utils.ts index a0820a8a..ce2ecb2d 100644 --- a/lib/utils.ts +++ b/lib/utils.ts @@ -58,8 +58,8 @@ export function cn(...inputs: ClassNameValue[]) { return twMerge(inputs); } -export function formatDate(input: string | number | null): string { - if (input === null || input === undefined) return 'N/A'; +export function formatDate(input: string | number | null): string | null { + if (input === null || input === undefined) return null; const date = new Date(input); return date.toLocaleDateString('en-US', { month: 'long', diff --git a/package-lock.json b/package-lock.json index fa000b38..be62fba4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -32,7 +32,7 @@ "next-auth": "^4.24.7", "next-intl": "^3.4.0", "nuqs": "^2.0.0", - "opub-ui": "^0.4.35", + "opub-ui": "^0.4.41", "react": "^19.2.0", "react-aria": "^3.36.0", "react-dom": "^19.2.0", @@ -283,12 +283,12 @@ "license": "MIT" }, "node_modules/@ariakit/react": { - "version": "0.4.22", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.22.tgz", - "integrity": "sha512-NKVBwMIGGfgMr2AoxvmUWmAeE/g6X/pDozR1S0yInF5tyem2DZQm+Td/9mKmZPu5e0x0hbEX1AQrb8SvL4VoBg==", + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.24.tgz", + "integrity": "sha512-kL0+7ZdPXM8uJ2/cCudm94QKh2DAcE8kNcPnFgnyXaMhStpvkEIumSEu0dIHAGkv7s6NWWANrGZK7ADwcXjoXw==", "license": "MIT", "dependencies": { - "@ariakit/react-core": "0.4.22" + "@ariakit/react-core": "0.4.24" }, "funding": { "type": "opencollective", @@ -300,9 +300,9 @@ } }, "node_modules/@ariakit/react-core": { - "version": "0.4.22", - "resolved": "https://registry.npmjs.org/@ariakit/react-core/-/react-core-0.4.22.tgz", - "integrity": "sha512-fWzQjMDhMCPGXDJ0/MkYF9vktclwF9XPxKm2fCwYfJMFtAha3ZKXnme2t+IAxguBLtklzW+5xTAEjKV4xn9s7A==", + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/@ariakit/react-core/-/react-core-0.4.24.tgz", + "integrity": "sha512-MuqDooqkeaYCeMpvj+ygcONb2bS3CGniD3mW99l7P8Fioa+/kPvQCQfJjC6pR9mWFPCRiOpDjfXGREaYgm5olQ==", "license": "MIT", "dependencies": { "@ariakit/core": "0.4.18", @@ -599,22 +599,22 @@ } }, "node_modules/@babel/helpers": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.6.tgz", - "integrity": "sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==", + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz", + "integrity": "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==", "license": "MIT", "dependencies": { "@babel/template": "^7.28.6", - "@babel/types": "^7.28.6" + "@babel/types": "^7.29.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.0.tgz", - "integrity": "sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==", + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz", + "integrity": "sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==", "license": "MIT", "dependencies": { "@babel/types": "^7.29.0" @@ -1078,9 +1078,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.6.tgz", - "integrity": "sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==", + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.2.tgz", + "integrity": "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==", "license": "MIT", "engines": { "node": ">=6.9.0" @@ -1372,21 +1372,21 @@ } }, "node_modules/@emnapi/core": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.8.1.tgz", - "integrity": "sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.9.1.tgz", + "integrity": "sha512-mukuNALVsoix/w1BJwFzwXBN/dHeejQtuVzcDsfOEsdpCumXb/E9j8w11h5S54tT1xhifGfbbSm/ICrObRb3KA==", "dev": true, "license": "MIT", "optional": true, "dependencies": { - "@emnapi/wasi-threads": "1.1.0", + "@emnapi/wasi-threads": "1.2.0", "tslib": "^2.4.0" } }, "node_modules/@emnapi/runtime": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.8.1.tgz", - "integrity": "sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.9.1.tgz", + "integrity": "sha512-VYi5+ZVLhpgK4hQ0TAjiQiZ6ol0oe4mBx7mVv7IflsiEp0OWoVsp/+f9Vc1hOhE0TtkORVrI1GvzyreqpgWtkA==", "license": "MIT", "optional": true, "dependencies": { @@ -1394,9 +1394,9 @@ } }, "node_modules/@emnapi/wasi-threads": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", - "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.0.tgz", + "integrity": "sha512-N10dEJNSsUx41Z6pZsXU8FjPjpBEplgH24sfkmITrBED1/U2Esum9F3lfLrMjKHHjmi557zQn7kR9R+XWXu5Rg==", "dev": true, "license": "MIT", "optional": true, @@ -1900,9 +1900,9 @@ "license": "MIT" }, "node_modules/@eslint/config-array/node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", + "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", "dev": true, "license": "MIT", "dependencies": { @@ -1998,9 +1998,9 @@ "license": "MIT" }, "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", + "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", "dev": true, "license": "MIT", "dependencies": { @@ -2082,6 +2082,22 @@ "dev": true, "license": "MIT" }, + "node_modules/@fastify/deepmerge": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@fastify/deepmerge/-/deepmerge-3.2.1.tgz", + "integrity": "sha512-N5Oqvltoa2r9z1tbx4xjky0oRR60v+T47Ic4J1ukoVQcptLOrIdRnCSdTGmOmajZuHVKlTnfcmrjyqsGEW1ztA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "MIT" + }, "node_modules/@floating-ui/core": { "version": "1.7.5", "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.7.5.tgz", @@ -2181,11 +2197,23 @@ } }, "node_modules/@gilbarbara/deep-equal": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@gilbarbara/deep-equal/-/deep-equal-0.3.1.tgz", - "integrity": "sha512-I7xWjLs2YSVMc5gGx1Z3ZG1lgFpITPndpi8Ku55GeEIKpACCPQNS/OTqQbxgTCfq0Ncvcc+CrFov96itVh6Qvw==", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@gilbarbara/deep-equal/-/deep-equal-0.4.1.tgz", + "integrity": "sha512-QF2BGeQjsa59T59XvFdR3is5jrl28Eg0J6giXAC5919bcqvR8XP4B+07tpbs6Y6/IQd4FBncaL2WVXIBgSxt4w==", "license": "MIT" }, + "node_modules/@gilbarbara/hooks": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@gilbarbara/hooks/-/hooks-0.11.0.tgz", + "integrity": "sha512-CIVazdxqFRplUfm9wZL3/0X1TURJekhPMWGFdWzEmyJrGPiotX2yxA1KiB8N7VnhawIaMtb2Apnda4Y6DRwi2Q==", + "license": "MIT", + "dependencies": { + "@gilbarbara/deep-equal": "^0.4.1" + }, + "peerDependencies": { + "react": "16.8 - 19" + } + }, "node_modules/@gilbarbara/types": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/@gilbarbara/types/-/types-0.2.2.tgz", @@ -4965,9 +4993,9 @@ "license": "MIT" }, "node_modules/@next/eslint-plugin-next": { - "version": "15.5.12", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-15.5.12.tgz", - "integrity": "sha512-+ZRSDFTv4aC96aMb5E41rMjysx8ApkryevnvEYZvPZO52KvkqP5rNExLUXJFr9P4s0f3oqNQR6vopCZsPWKDcQ==", + "version": "15.5.14", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-15.5.14.tgz", + "integrity": "sha512-ogBjgsFrPPz19abP3VwcYSahbkUOMMvJjxCOYWYndw+PydeMuLuB4XrvNkNutFrTjC9St2KFULRdKID8Sd/CMQ==", "dev": true, "license": "MIT", "dependencies": { @@ -5334,9 +5362,9 @@ } }, "node_modules/@opentelemetry/api": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz", - "integrity": "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.1.tgz", + "integrity": "sha512-gLyJlPHPZYdAk1JENA9LeHejZe1Ti77/pTeFm/nMXmQH/HFZlcS/O2XJB+L8fkbrNSqhdtlvjBVjxwUYanNH5Q==", "license": "Apache-2.0", "peer": true, "engines": { @@ -6318,16 +6346,6 @@ "node": ">=12" } }, - "node_modules/@popperjs/core": { - "version": "2.11.8", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", - "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, "node_modules/@prisma/instrumentation": { "version": "5.22.0", "resolved": "https://registry.npmjs.org/@prisma/instrumentation/-/instrumentation-5.22.0.tgz", @@ -9368,50 +9386,50 @@ "license": "MIT" }, "node_modules/@sentry-internal/browser-utils": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/browser-utils/-/browser-utils-8.55.0.tgz", - "integrity": "sha512-ROgqtQfpH/82AQIpESPqPQe0UyWywKJsmVIqi3c5Fh+zkds5LUxnssTj3yNd1x+kxaPDVB023jAP+3ibNgeNDw==", + "version": "8.55.1", + "resolved": "https://registry.npmjs.org/@sentry-internal/browser-utils/-/browser-utils-8.55.1.tgz", + "integrity": "sha512-SipXiwVhJrxzy3/4kf+YIFmpYlLKtGSRD+er7SBCcuSBtv31Fee8IXMDvk+bq24gRXxyjOLUmT//GGXjy2LL6w==", "license": "MIT", "dependencies": { - "@sentry/core": "8.55.0" + "@sentry/core": "8.55.1" }, "engines": { "node": ">=14.18" } }, "node_modules/@sentry-internal/feedback": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-8.55.0.tgz", - "integrity": "sha512-cP3BD/Q6pquVQ+YL+rwCnorKuTXiS9KXW8HNKu4nmmBAyf7urjs+F6Hr1k9MXP5yQ8W3yK7jRWd09Yu6DHWOiw==", + "version": "8.55.1", + "resolved": "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-8.55.1.tgz", + "integrity": "sha512-9iFHaT/ijtzB0ffZhXMnt2rPNIXO/dDiCL1G1Bc55rQMPXgawR9AIaAWciyqQjYcbL1DDOhWbzdVqB+kVs5gXw==", "license": "MIT", "dependencies": { - "@sentry/core": "8.55.0" + "@sentry/core": "8.55.1" }, "engines": { "node": ">=14.18" } }, "node_modules/@sentry-internal/replay": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/replay/-/replay-8.55.0.tgz", - "integrity": "sha512-roCDEGkORwolxBn8xAKedybY+Jlefq3xYmgN2fr3BTnsXjSYOPC7D1/mYqINBat99nDtvgFvNfRcZPiwwZ1hSw==", + "version": "8.55.1", + "resolved": "https://registry.npmjs.org/@sentry-internal/replay/-/replay-8.55.1.tgz", + "integrity": "sha512-XaX6r8pXeX47rfiQrSQUwkgxHsDkOKzIT++zfTwrmveVlYSqAhp3x+AKhxAXGmKG62wlmAKQz54GJKcG4cgyKQ==", "license": "MIT", "dependencies": { - "@sentry-internal/browser-utils": "8.55.0", - "@sentry/core": "8.55.0" + "@sentry-internal/browser-utils": "8.55.1", + "@sentry/core": "8.55.1" }, "engines": { "node": ">=14.18" } }, "node_modules/@sentry-internal/replay-canvas": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/replay-canvas/-/replay-canvas-8.55.0.tgz", - "integrity": "sha512-nIkfgRWk1091zHdu4NbocQsxZF1rv1f7bbp3tTIlZYbrH62XVZosx5iHAuZG0Zc48AETLE7K4AX9VGjvQj8i9w==", + "version": "8.55.1", + "resolved": "https://registry.npmjs.org/@sentry-internal/replay-canvas/-/replay-canvas-8.55.1.tgz", + "integrity": "sha512-2sKRu96Qe70y6TiYdYbwkhg4um2prgzH/ZJRItuoSEAjPjoFYYlP+1qjE2CcBw4RPS8/PimV7SFheSaeZs2GCw==", "license": "MIT", "dependencies": { - "@sentry-internal/replay": "8.55.0", - "@sentry/core": "8.55.0" + "@sentry-internal/replay": "8.55.1", + "@sentry/core": "8.55.1" }, "engines": { "node": ">=14.18" @@ -9427,16 +9445,16 @@ } }, "node_modules/@sentry/browser": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-8.55.0.tgz", - "integrity": "sha512-1A31mCEWCjaMxJt6qGUK+aDnLDcK6AwLAZnqpSchNysGni1pSn1RWSmk9TBF8qyTds5FH8B31H480uxMPUJ7Cw==", + "version": "8.55.1", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-8.55.1.tgz", + "integrity": "sha512-OEn2eg8h3Mr7BmBGQ28BqbWehYA/NklZ0pAZB1FypPPl+kMd85AbaRdGTnaSjgmpc8bKbBO64edq4Y14sbCs5w==", "license": "MIT", "dependencies": { - "@sentry-internal/browser-utils": "8.55.0", - "@sentry-internal/feedback": "8.55.0", - "@sentry-internal/replay": "8.55.0", - "@sentry-internal/replay-canvas": "8.55.0", - "@sentry/core": "8.55.0" + "@sentry-internal/browser-utils": "8.55.1", + "@sentry-internal/feedback": "8.55.1", + "@sentry-internal/replay": "8.55.1", + "@sentry-internal/replay-canvas": "8.55.1", + "@sentry/core": "8.55.1" }, "engines": { "node": ">=14.18" @@ -9468,9 +9486,9 @@ "license": "MIT" }, "node_modules/@sentry/bundler-plugin-core/node_modules/brace-expansion": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.3.tgz", + "integrity": "sha512-MCV/fYJEbqx68aE58kv2cA/kiky1G8vux3OR6/jbS+jIMe/6fJWa0DTzJU7dqijOWYwHi1t29FlfYI9uytqlpA==", "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" @@ -9747,29 +9765,29 @@ } }, "node_modules/@sentry/core": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-8.55.0.tgz", - "integrity": "sha512-6g7jpbefjHYs821Z+EBJ8r4Z7LT5h80YSWRJaylGS4nW5W5Z2KXzpdnyFarv37O7QjauzVC2E+PABmpkw5/JGA==", + "version": "8.55.1", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-8.55.1.tgz", + "integrity": "sha512-0ea+yDOgaijR3ba2al1QZxY0bZ9MBZq2a0G+2A0uCBpBkiXnpLFGVAo9UAlEikN1C4M8ROZYiuFU7yZCqacgLQ==", "license": "MIT", "engines": { "node": ">=14.18" } }, "node_modules/@sentry/nextjs": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry/nextjs/-/nextjs-8.55.0.tgz", - "integrity": "sha512-poUjt8KF/6RKn0AwBYgtFu764nduziCYpuLgfDNTs7qAMWBMq3tTnDiXxjwJCDnaPeZRAK2pfoAEZxWSXf+22w==", + "version": "8.55.1", + "resolved": "https://registry.npmjs.org/@sentry/nextjs/-/nextjs-8.55.1.tgz", + "integrity": "sha512-AiOqnXO9CCHnctIzOJCCOS4Ykk5VEXDmNdUf/TaH72KJJ0lFXUMXxCGv0ZijLrHTAoKdwUlDucZhmDXavKmkqQ==", "license": "MIT", "dependencies": { "@opentelemetry/api": "^1.9.0", "@opentelemetry/semantic-conventions": "^1.28.0", "@rollup/plugin-commonjs": "28.0.1", - "@sentry-internal/browser-utils": "8.55.0", - "@sentry/core": "8.55.0", - "@sentry/node": "8.55.0", - "@sentry/opentelemetry": "8.55.0", - "@sentry/react": "8.55.0", - "@sentry/vercel-edge": "8.55.0", + "@sentry-internal/browser-utils": "8.55.1", + "@sentry/core": "8.55.1", + "@sentry/node": "8.55.1", + "@sentry/opentelemetry": "8.55.1", + "@sentry/react": "8.55.1", + "@sentry/vercel-edge": "8.55.1", "@sentry/webpack-plugin": "2.22.7", "chalk": "3.0.0", "resolve": "1.22.8", @@ -9809,9 +9827,9 @@ } }, "node_modules/@sentry/node": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry/node/-/node-8.55.0.tgz", - "integrity": "sha512-h10LJLDTRAzYgay60Oy7moMookqqSZSviCWkkmHZyaDn+4WURnPp5SKhhfrzPRQcXKrweiOwDSHBgn1tweDssg==", + "version": "8.55.1", + "resolved": "https://registry.npmjs.org/@sentry/node/-/node-8.55.1.tgz", + "integrity": "sha512-s8ydn/OxZFIxc9Fvt23gJkrXkCvPnUu2bDKwjQBCx0M1b4DdNdp4FaimT6B9reya7buj+tsNkZAoT11KqFhG/g==", "license": "MIT", "dependencies": { "@opentelemetry/api": "^1.9.0", @@ -9846,8 +9864,8 @@ "@opentelemetry/sdk-trace-base": "^1.30.1", "@opentelemetry/semantic-conventions": "^1.28.0", "@prisma/instrumentation": "5.22.0", - "@sentry/core": "8.55.0", - "@sentry/opentelemetry": "8.55.0", + "@sentry/core": "8.55.1", + "@sentry/opentelemetry": "8.55.1", "import-in-the-middle": "^1.11.2" }, "engines": { @@ -9855,12 +9873,12 @@ } }, "node_modules/@sentry/opentelemetry": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry/opentelemetry/-/opentelemetry-8.55.0.tgz", - "integrity": "sha512-UvatdmSr3Xf+4PLBzJNLZ2JjG1yAPWGe/VrJlJAqyTJ2gKeTzgXJJw8rp4pbvNZO8NaTGEYhhO+scLUj0UtLAQ==", + "version": "8.55.1", + "resolved": "https://registry.npmjs.org/@sentry/opentelemetry/-/opentelemetry-8.55.1.tgz", + "integrity": "sha512-ipiM/k3Hzt8visoBfkDb4AQBWHkJeou3SjoPec7NlDabH/Jj8x6VlK5Hex4z+WOv99rRy+5MUtga/CZnOjvh0A==", "license": "MIT", "dependencies": { - "@sentry/core": "8.55.0" + "@sentry/core": "8.55.1" }, "engines": { "node": ">=14.18" @@ -9875,13 +9893,13 @@ } }, "node_modules/@sentry/react": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry/react/-/react-8.55.0.tgz", - "integrity": "sha512-/qNBvFLpvSa/Rmia0jpKfJdy16d4YZaAnH/TuKLAtm0BWlsPQzbXCU4h8C5Hsst0Do0zG613MEtEmWpWrVOqWA==", + "version": "8.55.1", + "resolved": "https://registry.npmjs.org/@sentry/react/-/react-8.55.1.tgz", + "integrity": "sha512-vrqEI1EVRMaeUluHSt84//WFuMecqAfwS+t2SojhvXtsSP6BbaCHd0jt7til5MBzI9kWAQjIxsUUr3pbFAviVg==", "license": "MIT", "dependencies": { - "@sentry/browser": "8.55.0", - "@sentry/core": "8.55.0", + "@sentry/browser": "8.55.1", + "@sentry/core": "8.55.1", "hoist-non-react-statics": "^3.3.2" }, "engines": { @@ -9892,13 +9910,13 @@ } }, "node_modules/@sentry/vercel-edge": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry/vercel-edge/-/vercel-edge-8.55.0.tgz", - "integrity": "sha512-uDoHz+iBjkXsyRStodZxHssMXj7WbOrDkFLy7ggCtvREBg2n4CRS4OcBu+kAwZOysOZblAtx/ZOdIMW1kJXswQ==", + "version": "8.55.1", + "resolved": "https://registry.npmjs.org/@sentry/vercel-edge/-/vercel-edge-8.55.1.tgz", + "integrity": "sha512-gVxiltkEr4Pu0J4Q0QfyELKoWQ7a6nS22FaA1ityZ7daJz/5zaGrKR+t11/7IGIxybGk1mGdnRS++9DzVPvAhw==", "license": "MIT", "dependencies": { "@opentelemetry/api": "^1.9.0", - "@sentry/core": "8.55.0" + "@sentry/core": "8.55.1" }, "engines": { "node": ">=14.18" @@ -10022,9 +10040,9 @@ } }, "node_modules/@tabler/icons": { - "version": "3.40.0", - "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.40.0.tgz", - "integrity": "sha512-V/Q4VgNPKubRTiLdmWjV/zscYcj5IIk+euicUtaVVqF6luSC9rDngYWgST5/yh3Mrg/mYUwRv1YVTk71Jp0twQ==", + "version": "3.41.0", + "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.41.0.tgz", + "integrity": "sha512-arlig0nkaC9UGqTZuT1MMZepX29t3Ysx5HSy2UvmR+CZrhlNxZrCM6Z4qYBoaIO+2ICZykttjBCSpf+p/t0H3w==", "license": "MIT", "funding": { "type": "github", @@ -10032,12 +10050,12 @@ } }, "node_modules/@tabler/icons-react": { - "version": "3.40.0", - "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.40.0.tgz", - "integrity": "sha512-oO5+6QCnna4a//mYubx4euZfECtzQZFDGsDMIdzZUhbdyBCT+3bRVFBPueGIcemWld4Vb/0UQ39C/cmGfGylAg==", + "version": "3.41.0", + "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.41.0.tgz", + "integrity": "sha512-8XKc3wZKf1icxqwIPSOO61M+dtf8yJPwAE/rtFAVzc5Ros+OjCqowfcoI5IpKK09RSo8s0hHrWvydGgnXqYILg==", "license": "MIT", "dependencies": { - "@tabler/icons": "3.40.0" + "@tabler/icons": "3.41.0" }, "funding": { "type": "github", @@ -10166,9 +10184,9 @@ } }, "node_modules/@types/debug": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", - "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.13.tgz", + "integrity": "sha512-KSVgmQmzMwPlmtljOomayoR89W4FynCAi3E8PPs7vmDVPe84hT+vGPKkJfThkmXs0x0jAaa9U8uW8bbfyS2fWw==", "license": "MIT", "dependencies": { "@types/ms": "*" @@ -10311,13 +10329,6 @@ "@types/pg": "*" } }, - "node_modules/@types/prop-types": { - "version": "15.7.15", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.15.tgz", - "integrity": "sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==", - "license": "MIT", - "optional": true - }, "node_modules/@types/react": { "version": "19.2.14", "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.14.tgz", @@ -10370,17 +10381,17 @@ } }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.57.0.tgz", - "integrity": "sha512-qeu4rTHR3/IaFORbD16gmjq9+rEs9fGKdX0kF6BKSfi+gCuG3RCKLlSBYzn/bGsY9Tj7KE/DAQStbp8AHJGHEQ==", + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.57.2.tgz", + "integrity": "sha512-NZZgp0Fm2IkD+La5PR81sd+g+8oS6JwJje+aRWsDocxHkjyRw0J5L5ZTlN3LI1LlOcGL7ph3eaIUmTXMIjLk0w==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.12.2", - "@typescript-eslint/scope-manager": "8.57.0", - "@typescript-eslint/type-utils": "8.57.0", - "@typescript-eslint/utils": "8.57.0", - "@typescript-eslint/visitor-keys": "8.57.0", + "@typescript-eslint/scope-manager": "8.57.2", + "@typescript-eslint/type-utils": "8.57.2", + "@typescript-eslint/utils": "8.57.2", + "@typescript-eslint/visitor-keys": "8.57.2", "ignore": "^7.0.5", "natural-compare": "^1.4.0", "ts-api-utils": "^2.4.0" @@ -10393,23 +10404,23 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.57.0", + "@typescript-eslint/parser": "^8.57.2", "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/parser": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.57.0.tgz", - "integrity": "sha512-XZzOmihLIr8AD1b9hL9ccNMzEMWt/dE2u7NyTY9jJG6YNiNthaD5XtUHVF2uCXZ15ng+z2hT3MVuxnUYhq6k1g==", + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.57.2.tgz", + "integrity": "sha512-30ScMRHIAD33JJQkgfGW1t8CURZtjc2JpTrq5n2HFhOefbAhb7ucc7xJwdWcrEtqUIYJ73Nybpsggii6GtAHjA==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.57.0", - "@typescript-eslint/types": "8.57.0", - "@typescript-eslint/typescript-estree": "8.57.0", - "@typescript-eslint/visitor-keys": "8.57.0", + "@typescript-eslint/scope-manager": "8.57.2", + "@typescript-eslint/types": "8.57.2", + "@typescript-eslint/typescript-estree": "8.57.2", + "@typescript-eslint/visitor-keys": "8.57.2", "debug": "^4.4.3" }, "engines": { @@ -10425,14 +10436,14 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.57.0.tgz", - "integrity": "sha512-pR+dK0BlxCLxtWfaKQWtYr7MhKmzqZxuii+ZjuFlZlIGRZm22HnXFqa2eY+90MUz8/i80YJmzFGDUsi8dMOV5w==", + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.57.2.tgz", + "integrity": "sha512-FuH0wipFywXRTHf+bTTjNyuNQQsQC3qh/dYzaM4I4W0jrCqjCVuUh99+xd9KamUfmCGPvbO8NDngo/vsnNVqgw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.57.0", - "@typescript-eslint/types": "^8.57.0", + "@typescript-eslint/tsconfig-utils": "^8.57.2", + "@typescript-eslint/types": "^8.57.2", "debug": "^4.4.3" }, "engines": { @@ -10447,14 +10458,14 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.57.0.tgz", - "integrity": "sha512-nvExQqAHF01lUM66MskSaZulpPL5pgy5hI5RfrxviLgzZVffB5yYzw27uK/ft8QnKXI2X0LBrHJFr1TaZtAibw==", + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.57.2.tgz", + "integrity": "sha512-snZKH+W4WbWkrBqj4gUNRIGb/jipDW3qMqVJ4C9rzdFc+wLwruxk+2a5D+uoFcKPAqyqEnSb4l2ULuZf95eSkw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.57.0", - "@typescript-eslint/visitor-keys": "8.57.0" + "@typescript-eslint/types": "8.57.2", + "@typescript-eslint/visitor-keys": "8.57.2" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -10465,9 +10476,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.57.0.tgz", - "integrity": "sha512-LtXRihc5ytjJIQEH+xqjB0+YgsV4/tW35XKX3GTZHpWtcC8SPkT/d4tqdf1cKtesryHm2bgp6l555NYcT2NLvA==", + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.57.2.tgz", + "integrity": "sha512-3Lm5DSM+DCowsUOJC+YqHHnKEfFh5CoGkj5Z31NQSNF4l5wdOwqGn99wmwN/LImhfY3KJnmordBq/4+VDe2eKw==", "dev": true, "license": "MIT", "engines": { @@ -10482,15 +10493,15 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.57.0.tgz", - "integrity": "sha512-yjgh7gmDcJ1+TcEg8x3uWQmn8ifvSupnPfjP21twPKrDP/pTHlEQgmKcitzF/rzPSmv7QjJ90vRpN4U+zoUjwQ==", + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.57.2.tgz", + "integrity": "sha512-Co6ZCShm6kIbAM/s+oYVpKFfW7LBc6FXoPXjTRQ449PPNBY8U0KZXuevz5IFuuUj2H9ss40atTaf9dlGLzbWZg==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.57.0", - "@typescript-eslint/typescript-estree": "8.57.0", - "@typescript-eslint/utils": "8.57.0", + "@typescript-eslint/types": "8.57.2", + "@typescript-eslint/typescript-estree": "8.57.2", + "@typescript-eslint/utils": "8.57.2", "debug": "^4.4.3", "ts-api-utils": "^2.4.0" }, @@ -10507,9 +10518,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.57.0.tgz", - "integrity": "sha512-dTLI8PEXhjUC7B9Kre+u0XznO696BhXcTlOn0/6kf1fHaQW8+VjJAVHJ3eTI14ZapTxdkOmc80HblPQLaEeJdg==", + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.57.2.tgz", + "integrity": "sha512-/iZM6FnM4tnx9csuTxspMW4BOSegshwX5oBDznJ7S4WggL7Vczz5d2W11ecc4vRrQMQHXRSxzrCsyG5EsPPTbA==", "dev": true, "license": "MIT", "engines": { @@ -10521,16 +10532,16 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.57.0.tgz", - "integrity": "sha512-m7faHcyVg0BT3VdYTlX8GdJEM7COexXxS6KqGopxdtkQRvBanK377QDHr4W/vIPAR+ah9+B/RclSW5ldVniO1Q==", + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.57.2.tgz", + "integrity": "sha512-2MKM+I6g8tJxfSmFKOnHv2t8Sk3T6rF20A1Puk0svLK+uVapDZB/4pfAeB7nE83uAZrU6OxW+HmOd5wHVdXwXA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/project-service": "8.57.0", - "@typescript-eslint/tsconfig-utils": "8.57.0", - "@typescript-eslint/types": "8.57.0", - "@typescript-eslint/visitor-keys": "8.57.0", + "@typescript-eslint/project-service": "8.57.2", + "@typescript-eslint/tsconfig-utils": "8.57.2", + "@typescript-eslint/types": "8.57.2", + "@typescript-eslint/visitor-keys": "8.57.2", "debug": "^4.4.3", "minimatch": "^10.2.2", "semver": "^7.7.3", @@ -10549,16 +10560,16 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.57.0.tgz", - "integrity": "sha512-5iIHvpD3CZe06riAsbNxxreP+MuYgVUsV0n4bwLH//VJmgtt54sQeY2GszntJ4BjYCpMzrfVh2SBnUQTtys2lQ==", + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.57.2.tgz", + "integrity": "sha512-krRIbvPK1ju1WBKIefiX+bngPs+odIQUtR7kymzPfo1POVw3jlF+nLkmexdSSd4UCbDcQn+wMBATOOmpBbqgKg==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.9.1", - "@typescript-eslint/scope-manager": "8.57.0", - "@typescript-eslint/types": "8.57.0", - "@typescript-eslint/typescript-estree": "8.57.0" + "@typescript-eslint/scope-manager": "8.57.2", + "@typescript-eslint/types": "8.57.2", + "@typescript-eslint/typescript-estree": "8.57.2" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -10573,13 +10584,13 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.57.0.tgz", - "integrity": "sha512-zm6xx8UT/Xy2oSr2ZXD0pZo7Jx2XsCoID2IUh9YSTFRu7z+WdwYTRk6LhUftm1crwqbuoF6I8zAFeCMw0YjwDg==", + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.57.2.tgz", + "integrity": "sha512-zhahknjobV2FiD6Ee9iLbS7OV9zi10rG26odsQdfBO/hjSzUQbkIYgda+iNKK1zNiW2ey+Lf8MU5btN17V3dUw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.57.0", + "@typescript-eslint/types": "8.57.2", "eslint-visitor-keys": "^5.0.0" }, "engines": { @@ -11280,9 +11291,9 @@ } }, "node_modules/anymatch/node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", + "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", "license": "MIT", "engines": { "node": ">=8.6" @@ -11751,9 +11762,9 @@ "license": "MIT" }, "node_modules/baseline-browser-mapping": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.0.tgz", - "integrity": "sha512-lIyg0szRfYbiy67j9KN8IyeD7q7hcmqnJ1ddWmNt19ItGpNN64mnllmxUNFIOdOm6by97jlL6wfpTTJrmnjWAA==", + "version": "2.10.11", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.11.tgz", + "integrity": "sha512-DAKrHphkJyiGuau/cFieRYhcTFeK/lBuD++C7cZ6KZHbMhBrisoi+EvhQ5RZrIfV5qwsW8kgQ07JIC+MDJRAhg==", "license": "Apache-2.0", "bin": { "baseline-browser-mapping": "dist/cli.cjs" @@ -11908,9 +11919,9 @@ } }, "node_modules/brace-expansion": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.4.tgz", - "integrity": "sha512-h+DEnpVvxmfVefa4jFbCf5HdH5YMDXRsmKflpf1pILZWRFlTbJpxeU55nJl4Smt5HQaGzg1o6RHFPJaOqnmBDg==", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.5.tgz", + "integrity": "sha512-VZznLgtwhn+Mact9tfiwx64fA9erHH/MCXEUfB/0bX/6Fz6ny5EGTXYltMocqg4xFAQZtnO3DHWWXi8RiuN7cQ==", "dev": true, "license": "MIT", "dependencies": { @@ -12158,9 +12169,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001777", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001777.tgz", - "integrity": "sha512-tmN+fJxroPndC74efCdp12j+0rk0RHwV5Jwa1zWaFVyw2ZxAuPeG8ZgWC3Wz7uSjT3qMRQ5XHZ4COgQmsCMJAQ==", + "version": "1.0.30001781", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001781.tgz", + "integrity": "sha512-RdwNCyMsNBftLjW6w01z8bKEvT6e/5tpPVEgtn22TiLGlstHOVecsX2KHFkD5e/vRnIE4EGzpuIODb3mtswtkw==", "funding": [ { "type": "opencollective", @@ -12480,6 +12491,22 @@ "node": ">=6" } }, + "node_modules/cmdk": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/cmdk/-/cmdk-1.1.1.tgz", + "integrity": "sha512-Vsv7kFaXm+ptHDMZ7izaRsP70GgrW9NBNGswt9OZaVBLlE0SNpDq8eu/VGXyF9r7M0azK3Wy7OlYXsuyYLFzHg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "^1.1.1", + "@radix-ui/react-dialog": "^1.1.6", + "@radix-ui/react-id": "^1.1.0", + "@radix-ui/react-primitive": "^2.0.2" + }, + "peerDependencies": { + "react": "^18 || ^19 || ^19.0.0-rc", + "react-dom": "^18 || ^19 || ^19.0.0-rc" + } + }, "node_modules/color": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", @@ -13342,24 +13369,6 @@ "dev": true, "license": "MIT" }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/deepmerge-ts": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/deepmerge-ts/-/deepmerge-ts-7.1.5.tgz", - "integrity": "sha512-HOJkrhaYsweh+W+e74Yn7YStZOilkoPb6fycpwNLKzSPtruFs48nYis0zy5yJz1+ktUhHxoRDJ27RQAWLIJVJw==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=16.0.0" - } - }, "node_modules/default-browser": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.5.0.tgz", @@ -13675,9 +13684,9 @@ "license": "0BSD" }, "node_modules/electron-to-chromium": { - "version": "1.5.307", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.307.tgz", - "integrity": "sha512-5z3uFKBWjiNR44nFcYdkcXjKMbg5KXNdciu7mhTPo9tB7NbqSNP2sSnGR+fqknZSCwKkBN+oxiiajWs4dT6ORg==", + "version": "1.5.328", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.328.tgz", + "integrity": "sha512-QNQ5l45DzYytThO21403XN3FvK0hOkWDG8viNf6jqS42msJ8I4tGDSpBCgvDRRPnkffafiwAym2X2eHeGD2V0w==", "license": "ISC" }, "node_modules/embla-carousel": { @@ -13703,9 +13712,9 @@ "license": "MIT" }, "node_modules/enhanced-resolve": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.20.0.tgz", - "integrity": "sha512-/ce7+jQ1PQ6rVXwe+jKEg5hW5ciicHwIQUagZkp6IufBoY3YDgdTTY1azVs0qoRgVmvsNB+rbjLJxDAeHHtwsQ==", + "version": "5.20.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.20.1.tgz", + "integrity": "sha512-Qohcme7V1inbAfvjItgw0EaxVX5q2rdVEZHRBrEQdRZTssLDGsL8Lwrznl8oQ/6kuTJONLaDcGjkNP247XEhcA==", "license": "MIT", "dependencies": { "graceful-fs": "^4.2.4", @@ -13858,9 +13867,9 @@ } }, "node_modules/es-iterator-helpers": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.2.tgz", - "integrity": "sha512-BrUQ0cPTB/IwXj23HtwHjS9n7O4h9FX94b4xc5zlTHxeLgTAdzYUDyy6KdExAl9lbN5rtfe44xpjpmj9grxs5w==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.3.1.tgz", + "integrity": "sha512-zWwRvqWiuBPr0muUG/78cW3aHROFCNIQ3zpmYDpwdbnt2m+xlNyRWpHBpa2lJjSBit7BQ+RXA1iwbSmu5yJ/EQ==", "dev": true, "license": "MIT", "dependencies": { @@ -13879,6 +13888,7 @@ "has-symbols": "^1.1.0", "internal-slot": "^1.1.0", "iterator.prototype": "^1.1.5", + "math-intrinsics": "^1.1.0", "safe-array-concat": "^1.1.3" }, "engines": { @@ -14111,13 +14121,13 @@ } }, "node_modules/eslint-config-next": { - "version": "15.5.12", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-15.5.12.tgz", - "integrity": "sha512-ktW3XLfd+ztEltY5scJNjxjHwtKWk6vU2iwzZqSN09UsbBmMeE/cVlJ1yESg6Yx5LW7p/Z8WzUAgYXGLEmGIpg==", + "version": "15.5.14", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-15.5.14.tgz", + "integrity": "sha512-lmJ5F8ZgOYogq0qtH4L5SpxuASY2SPdOzqUprN2/56+P3GPsIpXaUWIJC66kYIH+yZdsM4nkHE5MIBP6s1NiBw==", "dev": true, "license": "MIT", "dependencies": { - "@next/eslint-plugin-next": "15.5.12", + "@next/eslint-plugin-next": "15.5.14", "@rushstack/eslint-patch": "^1.10.3", "@typescript-eslint/eslint-plugin": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0", "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0", @@ -14278,9 +14288,9 @@ "license": "MIT" }, "node_modules/eslint-plugin-import/node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", + "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", "dev": true, "license": "MIT", "dependencies": { @@ -14359,9 +14369,9 @@ "license": "MIT" }, "node_modules/eslint-plugin-jsx-a11y/node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", + "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", "dev": true, "license": "MIT", "dependencies": { @@ -14436,9 +14446,9 @@ "license": "MIT" }, "node_modules/eslint-plugin-react/node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", + "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", "dev": true, "license": "MIT", "dependencies": { @@ -14548,9 +14558,9 @@ "license": "MIT" }, "node_modules/eslint/node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", + "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", "dev": true, "license": "MIT", "dependencies": { @@ -15128,9 +15138,9 @@ } }, "node_modules/flatted": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.1.tgz", - "integrity": "sha512-IxfVbRFVlV8V/yRaGzk0UVIcsKKHMSfYw66T/u4nTwlWteQePsxe//LjudR1AMX4tZW3WFCh3Zqa/sjlqpbURQ==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.2.tgz", + "integrity": "sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==", "dev": true, "license": "ISC" }, @@ -15223,13 +15233,13 @@ } }, "node_modules/framer-motion": { - "version": "12.35.2", - "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-12.35.2.tgz", - "integrity": "sha512-dhfuEMaNo0hc+AEqyHiIfiJRNb9U9UQutE9FoKm5pjf7CMitp9xPEF1iWZihR1q86LBmo6EJ7S8cN8QXEy49AA==", + "version": "12.38.0", + "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-12.38.0.tgz", + "integrity": "sha512-rFYkY/pigbcswl1XQSb7q424kSTQ8q6eAC+YUsSKooHQYuLdzdHjrt6uxUC+PRAO++q5IS7+TamgIw1AphxR+g==", "license": "MIT", "dependencies": { - "motion-dom": "^12.35.2", - "motion-utils": "^12.29.2", + "motion-dom": "^12.38.0", + "motion-utils": "^12.36.0", "tslib": "^2.4.0" }, "peerDependencies": { @@ -15437,9 +15447,9 @@ } }, "node_modules/get-tsconfig": { - "version": "4.13.6", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.6.tgz", - "integrity": "sha512-shZT/QMiSHc/YBLxxOkMtgSid5HFoauqCE3/exfsEcwg1WkeqjG+V40yBbBrsD+jW2HDXcs28xOfcbm2jI8Ddw==", + "version": "4.13.7", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.7.tgz", + "integrity": "sha512-7tN6rFgBlMgpBML5j8typ92BKFi2sFQvIdpAqLA2beia5avZDrMs0FLZiM5etShWq5irVyGcGMEA1jcDaK7A/Q==", "dev": true, "license": "MIT", "dependencies": { @@ -15563,9 +15573,9 @@ "license": "MIT" }, "node_modules/glob/node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", + "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", @@ -15739,9 +15749,9 @@ "license": "ISC" }, "node_modules/graphql": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-16.13.1.tgz", - "integrity": "sha512-gGgrVCoDKlIZ8fIqXBBb0pPKqDgki0Z/FSKNiQzSGj2uEYHr1tq5wmBegGwJx6QB5S5cM0khSBpi/JFHMCvsmQ==", + "version": "16.13.2", + "resolved": "https://registry.npmjs.org/graphql/-/graphql-16.13.2.tgz", + "integrity": "sha512-5bJ+nf/UCpAjHM8i06fl7eLyVC9iuNAjm9qzkiu2ZGhM0VscSvS6WDPfAwkdkBuoXGM9FJSbKl6wylMwP9Ktig==", "license": "MIT", "peer": true, "engines": { @@ -15791,9 +15801,9 @@ } }, "node_modules/graphql-config/node_modules/@graphql-tools/batch-execute": { - "version": "10.0.5", - "resolved": "https://registry.npmjs.org/@graphql-tools/batch-execute/-/batch-execute-10.0.5.tgz", - "integrity": "sha512-dL13tXkfGvAzLq2XfzTKAy9logIcltKYRuPketxdh3Ok3U6PN1HKMCHfrE9cmtAsxD96/8Hlghz5AtM+LRv/ig==", + "version": "10.0.7", + "resolved": "https://registry.npmjs.org/@graphql-tools/batch-execute/-/batch-execute-10.0.7.tgz", + "integrity": "sha512-vKo9XUiy2sc5tzMupXoxZbu5afVY/9yJ0+yLrM5Dhh38yHYULf3z9VC1eAwW0kj8pWpOo8d8CV3jpleGwv83PA==", "dev": true, "license": "MIT", "dependencies": { @@ -15810,13 +15820,13 @@ } }, "node_modules/graphql-config/node_modules/@graphql-tools/delegate": { - "version": "12.0.9", - "resolved": "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-12.0.9.tgz", - "integrity": "sha512-ugJCiJb4w3bmdUbAz+nKyVVuwzzoy6BZHQ4BJXpAx1i5KIEhSevIkMYq3CZo7drCZf6FMIpcKBxv99uIhzCvhA==", + "version": "12.0.12", + "resolved": "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-12.0.12.tgz", + "integrity": "sha512-/vgLWhIwm+Mgo5VUOJQj6EOpaxXRQmA7mk8j6/8vBbPi56LoYA/UPRygcpEnm9EuXTspFKCTBil+xqThU3EmqQ==", "dev": true, "license": "MIT", "dependencies": { - "@graphql-tools/batch-execute": "^10.0.5", + "@graphql-tools/batch-execute": "^10.0.7", "@graphql-tools/executor": "^1.4.13", "@graphql-tools/schema": "^10.0.29", "@graphql-tools/utils": "^11.0.0", @@ -15850,9 +15860,9 @@ } }, "node_modules/graphql-config/node_modules/@graphql-tools/executor-graphql-ws": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@graphql-tools/executor-graphql-ws/-/executor-graphql-ws-3.1.4.tgz", - "integrity": "sha512-wCQfWYLwg1JZmQ7rGaFy74AQyVFxpeqz19WWIGRgANiYlm+T0K3Hs6POgi0+nL3HvwxJIxhUlaRLFvkqm1zxSA==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@graphql-tools/executor-graphql-ws/-/executor-graphql-ws-3.1.5.tgz", + "integrity": "sha512-WXRsfwu9AkrORD9nShrd61OwwxeQ5+eXYcABRR3XPONFIS8pWQfDJGGqxql9/227o/s0DV5SIfkBURb5Knzv+A==", "dev": true, "license": "MIT", "dependencies": { @@ -15872,9 +15882,9 @@ } }, "node_modules/graphql-config/node_modules/@graphql-tools/executor-http": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/executor-http/-/executor-http-3.1.0.tgz", - "integrity": "sha512-DTaNU1rT2sxffwQlt+Aw68cHQWfGkjsaRk1D8nvG+DcCR8RNQo0d9qYt7pXIcfXYcQLb/OkABcGSuCfkopvHJg==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@graphql-tools/executor-http/-/executor-http-3.1.1.tgz", + "integrity": "sha512-Le57fMdN7nGBp8XddkpGreCzcPGCZ+uHs1kPw/xMKPJMsn/vZUHbWJ0FY0cb0jfE3OVhbMIjjSe/OHlG3Mm3zw==", "dev": true, "license": "MIT", "dependencies": { @@ -15942,13 +15952,13 @@ } }, "node_modules/graphql-config/node_modules/@graphql-tools/wrap": { - "version": "11.1.9", - "resolved": "https://registry.npmjs.org/@graphql-tools/wrap/-/wrap-11.1.9.tgz", - "integrity": "sha512-dSjBNCTPS8W7lWHDgIEgY0MEDwZi1GkqTfl7bJMDs/dJfKojj4Do74LN5QJbP/bIIwJakEwVUMPA8RUYVBP9eQ==", + "version": "11.1.12", + "resolved": "https://registry.npmjs.org/@graphql-tools/wrap/-/wrap-11.1.12.tgz", + "integrity": "sha512-PJ0tuiGbEOOZAJk2/pTKyzMEbwBncPBfO7Z84tCPzM/CAR4ZlAXbXjaXOw4fdi0ReUDyOG06Z8DGgEQjr68dKw==", "dev": true, "license": "MIT", "dependencies": { - "@graphql-tools/delegate": "^12.0.9", + "@graphql-tools/delegate": "^12.0.12", "@graphql-tools/schema": "^10.0.29", "@graphql-tools/utils": "^11.0.0", "@whatwg-node/promise-helpers": "^1.3.2", @@ -16031,9 +16041,9 @@ } }, "node_modules/graphql-ws": { - "version": "6.0.7", - "resolved": "https://registry.npmjs.org/graphql-ws/-/graphql-ws-6.0.7.tgz", - "integrity": "sha512-yoLRW+KRlDmnnROdAu7sX77VNLC0bsFoZyGQJLy1cF+X/SkLg/fWkRGrEEYQK8o2cafJ2wmEaMqMEZB3U3DYDg==", + "version": "6.0.8", + "resolved": "https://registry.npmjs.org/graphql-ws/-/graphql-ws-6.0.8.tgz", + "integrity": "sha512-m3EOaNsUBXwAnkBWbzPfe0Nq8pXUfxsWnolC54sru3FzHvhTZL0Ouf/BoQsaGAXqM+YPerXOJ47BUnmgmoupCw==", "dev": true, "license": "MIT", "engines": { @@ -16070,9 +16080,9 @@ } }, "node_modules/handlebars": { - "version": "4.7.8", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", - "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", + "version": "4.7.9", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.9.tgz", + "integrity": "sha512-4E71E0rpOaQuJR2A3xDZ+GM1HyWYv1clR58tC8emQNeQe3RH7MAzSbat+V0wG78LQBo6m6bzSG/L4pBuCsgnUQ==", "license": "MIT", "dependencies": { "minimist": "^1.2.5", @@ -17145,9 +17155,9 @@ } }, "node_modules/is-lite": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-lite/-/is-lite-1.2.1.tgz", - "integrity": "sha512-pgF+L5bxC+10hLBgf6R2P4ZZUBOQIIacbdo8YvuCP8/JvsWxG7aZ9p10DYuLtifFci4l3VITphhMlMV4Y+urPw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-lite/-/is-lite-2.0.0.tgz", + "integrity": "sha512-70f2BMIQlbSUXVKaZUd9a9fJH3IH1PDckV0m4BIIO4LjnNYvOh4Ng7vXIXEwpA0KDZknRq+7fHwGTu0jIdx28g==", "license": "MIT" }, "node_modules/is-lower-case": { @@ -19224,9 +19234,9 @@ } }, "node_modules/micromatch/node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", + "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", "license": "MIT", "engines": { "node": ">=8.6" @@ -19327,18 +19337,18 @@ "license": "MIT" }, "node_modules/motion-dom": { - "version": "12.35.2", - "resolved": "https://registry.npmjs.org/motion-dom/-/motion-dom-12.35.2.tgz", - "integrity": "sha512-pWXFMTwvGDbx1Fe9YL5HZebv2NhvGBzRtiNUv58aoK7+XrsuaydQ0JGRKK2r+bTKlwgSWwWxHbP5249Qr/BNpg==", + "version": "12.38.0", + "resolved": "https://registry.npmjs.org/motion-dom/-/motion-dom-12.38.0.tgz", + "integrity": "sha512-pdkHLD8QYRp8VfiNLb8xIBJis1byQ9gPT3Jnh2jqfFtAsWUA3dEepDlsWe/xMpO8McV+VdpKVcp+E+TGJEtOoA==", "license": "MIT", "dependencies": { - "motion-utils": "^12.29.2" + "motion-utils": "^12.36.0" } }, "node_modules/motion-utils": { - "version": "12.29.2", - "resolved": "https://registry.npmjs.org/motion-utils/-/motion-utils-12.29.2.tgz", - "integrity": "sha512-G3kc34H2cX2gI63RqU+cZq+zWRRPSsNIOjpdl9TN4AQwC4sgwYPl/Q/Obf/d53nOm569T0fYK+tcoSV50BWx8A==", + "version": "12.36.0", + "resolved": "https://registry.npmjs.org/motion-utils/-/motion-utils-12.36.0.tgz", + "integrity": "sha512-eHWisygbiwVvf6PZ1vhaHCLamvkSbPIeAYxWUuL3a2PD/TROgE7FvfHWTIH4vMl798QLfMw15nRqIaRDXTlYRg==", "license": "MIT" }, "node_modules/ms": { @@ -20452,9 +20462,9 @@ } }, "node_modules/opub-ui": { - "version": "0.4.36", - "resolved": "https://registry.npmjs.org/opub-ui/-/opub-ui-0.4.36.tgz", - "integrity": "sha512-vgbGxZM/vjAf1afOOgSvTqB29soeckrd19lAtWUKCbiMv3C9q1xthpJe78Lrn+r9IrF06aQyubNZ1dMBe0LERQ==", + "version": "0.4.41", + "resolved": "https://registry.npmjs.org/opub-ui/-/opub-ui-0.4.41.tgz", + "integrity": "sha512-jF1kI2eFL1hVZ362Qd4L2MhyxoJ/edYNQn1xw85ZKvMXFsuwjD8jdw7wF3mzpnmJBVdHcIeb+DsIm14IJWT4Iw==", "license": "MIT", "dependencies": { "@ariakit/react": "^0.4.18", @@ -20486,7 +20496,7 @@ "autoprefixer": "^10.4.18", "chrono-node": "^2.7.5", "clsx": "^2.1.0", - "cmdk": "^0.2.0", + "cmdk": "^1.0.0", "d3-scale": "^4.0.2", "d3-scale-chromatic": "^3.1.0", "echarts": "^5.4.3", @@ -20524,15 +20534,6 @@ "react-leaflet": "^4.0.0 || ^5.0.0" } }, - "node_modules/opub-ui/node_modules/@radix-ui/primitive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.0.0.tgz", - "integrity": "sha512-3e7rn8FDMin4CgeL7Z/49smCA3rFYY3Ha2rUQ7HRWFadS5iCRw08ZgVT1LaNTCNqgvrUiyczLflrVrF0SRQtNA==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - } - }, "node_modules/opub-ui/node_modules/@tabler/icons": { "version": "2.47.0", "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-2.47.0.tgz", @@ -20560,308 +20561,6 @@ "react": "^16.5.1 || ^17.0.0 || ^18.0.0" } }, - "node_modules/opub-ui/node_modules/@types/react": { - "version": "18.3.28", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.28.tgz", - "integrity": "sha512-z9VXpC7MWrhfWipitjNdgCauoMLRdIILQsAEV+ZesIzBq/oUlxk0m3ApZuMFCXdnS4U7KrI+l3WRUEGQ8K1QKw==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@types/prop-types": "*", - "csstype": "^3.2.2" - } - }, - "node_modules/opub-ui/node_modules/cmdk": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/cmdk/-/cmdk-0.2.1.tgz", - "integrity": "sha512-U6//9lQ6JvT47+6OF6Gi8BvkxYQ8SCRRSKIJkthIMsFsLZRG0cKvTtuTaefyIKMQb8rvvXy0wGdpTNq/jPtm+g==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-dialog": "1.0.0" - }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.0.0.tgz", - "integrity": "sha512-Yn9YU+QlHYLWwV1XfKiqnGVpWYWk6MeBVM6x/bcoyPvxgjQGoeT35482viLPctTMWoMw0PoHgqfSox7Ig+957Q==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/primitive": "1.0.0", - "@radix-ui/react-compose-refs": "1.0.0", - "@radix-ui/react-context": "1.0.0", - "@radix-ui/react-dismissable-layer": "1.0.0", - "@radix-ui/react-focus-guards": "1.0.0", - "@radix-ui/react-focus-scope": "1.0.0", - "@radix-ui/react-id": "1.0.0", - "@radix-ui/react-portal": "1.0.0", - "@radix-ui/react-presence": "1.0.0", - "@radix-ui/react-primitive": "1.0.0", - "@radix-ui/react-slot": "1.0.0", - "@radix-ui/react-use-controllable-state": "1.0.0", - "aria-hidden": "^1.1.1", - "react-remove-scroll": "2.5.4" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-compose-refs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.0.0.tgz", - "integrity": "sha512-0KaSv6sx787/hK3eF53iOkiSLwAGlFMx5lotrqD2pTjB18KbybKoEIgkNZTKC60YECDQTKGTRcDBILwZVqVKvA==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-context": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.0.0.tgz", - "integrity": "sha512-1pVM9RfOQ+n/N5PJK33kRSKsr1glNxomxONs5c49MliinBY6Yw2Q995qfBUUo0/Mbg05B/sGA0gkgPI7kmSHBg==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-dismissable-layer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.0.tgz", - "integrity": "sha512-n7kDRfx+LB1zLueRDvZ1Pd0bxdJWDUZNQ/GWoxDn2prnuJKRdxsjulejX/ePkOsLi2tTm6P24mDqlMSgQpsT6g==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/primitive": "1.0.0", - "@radix-ui/react-compose-refs": "1.0.0", - "@radix-ui/react-primitive": "1.0.0", - "@radix-ui/react-use-callback-ref": "1.0.0", - "@radix-ui/react-use-escape-keydown": "1.0.0" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-dismissable-layer/node_modules/@radix-ui/react-use-callback-ref": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.0.0.tgz", - "integrity": "sha512-GZtyzoHz95Rhs6S63D2t/eqvdFCm7I+yHMLVQheKM7nBD8mbZIt+ct1jz4536MDnaOGKIxynJ8eHTkVGVVkoTg==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-dismissable-layer/node_modules/@radix-ui/react-use-escape-keydown": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.0.0.tgz", - "integrity": "sha512-JwfBCUIfhXRxKExgIqGa4CQsiMemo1Xt0W/B4ei3fpzpvPENKpMKQ8mZSB6Acj3ebrAEgi2xiQvcI1PAAodvyg==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-use-callback-ref": "1.0.0" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-focus-guards": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.0.0.tgz", - "integrity": "sha512-UagjDk4ijOAnGu4WMUPj9ahi7/zJJqNZ9ZAiGPp7waUWJO0O1aWXi/udPphI0IUjvrhBsZJGSN66dR2dsueLWQ==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-focus-scope": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.0.0.tgz", - "integrity": "sha512-C4SWtsULLGf/2L4oGeIHlvWQx7Rf+7cX/vKOAD2dXW0A1b5QXwi3wWeaEgW+wn+SEVrraMUk05vLU9fZZz5HbQ==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-compose-refs": "1.0.0", - "@radix-ui/react-primitive": "1.0.0", - "@radix-ui/react-use-callback-ref": "1.0.0" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-focus-scope/node_modules/@radix-ui/react-use-callback-ref": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.0.0.tgz", - "integrity": "sha512-GZtyzoHz95Rhs6S63D2t/eqvdFCm7I+yHMLVQheKM7nBD8mbZIt+ct1jz4536MDnaOGKIxynJ8eHTkVGVVkoTg==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-id": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.0.0.tgz", - "integrity": "sha512-Q6iAB/U7Tq3NTolBBQbHTgclPmGWE3OlktGGqrClPozSw4vkQ1DfQAOtzgRPecKsMdJINE05iaoDUG8tRzCBjw==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-use-layout-effect": "1.0.0" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-id/node_modules/@radix-ui/react-use-layout-effect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.0.0.tgz", - "integrity": "sha512-6Tpkq+R6LOlmQb1R5NNETLG0B4YP0wc+klfXafpUCj6JGyaUc8il7/kUZ7m59rGbXGczE9Bs+iz2qloqsZBduQ==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-portal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.0.0.tgz", - "integrity": "sha512-a8qyFO/Xb99d8wQdu4o7qnigNjTPG123uADNecz0eX4usnQEj7o+cG4ZX4zkqq98NYekT7UoEQIjxBNWIFuqTA==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-primitive": "1.0.0" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-presence": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.0.0.tgz", - "integrity": "sha512-A+6XEvN01NfVWiKu38ybawfHsBjWum42MRPnEuqPsBZ4eV7e/7K321B5VgYMPv3Xx5An6o1/l9ZuDBgmcmWK3w==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-compose-refs": "1.0.0", - "@radix-ui/react-use-layout-effect": "1.0.0" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-presence/node_modules/@radix-ui/react-use-layout-effect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.0.0.tgz", - "integrity": "sha512-6Tpkq+R6LOlmQb1R5NNETLG0B4YP0wc+klfXafpUCj6JGyaUc8il7/kUZ7m59rGbXGczE9Bs+iz2qloqsZBduQ==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-primitive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-1.0.0.tgz", - "integrity": "sha512-EyXe6mnRlHZ8b6f4ilTDrXmkLShICIuOTTj0GX4w1rp+wSxf3+TD05u1UOITC8VsJ2a9nwHvdXtOXEOl0Cw/zQ==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-slot": "1.0.0" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-slot": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.0.0.tgz", - "integrity": "sha512-3mrKauI/tWXo1Ll+gN5dHcxDPdm/Df1ufcDLCecn+pnCIVcdWE7CujXo8QaXOWRJyZyQWWbpB8eFwHzWXlv5mQ==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-compose-refs": "1.0.0" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-use-controllable-state": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.0.0.tgz", - "integrity": "sha512-FohDoZvk3mEXh9AWAVyRTYR4Sq7/gavuofglmiXB2g1aKyboUD4YtgWxKj8O5n+Uak52gXQ4wKz5IFST4vtJHg==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-use-callback-ref": "1.0.0" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-use-controllable-state/node_modules/@radix-ui/react-use-callback-ref": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.0.0.tgz", - "integrity": "sha512-GZtyzoHz95Rhs6S63D2t/eqvdFCm7I+yHMLVQheKM7nBD8mbZIt+ct1jz4536MDnaOGKIxynJ8eHTkVGVVkoTg==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/opub-ui/node_modules/cmdk/node_modules/@radix-ui/react-dialog/node_modules/react-remove-scroll": { - "version": "2.5.4", - "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.5.4.tgz", - "integrity": "sha512-xGVKJJr0SJGQVirVFAUZ2k1QLyO6m+2fy0l8Qawbp5Jgrv3DeLalrfMNBFSlmz5kriGGzsVBtGVnf4pTKIhhWA==", - "license": "MIT", - "dependencies": { - "react-remove-scroll-bar": "^2.3.3", - "react-style-singleton": "^2.2.1", - "tslib": "^2.1.0", - "use-callback-ref": "^1.3.0", - "use-sidecar": "^1.1.2" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/opub-ui/node_modules/embla-carousel-react": { "version": "8.0.0-rc15", "resolved": "https://registry.npmjs.org/embla-carousel-react/-/embla-carousel-react-8.0.0-rc15.tgz", @@ -21488,9 +21187,9 @@ "license": "ISC" }, "node_modules/picomatch": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", - "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", "license": "MIT", "engines": { "node": ">=12" @@ -22165,32 +21864,10 @@ "react": "^19.2.4" } }, - "node_modules/react-floater": { - "version": "0.9.5-5", - "resolved": "https://registry.npmjs.org/react-floater/-/react-floater-0.9.5-5.tgz", - "integrity": "sha512-9EFcYn8YOfqBoy9mAX0nnaG0KVvlTqOUCGMZgdJmI0ddvmZfnutlAo9s2RI89Up5ZN/pYuae8OObwZ5TBV91AQ==", - "license": "MIT", - "dependencies": { - "@popperjs/core": "^2.11.8", - "deepmerge-ts": "^7.1.5", - "is-lite": "^2.0.0", - "tree-changes-hook": "^0.11.3" - }, - "peerDependencies": { - "react": "16.8 - 19", - "react-dom": "16.8 - 19" - } - }, - "node_modules/react-floater/node_modules/is-lite": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-lite/-/is-lite-2.0.0.tgz", - "integrity": "sha512-70f2BMIQlbSUXVKaZUd9a9fJH3IH1PDckV0m4BIIO4LjnNYvOh4Ng7vXIXEwpA0KDZknRq+7fHwGTu0jIdx28g==", - "license": "MIT" - }, "node_modules/react-hook-form": { - "version": "7.71.2", - "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.71.2.tgz", - "integrity": "sha512-1CHvcDYzuRUNOflt4MOq3ZM46AronNJtQ1S7tnX6YN4y72qhgiUItpacZUAQ0TyWYci3yz1X+rXaSxiuEm86PA==", + "version": "7.72.0", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.72.0.tgz", + "integrity": "sha512-V4v6jubaf6JAurEaVnT9aUPKFbNtDgohj5CIgVGyPHvT9wRx5OZHVjz31GsxnPNI278XMu+ruFz+wGOscHaLKw==", "license": "MIT", "peer": true, "engines": { @@ -22221,39 +21898,27 @@ "license": "MIT" }, "node_modules/react-joyride": { - "version": "3.0.0-7", - "resolved": "https://registry.npmjs.org/react-joyride/-/react-joyride-3.0.0-7.tgz", - "integrity": "sha512-NBgtdm8QehHEVI/Qkakb4EJ/WjKN7bQaZgZmO/01v1p2yBlzAcXyKM36FeS1YZaywX8v8R79bF5Z0OcV5BK1og==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/react-joyride/-/react-joyride-3.0.0.tgz", + "integrity": "sha512-ut5kZEu0fZauOVW0JnX0s6Vcia/mAFxSLUIV7nu8025U47PktqN1fnLtMqE+IzgGac8F3id9IPd/U9APmWYvkA==", "license": "MIT", "dependencies": { - "@gilbarbara/deep-equal": "^0.3.1", - "@gilbarbara/hooks": "^0.8.2", + "@fastify/deepmerge": "^3.2.1", + "@floating-ui/react-dom": "^2.1.8", + "@gilbarbara/deep-equal": "^0.4.1", + "@gilbarbara/hooks": "^0.11.0", "@gilbarbara/types": "^0.2.2", - "deepmerge": "^4.3.1", - "is-lite": "^1.2.1", - "react-floater": "^0.9.5-4", + "is-lite": "^2.0.0", "react-innertext": "^1.1.5", "scroll": "^3.0.1", "scrollparent": "^2.1.0", - "tree-changes-hook": "^0.11.2" + "use-sync-external-store": "^1.6.0" }, "peerDependencies": { "react": "16.8 - 19", "react-dom": "16.8 - 19" } }, - "node_modules/react-joyride/node_modules/@gilbarbara/hooks": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/@gilbarbara/hooks/-/hooks-0.8.2.tgz", - "integrity": "sha512-aWXlJFCrqmasGaDd6IhSpqOFeOD4pSBpRtILKw0WxWQzWE+HYCA0adLf0P18BNztR/G0byWnpkGupeGx+NFnuw==", - "license": "MIT", - "dependencies": { - "@gilbarbara/deep-equal": "^0.3.1" - }, - "peerDependencies": { - "react": "16.8 - 18" - } - }, "node_modules/react-leaflet": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/react-leaflet/-/react-leaflet-5.0.0.tgz", @@ -24561,9 +24226,9 @@ "license": "MIT" }, "node_modules/style-dictionary/node_modules/brace-expansion": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.3.tgz", + "integrity": "sha512-MCV/fYJEbqx68aE58kv2cA/kiky1G8vux3OR6/jbS+jIMe/6fJWa0DTzJU7dqijOWYwHi1t29FlfYI9uytqlpA==", "dev": true, "license": "MIT", "dependencies": { @@ -24932,9 +24597,9 @@ } }, "node_modules/tailwindcss/node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", + "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", "license": "MIT", "engines": { "node": ">=8.6" @@ -24997,9 +24662,9 @@ } }, "node_modules/tapable": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.0.tgz", - "integrity": "sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.2.tgz", + "integrity": "sha512-1MOpMXuhGzGL5TTCZFItxCc0AARf1EZFQkGqMm7ERKj8+Hgr5oLvJOVFcC+lRmR8hCe2S3jC4T5D7Vg/d7/fhA==", "license": "MIT", "engines": { "node": ">=6" @@ -25010,9 +24675,9 @@ } }, "node_modules/terser": { - "version": "5.46.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.46.0.tgz", - "integrity": "sha512-jTwoImyr/QbOWFFso3YoU3ik0jBBDJ6JTOQiy/J2YxVJdZCc+5u7skhNwiOR3FQIygFqVUPHl7qbbxtjW2K3Qg==", + "version": "5.46.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.46.1.tgz", + "integrity": "sha512-vzCjQO/rgUuK9sf8VJZvjqiqiHFaZLnOiimmUuOKODxWL8mm/xua7viT7aqX7dgPY60otQjUotzFMmCB4VdmqQ==", "license": "BSD-2-Clause", "dependencies": { "@jridgewell/source-map": "^0.3.3", @@ -25129,9 +24794,9 @@ "license": "MIT" }, "node_modules/tinyexec": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.2.tgz", - "integrity": "sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.4.tgz", + "integrity": "sha512-u9r3uZC0bdpGOXtlxUIdwf9pkmvhqJdrVCH9fapQtgy/OeTTMZ1nqH7agtvEfmGui6e1XxjcdrlxvxJvc3sMqw==", "license": "MIT", "engines": { "node": ">=18" @@ -25193,29 +24858,6 @@ "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", "license": "MIT" }, - "node_modules/tree-changes": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/tree-changes/-/tree-changes-0.11.3.tgz", - "integrity": "sha512-r14mvDZ6tqz8PRQmlFKjhUVngu4VZ9d92ON3tp0EGpFBE6PAHOq8Bx8m8ahbNoGE3uI/npjYcJiqVydyOiYXag==", - "license": "MIT", - "dependencies": { - "@gilbarbara/deep-equal": "^0.3.1", - "is-lite": "^1.2.1" - } - }, - "node_modules/tree-changes-hook": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/tree-changes-hook/-/tree-changes-hook-0.11.3.tgz", - "integrity": "sha512-cNHPuFc5Qbi2B74VqSqL/Ee/l4n0SFfzYKTnXYViJW1yCFZ0bl97QsgUIw9vdQtqpWDwo83mpNkGUvcjeQc0Xw==", - "license": "MIT", - "dependencies": { - "@gilbarbara/deep-equal": "^0.3.1", - "tree-changes": "0.11.3" - }, - "peerDependencies": { - "react": "16.8 - 19" - } - }, "node_modules/trim-lines": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", @@ -25237,9 +24879,9 @@ } }, "node_modules/ts-api-utils": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.4.0.tgz", - "integrity": "sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.5.0.tgz", + "integrity": "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==", "dev": true, "license": "MIT", "engines": { @@ -25711,9 +25353,9 @@ } }, "node_modules/unplugin/node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", + "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", "license": "MIT", "engines": { "node": ">=8.6" @@ -26542,9 +26184,9 @@ "license": "ISC" }, "node_modules/ws": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz", - "integrity": "sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.20.0.tgz", + "integrity": "sha512-sAt8BhgNbzCtgGbt2OxmpuryO63ZoDk/sqaB/znQm94T4fCEsy/yV+7CdC1kJhOU9lboAEU7R3kquuycDoibVA==", "dev": true, "license": "MIT", "peer": true, @@ -26601,9 +26243,9 @@ "license": "ISC" }, "node_modules/yaml": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.2.tgz", - "integrity": "sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==", + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.3.tgz", + "integrity": "sha512-AvbaCLOO2Otw/lW5bmh9d/WEdcDFdQp2Z2ZUH3pX9U2ihyUY0nvLv7J6TrWowklRGPYbB/IuIMfYgxaCPg5Bpg==", "devOptional": true, "license": "ISC", "bin": { diff --git a/package.json b/package.json index 03b43344..ae23379f 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "next-auth": "^4.24.7", "next-intl": "^3.4.0", "nuqs": "^2.0.0", - "opub-ui": "^0.4.35", + "opub-ui": "^0.4.41", "react": "^19.2.0", "react-aria": "^3.36.0", "react-dom": "^19.2.0",